@charset "UTF-8";
/*$base-width: 1400px;*/
/*weight*/
/*animation*/
@-webkit-keyframes horizontal-scroll {
		from {
				-webkit-transform: translateX(0);
				        transform: translateX(0);
		}
		to {
				-webkit-transform: translateX(-100%);
				        transform: translateX(-100%);
		}
}
@keyframes horizontal-scroll {
		from {
				-webkit-transform: translateX(0);
				        transform: translateX(0);
		}
		to {
				-webkit-transform: translateX(-100%);
				        transform: translateX(-100%);
		}
}
@-webkit-keyframes horizontal-scroll-reverse {
		from {
				-webkit-transform: translateX(-100%);
				        transform: translateX(-100%);
		}
		to {
				-webkit-transform: translateX(0);
				        transform: translateX(0);
		}
}
@keyframes horizontal-scroll-reverse {
		from {
				-webkit-transform: translateX(-100%);
				        transform: translateX(-100%);
		}
		to {
				-webkit-transform: translateX(0);
				        transform: translateX(0);
		}
}
/* --------------------------------------------------
	section size
-------------------------------------------------- */
/*==============================================
index
===============================================*/
html {
		position: relative;
		overflow: auto;
		scrollbar-width: none; /* Firefox用 */
		-ms-overflow-style: none; /* IE, Edge用 */
}
html::-webkit-scrollbar {
		display: none; /* Chrome, Safari用 */
		width: 10px;
}
html::-webkit-scrollbar-thumb {
		background-color: #c1c1c1;
		border-radius: 4px;
}
html::-webkit-scrollbar-track {
		background-color: transparent;
}
html.is-noscroll {
		position: fixed;
		overflow: hidden;
		width: 100%;
		height: 100%;
}
html.is-animationend {
		scrollbar-width: initial; /* Firefox用 */
		-ms-overflow-style: initial; /* IE, Edge用 */
		min-height: auto;
}
html.is-animationend::-webkit-scrollbar {
		display: block; /* Chrome, Safari用 */
}
html.is-animationend .p-opening {
		pointer-events: none;
}

/*opening*/
.p-opening {
		height: 100vh;
		width: 100%;
		background: #fff url(img/bg_opening.jpg) repeat-x center top/auto 100%;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 110;
}
.p-opening.is-hide {
		opacity: 0;
}
.p-opening:after {
		content: "";
		position: fixed;
		top: calc(100% - 2.9rem);
		left: 0;
		width: 100%;
		height: 2.9rem;
		background: url(img/bg_opening_under_pc.png) repeat-x center center/contain;
}
@media screen and (max-width: 767px) {
		.p-opening:after {
				background: url(img/bg_opening_under_sp.png) no-repeat center center/contain;
		}
}
.p-opening-card {
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		        transform: translate(-50%, -50%);
		width: 27.6rem;
		height: 45.5rem;
		position: relative;
		z-index: 2;
}
@media screen and (max-width: 767px) {
		.p-opening-card {
				width: 24.3rem;
				height: 40rem;
				top: calc(50% - 2rem);
		}
}
.p-opening-card:before {
		content: "";
		position: absolute;
		top: -15rem;
		left: 50%;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
		width: 42.8rem;
		height: 42.8rem;
		background: #fff;
		border-radius: 50rem;
		z-index: -1;
}
@media screen and (max-width: 767px) {
		.p-opening-card:before {
				width: 30.5rem;
				height: 30.5rem;
				top: -13rem;
		}
}
.p-opening-card:after {
		content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #004278;
    box-shadow: 6px 7px #002d53;
    border-radius: 2rem;
    z-index: 0;
}
.p-opening-card .-scroll {
		position: absolute;
		top: 1.2rem;
		left: 50%;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
		width: 13.9rem;
		height: 4.1rem;
		z-index: 2;
}
@media screen and (max-width: 767px) {
		.p-opening-card .-scroll {
				width: 12.2rem;
		}
}
.p-opening-card .-inner {
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		        transform: translate(-50%, -50%);
		width: 21.1rem;
		height: 32.2rem;
		padding-top: 2rem;
		text-align: center;
		z-index: 2;
		background: url(img/bg_opening_inner_pc.svg) no-repeat center center/contain;
}
@media screen and (max-width: 767px) {
		.p-opening-card .-inner {
				width: 18.6rem;
				height: 28.4rem;
				background: url(img/bg_opening_inner_sp.svg) no-repeat center center/contain;
		}
}
.p-opening-card .-inner .catch {
		position: relative;
		padding-top: 4.4rem;
}
@media screen and (max-width: 767px) {
		.p-opening-card .-inner .catch {
				padding-top: 3.8rem;
		}
}
.p-opening-card .-inner .catch .icn {
		position: absolute;
		top: 0;
		left: 50%;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
		width: 9.2rem;
		height: 4.4rem;
		background: url(img/icn_opening_orange.svg) no-repeat center center/contain;
		text-align: center;
		color: #fff;
		font-size: 1.2rem;
		font-weight: 700;
		padding-top: 2rem;
}
@media screen and (max-width: 767px) {
		.p-opening-card .-inner .catch .icn {
				padding-top: 1.7rem;
				font-size: 1.1rem;
				width: 8.1rem;
				height: 3.8rem;
		}
}
.p-opening-card .-inner .catch .txt {
		display: inline-block;
		font-size: 1.3rem;
		font-weight: 700;
		color: #fff;
		padding: 0.6rem 1.8rem;
		border: 1px solid #fff;
		border-radius: 3rem;
}
@media screen and (max-width: 767px) {
		.p-opening-card .-inner .catch .txt {
				padding: 0.4rem 1.1rem 0.5rem;
				font-size: 1.1rem;
				font-weight: normal;
		}
}
.p-opening-card .-inner .catch .txt .dash {
		display: inline-block;
		padding: 0 0.6rem;
		position: relative;
}
.p-opening-card .-inner .catch .txt .dash:before, .p-opening-card .-inner .catch .txt .dash:after {
		content: "";
		position: absolute;
		width: 0.4rem;
		height: 0.3rem;
}
@media screen and (max-width: 767px) {
		.p-opening-card .-inner .catch .txt .dash:before, .p-opening-card .-inner .catch .txt .dash:after {
				width: 0.38rem;
				height: 0.3rem;
		}
}
.p-opening-card .-inner .catch .txt .dash:before {
		top: 0.3rem;
		left: 0;
		background: url(img/icn_opening_dash01.svg) no-repeat center center/contain;
}
.p-opening-card .-inner .catch .txt .dash:after {
		top: 0.3rem;
		right: 0.1rem;
		background: url(img/icn_opening_dash02.svg) no-repeat center center/contain;
}
.p-opening-card .-inner .ttl {
	    font-size: 2.1rem;
    font-weight: 700;
    color: #fff;
    padding-top: 1.6rem;
    line-height: 1.5;
}
@media screen and (max-width: 767px) {
		.p-opening-card .-inner .ttl {
				font-size: 1.8rem;
				line-height: 1.6;
		}
}
.p-opening-card .-sponsor {
		position: absolute;
		bottom: 2rem;
		left: 50%;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
		z-index: 2;
		text-align: center;
		color: #fff;
}
@media screen and (max-width: 767px) {
		.p-opening-card .-sponsor {
				bottom: 2rem;
				line-height: 1;
		}
}
.p-opening-card .-sponsor .en {
		display: block;
		width: 9.5rem;
		margin: 0 auto;
		line-height: 1;
}
@media screen and (max-width: 767px) {
		.p-opening-card .-sponsor .en {
				width: 7.8rem;
		}
}
.p-opening-card .-sponsor .ja {
		font-size: 1.1rem;
		line-height: 1;
		white-space: nowrap;
}
@media screen and (max-width: 767px) {
		.p-opening-card .-sponsor .ja {
				font-size: 1rem;
		}
}

@media screen and (max-width: 767px) {
		.p-opening-mask {
				width: 100vw;
				height: 150vh;
				background: #fff;
				position: fixed;
				left: 0;
				top: 0;
				z-index: 100;
				pointer-events: none;
		}
		.p-opening-mask.is-hide {
				display: none;
		}
}

.l-index {
		padding: 6rem 0 12rem;
		background: url(img/bg_index_head.png) repeat-x top;
		position: relative;
}
@media screen and (max-width: 767px) {
		.l-index {
				padding: 6rem 0;
		}
}
.l-index:after {
		content: "";
		position: absolute;
		width: 100%;
		height: 49.9rem;
		background: url(img/bg_index_foot.jpg) repeat-x bottom;
		bottom: -2px;
		left: 0;
		z-index: -1;
}
@media screen and (max-width: 767px) {
		.l-index:after {
				content: none;
		}
}

/*mv*/
	.p-mv {
			width: 100%;
			margin-left: auto;
			margin-right: 0;
			/* background: url(img/bg_mv_slider_pc.jpg) no-repeat center bottom/contain; */
			position: relative;
	}
.p-mv:before {
    content: "";
    width: 100%;
    height: 3rem;
    background: url(img/bg_mv_slider_pc.jpg) repeat-x center center / contain;
    position: absolute;
    bottom: -6rem;
    left: 0;
    z-index: 0;
}




.p-mv .-txt:before {
		    content: "";
		    width: 40%;
		    height: 100%;
		    background: url(img/txt_mv_pc.png) no-repeat center center / contain;
		    position: absolute;
		    top: 152px;
		    z-index: 2;
		    left: 8rem;
}
@media screen and (max-width: 767px) {
		.p-mv {
			 width: 100%;
			 padding: 0;
			 margin-top: 3rem;
			 margin-bottom: 9rem;
			 /* background: url(img/bg_mv_slider_sp.jpg) repeat-x bottom/auto 1.4rem; */
			 border-bottom: none;
		}
	.p-mv .-txt:before {
		    content: "";
		    width: 90%;
		    height: 100%;
		    background: url(img/txt_mv_sp.png) no-repeat center center / contain;
		    position: absolute;
		    top: 128px;
		    z-index: 2;
		    left: 0;
}
	.p-mv:before {
    background: none;
}
}
.p-mv .-txt img{
		position: absolute;
		z-index: 2;
		width: 48%;
		right: 8rem;
		top: 2rem
}

.p-mv .com{
		font-size: 4rem;
		/* background: #ffe74b; */
		padding: 0 3.6rem;
		text-shadow: 2px 3px 10px rgb(93 93 93);
		width: auto;
		color: #ffffff;
		font-weight: bold;
		position: absolute;
		margin: 0 1rem 0;
		z-index: 11;
		display: inline-block;
		border-radius: 4rem;
		bottom: 34%;
		/* top: 0; */
}
.p-mv .com span{
	font-size: 7rem;
	}
