
.pmd-secTtl {
	text-align: center;
}
.pmd-secTtl .en {
	font-family: "Caveat", cursive;
	font-weight: 400;
	font-size: 1.4rem;
}
.pmd-secTtl .jp {
	display: flex;
	margin: 6px auto 0;
	align-items: center;
	justify-content: center;
	background: no-repeat center top;
	font-size: 3rem;
	color: #fff;
	height: 67px;
	box-sizing: border-box;
	padding-bottom: 10px;
	background-size: cover;
	font-weight: 500;
	letter-spacing: 0.1em;
}

/* SP
-------------------------------------*/
@media screen and (max-width: 768px) {
	.pmd-secTtl {
	}
	.pmd-secTtl .en {
		font-size: 2.93vw;
	}
	.pmd-secTtl .jp {
		margin: 1.33vw auto 0;
		font-size: 5.07vw;
		height: 13.47vw !important;
		padding-bottom: 1.7vw;
		background-image: url(../images/sp_ttl_bg.png) !important;
		width: 100% !important;
	}
}



/*====================================
アニメーション
====================================*/
.js-animeElm,
.js-animeParent .js-animeChild,
.js-animeHasCont::before,
.js-animeHasCont::after {
	transition: opacity 0.6s linear, transform 0.8s ease-out;
	opacity: 0;
	transform: translateY(50px);
}


/* SP
-------------------------------------*/
@media screen and (max-width: 768px) {
	.js-animeElm,
	.js-animeParent .js-animeChild {
		transform: translateY(7vw);
	}
}

.js-animeElm.js-animeShow,
.js-animeParent.js-animeShow .js-animeChild,
.js-animeHasCont.js-animeShow::before,
.js-animeHasCont.js-animeShow::after {
	opacity: 1;
	transform: translateY(0);
}



.secMain {
	padding: 0 20px;
	position: relative;
}
.secMain::before,
.secMain::after {
	content: "";
	display: block;
	position: absolute;
	pointer-events: none;
	width: 222px;
	height: 887px;
	background: url(../images/main_bg_side.png) no-repeat center / cover;
	top: 88px;
	left: 50%;
}
.secMain::before {
	margin-left: -927px;
}
.secMain::after {
	margin-left: 702px;
}
.secMain .secInr {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding-top: 150px;
	padding-bottom: 100px;
	text-align: center;
	letter-spacing: 0.1em;
	position: relative;
}
.secMain .secInr::before,
.secMain .secInr::after {
	content: "";
	display: block;
	position: absolute;
	pointer-events: none;
}
.secMain .secInr::before {
	width: 388px;
	height: 100px;
	background: url(../images/main_bg01.png) no-repeat center / cover;
	top: 30px;
	left: 50%;
	margin-left: -297px;
}
.secMain .secInr::after {
	width: 1145px;
	height: 638px;
	background: url(../images/main_bg02.png) no-repeat center / cover;
	top: 88px;
	left: 50%;
	margin-left: -573px;
}
.secMain .secTtl img {
	width: 650px;
	height: auto;
}
.secMain .lead {
	line-height: 1.75;
	font-size: 1.6rem;
	margin-top: 20px;
}
.secMain .strong {
	margin-top: 20px;
	font-weight: 500;
	font-size: 2.4rem;
}
.secMain .txt {
	font-size: 1.6rem;
	line-height: 1.75;
	margin-top: 5px;
}
.secMain .chara {
	margin-top: 25px;
}
.secMain .chara img {
	width: 170px;
	height: auto;
}

/* SP
-------------------------------------*/
@media screen and (max-width: 768px) {
	.secMain {
		padding: 0 5.33vw;
	}
	.secMain::after,
	.secMain::before {
		content: none;
	}
	.secMain .secInr {
		padding-top: 20.13vw;
		padding-bottom: 10.93vw;
		letter-spacing: 0.1em;
		position: static;
	}
	.secMain .secInr::before {
		width: 94.93vw;
		height: 38.8vw;
		background-image: url(../images/sp_main_bg01.png);
		top: 18.53vw;
		left: 2.93vw;
		margin-left: 0;
	}
	.secMain .secInr::after {
		content: none;
	}
	.secMain .secTtl img {
		width: 64.53vw;
	}
	.secMain .lead {
		line-height: 1.933;
		font-size: 4vw;
		margin-top: 3.2vw;
	}
	.secMain .strong {
		margin-top: 5.33vw;
		font-size: 5.33vw;
	}
	.secMain .txt {
		font-size: 4vw;
		line-height: 1.933;
		margin-top: 2vw;
	}
	.secMain .chara {
		margin-top: 5.87vw;
		position: relative;
	}
	.secMain .chara::after {
		content: "";
		display: block;
		position: absolute;
		width: 90.4vw;
		height: 29.6vw;
		background: url(../images/sp_main_bg02.png) no-repeat center / cover;
		bottom: 0;
		left: 0;
	}
	.secMain .chara img {
		width: 22.13vw;
	}
}

/* アニメーション
------------------------------------*/
.secMain .secTtl {
	transition-delay: 200ms;
}
.secMain .lead {
	transition-delay: 300ms;
}
.secMain .strong {
	transition-delay: 400ms;
}
.secMain .txt {
	transition-delay: 500ms;
}
.secMain .chara {
	transition-delay: 800ms;
}
.secMain .secInr::before,
.secMain .secInr::after {
	transition-delay: 1200ms;
}

