@charset "utf-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Grey+Qo&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,100..900;1,9..144,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@400..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Klee+One:wght@400;600&display=swap');
body{
	position: relative;
}
.mv_box_wrap, .mv_box{
	position: relative;
	padding: 0;
}
.ttl01_wrap{
	position: absolute;
	top: 35%;
	left: 5vw;
	transform: translateY(-50%);
	z-index: 8888;
}
.mv_box{
	height: 100vh;
	position: relative;
	z-index: -1;
}
.mv_box iframe{
	top: 50% !important;
	transform: translateY(-59%);
}
.video-container, .instagram-container, .facebook-container {
    max-width: none;
    margin: 0 auto;
}
.movie_box{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
h1.ttl01{
	font-size: 18rem;
	color: #fff;
	font-family: "Grey Qo", cursive;
	opacity: .5;
	font-weight: 400;
	position: absolute;
	transform: translateY(-60%) rotate(3deg);
}
.ttl01_txt, .ttl01_subtxt{
	position: relative;
	z-index: 1;
	color: #fff;
	text-shadow: 0 0 4px #99a3c1;
}
.ttl01_txt{
	font-size: 8rem;
	line-height: 1.4;
	opacity: .8;
	font-family: "Caveat", cursive, YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.ttl01_subtxt{
	font-size: 2.4rem;
	font-family: "Klee One", cursive, YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
h2.ttl02{
	font-size: 3.4rem;
	margin-bottom: 2rem;
	line-height: 1.7;
}
h2.ttl02 .big{
	font-size: 4rem;
	display: inline-block;
}
h2.ttl02 span.subtxt{
	display: block;
	font-size: 2rem;
	color: #f3bcc2;
	border-top: 1px solid #445266;
	padding-top: .5rem;
}
h3.ttl03{
	line-height: 1.7;
}
/*pop_box*/
.pop_box{
	position: fixed;
	right: 1vw;
	bottom: 2vh;
	z-index: 9999;
}
.pop_box a{
	padding: 5.5rem 5rem;
	color: #fff;
	display: block;
	position: relative;
	background-image: url("../img/pop_bg.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
.pop_box a p{
	line-height: 1.4;
}
.insta_box{
	padding: 5rem 0 0;
	margin-bottom: -10rem;
}
.insta_box p{
	max-width: 600px;
	margin: 0 auto;
	position: relative;
	z-index: 50;
}
/*news*/
.news {
	padding: 5rem 0 0;
}
.news .news_wrap{
	position: relative;
	padding: 0;
	margin: 15rem 0;
	background: rgba(88,114,141,.6);
}
.news .news_wrap::before, .news .news_wrap::after{
	display: block;
	content: "";
	background-image: url("../img/index_newsbg01.png");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	width: 100%;
	height: 15rem;
	left: 0;
	top: -15rem;
	z-index: 1;
}
.news .news_wrap::after{
	background-image: url("../img/index_newsbg02.png");
	background-position: center bottom;
	top: auto;
	bottom: -15rem;
}
.news_box {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
	height: 230px;
	padding: 3rem;
    background-color: rgba(255, 255, 255, .7);
}
.news h2.ttl02 span.subtxt{
	color: #f0eff5;
}
.news .main_box{
	position: relative;
	z-index: 2;
}
.news_box .widget-entry-card-content{
	margin-left: 0;
	display: flex;
	flex-flow: row-reverse;
	justify-content: flex-end;
	border-bottom: 1px solid #8c8ba0;
	padding: .5rem 0 1rem;
	margin-bottom: .5rem;
}
.news_box .widget-entry-cards figure, .new-entry-card-meta .post-update{
	display: none;
}
.news_box .new-entry-card-meta{
	display: block;
	width: 20%;
}
.news_box .new-entry-card-meta .new-entry-card-date{
	display: block;
}
.news_box .new-entry-card-meta .post-date{
	font-size: 1.6rem;
}
.news_box .card-title{
	width: 80%;
	text-decoration: none;
	font-family: "Noto Sans JP", sans-serif ,YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	color: #8c8ba0;
	transition: .5s;
}
.news_box a:hover, .news_box a:hover .card-title{
	color: #8c8ba0;
	background-color: transparent;
	opacity: .7;
}
/*banner*/
.banner {
	margin-top: -21vh;
	padding-top: 17vh;
	position: relative;
	z-index: 2;
}
.banner::before{
	display: block;
	content: "";
	background-image: url("../img/index_mvbg.png");
	background-position: center top;
	background-size: cover;
	background-repeat: no-repeat;
	width: 100%;
	height: 100%;
	max-height: 290px;
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
}
.banner_box{
	margin-top: -8vh;
}
.banner h2.ttl02{
	font-size: 3rem;
	line-height: 1.4;
	color: #acabc3;
}
.banner h2.ttl02 span.pink{
	border-top: none;
	display: block;
	font-size: 5rem;
	color: #ebc4b4;
	padding-top: 0;
	border-bottom: 1px solid #ebc4b4;
}
.banner h2.ttl02 .purple{
	font-size: 3rem;
	line-height: 1.4;
	color: #8280a3;
}
.banner .banner_txt{
	font-weight: 600;
	font-size: 1.8rem;
}
.banner .img_box{
	width: 50%;
	margin-left: -10%;
}
.banner .txt_wrap{
	width: 60%;
	position: relative;
}
.banner .txt_box{
	margin: 0 auto;
	max-width: 550px;
}
.banner .txt_box li{
	width: calc(100%/3);
	margin: 1rem 0;
	position: relative;
}
.banner .txt_box li .point_ttl{
	background-color: #455266;
	color: #fff;
	padding: 1rem 1rem;
	position: relative;
	z-index: 3;
	border-radius: 2rem;
	margin-bottom: -3rem;
	width: 80%;
}
.banner .txt_box li p.point_ttl::before, .banner .txt_box li p.point_ttl::after{
	display: none;
}
.banner .txt_box li p{
	width: 95%;
	margin: 0 auto;
	text-align: center;
	font-size: 1.2rem;
	padding: 5rem 0 4rem;
	line-height: 1.6;   
	font-weight: 600;
	position: relative;
	z-index: 1;
}
.banner .txt_box li p::before{
	display: block;
	content: "";
	border: 2px solid #455266;
	position: absolute;
	width: 160px;
	height: 160px;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	border-radius: 50%;
	z-index: -1;
}
.banner .txt_box li p::after{
	display: block;
	content: "";
	background-color: rgba(255,255,255,.6);
	position: absolute;
	width: 160px;
	height: 160px;
	top: 50%;
	left: 50%;
	transform: translate(-47%,-47%);
	border-radius: 50%;
	z-index: -2;
}
.banner h3.banner_ttl03{
	font-size: 3.2rem;
	text-align: center;
	line-height: 1.7;
}
.banner h3.banner_ttl03 span.tri_box{
    display: inline-block;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 12px solid transparent;
    border-bottom: 12px solid transparent;
    border-left: 16px solid #7A664B;
    border-right: 0;
	margin: 0 .5rem 0 1rem;
}
.banner h3.banner_ttl03 .campaign_ttl{
	display: inline-block;
}
.banner h3.banner_ttl03 .campaign_ttl .pink{
	display: inline-block;
	font-size: 4rem;
	color: #f589b2;
}
.campaign .flex .button{
	width: 50%;
	margin: 0 auto;
}
.campaign .flex .button:nth-of-type(2) a{
	background-color: #cba7d3;
	border: 2px solid #cba7d3;
}
.campaign .flex .button:nth-of-type(2) a:hover{
	background-color: #e3cae9;
}
.banner dt{
	font-size: 2.1rem;
	border: 1px solid #455266;
	padding: .5rem 1rem;
	text-align: center;
	margin: 0 auto 3rem;
	width: 95%;
}
.banner .point01{
	margin-bottom: 0;
}
.banner .point01 dl{
	position: relative;
}
.banner .point01 dd{
	text-align: center;
}
.banner .point01 dd.nomal{
	font-size: 2rem;
	margin: 1rem auto;
	width: 40%;
}
.banner dd.nomal p, .banner dd.nomal3 p{
	text-align: center;
	position: relative;
	background-color: #445266;
	color: #fff;
	width: 80%;
	margin: 0 auto;
}
.banner dd.nomal p::before, .banner dd.nomal3 p::before {
	display: block;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 26px solid transparent;
	border-bottom: 26px solid transparent;
	border-left: 35px solid #445266;
	border-right: 0;
	position: absolute;
	right: -35px;
	tab-size: 0;
}
.banner dd.nomal3 p{
	padding: .6rem 0;
}
.banner dd.nomal3 p::before{
	top: 0;
}
.banner .point01 dd.nomal .big{
	padding-left: 1rem;
}
.banner .point01 dd.special{
	font-size: 2.1rem;
	position: absolute;
	left: 51%;
	top: 46%;
	transform: translate(-50%,-30%) rotate(-21deg);
}
.banner dd.special span{
	position: relative;
	display: block;
	width: 100%;
}
.banner dd.special span::before, .banner dd.special span::after{
	display: block;
	content: "";
	background-image: url("../img/bikk_l.svg");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	position: absolute;
	left: -35%;
	top: 65%;
	transform: translateY(-50%);
	width: 100%;
	height: 80%;
}
.banner dd.special span::after{
	background-image: url("../img/bikk_r.svg");
	background-position: right center;
	left: auto;
	top: 22%;
	right: -35%;
	transform: rotate(-10deg);
}
.banner dd.big, .banner dd.big2{
	font-size: 3rem;
	color: #f589b2;
	font-weight: 800;
	width: 60%;
}
.banner .dd.big span{
	padding: 0 2rem;
}
.banner dd.big .txt_en{
	font-size: 7rem;
	padding: 0 0 0 1rem;
	line-height: 1.4;
	letter-spacing: 5px;
	font-family: "Fraunces", serif;
	font-optical-sizing: auto;
}
.banner .point02 dt{
	margin-bottom: 0;
}
.banner .point02 dd{
	font-size: 2rem;
	width: 40%;
	text-align: center;
}
.banner .point02 dd.nomal p{
	line-height: 1.4;
	padding: 1rem 0;
}
.banner .point02 dd.nomal p::before {
	border-top: 38px solid transparent;
	border-bottom: 38px solid transparent;
	top: 0;
}
.banner .point02 dd.big{
	font-size: 7rem;
	width: 60%;
}
.banner .point02 dd.big2{
	font-size: 5rem;
	width: 60%;
}
.banner .point02 dd.big .txt_en{
	font-size: 10rem;
	line-height: 1;
}
.banner .im_line{
	background-size: 100% 15px;
}
.banner .point02 dd.special{
	margin-top: 2rem;
	width: 100%;
	position: relative;
	color: #f589b2;
	font-weight: 600;
}
.banner .point02 dd.special span{
	font-weight: 400;
	color: #445266;
	width: auto;
	position: absolute;
	left: 18%;
	top: -8%;
	transform: translateX(-50%) rotate(-15deg);
}
.banner .point02 dd.special strong.im_line{
	font-size: 3.8rem;
	padding: 0 0 0 .5rem;
	margin-left: .5rem;
}
.featherlight-sample {
	display: none;
}
.taiken_sc h3.ttl03{
	font-size: 3rem;
	text-align: center;
	width: 600px;
}
.taiken_sc h3.ttl03 .pink{
	display: inline-block;
	color: #f589b2;
	font-size: 4rem;
}
.taiken_sc p{
	position: relative;
	text-align: center;
}
.taiken_sc p::before {
    display: block;
    content: "";
    background-color: #b9bace;
    width: 30px;
    height: 3px;
    border-radius: 3rem;
    position: absolute;
    top: -5%;
    left: 50%;
    transform: translate(-50%);
}
.taiken_sc p.small{
	background-color: rgba(68,71,102, .1);
	margin: 1rem auto 0;
	padding: 2rem;
	width: 100%;
	max-width: 300px;
}
.taiken_sc p.small::before {
    display: none;
}
.taiken_sc p .big{
	color: #f589b2;
	font-weight: 600;
}
.taiken_sc table{
	width: 100%;
	max-width: 600px;
	box-shadow: 0 0 6px 0 #8c8ba0;
	margin:  2rem auto;
}
.taiken_sc table tbody tr{
	border-bottom: 1px solid #8c8ba0;
}
.taiken_sc table tbody tr:last-child{
	border-bottom: none;
}
.taiken_sc table th, .taiken_sc table td{
	padding: .5rem;
	text-align: center;
}
.taiken_sc table thead{
	background-color: #8c8ba0;
	color: #fff;
}
.taiken_sc table thead th:first-child, .taiken_sc table thead th:last-child{
	width: 25%;
}
.taiken_sc table thead th:nth-child(2){
	width: 50%;
}
.taiken_sc table tbody th{
	background-color: #b0b4c8;
	color: #fff;
}
/*pirates*/
.pirates ul li{
	margin-bottom: 5rem;
}
.pirates ul li:last-child{
	margin-bottom: 0;
}
.pirates .im_line, .reformer .im_line, .price .im_line, .program .option .im_line{
	background-image: linear-gradient(to right, rgb(228,212,229), #b5afc4);
	padding: .5rem;
}
.pirates .img_box{
	width: 55%;
	margin-right: -5%;
}
.pirates .txt_box{
	width: 50%;
	position: relative;
}
.pirates ul li:first-child .img_box{
	margin-left: -5%;
	margin-right: 0;
}
.pirates .txt_box h3.ttl03{
	font-size: 2rem;
	border-left: 2px solid #665544;
	padding: 1rem 0 1rem 10rem;
	position: relative;
}
.pirates .txt_box h3.ttl03::before{
	display: block;
	content: "01.";
	font-size: 5rem;
	position: absolute;
	left: 3rem;
	top: 40%;
	transform: translateY(-50%);
	font-family: "Caveat", cursive, YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	color: #f3bcc2;
}
.pirates ul li:nth-child(2) .txt_box h3.ttl03::before{
	content: "02.";
}
.pirates .txt_box p{
	font-size: 1.4rem;
	border-left: 2px solid #b5afc4;
	padding: 1rem 0 1rem 3rem;
	text-shadow: 1px 1px 0 #f0f3fc, -1px -1px 0 #f0f3fc, -1px 1px 0 #f0f3fc, 1px -1px 0 #f0f3fc, 0px 1px 0 #f0f3fc, 0 -1px 0 #f0f3fc, -1px 0 0 #f0f3fc, 1px 0 0 #f0f3fc;
}
.pirates .mov_wrap{
	background-color: rgba(255, 255, 255, .5);
	padding: 8rem;
	margin-bottom: 5rem;
	box-shadow: 0 0 6px 0 #b5afc4;
}
.pirates .mov_wrap .ttl03{
	background: none;
	box-shadow: none;
	font-size: 3rem;
	border-bottom: 1px solid #f3bcc2;
	width: 100%;
	max-width: 700px;
	margin: 0 auto 2rem;
}
.pirates .mov_wrap .ttl03 span {
	position: relative;
	transform: rotate(0);
	font-family: inherit;
	display: inline-block;
	left: 0;
	top: 0;
	font-size: 3.8rem;
	color: #ebb4c9;
}
.pirates ul.mov_box li{
	width: calc(100% / 2);
	padding: 0 1rem;
	margin: 0 auto;
	position: relative;
	height: 275px;/* 消す */
}
.video-container .video {
    position: relative;
    padding-bottom: 56.25%;
    margin-top: 30px;
    height: 0;
    overflow: hidden;
    max-width: 100%;
}
/*reformer*/
.reformer{
	background-image: url("../img/index_reformerbg.jpg");
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	box-shadow: 0 0 6px 0 #b2afc4;
}
.reformer h2.ttl02 span.subtxt{
	color: #fff;
}
.reformer .img_box{
	position: relative;
	max-width: 1000px;
	width: 80%;
	margin: 5rem auto;
}
.reformer .img_box ul li{
	position: absolute;
	left: -5%;
	top: -5%;
	text-align: center;
}
.reformer .img_box ul li:nth-child(2){
	display: inline-block;
	width: auto;
	left: auto;
	right: -5%;
	top: 20%;
	transform: translateY(-50%);
}
.reformer .img_box ul li:last-child{
	position: absolute;
	left: 15%;
	top: auto;
	bottom: -5%;
}
.reformer .img_box ul li p{
	background-color: rgba(68,71,102, .6);
	color: #fff;
	padding: 1.5rem;
	border-radius: 2rem;
	display: inline-block;
	position: relative;
}
.reformer .img_box ul li p::before{
	display: block;
	content: "";
	width: 105px;
	height: 1.5px;
	border-radius: 1rem;
	background-color: #665544;
	position: absolute;
	right: -20%;
	bottom: -32%;
	transform: rotate(45deg);
}
.reformer .img_box ul li:nth-child(2) p::before{
	width: 65px;
	right: auto;
	left: -11%;
	bottom: auto;
	top: 109%;
	transform: rotate(-42deg);
}
.reformer .img_box ul li:last-child p::before{
	width: 65px;
	right: auto;
	left: 25%;
	bottom: auto;
	top: -15%;
	transform: rotate(-50deg);
}
.reformer .r_point .txt_box{
	background-color: rgba(255,255,255,.7);
	padding: 3rem;
	text-align: center;
	max-width: 1000px;
	width: 95%;
	box-shadow: 0 0 6px 0 #eee;
	margin: 0 auto 5rem;
}
/*program*/
.program h3.ttl03{
	font-size: 1.7rem;
	text-align: center;
	background: rgb(220,210,200);
	background: linear-gradient(141deg, rgba(226,226,231,1) 0%, rgba(251,250,255,1) 31%, rgba(203,200,214,1) 66%, rgba(226,226,231,1) 100%);
	padding: .8rem 0;
	margin-top: 1rem;
	margin-bottom: 1.5rem;
	box-shadow: 0 0 6px 0 #9c9daf;
}
.program h3.ttl03 span{
	display: block;
	position: absolute;
	left: -2%;
	top: -5%;
	transform: rotate(-5deg);
	font-family: "Caveat", cursive, YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-size: 3rem;
}
.program ul.pro_list{
	margin: 5rem auto 0;
	gap: 2%;
	justify-content: center;
}
.program ul.pro_list li{
	width: calc(94%/3);
	background-color: rgba(255,255,255,.8);
	padding: 2rem;
	box-shadow: 0 0 6px 0 #cccbd9;
	position: relative;
	margin-bottom: 3rem;
}
.program ul.pro_list dl{
	border-bottom: 1px dashed #f3bcc2;
	padding-bottom: .5rem;
	margin-bottom: .5rem;
}
.program ul.pro_list dt{
	padding-right: 2rem;
}
.program ul.pro_list .txt_box_a{
	position: absolute;
	left: 8%;
	top: 6%;
	background-color: #445266;
	color: #fff;
	padding: .5rem 1rem;
}
.program .staff ul{
	justify-content: space-between;
}
.program .staff li{
	width: calc(95%/6);
	text-align: center;
}
.program .staff li img{
	border-radius: 50%;
	box-shadow: 0 0 6px 0 #f3bcc2;
}
.program .option h3.ttl03{
	background: none;
	box-shadow: none;
	font-size: 3rem;
	border-bottom: 1px solid #f3bcc2;
	width: 100%;
	max-width: 700px;
	margin: 0 auto 2rem;
}
.program .option h3.ttl03 span{
	position: relative;
	transform: rotate(0);
	font-family: inherit;
	display: inline-block;
	left: 0;
	top: 0;
	font-size: 3.8rem;
	color: #ebb4c9;
}
.program .option{
	width: 100%;
	max-width: 700px;
	margin: -15rem auto 0;
	position: relative;
}
.program .option img{
	opacity: .5;
	position: relative;
	z-index: -1;
}
.program .option .txt_box{
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-color: rgba(255, 255, 255, .7);
	padding: 5rem;
	box-shadow: 0 0 6px 0 #8ea9ad;
}
/*price*/
.price {
	padding: 0;
/*	margin-top: -15rem;*/
}
.price .main_box{
	background-color: rgb(68,71,102, .2);
	padding: 10rem;
	position: relative;
	z-index: 1;
}
.price .main_box::before{
	display: block;
	content: "";
	border: 1px solid #f0eff5;
	position: absolute;
	width: 92%;
	height: 90%;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	z-index: -1;
}
.price h2.ttl02 span.subtxt {
    color: #f0eff5;
}
.price h3.ttl03{
	text-align: center;
	margin-bottom: 1rem;
	font-size: 3rem;
}
.price h3.ttl03 span{
	display: block;
	color: #f0eff5;
	padding-top: 1rem;
	font-size: 1.8rem;
	position: relative;
}
.price h3.ttl03 span::before{
	display: block;
	content: "";
	background-color: #f0eff5;
	width: 30px;
	height: 3px;
	border-radius: 3rem;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%);
}
.price table{
	box-shadow: 0 0 6px #cccbd9;
	margin: 2rem auto;
	max-width: 600px;
}
.price table tbody th{
	background-color: #8c8ba0;
	color: #fff;
}
.price table tbody th, .price table tbody td{
	padding: 2rem 1rem;
}
.price table tbody td{
	background-color: rgba(255,255,255,.7);
	text-align: center;
}
.price .p_memvers{
	margin-top: 5rem;
}
.price .p_memvers table thead th{
	background-color: #8c8ba0;
	color: #fff;
	padding: 2rem;
	border-right: 1px solid #fff;
}
.price .p_memvers table thead th:last-child{
	border-right: none;
}
.price .p_memvers table tr{
	border-bottom: 1px solid #cfd2df;
}
.price .p_memvers table tr:last-child{
	border-bottom: none;
}
.price .p_memvers table td{
	border-left: 1px solid #cfd2df;
}
/*schedule*/
.schedule{
	position: relative;
	padding-bottom: 20rem;
}
.schedule::before{
	display: block;
	content: "";
	background-image: url("../img/index_accbg.png");
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	width: 100%;
	height: 100%;
	bottom: 0;
	left: 0;
	z-index: -1;
}
.schedule table{
	margin: 0 auto 3rem;
	width: 100%;
}
.schedule table th {
    padding: 2rem 1rem;
	background-color: #8c8ba0;
	color: #fff;
	width: calc(80% / 3);
	border-left: 1px solid #fff;
}
.schedule table th:first-child{
	border-left: none;
	width: 20%;
}
.schedule table tbody th{
	background-color: #b0b4c8;
}
.schedule table tbody tr{
	border-bottom: 1px dashed #8c8ba0;
}
.schedule table tbody tr:nth-child(2), .schedule table tbody tr:nth-child(5), .schedule table tbody tr:nth-child(8), .schedule table tbody tr:nth-child(11), .schedule table tbody tr:nth-child(14), .schedule table tbody tr:last-child{
	border-bottom: 1px solid #8c8ba0;
}
.schedule table td {
    padding: .5rem 1rem;
	text-align: center;
	background-color: rgba(255,255,255,.6);
}
/*access*/
.access {
	background-color: rgba(255,255,255,.8);
	position: relative;
	z-index: 0;
	padding-top: 0;
	padding-bottom: 30rem;
}
.access .ttl03{
	font-size: 3rem;
	margin-top: 3rem;
}
.access .acc_txt li{
	border-bottom: 1px dashed #dcdbe8;
	padding-bottom: 1rem;
	margin-bottom: 1rem;
}
.access .acc_txt dl{
	align-items: center;
}
.access .acc_txt dt{
	width: 120px;
}
.access .acc_txt dd{
	width: calc(100% - 120px);
	font-weight: 400;
}
.access .acc_txt dd dl:nth-of-type(1){
	margin-bottom: 1rem;
	padding-bottom: 1rem;
	border-bottom: 1px dashed #dcdbe8;
}
.access .acc_txt dd dt{
	width: 60px;
}
.access .acc_txt dd dd{
	width: calc(100% - 60px);
}
.access .img_box{
	width: 55%;
	margin-left: -5%;
	position: relative;
	z-index: -1;
}
@media screen and (max-width: 1680px) {
	.mv_box{
		max-height: 780px;
	}
	.video-container .video{
		margin-top: 10px;
	}
	.banner{
		margin-top: -22vh;
	}
}
@media screen and (max-width:1536px) {
	.mv_box iframe{
		width: 120% !important;
		left: 50% !important;
		transform: translate(-50%, -57%);
	}
}
@media screen and (max-width:1440px) {
	.mv_box iframe{
		transform: translate(-50%, -51%);
	}
	.banner{
		margin-top: -24vh;
	}
}
@media screen and (max-width:1366px) {
	.mv_box{
		height: 72vh;
	}
	.mv_box iframe{
		width: 105% !important;
		left: 50% !important;
		transform: translate(-50%, -53%);
	}
	.banner{
		margin-top: -24vh;
	}
}
@media screen and (max-width:1280px) {
	.banner{
		margin-top: -25vh;
	}
}
@media screen and (max-width:1260px) {
	.ttl01_txt{
		font-size: 5rem;
	}
	.ttl01_subtxt{
		font-size: 2rem;
	}
	.mv_box{
		height: 85vh;
		margin-top: 2rem;
	}
	.mv_box .video-container{
		width: 118%;
	}
	.mv_box .video-container .video{
		margin-top: 0;
	}
	.mv_box iframe{
		top: 48% !important;
		left: 47% !important;
	}
	.banner{
		margin-top: -17vh;
		padding-top: 20vh;
	}
	.banner::before{
		max-height: 180px;
	}
	.banner h2.ttl02, .banner h2.ttl02 .big{
		font-size: 2.4rem;
	}
	.banner h2.ttl02 .pink, .banner h2.ttl02 span.subtxt{
		font-size: 4rem;
	}
	.banner .banner_txt{
		font-size: 1.6rem;
	}
	.banner h3.banner_ttl03{
		font-size: 2.6rem;
	}
	.banner h3.banner_ttl03 .campaign_ttl .pink{
		font-size: 3.2rem;
	}
	.banner .point02 dd.special{
		padding-top: .5rem;
	}
	.banner .point02 dd.special span{
		left: 14%;
	}
	.insta_box {
		padding-top: 0;
	}
	.insta_box p{
		max-width: 500px;
	}
	.reformer .img_box ul li{
		left: -3%;
	}
	.reformer .img_box ul li:nth-child(2){
		right: -3%;
	}
	.reformer .img_box ul li p::before{
		width: 92px;
		transform: rotate(58deg);
	}
	.reformer .img_box ul li:nth-child(2)::before{
		width: 56px;
		transform: rotate(-57deg);
	}
	.reformer .img_box ul li:last-child{
		bottom: -7%;
	}
	.reformer .r_point .txt_box{
		text-align: left;
	}
	.program ul.pro_list li{
		width: calc(98% /3);
		padding: 1.5rem;
	}
	.program h3.ttl03{
		font-size: 1.3rem;
	}
	.program h3.ttl03 span{
		font-size: 2.1rem;
	}
	.program .pro_list{
		font-size: 1.3rem;
	}
	.program .option h3.ttl03{
		font-size: 2rem;
	}
	.program .option h3.ttl03 span{
		font-size: 2.8rem;
	}
	.program .option{
		width: 80%;
	}
	.program .option .txt_box{
		padding: 3rem;
	}
	.price .main_box{
		padding: 6rem;
	}
	.price .main_box::before{
		height: 92%;
	}
	.price h3.ttl03{
		font-size: 2rem;
	}
	.price h3.ttl03 span{
		font-size: 1.4rem;
	}
	.schedule{
		padding-bottom: 13rem;
	}
	.schedule table thead th{
		width: 27%;
	}
	.schedule table thead th:first-child{
		width: 16%;
	}
	.access .acc_txt{
		width: 100% !important;
	}
	.access .img_box{
		width: 80%;
		margin: 0 auto;
	}
}
@media screen and (max-width:1024px) {
	.mv_box{
		height: 80vh;
	}
	.mv_box .video-container{
		width: 125%;
	}
	.mv_box iframe{
		top: 48% !important;
		left: 44% !important;
	}
}
@media screen and (max-width: 1024px) and (orientation: portrait) {
	.mv_box{
		height: 46vh;
	}
	.movie_box video {
		height: 50vh;
    }
	.banner{
		margin-top: -10vh;
		padding-top: 15vh;
	}
}
@media screen and (max-width:999px){
	.mv_box {
		height: 44vh;
    }
	.ttl01_subtxt{
		font-size: 1.6rem;
	}
	h2.ttl02{
		font-size: 3rem;
	}
	h2.ttl02 .big{
		font-size: 3.8rem;
	}
	h2.ttl02 span.subtxt{
		font-size: 1.8rem;
	}
	.banner{
		margin-top: -12vh;
	}
	.banner .img_box{
		width: 80%;
		margin: 0 auto -5rem;
	}
	.banner .txt_wrap{
		width: 100%;
	}
	.insta_box {
		padding-top: 5rem;
	}
	.news .news_wrap{
		margin: 11rem 0;
	}
	.news .news_wrap::before, .news .news_wrap::after{
		height: 11rem;
		top: -11rem;
	}
	.news .news_wrap::after{
		top: auto;
		bottom: -11rem;
	}
	.news::before, .news::after{
		height: 6rem;
	}
	#newsWrap .clearfix .up_ymd{
		font-size: .8rem;
		width: 25%;
	}
	#newsWrap .clearfix .title{
		font-size: 1rem;
		width: 75%;
	}
	.pirates .txt_box{
		width: 60%;
	}
	.pirates .img_box{
		width: 45%;
	}
	.pirates li:first-child .img_box{
		margin-left: -5%;
	}
	.pirates .txt_box h3.ttl03::before{
		font-size: 2.8rem;
		left: 1.5rem;
	}
	.pirates .txt_box h3.ttl03{
		font-size: 1.7rem;
		padding: .5rem 0 .5rem 6rem;
	}
	.pirates .txt_box p{
		padding-left: 1.5rem;
		font-size: 1.2rem;
	}
	.pirates .mov_wrap{
		padding: 3rem;
	}
	.pirates .mov_wrap .video-container .video{
		margin-top: 0;
	}
	.reformer .img_box{
		margin: 5rem auto 9rem;
	}
	.reformer .img_box ul li {
		left: -10%;
		top: -12%;
	}
	.reformer .img_box ul li:nth-child(2) {
		right: -12%;
		top: 14%;
	}
	.reformer .img_box ul li:last-child {
		bottom: -23%;
	}
	.reformer .img_box ul li:nth-child(2) p::before {
		width: 55px;
		left: -5%;
		top: 113%;
		transform: rotate(-55deg);
	}
	.program ul.pro_list .txt_box_a{
		left: 10%;
	}
}
@media screen and (max-width:768px){
	.banner::before {
		max-height: 150px;
    }
	.mv_box {
		height: 45vh;
    }
	.mv_box iframe{
		height: 60vh !important;
		width: 125% !important;
		transform: translate(-50%, -56%);
	}
}
@media screen and (max-width:767px){
	.mv_box{
		height: 75vh;
	}
	.ttl01_wrap{
		top: 26%;
		left: 5%;
	}
	h2.ttl02{
		font-size: 2.8rem;
	}
	h2.ttl02 .big{
		font-size: 3.2rem;
	}
	.pop_box{
		right: 1.5%;
		bottom: .5%;
	}
	.pop_box a{
		padding: 4.5rem 3rem;
	}
	.pop_box a p{
		font-size: 1.4rem;
		line-height: 1.2;
	}
	.banner{
		margin-top: -6vh;
	}
	.banner::before{
		max-height: 95px;
		background-image: url("../img/index_mvbg_sp.png");
	}
	.banner h2.ttl02, .banner h2.ttl02 .purple {
		font-size: 2rem;
	}
	.banner h2.ttl02 .pink, .banner h2.ttl02 span.subtxt, .banner h2.ttl02 span.pink{
		font-size: 3.2rem;
	}
	.banner .banner_txt{
		font-size: 1.5rem;
	}
	.banner .txt_box{
		margin-bottom: 3rem;
	}
	.banner .txt_box li:first-child{
		width: 100%;
		margin-top: 0;
	}
	.banner .txt_box li{
		width: 50%;
		margin-top: -3rem;
	}
	.banner .txt_box li .point_ttl{
		max-width: 140px;
	}
	.banner dt, .banner .point02 dt{
		font-size: 1.8rem;
		margin: 3rem auto 1rem;
	}
	.banner .point01 dd.nomal, .banner dd.big, .banner .point02 dd{
		width: 100%;
		padding: .5rem 0;
		margin: 0;
	}
	.banner dd.nomal p, .banner dd.nomal3 p{
		font-size: 1.4rem;
		width: 50%;
	}
	.banner .point01 dd.special{
		left: 15%;
		top: 68%;
		transform: translate(-50%,-50%) rotate(-21deg);
	}
	.banner dd.big .txt_en{
		line-height: 1.2;
	}
	.banner dd.big{
		padding: 0;
		margin-top: 2rem;
	}
	.banner dd.nomal p::before, .banner dd.nomal3 p::before{
		transform: translate(-50%, 0) rotate(90deg);
		left: 50%;
		top: auto;
		bottom: -70%;
		z-index: -1;
	}
	.banner .point02 dd.nomal p::before{
		top: auto;
	}
	.banner .point02 dd.special strong.im_line{
		font-size: 3.1rem;
		display: inline-block;
		line-height: 1.2;
	}
	.banner .point02 dd.special span{
		top: -55%;
		left: 11%;
	}
	.campaign div.flex{
		justify-content: space-between;
	}
	.campaign .flex .button{
		width: calc(98%/2);
	}
	.taiken_sc h3.ttl03{
		width: 100%;
	}
	.news .news_wrap{
		margin: 4rem 0;
	}
	.news .news_wrap::before, .news .news_wrap::after{
		height: 4rem;
		top: -4rem;
	}
	.news .news_wrap::after{
		top: auto;
		bottom: -4rem;
	}
	.news_box{
		padding: 1rem 1.5rem;
	}
	.news_box .widget-entry-card-content{
		flex-wrap: wrap;
	}
	.news_box .new-entry-card-meta, .news_box .card-title{
		width: 100%;
	}
	.news_box .new-entry-card-date .post-date{
		font-size: 1.4rem;
	}
	.pirates .txt_box, .pirates .img_box, .pirates li:first-child .img_box{
		width: 100%;
		margin: 0 auto;
	}
	.pirates .reverse{
		flex-flow: column;
	}
	.pirates .txt_box p{
		font-size: 1.3rem;
	}
	.pirates .txt_box h3.ttl03{
		font-size: 1.55rem;
		padding-left: 5rem;
	}
	.pirates .txt_box h3.ttl03::before{
		left: 1rem;
	}
	.pirates p.te_center{
		text-align: left !important;
	}
	.reformer .r_point .txt_box{
		width: 100%;
		margin: 0 auto 3rem;;
		padding: 2rem 1.5rem;
	}
	.reformer .img_box{
		margin: 18rem auto 10rem;
		width: 95%;
	}
	.reformer .img_box ul li p{
		padding: 1rem .5rem;
		font-size: 1.3rem;
		line-height: 1.6;
		letter-spacing: 1px;
	}
	.reformer .img_box ul li{
		top: -80%;
		left: -3%;
	}
	.reformer .img_box ul li:nth-child(2){
		top: -10%;
		right: -3%;
	}
	.reformer .img_box ul li:last-child{
		bottom: -30%;
	}
	.reformer .img_box ul li p::before{
		width: 140px;
		transform: rotate(75deg);
		right: auto;
		left: 0;
		bottom: -95%;
	}
	.reformer .img_box ul li:nth-child(2) p::before{
		width: 40px;
		transform: rotate(-55deg);
		left: auto;
		top: auto;
		right: 20%;
		bottom: -15%;
	}
	.reformer .img_box ul li:last-child p::before{
		width: 38px;
		left: 14%;
	}
	.reformer .r_point .txt_box{
		padding: 1.5rem 1rem;
	}
	.program ul.pro_list li{
		width: 90%;
		margin: 0 auto 3rem;
	}
	.program ul.pro_list .txt_box_a{
		left: 7%;
	}
	.program .option{
		width: 100%;
		margin: -8rem auto 0;
	}
	.program .option .txt_box{
		padding: 2rem 1.5rem 3rem;
	}
	.program .option .txt_box .im_line{
		display: inline-block;
		line-height: 1;
	}
/*
	.price {
		margin-top: -3rem;
	}
*/
	.price .main_box{
		padding: 3rem;
	}
	.price .main_box::before{
		height: 96%;
	}
	.schedule table th{
		padding: 1rem .2rem;
	}
	.schedule table thead th{
		width: 29%;
	}
	.schedule table thead th:first-child{
		width: 14%;
	}
	.schedule table thead th:nth-child(2){
		width: 20%;
	}
	.schedule table thead th:nth-child(3){
		width: 38%;
	}
	.schedule table td{
		font-size: 1.2rem;
	}
	.access .acc_txt dt{
		width: 95px;
		letter-spacing: 1px;
		font-size: 1.3rem;
	}
	.access .acc_txt dd{
		width: calc(100% - 95px);
		font-size: 1.2rem;
	}
	.access .acc_txt dd dt{
		width: 45px;
	}
	.access .acc_txt dd dd{
		width: calc(100% - 45px)
	}
	.access .acc_txt dd dd p{
		margin-left: .5rem;
		padding-left: .5rem;
	}
}
@media screen and (max-width: 480px){
	.mv_box{
		height: 550px;
	}
	.mv_box .video-container{
		width: 260%;
	}
	.mv_box iframe{
		width: 100% !important;
		height: 100% !important;
		top: 32% !important;
		left: 19% !important;
		transform: translate(-50%, -46%);
	}
	.banner{
		margin-top: -60px;
	}
	.insta_box {
		padding-top: 3rem;
		margin-bottom: -2rem;
	}
	.pirates .mov_wrap{
		padding: 1rem;
	}
	.pirates .mov_wrap .ttl03 {
		font-size: 2rem;
	}
	.pirates .mov_wrap .ttl03 span {
		font-size: 2.8rem;
	}
	.pirates ul.mov_box li{
		width: 100%;
		margin-bottom: 2rem;
	}
	.pirates ul li:first-child .img_box, .pirates .img_box{
		margin: 0 auto 1rem;
	}
}
@media screen and (max-width: 414px){
	.mv_box iframe{
		top: 37% !important;
	}
}
@media screen and (max-width: 390px){
	.mv_box iframe{
		transform: translate(-50%, -40%);
	}
	.banner .point02 dd.special span{
		top: -60%;
	}
	.reformer .img_box ul li{
		top: -100%;
	}
	.reformer .img_box ul li:nth-child(2){
		top: -20%;
	}
	.reformer .img_box ul li:last-child{
		bottom: -40%;
	}
	.reformer .img_box ul li:nth-child(2) p::before{
		bottom: -9%;
	}
}
@media screen and (max-width: 378px){
	.banner::before{
		max-height: 75px;
	}
	.mv_box iframe{
		top: 32% !important;
	}
	.banner .point02 dd.special span{
		top: -1%;
		left: 15%;
	}
	.mv_box {
        height: 495px;
    }
}