@charset "utf-8";
/*
 reit
==============================*/

/* html ----------*/
html {
	font-size: 62.5%;
}

@media screen and (max-width:720px) {
	html {
		font-size: 56.3%;
	}
}

@media screen and (max-width:560px) {
	html {
		font-size: 50%;
	}
}

/* header ----------*/
#header {
	position: fixed;
	z-index: 100;
	top: -100%;
	left: 0;
	width: 100%;
	height: 10rem;
	background-color: #FFF;
	transition: height 0.2s ease-out;
}

.scroll #header {
	height: 7rem;
}

#header-logo {
	height: 100%;
	padding: 1.35rem 1.35rem 1.35rem 30px;
	float: left;
	transition: padding 0.2s ease-out;
}

.scroll #header-logo {
	padding: 1.2rem;
}

#header-logo a {
	display: inline-block;
	height: inherit;
}

/* /header ----------*/


@font-face {
	font-family: 'KFhimaji';
	src: url('../common/fonts/KFhimaji.otf') format('opentype');
	font-weight: normal;
	font-style: normal;
}

body {
	background-color: #fff;
	color: #1d2f4e;
}

img {
	width: 100%;
	height: auto;
}

.contents_inner {
	font-family: "Noto Serif JP", serif;
}

.inner1580 {
	max-width: 1580px;
	padding: 0 40px;
	box-sizing: border-box;
	position: relative;
	margin: 0 auto;
}

.inner1780 {
	max-width: 1780px;
	padding: 0 40px;
	box-sizing: border-box;
	position: relative;
	margin: 0 auto;
}

div:after,
ul:after {
	display: none;
}

p {
	margin: 0;
}

.blue {
	color: #7b88a9;
}

.pc {
	display: block;
}

.sp {
	display: none;
}

.fwB {
	font-weight: bold;
}

.dot-text {
	position: relative;
}

.dot-text::before {
	content: '';
	display: block;
	width: .2em;
	height: .2em;
	background: #fff;
	border-radius: 50%;
	position: absolute;
	top: -.1em;
	left: -.15em;
	right: 0;
	margin: auto;
}

.taC {
	text-align: center;
}

@keyframes sec-float {
	0% {
		transform: translateY(0);
	}

	50% {
		transform: translateY(-10px);
	}

	100% {
		transform: translateY(0);
	}
}

.orange-txt {
	color: rgba(226, 151, 44, 1);
}

.btn_movie,
.btn_movie:link,
.btn_movie:visited {
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 200px;
	background-color: rgba(240, 50, 125, 1);
	border: 2px solid rgba(240, 50, 125, 1);
	/* background-color: #fff; */
	padding: min(calc((28.5 / 1700) * 100vw), 28.5px) min(calc((60 / 1700) * 100vw), 60px);
	margin: min(calc((57 / 1700) * 100vw), 57px) auto 0;
	max-width: min(calc((450 / 1700) * 100vw), 450px);
	box-sizing: border-box;
	text-decoration: none;
	transition: none;
	/* transition: transform 0.3s ease, opacity 0.3s ease, box-shadow 0.3s ease; */
	/* box-shadow: 5px 5px 30px rgba(57, 101, 133, .35); */
	background:
		linear-gradient(to bottom,
			rgba(255, 211, 218, 1) 0%,
			rgba(236, 126, 169, 1) 20%,
			rgba(240, 50, 125, 1) 50%);
	box-shadow: 0px 5px #752747
}

.btn_movie:hover {
	/* transform: scale(1.07); */
	opacity: 1;
	box-shadow: none;
	position: relative;
	top: 4px;
}

.btn_movie_txt {
	font-size: min(calc((33 / 1700) * 100vw), 33px);
	letter-spacing: .1em;
	font-weight: bold;
	text-align: center;
	line-height: 1;
	position: relative;
	padding-left: min(calc((70 / 1700) * 100vw), 70px);
	color: #fff;
	/* color: #5184ad; */
	white-space: nowrap;
}

.btn_movie_txt::before {
	content: '';
	display: inline-block;
	width: min(calc((57 / 1700) * 100vw), 57px);
	height: min(calc((48 / 1700) * 100vw), 48px);
	background: url(../img/icn_movie_white.svg) no-repeat center / contain;
	/* background: url(../img/icn_movie_blue.svg) no-repeat center / contain; */
	position: absolute;
	left: 0;
	top: min(calc((-4 / 1700) * 100vw), -4px);
}

.sec-bg-tit {
	font-family: "Roboto Condensed";
	font-weight: bold;
	color: #fff;
	font-size: min(calc((226 / 1700) * 100vw), 226px);
	line-height: 1;
	letter-spacing: 0;
	position: absolute;
	top: .03em;
	transform: scale(1, 1.45);
	z-index: -1;
	white-space: nowrap;
}

.sec-bg-tit-right.js-effect-r {
	right: -0.05em;
	transform: scale(1, 1.45) translateX(70px);
	transition: ease 1.5s;
}

.sec-bg-tit-right.js-effect-r.fadein {
	transform: scale(1, 1.45) translateX(0);
}


.sec-bg-tit-left.js-effect-l {
	left: -0.05em;
	transform: scale(1, 1.45) translateX(-70px);
	transition: ease 1.5s;
}

.sec-bg-tit-left.js-effect-l.fadein {
	transform: scale(1, 1.45) translateX(0);
}


.sec-tit {
	font-weight: 600;
	line-height: 1.33;
	letter-spacing: 0.6em;
	text-align: center;
	word-break: keep-all;
}

.sec-tit_60,
.sec-tit_64,
.sec-tit_90 {
	vertical-align: bottom;
	display: inline-block;
}

.sec-tit_60 {
	font-size: min(calc((60 / 1700) * 100vw), 60px);
	position: relative;
	top: -.02em;
}

.sec-tit_64 {
	font-size: min(calc((64 / 1700) * 100vw), 64px);
	position: relative;
	top: -.02em;
}

.sec-tit_90 {
	font-size: min(calc((90 / 1700) * 100vw), 90px);
}

.third_tit {
	font-size: min(calc((40 / 1700) * 100vw), 40px);
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0.05em;
	text-align: center;
	position: relative;
	z-index: 1;
	padding-top: min(calc((94 / 1700) * 100vw), 94px);
	word-break: keep-all;
}

.sec-desc {
	font-size: min(calc((40 / 1700) * 100vw), 40px);
	font-weight: 600;
	line-height: 1.75;
	text-align: center;
	letter-spacing: .1em;
	color: #1d4e44;
}

.sec-tit+.sec-desc {
	margin-top: min(calc((70 / 1700) * 100vw), 70px);
}

.sec-profile {
	background: #fff;
	border: 1px solid rgba(99, 154, 184, 1);
	padding: 3.1% .25% 3%;
	width: min(calc((1200 / 1700) * 100vw), 1200px);
	margin: min(calc((52 / 1700) * 100vw), 52px) auto 0;
}

.sec-profile_tit {
	font-size: min(calc((30 / 1700) * 100vw), 30px);
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: .1em;
	text-align: center;
}

.sec-profile_tit_name {
	font-size: min(calc((50 / 1700) * 100vw), 50px);
	vertical-align: baseline;
}

.sec-profile_desc {
	display: flex;
	justify-content: center;
	margin: min(calc((48 / 1700) * 100vw), 48px) auto 0;
	position: relative;
	left: min(calc((-10 / 1700) * 100vw), -10px);
}

.sec-profile_desc_imgwrap {
	width: min(calc((230 / 1700) * 100vw), 230px);
	margin-right: min(calc((60 / 1700) * 100vw), 60px);
}

.sec-profile_desc_txt {
	font-size: min(calc((24 / 1700) * 100vw), 24px);
	font-weight: 500;
	line-height: 1.83;
	letter-spacing: .1em;
}

.sec-profile_last {
	display: flex;
	margin: 0 auto;
}

.sec-profile_last_imgwrap {
	width: min(calc((299 / 1700) * 100vw), 299px);
	margin-right: min(calc((40 / 1700) * 100vw), 40px);
}

.sec-profile_last_txtwrap {
	margin-top: min(calc((24 / 1700) * 100vw), 24px);
}

.sec-profile_last_txt {
	font-size: min(calc((24 / 1700) * 100vw), 24px);
	font-weight: 500;
	line-height: 1.83;
	letter-spacing: .1em;
}

.sec_pagetit-wrap {
	position: relative;
	z-index: 2;
	padding: min(calc((14 / 1700) * 100vw), 14px) 0 min(calc((6 / 1700) * 100vw), 5px) min(calc((105 / 1700) * 100vw), 105px);
	margin-left: min(calc((-101 / 1700) * 100vw), -101px);
}

.sec_pagetit_bg {
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	width: min(calc((1103 / 1700) * 100vw), 1103px);
}

.sec_pagetit {
	margin: 0 0 0 min(calc((57 / 1700) * 100vw), 57px);
	color: #fff;
}

.sec_pagetit_1 {
	font-size: min(calc((40 / 1700) * 100vw), 40px);
	letter-spacing: .2em;
	font-weight: 600;
	line-height: 1.5;
}

.sec_pagetit_2 {
	font-size: min(calc((80 / 1700) * 100vw), 80px);
	font-weight: 600;
	letter-spacing: .2em;
	line-height: 1.4;
	white-space: nowrap;
}

.sec_subtit {
	margin: min(calc((3 / 1700) * 100vw), 3px) 0 0 0;
	display: flex;
	align-items: center;
}

.sec_subtit_desc {
	display: flex;
	align-items: center;
	color: #fff;
	margin-right: min(calc((20 / 1700) * 100vw), 20px);
}

.sec_subtit_desc_imgwrap {
	width: min(calc((132 / 1700) * 100vw), 132px);
}

.sec_subtit_desc_txt {
	font-size: min(calc((24 / 1700) * 100vw), 24px);
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: .2em;
	margin-left: min(calc((-8 / 1700) * 100vw), -8px);
}

.sec_subtit_list {
	color: #fff;
}

