@charset "UTF-8";

/*=====================
  common
======================*/
body{
  width: 100%;
  background-color: #fff;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
  color: #000;
  line-height: 1;
  font-feature-settings:  "palt";
  letter-spacing: 0em;

}

main {
  position: relative;
}

.roboto{
  font-family: 'Roboto', sans-serif;
}

.flex{
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.wrap {
  position: relative;
  width: 750px;
  margin: 0 auto;
}
  
.wrap img{
  width: 100%;
  vertical-align: bottom;
}

a,
a:visited {
  color: #fb7971;
  text-decoration: underline;
}
a:hover {
  text-decoration: none;
}


.caution__txt{
  font-size: 20px;
  text-align: center;
  margin-bottom: 40px;
}

/*　## アコーディオン設定
-------------------------------*/
.accordion_box .accordion_header {
  cursor: pointer;
  transition-duration: 0.2s;
}
.accordion_box .accordion_body {
  display: none;
}

/* header
-------------------------*/
header {
  position: fixed;
  top: 0;
  z-index: 99999;
  width: 750px;
  background: #6dd2fa;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: 0.2s ease-in;
}

.naspialtes-logo {
  width: 60.5%;
  margin-left: 3.3%;
}
/* ドロワー */
		.drawer {
			width: 110px;
			height: 110px;
		}
		.drawer__checkbox {
			display: none;
		}

		/* ハンバーガー*/
		.drawer__icon {
			position: relative;
			display: block;
			width: 110px;
			height: 110px;
			cursor: pointer;
			transition: 0.3s;
		}
		.drawer__icon-parts{
			position: absolute;
			top: 0;
			left: 23px;
			display: block;
			width: 58px;
			height: 2px;
			margin-bottom: 8px;
			background: #fff;
		}

		/* ハンバーガーの位置設定 */
		.drawer__icon-parts:nth-child(1) { top: 27px; }
		.drawer__icon-parts:nth-child(2) { top: 54px; }
		.drawer__icon-parts:nth-child(3) { top: 81px; }

		/* チェックボックスがチェックされたら*/
		.drawer__checkbox:checked ~ .drawer__icon .drawer__icon-parts:nth-child(1) {
			top: 54px;
			height: 2.5px;
			transform: rotate(45deg); 
		}
		.drawer__checkbox:checked ~ .drawer__icon .drawer__icon-parts:nth-child(2) {
			top: 54px;
			width: 0;
			left: 50%;
		}
		.drawer__checkbox:checked ~ .drawer__icon .drawer__icon-parts:nth-child(3) {
			top: 54px;
			height: 2.5px;
			transform: rotate(-45deg);
		}
    .drawer__menu {
			position: absolute;
			top: 0;
			right: 0;
			width: 42.66666%;
      background-color: #6dd2fa;
			color: #fff;
			visibility: hidden;
			opacity: 0;
			transition: all 0.3s ease;
    }
		.drawer__checkbox:checked ~ .drawer__menu {
			visibility: visible;
			opacity: 1;
		}

		.drawer__icon-parts{
		  -webkit-transition: all 0.6s;
		  transition: all 0.6s;
		}

		/* 重ね順*/
		.drawer__icon { z-index: 11000;	}
		.drawer__menu {	z-index: 10000;	}

		.drawer__menu--main .item {
			font-size: 1.6rem;
			font-weight: 700;
			border-bottom: 1px solid #D6E6EF;
		}

		.drawer__menu--main {
      padding-bottom: 30px;
			margin-top: 110px;
		}

		.drawer__menu a {
			position: relative;
			display: block;
      font-size: 34px;
      font-weight: 500;
      text-align: right;
      text-decoration: none;
			color: #fff;
			padding: 1em 1.3em;
			transition: 0.3s;
		}
		.drawer__menu a:hover {
			letter-spacing: 0.1em;
		}

 /* pre campaign area
 --------------------------*/

.cp__pre {
  width: 100%;
  background: url(../images/cp_pre_bg.jpg) no-repeat left top;
  background-size: 100% 100%;
  padding: 100px 0;
}

.cp__pre__wrap {
  width: 650px;
  margin: 0 auto;
  background: hsla(0, 0%, 100%, 0.8);
  border: solid 6px #6dd2fa;
  box-sizing: border-box;
  margin-bottom: 60px;
  border-radius: 50px;
}

.cp__pre__wrap dd {
  position: relative;
}

.cp__pre__wrap dd::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 580px;
  height: 1px;
  background: #6dd2fa;
}

