@charset "utf-8";

/*---------------------------------------------
 custom reset
---------------------------------------------*/
*,*:after,*:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
html,body {font-size:10px; height: 100%;  line-height: 1.75; color: #222; font-family: "M PLUS 1p", "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif; font-weight: 500; text-size-adjust: none; -webkit-text-size-adjust: none;}
body {font-size: 2.4rem;}
.wrapInner{ margin: 0 auto; max-width: 1080px; position: relative; z-index: 2; }
a { text-decoration: none; color: #333;}
a,.link,a img{-webkit-transition: all 0.3s ease;-moz-transition: all 0.3s ease;-o-transition: all 0.3s ease;transition: all 0.3s ease;}
a.img_link:hover img{opacity: 0.7;}
sup{font-size: 60%;}
img {max-width: 100%; -webkit-backface-visibility: hidden;}

/*---------------------------------------------
 generic  class
---------------------------------------------*/
.txtB { font-weight: bold!important; }.txtN { font-weight: normal!important; }
.layoutC { text-align: center!important; }.layoutL { text-align: left!important; }.layoutR { text-align: right!important; }
.ov{overflow: hidden!important;}.fl{float: left!important;}.fr{float: right!important;}

/*---------------------------------------------
 base margin
---------------------------------------------*/
.mt0 { margin-top: 0px !important; }.mt5 { margin-top: 5px !important; }.mt10 { margin-top: 10px !important; }.mt15 { margin-top: 15px !important; }.mt20 { margin-top: 20px !important; }.mt25 { margin-top: 25px !important; }.mt30 { margin-top: 30px !important; }.mt40 { margin-top: 40px !important; }.mt50 { margin-top: 50px !important; }.mt60 { margin-top: 60px !important; }.mt70 { margin-top: 70px !important; }.mt80 { margin-top: 80px !important; }
.ml0 { margin-left: 0px !important; }.ml5 { margin-left: 5px !important; }.ml10 { margin-left: 10px !important; }.ml15 { margin-left: 15px !important; }.ml20 { margin-left: 20px !important; }.ml30 { margin-left: 30px !important; }.ml40 { margin-left: 40px !important; }
.mr0 { margin-right: 0px !important; }.mr5 { margin-right: 5px !important; }.mr10 { margin-right: 10px !important; }.mr15 { margin-right: 15px !important; }.mr20 { margin-right: 20px !important; }.mr25 { margin-right: 25px !important; }.mr30 { margin-right: 30px !important; }.mr40 { margin-right: 40px !important; }
.mb0 { margin-bottom: 0px !important; }.mb5 { margin-bottom: 5px !important; }.mb10 { margin-bottom: 10px !important; }.mb15 { margin-bottom: 15px !important; }.mb20 { margin-bottom: 20px !important; }.mb25 { margin-bottom: 25px !important; }.mb30 { margin-bottom: 30px !important; }.mb40 { margin-bottom: 40px !important; }.mb50 { margin-bottom: 50px !important; }.mb60 { margin-bottom: 60px !important; }.mb70 { margin-bottom: 70px !important; }.mb80 { margin-bottom: 80px !important; }

.pt0 { padding-top: 0px !important; }.pt5 { padding-top: 5px !important; }.pt10 { padding-top: 10px !important; }.pt15 { padding-top: 15px !important; }.pt20 { padding-top: 20px !important; }.pt25 { padding-top: 25px !important; }.pt30 { padding-top: 30px !important; }.pt40 { padding-top: 40px !important; }.pt50 { padding-top: 50px !important; }.pt60 { padding-top: 60px !important; }.pt70 { padding-top: 70px !important; }.pt80 { padding-top: 80px !important; }
.pl0 { padding-left: 0px !important; }.pl5 { padding-left: 5px !important; }.pl10 { padding-left: 10px !important; }.pl15 { padding-left: 15px !important; }.pl20 { padding-left: 20px !important; }.pl30 { padding-left: 30px !important; }.pl40 { padding-left: 40px !important; }
.pr0 { padding-right: 0px !important; }.pr5 { padding-right: 5px !important; }.pr10 { padding-right: 10px !important; }.pr15 { padding-right: 15px !important; }.pr20 { padding-right: 20px !important; }.pr25 { padding-right: 25px !important; }.pr30 { padding-right: 30px !important; }.pr40 { padding-right: 40px !important; }
.pb0 { padding-bottom: 0px !important; }.pb5 { padding-bottom: 5px !important; }.pb10 { padding-bottom: 10px !important; }.pb15 { padding-bottom: 15px !important; }.pb20 { padding-bottom: 20px !important; }.pb25 { padding-bottom: 25px !important; }.pb30 { padding-bottom: 30px !important; }.pb40 { padding-bottom: 40px !important; }.pb50 { padding-bottom: 50px !important; }.pb60 { padding-bottom: 60px !important; }.pb70 { padding-bottom: 70px !important; }.pb80 { padding-bottom: 80px !important; }

.w5p{ width: 5%!important;}.w8p{ width: 8%!important;}.w10p{ width: 10%!important;}.w11p{ width: 11%!important;}.w12p{ width: 12%!important;}.w15p{ width: 15%!important;}.w20p{ width: 20%!important;}.w25p{ width: 25%!important;}.w30p{ width: 30%!important;}.w35p{ width: 35%!important;}.w40p{ width: 40%!important;}.w45p{ width: 45%!important;}.w50p{ width: 50%!important;}.w55p{ width: 55%!important;}.w60p{ width: 60%!important;}.w65p{ width: 65%!important;}.w70p{ width: 70%!important;}.w75p{ width: 75%!important;}.w80p{ width: 80%!important;}.w85p{ width: 85%!important;}.w90p{ width: 90%!important;}.w95p{ width: 95%!important;}.w100p{ width: 100%!important;}
.wmax{ width: 100%!important; height: auto!important;}
.fz10{ font-size: 1rem !important; }.fz11{ font-size: 1.1rem !important; }.fz12{ font-size: 1.2rem !important; }.fz14{ font-size: 1.4rem !important; }.fz16{ font-size: 1.6rem !important; }.fz18{ font-size: 1.8rem !important; }.fz20{ font-size: 2rem !important; }.fz22{ font-size: 2.2rem !important; }.fz24{ font-size: 2.4rem !important; }.fz26{ font-size: 2.6rem !important; }.fz28{ font-size: 2.8rem !important; }.fz30{ font-size: 3rem !important; }.fz32{ font-size: 3.2rem !important; }.fz34{ font-size: 3.4rem !important; }.fz36{ font-size: 3.6rem !important; }.fz38{ font-size: 3.8rem !important; }.fz40{ font-size: 4rem !important; }.fz42{ font-size: 4.2rem !important; }.fz44{ font-size: 4.4rem !important; }.fz46{ font-size: 4.6rem !important; }.fz48{ font-size: 4.8rem !important; }

.max1280{ max-width: 1280px!important; margin: 0 auto!important;}
.max1024{ max-width: 1024px!important; margin: 0 auto!important; }
.max960{ max-width: 960px!important; margin: 0 auto!important; }
.max820{ max-width: 820px!important; margin: 0 auto!important; }
.max800{ max-width: 800px!important; margin: 0 auto!important; }
.max720{ max-width: 720px!important; margin: 0 auto!important; }
.max700{ max-width: 700px!important; margin: 0 auto!important; }
.max640{ max-width: 640px!important; margin: 0 auto!important;}
.max600{ max-width: 600px!important; margin: 0 auto!important;}
.max500{ max-width: 500px!important; margin: 0 auto!important; }
.max400{ max-width: 400px!important; margin: 0 auto!important; }
.max300{ max-width: 300px!important; margin: 0 auto!important; }
.max200{ max-width: 200px!important; margin: 0 auto!important;}

.mgA{margin-left: auto!important; margin-right: auto!important;}

/*---------------------------------------------
 grid system
---------------------------------------------*/
.grid {margin: 0 auto;overflow: hidden;padding-right: 0;}
.grid:after {content: "";display: table;clear: both;}
.colNum {float: left;min-height: 1px;}.push_right { float: right; }
.grid.inline{ letter-spacing: -0.4em; text-align: center; }
.grid.inline .colNum{ float: none; display: inline-block; vertical-align: middle; letter-spacing: normal; text-align: left;}
.gd_0 { margin-right: -0px; margin-bottom: -0px;}.gd_1 { margin-right: -1px; margin-bottom: -1px;}.gd_8 { margin-right: -8px; margin-bottom: -8px;}.gd_10 { margin-right: -10px; margin-bottom: -10px;}.gd_15 { margin-right: -15px; margin-bottom: -15px;}.gd_16 { margin-right: -16px; margin-bottom: -16px;}.gd_20 { margin-right: -20px; margin-bottom: -20px;}.gd_24 { margin-right: -24px; margin-bottom: -24px;}.gd_25 { margin-right: -25px; margin-bottom: -25px;}.gd_30 { margin-right: -30px; margin-bottom: -30px;}.gd_40 { margin-right: -40px; margin-bottom: -40px;}.gd_50 { margin-right: -50px; margin-bottom: -50px;}.gd_60 { margin-right: -60px; margin-bottom: -60px;}
.gd_0 .colNum {margin-bottom: 0; padding-right: 0;}.gd_1 .colNum {margin-bottom: 1px; padding-right: 1px;}.gd_8 .colNum {margin-bottom: 8px; padding-right: 8px;}.gd_10 .colNum {margin-bottom: 10px; padding-right: 10px;}.gd_15 .colNum {margin-bottom: 15px; padding-right: 15px;}.gd_16 .colNum {margin-bottom: 16px; padding-right: 16px;}.gd_20 .colNum {margin-bottom: 20px; padding-right: 20px;}.gd_24 .colNum {margin-bottom: 24px; padding-right: 24px;}.gd_25 .colNum {margin-bottom: 25px; padding-right: 25px;}.gd_30 .colNum {margin-bottom: 30px; padding-right: 30px;}.gd_40 .colNum {margin-bottom: 40px; padding-right: 40px;}.gd_60 .colNum {margin-bottom: 60px; padding-right: 60px;}.gd_60 .colNum {margin-bottom: 60px; padding-right: 60px;}
.grid.border .colNum{border-right: 1px solid rgba(0,0,0,0.2);/*$カラム間ボーダー*/}
.grid.border.gd_8 { margin-right: -4px; margin-left: -4px; margin-bottom: -8px;}.grid.border.gd_10 { margin-right: -5px; margin-left: -5px; margin-bottom: -10px;}.grid.border.gd_15 { margin-right: -7px; margin-left: -7px; margin-bottom: -15px;}.grid.border.gd_20 { margin-right: -10px; margin-left: -10px; margin-bottom: -20px;}.grid.border.gd_25 { margin-right: -12px; margin-left: -12px; margin-bottom: -25px;}.grid.border.gd_30 { margin-right: -15px; margin-left: -15px; margin-bottom: -30px;}.grid.border.gd_40 { margin-right: -20px; margin-left: -20px; margin-bottom: -40px;}
.grid.border.gd_10 .colNum {margin-bottom: 10px; padding-right: 5px; padding-left: 5px; }.grid.border.gd_10 .colNum {margin-bottom: 10px; padding-right: 5px; padding-left: 5px; }.grid.border.gd_15 .colNum {margin-bottom: 15px; padding-right: 7px; padding-left: 7px; }.grid.border.gd_16 .colNum {margin-bottom: 16px; padding-right: 8px; padding-left: 8px; }.grid.border.gd_20 .colNum {margin-bottom: 20px; padding-right: 10px; padding-left: 10px; }.grid.border.gd_24 .colNum {margin-bottom: 24px; padding-right: 12px; padding-left: 12px; }.grid.border.gd_25 .colNum {margin-bottom: 25px; padding-right: 12px; padding-left: 12px; }.grid.border.gd_30 .colNum {margin-bottom: 30px; padding-right: 15px; padding-left: 15px; }.grid.border.gd_40 .colNum {margin-bottom: 40px; padding-right: 20px; padding-left: 20px; }
.col_1_1 { width: 100%; }.col_2_3,.col_8_12 { width: 66.66%; }.col_1_2,.col_6_12 { width: 50%; }.col_1_3,.col_4_12 { width: 33.33%; }.col_1_4,.col_3_12 { width: 25%; }.col_1_5 { width: 20%; }.col_1_6,.col_2_12 { width: 16.667%; }.col_1_7 { width: 14.28%; }.col_1_8 { width: 12.5%; }.col_1_9 { width: 11.1%; }.col_1_10 { width: 10%; }.col_1_11 { width: 9.09%; }.col_1_12 { width: 8.33%; }.col_11_12 { width: 91.66%; }.col_10_12 { width: 83.333%; }.col_9_12 { width: 75%; }.col_5_12 { width: 41.66%; }.col_7_12 { width: 58.33%; }
.push_2_3,.push_8_12 { margin-left: 66.66%; }.push_1_2,.push_6_12 { margin-left: 50%; }.push_1_3,.push_4_12 { margin-left: 33.33%; }.push_1_4,.push_3_12 { margin-left: 25%; }.push_1_5 { margin-left: 20%; }.push_1_6,.push_2_12 { margin-left: 16.667%; }.push_1_7 { margin-left: 14.28%; }.push_1_8 { margin-left: 12.5%; }.push_1_9 { margin-left: 11.1%; }.push_1_10 { margin-left: 10%; }.push_1_11 { margin-left: 9.09%; }.push_1_12 { margin-left: 8.33%; }
.colInner{height: 100%;}

.tabl_w{display: table; width: 100%;}
.tabl_c{display: table-cell; vertical-align: middle;}

/*---------------------------------------------
 wrap
---------------------------------------------*/
#wrap{
	-webkit-text-size-adjust: 100%;
	overflow-x: hidden;
	position: relative;
	width: 100%;
}

/*---------------------------------------------
 header
---------------------------------------------*/
#header{
	background: #004da0;
	background: -moz-linear-gradient(left,  #004da0 0%, #004da0 66%, #0053a6 100%);
	background: -webkit-linear-gradient(left,  #004da0 0%,#004da0 66%,#0053a6 100%);
	background: linear-gradient(to right,  #004da0 0%,#004da0 66%,#0053a6 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#004da0', endColorstr='#0053a6',GradientType=1 );
	padding: 23px 10px;
}

/*---------------------------------------------
 footer
---------------------------------------------*/
#footer {
	background: #fff;
	padding: 135px 10px 64px;
}
#footer ul li + li{
	margin-top: 48px;
}
.btnCmn,
#footer ul li .btn {
	background: #f8ba00;
	border-radius: 40px;
	color: #fff;
	display:-ms-flexbox;
	display: -webkit-box;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2.6rem;
	margin: 0 auto;
	position: relative;
	width: 510px;
	height: 80px;
}
.btnCmn::after,
#footer ul li .btn:after {
	background: url(../images/icn_arrow.png) no-repeat center center / contain;
	content: "";
	display: block;
	width: 10px;
	height: 18px;
	position: absolute;
	right: 35px;
	top: calc(50% - 9px);
}
#footer .copyright {
	font-size: 2rem;
	margin-top: 64px;
	text-align: center;
}
#footer .ttlWrap {
	text-align: center;
	margin-bottom: 48px;
}
#footer .ttlWrap .ttl {
	font-size: 3.7rem;
	font-weight: bold;
}