.sec_subtit_item {
	font-size: min(calc((30 / 1700) * 100vw), 30px);
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: .2em;
	position: relative;
	padding-left: min(calc((37 / 1700) * 100vw), 37px);
	z-index: 4;
}

.sec_subtit_item::before {
	content: '';
	display: block;
	width: min(calc((30 / 1700) * 100vw), 30px);
	height: min(calc((30 / 1700) * 100vw), 30px);
	background: url(../img/icn_check_white.svg) no-repeat center / contain;
	position: absolute;
	left: 0;
	top: .2em;
}

.sec_subtit_item .marker {
	position: relative;
	z-index: 4;
}

.sec_subtit_item+.sec_subtit_item {
	margin-top: min(calc((22 / 1700) * 100vw), 22px);
}

.sec_subtit_item .marker.fadein::after {
	background: linear-gradient(transparent 56%, rgba(167, 221, 2, .5) 0%);
}


@media screen and (max-width:768px) {

	a:hover,
	a:active {
		opacity: 1;
	}

	.pc {
		display: none !important;
	}

	.sp {
		display: block !important;
	}

	.inner1580,
	.inner1780 {
		padding: 0 calc((30 / 750)* 100vw);
	}

	.btn_movie,
	.btn_movie:link,
	.btn_movie:visited {
		padding: 1.12em .5em;
		margin: calc((20 / 750) * 100vw) auto 0;
		transition: none;
		max-width: inherit;
		width: calc((450 / 750) * 100vw);
		box-sizing: border-box;
		/* box-shadow: 3px 3px 15px rgba(57, 101, 133, .75); */
		box-shadow: 0px 4px #752747;
	}

	.btn_movie:hover {
		transform: scale(1);
		top: 0;
	}

	.btn_movie_txt {
		font-size: calc((33 / 750) * 100vw);
		padding-left: calc((70 / 750) * 100vw);
	}

	.btn_movie_txt::before {
		width: calc((57 / 750) * 100vw);
		height: calc((48 / 750) * 100vw);
		top: calc((-5 / 750) * 100vw);
	}

	.third_tit {
		font-size: 20px;
		padding-top: 50px;
	}

	.sec-bg-tit {
		font-size: calc((125 / 750) * 100vw);
		letter-spacing: .05em;
	}

	.sec-tit {
		font-size: calc((38.7 / 750) * 100vw);
		letter-spacing: .05em;
	}

	.sec-tit_60 {
		font-size: calc((60 / 750) * 100vw);
		top: -0.2em;
	}

	.sec-tit_64 {
		font-size: calc((64 / 750) * 100vw);
		top: 0;
	}

	.sec-tit_90 {
		font-size: calc((90 / 750) * 100vw);
	}

	.sec-tit_60+br+.sec-tit_90+br+.sec-tit_64 {
		margin-top: calc((28 / 750) * 100vw);
		display: inline-block;
	}

	.sec-desc {
		font-size: calc((40 / 750) * 100vw);
	}

	.sec-tit+.sec-desc {
		margin-top: calc((20 / 750) * 100vw);
	}

	.sec_pagetit-wrap {
		padding: calc((16 / 750) * 100vw) 0 calc((30 / 750) * 100vw) calc((30 / 750) * 100vw);
		margin-left: calc((-30 / 750) * 100vw);
	}

	.sec_pagetit {
		margin: 0;
	}

	.sec_pagetit_1 {
		font-size: calc((40 / 750) * 100vw);
	}

	.sec_pagetit_2 {
		font-size: calc((65 / 750) * 100vw);
		letter-spacing: .1em;
		margin-top: calc((17 / 750) * 100vw);
		display: block;
	}

	.sec_subtit {
		margin: calc((20 / 750) * 100vw) 0 0 0;
		display: block;
	}

	.sec_subtit_desc {
		margin-right: min(calc((20 / 1700) * 100vw), 20px);
	}

	.sec_subtit_desc_imgwrap {
		width: calc((132 / 750) * 100vw);
	}

	.sec_subtit_desc_txt {
		font-size: calc((24 / 750) * 100vw);
		margin-left: calc((-10 / 750) * 100vw);
	}

	.sec_subtit_list {
		margin-top: calc((28 / 750) * 100vw);
	}

	.sec_subtit_item {
		font-size: calc((30 / 750) * 100vw);
		padding-left: calc((40 / 750) * 100vw);
	}

	.sec_subtit_item::before {
		width: calc((30 / 750) * 100vw);
		height: calc((30 / 750) * 100vw);
	}

	.sec_subtit_item+.sec_subtit_item {
		margin-top: calc((21 / 750) * 100vw);
	}

	.sec_pagetit_bg {
		width: calc((720 / 750) * 100vw);
	}

	.sec-profile {
		padding: calc((38 / 750) * 100vw) calc((30 / 750) * 100vw) calc((50 / 750) * 100vw);
		width: auto;
		margin: calc((38 / 750) * 100vw) auto 0;
	}

	.sec-profile_tit {
		font-size: calc((30 / 750) * 100vw);
		line-height: 2;
	}

	.sec-profile_tit_name {
		font-size: calc((50 / 750) * 100vw);
	}

	.sec-profile_desc {
		display: block;
		margin: calc((30 / 750) * 100vw) auto 0;
		left: 0;
	}

	.sec-profile_desc_imgwrap {
		width: calc((230 / 750) * 100vw);
		margin: 0 auto;
	}

	.sec-profile_desc_txtwrap {
		margin-top: calc((14 / 750) * 100vw);
	}

	.sec-profile_desc_txt {
		font-size: calc((24 / 750) * 100vw);
	}

	.sec-profile_last {
		display: block;
		margin-top: calc((40 / 750) * 100vw);
	}

	.sec-profile_last_imgwrap {
		width: calc((299 / 750) * 100vw);
		margin: 0 auto;
	}

	.sec-profile_last_txtwrap {
		margin-top: calc((10 / 750) * 100vw);
	}

	.sec-profile_last_txt {
		font-size: calc((24 / 750) * 100vw);
	}

}


/* header ----------*/
#header {
	top: 0;
}

#header.fixed {
	height: 7rem;
}

#header.fixed #header-logo {
	padding: 1.2rem 1.2rem 1.2rem 30px;
}

#nav {
	display: none;
}

#header .btn_movie {
	float: right;
	margin: 20px 30px 0 0;
	padding: 1.25em 2.67em 1.15em 2.67em;
	filter: none;
	box-shadow: none;
	width: 300px;
	max-width: 300px;
	box-sizing: border-box;
	background-color: rgba(240, 50, 125, 1);
	box-shadow: 0px 4px #752747;
	transition: none;
}

#header .btn_movie:hover {
	box-shadow: none;
	position: relative;
	top: 4px;
}

#header.fixed .btn_movie {
	margin: 13px 30px 0 0;
	padding: .8em 2.67em .8em 2.67em;
	width: 240px;
	max-width: 240px;
}

#header .btn_movie_txt {
	font-family: "Noto Serif JP", serif;
	font-size: 2.2rem;
	letter-spacing: .1em;
	padding-left: 47px;
	transition: all .5s;
	white-space: nowrap;
	color: #fff;
}

#header.fixed .btn_movie_txt {
	font-size: 1.8rem;
	padding-left: 37px;
}

#header .btn_movie_txt::before {
	width: 38px;
	height: 32px;
	top: -4px;
	transition: all .5s;
	background: url(../img/icn_movie_white.svg) no-repeat center / contain;
}

#header.fixed .btn_movie_txt::before {
	width: 28px;
	height: 24px;
	top: 0px;
}


@media screen and (max-width:1000px) {

	#header,
	#header.fixed {
		height: 70px;
	}

	#header #header-logo,
	#header.fixed #header-logo {
		padding: 6.5px 0 6.5px 15px;
	}

	#header .btn_movie,
	#header.fixed .btn_movie {
		margin: 13px 30px 0 0;
		padding: .8em 2.67em .8em 2.67em;
		width: 240px;
		max-width: 240px;
	}

	#header .btn_movie_txt,
	#header.fixed .btn_movie_txt {
		font-size: 1.8rem;
		padding-left: 37px;
	}

	#header .btn_movie_txt::before,
	#header.fixed .btn_movie_txt::before {
		width: 28px;
		height: 24px;
		top: 0px;
	}

	#nav_bar {
		display: none;
	}
}


@media screen and (max-width:768px) {

	#header,
	#header.fixed {
		height: 50px;
	}

	#header-logo {
		position: absolute;
	}

	#header .btn_movie,
	#header.fixed .btn_movie {
		width: 150px;
		max-width: 150px;
		padding: .8em .5em .7em .5em;
		margin: 9px 15px 0 0;
		box-shadow: 0px 2px #752747;
	}

	#header.fixed .btn_movie {
		margin: 9px 15px 0 0;
		padding: .7em 1.3em .8em 1.3em;
	}

	#header .btn_movie:hover {
		box-shadow: 0px 2px #752747;
		top: 0;
	}

	#header .btn_movie_txt,
	#header.fixed .btn_movie_txt {
		font-size: 11px;
		padding-left: 25px;
	}

	#header .btn_movie_txt::before,
	#header.fixed .btn_movie_txt::before {
		width: 19px;
		height: 16px;
		top: -2px;
	}
}


/* mvBl ----------*/
.mvBl {
	margin: 100px 0 0;
	position: relative;
	overflow: hidden;
	background: url(../img/mv_bg.jpg) no-repeat center top/cover;
}

header.fixed .contents_inner .mvBl {
	margin-top: min(calc((70 / 1700) * 100vw), 70px);
}

.mvBl img {
	max-width: inherit;
	width: 100%;
	height: auto;
}

.mvBl_inner {
	width: min(calc((1580 / 1700)* 100vw), 1580px);
	max-width: 1580px;
	box-sizing: border-box;
	padding: 0 40px;
	position: relative;
	margin: 0 auto;
}

.mv_txtwrap {
	padding: min(calc((100 / 1700) * 100vw), 100px) 0 min(calc((46 / 1700) * 100vw), 46px);
	position: relative;
	z-index: 2;
}

