@charset "UTF-8";
/* CSS Document */


.header-logo{
padding: 5px 10px;
}
.header-timer{
padding: 5px 10px;
text-align: right;
font-size: 90%;
}
.t-bg{
height: 45px;
}

@media screen and (max-width: 768px) {
.header-logo{
padding: 5px 10px;
text-align: center;
}
.header-timer{
padding: 0px 10px;
text-align: center;
font-size: 90%;
}
.t-bg{
height: 37px;
}
}


.profile{
background-image: url(../img/profile_02.png);
   height: auto;
   background-size: contain;
   letter-spacing: normal;
}
.profile-inner{
background-image: url(../img/profile_01.png);
background-repeat: no-repeat;
   background-size: contain;
   padding: 300px 45px 0px 45px;
   letter-spacing: normal;
}

@media screen and (max-width: 768px) {
.profile-inner{
background-image: none;
background-repeat: no-repeat;
   background-size: contain;
   padding: 15px 15px 0px 15px;
   letter-spacing: normal;
}
}

.spp-inner{
background-image: url("../img/spp2_02.png");
   background-size: contain;
   padding: 0px 15px 0px 15px;
   letter-spacing: normal;
}

@media screen and (max-width: 768px) {
.spp-inner{
   background-size: contain;
   padding: 0px 15px 0px 15px;
   letter-spacing: normal;
}
}


/*
---------------------------------------------------------------------------*/
.qaContainer dt {
padding: 10px 10px 10px 35px;
border-radius: 5px;
background: #cce6ff;
text-indent: -25px;
}
.qaContainer dt:before {
content: "Q.";
font-weight: bold;
margin-right: 7px;
}
.qaContainer dd {
margin: 20px 10px 40px 35px;
text-indent: -25px;
}
.qaContainer dd:before {
content: "A.";
color: #1771c6;
font-weight: bold;
margin-right: 7px;
}

/*
---------------------------------------------------------------------------*/
.qaContainer2 dt {
padding: 10px 10px 10px 35px;
border-radius: 5px;
background: var(--orange0);
text-indent: -25px;
font-weight: bold;
}
.qaContainer2 dt:before {
content: "Q.";
font-weight: bold;
margin-right: 7px;
}
.qaContainer2 dd {
margin: 20px 10px 40px 35px;
text-indent: -25px;
font-size: 95%;
}
.qaContainer2 dd:before {
content: "A.";
color: var(--orange5);
font-weight: bold;
margin-right: 7px;
}

/*申し込み
---------------------------------------------------------------------------*/
.mousikomi{
	overflow-y:scroll;
}
table.mousikomi {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 0px;
}
table.mousikomi th,
table.mousikomi td {
  padding: 15px 20px;
  border: 1px solid var(--white);
  text-align:left;
  background-color: var(--blue0);
  line-height: 140%;
}
table.mousikomi th {
  background-color: var(--base);
  text-align: left;
  color: var(--white);
  width: 25%;
  vertical-align: top;
}
.mousikomibox{
    padding:0px;
    width:100%;
}
@media screen and (max-width: 768px) {
.mousikomi{
}	
  table.mousikomi {
    border-top: 1px solid #999;
  }
  table.mousikomi td {
    display: block;
    text-align: left;
  }
  table.mousikomi th {
    display: block;
    border-top: none;
    border-bottom: none;
    width: 100%;
	text-align: center;
  }
}

#bg-wrap {background:url(../img/bg-sea.png) center/cover no-repeat fixed}
@media only screen and (max-width: 768px) {
#bg-wrap {background:none} /*PC用の背景はオフ*/
#bg-wrap::before {
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  z-index:-1;
  width:100%;
  height:100vh;
  background:url(../img/bg-sea.png) center/cover no-repeat; /*fixedをトル！*/
  -webkit-background-size:cover;/*Android4*/
  }
}

.line-bg{
height: 10px;
}
.bunkatu-inner1{
width: 80%;
text-align: center;
margin: 0 auto;
}
.bunkatu-inner2{
width: 80%;
text-align: right;
margin: 0 auto;
font-size: 80%;
}