/* SP
-------------------------------------*/
@media screen and (max-width: 768px) {
	.secMain .secInr::before {
		transition-delay: 300ms;
	}
}



.secMovie {
	padding: 0 20px 180px;
	position: relative;
}
.secMovie::before,
.secMovie::after {
	content: "";
	display: block;
	position: absolute;
	pointer-events: none;
	top: 317px;
	left: 50%;
}
.secMovie::before {
	width: 230px;
	height: 2838px;
	background: url(../images/movie_bg_side01.png) no-repeat center / cover;
	margin-left: -941px;
}
.secMovie::after {
	width: 230px;
	height: 2620px;
	background: url(../images/movie_bg_side02.png) no-repeat center / cover;
	margin-left: 688px;
}
.secMovie .secInr {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	text-align: center;
	letter-spacing: 0.1em;
}
.secMovie .secInr::before {
	content: "";
	display: block;
	position: absolute;
	pointer-events: none;
	top: -8px;
	width: 1089px;
	height: 219px;
	left: 50%;
	margin-left: -571px;
	background: url(../images/movie_bg01.png) no-repeat center / cover;
}
.secMovie .pmd-secTtl .jp {
	background-image: url(../images/movie_ttl_bg.png);
	width: 487px;
	height: 66px;
}
.secMovie .secLead {
	font-size: 3rem;
	margin-top: 42px;
	letter-spacing: 0.1em;
}
.secMovie .item {
	margin-top: 150px;
}
.secMovie .item:first-child {
	margin-top: 105px;
}
.secMovie .item {
	margin-top: 150px;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
.secMovie .item .txtCol {
	width: 357px;
	text-align: left;
}
.secMovie .item:nth-child(odd) .txtCol {
	order: 2;
}
.secMovie .item .txtCol .itemTtl {
	color: #cb171d;
	font-weight: 700;
	line-height: 1.156;
	font-size: 3.2rem;
	padding-bottom: 16px;
	border-bottom: 3px dashed #cb171d;
	letter-spacing: 0.1em;
	position: relative;
}
.secMovie .item .txtCol .dsc {
	font-size: 1.8rem;
	line-height: 1.389;
	margin-top: 20px;
}
.secMovie .item .txtCol .spThum {
	display: none;
}
.secMovie .item .txtCol .hokenCol {
	margin-top: 20px;
	padding-bottom: 6px;
}
.secMovie .item .txtCol .hokenCol .labelLine .label {
	color: #fff;
	background: #cb171d;
	display: inline-block;
	padding: 8px 10px 6px;
	border-radius: 20px;
	font-size: 1.2rem;
	font-weight: 700;
}
.secMovie .item .txtCol .hokenCol .name {
	font-size: 1.8rem;
	font-weight: 700;
	color: #cb171d;
	margin-top: 5px;
	line-height: 1.5;
}
.secMovie .item .txtCol .hokenCol .bnr {
	margin-top: 10px;
	max-width: 280px;
}
.secMovie .item .txtCol .hokenCol .bnr img {
	width: 100%;
	height: auto;
}
.secMovie .item .txtCol .hokenCol .hokenDsc {
	margin-top: 10px;
	line-height: 1.313;
	font-size: 1.6rem;
}
.secMovie .item .thumCol {
	width: 800px;
	position: relative;
}
.secMovie .item .thumCol a::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 66px;
	height: 66px;
	background: url(../images/movie_thum_arw.svg) no-repeat center / cover;
	margin-top: -33px;
	margin-left: -33px;
	z-index: 2;
}
.secMovie .item .thumCol a {
	display: block;
}
.secMovie .item .thumCol .thumImg {
	width: 100%;
	height: auto;
}
.secMovie .item .thumCol .movieWrap {
}
.secMovie .item .thumCol .movieWrap {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.secMovie .item .thumCol .movieWrap iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
.secMovie .item .thumCol .numLabel {
	position: absolute;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 125px;
	height: 125px;
	border-radius: 100%;
	background: #cb171d;
	box-sizing: border-box;
	padding-bottom: 5px;
	color: #fff;
	z-index: 2;
}
.secMovie .item .thumCol .numLabel .numLine .unit {
	font-size: 1.2rem;
}
.secMovie .item .thumCol .numLabel .numLine .num {
	font-size: 4rem;
	font-family: "Caveat", cursive;
	margin-left: -5px;
}
.secMovie .item .thumCol .numLabel .labelTxt {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.25;
	margin-top: 3px;
}
.secMovie .item .thumCol::before,
.secMovie .item .thumCol::after,
.secMovie .item .txtCol .itemTtl::after {
	content: "";
	display: block;
	position: absolute;
	z-index: 2;
	pointer-events: none;
}
.secMovie .item .thumCol .numLabel {
	pointer-events: none;
}
.secMovie .item:nth-child(odd) .txtCol .itemTtl::after {
	width: 97px;
	height: 138px;
	background: url(../images/movie_type01_obj02.png) no-repeat center center;
	background-size: cover;
	top: -78px;
	right: -40px;
}
.secMovie .item:nth-child(odd) .thumCol::before {
	width: 148px;
	height: 165px;
	background: url(../images/movie_type01_obj01.png) no-repeat center center;
	background-size: cover;
	top: -84px;
	left: -30px;
}
.secMovie .item:nth-child(odd) .thumCol::after {
	width: 143px;
	height: 91px;
	background: url(../images/movie_obj03.png) no-repeat center center;
	background-size: cover;
	bottom: -35px;
	right: -33px;
}
.secMovie .item:nth-child(odd) .thumCol .numLabel {
	top: -20px;
	right: -20px;
}

.secMovie .item:nth-child(even) .txtCol .itemTtl::after {
	width: 97px;
	height: 138px;
	background: url(../images/movie_type02_obj02.png) no-repeat center center;
	background-size: cover;
	top: -77px;
	right: -15px;
}
.secMovie .item:nth-child(even) .thumCol::before {
	width: 131px;
	height: 139px;
	background: url(../images/movie_type02_obj01.png) no-repeat center center;
	background-size: cover;
	top: -57px;
	right: -22px;
}
.secMovie .item:nth-child(even) .thumCol::after {
	width: 143px;
	height: 91px;
	background: url(../images/movie_obj03.png) no-repeat center center;
	background-size: cover;
	bottom: -35px;
	left: -33px;
}
.secMovie .item:nth-child(even) .thumCol .numLabel {
	top: -20px;
	left: -20px;
}

/* SP
-------------------------------------*/
@media screen and (max-width: 768px) {
	.secMovie {
		padding: 0 0 21.33vw;
	}
	.secMovie::before,
	.secMovie::after {
		content: none;
	}
	.secMovie .secInr {
	}
	.secMovie .secInr::before {
		top: 23.33vw;
		width: 87.47vw;
		height: 23.33vw;
		left: 1.2vw;
		margin-left: 0;
		background-image: url(../images/sp_movie_bg01.png);
	}
	.secMovie .secLead {
		font-size: 5.87vw;
		margin-top: 5.87vw;
		letter-spacing: 0.1em;
		line-height: 1.591;
	}
	.secMovie .itemList {
		padding: 0 5.33vw;
	}
	.secMovie .item {
		margin-top: 18.93vw;
	}
	.secMovie .item:first-child {
		margin-top: 8.8vw;
	}
	.secMovie .item {
		display: block;
	}
	.secMovie .item .txtCol {
		width: auto;
	}
	.secMovie .item .txtCol .itemTtl {
		line-height: 1.259;
		font-size: 7.2vw;
		padding-bottom: 4vw;
		border-bottom: 0.4vw dashed #cb171d;
		letter-spacing: 0.1em;
	}
	.secMovie .item .txtCol .dsc {
		font-size: 4.8vw;
		line-height: 1.611;
		margin-top: 5.33vw;
	}
	.secMovie .item .txtCol .spThum {
		display: block;
	}
	.secMovie .item .txtCol .hokenCol {
		margin-top: 6.67vw;
		padding-bottom: 0;
		position: relative;
	}
	.secMovie .item .txtCol .hokenCol .labelLine .label {
		padding: 0.9vw 2.67vw 0.6vw;
		border-radius: 40px;
		font-size: 2.93vw;
	}
	.secMovie .item .txtCol .hokenCol .name {
		font-size: 4.53vw;
		margin-top: 0.8vw;
		line-height: 1.3;
	}
	.secMovie .item .txtCol .hokenCol .bnr {
		margin-top: 0;
		position: absolute;
		top: 0.4vw;
		right: 0;
		max-width: none;
		width: 40.8vw;
	}
	.secMovie .item .txtCol .hokenCol .bnr img {
	}
	.secMovie .item .txtCol .hokenCol .hokenDsc {
		margin-top: 3.2vw;
		line-height: 1.313;
		font-size: 4.27vw;
	}
	.secMovie .item .pcThum {
		display: none;
	}
	.secMovie .item .thumCol {
		width: auto;
		margin-top: 6.8vw;
	}
	.secMovie .item .thumCol a::before {
		width: 12.8vw;
		height: 12.8vw;
		margin-top: -6.4vw;
		margin-left: -6.4vw;
	}
	.secMovie .item .thumCol .thumImg {
	}
	.secMovie .itemList .item .thumCol .numLabel {
		width: 24.8vw;
		height: 24.8vw;
		padding-bottom: 0.67vw;
		right: -4.27vw;
		left: auto;
		top: -6vw;
	}
	.secMovie .item .thumCol .numLabel .numLine .unit {
		font-size: 2.67vw;
	}
	.secMovie .item .thumCol .numLabel .numLine .num {
		font-size: 9.33vw;
		margin-left: -0.67vw;
	}
	.secMovie .item .thumCol .numLabel .labelTxt {
		font-size: 2.93vw;
		line-height: 1.273;
		margin-top: 0.8vw;
		text-align: center;
		font-weight: 500;
	}
	.secMovie .itemList .item .txtCol .itemTtl::after {
		width: 17.07vw;
		height: 22.1vw;
		background-image: url(../images/sp_movie_obj02.png);
		top: -6vw;
		right: -2.27vw;
	}
	.secMovie .itemList .item .thumCol::before {
		width: 16.67vw;
		height: 18.67vw;
		background-image: url(../images/movie_type01_obj01.png);
		top: -5.6vw;
		left: -3.33vw;
	}
	.secMovie .itemList .item .thumCol::after {
		width: 18.93vw;
		height: 12.13vw;
		background-image: url(../images/sp_movie_obj03.png);
		bottom: -3.33vw;
		right: -3.33vw;
		left: auto;
	}
}

/* アニメーション
------------------------------------*/
.secMovie .item .thumCol .numLabel {
	transition-delay: 100ms;
}
.secMovie .item .thumCol::before {
	transition-delay: 300ms;
}
.secMovie .item .thumCol::after {
	transition-delay: 600ms;
}
.secMovie .item .txtCol .itemTtl::after {
	transition-delay: 300ms;
}
.secMovie .item .txtCol .hokenCol .name {
	transition-delay: 200ms;
}
.secMovie .item .txtCol .hokenCol .bnr {
	transition-delay: 400ms;
}
.secMovie .item .txtCol .hokenCol .hokenDsc {
	transition-delay: 600ms;
}


.secAbout {
	padding: 0 20px 135px;
	position: relative;
}
.secAbout::before,
.secAbout::after {
	content: "";
	display: block;
	position: absolute;
	pointer-events: none;
	top: 15px;
	left: 50%;
}
.secAbout::before {
	width: 173px;
	height: 833px;
	background: url(../images/about_bg_side01.png) no-repeat center / cover;
	margin-left: -906px;
}
.secAbout::after {
	width: 173px;
	height: 673px;
	background: url(../images/about_bg_side02.png) no-repeat center / cover;
	margin-left: 722px;
}
.secAbout .secInr {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	text-align: center;
	position: relative;
}
.secAbout .secInr::before {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 50px;
	width: 460px;
	height: 171px;
	margin-left: -596px;
	pointer-events: none;
	background: url(../images/about_obj.png) no-repeat center / cover;
}
.secAbout .pmd-secTtl .jp {
	background-image: url(../images/about_ttl_bg.png);
	width: 494px;
	height: 67px;
}
.secAbout .secCts {
	position: relative;
	padding-top: 83px;
	text-align: left;
}
.secAbout .secCts .ctsTtl {
	line-height: 1.25;
	font-size: 3.2rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	position: relative;
}
.secAbout .secCts .ctsTtl .ttlTxt {
	position: relative;
	z-index: 2;
}
.secAbout .secCts .txtWrap {
	position: relative;
	z-index: 2;
}
.secAbout .secCts .txtWrap p {
	margin-top: 28px;
	font-size: 1.6rem;
	line-height: 2.25;
	letter-spacing: 0.15em;
}
.secAbout .secCts .txtWrap .txtStrong {
	font-weight: bold;
	font-size: 1.7rem;
}
.secAbout .secCts .img {
	position: absolute;
	bottom: 0;
	right: 30px;
	width: 581px;
}
.secAbout .secCts .img img {
	width: 100%;
	height: auto;
}

/* SP
-------------------------------------*/
@media screen and (max-width: 768px) {
	.secAbout {
		padding: 0 0 22.67vw;
	}
	.secAbout::before,
	.secAbout::after {
		content: none;
	}
	.secAbout .secInr {
	}
	.secAbout .secInr::before {
		left: 0;
		top: 20.67vw;
		width: 105.6vw;
		height: 29.89vw;
		margin-left: -2.13vw;
		background-image: url(../images/sp_about_obj.png);
	}
	.secAbout .secCts {
		padding-top: 9.87vw;
		text-align: center;
	}
	.secAbout .secCts .ctsTtl {
		line-height: 1.667;
		font-size: 6.4vw;
		position: relative;
	}
	.secAbout .secCts .ctsTtl .ttlTxt {
	}
	.secAbout .secCts .txtWrap {
		text-align: left;
		padding: 0 10.67vw 0 5.33vw;
	}
	.secAbout .secCts .txtWrap p {
		margin-top: 8.67vw;
		font-size: 4.27vw;
		line-height: 1.813;
		letter-spacing: 0.1em;
	}
	.secAbout .secCts .txtWrap .txtStrong {
		font-size: 4.53vw;
	}
	.secAbout .secCts .img {
		position: static;
		width: auto;
		text-align: left;
		padding-left: 5.33vw;
		margin-top: 4vw;
	}
	.secAbout .secCts .img img {
		width: 83.47vw;
	}
}

/* アニメーション
------------------------------------*/
.secAbout .secInr::before {
	transition-delay: 300ms;
}
.secAbout .secCts .txtWrap p:nth-child(2) {
	transition-delay: 200ms;
}
.secAbout .secCts .txtWrap p:nth-child(3) {
	transition-delay: 400ms;
}
.secAbout .secCts .txtWrap p:nth-child(4) {
	transition-delay: 600ms;
}
.secAbout .secCts .txtWrap p:nth-child(5) {
	transition-delay: 800ms;
}
.secAbout .secCts .img {
	transition-delay: 500ms;
}

/* SP
-------------------------------------*/
@media screen and (max-width: 768px) {
	.secAbout .secCts .img {
		transition-delay: 0ms;
	}
}



.secProfile {
	padding: 0 20px 132px;
	position: relative;
}
.secProfile::before,
.secProfile::after {
	content: "";
	display: block;
	position: absolute;
	pointer-events: none;
	left: 50%;
}
.secProfile::before {
	width: 226px;
	height: 393px;
	background: url(../images/profile_bg_side01.png) no-repeat center / cover;
	top: 204px;
	margin-left: -946px;
}
.secProfile::after {
	width: 226px;
	height: 457px;
	background: url(../images/profile_bg_side02.png) no-repeat center / cover;
	top: 142px;
	margin-left: 683px;
}
.secProfile .secInr {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	text-align: center;
}
.secProfile .pmd-secTtl .jp {
	background-image: url(../images/profile_ttl_bg.png);
	width: 612px;
	height: 68px;
}
.secProfile .secCts {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	text-align: left;
	margin-top: 77px;
	padding-left: 30px;
}
.secProfile .secCts .chara {
	width: 246px;
	margin-top: -10px;
}
.secProfile .secCts .chara img {
	width: 100%;
	height: auto;
}
.secProfile .secCts .txtCol {
	width: 800px;
}
.secProfile .secCts .bgBox {
	border: 1px solid #f0f0f0;
	background: #fff;
	border-radius: 20px;
	padding: 17px 35px 37px;
	width: 100%;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
	position: relative;
}
.secProfile .secCts .bgBox::after {
	content: "";
	display: block;
	position: absolute;
	width: 117px;
	height: 106px;
	background: url(../images/profile_obj01.png) no-repeat center;
	background-size: cover;
	bottom: 0;
	right: 0;
}
.secProfile .secCts .bgBox .itemWrap:first-child {
	width: 260px;
}
.secProfile .secCts .bgBox .itemWrap:last-child {
	width: 400px;
}
.secProfile .secCts .bgBox .itemWrap dl {
	display: flex;
	width: 100%;
	align-items: center;
	padding: 20px 0;
	background: url(../images/bg_dot_line.svg) repeat-x left bottom;
}
.secProfile .secCts .bgBox .itemWrap dl:last-child {
	background: none;
}
.secProfile .secCts .bgBox .itemWrap dl.aTop {
	align-items: flex-start;
}
.secProfile .secCts .bgBox .itemWrap dl dt {
	font-size: 1.6rem;
	font-weight: 700;
	width: 73px;
	line-height: 1.125;
	letter-spacing: 0.1em;
}
.secProfile .secCts .bgBox .itemWrap dl dd {
	flex: 1;
	font-size: 1.6rem;
	line-height: 1.25;
}
.secProfile .secCts .instaLink {
	margin-top: 20px;
}
.secProfile .secCts .instaLink a {
	color: #cb171d;
	text-decoration: underline;
	font-size: 1.8rem;
	line-height: 1.25;
	position: relative;
	padding-left: 33px;
}
.secProfile .secCts .instaLink a::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	width: 25px;
	height: 25px;
	background: url(../images/icn_insta.png) no-repeat center / contain;
}

