@charset "UTF-8";
/*
 * style.css
 *
 *  version --- 1.0
 *  updated --- 2017/11/30
 */


/*
■Source Han Serif Bold
font-family: source-han-serif-japanese, serif;
font-weight: 700;
font-style: normal;


■Source Han Serif Regular
font-family: source-han-serif-japanese, serif;
font-weight: 400;
font-style: normal;

■Brandon Grotesque Regular
font-family: brandon-grotesque, sans-serif;
font-weight: 400;
font-style: normal;


■Brandon Grotesque Regular Italic
font-family: brandon-grotesque, sans-serif;
font-weight: 400;
font-style: italic;


■Brandon Grotesque Bold
font-family: brandon-grotesque, sans-serif;
font-weight: 700;
font-style: normal;


■Brandon Grotesque Bold Italic
font-family: brandon-grotesque, sans-serif;
font-weight: 700;
font-style: italic;

*/


.pc_hide{
	display:none !important;
}

.sp_hide{
}


/* !common
---------------------------------------------------------- */
.telLink{pointer-events: none;}
.btnIcon01{
	display: block;
	position: absolute;
	font-size: 2.1rem;
	right: 18px;
	top: 50%;
	transform: translateY(-50%);
	color: #fff;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	border: 3px solid;
	box-sizing: border-box;
	text-align: center;
	font-weight: bold;
	line-height:35px;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
}
.btnIcon01:before{
	display: block;
	position: absolute;
  width: 8px;
  height: 8px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  border-top: 2px solid transparent;
  border-left: 2px solid transparent;
  z-index: 1;
  transform: rotate(-45deg) translate(-100%,0);
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
  left: 50%;
  top: 10%;
  content: "";
}
.btnLink01{
	font-size: 2.1rem;
	color: #fff;
	background: #1c3a95;
	width: 400px;
	padding-right: 40px;
	box-sizing: border-box;
	height: 80px;
	font-weight: bold;
	position: relative;
	border-radius: 40px;
	margin: 0 auto;
}
.btnLink01:hover{text-decoration: none;background: #80c3cf;}
.btnLink01:hover .btnIcon01{
	color: #80c3cf;
	background: #fff;
	border-color: #fff;
	text-decoration: none;
}
.btnLink01:hover .btnIcon01:before{
	border-right: 2px solid #80c3cf;
  border-bottom: 2px solid #80c3cf;
}
#cp01,#cp02,#cp03,#cp04,#cp05,#cp06,#cp07{padding-top:10px;margin-top: -10px; }
#ac01,#ac02,#ac03,#ac04,#ac05,#ac06,#ac07{padding-top:10px;margin-top: -10px; }
/* !wrapper
---------------------------------------------------------- */
#wrapper {
	min-width:1024px;
}
.inner{
	max-width: 1040px;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
}

/* !header
---------------------------------------------------------- */
#header {
	background: #fff;
	position: relative;
	left: 0;
	top: 0;
	z-index: 998;
	width: 100%;
	height: 160px;
}

#headerIn {
	/*max-width: 1110px;*/
    max-width: 1210px;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 26px 1px 0;
	position: relative;
}
#headerLogo {
	padding: 3px 0 13px;
	float: left;
	font-size: 1.6rem;
}
#headerLogo a{color:#339cc3;}
#headerLogo a:hover{text-decoration: none;}
#headerLogo span{font-size: 3.45rem;margin-right: 10px;}
#headerLogo span font{color: #1c3a95}
.headerCt{float: right;}
.headerCt li{float: left;}
.headerCt li + li{margin-left:13px; }
.headerCt li a:hover{opacity: .8;}
.headerCt li.tel a{
	font-size: 3.5rem;
	box-sizing: border-box;
	padding-left: 28px;
	color: #1c3a95;
	background: url(../img/icon_tel.png)no-repeat left center;
	background-size: 23px auto;
	display: block;
	margin-top:7px;
	line-height: 1;
}
.headerCt li.contactLink a{
	box-sizing: border-box;
	border-radius: 23px;
	font-size: 1.7rem;
	letter-spacing: 0.08em;
	line-height: 45px;
	display: block;
	color: #fff;
	background: url(../img/icon_email.png)no-repeat left 23px center  #1c3a95;
	background-size: 27px auto;
	padding-right: 22px;
	padding-left: 57px;
}
.headerCt li.contactLink a:hover{text-decoration: none;opacity: .7}