/*---------------------------------------------
 module
 ---------------------------------------------*/

.fadeIn {
	opacity: 0;
	transform: translateY(100px);
	-webkit-transition: all 0.75s ease;
	-moz-transition: all 0.75s ease;
	-o-transition: all 0.75s ease;
	transition: all 0.75s ease;
}
.fadeIn.show {
	opacity: 1;
	transform: translate(0,0);
}


.fixBtn {
	position: fixed;
	right: 16px;
	bottom: 16px;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	z-index: 100;
}
.fixBtn .btn {
	display: block;
	width: 162px;
	height: 162px;
}
.fixBtn .btn + .btn {
	margin-top: 30px;
}
#mainvisual {
	background: url(../images/bg_mv.png) no-repeat center 0;
	padding-top: 190px;
	position: relative;
}
#mainvisual:before {
	background: -moz-linear-gradient(top,  rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
	background: -webkit-linear-gradient(top,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
	background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 );
	content: "";
	display: block;
	width: 100%;
	height: 200px;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 1;
}
#mainvisual .wrapInner {
	display:-ms-flexbox;
	display: -webkit-box;
	display: flex;
	align-items: center;
	padding-left: 110px;
}
#mainvisual .wrapInner .img {
	width: 382px;
}
#mainvisual .wrapInner .txtWrap {
	margin-left: 84px;
	flex: 1;
	opacity: 0;
	-webkit-transition: opacity 0.5s ease;
	-moz-transition: opacity 0.5s ease;
	-o-transition: opacity 0.5s ease;
	transition: opacity 0.5s ease;
}
#mainvisual .wrapInner .txtWrap.show {
	opacity: 1;
}
#mainvisual .txtWrap .catch {
	background: #02499d;
	border-radius: 20px;
	color: #fff;
	display: inline-block;
	font-size: 2rem;
	font-weight: 700;
	line-height: 40px;
	height: 40px;
	padding: 0 14px;
}
#mainvisual .txtWrap .sub {
	color: #1a1a1a;
	font-size: 3.2rem;
	font-weight: 700;
	margin-top: 15px;
	padding-left: 6px;
}
#mainvisual .txtWrap h1 {
	color: #1a1a1a;
	font-size: 9rem;
	font-weight: 700;
	margin-top: 15px;
	position: relative;
	z-index: 2;
}
#mainvisual .txtWrap h1 .marker {
	line-height: 1;
	display: inline-block;
	position: relative;
}
#mainvisual .txtWrap h1 .marker:before {
	background: #fcee21;
	content: "";
	display: block;
	width: 0;
	height: 36px;
	position: absolute;
	left: -16px;
	bottom: -8px;
	z-index: 1;
	transform:skewX(22deg);
	-webkit-transition: width 0.75s ease 0.5s;
	-moz-transition: width 0.75s ease 0.5s;
	-o-transition: width 0.75s ease 0.5s;
	transition: width 0.75s ease 0.5s;
}
#mainvisual .txtWrap.show h1 .marker:before {
	width: calc(100% + 32px);
}
#mainvisual .txtWrap h1 .marker .kanaWrap {
	display: inline-block;
	position: relative;
	z-index: 2;
}
#mainvisual .txtWrap h1 .marker .kanaWrap .kana {
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1.1;
	position: absolute;
	left: 50%;
	bottom: 100%;
	transform: translate(-50%,0);
	white-space: nowrap;
}