/* SP
-------------------------------------*/
@media screen and (max-width: 768px) {
	.secProfile {
		padding: 0 0 18.67vw;
		position: relative;
	}
	.secProfile .secInr {
	}
	.secProfile .secCts {
		display: block;
		margin-top: 6.67vw;
		padding: 0 5.33vw;
	}
	.secProfile .secCts .chara {
		width: auto;
		margin-top: 0;
		text-align: center;
	}
	.secProfile .secCts .chara img {
		width: 35.33vw;
	}
	.secProfile .secCts .txtCol {
		width: auto;
		margin-top: 7.33vw;
	}
	.secProfile .secCts .bgBox {
		border-radius: 2.67vw;
		padding: 0.67vw 5.33vw 14.13vw;
		display: block;
	}
	.secProfile .secCts .bgBox::after {
		width: 18.4vw;
		height: 16.93vw;
		right: 2.67vw;
	}
	.secProfile .secCts .bgBox .itemWrap:first-child {
		width: auto;
	}
	.secProfile .secCts .bgBox .itemWrap:last-child {
		width: auto;
	}
	.secProfile .secCts .bgBox .itemWrap dl {
		padding: 4vw 0;
	}
	.secProfile .secCts .bgBox .itemWrap dl:last-child {
		background: url(../images/bg_dot_line.svg) repeat-x left bottom;
	}
	.secProfile .secCts .bgBox .itemWrap:last-child dl:last-child {
		background: none;
	}
	.secProfile .secCts .bgBox .itemWrap dl.aTop {
		align-items: flex-start;
	}
	.secProfile .secCts .bgBox .itemWrap dl dt {
		font-size: 4.27vw;
		font-weight: 700;
		width: 22.13vw;
		line-height: 1.25;
	}
	.secProfile .secCts .bgBox .itemWrap dl dd {
		font-size: 4.27vw;
		line-height: 1.5;
	}
	.secProfile .secCts .instaLink {
		margin-top: 3vw;
	}
	.secProfile .secCts .instaLink a {
		font-size: 4.5vw;
		padding-left: 8vw;
	}
	.secProfile .secCts .instaLink a::after {
		left: 0;
		width: 6.4vw;
		height: 6.4vw;
	}
}