.headerCt li.lineLink a{
	box-sizing: border-box;
	border-radius: 23px;
	font-size: 1.7rem;
	letter-spacing: 0.08em;
	line-height: 45px;
	display: block;
	color: #fff;
	background: #06C755;
	background-size: 27px auto;
    padding: 0 22px;
}
.headerCt li.lineLink a:hover{text-decoration: none;opacity: .7}



/* !breadcrumb
---------------------------------------------------------- */
#breadcrumb {
	
}

/* !gNavi
---------------------------------------------------------- */
#gNavi {
	position: relative;
	top: 0px;
	left: 0;
	z-index: 1;
	width: 100%;
	background: #fff;
	text-align: center;
	font-size: 0;
}
#gNavi .navUl li {
	display: inline-block;
	border-left: 1px solid #dfdfdf;
}
#gNavi .navUl li:last-of-type{border-right: 1px solid #dfdfdf;}
#gNavi .navUl li a {
	display: block;
	font-size: 1.6rem;
	color: #1c3a95;
	padding: 18px 30px;
	box-sizing: border-box;
}
#gNavi .navUl li a span{
	display: block;
}
#gNavi .navUl li a:hover,#gNavi .navUl li.active a{
	border-bottom: 6px solid #1c3a95;
	text-decoration: none;
}
	
/* !mainVisual
---------------------------------------------------------- */
#mainVisual {
	margin-top: -159px;
	padding-top: 159px;
	/*background: url(../img/bg_main.jpg)no-repeat bottom 70% center;
	background-size: cover;*/
	/*height: 840px;*/
	box-sizing: border-box;
	/**/
	text-align: center;
	color: #fff;
	position: relative;
}
/*
#mainVisual .p01{font-size: 8.1rem;}
#mainVisual .p02{font-size: 2.4rem;}
#mainVisual .p02 span{
	background: #1c3a95;
	display: inline-block;
	padding: 0 0.5em;
	letter-spacing: 0.3em;
	font-weight:normal;
	font-family:HiraMinPro-W3,source-han-serif-japanese, serif;
}
*/
.mainBox{
	position: absolute;
	left: 50%;
	bottom: 0;
	bottom: -33px;
	transform: translate(-50%,50%);
	z-index: 99;
	width: 90%;
	max-width: 1046px;
	margin: 0 20px;
	background: #fff;
	border: 2px solid #1c3a95;
	border-radius: 42px;
	height: 84px;
	box-sizing: border-box;
}
.mainBox .hd{
	font-size: 3.5rem;
	color: #1c3a95;
	position: absolute;
	left: 50px;
	top: 50%;
	transform: translateY(-50%);
}
.mainBox .link{
	text-align: left;
	box-sizing: border-box;
	padding-left: 22%;
	padding-top: 26px;
	padding-right: 10%;
	padding: 26px 110px 0 22%;
	overflow: hidden;
	text-overflow:ellipsis;
	white-space: nowrap;
}
.mainBox .link span{color: #000;margin-right: 25px;}
.mainBox .link a{color: #1c3a95}
.mainBox .btn a{right: 44px;color: #1c3a95}
.mainBox .btn .btnIcon01:before{
  border-right: 2px solid #1c3a95;
  border-bottom: 2px solid #1c3a95;
}
.mainBox .btn a:hover{
	color: #fff;
	background: #1c3a95;
	border-color: #1c3a95;
	text-decoration: none;
}
.mainBox .btn .btnIcon01:hover:before{
	border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}


.slick01{
	width: 1200px;
	margin: 20px auto;
	position: absolute;
}

.slick-slide:focus {
  outline: none;
}

.slick-arrow{
  outline: none;
}

.slick01 li{
	list-style-type: none;
}

.slick01 li img{
	width: 100%;
	height: auto;
}

.slick-prev{
	width: 54px;
	height: 54px;
	position: absolute;
	left: -27px;
	top: 50%;
	margin-top: -27px;
	z-index: 10000;
	border: none !important;
	background-image:url("../img/btn_prev.png");
	background-repeat:no-repeat;
	background-position: center center;
	border-radius: 100%;
	background-color: transparent !important;
	overflow: hidden;
	text-indent: -9999px;
	outline: none;
}

.slick-next{
	width: 54px;
	height: 54px;
	position: absolute;
	right: -27px;
	top: 50%;
	margin-top: -27px;
	z-index: 10000;
	background-image:url("../img/btn_next.png");
	background-repeat:no-repeat;
	background-position: center center;
	border-radius: 100%;
	background-color: transparent !important;
	overflow: hidden;
	text-indent: -9999px;
	outline: none;
	border: none !important;
}


/* !teaser
---------------------------------------------------------- */
#teaser {
	width: 100%;
	height: 145px;
	background: #1c3a92;
	color: #fff;
	text-align: center;
	font-size: 2.9rem;
	font-weight: bold;
}
#teaser span{
	display: block;
	font-size: 2.2rem;
	padding-top: 5px;
}

/* !contents
---------------------------------------------------------- */
#contents {
	
}