.cp__pre__wrap dd:last-child::before {
  display: none;
}

.cp__membership {
  width: 550px;
  margin: 0 auto;
}

.cp__membership a {
  display: block;
  width: 550px;
  height: 130px;
  margin-bottom: 30px;
  background: #fff;
  transition: 0.8s;
}

.cp__membership a img:hover{
  opacity: 0.8;
}

.cp__membership p {
  font-size: 22px;
  font-weight: 300;
  line-height: 1.5;
}

 /* btn_following
 --------------------------*/
#cta {
  position: relative;
}

.btn_following {
  z-index: 999;
  opacity: 0;
  visibility: hidden;
  position: fixed;
  bottom: 0;
	left: 50%;
  transform: translateX(-50%);
  width: 750px;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  background: #fff;
  transition: .3s;
}

.btn_following.active {
  visibility: visible;
  opacity: 1;
}

.btn_following div {
  width: 50%;
}

.btn_following div a {
  transition: 0.5s;
}

.btn_following div a:hover img {
  opacity: 0.8;
}

 /* sec01〜06 common
 --------------------------*/

 .sec01, .sec04, .sec06 {
  width: 100%;
  padding-bottom: 100px;
}

.sec01 h2, .sec04 h2, .sec05 h2, .sec06 h2 {
  padding: 100px 0 80px;
}

#reason, #point, #plan, #faq, #access {
  padding-top: 110px;
  margin-top: -110px;
} 


/* fv
--------------------------*/

.fv {
  padding-top: 110px;
}

 /* sec01 - REASON
 --------------------------*/

.reason__ttl,
.reason__img {
  margin-bottom: 40px;
}

.reason__txt {
  font-size: 28px;
  font-weight: 300;
  line-height: 1.7;
  margin: 0 50px 40px;
}

.reason__wrap:last-child .reason__txt {
  margin-bottom: 0;
}

 /* sec02 - PRESENTATION
 --------------------------*/

 .presen__wrap {
  width: 650px;
  margin: 80px auto;
 }

 .presen__wrap h3 {
  font-size: 54px;
  font-weight: 400;
  color: #6dd2fa ;
  text-align: center;
  margin-bottom: 70px;
 }

 .presen__wrap h5 {
  font-size: 34px;
  font-weight: 400;
  text-align: center;
  margin-bottom: 40px;
 }

 .presen__txt {
  font-size: 28px;
  font-weight: 300;
  line-height: 1.7;
  margin-bottom: 60px;
 }



 /* sec03 - POINT
 --------------------------*/

.sec03__inner {
  background: #f6f0e3;
  padding-bottom: 100px;
}