/* アニメーション
------------------------------------*/
.secProfile .secCts .bgBox .itemWrap dl:nth-child(1) {
	transition-delay: 300ms;
}
.secProfile .secCts .bgBox .itemWrap dl:nth-child(2) {
	transition-delay: 500ms;
}
.secProfile .secCts .bgBox .itemWrap dl:nth-child(3) {
	transition-delay: 700ms;
}
.secProfile .secCts .bgBox .itemWrap dl:nth-child(4) {
	transition-delay: 900ms;
}
.secProfile .secCts .bgBox .itemWrap dl:nth-child(5) {
	transition-delay: 1200ms;
}
.secProfile .secCts .bgBox .itemWrap dl:nth-child(6) {
	transition-delay: 1500ms;
}

/* SP
-------------------------------------*/
@media screen and (max-width: 768px) {
	.secProfile .secCts .bgBox .itemWrap:nth-child(1) dl:nth-child(1) {
		transition-delay: 300ms;
	}
	.secProfile .secCts .bgBox .itemWrap:nth-child(1) dl:nth-child(2) {
		transition-delay: 400ms;
	}
	.secProfile .secCts .bgBox .itemWrap:nth-child(1) dl:nth-child(3) {
		transition-delay: 500ms;
	}
	.secProfile .secCts .bgBox .itemWrap:nth-child(1) dl:nth-child(4) {
		transition-delay: 600ms;
	}
	.secProfile .secCts .bgBox .itemWrap:nth-child(1) dl:nth-child(5) {
		transition-delay: 700ms;
	}
	.secProfile .secCts .bgBox .itemWrap:nth-child(1) dl:nth-child(6) {
		transition-delay: 800ms;
	}

	.secProfile .secCts .bgBox .itemWrap:nth-child(2) dl:nth-child(1) {
		transition-delay: 900ms;
	}
	.secProfile .secCts .bgBox .itemWrap:nth-child(2) dl:nth-child(2) {
		transition-delay: 1000ms;
	}
	.secProfile .secCts .bgBox .itemWrap:nth-child(2) dl:nth-child(3) {
		transition-delay: 1100ms;
	}
	.secProfile .secCts .bgBox .itemWrap:nth-child(2) dl:nth-child(4) {
		transition-delay: 1200ms;
	}
}