table.bunkatu {
width: 80%;
margin: 0 auto;
border-collapse: separate;
border-spacing: 0px 15px;
}

table.bunkatu th,
table.bunkatu td {
padding:0px 10px;
text-align: right;
color: var(--red5);
}

table.bunkatu th {
background:  var(--red5);
vertical-align: middle;
text-align: left;
width: 25%;
overflow: visible;
position: relative;
color: #fff;
font-weight: bold;
font-size: 120%;
}

table.bunkatu th:after {
left: 100%;
top: 50%;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none;
border-color: rgba(136, 183, 213, 0);
border-left-color:  var(--red5);
border-width: 10px;
margin-top: -10px;
}
/* firefox */
@-moz-document url-prefix() {
table.bunkatu th::after {
float: right;
padding: 0;
left: 30px;
top: 10px;
content: " ";
height: 0;
width: 0;
position: relative;
pointer-events: none;
border: 10px solid transparent;
border-left: #295890 10px solid;
margin-top: -10px;
}
}

table.bunkatu td {
background: #f8f8f8;
width: 40%;
padding-left: 20px;
}






.op-inner{
   background-image: url(../img/bg-op_02.png);
   height: auto;
   background-size: contain;
   padding: 0px 30px;
}
 .del {
   color: #f00;
   text-decoration : line-through ;
 }
 .del span {
   color: #333;
 }
@media screen and (max-width: 768px) {
.op-inner{
   padding: 0px 20px 15px 20px;
}
.bunkatu-inner1{
width: 100%;
}
.bunkatu-inner2{
width: 100%;
text-align: center;
}
table.bunkatu {
width: 100%;

}
}
table {
  border-collapse: collapse;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  table-layout: fixed;
  letter-spacing: normal;
}
thead th{
  padding: 1em .8em;
  border-right: 5px solid　#fff;
}
table tr {
  background-color: #fff;
  padding: .35em;
  border-right: 5px solid　#fff;
}
table tr:nth-child(even){
  background-color: #f9f9f9;
  border-right: 5px solid　#fff;
}
table td {
  padding: .7em;
  text-align: center;
  border-right: 5px solid#fff;
}
table th {
  font-size: 1em;
  text-align: left;
  padding: 0px 15px;
  border-right: 5px solid#fff;

}
i{
  font-size:2em
}
.table-text{
font-size: 90%;
color: #333;
}
.plan1{
  background: #03A9F4;
}
.plan1_i{
  color:#03A9F4;
}
.plan4{
  background: #009688;
}
.plan4_i{
  color:#009688;
}
.plan3{
  background: #4caf50;
}
.plan3_i{
  color:#4caf50;
}
.plan2{
  background: #cddc39;
}
.plan2_i{
  color:#cddc39;
}
.price{
  color: #fff;
  font-size: 1.8em;
  margin-bottom:10px
}
.price span {
    font-size: .6em;
}

@media screen and (max-width: 600px) {
  .wrap{
     overflow-x: scroll;
  }
}


/*説明*/
.nagara-inner{
background-color: #fff;
border: 3px solid #eebd39;
margin: 0px 20px;
padding: 30px;
}
.nagara-img{
padding: 0px 20px;
}
.nagara-midasi{
background-color: var(--orange5);
color: #fff;
text-align: center;
padding: 20px 40px;
letter-spacing: normal;
}
@media screen and (max-width: 768px) {
.nagara-inner{
padding: 30px 15px;
margin: 0px 10px;
}
.nagara-img{
padding: 0px 10px;
}
.nagara-midasi{
padding: 15px 15px;
line-height: 100%;
}
}

/*サブヘッド*/