.mv_flow {
	width: min(calc((798 / 1700) * 100vw), 798px);
	box-sizing: border-box;
	margin: min(calc((119 / 1700) * 100vw), 119px) 0 0 min(calc((60 / 1700) * 100vw), 60px);
	position: relative;
}

.mv_flow_tit {
	font-size: min(calc((26 / 1700) * 100vw), 26px);
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: .1em;
	text-align: center;
	color: rgba(99, 154, 184, 1);
}

.mv_flow_inner {
	background-color: rgba(255, 255, 255, .85);
	padding: min(calc((23 / 1700) * 100vw), 23px) min(calc((70 / 1700) * 100vw), 70px);
}

.mv_flow_list {
	display: flex;
	justify-content: space-between;
	margin-top: min(calc((25 / 1700) * 100vw), 25px);
}

.mv_flow_list::after {
	display: none;
}

.mv_flow_item {
	width: min(calc((180 / 1700)* 100vw), 180px);
	box-sizing: border-box;
	position: relative;
}

.mv_flow_item::after {
	content: '';
	display: block;
	width: min(calc((14 / 1700)* 100vw), 14px);
	height: min(calc((26 / 1700)* 100vw), 26px);
	background: url(../img/icn_arrow_lightgreen.svg) no-repeat center / contain;
	position: absolute;
	right: -20%;
	top: min(calc((49 / 1700)* 100vw), 49px);
}

.mv_flow_item:last-child::after {
	display: none;
}

.mv_flow_item_flame {
	border: 2px solid rgba(99, 154, 184, 1);
	background-color: #fff;
	padding: min(calc((20 / 1700) * 100vw), 20px) min(calc((5 / 1700) * 100vw), 5px) min(calc((12 / 1700) * 100vw), 12px);
	display: block;
}

#body-wrap .mv_flow_item_flame:link,
#body-wrap .mv_flow_item_flame:visited {
	text-decoration: none;
}

.mv_flow_item:nth-child(3) .mv_flow_item_flame {
	background: rgba(99, 154, 184, 1);
}

.mv_flow_item_flame_imgwrap img {
	height: min(calc((50 / 1700)* 100vw), 50px);
	box-sizing: border-box;
}

.mv_flow_item_flame_tit {
	font-size: min(calc((20 / 1700) * 100vw), 20px);
	font-weight: 600;
	color: rgba(99, 154, 184, 1);
	line-height: 1.5;
	text-align: center;
	margin-top: .2em;
}

.mv_flow_item:nth-child(3) .mv_flow_item_flame_tit {
	color: #fff;
}

.mv_flow_item_desc {
	font-family: "Noto Sans CJK JP", "Noto Sans JP", sans-serif;
	font-size: min(calc((14 / 1700) * 100vw), 14px);
	line-height: 1.42;
	letter-spacing: 0;
	color: rgba(99, 154, 184, 1);
	margin-top: .6em;
	white-space: nowrap;
}

.mv_human {
	width: min(calc((2385 / 1700) * 100vw), 2385px);
	position: absolute;
	right: -25.4%;
	top: -2px;
	z-index: 1;
}

.mv_human_inner {
	position: relative;
}

.mv_human_txtwrap {
	position: absolute;
	right: min(calc((490 / 1700) * 100vw), 490px);
	top: 83.3%;
	box-sizing: border-box;
	display: flex;
	align-items: center;
}

.mv_human_teacher {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: rgba(99, 154, 184, 1);
	color: #fff;
	text-align: center;
	font-size: min(calc((17 / 1700) * 100vw), 17px);
	font-weight: 600;
	line-height: 1;
	letter-spacing: .2em;
	border-radius: 50%;
	width: min(calc((60 / 1700) * 100vw), 60px);
	height: min(calc((60 / 1700) * 100vw), 60px);
	margin-right: min(calc((15 / 1700) * 100vw), 15px);
}

.mv_human_position {
	color: #fff;
	font-size: min(calc((20 / 1700) * 100vw), 20px);
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: .05em;
	margin-right: min(calc((15 / 1700) * 100vw), 15px);
	text-shadow: 0px 0px 5px rgba(87, 82, 79, .65), 0px 0px 5px rgba(0, 0, 0, 1);
}

.mv_human_name {
	color: #fff;
	font-size: min(calc((50 / 1700)* 100vw), 50px);
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: .05em;
	text-shadow: 0px 0px 5px rgba(87, 82, 79, .65), 0px 0px 5px rgba(0, 0, 0, 1);
}


@media screen and (max-width:1000px) {
	.mvBl {
		margin: 70px 0 0;
	}
}


@media screen and (max-width:768px) {
	.mvBl {
		margin-top: 50px;
		background: url(../img/mv_bg_sp.jpg) no-repeat center top / cover;
	}

	.mvBl_inner {
		width: auto;
		padding: 0 calc((30 / 750)* 100vw);
	}

	.mv_txtwrap {
		padding: calc((50 / 750) * 100vw) 0;
	}

	.mv_flow {
		width: auto;
		margin: calc((496 / 750) * 100vw) auto 0;
	}

	.mv_flow_inner {
		padding: calc((20 / 750) * 100vw) calc((30 / 750) * 100vw) calc((25 / 750) * 100vw);
	}

	.mv_flow_item {
		width: calc((189 / 750)* 100vw);
	}

	.mv_flow_item::after {
		width: calc((13 / 750)* 100vw);
		height: calc((23 / 750)* 100vw);
		right: calc((-22 / 750) * 100vw);
		top: calc((67 / 750)* 100vw);
	}

	body:not(.is-mobile) .mv_flow_item::after {
		right: calc((-19 / 750)* 100vw);
	}

	.mv_flow_item_flame {
		border: 1px solid rgba(99, 154, 184, 1);
		padding: calc((20 / 750) * 100vw) calc((10 / 750) * 100vw);
	}

	.mv_flow_item_flame_imgwrap img {
		height: calc((60 / 750)* 100vw);
	}

	.mv_flow_item_flame_tit {
		font-size: calc((24 / 750) * 100vw);
		margin-top: calc((12 / 750) * 100vw);
	}

	.mv_flow_item_desc {
		font-size: calc((20 / 750)* 100vw);
		margin-top: calc((14 / 750)* 100vw);
	}

	.mv_flow_tit {
		font-size: calc((30 / 750) * 100vw);
	}

	.mv_flow_list {
		margin-top: calc((25 / 750) * 100vw);
	}

	.mv_human {
		width: 100%;
		right: 0;
		top: 0;
	}

	.mv_human_txtwrap {
		right: calc((22 / 750) * 100vw);
		top: calc((933 / 750) * 100vw);
	}

	.mv_human_teacher {
		font-size: calc((20 / 750) * 100vw);
		letter-spacing: .4em;
		padding: 0 0 0 .5em;
		width: calc((70 / 750) * 100vw);
		height: calc((70 / 750) * 100vw);
		margin-right: calc((15 / 750) * 100vw);
	}

	.mv_human_position {
		font-size: calc((20 / 750) * 100vw);
		white-space: nowrap;
		margin-right: calc((15 / 750) * 100vw);
	}

	.mv_human_name {
		font-size: calc((50 / 750) * 100vw);
		white-space: nowrap;
	}
}