.ftCtsBg {
	padding: 0 20px;
	position: relative;
	background: #ffe7db url(../images/ft_bg.png) repeat-x center top;
}
.ftCtsBg::before,
.ftCtsBg::after {
	content: "";
	display: block;
	position: absolute;
	pointer-events: none;
	left: 50%;
}
.ftCtsBg::before {
	width: 176px;
	height: 500px;
	background: url(../images/ftcts_bg_side01.png) no-repeat center / cover;
	top: 264px;
	margin-left: -808px;
}
.ftCtsBg::after {
	width: 225px;
	height: 238px;
	background: url(../images/ftcts_bg_side02.png) no-repeat center / cover;
	top: 536px;
	margin-left: 704px;
}
.ftCtsBg .ftBgInr {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 110px 0 30px;
}


/* SP
-------------------------------------*/
@media screen and (max-width: 768px) {
	.ftCtsBg {
		padding: 0;
		background: url(../images/sp_ft_bg.png) repeat center top;
		background-size: 200px auto;
	}
	.ftCtsBg::before {
		width: 8vw;
		height: 9.33vw;
		background-image: url(../images/sp_ftcts_bg_side01.png);
		top: 49.67vw;
		left: 0;
		margin-left: 0;
	}
	.ftCtsBg::after {
		width: 14.67vw;
		height: 12vw;
		background: url(../images/sp_ftcts_bg_side02.png) no-repeat center / cover;
		top: 46.47vw;
		left: auto;
		right: -4vw;
		margin-left: 0;
	}
	.ftCtsBg .ftBgInr {
		margin: 0 auto;
		padding: 10.8vw 0 8vw;
	}
}