.subhead-c {           
    position:  relative;     
    display:  inline-block;
    background-color: #48aae2; 
    margin:0px 20px;      
    padding: 0px 10px;          
}
.subhead-c-wrap {
    position: relative;      
	margin-bottom:0px;
	text-align: center;
}
.subhead-c-wrap:before {
    content:  '';           
    background-color: #ffef5a;
    display:  block;        
    position:  absolute;   
    left:  0;              
    width:  100%;       
    height:  1px;     
    top: 0;            
    bottom:  0;           
    margin:  auto;
}
.sub-text-mini{
font-size: 120%;
color: #ffef5a;
}
.sub-text{
font-size: 180%;
font-weight: bold;
line-height: 150%;
}
.sub-text span{
color: #fffae2;
font-weight: bold;
font-size: 130%;
}
@media only screen and (max-width: 768px) {
.sub-text-mini{
font-size: 100%;
}
.sub-text{
font-size: 130%;
}
}

/*おすすめ*/
.osususu-inner{
padding: 0px 80px;
text-align: left;
}
@media only screen and (max-width: 768px) {
.osususu-inner{
padding: 0px 15px;
text-align: left;
}
}
.orange-line{
background-color: #eebd39;
height: 3px;
}

/*動画*/
.douga{
font-size: 250%;
font-weight: bold;
padding-top: 15px;
color: #fa8c06;
line-height: 140%;
letter-spacing: normal;
}
@media only screen and (max-width: 768px) {
.douga{
font-size: 140%;
}
}
.headerbg_01{
	background-size: cover;
	background-position: center;
	height: 55vw;
	background-image:url(../img/pc_01.jpg);
}
.h-t {
	padding-top: 1.2%;
	padding-left: 2%;

}
@media only screen and (max-width: 1700px) {
.h-t {
	padding-top: 0.9%;
	padding-left: 2%;

}
}



@media only screen and (max-width: 1600px) {
.h-t {
	padding-top: 0.9%;
	padding-left: 2%;

}
}
@media only screen and (max-width: 1500px) {
.h-t {
	padding-top: 0.8%;
	padding-left: 2%;

}
}
@media only screen and (max-width: 1400px) {
.h-t {
	padding-top: 0.7%;
	padding-left: 2%;
	font-size: 90%;

}
}
@media only screen and (max-width: 1300px) {
.h-t {
	padding-top: 0.6%;
	padding-left: 2%;
	font-size: 90%;

}
}
@media only screen and (max-width: 1200px) {
.h-t {
	padding-top: 0.5%;
	padding-left: 2%;
	font-size: 90%;

}
}
@media only screen and (max-width: 1100px) {
.h-t {
	padding-top: 0%;
	padding-left: 2%;
	font-size: 90%;

}
}





.b930-2 {
	padding-left: 81.5%;
	padding-right: 2%;
	position: relative; bottom: 20px;
}
.head-p {
	padding: 100px 0px 0px 128px;
}
@media only screen and (max-width: 1300px) {
.head-p {
	padding: 50px 0px 0px 20px;
}
}


@media only screen and (max-width: 1200px) {
.head-p {
	padding: 20px 0px 0px 20px;
}
}
.head-p2 {
	padding: 460px 0px 0px 0px;
}
@media only screen and (max-width: 1300px) {
.head-p2 {
	padding: 440px 0px 0px 0px;
}
}


@media only screen and (max-width: 1200px) {
.head-p2 {
	padding: 300px 0px 0px 0px;
}
}
.head-t{
	background: no-repeat;
	background-size: 839px;;
	height: 699px;
	background-image:url(../img/head-f.png);
}
@media only screen and (max-width: 1200px) {
.head-t{
	background: no-repeat;
	background-size: 600px;;
	height: 699px;
	background-image:url(../img/head-f.png);	
}
}

.sp-f {
	padding: 0px 20px 15px 20px;
	background-color: #0063A1;
}


.lstep-box{
	border: #0063A1 solid 2px;
	background-color: none;
}
@media only screen and (max-width: 768px) {
.lstep-box{
	border: #0063A1 solid 0px;
	background-color: none;
}
}	
	