.leadSection {
	margin-top: 64px;
}
.leadSection .character {
	position: absolute;
	right: 0;
	top: -56px;
}
.leadSection .leadTtl {
/*	padding-left: 224px;*/
}
.leadSection .leadTxt {
	margin-top: 40px;
/*	padding-left: 250px;*/
}
.leadSection .leadImg {
	margin-top: 95px;
}
.marker {
	display: inline-block;
	position: relative;
}
.marker:before {
	background: #fcee21;
	content: "";
	display: block;
	width: 100%;
	height: 36px;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 1;
	transform:skewX(22deg);
	z-index: -1;
}
.effectSection {
	margin-top: 15px;
	position: relative;
}
.effectSection .ttlWrap {
	position: relative;
	z-index: 1;
}
.effectSection .ttlWrap .h2Ttl {
	padding-left: 265px;
	position: relative;
}
.leadSection .leadImg {
	text-align: center;
}
.leadSection .leadImg img {
	width: 80%;
}
.effectSection .ttlWrap .h2Ttl .num {
	color: #fff;
	font-size: 13rem;
	font-weight: 300;
	line-height: .8;
	position: absolute;
	left: 95px;
	top: 0;
}
.effectSection .ttlWrap .h2Ttl .txt {
	color: #ffff00;
	font-size: 5rem;
	font-weight: 700;
	line-height: 1.2;
}
.effectSection .ttlWrap .h2Ttl .lead {
	color: #fff;
	font-size: 3rem;
	font-weight: 700;
	line-height: 1.75;
	margin-top: 8px;
}
.effectSection .effect01 {
	background: #74b8d2;
	padding-bottom: 110px;
	position: relative;
	z-index: 1;
}
.effectSection .effect01:after {
	border-style: solid;
	border-width: 0 100vw 2.0833vw 0;
	border-color: transparent #74b8d2 transparent transparent;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 100%;
	width: 0;
	height: 0;
	z-index: 1;
}
.effectSection .effect01 .ttlWrap {
	background: #0052a6;
	padding: 170px 0 64px;
}
.effectSection .effect01 .ttlWrap:before {
	border-style: solid;
	border-width: 0 100vw 9.1145vw 0;
	border-color: transparent #fff transparent transparent;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 0;
	height: 0;
	z-index: 1;
}
.effectSection .effect01 .ttlWrap:after {
	border-style: solid;
	border-width: 1.666vw 100vw 0 0;
	border-color: #0052a6 transparent transparent transparent;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 100%;
	width: 0;
	height: 0;
	z-index: 1;
}
.effectSection .effect01 .ttlWrap .img {
	position: absolute;
	right: 145px;
	top: 0;
}
.effectSection .effect01 .ttlWrap .img img {
	max-width: 300px;
}
.effectSection .effect01 .txtWrap {
	display:-ms-flexbox;
	display: -webkit-box;
	display: flex;
	justify-content: center;
	padding-top: 32px;
}
.effectSection .effect01 .h3Ttl {
	margin: 64px 0 32px;
	text-align: center;
}
.effectSection .effect01 .h3Ttl .ttl {
	font-size: 4rem;
	font-weight: 700;
	line-height: 1.55;
}
.effectSection .effect01 .colorWhite {
	color: #fff;
}
.effectSection .effect01 .img01 {
	display:-ms-flexbox;
	display: -webkit-box;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 10%;
}
.effectSection .effect01 .img02 {
	display:-ms-flexbox;
	display: -webkit-box;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 32px 10% 40px;
}
.effectSection .effect01 .img02 li + li {
	margin-left: 73px;
}
.effectSection .effect01 .img03 {
	margin: 48px 10% 0;
}
.effectSection .effect02 {
	background: #efb4c3;
	margin-top: 145px;
	padding-bottom: 135px;
	position: relative;
	z-index: 2;
}
.effectSection .effect02:after {
	border-style: solid;
	border-width: 6.04166vw 100vw 0 0;
	border-color: #efb4c3 transparent transparent transparent;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 100%;
	width: 0;
	height: 0;
	z-index: 1;
}
.effectSection .effect02 .ttlWrap {
	background: #ec1e79;
	padding: 0 0 48px;
}
.effectSection .effect02 .ttlWrap:before {
	border-style: solid;
	border-width: 0 0 9.0104vw 100vw;
	border-color: transparent transparent #ec1e79 transparent;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: 100%;
	width: 0;
	height: 0;
	z-index: 1;
}
.effectSection .effect02 .ttlWrap:after {
	border-style: solid;
	border-width: 0 100vw 1.666vw 0;
	border-color: transparent #ec1e79 transparent transparent;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 100%;
	width: 0;
	height: 0;
	z-index: 1;
}
.effectSection .effect02 .ttlWrap .h2Ttl {
	padding-top: 24px;
}
.effectSection .effect02 .ttlWrap .h2Ttl .num {
	top: 24px;
}
.effectSection .effect02 .ttlWrap .img {
	position: absolute;
	right: 454px;
	top: 0;
}
.effectSection .effect02 .img02,
.effectSection .effect02 .img01 {
	margin: 60px 10% 0;
}
.effectSection .effect03 {
	background: #c2dbcf;
	margin-top: 100px;
	padding-bottom: 88px;
	position: relative;
	z-index: 3;
}
.effectSection .effect03:after {
	border-style: solid;
	border-width: 1.14583vw 100vw 0 0;
	border-color: #c2dbcf transparent transparent transparent;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 100%;
	width: 0;
	height: 0;
	z-index: 1;
}
.effectSection .effect03 .ttlWrap {
	background: #09a263;
	padding: 15px 0 32px;
}
.effectSection .effect03 .ttlWrap:before {
	border-style: solid;
	border-width: 9.21875vw 0 0 100vw;
	border-color: transparent transparent transparent #09a263;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: 100%;
	width: 0;
	height: 0;
	z-index: 1;
}
.effectSection .effect03 .ttlWrap:after {
	border-style: solid;
	border-width: 3.75vw 100vw 0 0;
	border-color: #09a263 transparent transparent transparent;
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 100%;
	width: 0;
	height: 0;
	z-index: 1;
}
.effectSection .effect03 .ttlWrap .img {
	position: absolute;
	right: 290px;
	top: 0;
}
.effectSection .effect03 .txtWrap {
	margin-top: 64px;
/*	padding-left: 255px;*/
}
.effectSection .effect03 .img01 {
	position: absolute;
	right: 0;
	top: -140px;
	max-width: 260px;
}
.effectSection .effect03 .h3Ttl {
/*	padding-left: 70px;*/
	margin: 90px auto 0;
}
.effectSection .effect03 .h3Ttl .ttl {
	font-size: 4rem;
	font-weight: 700;
}
.effectSection .effect03 .h3Ttl + .txt {
	margin-top: 90px;
/*	padding-left: 48px;*/
}
.effectSection .effect03 .img02 {
	display:-ms-flexbox;
	display: -webkit-box;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 48px 10% 0;
}
.effectSection .effect03 .img02 li + li {
	margin-left: 35px;
}
.effectSection .effect03 .img03 {
	margin: 90px 10% 0;
}