.secFtCts {
	position: relative;
}
.secFtCts::before {
	content: "";
	display: block;
	position: absolute;
	top: -66px;
	left: 50%;
	margin-left: -465px;
	width: 1058px;
	height: 215px;
	background: url(../images/ftcts_obj01.png) no-repeat center / cover;
	pointer-events: none;
	z-index: 3;
}
.secFtCts::after {
	content: "";
	display: block;
	position: absolute;
	top: -76px;
	left: 50%;
	margin-left: -675px;
	width: 201px;
	height: 289px;
	background: url(../images/ftcts_chara.png) no-repeat center / cover;
	pointer-events: none;
}
.secFtCts .secTtl {
	color: #fc5e75;
	text-align: center;
	letter-spacing: 0.1em;
}
.secFtCts .secTtl .en {
	font-family: "Caveat", cursive;
	font-weight: 400;
	font-size: 1.4rem;
}
.secFtCts .secTtl .jp {
	display: table;
	margin: 10px auto 0;
	position: relative;
	font-weight: 700;
	font-size: 3.8rem;
}
.secFtCts .secTtl .jp::before,
.secFtCts .secTtl .jp::after {
	content: "";
	display: block;
	position: absolute;
	width: 13px;
	height: 13px;
	top: 0;
	background: no-repeat center / cover;
}
.secFtCts .secTtl .jp::before {
	background-image: url(../images/icn_ttl_emphasis01.svg);
	left: -24px;
}
.secFtCts .secTtl .jp::after {
	background-image: url(../images/icn_ttl_emphasis02.svg);
	right: -24px;
}
.secFtCts .secCts {
	position: relative;
	z-index: 2;
}
.secFtCts .bnrLine {
	display: flex;
	justify-content: space-between;
	margin-top: 63px;
}
.secFtCts .bnrLine li {
	width: 580px;
}
.secFtCts .bnrLine li img {
	width: 100%;
	height: auto;
}
.secFtCts .infoCol {
	margin-top: 40px;
	background: url(../images/ft_info_bg.png) no-repeat center / cover;
	border-radius: 10px;
	padding: 30px 15px;
	color: #fff;
}
.secFtCts .infoCol .infoColInr {
	display: flex;
}
.secFtCts .infoCol .infoColInr > div {
	width: 50%;
	display: flex;
	align-items: center;
}
.secFtCts .infoCol > div .colInr {
	width: 100%;
	box-sizing: border-box;
	text-align: center;
	padding: 14px 0 4px;
}
.secFtCts .infoCol .leftCol {
	background: url(../images/bg_dot_line02.svg) repeat-y right top;
	background-size: 2px auto;
}
.secFtCts .infoCol .colTtl {
	font-size: 2.4rem;
	letter-spacing: 0.1em;
	font-weight: 500;
	position: relative;
	padding-bottom: 10px;
}
.secFtCts .infoCol .colTtl::after {
	content: none;
	display: block;
	position: absolute;
	width: 20px;
	height: 1px;
	background: #fff;
	bottom: 0;
	left: 50%;
	margin-left: -10px;
}
.secFtCts .infoCol .numCol {
	margin-top: 25px;
}
.secFtCts .infoCol .numCol dt {
	font-size: 1.6rem;
	font-weight: 500;
}
.secFtCts .infoCol .numCol dd {
	margin-top: 10px;
}
.secFtCts .infoCol .numCol dd .num {
	font-size: 4rem;
	font-weight: 500;
	vertical-align: middle;
	position: relative;
	padding-left: 46px;
	display: inline-block;
}
.secFtCts .infoCol .numCol dd .num::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -21px;
	width: 42px;
	height: 42px;
	background: url(../images/icn_tel.svg) no-repeat center / cover;
}
.secFtCts .infoCol .numCol dd .cap {
	font-size: 1.2rem;
	font-weight: 500;
}
.secFtCts .infoCol .info {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 20px;
	letter-spacing: 0.1em;
}
.secFtCts .infoCol .info > dt {
	background: #fff;
	color: #c7161e;
	font-size: 1.2rem;
	font-weight: 500;
	padding: 4px 5px 3px;
	border-radius: 2px;
	margin-right: 10px;
}
.secFtCts .infoCol .info > dd {
	display: flex;
	align-items: center;
}
.secFtCts .infoCol .info .timeLine {
	display: flex;
	align-items: center;
	margin-left: 20px;
}
.secFtCts .infoCol .info .timeLine:first-child {
	margin-left: 0;
}
.secFtCts .infoCol .info .timeLine > dt {
	font-size: 1.2rem;
	font-weight: 500;
	border: 1px solid #fff;
	border-radius: 2px;
	padding: 4px 5px 3px;
}
.secFtCts .infoCol .info .timeLine > dd {
	margin-left: 5px;
	font-size: 1.2rem;
	font-weight: 500;
}
.secFtCts .infoCol .note {
	font-size: 1rem;
	font-weight: 500;
	margin-top: 10px;
}
.secFtCts .btnCol {
	margin-top: 25px;
}
.secFtCts .btnCol dt {
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: 0.1em;
}
.secFtCts .btnCol dd {
	margin-top: 25px;
}
.secFtCts .btnCol dd .btn {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	width: 340px;
	height: 60px;
	background: #fff;
	text-decoration: none;
	transition: opacity 0.3s linear;
	border-radius: 60px;
	font-size: 1.8rem;
	color: #333;
	letter-spacing: 0.1em;
	font-weight: 700;
}
.secFtCts .btnCol dd .btn:hover {
	opacity: 0.7;
}
.secFtCts .btnCol dd .btn .icnBlank {
	padding-right: 20px;
	position: relative;
}
.secFtCts .btnCol dd .btn .icnBlank::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	width: 9px;
	height: 9px;
	background: url(../images/icn_blank.svg) no-repeat center / cover;
}