.lstep-title{
	background-color: #0063A1;
	color: #fff;
	text-align: center;
	font-size: 220%;
	font-weight: bold;
	line-height: 1.4;
	padding: 35px 40px;
	background-image:url(../img/sub00.png);	
}
@media only screen and (max-width: 768px) {
.lstep-title{
	font-size: 115%;
	padding: 30px 10px;	
	background-image:none;		
}
}



@media only screen and (max-width: 768px) {
.sp-subt{
	font-size: 120%;
}
}
@media only screen and (max-width: 768px) {
.sp-subt2{
	font-size: 130%;
}
}
@media only screen and (max-width: 768px) {
.sp-subt3{
	font-size: 110%;
}
}
.lstep-inner{
	text-align: left;
	font-size: 110%;
	padding: 30px 60px;
}
@media only screen and (max-width: 768px) {
.lstep-inner{
	text-align: left;
	font-size: 110%;
	padding: 0px 20px;
}
}

.sankaku{
  position: relative;
  background: #2E658B;
  padding: 0px 8px;
  height: auto;
  text-align: center;
	
}
.sankaku:after{
  content: "";
  position: absolute;
  right: 0;
  bottom: -13px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color:  #0063A1 transparent transparent transparent;
  border-width: 13px 13px 0 13px;
}


.cont01 {
   background-repeat: repeat;
   background-image: url('../img/cont_02.png') ;
   height: auto;
   background-size: contain;
   padding: 10px 80px 0px 80px; 
	font-size: 110%;
}
 @media screen and (max-width: 768px) {
	 .cont01 {
   padding: 10px 30px 0px 30px; 
}
}
.cont02 {
   background-repeat: repeat;
   background-image: url('../img/cont_02.png') ;
   height: auto;
   background-size: contain;
   padding: 10px 80px 0px 80px; 
	font-size: 110%;
}
 @media screen and (max-width: 768px) {
	 .cont02 {
   padding: 10px 10px 0px 30px; 
}
}


.zehi01-1 {
   background-repeat: repeat;
   background-image: url('../img/zehi.png') ;
   height: auto;
   background-size: contain;
   padding: 30px 60px 30px 60px;
	color: #FFFFFF;
	font-size: 110%;
}
 @media screen and (max-width: 768px) {
	 .zehi01-1 {
   padding: 0px 25px 0px 25px; 

		 
}
}



.koe-box {
 background: url("../img/img002.png"); 
 background-repeat: no-repeat;
	background-size:contain;
 position: relative;
 padding: 120px 0px 0px 0px;
 border-style: solid;
 border-width: 5px 0 0 0;
 border-color:  var( --base1);  /* 枠の色 */
 background-color: #fff; /* 背景色 */
 color:  var( --base1);/* テキスト色 */
 box-shadow: 0 0 3px #999; /* 影の色 */
}
.koe-box-inner{
	padding: 0px 40px;
}
.koe-title{
 position: absolute;
 top: 40px;
 left:25%;
 background-color: var( --base1); /* タイトル色 */
 font-size: 140%;
	color: #ffffff;
	padding: 5px 30px;
border-radius: 40px;
}


.fukidasi {
  position: relative;
  padding: 1.5rem 2rem;
  border: 5px solid #0063A1;
  border-radius: 20px;
  background:#FFFFFF;
	font-size: 110%;
	
}
 @media screen and (max-width: 768px) {
	.fukidasi {
  padding: 1.0rem 1rem;
	
}
}
.list01 ul li {
	background-image: url('../img/chk01.png') ;
	background-repeat: no-repeat;
	border-bottom: 1px dashed #666;
	list-style: none;
	padding: 0px 0px 0px 50px;
	line-height: 300%;
	font-size: 160%;
	text-align: left;
	font-weight: bold;

}
 @media screen and (max-width: 768px) {
	 .list01 ul li {
		 background-image: url('../img/spchk01.png') ;
	font-size: 120%;
	line-height: 180%;
		 padding: 5px 0px 5px 30px;
}
}