#main {
	
}

#side {
	
}

.inner {
	
}

/* !pageTop
---------------------------------------------------------- */
.pageTop {
	
}

/* !footer
---------------------------------------------------------- */
#footer {
	background: #1c3a95;
	padding: 35px 0 42px;
	color: #fff;
}

#footer .hd{
	font-size: 2.8rem;
	padding-bottom: 23px;
}
#footer .btnLink01{
	color: #000;
	background: #ffbf0b;
}
#footer .btnLink01:hover{background: #80c3cf;color: #fff; }	
#copyright {
	font-size: 1.4rem;
	padding-top: 45px;
}

/* !h(n)eading
---------------------------------------------------------- */
.hdL {
	
}

.hdM {
	
}

.hdS {
	
}

.hd01 {
	
}



/* !list
---------------------------------------------------------- */
.list01 {
	
}

/* !table
---------------------------------------------------------- */
.table01 {
	
}


/* !index
---------------------------------------------------------- */
.indexTop{
	padding: 92px 0 135px;
	position: relative;
	overflow: hidden;
}
h3.hd01{
	font-size: 1.6rem;
	color: #919191;
	font-weight: bold;
	padding-bottom: 35px;
}
h3.hd01 span{
	display: block;
	font-weight: normal;
	font-size: 5rem;
	color: #1c3a95
}
.indexTop .p01{
	letter-spacing: 0.3em;
	font-size: 2.7rem;
	/*color: #1c3a95;*/
	color:#333;
	font-weight: bold;
	padding-bottom: 12px;
}
.indexTop .p02{
	font-size: 1.7rem;
	line-height: 2;
	color: #1c3a95;
	font-weight: bold;
	padding-bottom: 70px;
}
.dlWrap{
	max-width: 810px;
	margin: 0 auto;
}
.dlWrap dl{max-width: 546px;}
.dlWrap dl:nth-of-type(2){padding-left: 280px;margin-top: 70px;}
.dlWrap dl:nth-of-type(3){margin-top: 35px;}
.dlWrap dt{
	padding-bottom: 33px;
}
.dlWrap dt .point{
	font-size: 7rem;
	color: #1c3a95;
	margin-right: 30px;
	line-height: 1;
	position: relative;
	top: 15px;
}
.dlWrap dt .title{
	background: url(../img/icon_line.png)no-repeat bottom center;
	background-size: 100% 18px;
	font-size: 2.3rem;
	font-weight: bold;
	color: #1c3a95;
	padding: 0 10px 5px;
}
.dlWrap dd{
	line-height: 1.7
}
.indexWrap .g01{
	position: absolute;
	left: 0;
	top: 0;
    border-width: 17vw  14.5vw 17vw 14.5vw;
    border-style: solid;
    border-color: #1c3a95 transparent transparent #1c3a95;
    z-index: -2;
}
.indexWrap .g02,
.indexWrap .g03,
.indexWrap .g04{
	position: absolute;
	right: -125px;
	top:-26px;
    border-radius: 50%;
    border-width: 186px;
    border-style: solid;
    border-color: #ccd8f3;
    z-index: -2;
}
.indexWrap .g03{
	right: auto;
	left: -100px;
	top: 320px;
	border-width: 140px;
}
.indexWrap .img01,
.indexWrap .img03{
	position: absolute;
	right: 94px;
	top:354px;
	z-index: -1;
}
.indexWrap .img02{
	position: absolute;
	left: 106px;
	top:610px;
	z-index: -1;
}
.indexWrap .g04{
	right: -200px;
	top:560px;
    border-width: 240px;
}
.indexWrap .img03{
	top: 825px;
}








