@charset "UTF-8";
/* ==================================================================================
# 共通
================================================================================== */
body {
  /*font-family: 'M PLUS 1p', sans-serif ,"Montserrat", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic";*/
	font-family: a-otf-ud-shin-go-pr6n,"Montserrat", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic","Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-weight: 300;
	font-style: normal;
}

.inner {
  width: 1000px;
  margin: auto;
  max-width: 100%;
}

.section-title {
  color: #D22D26;
  font-weight: bold;
  font-size: 32px;
}

.pc_none {
  display: none;
}

@media screen and (max-width: 1000px) {

  .inner {
    padding: 0 3%;
  }

}


@media screen and (max-width: 768px) {

  .section-title {
    font-size: 26px;
  }

}

@media screen and (max-width: 480px) {

  .pc_none {
    display: block !important;
  }

  .sp_none {
    display: none !important;
  }

  .section-title {
    font-size: 24px;
  }

}

/* ==================================================================================
# header
================================================================================== */

.hamburger-menu {
  width: 15%;
}


/* ハンバーガーボタン */
.hamburger {
  display : block;
  position: fixed;
  z-index : 3;
  left : 13px;
  top   : 10px;
  width : 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 30px;
  height  : 2px ;
  left    : 7px;
  background : #de192b;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 20px;
}
.hamburger span:nth-child(2) {
  top: 30px;
}
.hamburger span:nth-child(3) {
  top: 40px;
}
.hamburger span:nth-child(4) {
	background: none;
    color: #de192b;
    font-size: 11px;
    font-weight: bold;
    top: 0px;
	left: 5px;
	text-align: left;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
  top : 26px;
  left: 6px;
  background :#de192b;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 26px;
  background :#de192b;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}

nav.globalMenuSp {
  position: fixed;
  z-index : -2;
  top  : 0;
  left : 0;
  color: #2D6EB2;
  background: rgba(255,255,255,0.8);
  text-align: left;
  width: 100%;
  height: 100vh;
  opacity: 0;
  transition: opacity .6s ease, visibility .6s ease;
}

nav.globalMenuSp ul li a {
  color: #e1cfc2;
}

nav.globalMenuSp ul {
  margin: 0 auto;
  padding: 0 0 0 25px;
  width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
  transition: .4s all;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}
nav.globalMenuSp ul li:hover{
  background :#fff;
}

nav.globalMenuSp ul li a {
  display: block;
  color: #000;
  padding: 0.5em 0;
  text-decoration :none;
  font-size: 14px;
  font-weight: bold;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
  opacity: 100;
  z-index: 2;
}

.hamburge01 {
  margin-top: 120px !important;
}

.hamburge02 {
  margin-top: 20px !important;
}

.hamburge03 {
  margin-top: 20px !important;
}


/* ==================================================================================
# main
================================================================================== */

/* ==================== */
/* ===== first-view ===== */
/* ==================== */

.main-title-flex {
  display: flex;
}

.main-title {
  text-align: center;
  font-size: 26px;
  color: #2D6EB2;
  font-weight: bold;
  line-height: 1.2;
  width: 70%;
  margin: 30px auto;
}

.banner {
  width: 15%;
  margin: 30px auto;
}

.banner img {
  max-width: 100%;
}

@media screen and (max-width: 768px) {

  .main-title {
    font-size: 22px;
  }

}

@media screen and (max-width: 480px) {

  .main-title {
    font-size: 18px;
  }

}

.first-view {
  margin-bottom: 50px;
}

.first-view img {
  width: 100%;
}

/* ==================== */
/* ===== top01 ===== */
/* ==================== */

.top01 {
  margin-bottom: 100px;
}

.top01-q {
  color: #2D6EB2;
  font-weight: bold;
  margin-top: 10px;
  display: flex;
}

.top01-q-01 {
  background-color: #8FCBEF;
  font-size: 36px;
  padding: 6px 0px 10px 11px;
  border-radius: 50%;
  margin-right: 10px;
  display: inline-block;
  height: 50px;
  width: 50px;
  min-height: 50px;
  min-width: 50px;
}

.top01-q-02 {
  padding: 16px 0;
  font-size: 20px;
}

.top01-a {
  font-weight: bold;
  display: flex;
  margin-bottom: 20px;
}

.top01-a-01 {
  background-color: #2D6EB2;
  color: #fff;
  font-size: 28px;
  padding: 2px 0px 8px 7px;
  border-radius: 50%;
  margin: 0 18px 0 10px;
  display: inline-block;
  height: 32px;
  width: 32px;
  min-height: 32px;
  min-width: 32px;
}

.top01-a-02 {
  color: #009EE1;
  line-height: 1.4;
}

.top01-img {
  margin-left: 50px;
}

.top01-img img {
  width: 100%;
}

.top01-a-contents {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-left: 50px;
}

.top01-a-content {
  width: 49%;
  line-height: 1.8;
}

.top01-a-title {
  background-color: #2D6EB2;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 18px;
  padding: 10px;
}

.top01-a-text {
  background-color: #E1F0FA;
  padding: 10px;
  margin: 10px 0;
  border-top: 1px solid #C0BBAF;
}

.top01-a-texts {
  padding: 10px;
}

.top01-a-text01 {
  color: #009EE1;
  font-weight: bold;
}

.top01-a-text02 {
  color: #2D6EB2;
  border-bottom: 1px solid #C0BBAF;
}

.top01-a-03 {
  margin-top: -20px;
  margin-left: 60px;
  margin-bottom: 20px;
  line-height: 1.8;
}

.top-a-03-flex {
  display: flex;
  justify-content: space-between;
  margin-left: 50px;
  line-height: 1.8;
  margin-bottom: 20px;
}

.top-a-03-flex-l {
  min-width: 100px;
  display: flex;
  align-items: center;

}

.top-a-03-flex-r {
  border-left: 1px solid #000;
  padding-left: 10px;
}

@media screen and (max-width: 768px) {

  .top01-a-content {
    width: 98%;
  }

}

@media screen and (max-width: 480px) {

  .top01-q-01 {
    font-size: 30px;
    padding: 4px 0px 5px 9px;
    height: 40px;
    width: 40px;
    min-height: 40px;
    min-width: 40px;
  }


  .top01-a-01 {
    font-size: 24px;
    padding: 4px 0px 8px 8px;
    margin: 0 13px 0 4px;
  }


  .top01-q-02 {
    padding: 14px 0;
    font-size: 18px;
}

  .top-a-03-flex {
    flex-wrap: wrap;
  }

  .top-a-03-flex-r {
    border-left: none;
    padding-left: 0;
    border-top: 1px solid #000;
  }

}



/* ==================== */
/* ===== top02 ===== */
/* ==================== */

.top02 {
  margin-bottom: 100px;
}


.top02-q {
  color: #2D6EB2;
  font-weight: bold;
  margin-top: 10px;
  display: flex;
}

.top02-q-01 {
  background-color: #8FCBEF;
  font-size: 36px;
  padding: 6px 0px 10px 11px;
  border-radius: 50%;
  margin-right: 10px;
  display: inline-block;
  height: 50px;
  width: 50px;
  min-height: 50px;
  min-width: 50px;
}

.top02-q-02 {
  padding: 16px 0;
  font-size: 20px;
}

.top02-q-03 {
  color: #009EE1;
  margin-left: 60px;
  font-weight: bold;
  margin-bottom: 30px;
}

.top02-a-flex {
  display: flex;
  justify-content: space-between;
  border-top: 1px solid #8BAFD4;
}

.top02-a-flex-l {
  display: flex;
  align-items: center;
  min-width: 300px;
}

.top02-a-flex-l-img img {
  max-width: 100%;
}

.top02-a-flex-l-title {
  color: #2D6EB2;
  font-weight: bold;
}

.top02-a-flex-r {
  display: flex;
  align-items: center;
  padding: 10px 0;
}

.top02-a-flex-r-a {
  background-color: #2D6EB2;
  color: #fff;
  font-size: 30px;
  padding: 5px 0px 10px 10px;
  border-radius: 50%;
  margin-right: 10px;
  display: inline-block;
  height: 40px;
  width: 40px;
  min-height: 40px;
  min-width: 40px;
}

.top02-a-flex-r-text {
  line-height: 1.4;
}

.top02-img {
  text-align: center;
}

.top02-img img {
  width: 70%;
}


@media screen and (max-width: 768px) {

  .top02-a-flex {
    flex-wrap: wrap;
  }

  .top02-a-flex-l {
    margin: auto;
  }

  .top02-a-flex-r {
    align-items: flex-start;
  }

  .top02-img img {
    width: 100%;
  }

}

@media screen and (max-width: 480px) {

  .top02-q-02 {
    padding: 14px 0;
    font-size: 18px;
  }

  .top02-q-01 {
    font-size: 30px;
    padding: 4px 0px 5px 9px;
    height: 40px;
    width: 40px;
    min-height: 40px;
    min-width: 40px;
  }
  
  
  .top02-a-flex-r-a {
    font-size: 24px;
    padding: 7px 0px 8px 12px;
    margin: 0 13px 0 4px;
  }

}



/* ==================== */
/* ===== top03 ===== */
/* ==================== */

.top03 {
  margin-bottom: 100px;
}

/* ==================== */
/* ===== top04 ===== */
/* ==================== */

.top04 {
  margin-bottom: 100px;
}

.top04-img  {
  text-align: center;
}

.top04-img img {
  width: 70%;
}

.top04-contents {
  border: 1px solid #3070B2;
  padding: 1%;
  margin-left: 50px;
}

.top04-content-title {
  background-color: #009EE1;
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 10px;
  width: 90%;
  margin: 10px auto;
}

.top04-content-text {
  width: 90%;
  margin: 10px auto;
}

@media screen and (max-width: 768px) {

  .top04-img img {
    width: 100%;
  }

}


/* ==================== */
/* ===== top05 ===== */
/* ==================== */

.top05 {
  margin-bottom: 100px;
}

.top05-img {
  text-align: center;
}

.top05-img img {
  width: 70%;
}

.top05-bg {
  background-color: #F7F3EB;
  padding: 20px 0;
}

.top05-title {
  color: #008343;
  font-weight: bold;
  font-size: 32px;
  margin-top: 50px;
}


.top05-q {
  color: #008343;
  font-weight: bold;
  margin-top: 10px;
  display: flex;
}

.top05-q-01 {
  background-color: #E0E47F;
  font-size: 36px;
  padding: 6px 0px 10px 11px;
  border-radius: 50%;
  margin-right: 10px;
  display: inline-block;
  height: 50px;
  width: 50px;
  min-height: 50px;
  min-width: 50px;
}

.top05-q-02 {
  padding: 16px 0;
  font-size: 20px;
}

.top05-a {
  font-weight: bold;
  display: flex;
  margin-bottom: 20px;
}

.top05-a-01 {
  background-color: #008343;
  color: #fff;
  font-size: 28px;
  padding: 2px 0px 8px 7px;
  border-radius: 50%;
  margin: 0 18px 0 10px;
  display: inline-block;
  height: 32px;
  width: 32px;
  min-height: 32px;
  min-width: 32px;
}

.top05-a-02 {
  color: #53A749;
  line-height: 1.4;
}

.top05-a-03 {
  margin-top: -20px;
  margin-left: 60px;
  margin-bottom: 20px;
  line-height: 1.8;
}

@media screen and (max-width: 768px) {

  .top05-title {
    font-size: 26px;
  }

  .top05-img img {
    width: 100%;
  }

}

@media screen and (max-width: 480px) {

  .top05-q-01 {
    font-size: 30px;
    padding: 4px 0px 5px 9px;
    height: 40px;
    width: 40px;
    min-height: 40px;
    min-width: 40px;
  }


  .top05-a-01 {
    font-size: 24px;
    padding: 4px 0px 8px 8px;
    margin: 0 13px 0 4px;
  }

  .top05-title {
    font-size: 24px;
  }

  .top05-q-02 {
    font-size: 18px;
    padding: 14px 0;
  }

}

/* ==================== */
/* ===== top06 ===== */
/* ==================== */

.top06 {
  line-height: 1.8;
  margin-bottom: 100px;
}

.column-title {
  color: #009EE1;
  font-size: 24px;
}

.column-text01 {
  color: #2D6EB2;
  margin-bottom: 10px;
}

.column-text02 {
  font-size: 12px;
  margin-bottom: 10px;
}

.column-text03 {
  background-color: #F0F7FC;
  border: 1px solid #8FCBEF;
  padding: 10PX;
  border-radius: 10PX;
}


.column-text03 span {
  display: block;
  font-weight: bold;
  text-align: right;
}


/* ==================================================================================
# footer
================================================================================== */

.footer-title {
  display: flex;
  line-height: 1.2;
  margin: 20px 0;
}

.footer-title-left {
  width: 50px;
}

.footer-title-left img {
  width: 100%;
}

.footer-title-right-01{
  font-size: 18px;
}

.footer-title-right-02 {
  font-size: 22px;
}

.footer-title-right-03 {
  color: #888889;
}

.footer-border {
  border: 1px solid #888889;
}

.footer-text {
  font-size: 14px;
  line-height: 1.4;
  margin: 20px 0;
}

.footer-text span {
  font-size: 12px;
}

@media screen and (max-width: 480px) {

  .footer-title-right-01{
    font-size: 16px;
  }
  
  .footer-title-right-02 {
    font-size: 14px;
  }

  .footer-text {
    font-size: 12px;
  }

}