/* periodBl ----------*/
.periodBl {
	background-image: linear-gradient(#3f6f9a, #7aabc9);
	padding: .95em 0;
	position: relative;
	z-index: 1;
}

.period_tit {
	text-align: center;
	color: #fff;
	line-height: 1;
	letter-spacing: .25em;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	padding: 0 40px;
	margin: 0 auto;
}

.period_tit_txt {
	font-size: min(calc((32 / 1700) * 100vw), 32px);
	font-weight: 600;
	letter-spacing: .1em;
	background: #9ad3fb;
	padding: 0.2em .34em 0.34em .34em;
	font-weight: 600;
	margin-right: min(calc((32 / 1700) * 100vw), 32px);
}

.period_tit_num {
	font-size: min(calc((50 / 1700) * 100vw), 50px);
	font-weight: 600;
	position: relative;
	top: -.05em;
}

.period_tit_unit {
	font-size: min(calc((30 / 1700) * 100vw), 30px);
	font-weight: 600;
	position: relative;
	top: .2em;
}


@media screen and (max-width:768px) {
	.periodBl {
		padding: .6em 0;
	}

	.period_tit {
		padding: 0;
	}

	.period_tit_txt {
		font-size: calc((32 / 750) * 100vw);
		margin-right: calc((32 / 750) * 100vw);
	}

	.period_tit_num {
		font-size: calc((50 / 750) * 100vw);
	}

	.period_tit_unit {
		font-size: calc((30 / 750) * 100vw);
	}
}


/* lossBl ----------*/
.lossBl {
	background: #e7edf3 url(../img/loss_bg.jpg) no-repeat center bottom / cover;
	overflow: hidden;
	position: relative;
	padding: 0 0 min(calc((293 / 1700) * 100vw), 293px);
}

.lossBl .sec-tit {
	padding-top: min(calc((103 / 1700) * 100vw), 103px);
}

.lossBl .loss_find+.sec-tit {
	padding-top: min(calc((93 / 1700) * 100vw), 93px);
}

.loss_ill {
	margin: min(calc((100 / 1700) * 100vw), 100px) auto 0;
}

.loss_ill_fukidashi {
	display: flex;
	justify-content: center;
}

.loss_ill_fukidashi_1,
.loss_ill_fukidashi_2 {
	margin-right: min(calc((120 / 1700) * 100vw), 120px);
}

.loss_ill_fukidashi_1 {
	width: min(calc((323 / 1700) * 100vw), 323px);
}

.loss_ill_fukidashi_2 {
	width: min(calc((326 / 1700) * 100vw), 326px);
}

.loss_ill_fukidashi_3 {
	width: min(calc((362 / 1700) * 100vw), 362px);
}

.loss_ill_imgwrap {
	width: min(calc((1507 / 1700) * 100vw), 1507px);
	margin: 0 auto;
}

.loss_find {
	width: min(calc((1200 / 1700) * 100vw), 1200px);
	display: flex;
	justify-content: center;
	margin: min(calc((120 / 1700) * 100vw), 120px) auto 0;
}

.loss_find_txtwrap {
	width: 60.8%;
	background: rgba(99, 154, 184, 1);
	padding: 4% 4.7% 4.7%;
	color: #fff;
}

.loss_find_tit {
	font-size: min(calc((70 / 1700) * 100vw), 70px);
	font-weight: 600;
	line-height: 1.28;
	letter-spacing: .1em;
}

.loss_find_list {
	margin-top: min(calc((45 / 1700) * 100vw), 45px);
}

.loss_find_item {
	font-size: min(calc((30 / 1700) * 100vw), 30px);
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: .1em;
	position: relative;
	padding-left: min(calc((45 / 1700) * 100vw), 45px);
}

.loss_find_item::before {
	content: '';
	display: block;
	width: min(calc((30 / 1700) * 100vw), 30px);
	height: min(calc((30 / 1700) * 100vw), 30px);
	background: url(../img/../img/icn_check_lightblue.svg) no-repeat center / cover;
	position: absolute;
	left: 0;
	top: min(calc((10 / 1700) * 100vw), 10px);
}

.loss_find_item+.loss_find_item {
	margin-top: min(calc((35 / 1700) * 100vw), 35px);
}

.loss_find_imgwrap {
	width: 39.2%;
}


@media screen and (max-width:768px) {
	.lossBl {
		background: #e7edf3 url(../img/loss_bg_sp.jpg) no-repeat center bottom / cover;
		padding: 0 0 calc((200 / 750) * 100vw);
	}

	.lossBl .sec-tit {
		padding-top: calc((61 / 750) * 100vw);
	}

	.lossBl .loss_find+.sec-tit {
		padding-top: calc((98 / 750) * 100vw);
	}

	.loss_ill {
		margin: calc((88 / 750) * 100vw) auto 0;
	}

	.loss_ill_imgwrap._1 {
		width: calc((750 / 750) * 100vw);
		margin: 0 calc((-30 / 750) * 100vw);
	}

	.loss_ill_imgwrap._2 {
		width: calc((554 / 750) * 100vw);
		margin: calc((10 / 750) * 100vw) auto 0;
	}

	.loss_ill_fukidashi_1 {
		width: calc((323 / 750) * 100vw);
		margin-right: auto;
	}

	.loss_ill_fukidashi_2 {
		width: calc((326 / 750) * 100vw);
		margin-right: 0;
	}

	.loss_ill_fukidashi_3 {
		width: calc((362 / 750) * 100vw);
		margin: calc((48 / 750) * 100vw) auto 0;
	}

	.loss_find {
		width: auto;
		display: block;
		margin: calc((96 / 750) * 100vw) auto 0;
	}

	.loss_find_txtwrap {
		width: auto;
		padding: calc((47 / 750) * 100vw) calc((56 / 750) * 100vw) calc((46 / 750) * 100vw);
	}

	.loss_find_tit {
		font-size: calc((70 / 750) * 100vw);
	}

	.loss_find_list {
		margin-top: calc((45 / 750) * 100vw);
	}

	.loss_find_item {
		font-size: calc((30 / 750) * 100vw);
		padding-left: calc((45 / 750) * 100vw);
	}

	.loss_find_item::before {
		width: calc((30 / 750) * 100vw);
		height: calc((30 / 750) * 100vw);
		top: calc((10 / 750) * 100vw);
	}

	.loss_find_item+.loss_find_item {
		margin-top: calc((35 / 750) * 100vw);
	}

	.loss_find_imgwrap {
		width: auto;
	}
}


/* courseBl ----------*/
.courseBl {
	background: url(../img/course_bg.jpg) no-repeat center / cover;
	overflow: hidden;
	position: relative;
	padding: min(calc((60 / 1700) * 100vw), 60px) 0;
}

.courseBl .inner1780 {
	position: relative;
}

.courseBl .sec_pagetit-wrap {
	margin-left: min(calc((-40 / 1700) * 100vw), -40px);
}

.couse_supple {
	font-size: min(calc((40 / 1700) * 100vw), 40px);
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: .1em;
	color: #fff;
	position: absolute;
	right: 0;
	bottom: -13%;
	background: url(../img/couse_supple_bg_1.png) no-repeat center / cover;
	padding: 1.2% 4.1%;
}

.courseBl._2 .couse_supple {
	right: -2%;
}

.courseBl._3 .couse_supple {
	font-size: min(calc((24 / 1700) * 100vw), 24px);
	line-height: 1.66;
	letter-spacing: .05em;
	right: -3%;
}

.couse_supple_imgwrap {
	position: absolute;
	top: -36%;
	right: -19.3%;
	width: 138%;
	z-index: -2;
}


@media screen and (max-width:768px) {
	.courseBl {
		background: url(../img/course_bg_sp.jpg) no-repeat center / cover;
		padding: calc((50 / 750) * 100vw) 0 calc((70 / 750) * 100vw);
	}

	.courseBl .inner1780 {
		position: static;
	}

	.courseBl .sec_pagetit-wrap {
		margin-left: calc((-30 / 750) * 100vw);
	}

	.couse_supple {
		font-size: calc((40 / 750) * 100vw);
		position: static;
		background: url(../img/couse_supple_bg_1.png) no-repeat center left / contain;
		margin-top: calc((327 / 750) * 100vw);
		margin-left: auto;
		margin-right: calc((-30 / 750) * 100vw);
		width: fit-content;
		padding: 4.3% 8.3%;
	}

	.courseBl._3 .couse_supple {
		font-size: calc((24 / 750) * 100vw);
		padding: 3.3% 8.3%;
		margin-top: calc((327 / 750) * 100vw);
		margin-right: calc((-66 / 750) * 100vw);
		background-size: 100% 100%;
	}

	.couse_supple_imgwrap {
		top: auto;
		bottom: -5.5%;
		right: -37.3%;
		width: 155%;
	}

	.courseBl._3 .couse_supple_imgwrap {
		bottom: 0;
	}

	.courseBl._3 .btn_movie {
		margin: calc((30 / 750) * 100vw) auto 0;
	}
}


/* understandBl ----------*/
.understandBl {
	background: #e7edf3 url(../img/understand_bg.jpg) no-repeat center bottom / cover;
	overflow: hidden;
	position: relative;
	padding: 0 0 min(calc((293 / 1700) * 100vw), 293px);
}

.understandBl .sec-tit {
	padding-top: min(calc((93 / 1700) * 100vw), 93px);
}

.understandBl .sec-bg-tit {
	font-size: min(calc((210 / 1700) * 100vw), 210px);
	letter-spacing: .02em;
}

.understandBl .loss_find+.sec-tit {
	padding-top: min(calc((93 / 1700) * 100vw), 93px);
}

.understand_list {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: min(calc((96 / 1700) * 100vw), 96px) auto 0;
	max-width: min(calc((1235 / 1700) * 100vw), 1235px);
}

.understand_item {
	margin-right: min(calc((28 / 1700) * 100vw), 28px);
	width: min(calc((393 / 1700) * 100vw), 393px);
}

.understand_item:nth-child(3),
.understand_item:nth-child(5) {
	margin-right: 0;
}

.understand_item:nth-child(n+4) {
	margin-top: min(calc((115 / 1700) * 100vw), 115px)
}

.understand_item_imgwrap {
	width: min(calc((300 / 1700) * 100vw), 300px);
	margin: 0 auto;
}

.understand_item_tit {
	font-size: min(calc((30 / 1700) * 100vw), 30px);
	font-weight: 800;
	line-height: 1.33;
	letter-spacing: .1em;
	text-align: center;
	text-shadow: 3px 3px 0px white, -3px 3px 0px white, 3px -3px 0px white, -3px -3px 0px white, 3px 0px 0px white, -3px 0px 0px white, 0px 3px 0px white, 0px -3px 0px white;
	margin-top: min(calc((18 / 1700) * 100vw), 18px);
	white-space: nowrap;
}

.understand_item_desc {
	font-size: min(calc((20 / 1700) * 100vw), 20px);
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: .1em;
	text-align: center;
	text-shadow: 3px 3px 0px white, -3px 3px 0px white, 3px -3px 0px white, -3px -3px 0px white, 3px 0px 0px white, -3px 0px 0px white, 0px 3px 0px white, 0px -3px 0px white;
	margin-top: min(calc((8 / 1700) * 100vw), 8px);
}


@media screen and (max-width:768px) {
	.understandBl {
		background: #e7edf3 url(../img/understand_bg_sp.jpg) no-repeat center bottom / cover;
		padding: 0 0 calc((216 / 750) * 100vw);
	}

	.understandBl .sec-bg-tit {
		font-size: calc((125 / 750) * 100vw);
		letter-spacing: .03em;
	}

	.understandBl .sec-tit {
		padding-top: calc((58 / 750) * 100vw);
	}

	.understandBl .understand_list+.sec-tit {
		padding-top: calc((98 / 750) * 100vw);
	}

	.understand_list {
		margin: calc((76 / 750) * 100vw) auto 0;
		max-width: inherit;
	}

	.understand_item,
	.understand_item:nth-child(3),
	.understand_item:nth-child(5) {
		margin-right: 1%;
		width: 49%;
	}

	.understand_item:nth-child(even) {
		margin-right: 0;
	}

	.understand_item:nth-child(n+3) {
		margin-top: calc((100 / 750) * 100vw);
	}

	.understand_item_imgwrap {
		width: calc((300 / 750) * 100vw);
	}

	.understand_item_tit {
		font-size: calc((30 / 750) * 100vw);
		letter-spacing: .05em;
		text-shadow: 1.5px 1.5px 0px white, -1.5px 1.5px 0px white, 1.5px -1.5px 0px white, -1.5px -1.5px 0px white, 1.5px 0px 0px white, -1.5px 0px 0px white, 0px 1.5px 0px white, 0px -1.5px 0px white;
		margin-top: calc((15 / 750) * 100vw);
	}

	.understand_item_desc {
		font-size: calc((22 / 750) * 100vw);
		letter-spacing: .05em;
		white-space: nowrap;
		text-shadow: 1.5px 1.5px 0px white, -1.5px 1.5px 0px white, 1.5px -1.5px 0px white, -1.5px -1.5px 0px white, 1.5px 0px 0px white, -1.5px 0px 0px white, 0px 1.5px 0px white, 0px -1.5px 0px white;
		margin-top: calc((7 / 750) * 100vw);
	}
}


/* lookBl ----------*/
.lookBl {
	background: #e7edf3 url(../img/look_bg.jpg) no-repeat center bottom / cover;
	overflow: hidden;
	position: relative;
	padding: 0 0 min(calc((293 / 1700) * 100vw), 293px);
}

.lookBl .sec-tit {
	padding-top: min(calc((103 / 1700) * 100vw), 103px);
}

.lookBl .look_predict+.sec-tit {
	padding-top: min(calc((45 / 1700) * 100vw), 45px);
}

.lookBl .sec-bg-tit {
	font-size: min(calc((214 / 1700) * 100vw), 214px);
	letter-spacing: .032em;
}

.look_graph {
	width: min(calc((1226 / 1700) * 100vw), 1226px);
	margin: min(calc((105 / 1700) * 100vw), 105px) auto 0;
	position: relative;
	left: min(calc((13 / 1700) * 100vw), 13px);
}

.look_desc {
	font-size: min(calc((36 / 1700) * 100vw), 36px);
	font-weight: 600;
	line-height: 1.55;
	letter-spacing: .1em;
	margin: min(calc((30 / 1700) * 100vw), 30px) auto 0;
	max-width: min(calc((1200 / 1700) * 100vw), 1200px);
}

.look_predict {
	margin: min(calc((53 / 1700) * 100vw), 53px) auto 0;
	max-width: min(calc((1200 / 1700) * 100vw), 1200px);
}

.look_predict_tit {
	font-size: min(calc((30 / 1700) * 100vw), 30px);
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: .1em;
	color: #fff;
	text-align: center;
	background: #5184ad;
	padding: .62%;
}

.look_predict_inner {
	background: #fff;
	padding: 1% .5% .5%;
}

.look_predict_list {
	display: flex;
	flex-wrap: wrap;
	max-width: min(calc((1080 / 1700) * 100vw), 1080px);
	margin: 0 auto;
}

.look_predict_item {
	width: 47%;
	margin-right: 5%;
	line-height: 1.4;
}

.look_predict_item:nth-child(2) {
	left: -1.7em;
	position: relative;
}

.look_predict_item:nth-child(even) {
	margin-right: 0;
}

.look_predict_item:nth-child(n+3) {
	margin-top: min(calc((7 / 1700) * 100vw), 7px);
}

.look_predict_font-26,
.look_predict_font-40 {
	font-weight: 600;
	letter-spacing: .1em;
	vertical-align: bottom;
	display: inline-block;
}

.look_predict_font-26 {
	font-size: min(calc((26 / 1700) * 100vw), 26px);
}

.look_predict_font-40 {
	font-size: min(calc((40 / 1700) * 100vw), 40px);
	padding: 0 .1em;
	position: relative;
	top: 0.1em;
}

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

.look_predict_last_desc {
	line-height: 1.4;
	position: relative;
	top: -.7em;
	left: 2em;
}

.look_predict_last_imgwrap {
	width: min(calc((298 / 1700) * 100vw), 298px);
}


@media screen and (max-width:768px) {
	.lookBl {
		background: #e7edf3 url(../img/look_bg_sp.jpg) no-repeat center bottom / cover;
		padding: 0 0 calc((200 / 750) * 100vw);
	}

	.lookBl .sec-bg-tit {
		font-size: calc((125 / 750) * 100vw);
		letter-spacing: .06em;
	}

	.lookBl .sec-tit {
		padding-top: calc((107 / 750) * 100vw);
	}

	.lookBl .look_predict+.sec-tit {
		padding-top: calc((77 / 750) * 100vw);
	}

	.lookBl .sec-tit_60 {
		top: 0.2em;
	}

	.look_graph {
		width: auto;
		left: 0;
		margin-top: calc((70 / 750) * 100vw);
	}

	.look_desc {
		font-size: calc((36 / 750) * 100vw);
		max-width: inherit;
		margin-top: calc((40 / 750) * 100vw);
		letter-spacing: .065em;
	}

	.look_predict {
		max-width: inherit;
		margin-top: calc((40 / 750) * 100vw);
	}

	.look_predict_tit {
		font-size: calc((30 / 750) * 100vw);
		padding: 1.2%;
	}

	.look_predict_list {
		display: block;
		max-width: inherit;
		width: fit-content;
		margin: 0 auto;
	}

	.look_predict_item {
		width: auto;
		margin: 0 auto;
	}

	.look_predict_inner {
		padding: 3% .5% 5.5%;
	}

	.look_predict_item+.look_predict_item {
		margin-top: calc((23 / 750) * 100vw);
	}

	.look_predict_item:nth-child(2) {
		left: 0;
		position: relative;
	}

	.look_predict_font-26 {
		font-size: calc((26 / 750) * 100vw);
	}

	.look_predict_font-40 {
		font-size: calc((40 / 750) * 100vw);
	}

	.look_predict_last {
		display: block;
		margin-top: calc((38 / 750) * 100vw);
	}

	.look_predict_last_imgwrap {
		width: calc((498 / 750) * 100vw);
		margin: calc((26 / 750) * 100vw) auto 0;
	}
}


/* simplebar ----------*/
[data-simplebar].simplebar-dragging .simplebar-track {
	cursor: pointer;
}

.scroll-box::-webkit-scrollbar {
	width: 20px;
	border-radius: 0;
}

.simplebar-track.simplebar-vertical {
	width: 30px;
}

.simplebar-scrollbar.simplebar-visible:before {
	opacity: 1;
	background: #efefef;
	border-radius: 0;
	width: 20px;
	top: 10px !important;
	bottom: 10px !important;
	left: 0;
}

.scroll-box::-webkit-scrollbar-track {
	background-color: #e6e6e6;
	border-radius: 10px;
}

.scroll-box::-webkit-scrollbar-thumb {
	background-color: #8c8c8c;
	border-radius: 10px;
}

.simplebar-content-wrapper::-webkit-scrollbar {
	display: none
		/*iphoneデフォルトスクロールバー非表示*/
	;
}

.scroll-box img {
	cursor: default;
}


@media screen and (max-width:768px) {
	.simplebar-track.simplebar-vertical {
		width: 20px;
	}

	.simplebar-scrollbar.simplebar-visible:before {
		width: 10px;
	}
}



/* footer ----------*/
.footer {
	border-top: 1px solid #efefef;
	color: #000;
	font-size: 1.4rem;
	line-height: 1.5;
	font-weight: 400;
	letter-spacing: .1em;
	padding: 27px 30px 55px;
}

.footer_inner {
	display: flex;
	justify-content: space-between;
}

.footer_ul {
	display: flex;
	justify-content: space-between;
}

.footer_ul>li+li {
	margin-left: 15px;
}

.footer_ul>li>a {
	text-decoration: none;
	color: #000;
}

.footer_ul>li>a:hover {
	text-decoration: underline;
}


@media screen and (max-width:1000px) {
	.footer_inner {
		display: block;
	}

	.footer_ul {
		justify-content: center;
	}

	.footer_copyright {
		text-align: center;
		margin-top: 10px;
	}
}


@media screen and (max-width:768px) {
	.footer {
		font-size: 12px;
		padding: 27px calc((30 / 750)* 100vw) 55px;
	}

	.footer_copyright {
		margin-top: 14px;
		font-size: 10px;
		letter-spacing: 0;
	}

	.footer_ul>li>a:hover {
		text-decoration: none;
		opacity: 1;
	}
}


/* エフェクト（MV） ----------*/
.js-load-animate_1 {
	opacity: 0;
}

.js-load-animate_1.animated {
	animation: js-load-animate_1 1s ease forwards .5s;
}

@keyframes js-load-animate_1 {
	100% {
		opacity: 1;
	}
}

/* ----- */

.js-load-animate_2 {
	transform: translateX(-100px);
	opacity: 0;
}

.js-load-animate_2.animated {
	animation: js-load-animate_2 1s ease forwards 1.3s;
}

@keyframes js-load-animate_2 {
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}

/* ----- */

.js-load-animate_3 {
	transform: translateY(50px);
	opacity: 0;
}

.js-load-animate_3.animated {
	animation: js-load-animate_3 1s ease forwards 1.8s;
}

@keyframes js-load-animate_3 {
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/* ----- */

.js-load-animate_4 {
	transform: translateY(50px);
	opacity: 0;
}

.js-load-animate_4.animated {
	animation: js-load-animate_4 1s ease forwards 2s;
}

@keyframes js-load-animate_4 {
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/* ----- */

.js-load-animate_5 {
	transform: translateY(50px);
	opacity: 0;
}

.js-load-animate_5.animated {
	animation: js-load-animate_5 1s ease forwards 2.3s;
}

@keyframes js-load-animate_5 {
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/* スクロールフェード表示 ----------*/

.js-effect-d {
	opacity: 0;
	transition: ease 1.0s;
	transform: translateY(20px);
}

.js-effect-d.fadein {
	opacity: 1;
	transform: translateY(0px);
}

/* ----- */

.js-effect-l {
	opacity: 0;
	transition: ease 1.0s;
	transform: translateX(-50px);
}

.js-effect-l.fadein {
	opacity: 1;
	transform: translateX(0px);
}

/* ----- */

.js-effect-r {
	opacity: 0;
	transition: ease 1.0s;
	transform: translateX(50px);
}

.js-effect-r.fadein {
	opacity: 1;
	transform: translateX(0px);
}

/* ----- */
.js-effect-scale-d {
	opacity: 0;
	transition: ease 1.0s;
	transform: translateY(20px) scale(0.8);
}

.js-effect-scale-d.fadein {
	opacity: 1;
	transform: translateY(0px) scale(1);
}

/* マーカーアニメーション ----------*/
.marker {
	position: relative;
}

.marker::after {
	content: '';
	display: inline-block;
	width: 0;
	background: none;
	position: absolute;
	inset: 0;
	bottom: 3px;
	z-index: -1;
	margin: auto;
}

.marker.fadein::after {
	width: 100%;
	background: linear-gradient(transparent 56%, #ffd4d8 0%);
	transition: 1s width 1s;
}


@media screen and (max-width:768px) {
	.marker::after {
		bottom: 0;
	}
}


/* appBl、フォーム関連 ----------*/
.anchor-app {
	position: relative;
	top: -70px;
}

.appBl {
	padding: min(calc((71 / 1700)* 100vw), 71px) 0 110px;
	/* padding: 71px 0 110px; */
	overflow: hidden;
	font-family: "Noto Sans CJK JP", "Noto Sans JP", sans-serif;
	color: #1d4e44;
}

body.contact_confirm .appBl,
body.thanks .appBl,
body.movie .appBl {
	padding-top: 150px;
}

.appBl .inner1580 {
	padding: 0;
}

body.contact_confirm .appBl .inner1580,
body.thanks .appBl .inner1580,
body.movie .appBl .inner1580 {
	padding: 0 40px;
}

.appBl .sec-bg-tit {
	color: #e5eff7;
	font-size: min(calc((209 / 1700) * 100vw), 209px);
	letter-spacing: .005em;
	z-index: 1;
	text-align: center;
	top: -.3em;
	left: 0;
	right: 0;
}

body.contact_confirm .appBl .sec-bg-tit,
body.thanks .appBl .sec-bg-tit,
body.movie .appBl .sec-bg-tit {
	top: .54em;
	font-size: 13rem;
}

.appBl .third_tit {
	font-size: 4rem;
}

body.contact_confirm .appBl .third_tit,
body.thanks .appBl .third_tit,
body.movie .appBl .third_tit {
	padding-top: 0;
}

.app_inner {
	max-width: 1200px;
	box-sizing: border-box;
	margin: 0 auto;
}

.app_desc {
	font-size: 2rem;
	line-height: 1.8;
	font-weight: 400;
	text-align: center;
}

.app_desc.taL {
	text-align: left;
}

.app_desc_thanks {
	font-size: 3.5rem;
	font-weight: 600;
	color: rgba(32, 128, 171, 1);
}

.app_desc:nth-child(1) {
	margin-top: 44px;
}

.app_desc+.app_desc {
	margin-top: 30px;
}

.app_desc.app_desc_thanks+.app_desc {
	margin-top: 30px;
}

.app_desc_indent {
	text-indent: -2em;
	padding-left: 2em;
	display: inline-block;
	margin-top: 10px;
}

.app_form {
	margin: 42px auto 0;
	max-width: 1120px;
}

.app_form dl {
	display: flex;
	justify-content: center;
}

.app_form dl+dl {
	margin-top: 60px;
}

.app_form dl:nth-child(1)+dl:nth-child(2),
.app_form dl:nth-child(2)+dl:nth-child(3) {
	margin-top: 35px;
}

.app_form dl dt {
	max-width: 280px;
	width: 100%;
	box-sizing: border-box;
	margin-top: 14px;
	margin-right: 5.5%;
	padding-right: 7px;
	font-size: 1.8rem;
	line-height: 1.55;
	letter-spacing: .05em;
	position: relative;
	text-align: right;
	word-break: keep-all;
}

.app_form dl dt.mt_1 {
	margin-top: 5px;
}

.app_form dl dt.mt_2 {
	margin-top: 0;
}

.app_form dl:nth-child(1) dt,
.app_form dl:nth-child(2) dt,
.app_form dl:nth-child(3) dt {
	text-align: left;
	text-indent: -1.3em;
	padding-left: 1.3em;
	left: .6em;
}

.app_form dl dt.mandatory::after {
	content: '必須';
	display: inline-block;
	font-size: 1.4rem;
	font-weight: 600;
	background-color: rgba(32, 128, 171, 1);
	color: #fff;
	text-align: center;
	border-radius: 30px;
	padding: .13em 0.6em;
	position: relative;
	top: -2px;
	right: -8px;
}

.app_form dl:nth-child(1) dt.mandatory::after,
.app_form dl:nth-child(2) dt.mandatory::after,
.app_form dl:nth-child(3) dt.mandatory::after {
	width: 46px;
	text-indent: 0;
	right: 4px;
	top: 2px;
	position: absolute;
}

.app_form dl dt .chuki-ul {
	margin-top: 10px;
}

.app_form dl dt .chuki-ul li {
	font-size: 1.4rem;
	line-height: 1.55;
	text-align: left;
	text-indent: -1em;
	padding-left: 1em;
}

.app_form dl dd {
	width: 100%;
	max-width: 655px;
	box-sizing: border-box;
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: 400;
	letter-spacing: .05em;
}

.app_form input[type="checkbox"],
.app_form input[type="radio"] {
	display: none;
}

.app_form input[type="text"],
.app_form input[type="textarea"] {
	background: none repeat scroll 0 0 #efefef !important;
	border: 1px solid #efefef;
	font-size: 1.8rem;
	letter-spacing: 0.05em;
	padding: 1.1em 1.1em;
	width: 100%;
	max-width: 600px;
	box-sizing: border-box;
}

.app_form input[type="text"][name="携帯電話番号"],
.app_form input[type="text"][name="年齢"] {
	max-width: 400px;
}

.app_form textarea {
	background: #efefef;
	border: none;
	max-width: 600px;
	width: 100%;
	height: 200px;
	font-size: 1.6rem;
	padding: 1.1em 1.1em;
	box-sizing: border-box;
	border-radius: 0;
	-webkit-appearance: none
		/*iphoneのsafariで上部の影を削除*/
	;
}

.app_form label {
	position: relative;
	display: block;
	/* display: inline-block; */
	padding: 0 21px 0 29px;
	cursor: pointer;
	line-height: 1.5;
	transition: all .5s;
	word-break: keep-all;
}

.app_form label:hover {
	color: rgba(32, 128, 171, 1);
}

.app_form label:before {
	content: '';
	position: absolute;
	top: 3px;
	left: 0;
	width: 20px;
	height: 20px;
	box-sizing: border-box;
	border-radius: 5px;
	border: 1px solid #dbdbdb;
}

.app_form dl:nth-child(1) label:before {
	border-radius: 50%;
}

.app_form input[type="checkbox"]:checked+label::after {
	content: "";
	display: block;
	position: absolute;
	top: 5.5px;
	left: 6.5px;
	width: 7px;
	height: 11px;
	transform: rotate(43deg);
	border-bottom: 2px solid rgba(32, 128, 171, 1);
	border-right: 2px solid rgba(32, 128, 171, 1);
}

.app_form input[type="radio"]:checked+label::after {
	content: "";
	display: block;
	position: absolute;
	top: 7px;
	left: 4.5px;
	width: 11px;
	height: 11px;
	border-radius: 50%;
	background: rgba(32, 128, 171, 1);
}

.app_form dl dd .checkbox-wrap {
	max-width: 600px;
	width: 100%;
	display: inline-block;
}

.app_form dl dd .checkbox-ul {
	display: flex;
	/* justify-content: space-between; */
	flex-wrap: wrap;
	margin-bottom: -8px;
}

.app_form dl dd .checkbox-ul li {
	margin: 8px 0;
}

.app_form dl dd .checkbox-ul li:nth-child(3n+1) {
	/* width: 33%; */
}

.app_form dl dd .checkbox-ul li:nth-child(3n+2) {
	/* width: 35%; */
}

.app_form dl dd .checkbox-ul li:nth-child(3n+3) {
	/* width: 32%; */
}

.app_form dl:nth-child(2) dd .checkbox-ul li:nth-child(1),
.app_form dl:nth-child(2) dd .checkbox-ul li:nth-child(2),
.app_form dl:nth-child(3) dd .checkbox-ul li:nth-child(1),
.app_form dl:nth-child(3) dd .checkbox-ul li:nth-child(2),
.app_form dl:nth-child(3) dd .checkbox-ul li:nth-child(3),
.app_form dl:nth-child(3) dd .checkbox-ul li:nth-child(4) {
	width: 100%;
}

.app_form dl:nth-child(2) dd .checkbox-ul li:nth-child(3),
.app_form dl:nth-child(2) dd .checkbox-ul li:nth-child(4),
.app_form dl:nth-child(2) dd .checkbox-ul li:nth-child(5),
.app_form dl:nth-child(2) dd .checkbox-ul li:nth-child(6),
.app_form dl:nth-child(2) dd .checkbox-ul li:nth-child(7),
.app_form dl:nth-child(2) dd .checkbox-ul li:nth-child(8),
.app_form dl:nth-child(2) dd .checkbox-ul li:nth-child(9),
.app_form dl:nth-child(2) dd .checkbox-ul li:nth-child(10),
.app_form dl:nth-child(3) dd .checkbox-ul li:nth-child(5),
.app_form dl:nth-child(3) dd .checkbox-ul li:nth-child(6),
.app_form dl:nth-child(3) dd .checkbox-ul li:nth-child(7),
.app_form dl:nth-child(3) dd .checkbox-ul li:nth-child(8),
.app_form dl:nth-child(3) dd .checkbox-ul li:nth-child(9),
.app_form dl:nth-child(3) dd .checkbox-ul li:nth-child(10) {
	width: 50%;
}

.app_form dl dd .select-wrap {
	max-width: 400px;
	width: 100%;
	position: relative;
	display: inline-block;
}

.app_form dl dd .select-wrap::after {
	content: '';
	display: block;
	width: 17px;
	height: 11px;
	background: url(../img/icn_arrow_black.svg) no-repeat center / contain;
	position: absolute;
	right: 20px;
	top: calc(50% - 4px);
	z-index: 1;
}

.app_form dl dd .select-wrap .select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	background: #fff;
	position: relative;
	z-index: 1;
	border-radius: 5px;
	border: 1px solid #dbdbdb;
	font-size: 1.8rem;
	letter-spacing: 0.05em;
	padding: .87em 2.6em .87em .9em;
	box-sizing: border-box;
}

.app_form dl dd .select-wrap .select option {
	color: #000;
}

.app_form dl dd .select-wrap .select::-ms-expand {
	display: none;
}

.app_form input[type="text"][required=""] {
	color: #341b11;
}

.app_form ::placeholder {
	color: #ccc
}

.app_form .policy-box {
	border: 1px solid #dbdbdb;
	background-color: #fff;
	margin: 60px auto;
	padding: 1.05em 3.3em 1.05em 1.3em;
	max-width: 867px;
	width: 100%;
	max-height: 150px;
	box-sizing: border-box;
	position: relative;
	left: 9px;
}

.app_form .policy-box_tit {
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: 600;
	letter-spacing: .05em;
	margin-bottom: 15px;
}

.app_form .policy-box_desc,
.app_form .policy-box_ul,
.policy-box_sec-tit {
	font-size: 1.4rem;
	line-height: 1.57;
	font-weight: 400;
	letter-spacing: .05em;
}

.policy-box_sec-tit {
	font-weight: bold;
}

.app_form .policy-box_desc+.policy-box_desc,
.app_form .policy-box_ul+.policy-box_desc,
.app_form .policy-box_desc+.policy-box_ul {
	margin-top: 10px;
}

.app_form .policy-box_ul+.policy-box_desc.fwB,
.app_form .policy-box_ul+.policy-box_sec-tit,
.app_form .policy-box_desc+.policy-box_sec-tit {
	margin-top: 20px;
}

.app_form .policy-box_ul li {
	text-indent: -1em;
	padding-left: 2em;
}


.contact_common .submit_bt {
	display: block;
	text-align: center;
	width: 300px;
	box-sizing: border-box;
	border-radius: 100px;
	padding: .63em 0;
	font-size: 2.2rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	border: 0;
	position: relative;
	color: #fff;
	background-color: rgba(32, 128, 171, 1);
	margin-top: -7px;
	transition: all .5s;
}

.contact_common form .submit_bt:disabled {
	background: #BBB;
	pointer-events: none;
	color: #333;
}

.contact_common .submit_bt:hover {
	opacity: 0.7;
	cursor: pointer;
	transform: scale(1.1);
}

.appBl video {
	width: 100%;
	height: auto;
	vertical-align: middle;
}

.app_moviewrap {
	max-width: 1000px;
	margin: 50px auto;
	cursor: pointer;
}

.app_moviewrap+.app_moviewrap {
	margin-top: 50px;
	margin-bottom: 100px;
}

body.contact_confirm,
body.thanks,
body.movie {
	padding-top: 100px;
}

.btn.back .return_bt {
	max-width: 600px;
	text-decoration: none;
	cursor: pointer;
	transition: all .5s;
	margin: 50px auto 100px;
	display: block;
	text-align: center;
	width: 300px;
	box-sizing: border-box;
	border-radius: 100px;
	padding: .63em 0;
	font-size: 2.2rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	border: 0;
	position: relative;
	color: #fff;
	background-color: rgba(32, 128, 171, 1);
}

.btn.back .return_bt:hover {
	opacity: 0.7;
	transform: scale(1.1);
}

.btn.back .return_bt::before {
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(225deg);
	position: absolute;
	top: calc(50% - 5px);
	left: 20px;
	transition: all 0.5s ease 0s;
}

.btn.back .return_bt:hover::before {
	left: 10px;
}

.btn_home_back,
.btn_home_back:link,
.btn_home_back:visited {
	text-decoration: none;
	cursor: pointer;
	transition: all .5s;
	margin: 50px auto;
	display: block;
	text-align: center;
	width: 300px;
	box-sizing: border-box;
	border-radius: 100px;
	padding: .63em 0;
	font-size: 2.2rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	border: 0;
	position: relative;
	color: #fff;
	background-color: rgba(32, 128, 171, 1);
}

.btn_home_back:hover {
	transform: scale(1.1);
}

.btn_home_back::before,
.btn_home_back:link::before,
.btn_home_back:visited::before {
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
	transform: rotate(135deg);
	position: absolute;
	top: calc(50% - 5px);
	right: 20px;
	transition: all 0.5s ease 0s;
}

.btn_home_back:hover::before,
.btn_home_back:link:hover::before,
.btn_home_back:visited:hover::before {
	right: 10px;
}

body.contact_common .btn_wrap {
	display: flex;
	justify-content: center;
	margin: 50px auto;
}

body.contact_common .btn_wrap .btn_back_wrap,
body.contact_common .btn_wrap .btn_submit_wrap {
	position: relative;
	width: 300px;
	box-sizing: border-box;
}

body.thanks.contact_common .btn_wrap .btn_back_wrap {
	width: 400px;
}

body.contact_common .btn_wrap .btn_back_wrap:hover,
body.contact_common .btn_wrap .btn_submit_wrap:hover {
	text-decoration: none;
}

body.contact_common .btn_wrap .btn_back_wrap {
	margin-right: min(calc((60 / 1700)* 100vw), 60px);
}

body.thanks.contact_common .btn_wrap .btn_back_wrap {
	margin-right: 0;
}

body.contact_common .btn_wrap button[type="button"],
body.contact_common .btn_wrap input[type="back"],
body.contact_common .btn_wrap input[type="submit"] {
	max-width: 600px;
	height: auto;
	text-decoration: none;
	cursor: pointer;
	transition: all .5s;
	margin: 50px auto;
	display: block;
	text-align: center;
	width: 300px;
	height: 69px;
	box-sizing: border-box;
	border-radius: 100px;
	padding: .63em 0;
	font-size: 2.2rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	border: rgba(32, 128, 171, 1) 1px solid;
	position: relative;
	color: #fff;
	background-color: #fff;
}

body.contact_common .btn_wrap input[type="submit"] {
	background-color: rgba(32, 128, 171, 1);
}

body.contact_common .btn_wrap input[type="back"],
body.contact_common .btn_wrap button[type="button"] {
	background: #fff;
	color: rgba(32, 128, 171, 1);
}

body.contact_common .btn_wrap input[type="back"]:hover,
body.contact_common .btn_wrap button[type="button"]:hover,
body.contact_common .btn_wrap input[type="submit"]:hover {
	opacity: .7;
	transform: scale(1.1);
}

body.contact_common .btn_wrap .btn_submit_wrap::before,
body.contact_common .btn_wrap .btn_back_wrap::before {
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	position: absolute;
	top: calc(50% - 4px);
	transition: all 0.5s ease 0s;
	z-index: 1;
}

body.contact_common .btn_wrap .btn_submit_wrap::before {
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(45deg);
	right: 20px;
	transition: all .5s;
}

body.contact_common .btn_wrap .btn_submit_wrap:hover::before {
	right: 10px;
}

body.contact_common .btn_wrap .btn_back_wrap::before {
	border-top: 1px solid rgba(32, 128, 171, 1);
	border-right: 1px solid rgba(32, 128, 171, 1);
	transform: rotate(225deg);
	left: 20px;
	transition: all .5s;
}

body.contact_common .btn_wrap .btn_back_wrap:hover::before {
	left: 10px;
}

body.contact_common .flame__lightred-heading {
	text-align: center;
	font-size: 2.5rem;
	letter-spacing: 0.1em;
	line-height: 1.5;
}

.error_messe {
	color: rgb(243, 90, 58);
	font-size: 2.1rem;
	text-align: center;
	font-weight: bold;
	letter-spacing: 0.15em;
	line-height: 1.8;
	margin-top: 30px;
}

.formTable {
	width: fit-content;
	margin: 50px auto 0;
}

.formTable th,
.formTable td {
	font-size: 1.8rem;
	letter-spacing: 0.15em;
	line-height: 1.6;
	padding: 8px 0;
	text-align: left;
}

.formTable th {
	font-weight: 600;
	width: 11em;
	margin-right: 1em;
	box-sizing: border-box;
	vertical-align: text-bottom;
	display: block;
}

.formTable td {
	font-weight: 400;
	width: calc(100% - 12em);
	box-sizing: border-box;
}


@media screen and (max-width:1000px) {
	.appBl .third_tit {
		font-size: 3rem;
	}

	body.contact_confirm .appBl .third_tit,
	body.thanks .appBl .third_tit,
	body.movie .appBl .third_tit {
		font-size: 4rem;
	}

	.app_form dl dd .checkbox-ul li:nth-child(3n+1),
	.app_form dl dd .checkbox-ul li:nth-child(3n+2),
	.app_form dl dd .checkbox-ul li:nth-child(3n+3) {
		width: 50%;
	}

	.app_form .policy-box {
		left: 0;
	}
}


@media screen and (max-width:768px) {
	.anchor-app {
		top: -50px;
	}

	.appBl {
		padding: calc((68 / 750) * 100vw) 0 40px;
	}

	body.contact_confirm .appBl,
	body.thanks .appBl,
	body.movie .appBl {
		padding: calc((68 / 750) * 100vw) 0 40px;
	}

	body.contact_confirm .appBl .inner1580,
	body.thanks .appBl .inner1580,
	body.movie .appBl .inner1580 {
		padding: 0 calc((30 / 750) * 100vw);
	}

	.appBl .sec-bg-tit {
		font-size: calc((125 / 750) * 100vw);
		top: -.5em;
	}

	body.contact_confirm .appBl .sec-bg-tit,
	body.thanks .appBl .sec-bg-tit,
	body.movie .appBl .sec-bg-tit {
		top: calc((29 / 750) * 100vw);
		font-size: calc((85 / 750) * 100vw);
	}

	.appBl .third_tit {
		font-size: calc((40 / 750) * 100vw);
		padding-top: 0;
	}

	body.contact_confirm .appBl .third_tit,
	body.thanks .appBl .third_tit,
	body.movie .appBl .third_tit {
		font-size: calc((38 / 750) * 100vw);
	}

	.app_desc {
		font-size: 13px;
		line-height: 2;
	}

	.app_desc:nth-child(1) {
		margin-top: 22px;
	}

	.app_desc+.app_desc {
		margin-top: 15px;
	}

	.app_desc.app_desc_thanks+.app_desc {
		margin-top: 20px;
	}

	.app_desc_thanks {
		font-size: 24px;
	}

	.app_form {
		margin: 26px auto 0;
	}

	.app_form dl {
		display: block;
	}

	.app_form dl+dl {
		margin-top: 30px;
	}

	.app_form dl:nth-child(1)+dl:nth-child(2),
	.app_form dl:nth-child(2)+dl:nth-child(3) {
		margin-top: 17px;
	}

	.app_form dl dt {
		max-width: inherit;
		width: auto;
		margin-top: 14px;
		margin-right: 0;
		padding-right: 0;
		font-size: 15px;
		text-align: left;
	}

	.app_form dl:nth-child(1) dt,
	.app_form dl:nth-child(2) dt,
	.app_form dl:nth-child(3) dt {
		display: inline-block;
		left: 0;
	}

	.app_form dl:nth-child(1) dt.mandatory::after,
	.app_form dl:nth-child(2) dt.mandatory::after,
	.app_form dl:nth-child(3) dt.mandatory::after {
		width: auto;
		right: -8px;
		top: -2px;
		position: relative;
	}

	.app_form dl dt.mt_1 {
		margin-top: 0;
	}

	.app_form dl dt.mandatory::after {
		font-size: 10px;
		text-align: center;
		border-radius: 30px;
		padding: .02em 0.6em .1em;
		position: relative;
		top: -2px;
		right: -8px;
	}

	.app_form dl dt .chuki-ul {
		margin-top: 5px;
	}

	.app_form dl dt .chuki-ul li {
		font-size: 11px;
	}

	.app_form dl dd {
		width: auto;
		max-width: inherit;
		font-size: 14px;
		margin-top: 9px;
	}

	.app_form input[type="text"],
	.app_form input[type="textarea"] {
		font-size: 16px;
		padding: .85em 1.1em;
		max-width: inherit;
	}

	.app_form dl dd .select-wrap::after {
		width: 10.5px;
		height: 12px;
		right: 15px;
		top: calc(50% - 5px);
	}

	.app_form dl dd .select-wrap .select {
		border-radius: 2.5px;
		font-size: 16px;
		padding: .87em 2.6em .87em .9em;
	}

	.app_form dl dd .checkbox-ul li {
		margin: 5px 0;
	}

	.app_form dl dd .checkbox-ul li:nth-child(3n+1),
	.app_form dl dd .checkbox-ul li:nth-child(3n+2),
	.app_form dl dd .checkbox-ul li:nth-child(3n+3) {
		width: 50%;
	}

	.app_form textarea {
		max-width: inherit;
		height: 150px;
		font-size: 16px;
		padding: 1.1em 1.1em;
	}

	.app_form .policy-box {
		margin: 30px auto;
		padding: 1.7em 2.2em 1.7em 1.1em;
		max-width: inherit;
		max-height: 150px;
	}

	.app_form .policy-box_tit {
		font-size: 12px;
		margin-bottom: 13px;
	}

	.app_form .policy-box_desc {
		font-size: 10px;
		line-height: 2;
	}

	.app_form label {
		padding: 0 0 0 16px;
	}

	.app_form label:hover {
		color: #1d4e44;
	}

	.app_form label:before {
		top: 5px;
		width: 12px;
		height: 12px;
		border-radius: 2.5px;
	}

	.app_form input[type="checkbox"]:checked+label::after {
		top: 5.5px;
		left: 3.5px;
		width: 5px;
		height: 8px;
	}

	.app_form input[type="radio"]:checked+label::after {
		top: 7.3px;
		left: 2.3px;
		width: 7px;
		height: 7px;
	}

	.contact_common .submit_bt {
		width: 180px;
		padding: .6em 0;
		font-size: 15px;
		margin: -2px auto 0;
	}

	.contact_common .submit_bt:hover {
		opacity: 1;
		transform: scale(1);
	}

	.btn_home_back,
	.btn_home_back:link,
	.btn_home_back:visited {
		width: 180px;
		padding: .6em 0 .7em;
		font-size: 15px;
	}

	.btn_home_back:hover {
		transform: scale(1);
		opacity: 1;
	}

	.btn_home_back::before,
	.btn_home_back:link::before,
	.btn_home_back:visited::before {
		width: 7px;
		height: 7px;
		top: calc(50% - 3.5px);
	}

	.btn_home_back:hover::before,
	.btn_home_back:link:hover::before,
	.btn_home_back:visited:hover::before {
		right: 20px;
	}

	body.contact_common .btn_wrap {
		width: fit-content;
	}

	body.contact_common .btn_wrap .btn_back_wrap {
		margin: 0 20px 0 auto;
		width: fit-content;
	}

	body.contact_common .btn_wrap .btn_back_wrap,
	body.contact_common .btn_wrap .btn_submit_wrap {
		width: auto;
	}

	body.contact_common .btn_wrap button[type="button"],
	body.contact_common .btn_wrap input[type="back"],
	body.contact_common .btn_wrap input[type="submit"] {
		width: 130px;
		height: 40px;
		padding: 0 0 .06em .3em;
		font-size: 15px;
		margin: 0;
	}

	body.contact_common .btn_wrap input[type="back"]:hover,
	body.contact_common .btn_wrap button[type="button"]:hover,
	body.contact_common .btn_wrap input[type="submit"]:hover {
		opacity: 1;
		transform: scale(1);
	}

	body.contact_common .btn_wrap .btn_submit_wrap::before,
	body.contact_common .btn_wrap .btn_back_wrap::before {
		width: 7px;
		height: 7px;
		top: calc(50% - 3.5px);
	}

	body.contact_common .btn_wrap .btn_back_wrap::before,
	body.contact_common .btn_wrap .btn_back_wrap:hover::before {
		left: 15px;
	}

	body.contact_common .btn_wrap .btn_submit_wrap::before,
	body.contact_common .btn_wrap .btn_submit_wrap:hover::before {
		right: 15px;
	}

	.btn.back .return_bt {
		display: flex;
		align-items: center;
		justify-content: center;
		max-width: 180px;
		width: 300px;
		height: 40px;
		box-sizing: border-box;
		padding: 0 0 .1em;
		font-size: 15px;
	}

	.btn.back .return_bt::before,
	.btn.back .return_bt:hover::before {
		width: 7px;
		height: 7px;
		top: calc(50% - 3.5px);
		left: 15px;
	}

	.btn.back .return_bt:hover {
		opacity: 1;
		transform: scale(1);
	}

	.formTable {
		width: auto;
		margin: 30px auto 0;
	}

	.formTable th,
	.formTable td {
		font-size: 13px;
		letter-spacing: 0;
		word-break: break-all;
	}

	.formTable th {
		letter-spacing: 0.05em;
	}
}


@media screen and (max-width:370px) {
	.appBl .third_tit {
		padding-top: 39px;
	}
}


/* reCAPTCHAマーク(バッジ)の移動 ----------*/
.grecaptcha-badge {
	/* top: 829px; */
}

.error .grecaptcha-badge {
	/* top: 547px !important; */
}

/* :root {
	--recaptcha-badge-position: 130px;
} */

/* recaptcha badge */
.grecaptcha-badge {
	/* margin-bottom: var(--recaptcha-badge-position); */
	z-index: 9999;
	bottom: 120px !important;
}

/* @media(min-width:992px) {
	.grecaptcha-badge {
		margin-bottom: 0;
	}
} */

@media screen and (max-width:768px) {
	.grecaptcha-badge {
		bottom: 30px !important;
	}

}


/* モーダル（ポップアップ）
-------------------------------- */
.md-overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: .85;
	z-index: 10000;
}

.md-contents {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	width: 92%;
	height: auto;
	transform: translate(-50%, -50%);
	z-index: 10000;
	max-width: 450px;
	box-sizing: border-box;
}

.md-inner {
	padding: 25px 10px 30px;
	background: #fff;
	height: auto;
	position: relative;
	border-radius: 5px;
}

.md-xmark {
	position: absolute;
	top: -34px;
	right: -4px;
	width: 33px;
	height: 22px;
	z-index: 9999;
	cursor: pointer;
}

.md-xmark span {
	height: auto;
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #fff;
	border-radius: 4px;
}

.md-xmark span:nth-of-type(1) {
	top: 0;
	transform: translateY(10px) rotate(-45deg);
}

.md-xmark span:nth-of-type(2) {
	bottom: 0;
	transform: translateY(-10px) rotate(45deg);
}

.md-tit {
	font-size: 0.93rem;
	line-height: 1.5;
	text-align: center;
	padding-bottom: 12px;
}


/* 横スクロール */
.modal .scroll-box {
	overflow-x: auto;
	padding-bottom: 15px;
	-webkit-overflow-scrolling: touch;
	cursor: pointer;
}

.modal .scroll-box div img {
	max-width: 100%;
	min-width: 710px;
	vertical-align: top;
}

/* スクロールバー全体の高さ */
.modal .scroll-box::-webkit-scrollbar {
	height: 7px;
}

/* スクロールバー全体の背景 */
.modal .scroll-box::-webkit-scrollbar-track {
	background: #eee;
}

/* スクロールバーの動く部分 */
.modal .scroll-box::-webkit-scrollbar-thumb {
	background: #aaa;
	border: none;
}

/* スクロールバーの動く部分のホバー（マウスオーバー） */
.modal .scroll-box::-webkit-scrollbar-thumb:hover {
	background: #999;
}


@media (max-width: 767px) {
	.md-btn {
		border: 1px solid rgba(99, 154, 184, 1);
		background: #fff;
		padding: 50px 10px 55px;
		position: relative;
	}

	.md-btn::after {
		content: '';
		display: block;
		width: 40px;
		height: 40px;
		background: url(../img/icn_glass.png) no-repeat center top / contain;
		position: absolute;
		right: 0;
		bottom: 0;
		pointer-events: none;
	}
}