.indexMessege{
	position: relative;
	padding: 75px 0 35px;
}
.indexMessege:before{
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: url(../img/bg_messege.jpg)no-repeat center center;
	background-size: cover;
	z-index: -5;
}
.indexMessege .g05{
	position: absolute;
	left: 0;
	top:  -333px;
    border-width: 366px  0  160px 86vw;
    border-style: solid;
    border-color: transparent transparent transparent #93d6e8;
    z-index: -2;
}
.indexMessege .img04{
	position: absolute;
	left: 65.7vw;
	top: -193px;
}
.indexMessege .img05{
	position: absolute;
	right: -100px;
	/*bottom: -35px;*/
	bottom: -135px;
	z-index: -3;
}
.indexMessege .hd{font-size: 2.6rem;color: #1c3a95}
.indexMessege .title{
	font-size: 3rem;
	line-height: 1.67;
	letter-spacing: 0.12em;
	font-weight: bold;
	color: #1c3a95;
	padding: 10px 0 20px;
}
.indexMessege .text{
	line-height: 2.1;
	padding-bottom: 22px;
	max-width: 700px;
}
.indexMessege .name{padding-bottom: 10px;}
.indexMessege .name .profile{
	font-family: Meiryo,sans-serif;
	font-size: 2.1rem;
	color: #1c3a95;
}
.indexMessege .name .jp{
	font-size: 2.7rem;
	color: #1c3a95;
	padding: 0 15px;
	font-weight: bold;
}
.indexMessege .name .en{
	font-size: 1.6rem;
	color: #a0b1d4;
}
.indexMessege .intro{line-height: 1.6;color: #1c3a95}
.intro .tableP{display: table;}
.intro .thP,.intro .tdP{display: table-cell;}
.intro .tdP{color: #666;padding-left: 5px;}

.indexPrice{
	padding: 85px 0 220px;
	position: relative;
}
.indexPrice .g06{
	position: absolute;
	right: 0;
	top:  -125px;
    border-width: 366px  81vw  160px 0;
    border-style: solid;
    border-color: transparent #1c3a95 transparent transparent ;
    z-index: -2;
}
.indexPrice .hd01{
	padding-left: 45px;
	background: url(../img/icon_price.png)no-repeat top 16px left;
	background-size: auto;
	padding-bottom: 55px;
}
.indexPrice ul{/*margin-left: -20px;*/}
.indexPrice li{
	width: calc(100%/3);
	box-sizing: border-box;
	padding-left: 20px;
	float: left;
	margin-top: 20px;
	transition: all 0.5s !important;
	-moz-transition: all 0.5s !important; /* Firefox */
	-webkit-transition: all 0.5s !important; /* Chrome&Safari */
}
.indexPrice li:hover{opacity: .7;}
.indexPrice li .bgImg{
	width: 100%;
	height: 222px;
	border-top-right-radius: 10px;
	border-top-left-radius: 10px;
}
.indexPrice li:nth-of-type(2) .bgImg,
.indexPrice li:nth-of-type(3) .bgImg,
.indexPrice li:nth-of-type(4) .bgImg,
.indexPrice li:nth-of-type(5) .bgImg,
.indexPrice li:nth-of-type(6) .bgImg,
.indexPrice li:nth-of-type(7) .bgImg{
	background-position: left center
}
.indexPrice li .cont{
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
	background: #c0b1de;
	text-align: center;
	box-sizing: border-box;
	height: 134px;
	padding-top: 18px;
}

.indexPrice li .cont_white{
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
	border-right:solid 1px;
	border-left:solid 1px;
	border-bottom:solid 1px;
	border-color:#d3d3d3;
	text-align: center;
	box-sizing: border-box;
	height: 134px;
	padding-top: 18px;
}

.indexPrice li .cont_athlete{
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
	background: #1c3a95;
	text-align: center;
	box-sizing: border-box;
	height: 134px;
	padding-top: 20px;
}

.indexPrice li:nth-of-type(2) .cont{background: #e6c446}
.indexPrice li:nth-of-type(3) .cont{background: #abd180}
.indexPrice li:nth-of-type(4) .cont {background: #eebebe;}
.indexPrice li:nth-of-type(5) .cont{background: #80c3cf}
.indexPrice li:nth-of-type(6) .cont {background: #ff9064;}
.indexPrice li:nth-of-type(7) .cont {background: #d3d3d3;}
.indexPrice li:nth-of-type(8) .cont {background: #ffffff;}
.indexPrice li:nth-of-type(9) .cont {background: #1c3a95;}

.indexPrice li .classN{
	display: block;
	font-size: 2.5rem;
}

.indexPrice li .classN_white{
	display: block;
	font-size: 2.5rem;
	color: #ffffff;
}

.indexPrice li .group{
	display: inline-block;
	font-size: 1.8rem;
	padding: 0 18px;
	line-height: 30px;
	border-radius: 15px;
	background: #fff;
	margin-top: 18px;
}

.indexPrice li .group_blue{
	display: inline-block;
	font-size: 1.8rem;
	padding: 0 18px;
	line-height: 30px;
	border-radius: 15px;
	background: #1c3a95;
	margin-top: 18px;
	color: #fff;
}

.indexPrice .btn{padding-top: 37px;}


.indexPrice .logomark_box{
	padding-top:10px;
}


.indexSche{
	padding:0px 0 90px;
	position: relative;
}
.indexSche .g07{
	position: absolute;
	left: 0;
	top:  -170px;
    border-width: 366px  0  160px 86vw;
    border-style: solid;
    border-color: transparent transparent transparent #1c3a95;
    z-index: -2;
}
.indexSche .hd01{
	padding-left: 45px;
	color: #fff;
	background: url(../img/icon_sche.png)no-repeat top 16px left;
	background-size: auto;
	padding-bottom: 17px;
}
.indexSche .hd01 span{color: #fff;}
.calendarBox{border: 5px solid #1c3a95}
@media screen and (max-width: 1300px) {
	.indexMessege .g05{
		top:  -280px;
	    border-width: 280px  0  120px 86vw;
	}
	.indexPrice .g06{
	}
	.indexMessege .img05{right: 0}
}
@media screen and (max-width: 1024px){
	.indexMessege .g05{
		top:  -280px;
	    border-width: 280px  0  120px 890px;
	}
	.indexMessege .img04{left: 680px;}

	.indexPrice .g06{
		top: -80px;
		border-width: 280px  890px 120px 0;
	}
	.indexSche .g07{
		top:  -100px;
	    border-width: 280px  0  120px 890px;
	}
}

.indexNews{
	padding:0px 0 120px;
}
.indexNews .hd01{
	padding-left: 45px;
	background: url(../img/icon_news.png)no-repeat top 25px left;
	background-size: auto;
	padding-bottom: 33px;
}
.indexNews ul{margin-bottom: 63px;}
.indexNews li{
	float: left;
	width: 50%;
	margin-bottom: 25px;
}
.indexNews dt{
	float: left;
	margin-right: 35px;
}
.indexNews dd{
	overflow: hidden;
	padding-top: 20px;
	line-height: 1.6;
}
.indexNews dd a{
	color: #339cc3;
}
.indexNews dd .categ span{
	display: inline-block;
	font-size: 1.5rem;
	padding: 0 17px;
	line-height: 28px;
	border-radius: 14px;
	background: #d0d0d0;
	margin-top: 17px;
}
.insWrap{
	padding: 100px 0 0px;
	height: auto;
}

.insWrap .lf{
    max-width: 300px;
    margin: auto;
    padding-bottom: 80px;
    text-align: center;
    padding-bottom: 20px;	
}

.insWrap .lf .instabtn:before{
	content: url(../img/icon_insta.png);
	width: 25px;
	height: 25px;
	position: absolute;
	right: 20px;
	top: 50%;
	z-index: 1;
    background: none;
}




.instabtn{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 80px;
	box-sizing: border-box;
	color: #fff;
	border: 1px solid #1c3a95;
	font-size: 1.5rem;
	letter-spacing: 0.2em;
	position: relative;
	background: #1c3a95;
	font-weight: bold;
	font-size: 2.1rem;
}

.instabtn:before{
	content: '';
	width: 28px;
	height: 1px;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 1;
	background: #fff;
}

.instabtn:hover{text-decoration: none;background: #80c3cf;}
.instabtn:hover{
	color: #fff;
	background: #80c3cf;
	border-color: #80c3cf;
	text-decoration: none;
}
.instabtn:hover :before{
	border-right: 2px solid #80c3cf;
  border-bottom: 2px solid #80c3cf;
}

.tram{
	position: relative;
margin-bottom: 120px;
	
}

.img_tram{
	position: absolute;
top: 40px;
left: 200px;
	
}

/* !price
---------------------------------------------------------- */
.priceTop{
	padding: 47px 0 120px;
}
.priceTop .p01{
	font-size: 2.3rem;
	font-weight: bold;
	color: #1c3a92;
	letter-spacing: 0.12em;
	padding-bottom: 18px;
}
.priceTop .p02{
	font-size: 1.6rem;
	padding-bottom: 72px;
}
.priceItem{
	border-radius: 10px;
	background: rgba(192,177,222,0.8);
	margin-bottom: 40px;
}
.priceItem .title{
	background: rgba(192,177,222,1);
	box-sizing: border-box;
	padding: 17px 40px 0; 
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	min-height: 80px;
}
#cp02 .priceItem{background: rgba(232,198,70,0.8);}
#cp02 .priceItem .title{background: rgba(232,198,70,1);}
#cp03 .priceItem{background: rgba(173,211,128,0.8);}
#cp03 .priceItem .title{background: rgba(173,211,128,1);}
#cp04 .priceItem{background: rgba(238, 190, 190,0.8);}
#cp04 .priceItem .title{background: rgba(238, 190, 190, 1);}
#cp05 .priceItem{background: rgba(128,197,209,0.8);}
#cp05 .priceItem .title{background: rgba(128,197,209,1);}
#cp06 .priceItem{background: rgba(255,144,100,0.8);}
#cp06 .priceItem .title{background: rgba(255,144,100,1);}
#cp07 .priceItem{background: rgba(28, 58, 149,0.8);}
#cp07 .priceItem .title{background: rgba(28, 58, 149, 1);}
#cp08 .priceItem{background: rgba(230, 230, 230, 1);}
#cp08 .priceItem .title{background: rgba(211, 211, 211, 1);}
#cp09 .priceItem{background: rgba(255, 255, 255, 1);
				border: solid 1px;
				border-color: #d3d3d3;}
#cp09 .priceItem .title{background: rgba(247, 247, 247, 1);}

.priceItem .title .classN{
	font-size: 2.7rem;
}
.priceItem .title .classN_white{
	font-size: 2.7rem;
	color: #ffffff;
}
.priceItem .title .group {
	float: right;
    font-size: 1.7rem;
    padding: 0 18px;
    line-height: 28px;
    border-radius: 15px;
    background: #fff;
    margin-top: 7px
}
.priceItem dl{
	padding: 30px 40px 30px 20px;
}
.priceItem dt{float: left;margin-right: 50px;width: 475px;}
.priceItem dt .text{
	font-size: 1.6rem;
	line-height: 2;
	padding-top: 17px;
}

.text_white {
	color: #ffffff;
	font-size: 1.6rem;
	line-height: 2;
	padding-top: 17px;
}

.priceItem dd{overflow: hidden;}
.table01{
	width: 100%;
	font-size: 1.8rem;
	line-height: 1.33;
}
.table01 th,.table01 td{
	box-sizing: border-box;
	padding: 11px 5px;
	text-align: center;
	font-weight: normal;
	background: #fff;
	border: 1px solid #bdbdbd;
	/*セルの中央に配置↓*/
	/*vertical-align: top;*/
	color: #666;
}
.table01 th{background: #1c3a95;color: #fff;}
.table01 thead th:nth-of-type(2),
.table01 thead th:nth-of-type(3){width: 41%}
.table01 a{color: #5a9fb8;}

 .table01 thead th.price{
width: 24%;
}

.priceMiddle{padding: 42px 0 18px;background:#ccd8f3; }
.hd02{
	font-weight: bold;
	font-size: 3.2rem;
	position: relative;
	color: #1c3a92;
	text-align: center;
	padding-bottom: 14px;
}
.hd02:before{
	content: '';
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	width: 60px;
	height: 1px;
	background:  #1c3a92;
}
.priceMiddle ul{margin: 33px 0 30px;
	text-align: center;
}
.priceMiddle li{
	/*display: inline-block;*/
	font-weight: bold;
	font-size: 2.1rem;
	text-align: left;
	width: 100%;
	margin: 0 auto 20px auto;
    overflow: hidden;
	display: table;
}
.priceMiddle li span{
	/*display: inline-block;*/
	display: table-cell;
	vertical-align: middle;
	line-height: 41px;
	width: 116px;
	margin-right: 36px;
	color: #fff;
	text-align: center;
	font-size: 1.9rem;
	background: #1c3a92;
}

.priceMiddle li .price01{
	display: table-cell;
	width: 80%;
	vertical-align: middle;
}

.priceMiddle li .price01 strong{
	margin-left: 0.05em;
}

.price01 dl{
	display: table;
	margin-left: 154px;
}

.price01 dt{
	display: table-cell;
	width: 74%;
}

.price01 dd{
	display: table-cell;
	text-align: left;
}

.priceMiddle li .price02{
	display: table-cell;
	vertical-align: middle;
}

.priceMiddle li .price02 strong{
	margin-left: 0.05em;
}

.price02 dl{
	display: table;
	margin-left: 154px;
}

.price02 dt{
}

.price02 dd{
	text-align: left;
}


.priceMiddle .notice{padding-right: 80px;font-size: 1.8rem}

.priceAddr{padding: 140px 0 50px}
.priceAddr .hd02{margin-bottom: 80px;}
.addrItem {margin-bottom: 90px}
.addrItem dt{
	float: left;
	width: 500px;
	margin-right: 20px;
	padding-top: 20px;
}
.addrItem dd{overflow: hidden;}
.addrItem dd iframe{display: block;width: 100%;height: 320px;}
.addrItem .date{
	color: #1c3a92;
	font-size: 2.4rem;
	font-weight: bold;
	padding-bottom: 27px;
}
.addrItem .date span{
	display: inline-block;
	vertical-align: middle;
	font-size: 2rem;
	color: #fff;
	line-height: 2.8;
	padding: 0 30px;
	margin-right: 25px;
	background: url(../img/bg_obli.png)no-repeat center center;
	background-size: 100% 100%;
}
.addrItem .pos{
	font-size: 1.8rem;
	line-height: 1.55;
	padding-bottom: 20px;
	padding-left: 60px;
	text-indent: -60px;
}
.addrItem .pos span{
	display: inline-block;
	width: 60px;
	text-indent: 0px;
	font-weight: bold;
}
.addrItem li + li{
	margin-top: 20px;
}
.addrItem li{
	font-size: 1.8rem;
	overflow: hidden;
}
.addrItem li span{
	
	/*display: inline-block;*/
	float: left;
	vertical-align: middle;
	font-weight: bold;
	line-height: 1.88;
	width: 200px;
	text-align: center;
	margin-right: 20px;
	background: #e8c646;
}
.addrItem li.green span{background: #add380}
.addrItem li.blue span{background: #80c5d1}
.addrItem li.red span{background: #ff9064}
.addrItem li.purple span{background: #c0b1de}
.addrItem li.pink span{background: #eebebe}
.addrItem li.navy span{background: #ccd8f3}
.addrItem li.gray span{background: #d3d3d3}
.addrItem li.white span{background: #ffffff;
						border: solid 1px;
						border-color: #d3d3d3;}

.addrItem li .time{
	float: right;
	width: 56%;
	vertical-align: top;
}

.addrItem li.white .time{
	float: right;
	width: 56%;
	vertical-align: top;
	margin-top: -30px;
}


/*アスリートクラスにだけロゴを付ける*/
#cp07 .priceItem .title{
    position: relative;
}

#cp07 .priceItem .title .logomark_box{
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 40px;
}

/* !contact.html
---------------------------------------------------------- */
.contactTop{background: #e0f4f8;padding: 95px 0 40px;}
.contactTop .hd02{margin-bottom: 48px;}
.contactTop dt{float: right;margin-left: 50px;}
.contactTop dd{
	overflow: hidden;
	font-size: 1.6rem;
	line-height: 2.09;
}

.contactMiddle{padding: 70px 0 128px;}
.contactMiddle .hd02{margin-bottom: 52px;}
.contactMiddle .tel a {
    font-size: 5.8rem;
    box-sizing: border-box;
    padding-left: 46px;
    color: #1c3a95;
    background: url(../img/icon_tel.png)no-repeat left center;
    background-size: 35px auto;
    display: inline-block;
    line-height: 1;
}
.contactMiddle .time{
	font-weight: bold;
	font-size: 1.6rem;
	padding: 12px 0 24px;
}

.contactMiddle .line.btn{
	width: 45%;
    margin: 20px auto 0;
}
.contactMiddle .line.btn a{
    text-decoration: none;
    box-sizing: border-box;
    border-radius: 23px;
    font-size: 1.7rem;
    letter-spacing: 0.08em;
    line-height: 45px;
    display: block;
    color: #fff;
    background: #06C755;
    background-size: 27px auto;
    padding: 0 22px;
}

.contactTable{padding-bottom: 120px;}
.contactTable .inner{max-width:810px }
.contactTable .hd02{margin-bottom: 69px;}
.contactTable .topUl{margin-left: -18px;margin-bottom: 56px;}
.contactTable .topUl li{
	float: left;
	width: 33.33%;
	box-sizing: border-box;
	padding-left: 18px;
}
.contactTable .topUl span{
	background: #e6e6e6;
	font-size: 1.6rem;
	height: 53px;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.contactTable .topUl .active span{color: #fff;background: #1c3a92}

.table02{width: 100%;border: 1px solid #000;border-bottom: none;color: #000}
.table02 th,.table02 td{
	display: block;
	border-bottom:1px solid #000;
	font-size: 1.6rem;
	padding: 16px 16px 11px;
}
.table02 th{
	background: #f1f1f1;
	padding-left: 22px;
	padding-bottom: 16px;
	position: relative;
}
.table02 th span{
	float: right;
    font-size: 1.4rem;
    color: #fff;
    background: #888;
    padding: 6px 10px;
    position: relative;
    top: -4px;
    border-radius: 5px;
}
.table02 th span.must{background: #ea182f}
.table02 td .example{font-size: 1.4rem;padding-top: 11px;color: #626262}
.table02 td .p02{font-size: 1.4rem;padding:11px 0 }

.table02 td select,
.table02 td input[type='text'],
.table02 td input[type='number'],
.table02 td input[type='tel'],
.table02 td input[type='email'] {
    height: 50px;
    width: 100%;
    border: 1px solid #000;
    box-sizing: border-box;
    padding: 0 25px;
}
.table02 td textarea{
	width: 100%;
    border: 1px solid #000;
    box-sizing: border-box;
    padding: 14px 20px;
    resize: none;
    font-family: initial;
    min-height: 410px;
    margin-bottom: 6px;
}
.table02 td select{
	background: url(../img/icon_select.png)no-repeat right 20px center;
	background-size: auto;
    max-width: 265px;
    padding: 0 50px 0 20px;
    font-size: 1.4rem;
    margin-bottom: 6px;
}
.table02 td input[type='number']{max-width: 225px;}
.policyBox{
	overflow-y: auto;
	height: 200px;
	line-height: 2;
	border: 1px solid #000;
	box-sizing: border-box;
	padding: 6px 20px;
	margin-bottom: 6px;
}
.policyBox p + p{padding-top: 32px;}
.policyBox p span{display: block;font-weight: bold;}
.agreeP{
	background: #f1f1f1;
	font-size: 1.4rem;
    padding: 16px;
    margin-top: 10px;
    color: #000
}
label.checkBox01 input[type="checkBox"]{
    margin-right: 15px;
    position: relative;
    top: 2px;
}
.contactTable .btn{padding-top: 54px;text-align: center;}
.contactTable .btn  li{display: inline-block;}
.contactTable .btn  li + li{margin-left: 15px}
.contactTable .btn  a{
	position: relative;
	padding-right: 0;
	width: 350px;
}
.contactTable .btn a.return01{
	color: #000;
    background: #ffbf0b;
}
.contactTable .btn a.return01 .btnIcon01{
	right: auto;
	left: 18px;
}
.contactTable .btn a.return01 .btnIcon01:before{
  border-left: 2px solid #fff;
  border-top: 2px solid #fff;
  border-right: 2px solid transparent;
  border-bottom: 2px solid transparent;
  transform: rotate(-45deg) translate(-50%,0);
  top: 22%;
}
.contactTable .btn a.return01:hover {
    background: #80c3cf;
    color: #fff;
}
.contactTable .btn a.return01:hover .btnIcon01:before{
	border-left: 2px solid #80c3cf;
  border-top: 2px solid #80c3cf;
}
.contactTable input[type="submit"]{
	border: none;
	position: absolute;
	width: 100%;
	height: 100%;
	opacity: 0;
	padding: 0;
	left: 0;
	top: 0
}

.erroMessage {
  color: #f00;
}