.movieSection {
	margin-top: 140px;
	overflow: hidden;
	position: relative;
}
.movieSection .ttlWrap {
	margin-bottom: 42px;
}
.movieSection .ttlWrap .ttl {
	font-size: 5rem;
	font-weight: 700;
	line-height: 1.3;
}
.movieSection .ttlWrap .marker {
	padding: 0 10px;
}
.movieSection .movieBox {
	margin: 0 auto;
/*	width: 960px;*/
}
.movieSection .movieBox .movieWrap {
	margin-top: 50px;
}
.movieSection .movieBox .movie {
	background: #ccc;
	padding-top: 56.25%;
	position: relative;
}
.movieSection .movieBox .movie iframe {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}
.movieSection .movieBox .movieTtl {
	font-size: 2.4rem;
	font-weight: 400;
	margin-top: 10px;
}

/*  更新  */
.sideLeftWrap {
	width: 26.3%;
	padding-right: 2%;
	padding-left: 5.2%;
	position: fixed;
	left: 0;
	top: 88px;
	min-height: calc(100vh - 88px);
	z-index: 100;
	display: flex;
	align-items: center;
	padding-bottom: 88px;
}
.sideRightWrap {
	width: calc(100% - 26.3%);
	margin-left: auto;
}
.sideNav {
	position: relative;
	padding-left: 31px;
	padding-bottom: 4px;
}
/*.sideNav::after,*/
.sideNav::before {
	content: "";
	width: 6px;
	height: 100%;
	border-radius: 3px;
	position: absolute;
	background-color: #fbec20;
	left: 0;
	top: 0;
}
/*
.sideNav::before {
	background-color: #fbec20;
}
.sideNav::after {
	background-color: #014da0;
	height: 70px;
}
*/
.sideNavTtl {
	min-height: 70px;
	display: flex;
	align-items: center;
	font-size: 2.4rem;
}
.sideNavTtl a {
	transform: all .8s ease;
}
.sideNavTtl a.active {
	color: #014da0;
}
.sideNavList + .sideSecTtl {
	margin-top: 14px;
}
.sideSecTtl {
	font-size: 2.4rem;
	padding: 14px 0 2px 0;
}
.sideNavList > li a {
	font-size: 1.8rem;
	padding-left: 15px;
	transform: all .8s ease;
}
.sideNavList > li a.active {
	color: #014da0;
}
.curStick {
	position: absolute;
	left: 0;
	top: 0;
}
.curStick span {
	position: relative;
}
.curStick span::before {
	content: "";
	width: 6px;
	height: 70px;
	border-radius: 3px;
	background-color: #014da0;
	position: absolute;
	left: 0;
	top: 0;
	transition: all .3s ease;
/*	opacity: 0;*/
}
.curStick span.curTarget01::before,
.curStick span.curTarget02::before,
.curStick span.curTarget03::before,
.curStick span.curTarget04::before,
.curStick span.curTarget05::before {
	height: 40px;
}
.curStick span.curTarget01::before {
	top: 131px;
}
.curStick span.curTarget02::before {
	top: 174px;
}
.curStick span.curTarget03::before {
	top: 216px;
}
.curStick span.curTarget04::before {
	top: 330px;
}
.curStick span.curTarget05::before {
	top: 373px;
}
.curStick span.curTarget06::before {
	top: 0;
}
/*
.curStick.active {
	opacity: 1;
}
*/
.contactBtnWrap {
	width: 163px;
	margin-top: 32px;
}
.centerBlock {
	display: flex;
	justify-content: center;
}
.h3ttlV2 {
	text-align: center;
	line-height: 1.2;
	margin-bottom: 32px;
}
.h3ttlV2 > span {
	display: inline-block;
	background-color: #014da0;
	color: #fff;
	padding: 7px 40px;
	border-radius: 46px;
	font-size: 2.6rem;
	font-weight: bold;
}
.h3ttlV2 .icn {
	margin-right: 8px;
	width: 28px;
	display: inline-block;
	vertical-align: middle;
}
.mangaLinkPanel {
	display: block;
}
.mangaPanelTtl {
	font-size: 2rem;
	margin-top: 10px;
}
.contactSection	{
	padding-top: 160px;
	padding-bottom: 90px;
	margin-top: 100px;
	position: relative;
}
.contactSection::before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-color: #ffe7a0;
	clip-path: polygon(0 122px, 100% 0, 100% 100%, 0 calc(100% - 24px));
}
.contactSection .wrapInner {
	position: relative;
}
.contactSection .ttlWrap {
	text-align: center;
	margin-bottom: 42px;
}
.contactSection .ttlWrap .ttl {
	font-size: 3.7rem;
	font-weight: bold;
}
.contactSection .ttlWrap .ttl .marker:before {
	background-color: #fff;
}
.contactSection .illust img {
	position: absolute;
}
.contactSection .illust .illustImg01 {
	max-width: 258px;
	top: -195px;
	left: -25px;
}
.contactSection .illust .illustImg02 {
	bottom: -100px;
	right: 45px;
}
.contactSection .btnCmn {
	background-color: #F19A37;
}
.contactSection .btnCmn .icn {
	width: 35px;
}
.btnCmn .icn {
	display: inline-block;
	vertical-align: middle;
	width: 40px;
	margin-right: 18px;
}