@media screen and (max-width: 767px) {
		.p-mv .-txt {
				bottom: auto;
				top: 15.4rem;
				left: 1rem;
				width: 95%;
		}
	.p-mv .-txt img {
    width: 70%;
    right: 0;
}

	
}
.p-mv .image.one{
			border: 1px solid #0469c0;
			margin-left: 8rem;
			width: 41%;
	}
.p-mv .image.one .-slider {
		border: 15px solid #ffffff;
}

.p-mv .image.two{
			border: 1px solid #0469c0;
			width: 60%;
			margin-right: 8rem;
			margin-left: auto;
			position: relative;
			z-index: 1;
			margin-top: -240px;
	}
.p-mv .image.two .-slider {
		border: 15px solid #ffffff;
}


.p-mv .slick-list {
    filter: grayscale(0%) brightness(90%);
}
.p-mv .-slider img{
		filter: grayscale(0%) brightness(90%);
}
@media screen and (max-width: 767px) {
		.p-mv .-slider {
				border-left: none;
				border-right: none;
				/* border-bottom: 1px solid #004278; */
		}
	.p-mv .image.one{
			border: 1px solid #0469c0;
			margin-left: 0;
			width: 41%;
	}
.p-mv .image.one .-slider {
		border: 7px solid #ffffff;
}

.p-mv .image.two{
			border: 1px solid #0469c0;
			width: 76%;
			margin-right: 0;
			margin-left: auto;
			position: relative;
			z-index: 1;
			margin-top: -50px;
	}
.p-mv .image.two .-slider {
		border: 7px solid #ffffff;
}

}
.-sponsor {
		font-size: 1rem;
		text-align: left;
		color: #848484;
		padding: 0 5% 2.8rem;
		background: url(img/bg_mv_slider_sp.jpg) repeat-x bottom / auto 1.4rem;
}


.p-indexqa {
		margin-top: 4rem;
}
.p-indexqa .-head {
		position: relative;
		padding: 7rem 0 0 22.5rem;
		margin: 0 8rem;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-head {
				padding: 0;
				margin: 1.5rem 0 0;
				text-align: right;
		}
	.p-indexqa {
		margin-top: 3rem;
}
	.p-mv .-sponsor {
	 padding: 4.8rem 5%;
}
}
.p-indexqa .-head:before {
	content: "";
		    content: "";
    width: 29.6rem;
    height: 16.1rem;
    background: url(img/txt_indexqa.svg) no-repeat center center / contain;
    position: absolute;
    top:24px;
    left: -7.5rem;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-head:before {
				width: 14rem;
				top: -6rem;
				left: -1rem;
		}
}
.p-indexqa .-head .ttl {
		display: inline-block;
		position: relative;
		z-index: 2;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-head .ttl {
				margin-right: -1rem;
				margin-top: 1rem;
		}
}
.p-indexqa .-head .ttl a {
		font-size: 3.2rem;
		font-weight: 700;
		display: inline-block;
		padding: 1rem 5.6rem 1rem 3.4rem;
		background: #fff;
		/* border: 1px solid #080808; */
		border-radius: 4rem;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-head .ttl a {
				font-size: 2.1rem;
				padding: 0.6rem 3rem 0.6rem 1rem;
		}
}
.p-indexqa .-head .ttl a:before {
		content: "";
		position: absolute;
		right: 2.1rem;
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
		width: 1.7rem;
		height: 1.7rem;
		background: url(img/icn_link_arrow_simple.svg) no-repeat center center/contain;
		margin-top: 0.1rem;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-head .ttl a:before {
				width: 0.7rem;
				height: 1.2rem;
				right: 1.2rem;
		}
}
.p-indexqa .-body {
		margin-top: 3rem;
		position: relative;
		z-index: 1;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-body {
				margin-top: 2rem;
				padding-bottom: 0.5rem;
		}
}
.p-indexqa .-body:after {
		content: "";
		position: absolute;
		width: 104.5rem;
		min-height: 34.6rem;
		height: 100%;
		/* background: url(img/bg_indexqa_pc.png) no-repeat center center/100% 100%; */
		top: 2rem;
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		margin-left: -0.2rem;
		z-index: -2;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-body:after {
				background: none;
				border-radius: 3rem;
				width: 32.5rem;
				height: 100%;
				border-radius: 2rem;
				border: none;
				top: 1rem;
		}
}
.p-indexqa .-body .line {
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-ms-flex-pack: start;
		-webkit-box-pack: start;
		justify-content: flex-start;
		-ms-flex-align: stretch;
		-webkit-box-align: stretch;
		align-items: stretch;
		gap: 2.8rem;
}
.p-indexqa .-body .line + .line {
		margin: 3.3rem auto 0 0;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-body .line {
				-webkit-box-orient: vertical;
				-webkit-box-direction: normal;
				-ms-flex-direction: column;
				display: grid;
				flex-direction: column;
				gap: 1.5rem;
				grid-template-columns: repeat(2, minmax(0, 1fr));
		}
		.p-indexqa .-body .line + .line {
				margin-top: 1rem;
		}
}
@media screen and (max-width: 767px) {
		.p-indexqa .-body .line .unit:nth-child(odd) {
				left: 0;
		}
		.p-indexqa .-body .line .unit:nth-child(even) {
				top: 0;
				margin: 0 0 0 auto;
		}
		.p-indexqa .-body .line .unit.m-01 {
				z-index: 0;
		}
		.p-indexqa .-body .line .unit.m-02 {
				z-index: 2;
		}
		.p-indexqa .-body .line .unit.m-04 {
				z-index: 0;
		}
		.p-indexqa .-body .line .unit.m-05 {
				z-index: 2;
		}
}
.p-indexqa .-body .unit {
		border: 1px solid #004278;
		border-radius: 15rem;
		/* box-shadow: 5px 5px #004278; */
		overflow: hidden;
		position: relative;
		width: 30.4rem;
		height: 24.4rem;
		-webkit-transition: -webkit-transform 0.3s ease-in-out;
		transition: -webkit-transform 0.3s ease-in-out;
		transition: transform 0.3s ease-in-out;
		transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-body .unit {
				width: 16.4rem;
				height: auto;
				border-radius: 2rem 2rem 0 0;
		}
}
.p-indexqa .-body .unit:after {
		content: "";
		width: 10.4rem;
		height: 1.8rem;
		position: absolute;
		right: 9rem;
		bottom: 2.8rem;
		background-position: right bottom;
		background-size: contain;
		background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-body .unit:after {
				width: 7.7rem;
				height: 1.5rem;
				right: 1rem;
				bottom: 0.8rem;
		}
}
.p-indexqa .-body .unit a {
		display: block;
		width: 100%;
		height: 100%;
		text-align: center;
		padding: 8.5rem 1rem 6rem;
}


@media screen and (max-width: 767px) {
		.p-indexqa .-body .unit a {
				padding: 5.5rem 1rem 3.8rem;
				text-align: justify;
		}
}
@media screen and (any-hover: hover) and (min-width: 768px) {
		.p-indexqa .-body .unit a:hover {
				opacity: 1;
		}
}
.p-indexqa .-body .unit .num {
		position: absolute;
		width: 6.7rem;
		height: 5rem;
		left: 0;
		right: 0;
		margin: auto;
		top: 2.6rem;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-body .unit .num {
				width: 4rem;
				height: 3.2rem;
				top: 1.4rem;
				left: -9.8rem;
				margin: auto;
		}
}
.p-indexqa .-body .unit .txt {
		color: #fff;
		display: inline-block;
		font-size: 2rem;
		font-weight: 700;
		padding-left: 0;
}
.p-indexqa .-body .unit.m-orange .txt{
 color: #014378;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-body .unit .txt {
				padding-left: 0;
				font-size: 1.5rem;
				line-height: 1.4;
		}
}
.p-indexqa .-body .unit.m-green {
		background: #27cb99;
}
.p-indexqa .-body .unit.m-green:after {
		background-image: url(img/txt_indexqa_answer_blue.svg);
}
.p-indexqa .-body .unit.m-lightblue {
		background: #0469c0;
}
.p-indexqa .-body .unit.m-lightblue:after {
		background-image: url(img/txt_indexqa_answer_wh.svg);
}
.p-indexqa .-body .unit.m-orange {
		background: #ffe74b;
		color: #014378;
}
.p-indexqa .-body .unit.m-orange:after {
		background-image: url(img/txt_indexqa_answer_blue.svg);
}
.p-indexqa .-body .unit.m-blue {
		background: #3cbd96;
}
.p-indexqa .-body .unit.m-blue:after {
		background-image: url(img/txt_indexqa_answer_blue.svg);
}
@media screen and (any-hover: hover) and (min-width: 768px) {
		.p-indexqa .-body .unit:hover {
				-webkit-transform: translateY(-2rem);
				        transform: translateY(-2rem);
		}
}
.p-indexqa .-body .btn {
		margin: 3.2rem 11rem 0 auto;
		text-align: right;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-body .btn {
				margin: 2.5rem auto 0;
				text-align: center;
		}
}
.p-indexqa .-body .btn a {
		display: inline-block;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-body .btn a {
				width: 17.7rem;
		}
}
.p-indexqa .-body .photo {
		position: absolute;
		width: 12.8rem;
		height: 17.7rem;
		z-index: -1;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-body .photo {
				width: 8.8rem;
				height: 12.2rem;
				z-index: 1;
		}
}
.p-indexqa .-body .photo.m-01 {
		top: -1.7rem;
		right: 17.5rem;
		display: none;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-body .photo.m-01 {
				right: -5%;
				top: 1.2rem;
		}
}
.p-indexqa .-body .photo.m-02 {
		bottom: -2.5rem;
		left: 0rem;
		-webkit-transform: scale(-1, 1);
		transform: scale(-1, 1);
		z-index: 1;
		display: none;
}
@media screen and (max-width: 767px) {
		.p-indexqa .-body .photo.m-02 {
				bottom: 17rem;
				left: -5%;
		}
}