/* SP
-------------------------------------*/
@media screen and (max-width: 768px) {
	.secFtCts {
		position: relative;
	}
	.secFtCts::before {
		top: -16.67vw;
		left: 20.27vw;
		margin-left: 0;
		width: 79.62vw;
		height: 34.04vw;
		background-image: url(../images/sp_ftcts_obj01.png);
	}
	.secFtCts::after {
		top: -7.73vw;
		left: -1.33vw;
		margin-left: 0;
		width: 24.27vw;
		height: 34.8vw;
	}
	.secFtCts .secTtl {
		color: #fc5e75;
		text-align: center;
		letter-spacing: 0.1em;
		padding-left: 7.07vw;
	}
	.secFtCts .secTtl .en {
		font-size: 2.93vw;
	}
	.secFtCts .secTtl .jp {
		margin: 1.33vw auto 0;
		font-weight: 500;
		font-size: 5.07vw;
	}
	.secFtCts .secTtl .jp::before,
	.secFtCts .secTtl .jp::after {
		width: 1.73vw;
		height: 1.73vw;
	}
	.secFtCts .secTtl .jp::before {
		left: -2.67vw;
	}
	.secFtCts .secTtl .jp::after {
		right: -2.67vw;
	}
	.secFtCts .secCts {
		padding: 0 5.33vw;
	}
	.secFtCts .bnrLine {
		display: block;
		margin-top: 3.33vw;
	}
	.secFtCts .bnrLine li {
		width: auto;
		margin-top: 5.33vw;
	}
	.secFtCts .bnrLine li:first-child {
		margin-top: 0;
	}
	.secFtCts .bnrLine li img {
	}
	.secFtCts .infoCol {
		margin-top: 12vw;
		border-radius: 1.33vw;
		padding: 9.73vw 5.33vw 9.33vw;
	}
	.secFtCts .infoCol .infoColInr {
		display: block;
	}
	.secFtCts .infoCol .infoColInr > div {
		width: auto;
		display: block;
	}
	.secFtCts .infoCol > div .colInr {
		width: auto;
		padding: 0;
	}
	.secFtCts .infoCol .leftCol {
		background: none;
		padding-bottom: 9.33vw;
		background: url(../images/bg_dot_line03.svg) repeat-x bottom left;
		background-size: 0.8vw auto;
	}
	.secFtCts .infoCol .colTtl {
		font-size: 5.6vw;
		padding-bottom: 2.67vw;
	}
	.secFtCts .infoCol .colTtl::after {
		width: 2.67vw;
		height: 1px;
		left: 50%;
		margin-left: -1.33vw;
	}
	.secFtCts .infoCol .numCol {
		margin-top: 4vw;
	}
	.secFtCts .infoCol .numCol dt {
		font-size: 3.2vw;
		letter-spacing: 0.05em;
	}
	.secFtCts .infoCol .numCol dd {
		margin-top: 1.33vw;
	}
	.secFtCts .infoCol .numCol dd .num {
		font-size: 6.6vw;
		padding-left: 7.47vw;
		letter-spacing: normal;
	}
	.secFtCts .infoCol .numCol dd .num::before {
		width: 6.67vw;
		height: 6.67vw;
		margin-top: -3.33vw;
	}
	.secFtCts .infoCol .numCol dd .cap {
		font-size: 2.67vw;
	}
	.secFtCts .infoCol .info {
		display: flex;
		margin-top: 2.93vw;
		letter-spacing: 0.1em;
		align-items: center;
	}
	.secFtCts .infoCol .info > dt {
		font-size: 2.93vw;
		padding: 0.53vw 1.87vw 0.3vw;
		border-radius: 0.27vw;
		margin-right: 4vw;
		box-sizing: border-box;
		line-height: 1.273;
		letter-spacing: normal;
	}
	.secFtCts .infoCol .info > dd {
		display: flex;
		align-items: center;
		letter-spacing: normal;
	}
	.secFtCts .infoCol .info .timeLine {
		margin-left: 3.2vw;
	}
	.secFtCts .infoCol .info .timeLine:first-child {
		margin-left: 0;
	}
	.secFtCts .infoCol .info .timeLine > dt {
		font-size: 2.93vw;
		border-radius: 0.27vw;
		padding: 0.53vw 0.8vw 0.4vw;
	}
	.secFtCts .infoCol .info .timeLine > dd {
		margin-left: 0.67vw;
		font-size: 2.93vw;
	}
	.secFtCts .infoCol .note {
		font-size: 2.93vw;
		margin-top: 2.27vw;
		padding-right: 0;
	}
	.secFtCts .rightCol {
		margin-top: 7.2vw;
	}
	.secFtCts .btnCol {
		margin-top: 4vw;
	}
	.secFtCts .btnCol dt {
		font-size: 3.2vw;
	}
	.secFtCts .btnCol dd {
		margin-top: 4.27vw;
	}
	.secFtCts .btnCol dd .btn {
		width: 100%;
		height: 13.87vw;
		border-radius: 8vw;
		font-size: 4.53vw;
	}
	.secFtCts .btnCol dd .btn:hover {
	}
	.secFtCts .btnCol dd .btn .icnBlank {
		padding-right: 5.33vw;
	}
	.secFtCts .btnCol dd .btn .icnBlank::after {
		width: 2.93vw;
		height: 2.93vw;
	}
}