/*  漫画  */
#header.mangaHeader {
	padding-left: 10vw;
	padding-right: 10vw;
}
#footer.mangaFooter {
	padding-left: 0;
	padding-right: 0;
	padding: calc((140 / 1366) * 100vw) 0 calc((64 / 1366) * 100vw);
}
.mangaFooter .wrapInner,
.mangaWrap .wrapInner {
	max-width: calc(1138px + 17.4%);
	padding-left: 8.7%;
	padding-right: 8.7%;
}
#footer.mangaFooter .copyright {
	font-size: calc((20 / 1366) * 100vw);
}
.mangaWrap {
	margin-top: calc((80 / 1366) * 100vw);
}
.mangaBox {
	text-align: center;
}
.mangaBox + .mangaBox {
	margin-top: 32px;
}
.modaal-container {
	overflow: visible !important;
}
.modaal-wrapper .modaal-close {
	position: absolute;
	right: -20px;
	top: -20px;
	width: 40px;
	height: 40px;
	border: 1px solid #0151a4;
	background-color: #fff;
}
.modaal-close:after,
.modaal-close:before {
	width: 1px;
	border-radius: 0;
	background-color: #0152a4;
	top: 9px;
	left: 19px;
}

.footerCvWrap {
	display: flex;
	flex-wrap: wrap;
}
.footerCvWrap > .col {
	width: 50%;
	padding-left: calc((46 / 1366) * 100vw);
}
.footerCvPanel {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.footerCvPanel .icn {
	width: calc((163 / 1366) * 100vw);
	margin-right: 32px;
}
.footerCvPanel .txt {
	flex: 1;
	font-size: 1.9vw;
	line-height: 1.69;
}




 /*==========================================================================================================
 PC Only
 ==========================================================================================================*/
@media screen and (min-width: 768px){

.menuBtn,
.spOnly{display: none!important;}

/* hover */
.footerCvPanel:hover,
.btnCmn:hover,
.mangaLinkPanel:hover img,
.sideNavList > li a:hover,
.contactBtn:hover img,
.btn:hover {
	opacity: .7;
}
	
/*	side nav  */
.sideLeftWrap {
	opacity: 0;
	pointer-events: none;
	transition: all .3s ease;
}
.sideLeftWrap.pcShow {
	opacity: 1;
	pointer-events: auto;
}

}
/*==========================================================================================================
 ビューポートの高さが850px以下の時
==========================================================================================================*/
@media screen and (max-height: 910px){
	.contactBtnWrap {
		width: 13svh;
		margin-top: 20px;
	}
}
/*==========================================================================================================
 SP Only
==========================================================================================================*/
@media screen and (max-width: 767px){

.pcOnly { display: none !important; }

body{font-size: 3.75vw;}

.grid:not(.sp_grid){margin-right: 0; margin-bottom: 0;}
.grid:not(.sp_grid)>.colNum{ width: 100%; padding-right: 0; margin-bottom: 15px;}
.grid:not(.sp_grid)>.colNum:last-child{ margin-bottom: 0};

.sp_gd_0 { margin-right: -0px; margin-bottom: -0px;}.sp_gd_1 { margin-right: -1px; margin-bottom: -1px;}.sp_gd_8 { margin-right: -8px; margin-bottom: -8px;}.sp_gd_10 { margin-right: -10px; margin-bottom: -10px;}.sp_gd_15 { margin-right: -15px; margin-bottom: -15px;}.sp_gd_16 { margin-right: -16px; margin-bottom: -16px;}.sp_gd_20 { margin-right: -20px; margin-bottom: -20px;}.sp_gd_24 { margin-right: -24px; margin-bottom: -24px;}.sp_gd_25 { margin-right: -25px; margin-bottom: -25px;}.sp_gd_30 { margin-right: -30px; margin-bottom: -30px;}.sp_gd_40 { margin-right: -40px; margin-bottom: -40px;}.sp_gd_88 { margin-right: -88px; margin-bottom: -88px;}
.sp_gd_0>.colNum {margin-bottom: 0; padding-right: 0;}.sp_gd_1>.colNum {margin-bottom: 1px; padding-right: 1px;}.sp_gd_8>.colNum {margin-bottom: 8px; padding-right: 8px;}.sp_gd_10>.colNum {margin-bottom: 10px; padding-right: 10px;}.sp_gd_15>.colNum {margin-bottom: 15px; padding-right: 15px;}.sp_gd_16>.colNum {margin-bottom: 16px; padding-right: 16px;}.sp_gd_20>.colNum {margin-bottom: 20px; padding-right: 20px;}.sp_gd_24>.colNum {margin-bottom: 24px; padding-right: 24px;}.sp_gd_25>.colNum {margin-bottom: 25px; padding-right: 25px;}.sp_gd_30>.colNum {margin-bottom: 30px; padding-right: 30px;}.sp_gd_40>.colNum {margin-bottom: 40px; padding-right: 40px;}.sp_gd_88>.colNum {margin-bottom: 88px; padding-right: 88px;}
.sp_grid.border.sp_gd_8 { margin-right: -4px; margin-left: -4px; margin-bottom: -8px;}.sp_grid.border.sp_gd_10 { margin-right: -5px; margin-left: -5px; margin-bottom: -10px;}.sp_grid.border.sp_gd_15 { margin-right: -7px; margin-left: -7px; margin-bottom: -15px;}.sp_grid.border.sp_gd_20 { margin-right: -10px; margin-left: -10px; margin-bottom: -20px;}.sp_grid.border.sp_gd_25 { margin-right: -12px; margin-left: -12px; margin-bottom: -25px;}.sp_grid.border.sp_gd_30 { margin-right: -15px; margin-left: -15px; margin-bottom: -30px;}.sp_grid.border.sp_gd_40 { margin-right: -20px; margin-left: -20px; margin-bottom: -40px;}
.sp_grid.border.sp_gd_10>.colNum {margin-bottom: 10px; padding-right: 5px; padding-left: 5px; }.sp_grid.border.sp_gd_10>.colNum {margin-bottom: 10px; padding-right: 5px; padding-left: 5px; }.sp_grid.border.sp_gd_15>.colNum {margin-bottom: 15px; padding-right: 7px; padding-left: 7px; }.sp_grid.border.sp_gd_16>.colNum {margin-bottom: 16px; padding-right: 8px; padding-left: 8px; }.sp_grid.border.sp_gd_20>.colNum {margin-bottom: 20px; padding-right: 10px; padding-left: 10px; }.sp_grid.border.sp_gd_24>.colNum {margin-bottom: 24px; padding-right: 12px; padding-left: 12px; }.sp_grid.border.sp_gd_25>.colNum {margin-bottom: 25px; padding-right: 12px; padding-left: 12px; }.sp_grid.border.sp_gd_30>.colNum {margin-bottom: 30px; padding-right: 15px; padding-left: 15px; }.sp_grid.border.sp_gd_40>.colNum {margin-bottom: 40px; padding-right: 20px; padding-left: 20px; }
.sp_col_1_1 { width: 100%; }.sp_col_2_3,.sp_col_8_12 { width: 66.66%; }.sp_col_1_2,.sp_col_6_12 { width: 50%; }.sp_col_1_3,.sp_col_4_12 { width: 33.33%; }.sp_col_1_4,.sp_col_3_12 { width: 25%; }.sp_col_1_5 { width: 20%; }.sp_col_1_6,.sp_col_2_12 { width: 16.667%; }.sp_col_1_7 { width: 14.28%; }.sp_col_1_8 { width: 12.5%; }.sp_col_1_9 { width: 11.1%; }.sp_col_1_10 { width: 10%; }.sp_col_1_11 { width: 9.09%; }.sp_col_1_12 { width: 8.33%; }.sp_col_11_12 { width: 91.66%; }.sp_col_10_12 { width: 83.333%; }.sp_col_9_12 { width: 75%; }.sp_col_5_12 { width: 41.66%; }.sp_col_7_12 { width: 58.33%; }
.sp_dBlock { display: block!important; }
.sp_w5p{ width: 5%!important;}.sp_w8p{ width: 8%!important;}.sp_w10p{ width: 10%!important;}.sp_w11p{ width: 11%!important;}.sp_w12p{ width: 12%!important;}.sp_w15p{ width: 15%!important;}.sp_w16p{ width: 16%!important;}.sp_w18p{ width: 18%!important;}.sp_w20p{ width: 20%!important;}.sp_w22p{ width: 22%!important;}.sp_w25p{ width: 25%!important;}.sp_w30p{ width: 30%!important;}.sp_w35p{ width: 35%!important;}.sp_w40p{ width: 40%!important;}.sp_w45p{ width: 45%!important;}.sp_w50p{ width: 50%!important;}.sp_w55p{ width: 55%!important;}.sp_w60p{ width: 60%!important;}.sp_w65p{ width: 65%!important;}.sp_w70p{ width: 70%!important;}.sp_w75p{ width: 75%!important;}.sp_w80p{ width: 80%!important;}.sp_w85p{ width: 85%!important;}.sp_w90p{ width: 90%!important;}.sp_w95p{ width: 95%!important;}.sp_w100p{ width: 100%!important;}
.sp_wmax{ width: 100%!important; height: auto!important; max-width: inherit;}.sp_wAuto{ width: auto !important; }
.sp_layoutC{ text-align: center; }.sp_layoutR{ text-align: right; }.sp_layoutL{ text-align: left; }
.sp_fz10{ font-size: 1rem !important; }.sp_fz11{ font-size: 1.1rem !important; }.sp_fz12{ font-size: 1.2rem !important; }.sp_fz14{ font-size: 1.4rem !important; }.sp_fz16{ font-size: 1.6rem !important; }.sp_fz18{ font-size: 1.8rem !important; }.sp_fz20{ font-size: 2rem !important; }.sp_fz22{ font-size: 2.2rem !important; }.sp_fz24{ font-size: 2.4rem !important; }.sp_fz26{ font-size: 2.6rem !important; }.sp_fz28{ font-size: 2.8rem !important; }.sp_fz30{ font-size: 3rem !important; }.sp_fz32{ font-size: 3.2rem !important; }.sp_fz34{ font-size: 3.4rem !important; }.sp_fz36{ font-size: 3.6rem !important; }.sp_fz38{ font-size: 3.8rem !important; }.sp_fz40{ font-size: 4rem !important; }.sp_fz42{ font-size: 4.2rem !important; }.sp_fz44{ font-size: 4.4rem !important; }.sp_fz46{ font-size: 4.6rem !important; }.sp_fz48{ font-size: 4.8rem !important; }
.wrapInner { max-width: 100%; }

/*---------------------------------------------
 base margin
---------------------------------------------*/
.sp_mt0 { margin-top: 0px !important; }.sp_mt5 { margin-top: 5px !important; }.sp_mt10 { margin-top: 10px !important; }.sp_mt15 { margin-top: 15px !important; }.sp_mt20 { margin-top: 20px !important; }.sp_mt25 { margin-top: 25px !important; }.sp_mt30 { margin-top: 30px !important; }.sp_mt40 { margin-top: 40px !important; }.sp_mt50 { margin-top: 50px !important; }.sp_mt60 { margin-top: 60px !important; }.sp_mt70 { margin-top: 70px !important; }.sp_mt80 { margin-top: 80px !important; }
.sp_ml0 { margin-left: 0px !important; }.sp_ml5 { margin-left: 5px !important; }.sp_ml10 { margin-left: 10px !important; }.sp_ml15 { margin-left: 15px !important; }.sp_ml20 { margin-left: 20px !important; }.sp_ml30 { margin-left: 30px !important; }.sp_ml40 { margin-left: 40px !important; }
.sp_mr0 { margin-right: 0px !important; }.sp_mr5 { margin-right: 5px !important; }.sp_mr10 { margin-right: 10px !important; }.sp_mr15 { margin-right: 15px !important; }.sp_mr20 { margin-right: 20px !important; }.sp_mr25 { margin-right: 25px !important; }.sp_mr30 { margin-right: 30px !important; }.sp_mr40 { margin-right: 40px !important; }
.sp_mb0 { margin-bottom: 0px !important; }.sp_mb5 { margin-bottom: 5px !important; }.sp_mb10 { margin-bottom: 10px !important; }.sp_mb15 { margin-bottom: 15px !important; }.sp_mb20 { margin-bottom: 20px !important; }.sp_mb25 { margin-bottom: 25px !important; }.sp_mb30 { margin-bottom: 30px !important; }.sp_mb40 { margin-bottom: 40px !important; }.sp_mb50 { margin-bottom: 50px !important; }.sp_mb60 { margin-bottom: 60px !important; }.sp_mb70 { margin-bottom: 70px !important; }.sp_mb80 { margin-bottom: 80px !important; }

.sp_pt0 { padding-top: 0px !important; }.sp_pt5 { padding-top: 5px !important; }.sp_pt10 { padding-top: 10px !important; }.sp_pt15 { padding-top: 15px !important; }.sp_pt20 { padding-top: 20px !important; }.sp_pt25 { padding-top: 25px !important; }.sp_pt30 { padding-top: 30px !important; }.sp_pt40 { padding-top: 40px !important; }.sp_pt50 { padding-top: 50px !important; }.sp_pt60 { padding-top: 60px !important; }.sp_pt70 { padding-top: 70px !important; }.sp_pt80 { padding-top: 80px !important; }
.sp_pl0 { padding-left: 0px !important; }.sp_pl5 { padding-left: 5px !important; }.sp_pl10 { padding-left: 10px !important; }.sp_pl15 { padding-left: 15px !important; }.sp_pl20 { padding-left: 20px !important; }.sp_pl30 { padding-left: 30px !important; }.sp_pl40 { padding-left: 40px !important; }
.sp_pr0 { padding-right: 0px !important; }.sp_pr5 { padding-right: 5px !important; }.sp_pr10 { padding-right: 10px !important; }.sp_pr15 { padding-right: 15px !important; }.sp_pr20 { padding-right: 20px !important; }.sp_pr25 { padding-right: 25px !important; }.sp_pr30 { padding-right: 30px !important; }.sp_pr40 { padding-right: 40px !important; }
.sp_pb0 { padding-bottom: 0px !important; }.sp_pb5 { padding-bottom: 5px !important; }.sp_pb10 { padding-bottom: 10px !important; }.sp_pb15 { padding-bottom: 15px !important; }.sp_pb20 { padding-bottom: 20px !important; }.sp_pb25 { padding-bottom: 25px !important; }.sp_pb30 { padding-bottom: 30px !important; }.sp_pb40 { padding-bottom: 40px !important; }.sp_pb50 { padding-bottom: 50px !important; }.sp_pb60 { padding-bottom: 60px !important; }.sp_pb70 { padding-bottom: 70px !important; }.sp_pb80 { padding-bottom: 80px !important; }

img{width: 100%;}

/*---------------------------------------------
 header
---------------------------------------------*/
#header{
	padding: 1.875vw 27px;
	position: relative;
	z-index: 101;
}
#header .logo{
	line-height: 0;
	width: 11.875vw;
}