/*indexsponsor*/
.p-indexsponsor {
		width: 120rem;
		margin: 14rem auto 15rem;
		position: relative;
		padding-top: 6rem;
		z-index: 1;
		padding-bottom: 8rem;
}
@media screen and (max-width: 767px) {
		.p-indexsponsor {
				width: auto;
				padding-top: 6rem;
				margin: 6.5rem 5%;
		}
}
.p-indexsponsor:before {
		content: "";
		height: 100%;
		width: 100%;
		background: url(img/bg_indexsponsor_head_pc.jpg) no-repeat center top/100% auto;
		position: absolute;
		left: 0;
		top: 0;
		border-radius: 5rem 5rem 0 0;
		z-index: 0;
}
@media screen and (max-width: 767px) {
		.p-indexsponsor:before {
				background:url(img/bg_indexsponsor_head_sp.jpg) no-repeat center top/100% auto;
				height: 46.6rem;
				width: 100%;
		}
}
.p-indexsponsor-box {
		border: 1px solid #ffffff;
		width: 50rem;
		padding: 6rem 4rem 6rem;
		margin: 0 auto 0;
		background: #ffffff;
		position: relative;
		height: 100%;
		z-index: 2;
		border-radius: 0;
}
@media screen and (max-width: 767px) {
		.p-indexsponsor-box {
				width: 27.1rem;
				border-radius: 20rem 20rem 1rem 1rem;
				padding-top: 7.2rem;
				min-height: 29.2rem;
				padding: 7.2rem 2rem 5rem;
				margin-top: -1rem;
		}
}
.p-indexsponsor-box:before {
		content: "";
		width: calc(100% - 2.4rem);
		height: calc(100% - 2rem);
		border: 1px solid #004278;
		position: absolute;
		/* border-right: 1px solid #004278; */
		left: 50%;
		top: 50%;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		pointer-events: none;
		z-index: 2;
}
@media screen and (max-width: 767px) {
		.p-indexsponsor-box:before {
				border-radius: 20rem 20rem 1rem 1rem;
				width: calc(100% - 3rem);
				height: calc(100% - 3rem);
		}
}
@media screen and (max-width: 767px) {
		.p-indexsponsor-box:after {
				content: "";
				background: url(img/bg_sponsor_sp.jpg) no-repeat center bottom 1.8rem/contain;
				width: calc(100% - 2.8rem);
				height: 100%;
				position: absolute;
				left: 0;
				right: 0;
				bottom: -0.4rem;
				margin: 0 auto;
				z-index: 2;
				pointer-events: none;
		}
}
.p-indexsponsor-box .-ttl {
		padding-bottom: 2.2rem;
		position: relative;
		text-align: center;
}
.p-indexsponsor-box .-ttl::before {
		content: "";
		width: 14.2rem;
		height: 0.1rem;
		background: #004278;
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		margin: 0 auto;
}
.p-indexsponsor-box .-ttl img {
		width: 25.7rem;
}
@media screen and (max-width: 767px) {
		.p-indexsponsor-box .-ttl img {
				width: 19.4rem;
		}
}
.p-indexsponsor-box .-detail {
    margin-top: 2.1rem;
    font-size: 1.6rem;
    line-height: 2;
    text-align: center;
}
@media screen and (max-width: 767px) {
		.p-indexsponsor-box .-detail {
				position: relative;
				line-height: 1.7;
				font-size: 1.5rem;
		}
}
.p-indexsponsor-box .-btn {
		width: 30rem;
		margin-bottom: 0;
}
@media screen and (max-width: 767px) {
		.p-indexsponsor-box .-btn {
				width: 25.2rem;
				margin-bottom: 1.5rem;
		}
}
.p-indexsponsor-haslink {
		margin-bottom: 8rem;
}
.p-indexsponsor-haslink .p-indexsponsor {
		margin: 10rem auto 2rem;
}
@media screen and (max-width: 767px) {
		.p-indexsponsor-haslink .p-indexsponsor {
				margin: 5rem 5% 2rem;
		}
}
.p-indexsponsor-haslink .p-indexsponsor-link {
		text-align: right;
		padding: 0;
    margin: 1rem auto 1rem auto;
    width: 120rem;
}
@media screen and (max-width: 767px) {
		.p-indexsponsor-haslink .p-indexsponsor-link {
				padding: 0;
				margin-top: 0;
				width: auto;
		}
}
.p-indexsponsor-haslink .p-indexsponsor-link a {
		color: #004278;
		position: relative;
		display: inline-block;
		font-size: 1.6rem;
		font-weight: 700;
		padding-right: 8rem;
}
@media screen and (max-width: 767px) {
		.p-indexsponsor-haslink .p-indexsponsor-link a {
				padding-right: 5rem;
		}
}
.p-indexsponsor-haslink .p-indexsponsor-link a:before {
		content: "";
		width: 1.7rem;
		height: 1.7rem;
		background: url(img/icn_link_arrow_blue.svg) no-repeat center center/contain;
		position: absolute;
		right: 5.4rem;
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
		.p-indexsponsor-haslink .p-indexsponsor-link a:before {
				right: 2.7rem;
				margin-top: 0.2rem;
		}
}
.p-indexsponsor-haslink .p-indexsponsor-link a:after {
		content: "";
		width: 4.4rem;
		height: 0.1rem;
		background: #004278;
		position: absolute;
		right: 0;
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
		.p-indexsponsor-haslink .p-indexsponsor-link a:after {
				width: 2rem;
				margin-top: 0.2rem;
		}
}

.p-talk {
		z-index: 1;
		height: 50.5rem;
		position: relative;
		margin: 21.5rem 0 0;
}
@media screen and (max-width: 767px) {
		.p-talk {
				height: 52.4rem;
				margin-top: 12rem;
		}
}
.p-talk:before, .p-talk:after {
		content: "";
		position: absolute;
}
.p-talk:before {
		width: 48.6rem;
		height: 5.7rem;
		background: url(img/txt_talk01.svg) no-repeat center center/contain;
		left: calc(50% - 10rem);
		top: 0;
}
@media screen and (max-width: 767px) {
		.p-talk:before {
				display: none;
		}
}
.p-talk:after {
		width: 50.6rem;
		height: 5.7rem;
		background: url(img/txt_talk02.svg) no-repeat center center/contain;
		left: calc(50% - 54rem);
		bottom: 0;
}
@media screen and (max-width: 767px) {
		.p-talk:after {
				left: 0;
				right: 0;
				margin: 0 auto;
				bottom: -1.5rem;
				width: 18.3rem;
				background: url(img/txt_talk_sp.svg) no-repeat center center/contain;
		}
}
.p-talk-splink {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 10;
}
.p-talk .c-inner {
		position: relative;
		height: 100%;
}
.p-talk .c-inner:before {
		content: "";
		position: absolute;
		left: -0.9rem;
		width: calc(50vw + 65rem);
		background: #ffe74b;
		border-radius: 4.5rem 0 0 0;
		height: 100%;
		z-index: -1;
		border: 1px solid #080808;
		border-right: none;
}
@media screen and (max-width: 767px) {
		.p-talk .c-inner:before {
				width: 90%;
				left: 0;
				right: 0;
				margin: 0 auto;
				border-radius: 5rem;
		}
}
.p-talk-circle {
		position: absolute;
		top: -9rem;
		left: 5rem;
		z-index: 2;
}
@media screen and (max-width: 767px) {
		.p-talk-circle {
				top: 0;
				left: 0;
				right: 0;
				margin: 0 auto;
				z-index: -1;
		}
}
.p-talk-circle a {
		display: inline-block;
		width: 46.3rem;
		height: 46rem;
		background: url(img/img_talk_circle.png) no-repeat center center/contain;
		text-align: center;
		border-radius: 100%;
}
@media screen and (any-hover: hover) and (min-width: 768px) {
		.p-talk-circle a:hover {
				opacity: 1;
				-webkit-transform: translateY(-3rem);
				        transform: translateY(-3rem);
		}
}
@media screen and (max-width: 767px) {
		.p-talk-circle a {
				width: 26.7rem;
				height: 26.5rem;
				display: block;
				margin: 5rem auto 0;
		}
}
.p-talk-circle a .-en {
		text-align: center;
		width: 18rem;
		position: absolute;
		top: 7.5rem;
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
		.p-talk-circle a .-en {
				width: 12.7rem;
				top: 1rem;
		}
}
.p-talk-circle a .-catch {
		font-size: 2.2rem;
		font-weight: 700;
		color: #ffffff;
		display: inline-block;
		background: #0469c0;
		border-radius: 3rem;
		border: 1px solid #080808;
		position: absolute;
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		top: 14.5rem;
		white-space: nowrap;
		padding: 0.3rem 1.8rem 0.3rem;
}
@media screen and (max-width: 767px) {
		.p-talk-circle a .-catch {
				font-size: 1.6rem;
				top: 9.5rem;
		}
}
.p-talk-circle a .-ttl {
		font-size: 4.8rem;
		font-weight: 900;
		position: absolute;
		top: 20rem;
		line-height: 1.3;
		left: 0;
		right: 0;
		margin: 3rem auto 0;
		position: relative;
}
@media screen and (max-width: 767px) {
		.p-talk-circle a .-ttl {
				top: 9rem;
				font-size: 3rem;
				line-height: 1.5;
		}
}
.p-talk-circle a .-ttl:before {
		content: "";
		width: 37.6rem;
		height: 1.9rem;
		background: url(img/icn_talk_double.svg) no-repeat center center/contain;
		position: absolute;
		left: -6.2rem;
		right: 0;
		margin: 0 auto;
		top: 0.5rem;
}
@media screen and (max-width: 767px) {
		.p-talk-circle a .-ttl:before {
				width: 24.1rem;
				height: 1.1rem;
				left: -4rem;
		}
}
.p-talk-photoset {
		position: absolute;
		top: 9rem;
		left: 46rem;
}
@media screen and (max-width: 767px) {
		.p-talk-photoset {
				left: 0;
				width: 100%;
				top: 25rem;
		}
}
.p-talk-photoset .-photo {
		position: absolute;
		width: 23rem;
		opacity: 0;
		-webkit-transform: translateX(-8rem);
		        transform: translateX(-8rem);
}
@media screen and (max-width: 767px) {
		.p-talk-photoset .-photo {
				width: 13.8rem;
		}
}
.p-talk-photoset .-photo.m-01 {
		left: 0;
}
.p-talk-photoset .-photo.m-01 img {
		-webkit-transform: rotate(-8.5deg);
		        transform: rotate(-8.5deg);
}
@media screen and (max-width: 767px) {
		.p-talk-photoset .-photo.m-01 {
				left: 0;
				right: 0;
				margin: 0 auto;
				z-index: 3;
		}
		.p-talk-photoset .-photo.m-01 img {
				-webkit-transform: rotate(-6.5deg);
				        transform: rotate(-6.5deg);
		}
}
.p-talk-photoset .-photo.m-02 {
		top: 4.5rem;
		left: 22.5rem;
}
.p-talk-photoset .-photo.m-02 img {
		-webkit-transform: rotate(3deg);
		        transform: rotate(3deg);
}
@media screen and (max-width: 767px) {
		.p-talk-photoset .-photo.m-02 {
				left: auto;
				right: 2rem;
				margin: 0 auto;
				top: 3rem;
		}
		.p-talk-photoset .-photo.m-02 img {
				-webkit-transform: rotate(9deg);
				        transform: rotate(9deg);
		}
}
.p-talk-photoset .-photo.m-03 {
		left: 41rem;
		top: -4rem;
		z-index: 2;
}
.p-talk-photoset .-photo.m-03 img {
		-webkit-transform: rotate(-4deg);
		        transform: rotate(-4deg);
}
@media screen and (max-width: 767px) {
		.p-talk-photoset .-photo.m-03 {
				left: 2.5rem;
				top: 3rem;
		}
		.p-talk-photoset .-photo.m-03 img {
				-webkit-transform: rotate(-12deg);
				        transform: rotate(-12deg);
		}
}
.p-talk-photoset .-photo.m-04 {
		left: 62rem;
		top: 4rem;
}
.p-talk-photoset .-photo.m-04 img {
		-webkit-transform: rotate(14deg);
		        transform: rotate(14deg);
}
.p-talk .fukidashi {
		position: absolute;
		text-align: center;
		font-size: 1.8rem;
		padding-top: 0.8rem;
		z-index: 3;
}
@media screen and (max-width: 767px) {
		.p-talk .fukidashi {
				font-size: 1.4rem;
				padding-top: 2.2rem;
				line-height: 1.2;
		}
}
.p-talk .fukidashi.m-01 {
		width: 16.7rem;
		height: 9rem;
		background: url(img/icn_talk_fukidashi_left.png) no-repeat center center/contain;
		top: 6.5rem;
		left: calc(50% + 0.5rem);
}
@media screen and (max-width: 767px) {
		.p-talk .fukidashi.m-01 {
				left: 1rem;
				width: 11.4rem;
				top: 22rem;
		}
}
.p-talk .fukidashi.m-02 {
		width: 18.3rem;
		height: 9.1rem;
		background: url(img/icn_talk_fukidashi_right.png) no-repeat center center/contain;
		top: -2rem;
		left: calc(50% + 41.5rem);
		text-align: center;
}
@media screen and (max-width: 767px) {
		.p-talk .fukidashi.m-02 {
				left: auto;
				right: 1rem;
				top: 20rem;
				width: 12.5rem;
		}
}
.p-talk .arrow {
		position: absolute;
		top: 39rem;
		left: 31.9rem;
		width: 7.3rem;
		height: 7.3rem;
		background: url(img/icn_talk_arrow.svg) no-repeat center center/contain;
		z-index: 2;
}
@media screen and (max-width: 767px) {
		.p-talk .arrow {
				top: 42.5rem;
				left: 0;
				right: 0;
				margin: 0 auto;
				width: 5.9rem;
				height: 5.9rem;
				z-index: 3;
		}
}