/* アニメーション
------------------------------------*/
.secFtCts::before {
	transition-delay: 500ms;
}
.secFtCts::after {
	transition-delay: 300ms;
}
.secFtCts .bnrLine li:nth-child(1) {
	transition-delay: 300ms;
}
.secFtCts .bnrLine li:nth-child(2) {
	transition-delay: 500ms;
}
.secFtCts .infoCol .leftCol .colInr {
	transition-delay: 300ms;
}
.secFtCts .infoCol .rightCol .colInr {
	transition-delay: 600ms;
}

/* SP
-------------------------------------*/
@media screen and (max-width: 768px) {
	.secFtCts .bnrLine li:nth-child(1) {
		transition-delay: 0ms;
	}
	.secFtCts .bnrLine li:nth-child(2) {
		transition-delay: 0ms;
	}
	.secFtCts .infoCol .leftCol .colInr {
		transition-delay: 0ms;
	}
	.secFtCts .infoCol .rightCol .colInr {
		transition-delay: 0ms;
	}
}


/*モーダル関連*/
html.is_jsModalShow,
html.is_jsModalShow body {
	height: 100%;
}
.modalOl {
	position: fixed;
	z-index: 1002;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background: rgba(0, 0, 0, 0.6);
	display: none;
}

.modal {
	height: 100%;
	width: 100%;
	display: table;
	position: relative;
	z-index: 1003;
	pointer-events: none;
	display: none;
}
.modal .modalInr {
	display: table-cell;
	padding: 50px 10px;
	vertical-align: middle;
}
.modal .modalCtsWrap {
	width: 100%;
	max-width: 1200px;
	background: #fff;
	margin: 0 auto;
	pointer-events: all;
	position: relative;
}
.modal .buttonClose {
	position: absolute;
	top: -38px;
	right: 0;
	width: 28px;
	height: 28px;
	cursor: pointer;
	background: url(../images/icn_modal_close.svg) no-repeat center / cover;
	z-index: 2;
}
.modal .moviePlace {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.modal .moviePlace iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}


/* SP
-------------------------------------*/
@media screen and (max-width: 768px) {
}