/*---------------------------------------------
 footer
---------------------------------------------*/
#footer {
	padding: 13.5vw 10vw 10vw;
}
#footer ul li + li{
	margin-top: 7.5vw;
}
.btnCmn,
#footer ul li .btn {
	border-radius: 6.25vw;
	font-size: 4.0625vw;
	width: 100%;
	height: 12.5vw;
}
.btnCmn::after,
#footer ul li .btn:after {
	width: 1.5625vw;
	height: 2.8125vw;
	right: 5.46875vw;
	top: 50%;
	transform: translate(0,-50%);
}
#footer .copyright {
	font-size: 3.125vw;
	margin-top: 10vw;
}
#footer .ttlWrap .ttl {
	font-size: 7.8125vw;
}

/*---------------------------------------------
 module
 ---------------------------------------------*/
body.fixed {
/*	position: fixed;*/
/*
	left: 0;
	top: 0;
*/
/*	overflow: hidden;*/
}
body.fixed #wrap {
  position: fixed;
  width: 100%;
}
.fixBtn {
	right: 2.5vw;
	bottom: 2.5vw;
}
.fixBtn .btn {
	display: block;
	width: 81px;
	height: 81px;
}
.fixBtn .btn + .btn {
	margin-top: 15px;
}
#mainvisual {
	background: url(../images/bg_mv_sp.png) no-repeat center 0 / 100% auto;
	padding-top: 29.375vw;
}
#mainvisual:before {
	display: none;
}
#mainvisual .wrapInner {
	align-items: flex-start;
	flex-direction: column;
	padding-left: 0;
}
#mainvisual .wrapInner .img {
	order: 2;
	width: 100%;
	margin-top: 20px;
}
#mainvisual .wrapInner .txtWrap {
	margin-left: 0;
	padding-left: 26px;
}
#mainvisual .txtWrap .catch {
	border-radius: 20px;
	font-size: 3.125vw;
	line-height: 6.25vw;
	height: 6.25vw;
	padding: 0 1.5625;
}
#mainvisual .txtWrap .sub {
	font-size: 5vw;
	margin-top: 8px;
	padding-left: 3px;
}
#mainvisual .txtWrap h1 {
	font-size: 14.0625vw;
	margin-top: 0;
}
#mainvisual .txtWrap h1 .marker:before {
	height: 4.21875vw;
	left: -2.5vw;
	bottom: -1.25vw;
}
#mainvisual .txtWrap.show h1 .marker:before {
	width: calc(100% + 5vw);
}
#mainvisual .txtWrap h1 .marker .kanaWrap .kana {
	font-size: 3.75vw;
}
#mainvisual .txtWrap .character {
	width: 23.125vw;
	position: absolute;
	top: 5vw;
	right: 6.875vw;
}
.leadSection {
	margin-top: 26px;
}
.leadSection .leadTtl {
	padding-left: 0;
}
.leadSection .leadTxt {
	margin-top: 26px;
	padding: 0 15px;
}
.leadSection .leadImg {
	margin-top: 25px;
}
.marker:before {
	height: 5.625vw;
}
.effectSection {
	margin-top: 7.8125vw;
}
.effectSection .ttlWrap .h2Ttl {
	padding-left: 9.375vw;
}
.effectSection .ttlWrap .h2Ttl .num {
	display: block;
	font-size: 28.125vw;
	position: static;
	left: 0;
}
.effectSection .ttlWrap .h2Ttl .txt {
	display: block;
	font-size: 10.3125vw;
	margin-top: 3.75vw;
}
.effectSection .lead {
	color: #fff;
	font-size: 6.25vw;
	font-weight: 700;
	margin-top: 6.5625vw;
	padding: 0 9.375vw;
}
.effectSection .effect01 {
	padding-bottom: 6.25vw;
}
.effectSection .effect01:after {
	display: none;
}
.effectSection .effect01 .ttlWrap {
	background: #0052a6;
	padding: 9.375vw 0 0;
}
.effectSection .effect01 .ttlWrap:before {
	border-width: 0 100vw 13.59375vw 0;
}
.effectSection .effect01 .ttlWrap:after {
	border-width: 4.375vw 100vw 0 0;
}
.effectSection .effect01 .ttlWrap .img {
	width: 49.375vw;
	right: 4.6875vw;
	top: -2.03125vw;
}
.effectSection .effect01 .txtWrap {
	display: block;
	padding: 7.5vw 9.375vw;
}
.effectSection .effect01 .h3Ttl {
	margin: 10.9375vw 0 5vw;
}
.effectSection .effect01 .h3Ttl .ttl {
	font-size: 6.25vw;
}
.effectSection .effect01 .img01 {
	flex-direction: column;
	margin: 0;
}
.effectSection .effect01 .img01 li + li {
	margin-top: 4.0625vw;
}
.effectSection .effect01 .img02 {
	flex-direction: column;
	margin: 4.6875vw 0 3.75vw;
}
.effectSection .effect01 .img02 li + li {
	margin: 4.0625vw 0 0;
}
.effectSection .effect01 .img03 {
	margin: 9.375vw 0 0;
}
.effectSection .effect02 {
	margin-top: 11.875vw;
	padding-bottom: 3.125vw;
}
.effectSection .effect02:after {
	border-width: 8.90625vw 100vw 0 0;
}
.effectSection .effect02 .ttlWrap {
	padding: 0 0 3.75vw;
}
.effectSection .effect02 .ttlWrap:before {
	border-width: 0 0 13.4375vw 100vw;
}
.effectSection .effect02 .ttlWrap:after {
	border-width: 0 100vw 2.5vw 0;
}
.effectSection .effect02 .ttlWrap .h2Ttl {
	padding-top: 0;
}
.effectSection .effect02 .ttlWrap .h2Ttl .num {
	top: 0;
}
.effectSection .effect02 .ttlWrap .img {
	position: absolute;
	right: 32.8125vw;
	top: auto;
	bottom: 0;
	width: 12.1875vw;
}
.effectSection .effect02 .img01 {
	margin: 6.25vw 0 0;
}
.effectSection .effect02 .img02 {
	margin: 5.625vw 0 0;
}
.effectSection .effect03 {
	margin-top: 18.125vw;
	padding-bottom: 5.625vw;
}
.effectSection .effect03:after {
	border-width: 2.03125vw 100vw 0 0;
}
.effectSection .effect03 .ttlWrap {
	padding: 0;
}
.effectSection .effect03 .ttlWrap:before {
	border-width: 13.59375vw 0 0 100vw;
}
.effectSection .effect03 .ttlWrap:after {
	border-width: 4.21875vw 100vw 0 0;
}
.effectSection .effect03 .ttlWrap .img {
	right: 32.5vw;
	top: 10.25vw;
	width: 20.625vw;
}
.effectSection .effect03 .txtWrap {
	margin-top: 5.625vw;
	padding: 0 9.375vw;
}
.effectSection .effect03 .img01 {
	position: static;
	transform: translate(0,-1.25vw);
	max-width: 100%;
}
.effectSection .effect03 .h3Ttl {
	margin-top: 7.8125vw;
	padding-left: 0;
	text-align: center;
}
.effectSection .effect03 .h3Ttl .ttl {
	font-size: 6.25vw;
}
.effectSection .effect03 .h3Ttl + .txt {
	margin-top: 5vw;
	padding-left: 0;
	text-align: center;
}
.effectSection .effect03 .img02 {
	flex-direction: column;
	margin: 7.5vw 0 0;
}
.effectSection .effect03 .img02 li + li {
	margin: 4.375vw 0 0;
}
.effectSection .effect03 .img03 {
	margin: 5.625vw 0 0;
}