.point__box {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.point__txt {
  font-size: 28px;
  line-height: 1.7;
  font-weight: 300;
  margin: 40px 50px 80px;
}

.point__box:last-child .point__txt {
  margin-bottom: 0;
}

 /* sec04 - PLAN
 --------------------------*/

.plan__note__txt {
  font-size: 22px;
  font-weight: 300;
  text-align: center;
}

.sec04__inner {
  width: 650px;
  margin: 0 auto;
}

.plan__commission {
  margin: 60px auto 50px;
}

.plan__wrap {
  margin-bottom: 80px;
}

.plan__wrap dt {
 margin-bottom: 40px;
}

.plan__wrap__inner {
  width: 590px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.plan__wrap__inner img {
  width: 50%;
}

.plan__wrap__inner p {
  width: 100%;
  margin-top: 40px;
  font-size: 21px;
  font-weight: 300;
  line-height: 1.7;
}

 /* sec05 - FAQ
 --------------------------*/

.sec05__inner {
  padding-bottom: 100px;
  background: #f6f0e3;
}

.qa__wrap {
  width: 650px;
	margin: 0 auto 100px;
}

.qa__wrap:last-child {
	margin: 0 auto;
}

.qa__category {
  font-size: 36px;
  font-weight: 500;
	text-align: center;
  margin-bottom: 40px;
}

.qa__box {
  margin-bottom: 40px;
  list-style: none;
  background: #fff;
}

.qa__q {
  display: flex;
  position: relative;
  padding-right: 95px;
  font-size: 32px;
  font-weight: 400;
  line-height: 1.4;
}

 /* プラス　マイナス　アイコン */
.qa__q::before, .qa__q::after {
	content: "";
	position: absolute;
	right: 20px;
	top: 50%;
  transform: translateY(-50%);
	transition: opacity .5s;
	display: inline-block;
	width: 55px;
	height: 3px;
  background-color: #6dd2fa;
}

.qa__q::after {
  transform: translateY(-50%) rotate(90deg);
  transition: transform .5s;
}

.qa__q.open::before {
  opacity: 0;
}

.qa__q.open::after {
  transform: translateY(-50%) rotate(180deg);
}
/* --- */

.qa__a {
  display: flex;
  font-size: 28px;
  font-weight: 300;
  line-height: 1.5;
}

.qa__a__inner {
  display: flex;
  align-items: stretch;
}

.qa__icon {
  padding: 47px 25px;
  display: flex;
  align-items: center;
}

.qa__q .qa__icon {
  background: #6dd2fa;
 }

.qa__a .qa__icon {
  background: #3b3838 ;
}

.qa__icon img {
  width: 32px;
  height: 32px;
}

.qa__txt {
  display: flex;
  align-items: center;
  margin: 25px;
}

 /* sec06 - ACCESS
 --------------------------*/


.sec06__wrap {
  width: 474px;
  margin: 0 auto;
  text-align: center;
}

.sec06 .access__txt {
  width: 100%;
  display: block;
  margin-bottom: 40px;
}

.sec06 .map{
  width: 474px;
  height: 440px;
  margin-bottom: 40px;
}

.sec06 .map iframe{
  width: 100%;
  height: 100%;
}

.sec06 .info__address {
  font-size: 26px;
  margin-bottom: 60px;
}

.sec06 .info__time {
  font-size: 32px;
}

.sec06 .info__time__head {
  border-color: #3b3838;
  border-top: 1px solid;
  border-bottom: 1px solid;
  line-height: 1.0;
  padding: 15px 0 18px;
}

.sec06 .iinfo__time__head span {
  font-size: 28px;
}

.sec06 .info__time__body table {
  margin: 35px auto 0px auto;
	
}

.sec06 .info__time__body tr {

    font-size: 26px;
}
.sec06 .info__time__body td {

      padding: 10px;
	text-align: right;
}
 /* LINE
 --------------------------*/

 .line__txt{
  font-size: 32px;
  line-height: 1.7;
  letter-spacing: .075em;
  text-align: center;
  margin: 80px auto 40px;
}

.line__btn{
  display: block;
  width: 550px;
  margin: 0 auto 80px;
}

/* footer
-------------------------*/

footer{
  background-color: #daf6ff;
  padding:35px 0 0;/* お問い合わせ、採用リンク追加の場合は35pxを73pxに */
}

.inner{
  width: 86.666667%;
  margin: 0 auto;
}

.footer-logo{
  width: 407px;
  display: block;
  margin: 0 auto;
}

.address{
  margin: 27px auto 35px;
  font-size: 28px;
  text-align: center;
  font-weight: 300;
}

.recruit-icon-wrap{
  justify-content: center;
  align-items: center;
  margin: 0 auto 47px;
}

.recruit a{
  color: #000;
  vertical-align: middle;
  font-size: 21px;
  font-weight: 300;
  margin-right: 20px;
}

.insta-icon{
  width: 59.42px;
  display: block;
}

.insta-icon img{
  width: 100%;
}

.footer-nav-wrap{
  background: #fff;
  padding-top: 47px;
}
.footer-nav {
  flex-wrap: wrap;
}
.footer-nav li a{
  text-decoration: underline;
  color: #000;
  font-size: 21px;
  font-weight: 300;
  display: block;
  width: fit-content;
  letter-spacing: 0;
  line-height: 1;
}

.footer-nav li:first-child{
  margin-right: 44px;
}

.footer-nav li:first-child , .footer-nav li:nth-child(2){
  margin-bottom: 32px;
}

.footer-nav li:nth-child(3){
  margin-right: 38px;
}

.daiwa-logo{
  width: 108px;
  display: block;
}

.footer-nav{
  width: 514px;
  margin-left: 26px;
}

.company-name{
  width: 311.38px;
  padding-bottom: 41px;
  margin: 44px auto 0;
  display: block;
}

.company-name img{
  width: 100%;
}

.copy{
  font-size: 22px;
  text-align: center;
  background-color: #3b3838;
  padding: 24px 0 21px;
  color: #fff;
}


  @media screen and (max-width:749px){
    .wrap {
      width: 100%;
    }

    header {
      width: 100%;
    }

		.drawer {
			width: 14.66666vw;
			height: 14.66666vw;
		}

		.drawer__icon {
			width: 14.66666vw;
			height: 14.66666vw;
		}

    .drawer__icon-parts{
			left: 3.06666vw;
			width: 7.73333vw;
		}

		.drawer__icon-parts:nth-child(1) { top: 3.6vw } 
		.drawer__icon-parts:nth-child(2) { top: 7.2vw; }
		.drawer__icon-parts:nth-child(3) { top: 10.8vw; }

		.drawer__checkbox:checked ~ .drawer__icon .drawer__icon-parts:nth-child(1) {
			top: 7.2vw;
		}
		.drawer__checkbox:checked ~ .drawer__icon .drawer__icon-parts:nth-child(2) {
			top: 7.2vw;
		}
		.drawer__checkbox:checked ~ .drawer__icon .drawer__icon-parts:nth-child(3) {
			top: 7.2vw;
		}

    .drawer__menu--main {
      padding-bottom: 4vw;
			margin-top: 14.66666vw;
		}
    .drawer__menu a {
      font-size: clamp(15px , 0.864px + 4.42vw , 34px);
		}

    /* ----- */
    
    .caution__txt{
      font-size: clamp(12px , 6.048px + 1.86vw , 20px);
      margin-bottom: 5.33333vw;
    }
    
    footer{
      padding:9.73333vw 0 0;
    }
    
    .footer-logo{
      width: 54.266666vw;
    }
    
    .address{
      margin: 7.2vw auto 9.333vw;
      font-size: clamp( 14px , 3.73333vw , 28px);
      text-align: center;
      font-weight: 300;
    }
  
    .recruit-icon-wrap{
      margin: 0 auto 6.26666vw;
    }
    
    .recruit a{
      font-size: clamp(12px , 2.8vw , 21px);
      margin-right: 2.265vw;
    }
    
    .insta-icon{
      width: 7.9222vw;
    }
    
    .footer-nav-wrap{
      padding-top: 6.2666vw;
    }
    
    .footer-nav li a{
      font-size: clamp(10px , 2.8vw , 21px);
    }
    
    .footer-nav li:first-child{
      margin-right: 5.86667vw;
    }
    
    .footer-nav li:nth-child(2){
      margin-right: 5.86667vw;
    }
    
    .footer-nav li:first-child , .footer-nav li:nth-child(2){
      margin-bottom:4.26666vw;
    }
    
    .footer-nav li:nth-child(3){
      margin-right: 4.4vw;
    }
    
    .footer-nav li:nth-child(4){
      margin-right: 3.86666vw;
    }
      
    .daiwa-logo{
      width: 14.4vw;
    }
    
    .footer-nav{
      width: 68.5333vw;
      margin-left: 3.4666vw;
    }
    
    .company-name{
      width: 41.5%;
      margin: 5.8666vw auto 0;
      display: block;
      padding-bottom: 5.46667vw;
    }
    
    .copy{
      font-size: clamp(10px , 2.93333vw , 22px);
      padding: 3.2vw 0 2.8vw;
    }
  
    /*------------*/

    .cp__pre {
      padding: 13.33333vw 0;
    }
    
    .cp__pre__wrap {
      width: 86.6666%;
      margin-bottom: 8vw;
    }

    .cp__pre__wrap dd::before {
      width: 84.61538%;
    }
    
    .cp__membership {
      width: 73.33333%;
    }

    .cp__membership a {
      width: 100%;
      height: 100%;
      margin-bottom: 4vw;
    }
    
    .cp__membership p {
      font-size: clamp(12px, 4.56px + 2.33vw, 22px);
    }
    
    .btn_following {
      width: 100%;
    }
    
    .sec01, .sec04, .sec06 {
      padding-bottom: 13.33333vw;
    }
  
    .sec01 h2, .sec04 h2, .sec05 h2, .sec06 h2 {
      padding: 13.33333vw 0 10.66666vw;
    }

    #reason, #point, #plan, #faq, #access {
      padding-top: 14.66666vw;
      margin-top: -14.66666vw;
    } 

    .fv {
      padding-top: 14.66666vw;
    }
    
    .reason__ttl,
    .reason__img {
      margin-bottom: 5.33333vw;
    }
    
    .reason__txt {
      font-size: clamp(14px, 3.584px + 3.26vw, 28px);
      margin: 0 6.66666vw 5.33333vw;
    }
    
    .presen__wrap {
      width: 86.66666%;
      margin: 10.66666vw auto;
     }
    
     .presen__wrap h3 {
      font-size: clamp(27px, 6.912px + 6.28vw, 54px);
      margin-bottom: 9.33333vw;
     }
    
     .presen__wrap h5 {
      font-size: clamp(17px, 4.352px + 3.95vw, 34px);
      margin-bottom: 5.33333vw;
     }
    
     .presen__txt {
      font-size: clamp(14px, 3.584px + 3.26vw, 28px);
      margin-bottom: 60px;
     }
    
    .sec03__inner {
      padding-bottom: 13.33333vw;
    }
    
    .point__txt {
      font-size: clamp(14px, 3.584px + 3.26vw, 28px);
      margin: 5.33333vw 6.66666vw 10.66666vw;
    }
        
    .plan__note__txt {
      font-size: clamp(12px, 6.048px + 1.86vw, 22px);
    }

    .sec04__inner {
      width: 86.66666%;
    }

    .plan__commission {
      margin: 8vw auto 6.66666vw;
    }

    .plan__wrap {
      margin-bottom: 10.66666vw;
    }

    .plan__wrap dt {
      margin-bottom: 5.33333vw;
    }

    .plan__wrap__inner {
      width: 90.07692%;
    }
         
    .plan__wrap__inner p {
      margin-top: 5.33333vw;
      font-size: clamp(12px, 5.296px + 2.09vw, 21px);
    }

    .sec05__inner {
      padding-bottom: 13.33333vw;
    }
    
    .qa__wrap {
      width: 86.66666vw;
      margin: 0 auto 13.33333vw;
    }

    .qa__category {
      font-size: clamp(16px, 1.12px + 4.65vw, 36px);
      margin-bottom: 5.33333vw;
    }
    .qa__box {
      margin-bottom: 5.33333vw;
    }
    
    .qa__q {
      padding-right: 12.66666%;
      font-size: clamp(14px, 0.608px + 4.19vw, 32px);
    }    
    
    .qa__q::before, .qa__q::after {
      right: 2.66666%;
      width: 7.33333%;
      height: 0.4vw;
    }

    .qa__a {
      font-size: clamp(13px, 1.84px + 3.49vw, 28px);
    }
    
    .qa__icon {
      padding: 6.26666vw 3.33333vw;
    }

    .qa__icon img {
      width: 4.26666vw;
      height: 4.26666vw;
    }
    
    .qa__txt {
      margin: 3.33333vw;
    }

    .sec06__inner {
      padding-bottom: 13.33333vw;
    }

    .sec06__wrap {
      width: 63.2%;
    }

    .sec06 .access__txt {
      margin-bottom: 5.33333vw;
    }

    .sec06 .map{
      position: relative;
      width: 100%;
      height: unset;
      margin-bottom: 5.33333vw;
      padding-top: 92.82%;
    }

    .sec06 .map iframe{
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
    }
    
    .sec06 .info__address {
      font-size: clamp(12px, 1.584px + 3.26vw , 26px);
      margin-bottom: 8vw;
    }
    
    .sec06 .info__time {
      font-size: clamp(16px , 4.096px + 3.72vw , 32px);
    }
    
    .sec06 .info__time__head {
      padding: 2vw 0 2.4vw;
    }
    
    .sec06 .iinfo__time__head span {
      font-size: clamp(14px , 3.584px + 3.26vw , 28px);
    }
    
    .sec06 .info__time__body {
      font-size: clamp(15px , 3.84px + 3.49vw , 30px);
    }
    
    .sec06 .info__time__body p:first-child {
      margin-bottom: 02.66666vw;
    }
.sec06 .iinfo__time__head span {
  font-size: 28px;
}

.sec06 .info__time__body table {
  margin: 15px auto 0px auto;
	
}

.sec06 .info__time__body tr {

    font-size: 18px;
}
.sec06 .info__time__body td {

      padding: 10px;
	text-align: right;
}
    .line__txt{
      font-size: clamp(14px , 4.266667vw , 32px);
      margin: 10.66666vw auto 5.73333vw;
    }

    .line__btn{
      width: 73.33333%;
      margin: 0 auto 10.66666vw
    }
    
  }
.info_address_margin-top {
    display: inline-block;
    margin-top: -5px;
}