.yello-line{
border-bottom: 6px solid #FCEE21;
	color: #0063A1;
	font-size: 110%;
}
.yello-line02  { 
border-bottom: 8px solid #FCEE21;
	padding: 0 10px;/*コレ*/
}

	.inner-qa{
	padding:5px 20px;
	text-align:left;
}

	.inner-qa2{
	padding:5px 5px;
	text-align:left;
}
	.inner-qa3{
	padding:0px 10px;
	text-align:left;
}


.tokutyou01 {
   background-repeat: no-repeat;
   background-image: url('../img/tokutyou_01.png') ;
   height: auto;
   font-weight: bold;
   padding: 60px 20px 60px 20px;
	color: #FFFFFF;
}

.tokutyou02 {
   background-repeat: no-repeat;
   background-image: url('../img/tokutyou_02.png') ;
   height: auto;
   font-weight: bold;
   padding: 30px 20px 30px 20px;
	color: #FFFFFF;
}


.tokutyou03 {
   padding: 0px 30px 0px 30px;
}
 @media screen and (max-width: 768px) {
.tokutyou03 {
   padding: 0px 0px 0px 0px; 
}
}
.tokutyou04 {
position: relative; bottom: 130px;
}
 @media screen and (max-width: 768px) {
.tokutyou04 {
position: relative; bottom: 0px;
}
}


.cont-01{
   padding: 50px 50px 50px 50px;	
	
	height: 424px;
	background-image:url(../img/con-01.png);
}

.cont-02{
   padding: 50px 50px 50px 50px;	
	
	height: 433px;
	background-image:url(../img/cont_01-2-1.png);
}
.cont-03{
   padding: 50px 50px 50px 50px;	
	
	height: 433px;
	background-image:url(../img/cont_01-3-1.png);
}


.cont-t1 {
font-size: 390%;
line-height: 1.2;
font-weight: bold;
	color: #0063A1;
}
.cont-t2 {
	padding: 56px 50px 0px 30px;	
font-size: 130%;
line-height: 1.5;
font-weight: bold;
	color: #FFF;
}
.cont-t0 {
	padding: 40px 0px 20px 0px;	
}
.title-border-right {
display: flex;
align-items: center;
}
.title-border-right:after {
border-top: 4px solid;
content: "";
flex-grow: 1;
	color: #0063A1;

}
.title-border-right:after {
margin-left: 1rem;
}

.syuhou{
	background-image: url(../img/syuhoutop.png);
	height: 1954px;
	background-repeat: no-repeat;
	background-position: center top;
	background-position:50% 0%;
}
.title-001 {
border-left: 17px solid #0063A1;
text-align: left;
margin: 0px;
padding: 2px 2px 2px 10px;
color: #0063A1;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
.title-001 {
border-left: 8px solid #0063A1;	
padding: 2px 2px 2px 4px;	
}
}
.aisatu01 {
text-align: left;
background-image: url(../img/waku_02.png);
background-repeat: repeat;
background-size: contain;
padding: 0px 50px 0px 50px;
line-height:180%;

}
@media screen and (max-width: 768px) {
.aisatu01{
   padding: 0px 20px 0px 20px; 
}
}
.zyuuyou {
    margin: 0px;
    background: #ffffff;
}

.zyuuyou p {
	height:500px;
	overflow:scroll;
    padding: 0px 0px;
    margin: 0px 0px 0px 0px;
	text-align:left;
	color:#3C3C3C;
	font-size: 85%;
	line-height: 160%;
}
@media screen and (max-width: 640px) {
.zyuuyou {
    margin: 0px 0px;
    background: #ffffff;
}
.zyuuyou p {
	height:300px;
	overflow:scroll;
    padding: 0px 0px;
    margin: 0px 0px 0px 0px;
	text-align:left;
	color:#3C3C3C;
	font-size: 85%;
	line-height: 160%;
}
}



.setumei {
padding: 20px 40px 20px 40px

}
@media screen and (max-width: 768px) {
.setumei {
padding: 10px 15px 10px 15px

}
}



.line-01{
height: 2px;
background: #FFFFFF;
opacity:0.5;	
}