.movieSection {
	margin-top: 14.53125vw;
}
.movieSection:before {
	display: none;
}
.movieSection .ttlWrap {
	padding: 0 12.5vw;
}
.movieSection .ttlWrap .ttl {
	font-size: 7.8125vw;
}
.movieSection .movieBox {
	padding: 0 12.5vw;
	width: 100%;
}
.movieSection .movieBox .movieWrap {
	margin-top: 7.8125vw;
}
.movieSection .movieBox .movieTtl {
	font-size: 3.75vw;
	margin-top: 1.5625vw;
	word-break: break-all;
}
	
	
/*  更新  */
.sideLeftWrap {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	min-height: 100%;
	display: block;
	background-color: rgba(255, 255, 255, .96);
	align-items: flex-start;
	padding: 106px 37px 50px;
	opacity: 0;
	pointer-events: none;
	transition: all .3s ease;
}
.sideLeftWrap.show {
	opacity: 1;
	pointer-events: auto;
}
.sideLeftWrap .btnWrap {
	margin-top: 40px;
}
.sideLeftWrap .btnCmn {
	width: 100%;
}
.sideLeftWrap .btnCmn .icn {
	width: 25px;
	margin-right: 10px;
}
.sideRightWrap {
	width: 100%;
	margin-left: 0;
}
.sideNav {
	padding-left: 25px;
}
/*.sideNav::after,*/
.sideNav::before {
	width: 5px;
}
/*
.sideNav::after {
	height: 54px;
}
*/
.curStick span::before {
	height: 54px;
	width: 5px;
}
/*
.curStick span.curTarget01::before,
.curStick span.curTarget02::before,
.curStick span.curTarget03::before,
.curStick span.curTarget04::before,
.curStick span.curTarget05::before {
	height: 40px;
}
*/
.curStick span.curTarget01::before {
	top: 108px;
}
.curStick span.curTarget02::before {
	top: 146px;
}
.curStick span.curTarget03::before {
	top: 182px;
}
.curStick span.curTarget04::before {
	top: 284px;
}
.curStick span.curTarget05::before {
	top: 316px;
}
.sideNavTtl {
	min-height: 54px;
}
.sideSecTtl {
	padding: 14px 0 6px 0;
}
.sideNavList + .sideSecTtl {
	margin-top: 10px;
}
.sideNavList > li + li {
	margin-top: 8px;
}
.sideNavList > li a {
	font-size: 1.6rem;
}