.p-day {
		margin-top: 13rem;
		background: #FCF5EF;
		position: relative;
}
@media screen and (max-width: 767px) {
		.p-day {
				margin-top: 8rem;
		}
}
.p-day:before {
		content: "";
		position: absolute;
		width: 100%;
		height: 30rem;
		background: url(img/bg_day_pc.png) no-repeat center top/100% auto;
		top: 3rem;
		left: 0;
		right: 0;
		margin: 0 auto;
		z-index: 2;
}
@media screen and (max-width: 767px) {
		.p-day:before {
				content: none;
		}
}
.p-day:after {
		content: "";
		position: absolute;
		width: 100%;
		height: 30rem;
		background: #fff;
		top: 0;
		z-index: 1;
}
.p-day-head {
		position: relative;
		padding-top: 15rem;
		z-index: 3;
}
@media screen and (max-width: 767px) {
		.p-day-head {
				padding-top: 5rem;
		}
}
.p-day-head:before {
		content: "";
		width: 64.7rem;
		height: 8.5rem;
		background: url(img/txt_day_daystory.svg) no-repeat center center/contain;
		position: absolute;
		left: 0;
		right: 0;
		margin: 0 auto;
		top: -10px;
}
@media screen and (max-width: 767px) {
		.p-day-head:before {
				width: 23.9rem;
				height: 3rem;
				left: -4rem;
		}
}
.p-day-head .-icn {
		width: 10rem;
		height: 10rem;
		background: url(img/bg_day_icn.svg) no-repeat center center/contain;
		position: absolute;
		top: 10rem;
		left: 0;
		right: 0;
		margin: 0 auto;
		text-align: center;
		color: #fff;
		font-weight: 700;
		font-size: 2rem;
		padding: 1.8rem 0 0 1rem;
}
@media screen and (max-width: 767px) {
		.p-day-head .-icn {
				right: auto;
				left: -3.3rem;
				width: 7rem;
				height: 7rem;
				top: -3rem;
				font-size: 1.3rem;
				-webkit-writing-mode: vertical-rl;
				-ms-writing-mode: tb-rl;
				writing-mode: vertical-rl;
				white-space: nowrap;
				padding: 0 1.7rem 0 0;
				letter-spacing: -0.4rem;
		}
}
.p-day-head .-ttl {
		font-size: 3.2rem;
		font-weight: 700;
		text-align: center;
		background: #FCF5EF;
		position: relative;
		z-index: 2;
		letter-spacing: 0.15rem;
}
@media screen and (max-width: 767px) {
		.p-day-head .-ttl {
				font-size: 1.8rem;
				background: none;
				text-align: left;
				letter-spacing: 0;
				padding-left: 0;
		}
}
.p-day-head .-ttl a {
		display: inline-block;
		border-top: 1px solid #080808;
		position: relative;
		padding-top: 1.8rem;
}
@media screen and (max-width: 767px) {
		.p-day-head .-ttl a {
				border-top: none;
				padding-top: 0;
		}
}
.p-day-head .-ttl a:after {
		content: "";
		width: 1rem;
		height: 1.7rem;
		background: url(img/icn_link_arrow_simple.svg) no-repeat center center/contain;
		position: absolute;
		right: -3rem;
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
		margin-top: 1.2rem;
}
@media screen and (max-width: 767px) {
		.p-day-head .-ttl a:after {
				width: 0.7rem;
				height: 1rem;
				right: -1.7rem;
				margin-top: 0.2rem;
		}
}
.p-day-slider {
		margin-top: 9rem;
		position: relative;
		z-index: 3;
}
.p-day-slider:before, .p-day-slider:after {
		content: "";
		position: absolute;
		width: 100%;
		height: 1px;
		background: #000;
		top: 0;
		left: 0;
}
@media screen and (max-width: 767px) {
		.p-day-slider:before, .p-day-slider:after {
				content: none;
		}
}
.p-day-slider:after {
		top: auto;
		bottom: 25.8rem;
}
@media screen and (max-width: 767px) {
		.p-day-slider {
				margin-top: 4rem;
		}
}
.p-day-slider .slide {
		padding: 0 3rem;
		position: relative;
}
@media screen and (max-width: 767px) {
		.p-day-slider .slide {
				padding: 0;
		}
}
.p-day-slider .slide.m-yellow a {
		background: #fff7c4;
}
.p-day-slider .slide.m-green a {
		background: #d2fff2;
}
.p-day-slider .slide.m-blue a {
		background: #def0ff;
}
.p-day-slider .slide:before {
		content: "";
		width: 5.8rem;
		height: 1.3rem;
		background: url(img/txt_day_movie.svg) no-repeat center center/contain;
		position: absolute;
		top: 1rem;
		left: 0;
		right: 0;
		margin: 0 auto;
}
@media screen and (max-width: 767px) {
		.p-day-slider .slide:before {
				width: 3.9rem;
				top: 0.5rem;
		}
}
.p-day-slider .slide a {
		display: block;
		border: 1px solid #000;
		width: 64rem;
		padding: 3rem 2rem 1.5rem;
}
@media screen and (max-width: 767px) {
		.p-day-slider .slide a {
				width: 32.8rem;
				padding: 2rem 0 1rem;
		}
}
@media screen and (any-hover: hover) and (min-width: 768px) {
		.p-day-slider .slide a:hover {
				opacity: 1;
		}
		.p-day-slider .slide a:hover .img img {
				opacity: 0.7;
		}
}
.p-day-slider .slide .img {
		 width: 60rem;
    height: 34.6rem;
		position: relative;
}
@media screen and (max-width: 767px) {
		.p-day-slider .slide .img {
				width: 30rem;
				height: 16.3rem;
				margin: 0 auto;
		}
}
.p-day-slider .slide .img:before {
		content: "";
		width: 7.8rem;
		height: 7.8rem;
		background: url(img/icn_day_video.svg) no-repeat center center/contain;
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translateY(-50%) translateX(-50%);
		        transform: translateY(-50%) translateX(-50%);
		z-index: 3;
}
@media screen and (max-width: 767px) {
		.p-day-slider .slide .img:before {
				width: 5rem;
				height: 5rem;
		}
}
.p-day-slider .slide .img .-photo {
		border-top: 1px solid #333;
		position: relative;
		width: calc(100% - 0.2rem);
		height: calc(100% - 0.1rem);
		margin-top: 0.1rem;
		margin-left: 0.1rem;
		-webkit-mask-image: radial-gradient(circle at 0% 0%, transparent 1.8rem, #333 2rem), radial-gradient(circle at 100% 0%, transparent 1.8rem, #333 2rem), radial-gradient(circle at 0% 100%, transparent 1.8rem, #333 2rem), radial-gradient(circle at 100% 100%, transparent 1.8rem, #333 2rem);
		mask-image: radial-gradient(circle at 0% 0%, transparent 1.8rem, #333 2rem), radial-gradient(circle at 100% 0%, transparent 1.8rem, #333 2rem), radial-gradient(circle at 0% 100%, transparent 1.8rem, #333 2rem), radial-gradient(circle at 100% 100%, transparent 1.8rem, #333 2rem);
		-webkit-mask-position: 0% 0%, 100% 0%, 0% 100%, 100% 100%;
		mask-position: 0% 0%, 100% 0%, 0% 100%, 100% 100%;
		-webkit-mask-size: 52% 52%;
		mask-size: 52% 52%;
		-webkit-mask-repeat: no-repeat;
		mask-repeat: no-repeat;
		z-index: 2;
}
@media screen and (max-width: 767px) {
		.p-day-slider .slide .img .-photo {
				-webkit-mask-image: radial-gradient(circle at 0% 0%, transparent 1.2rem, #333 1rem), radial-gradient(circle at 100% 0%, transparent 1.2rem, #333 1rem), radial-gradient(circle at 0% 100%, transparent 1.2rem, #333 1rem), radial-gradient(circle at 100% 100%, transparent 1.2rem, #333 1rem);
				        mask-image: radial-gradient(circle at 0% 0%, transparent 1.2rem, #333 1rem), radial-gradient(circle at 100% 0%, transparent 1.2rem, #333 1rem), radial-gradient(circle at 0% 100%, transparent 1.2rem, #333 1rem), radial-gradient(circle at 100% 100%, transparent 1.2rem, #333 1rem);
		}
}
.p-day-slider .slide .img .-photo img {
		width: 100%;
		height: 100%;
		-o-object-fit: cover;
		   object-fit: cover;
		-webkit-transition: 0.4s;
		transition: 0.4s;
}
.p-day-slider .slide .img .-border {
		-webkit-mask-image: radial-gradient(circle at 0% 0%, transparent 1.8rem, #333 2rem), radial-gradient(circle at 100% 0%, transparent 1.8rem, #333 2rem), radial-gradient(circle at 0% 100%, transparent 1.8rem, #333 2rem), radial-gradient(circle at 100% 100%, transparent 1.8rem, #333 2rem);
		        mask-image: radial-gradient(circle at 0% 0%, transparent 1.8rem, #333 2rem), radial-gradient(circle at 100% 0%, transparent 1.8rem, #333 2rem), radial-gradient(circle at 0% 100%, transparent 1.8rem, #333 2rem), radial-gradient(circle at 100% 100%, transparent 1.8rem, #333 2rem);
		-webkit-mask-position: 0% 0%, 100% 0%, 0% 100%, 100% 100%;
		        mask-position: 0% 0%, 100% 0%, 0% 100%, 100% 100%;
		-webkit-mask-size: 52% 52%;
		        mask-size: 52% 52%;
		-webkit-mask-repeat: no-repeat;
		        mask-repeat: no-repeat;
		background: #000;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 0;
}
@media screen and (max-width: 767px) {
		.p-day-slider .slide .img .-border {
				-webkit-mask-image: radial-gradient(circle at 0% 0%, transparent 1.2rem, #333 1rem), radial-gradient(circle at 100% 0%, transparent 1.2rem, #333 1rem), radial-gradient(circle at 0% 100%, transparent 1.2rem, #333 1rem), radial-gradient(circle at 100% 100%, transparent 1.2rem, #333 1rem);
				        mask-image: radial-gradient(circle at 0% 0%, transparent 1.2rem, #333 1rem), radial-gradient(circle at 100% 0%, transparent 1.2rem, #333 1rem), radial-gradient(circle at 0% 100%, transparent 1.2rem, #333 1rem), radial-gradient(circle at 100% 100%, transparent 1.2rem, #333 1rem);
		}
}
.p-day-slider .slide .txt {
		font-size: 1.8rem;
		font-weight: 700;
		margin: 2.5rem 0 0.5rem;
		/* color: #fff; */
		text-align: center;
}
@media screen and (max-width: 767px) {
		.p-day-slider .slide .txt {
				font-size: 1.6rem;
				padding: 0 5%;
				margin: 1rem 0 0;
		}
}
.p-day-slider-nav {
		padding: 5.5rem 0 15rem;
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-ms-flex-pack: center;
		-webkit-box-pack: center;
		        justify-content: center;
		-ms-flex-align: center;
		-webkit-box-align: center;
		        align-items: center;
		gap: 5rem;
}
@media screen and (max-width: 767px) {
		.p-day-slider-nav {
				gap: 2.5rem;
				padding: 1.5rem 0 5rem;
		}
}
.p-day-slider-nav .slick-arrow {
		font-size: 0;
		color: transparent;
		width: 5.3rem;
		height: 5.3rem;
		background: url(img/icn_slider_arrow.svg) no-repeat center center/contain;
		display: inline-block;
}
@media screen and (max-width: 767px) {
		.p-day-slider-nav .slick-arrow {
				width: 2.6rem;
				height: 2.6rem;
		}
}
.p-day-slider-nav .slick-arrow.slick-prev {
		-webkit-transform: translate3d(0, 0, 0) scale(-1, 1);
		        transform: translate3d(0, 0, 0) scale(-1, 1);
}

.mfp-bg {
		background: #000;
		width: 100vw;
		height: 100vh;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9999;
		opacity: 0.7;
}

.mfp-wrap {
		z-index: 10000;
}

/* YouTubeポップアップ用スタイル */
.youtube-popup {
		position: relative;
		background: #000;
		padding: 0 !important;
		width: 80% !important;
		max-width: 800px;
		margin: 0 auto;
		padding: 0;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		line-height: 0;
}

.youtube-popup iframe {
		width: 100% !important;
		height: auto;
		aspect-ratio: 16/9;
		max-width: 100%;
		border: none;
}

/* レスポンシブ対応 
*/
@media screen and (max-width: 767px) {
		.youtube-popup {
				width: 95%;
				padding: 10px;
		}
}
.mfp-close {
		position: absolute;
		top: -4rem;
		right: -7rem;
		-webkit-transform: translate(-50%, -50%);
		        transform: translate(-50%, -50%);
		z-index: 9999;
		font-size: 0;
		color: transparent;
		display: inline-block;
		width: 5rem;
		height: 5rem;
}
@media screen and (max-width: 767px) {
		.mfp-close {
				top: 0;
				right: -6rem;
		}
}
.mfp-close:after {
		content: "";
		width: 100%;
		height: 100%;
		background: url(img/btn_close_popup.png) no-repeat center center/contain;
		position: absolute;
		top: 0;
		left: 0;
}
@media screen and (max-width: 767px) {
		.mfp-close:after {
				width: 2rem;
				height: 2rem;
		}
}

.mfp-preloader {
		display: none !important;
}

.p-learn {
		position: relative;
		padding: 10rem 0 1.5rem;
		z-index: 2;
		background: url(img/bg_learn_pc.jpg) repeat-x top;
}
@media screen and (max-width: 767px) {
		.p-learn {
				padding-top: 3.2rem;
				background: url(img/bg_learn_sp.jpg) no-repeat top 21rem center/100% auto;
		}
}
.p-learn:before {
		content: "";
		width: 100%;
		height: 4rem;
		background: url(img/txt_learn_pc.svg) repeat-x center center/contain;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 0;
}
@media screen and (max-width: 767px) {
		.p-learn:before {
				background-image: url(img/txt_learn_sp.svg);
				height: 3.5rem;
		}
}
.p-learn .c-thinner-wide {
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-ms-flex-pack: justify;
		-webkit-box-pack: justify;
		        justify-content: space-between;
		-ms-flex-align: start;
		-webkit-box-align: start;
		        align-items: flex-start;
}
@media screen and (max-width: 767px) {
		.p-learn .c-thinner-wide {
				display: block;
				padding: 0;
		}
}
.p-learn-head {
		position: sticky;
		top: 12rem;
		left: 0;
		z-index: 2;
		padding: 8rem 10rem 11rem 0;
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
		height: 45.5rem;
		margin-top: 4.8rem;
}
@media screen and (max-width: 767px) {
		.p-learn-head {
				position: relative;
				width: 100%;
				height: 19.7rem;
				background: url(img/bg_learn_head_sp.png) no-repeat center center/contain;
				padding: 0;
				top: 0;
				margin-top: 0;
		}
}
.p-learn-head:before {
		content: "";
		width: 66.9rem;
		height: 100%;
		background: url(img/bg_learn_head_pc.png) no-repeat center center/contain;
		position: absolute;
		top: 0;
		left: 0;
}
@media screen and (max-width: 767px) {
		.p-learn-head:before {
				content: none;
		}
}
.p-learn-head .-ttl {
		color: #fff;
		position: relative;
		padding-left: 15.5rem;
		font-weight: 700;
		z-index: 2;
}
@media screen and (max-width: 767px) {
		.p-learn-head .-ttl {
				padding: 3.5rem 0 0 5%;
		}
}
.p-learn-head .-ttl a {
		display: inline-block;
	color: #fff;
}
.p-learn-head .-ttl .catch {
		font-size: 2.9rem;
		display: block;
}
@media screen and (max-width: 767px) {
		.p-learn-head .-ttl .catch {
				font-size: 1.8rem;
		}
}
.p-learn-head .-ttl .txt {
		font-size: 4.9rem;
		position: relative;
}
@media screen and (max-width: 767px) {
		.p-learn-head .-ttl .txt {
				font-size: 2.9rem;
		}
}
.p-learn-head .-ttl .txt:after {
		content: "";
		position: absolute;
		right: -2.5rem;
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
		width: 1rem;
		height: 1.7rem;
		background: url(img/icn_link_arrow_simple_wh.svg) no-repeat center center/contain;
		margin-top: 0.4rem;
}
@media screen and (max-width: 767px) {
		.p-learn-head .-ttl .txt:after {
				right: -2rem;
				width: 0.7rem;
				height: 1rem;
		}
}
.p-learn-body {
		width: 50%;
		margin: 18rem 0 0 auto;
		position: relative;
		z-index: 3;
}
@media screen and (max-width: 767px) {
		.p-learn-body {
				width: 90%;
				margin: -6.5rem auto 0;
				padding-bottom: 2.5rem;
				position: relative;
		}
}
.p-learn-body .-unit {
		width: 100%;
		border: 1px solid #000;
		border-radius: 0 3rem 0 0;
		-webkit-transition: 0.4s;
		transition: 0.4s;
}
@media screen and (max-width: 767px) {
		.p-learn-body .-unit {
				border-radius: 0 2rem 0 0;
		}
}
.p-learn-body .-unit + .-unit {
		margin-top: 2rem;
}
@media screen and (any-hover: hover) and (min-width: 768px) {
		.p-learn-body .-unit:hover {
				-webkit-transform: translateY(-1.5rem);
				        transform: translateY(-1.5rem);
		}
}
.p-learn-body .-unit a {
		display: block;
		padding: 1.55rem 0 1.5rem 0.3rem;
		gap: 3.5rem;
}
@media screen and (any-hover: hover) and (min-width: 768px) {
		.p-learn-body .-unit a:hover {
				opacity: 1;
		}
}
@media screen and (max-width: 767px) {
		.p-learn-body .-unit a {
				display: block;
				padding: 0.5rem 1rem 0.5rem 2rem;
		}
}
.p-learn-body .-unit a .head {
		padding: 0 1.5rem;
		margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
		.p-learn-body .-unit a .head {
				width: 100%;
				display: -ms-flexbox;
				display: -webkit-box;
				display: flex;
				-ms-flex-pack: start;
				-webkit-box-pack: start;
				        justify-content: flex-start;
				-ms-flex-align: center;
				-webkit-box-align: center;
				        align-items: center;
				gap: 2rem;
				padding-left: 0;
				margin-bottom: 0;
		}
}
.p-learn-body .-unit a .head img {
		width: auto;
		height: 5.7rem;
}
@media screen and (max-width: 767px) {
		.p-learn-body .-unit a .head img {
				height: 4.8rem;
		}
}
.p-learn-body .-unit a .body {
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
		padding-left: 9.5rem;
		padding-right: 2rem;
}
@media screen and (max-width: 767px) {
		.p-learn-body .-unit a .body {
				padding-left: 0;
				padding-right: 0;
		}
}
.p-learn-body .-unit a .body .catch {
		color: #fff;
		font-size: 1.8rem;
		font-weight: 700;
		letter-spacing: 0.2rem;
		margin-bottom: 2rem;
}
.p-learn-body .-unit.m-orange .body .catch{
  color: #353535;
}

@media screen and (max-width: 767px) {
		.p-learn-body .-unit a .body .catch {
				margin: 1rem 0 0;
				font-size: 1.6rem;
		}
}
.p-learn-body .-unit a .body .btn {
		position: relative;
		margin: 0 0 0 auto;
		width: 14rem;
		height: 1.8rem;
}
@media screen and (max-width: 767px) {
		.p-learn-body .-unit a .body .btn {
				margin-top: 1rem;
				width: 12rem;
				height: 1.8rem;
		}
}
.p-learn-body .-unit.m-green {
		background: #27cb99;
}
.p-learn-body .-unit.m-green .btn {
		background: url(img/txt_learn_readmore01.svg) no-repeat center/contain;
}
.p-learn-body .-unit.m-blue {
		background: #0469c0;
}
.p-learn-body .-unit.m-blue .btn {
		background: url(img/txt_learn_readmore01.svg) no-repeat center/contain;
}
.p-learn-body .-unit.m-orange {
		background: #ffe74b;
}
.p-learn-body .-unit.m-orange .btn {
		background: url(img/txt_learn_readmore03.svg) no-repeat center/contain;
}

.p-episode {
		position: relative;
		margin: 9rem 0;
		padding: 6.5rem 0 15rem;
		background: #fff6ee;
}
@media screen and (max-width: 767px) {
		.p-episode {
				margin: 3rem 0 0;
				padding: 5rem 0 7.5rem;
				overflow: hidden;
		}
}
.p-episode:before, .p-episode:after {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		margin: 0 auto;
		width: 100%;
}
@media screen and (max-width: 767px) {
		.p-episode:before, .p-episode:after {
				width: 35.4rem;
		}
}
.p-episode:before {
		top: 8.5rem;
		height: 9.2rem;
		background: url(img/bg_episode_corner_head.svg) no-repeat center center/contain;
}
@media screen and (max-width: 767px) {
		.p-episode:before {
				background: url(img/bg_episode_corner_sp.svg) no-repeat center center/contain;
				height: 3rem;
				top: 2rem;
		}
}
.p-episode:after {
		bottom: 6.5rem;
		height: 5.3rem;
		background: url(img/bg_episode_corner_bottom.svg) no-repeat center center/contain;
}
@media screen and (max-width: 767px) {
		.p-episode:after {
				background: url(img/bg_episode_corner_sp.svg) no-repeat center center/contain;
				-webkit-transform: scaleY(-1);
				        transform: scaleY(-1);
				height: 3rem;
				bottom: 2rem;
		}
}
.p-episode-head {
		margin-bottom: 7rem;
}
@media screen and (max-width: 767px) {
		.p-episode-head {
				margin-bottom: 5rem;
		}
}
.p-episode-head .-headline {
		position: relative;
		padding-top: 7rem;
		text-align: center;
}
@media screen and (max-width: 767px) {
		.p-episode-head .-headline {
				padding-top: 4.5rem;
		}
}
.p-episode-head .-headline:before {
		content: "";
		width: 35.7rem;
		height: 4.6rem;
		background: url(img/txt_episode_guest.svg) no-repeat center center/contain;
		position: absolute;
		left: 0;
		right: 0;
		margin: 0 auto;
		top: 0;
}
@media screen and (max-width: 767px) {
		.p-episode-head .-headline:before {
				width: 23.1rem;
		}
}
.p-episode-head .-headline .catch {
		font-size: 2.6rem;
		font-weight: 700;
		display: block;
		margin-bottom: 0.6rem;
}
@media screen and (max-width: 767px) {
		.p-episode-head .-headline .catch {
				font-size: 1.6rem;
		}
}
.p-episode-head .-headline a {
		display: inline-block;
		background: #fff;
		padding: 0.7rem 3rem 0.5rem 4.4rem;
		border-radius: 5rem;
		/* border: 1px solid #000; */
		font-weight: 700;
}
@media screen and (max-width: 767px) {
		.p-episode-head .-headline a {
				padding: 0.5rem 2rem 0.9rem;
		}
}
.p-episode-head .-headline .ttl {
		font-size: 4rem;
		font-weight: 900;
		padding-right: 3.5rem;
		position: relative;
}
@media screen and (max-width: 767px) {
		.p-episode-head .-headline .ttl {
				font-size: 2.6rem;
				padding: 1.5rem;
		}
}
.p-episode-head .-headline .ttl:after {
		content: "";
		width: 1.7rem;
		height: 1.7rem;
		position: absolute;
		right: 0;
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
		background: url(img/icn_link_arrow_simple.svg) no-repeat center center/contain;
		margin-top: 0.2rem;
}
@media screen and (max-width: 767px) {
		.p-episode-head .-headline .ttl:after {
				width: 0.7rem;
				height: 1.2rem;
		}
}
.p-episode-body {
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-ms-flex-pack: justify;
		-webkit-box-pack: justify;
		        justify-content: space-between;
		-ms-flex-align: start;
		-webkit-box-align: start;
		        align-items: flex-start;
}
@media screen and (max-width: 767px) {
		.p-episode-body {
				display: block;
				position: relative;
		}
}
.p-episode-body .-unit {
        width: 38.9rem;
}
@media screen and (max-width: 767px) {
		.p-episode-body .-unit {
				width: 100%;
				padding: 0 1.2rem;
		}
}
.p-episode-body .-unit:nth-child(2) {
		margin-top: 5.5rem;
}
@media screen and (max-width: 767px) {
		.p-episode-body .-unit:nth-child(2) {
				margin-top: 0;
		}
}
.p-episode-body .-unit .contents {
			  display: block;
    border: 1px solid #000;
    width: 100%;
    position: relative;
}
@media screen and (any-hover: hover) and (min-width: 768px) {
		.p-episode-body .-unit a:hover {
				opacity: 1;
		}
		.p-episode-body .-unit a:hover .photo img {
				opacity: 0.7;
		}
}
.p-episode-body .-unit .contents .num {
		position: absolute;
		right: 2rem;
		top: -4rem;
		width: 10.6rem;
		height: 6.5rem;
}
@media screen and (max-width: 767px) {
		.p-episode-body .-unit .contents .num {
				width: 5.6rem;
				top: -2rem;
				right: auto;
				left: 0.5rem;
		}
}
.p-episode-body .-unit .contents .photo {
		display: block;
		width: 24rem;
		height: 20.4rem;
		border-radius: 100%;
		margin: 12.5rem 2rem 0 auto;
		overflow: hidden;
		background: #fff;
}
@media screen and (max-width: 767px) {
		.p-episode-body .-unit .contents .photo {
				width: 21.3rem;
				height: 18.1rem;
				margin: 4rem auto 0;
		}
}
.p-episode-body .-unit .contents .photo img {
		width: 100%;
		height: 100%;
		-o-object-fit: cover;
		   object-fit: cover;
		-webkit-transition: 0.4s;
		transition: 0.4s;
}
.p-episode-body .-unit .contents .episode {
		display: block;
		width: 6.8rem;
		height: 1rem;
		background: url(img/txt_episode_episode.svg) no-repeat center center/contain;
		position: absolute;
		right: 0;
		top: 4rem;
		padding-right: 48rem;
		text-align: left;
}
@media screen and (max-width: 767px) {
		.p-episode-body .-unit .contents .episode {
				width: 5.6rem;
				position: absolute;
				right: auto;
				left: 2rem;
				padding: 0;
				top: 25rem;
				margin: 0;
		}
}
.p-episode-body .-unit .contents .episode:after {
		content: "";
		width: 19.2rem;
		height: 0.1rem;
		position: absolute;
		right: 0;
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
		background: #000;
}
@media screen and (max-width: 767px) {
		.p-episode-body .-unit .contents .episode:after {
				width: 14.8rem;
				left: 6.5rem;
				right: auto;
		}
}
.p-episode-body .-unit .contents .catch {
		-webkit-writing-mode: vertical-rl;
		    -ms-writing-mode: tb-rl;
		        writing-mode: vertical-rl;
		font-size: 2.2rem;
		font-weight: 700;
		font-family: "Zen Kaku Gothic New vertical", sans-serif;
		letter-spacing: 0.2rem;
		position: absolute;
		left: 2rem;
		top: 8rem;
}
@media screen and (max-width: 767px) {
		.p-episode-body .-unit .contents .catch {
				font-family: "Zen Kaku Gothic New", sans-serif;
				-webkit-writing-mode: horizontal-tb;
				    -ms-writing-mode: lr-tb;
				        writing-mode: horizontal-tb;
				text-align: center;
				font-size: 1.6rem;
				position: static;
				display: block;
				margin-top: 5rem;
				line-height: 1.8;
		}
}

.p-episode-body .-unit .contents .btn {
		display: block;
		width: 14rem;
		height: 1.8rem;
		background: url(img/txt_episode_readmore.svg) no-repeat center center/contain;
		margin: 4.5rem 1rem 1rem auto;
}

@media screen and (max-width: 767px) {
		.p-episode-body .-unit .contents .btn {
				width: 11.6rem;
		}
}
.p-episode-body .-unit.m-green {
		background: #fff7c4;
}
.p-episode-body .-unit.m-blue {
		background: #def0ff;

}
.p-episode-body .-unit.m-yellow {
		background: #d2fff2;
	
}
.p-episode-body .slick-list {
		overflow: visible;
}
@media screen and (max-width: 767px) {
	.p-episode-body .-unit.m-green,.p-episode-body .-unit.m-blue,.p-episode-body .-unit.m-yellow{
		background: none;
}
.p-episode-body .-unit.m-green .contents{
		background: #fff7c4;

}
.p-episode-body .-unit.m-blue .contents{
		background: #def0ff;

}
.p-episode-body .-unit.m-yellow .contents{
		background: #d2fff2;
	}
	}
@media screen and (max-width: 767px) {
		.p-episode-body .slick-arrow {
				font-size: 0;
				color: transparent;
				background: url(img/icn_slider_arrow.svg) no-repeat center center/contain;
				position: absolute;
				top: 20rem;
				width: 2.6rem;
				height: 2.6rem;
				z-index: 3;
		}
}
.p-episode-body .slick-arrow.slick-prev {
		-webkit-transform: scale(-1, 1);
		        transform: scale(-1, 1);
		left: 2.5rem;
}
.p-episode-body .slick-arrow.slick-next {
		right: 2.5rem;
}

.p-map {
		position: relative;
		margin: 8rem 0 0;
		padding: 9.5rem 0 0;
		overflow: hidden;
		z-index: 1;
}
@media screen and (max-width: 767px) {
		.p-map {
				padding-bottom: 0;
				margin-bottom: 4.5rem;
		}
}
.p-map .c-inner {
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-ms-flex-pack: start;
		-webkit-box-pack: start;
		        justify-content: flex-start;
		-ms-flex-align: start;
		-webkit-box-align: start;
		        align-items: flex-start;
}
@media screen and (max-width: 767px) {
		.p-map .c-inner {
				display: block;
				padding: 0;
		}
}
.p-map-head {
		width: 50%;
		position: relative;
		height: 66.1rem;
}
@media screen and (max-width: 767px) {
		.p-map-head {
				width: 100%;
				height: 51.2rem;
				margin-left: 0;
		}
}
.p-map-head:before {
		content: "";
		width: 70.7rem;
		height: 66.1rem;
		background: url(img/bg_map_main_pc.svg) no-repeat center center/contain;
		position: absolute;
		left: -5rem;
		top: 0;
		z-index: -1;
}
@media screen and (max-width: 767px) {
		.p-map-head:before {
				background: url(img/bg_map_main_sp.svg) no-repeat center center/contain;
				width: 100vw;
				height: 48.7rem;
				left: 0;
				top: 3rem;
		}
}
@media screen and (max-width: 767px) {
		.p-map-head:after {
				content: "";
				width: 20.8rem;
				height: 6.9rem;
				background: url(img/txt_map_favorite_sp.svg) no-repeat center center/contain;
				position: absolute;
				right: 0.5rem;
				top: -4.5rem;
		}
}
.p-map-head .-headline {
		width: 24.5rem;
    height: 24.5rem;
    background: url(img/bg_map_head_pc.svg) no-repeat center center / contain;
    position: absolute;
    left: 5rem;
    top: -9rem;
}
@media screen and (max-width: 767px) {
		.p-map-head .-headline {
				width: 14.2rem;
				height: 17rem;
				left: 1rem;
				top: -8rem;
				background-image: url(img/bg_map_head_sp.svg);
		}
}
.p-map-head .-headline .catch {
		display: inline-block;
		font-size: 2rem;
		font-weight: 700;
		line-height: 1.2;
		margin-left: 4.7rem;
		margin-top: 1rem;
}
@media screen and (max-width: 767px) {
		.p-map-head .-headline .catch {
				font-size: 1.5rem;
				margin-left: 1.8rem;
				margin-top: 1.5rem;
				line-height: 1.1;
				letter-spacing: -0.06rem;
		}
}
.p-map-head .-headline .ttl {
		font-size: 4.6rem;
		font-weight: 900;
		line-height: 1.1;
		display: block;
		margin: 3.2rem 0 0 1.5rem;
		text-align: center;
}
@media screen and (max-width: 767px) {
		.p-map-head .-headline .ttl {
				font-size: 2.9rem;
				margin: 2rem 0 0 1.2rem;
				line-height: 1.1;
		}
}
.p-map-head .-lead {
		font-size: 2.5rem;
		font-weight: 700;
		text-align: center;
		line-height: 1.2;
		padding-left: 3rem;
		position: absolute;
		left: 12rem;
		top: 21.5rem;
		display: inline-block;
}
@media screen and (max-width: 767px) {
		.p-map-head .-lead {
				left: 4rem;
				top: 13rem;
				font-size: 1.8rem;
				padding-top: 4rem;
				padding-left: 2rem;
		}
}
.p-map-head .-lead:before {
		content: "";
		width: 3.7rem;
		height: 7.9rem;
		background: url(img/line_map_lead_pc.svg) no-repeat center center/contain;
		position: absolute;
		left: 0;
		top: 0;
}
@media screen and (max-width: 767px) {
		.p-map-head .-lead:before {
				background: url(img/line_map_lead_sp.svg) no-repeat center center/contain;
				width: 16.5rem;
				height: 9.8rem;
		}
}
.p-map-head .-nav {
		position: relative;
		top: 0;
		right: 0;
		width: 100%;
}
.p-map-head .-nav:before {
		content: "";
		position: absolute;
		width: 53.7rem;
		height: 61.4rem;
		background: url(img/fig_map.svg) no-repeat center center/contain;
		top: 0;
		right: 4rem;
}
@media screen and (max-width: 767px) {
		.p-map-head .-nav:before {
				width: 37.5rem;
				height: 42.8rem;
				right: 0;
		}
}
.p-map-head .-nav .btn {
		position: absolute;
		background: #fff;
		padding: 0.7rem 2.2rem;
		border-radius: 5rem;
		display: inline-block;
		border: 1px solid #000;
		white-space: nowrap;
		font-size: 1.8rem;
		font-weight: 700;
		-webkit-transition: 0.4s;
		transition: 0.4s;
		letter-spacing: 0.1rem;
		cursor: pointer;
}
@media screen and (max-width: 767px) {
		.p-map-head .-nav .btn {
				font-size: 1.4rem;
				padding: 0.5rem 1.5rem;
				text-align: center;
				min-width: 7.9rem;
		}
}
@media screen and (any-hover: hover) and (min-width: 768px) {
		.p-map-head .-nav .btn:hover {
				opacity: 0.7;
		}
}
.p-map-head .-nav .btn.is-current {
		background: #2b2b2b;
		color: #fff;
		border: 1px solid #fff;
}
.p-map-head .-nav .btn.m-hokkaido {
		top: 7rem;
		right: 7rem;
}
@media screen and (max-width: 767px) {
		.p-map-head .-nav .btn.m-hokkaido {
				top: 4.8rem;
				right: 1.5rem;
		}
}
.p-map-head .-nav .btn.m-tohoku {
		top: 25.5rem;
		right: 9rem;
}
@media screen and (max-width: 767px) {
		.p-map-head .-nav .btn.m-tohoku {
				top: 17rem;
				right: 3rem;
		}
}
.p-map-head .-nav .btn.m-kanto {
		top: 40.5rem;
		right: 9rem;
}
@media screen and (max-width: 767px) {
		.p-map-head .-nav .btn.m-kanto {
				top: 28.5rem;
				right: 1.6rem;
		}
}
.p-map-head .-nav .btn.m-kansai {
		top: 47rem;
		right: 27rem;
}
@media screen and (max-width: 767px) {
		.p-map-head .-nav .btn.m-kansai {
				top: 32.5rem;
				right: 15.5rem;
		}
}
.p-map-head .-nav .btn.m-chugoku {
		top: 42.5rem;
		right: 35.5rem;
}
@media screen and (max-width: 767px) {
		.p-map-head .-nav .btn.m-chugoku {
				top: 27rem;
				right: 22rem;
		}
}
.p-map-head .-nav .btn.m-kyushu {
		top: 49.8rem;
		right: 43.8rem;
}
@media screen and (max-width: 767px) {
		.p-map-head .-nav .btn.m-kyushu {
				top: 33.5rem;
				right: auto;
				left: 0;
		}
}
.p-map-body {
		width: 50%;
		padding: 4rem 0 0 0;
		position: relative;
		margin-top: 18rem;
}
@media screen and (max-width: 767px) {
		.p-map-body {
				width: 100%;
				margin-top: -12rem;
				padding-top: 1.5rem;
				z-index: 2;
		}
}
.p-map-body:before {
		content: "";
		width: 49.8rem;
		height: 5.7rem;
		background: url(img/txt_map_favorite_pc.svg) no-repeat center center/contain;
		position: absolute;
		left: 1rem;
		top: -5.7rem;
}
@media screen and (max-width: 767px) {
		.p-map-body:before {
				display: none;
		}
}
.p-map-body:after {
		content: "";
		border-radius: 4.5rem 0 0 0;
		background: #fff6ee;
		border: 1px solid #000;
		border-right: none;
		position: absolute;
		left: -4rem;
		top: 0;
		width: calc(50vw + 4rem);
		height: 100%;
		z-index: -1;
}
@media screen and (max-width: 767px) {
		.p-map-body:after {
				left: 0;
				width: 100%;
				border-radius: 3rem 3rem 0 0;
		}
}
@media screen and (max-width: 767px) {
		.p-map-body {
				width: 100%;
		}
}
.p-map-body .-content .panel {
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-ms-flex-pack: start;
		-webkit-box-pack: start;
		        justify-content: flex-start;
		-ms-flex-align: start;
		-webkit-box-align: start;
		        align-items: flex-start;
		gap: 3rem;
		display: none;
		padding-bottom: 2rem;
}
.p-map-body .-content .panel.is-show {
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-ms-flex-pack: start;
		-webkit-box-pack: start;
		        justify-content: flex-start;
		-ms-flex-align: start;
		-webkit-box-align: start;
		        align-items: flex-start;
}
@media screen and (max-width: 767px) {
		.p-map-body .-content .panel.is-show {
				display: block;
		}
}
@media screen and (max-width: 767px) {
		.p-map-body .-content .panel {
				min-height: auto;
				padding: 0 2rem 0.1rem;
		}
}
.p-map-body .-content .panel-head {
		width: 6.2rem;
		height: 16rem;
		background-repeat: no-repeat;
		background-size: contain;
		margin-left: -1rem;
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-ms-flex-pack: center;
		-webkit-box-pack: center;
		        justify-content: center;
		-ms-flex-align: center;
		-webkit-box-align: center;
		        align-items: center;
}
@media screen and (max-width: 767px) {
		.p-map-body .-content .panel-head {
				width: 15.6rem;
				height: 5.5rem;
				margin: 0 auto 2.5rem;
		}
}
.p-map-body .-content .panel-head .area {
		-webkit-writing-mode: vertical-rl;
		    -ms-writing-mode: tb-rl;
		        writing-mode: vertical-rl;
		font-family: "Zen Kaku Gothic New vertical", sans-serif;
		font-size: 2.8rem;
		color: #fff;
		font-weight: 700;
		letter-spacing: 0.5rem;
}
@media screen and (max-width: 767px) {
		.p-map-body .-content .panel-head .area {
				-webkit-writing-mode: horizontal-tb;
				    -ms-writing-mode: lr-tb;
				        writing-mode: horizontal-tb;
				font-family: "Zen Kaku Gothic New", sans-serif;
				font-size: 2rem;
				letter-spacing: 0.2rem;
				margin-bottom: 0.4rem;
		}
}
.p-map-body .-content .panel-body {
		position: relative;
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
		z-index: 1;
}
.p-map-body .-content .panel-body .unit {
		position: relative;
		padding: 2rem 0 0 2.5rem;
		margin-bottom: 2.6rem;
}
@media screen and (max-width: 767px) {
		.p-map-body .-content .panel-body .unit {
				margin-bottom: 2rem;
		}
}
.p-map-body .-content .panel-body .unit:before {
		content: "";
		width: 0.8rem;
		height: 12rem;
		background: url(img/txt_map_unit_favorite.svg) no-repeat center center/contain;
		position: absolute;
		left: 0.9rem;
		top: 3.5rem;
}
@media screen and (max-width: 767px) {
		.p-map-body .-content .panel-body .unit:before {
				top: 3.8rem;
		}
}
.p-map-body .-content .panel-body .unit:after {
		content: "";
		width: 100%;
		height: calc(100% - 3rem);
		background: #fff;
		border: 1px solid #000;
		position: absolute;
		left: 0;
		bottom: 0;
		z-index: -1;
}
.p-map-body .-content .panel-body .unit a {
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-ms-flex-pack: start;
		-webkit-box-pack: start;
		        justify-content: flex-start;
		-ms-flex-align: start;
		-webkit-box-align: start;
		        align-items: flex-start;
		gap: 2.2rem;
		-webkit-transition: none;
		transition: none;
		-webkit-transform: translate3d(0, 0, 0);
}
.p-map-body .-content .panel-body .unit .nolink{
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-ms-flex-pack: start;
		-webkit-box-pack: start;
		        justify-content: flex-start;
		-ms-flex-align: start;
		-webkit-box-align: start;
		        align-items: flex-start;
		gap: 2.2rem;
		-webkit-transition: none;
		transition: none;
		-webkit-transform: translate3d(0, 0, 0);
}
@media screen and (any-hover: hover) and (min-width: 768px) {
		.p-map-body .-content .panel-body .unit a:hover {
				opacity: 1;
		}
		.p-map-body .-content .panel-body .unit a:hover .photo img {
				opacity: 0.7;
		}
		.p-map-body .-content .panel-body .unit a:hover .photo .photo-name {
				opacity: 1;
		}
}
@media screen and (max-width: 767px) {
		.p-map-body .-content .panel-body .unit a {
				display: block;
		}
	.p-map-body .-content .panel-body .unit .nolink{
		display: block;
}
}
.p-map-body .-content .panel-body .unit .photo {
		width: 26.1rem;
		height: 15.1rem;
		position: relative;
		margin: -2rem 0 2rem;
		z-index: 1;
		background: #000;
}
@media screen and (max-width: 767px) {
		.p-map-body .-content .panel-body .unit .photo {
				width: 100%;
				aspect-ratio: 301/174;
				height: auto;
				margin-bottom: 0;
		}
}
.p-map-body .-content .panel-body .unit .photo img {
		width: 100%;
		height: 100%;
		-o-object-fit: cover;
		   object-fit: cover;
		-webkit-transition: 0.4s;
		transition: 0.4s;
}
.p-map-body .-content .panel-body .unit .photo-name {
		-webkit-writing-mode: vertical-rl;
		    -ms-writing-mode: tb-rl;
		        writing-mode: vertical-rl;
		font-family:"Zen Kaku Gothic New vertical", sans-serif;
		font-size: 1.8rem;
		position: absolute;
		left: 1.9rem;
		top: -1rem;
		padding: 1rem 0.1rem;
		background: #fff;
		max-height: 15rem;
		z-index: 2;
}
.p-map-body .-content .panel-body .unit .txt {
		padding: 3.5rem 2rem 5rem 0;
		font-size: 1.5rem;
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
}
@media screen and (max-width: 767px) {
		.p-map-body .-content .panel-body .unit .txt {
				padding: 1.5rem 0 5rem 2rem;
		}
}
.p-map-body .-content .panel-body .unit .btn {
		width: 11.6rem;
		height: 1.5rem;
		background: url(img/btn_map_readmore.svg) no-repeat center center/contain;
		position: absolute;
		right: 1.5rem;
		bottom: 1rem;
}
.p-map-body .-content .panel.m-hokkaido .panel-head {
		background-image: url(img/bg_map_btn01_pc.svg);
}
@media screen and (max-width: 767px) {
		.p-map-body .-content .panel.m-hokkaido .panel-head {
				background-image: url(img/bg_map_btn01_sp.svg);
		}
}
.p-map-body .-content .panel.m-tohoku .panel-head {
		background-image: url(img/bg_map_btn02_pc.svg);
}
@media screen and (max-width: 767px) {
		.p-map-body .-content .panel.m-tohoku .panel-head {
				background-image: url(img/bg_map_btn02_sp.svg);
		}
}
.p-map-body .-content .panel.m-kanto .panel-head {
		background-image: url(img/bg_map_btn03_pc.svg);
}
@media screen and (min-width: 768px) {
		.p-map-body .-content .panel.m-kanto .panel-head {
				height: 19.6rem;
		}
}
@media screen and (max-width: 767px) {
		.p-map-body .-content .panel.m-kanto .panel-head {
				background-image: url(img/bg_map_btn03_sp.svg);
		}
}
.p-map-body .-content .panel.m-kanto .panel-head .area {
		letter-spacing: 0;
}
.p-map-body .-content .panel.m-kansai .panel-head {
		background-image: url(img/bg_map_btn04_pc.svg);
}
@media screen and (max-width: 767px) {
		.p-map-body .-content .panel.m-kansai .panel-head {
				background-image: url(img/bg_map_btn04_sp.svg);
		}
}
.p-map-body .-content .panel.m-chugoku .panel-head {
		background-image: url(img/bg_map_btn05_pc.svg);
}
@media screen and (min-width: 768px) {
		.p-map-body .-content .panel.m-chugoku .panel-head {
				height: 19.6rem;
		}
}
@media screen and (max-width: 767px) {
		.p-map-body .-content .panel.m-chugoku .panel-head {
				background-image: url(img/bg_map_btn05_sp.svg);
		}
}
.p-map-body .-content .panel.m-chugoku .panel-head .area {
		letter-spacing: 0;
}
.p-map-body .-content .panel.m-kyushu .panel-head {
		background-image: url(img/bg_map_btn06_pc.svg);
}
@media screen and (min-width: 768px) {
		.p-map-body .-content .panel.m-kyushu .panel-head {
				height: 19.6rem;
		}
}
@media screen and (max-width: 767px) {
		.p-map-body .-content .panel.m-kyushu .panel-head {
				background-image: url(img/bg_map_btn06_sp.svg);
		}
}
.p-map-body .-content .panel.m-kyushu .panel-head .area {
		letter-spacing: 0.08rem;
}

.gecko .p-opening .en img, .gecko .p-learn-body .-unit a .head img {
		-webkit-transform: rotate(0.0001deg);
		        transform: rotate(0.0001deg);
}
.gecko .p-map-body .-content .panel-body .unit .photo-name {
		font-family:  "Zen Kaku Gothic New", sans-serif;
		font-weight: 700;
}

@media screen and (max-width: 767px) {
		.android .p-opening {
				height: 100svh;
		}
}

/*
.android {
	//popup for android 横
	@media screen and (min-width: 767px) and (orientation: landscape) {
		.mfp-wrap {
			margin-top: 100px;
			transform: translate(-50%, 0);
			top: auto!important;
			position: absolute!important;
		}
		.mfp-close {
			top: calc(50% - 38rem);
		}		
	}
}
*/
.iphone.safari .p-day-head .-icn {
		letter-spacing: -0.2rem;
}

.p-indexsponsor .-slider {
		width: 100%;
		height: 24.5rem;
		overflow: hidden;
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-ms-flex-pack: start;
		-webkit-box-pack: start;
		justify-content: flex-start;
		-ms-flex-align: start;
		-webkit-box-align: start;
		align-items: flex-start;
		z-index: 1;
}
.p-indexsponsor .-slider.-bottom {
  margin-top: 0;
}

.p-indexsponsor .-slider .slide img {
  display: block;
}
@media screen and (max-width: 767px) {
		.p-indexsponsor .-slider {
				height: 13.5rem;
				width: 100%;
				position: relative;
				left: 0;
		}
}
.p-indexsponsor .-slider .wrap {
		display: -ms-flexbox;
		display: -webkit-box;
		display: flex;
		-ms-flex-pack: start;
		-webkit-box-pack: start;
		        justify-content: flex-start;
		-ms-flex-align: start;
		-webkit-box-align: start;
		        align-items: flex-start;
		-webkit-animation: horizontal-scroll 40s linear infinite;
		        animation: horizontal-scroll 40s linear infinite;
}
.p-indexsponsor .-slider .wrap .slide {
		width: 31.2rem;
		margin: 0;
		border-radius: 0;
		height: 20rem;
		/* border: 1px solid #004278; */
		et;
		set;
		set;
		set;
}
.p-indexsponsor .-slider .wrap .slide img{
		border-radius: 0;
}

@media screen and (max-width: 767px) {
		.p-indexsponsor .-slider .wrap .slide {
				width: 21.6rem;
				height: 12.5rem;
				padding: 0 0.05rem;
		}
}