.menuBtn {
	background-color: #014da0;
	position: fixed;
	right: 10px;
	top: 10px;
	width: 40px;
	height: 40px;
	border-radius: 2px;
	border: 1px solid #fff;
}
.menuBtn .icn {
	display: block;
	line-height: 0;
	margin: 11px auto 0;
	position: relative;
	width: 24px;
	height: 16px;
}
.menuBtn .icn span:after,
.menuBtn .icn span:before,
.menuBtn .icn span,
.menuBtn .icn:after,
.menuBtn .icn:before {
	background: #fff;
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	margin: auto;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.menuBtn.cur .icn span {
	opacity: 0;
}
.menuBtn .icn span:before {
	transform: translate(0, 8px);
}
.menuBtn .icn span:after {
	transform: translate(0, -8px);
}
.menuBtn.cur .icn:before {
	transform: rotate(-45deg);
}
.menuBtn.cur .icn:after {
	transform: rotate(45deg);
}

.contactBtnWrap {
	width: 163px;
	margin-top: 32px;
}
.h3ttlV2 > span {
	font-size: 2.2rem;
}
.h3ttlV2 .icn {
	width: 24px;
}
.movieSection .mangaCol2Wrap {
	padding: 0 12.5vw;
}
.contactSection {
	margin-bottom: 40px;
	padding-top: 130px;
}
.contactSection::before {
	clip-path: polygon(0 60px, 100% 0, 100% 100%, 0 calc(100% - 20px));
}
.contactSection .illust .illustImg01 {
	max-width: 130px;
	left: 10px;
	top: -180px;
}
.contactSection .illust .illustImg02 {
	max-width: 100px;
	right: 10px;
	bottom: -140px;
}
.contactSection .ttlWrap .ttl {
	font-size: 7.8125vw;
}
.contactSection .btnWrap {
	padding: 0 10vw;
}
#header.mangaHeader {
	padding-left: 5vw;
	padding-right: 5vw;
}
.mangaWrap {
	margin-top: 6vw;
}
.mangaWrap .wrapInner {
	padding-left: 3vw;
	padding-right: 3vw;
}
.mangaBox + .mangaBox {
	margin-top: 5vw;
}
.mangaPanelTtl {
	font-size: 3.75vw;
	margin-top: 6px;
}
.footerCvWrap > .col + .col {
	margin-top: 6vw;
}
.footerCvWrap > .col {
	width: 100%;
	padding-left: 0;
}
.footerCvPanel .icn {
	width: 100px;
	margin-right: 15px;
}
.footerCvPanel .txt {
	flex: 1;
	font-size: 1.4rem;
	line-height: 1.5;
}

}

