@charset "utf-8";
/* CSS Document */
/*====================================
Reset
====================================*/
html{
	width: 100%;
	font-size: 2.41546vw; /* 画面幅414pxの時1rem=10px */
	font-weight: 400;
}
body,
body.page--event-calendar{
	min-width: 320px;
	line-height: 1;
	color: #000;
	position: relative;
	overflow-x: hidden;
	font-family: 'Noto Sans JP',"メイリオ","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	overflow-wrap: break-word;
	word-wrap: break-word;
}
@media only screen and (min-width: 600px) {
	html{
		font-size: 0.666666vw; /* 画面幅1500pxの時1rem=10px */
	}
}
@media only screen and (min-width: 1500px) {
	html{
		font-size: 0.60606vw; /* 画面幅1650pxの時1rem=10px */
	}
}
@media only screen and (min-width: 1800px) {
	html{
		font-size: 10px;
	}
}

img{
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
a{
	text-decoration: none;
	color:inherit;
}
svg{
	width: 100%;
	height: 100%;
}
::selection {
	background: rgba(32, 16, 144, .15);
}

/*====================================
Common
====================================*/
.anchor{
	display: block;
	width: 0;
	height: 0;
	padding-top: 7rem;
	margin-top: -7rem;
}
.width--cmn{
	margin-left: auto;
	margin-right: auto;
	width: 35.4rem;
}

@media only screen and (max-width: 599px) {
	.disp--pc{
		display: none !important;
	}
}

@media print,screen and (min-width: 600px) {
	.disp--sp{
		display: none !important;
	}
	.width--cmn{
		width: 130rem;
	}
}

/* アイコン
--------------------------------------*/
.icon--svg{
	display: block;
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-position: center;
	-webkit-mask-position: center;
	mask-size: contain;
	-webkit-mask-size: contain;
	background: #4A4A4A;
	transition: background .3s ease;
}
.icon--calendar{
	mask-image: url(../img/common/icon-calendar.svg);
	-webkit-mask-image: url(../img/common/icon-calendar.svg);
	width: 2.8rem;
	height: 3rem;
}
.icon--facilities{
	mask-image: url(../img/common/icon-facilities.svg);
	-webkit-mask-image: url(../img/common/icon-facilities.svg);
	width: 3.2rem;
	height: 2.6rem;
}
.icon--guidance{
	mask-image: url(../img/common/icon-guidance.svg);
	-webkit-mask-image: url(../img/common/icon-guidance.svg);
	width: 2.8rem;
	height: 3rem;
}
.icon--price{
	mask-image: url(../img/common/icon-price.svg);
	-webkit-mask-image: url(../img/common/icon-price.svg);
	width: 2.8rem;
	height: 3rem;
}
.icon--faq{
	mask-image: url(../img/common/icon-faq.svg);
	-webkit-mask-image: url(../img/common/icon-faq.svg);
	width: 3.7rem;
	height: 3rem;
}
.icon--access{
	mask-image: url(../img/common/icon-access.svg);
	-webkit-mask-image: url(../img/common/icon-access.svg);
	width: 3.3rem;
	height: 2.8rem;
}
.icon--mail{
	mask-image: url(../img/common/icon-mail.svg);
	-webkit-mask-image: url(../img/common/icon-mail.svg);
	width: 2.9rem;
	height: 2.1rem;
}
.icon--tel{
	mask-image: url(../img/common/icon-tel.svg);
	-webkit-mask-image: url(../img/common/icon-tel.svg);
	width: 2rem;
	height: 2.6rem;
}
.icon--othertab{
	mask-image: url(../img/common/icon-othertab.svg);
	-webkit-mask-image: url(../img/common/icon-othertab.svg);
	width: 1.2rem;
	height: 1.2rem;
}
.icon--twitter{
	mask-image: url(../img/common/icon-twitter.svg?update=20231121);
	-webkit-mask-image: url(../img/common/icon-twitter.svg?update=20231121);
	width: 2.6rem;
	height: 2.7rem;
}
.icon--facebook{
	mask-image: url(../img/common/icon-facebook.svg);
	-webkit-mask-image: url(../img/common/icon-facebook.svg);
	width: 1.8rem;
	height: 3.4rem;
}
.icon--instagram{
	mask-image: url(../img/common/icon-instagram.svg);
	-webkit-mask-image: url(../img/common/icon-instagram.svg);
	width: 3.4rem;
	height: 3.4rem;
}
.icon--youtube{
	mask-image: url(../img/common/icon-youtube.svg);
	-webkit-mask-image: url(../img/common/icon-youtube.svg);
	width: 5.1rem;
	height: 3.6rem;
}
.icon--tiktok{
	mask-image: url(../img/common/icon-tiktok.svg);
	-webkit-mask-image: url(../img/common/icon-tiktok.svg);
	width: 3.5rem;
	height: 4.2rem;
}
.icon--loupe{
	mask-image: url(../img/common/icon-loupe.svg);
	-webkit-mask-image: url(../img/common/icon-loupe.svg);
	width: 2rem;
	height: 2rem;
}
.icon--check{
	mask-image: url(../img/common/icon-check.svg);
	-webkit-mask-image: url(../img/common/icon-check.svg);
	width: 1.4rem;
	height: 1.3rem;
}

/* ボタン
--------------------------------------*/
.btn--cmn1,
.btn--cmn2{
	box-sizing: border-box;
	position: relative;
	width: 100%;
	height: 8rem;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 1.8rem;
	line-height: 1.75;
	transition: background .3s ease, color .3s ease, border .3s ease;
}
.btn--cmn1 .icon--othertab,
.btn--cmn2 .icon--othertab{
	position: absolute;
	pointer-events: none;
	right: 1rem;
	bottom: 1rem;
}
.btn--cmn1{
	color: #fff;
	background-color: #201090;
	border: 2px solid #201090;
}
.btn--cmn1 .icon--othertab{
	background-color: #fff;
}

@media print,screen and (min-width: 600px) {
	.btn--cmn1:hover{
		background-color: #fff;
		color: #201090;
	}
	.btn--cmn1:hover .before--triangle:before{
		border-color: transparent transparent transparent #201090;
	}
	.btn--cmn1:hover .icon--othertab{
		background-color: #201090;
	}
}

/* タイトル
--------------------------------------*/
.sec-pagettl{
	box-sizing: border-box;
	position: relative;
	padding-top: 11rem;
	height: 38rem;
	background: url(../img/access/pagettl-bg-sp.jpg) no-repeat center center;
	background-size: cover;
}
.sec-pagettl:before{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: rgba(0, 0, 0, .4);
}
.sec-pagettl .sec-inner{
	position: relative;
	z-index: 2;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.sec-pagettl .pagettl{
	font-size: 3rem;
	line-height: 1.8;
}

.sec-pagettl2{
	padding-top: 9rem;
}
.sec-pagettl2 .sec-inner-inner{
	box-sizing: border-box;
	height: 33rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.sec-pagettl2 .pagettl{
	font-size: 3rem;
	line-height: 1.8;
}

@media print,screen and (min-width: 600px) {
	.sec-pagettl{
		padding-top: 18rem;
		height: 46rem;
		background-image: url(../img/access/pagettl-bg-pc.jpg);
	}
	.sec-pagettl .pagettl{
		font-size: 3.6rem;
	}

	.sec-pagettl2{
		padding-top: 18rem;
	}
	.sec-pagettl2 .sec-inner-inner{
		height: 24rem;
	}
	.sec-pagettl2 .pagettl{
		font-size: 3.6rem;
	}
}

.ttl--cmn1{
	position: relative;
	box-sizing: border-box;
	color: #201090;
	font-size: 2.6rem;
	text-align: center;
	line-height: 1.69;
	padding-bottom: 1.7rem;
	margin-bottom: 5rem;
}
.ttl--cmn1:before{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	width: 3rem;
	height: 0.2rem;
	background-color: #949494;
	bottom: 0;
	left: calc((100% - 3rem) / 2);
}
.ttl--cmn2{
	box-sizing: border-box;
	font-size: 2.2rem;
	line-height: 1.63;
	color: #fff;
	background-color: #201090;
	padding: 1.2rem 2rem;
	margin-bottom: 3rem;
}
.ttl--cmn3{
	box-sizing: border-box;
	font-size: 2.2rem;
	line-height: 1.63;
	color: #201090;
	position: relative;
	padding: 0 0 0.8rem 1.6rem;
	border-bottom: 1px solid #201090;
	margin-bottom: 3rem;
}
.ttl--cmn3:before{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	background-color: #201090;
	top: 0.6rem;
	left: 0;
	width: 0.6rem;
	height: calc(100% - 0.8rem - 1.1rem);
}

@media print,screen and (min-width: 600px) {
	.ttl--cmn1{
		font-size: 3rem;
		padding-bottom: 2rem;
	}
}

/* 色
--------------------------------------*/
.c--white{
	color: #fff;
}
.c--lightgray{
	color: #949494;
}
.c--blue{
	color: #201090;
}
.c--red{
	color: #B33E5C;
}
.c--red2{
	color: #980404;
}
.c--red3{
	color: #f00;
}

.bg--white{
	background-color: #fff;
}
.bg--gray{
	background-color: #484848;
}
.bg--lightgray{
	background-color: #F2F2F2;
}
.bg--blue{
	background-color: #201090;
}
.bg--lightblue{
	background-color: #E8E6F4;
}
.bg--lightblue2{
	background-color: #EFEDF7;
}
.bg--red{
	background-color: #B33E5C;
}
.bg--pink{
	background-color: #FBF3F5;
}

/* ホバー
--------------------------------------*/
@media print,screen and (min-width: 600px) {
	.hover--c-white,
	.hover--c-black,
	.hover--c-blue,
	.hover--c-red{
		transition: color .3s ease;
	}
	a.hover--c-white:hover,
	a:hover .hover--c-white,
	.txt--line-clamp.hover--c-white a:hover,
	.has--child:hover .hover--c-white{
		color: #fff;
	}
	a.hover--c-black:hover,
	a:hover .hover--c-black{
		color: #000;
	}
	a.hover--c-blue:hover,
	a:hover .hover--c-blue,
	.txt--line-clamp.hover--c-blue a:hover,
	.js--btn-popup.hover--c-blue:hover{
		color: #201090;
	}
	a.hover--c-red:hover,
	a:hover .hover--c-red,
	.js--btn-popup.hover--c-red:hover{
		color: #B33E5C;
	}

	.hover--bg-white,
	.hover--bg-black,
	.hover--bg-gray,
	.hover--bg-blue,
	.hover--bg-red{
		transition: background .3s ease, color .3s ease;
	}
	a.hover--bg-white:hover,
	a:hover .hover--bg-white,
	.has--child:hover .hover--bg-white{
		background-color: #fff;
	}
	a.hover--bg-black:hover,
	a:hover .hover--bg-black{
		background-color: #000;
	}
	a.hover--bg-gray:hover,
	a:hover .hover--bg-gray{
		background-color: #484848;
	}
	a.hover--bg-blue:hover,
	a:hover .hover--bg-blue,
	.has--child:hover .hover--bg-blue{
		background-color: #201090;
	}
	a.hover--bg-red:hover,
	a:hover .hover--bg-red{
		background-color: #B33E5C;
	}

	.hover--underline{
		background-position: right bottom;
		background-size: 0 100%;
		background-image: linear-gradient(to bottom, transparent calc(100% - 1px), currentColor 1px);
		background-repeat: no-repeat;
		transition: color .3s ease, background-size 0.6s cubic-bezier(0.19, 1, 0.22, 1);
	}
	a.hover--underline:hover,
	a:hover .hover--underline{
		background-position: left bottom;
		background-size: 100% 100%;
	}

	.hover--opacity,
	.hover--img-opacity > img{
		transition: opacity .3s ease;
	}
	a.hover--opacity:hover,
	.js--btn-popup.hover--opacity:hover,
	a.hover--img-opacity:hover > img,
	a:hover .hover--img-opacity > img{
		opacity: 0.7;
	}

	.hover--img-zoom{
		position: relative;
	}
	.hover--img-zoom > img{
		transition: transform .3s ease-in-out;
	}
	a.hover--img-zoom:hover > img,
	a:hover .hover--img-zoom > img{
		transform: scale(1.1);
	}
}

/* 画像
--------------------------------------*/
.img--fit img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/* IE */
.browser--ie .img--fit{
	position: relative;
	overflow: hidden;
}
.browser--ie .img--fit img{
	width: auto;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.img--posted{
	display: block;
	width: 100%;
	position: relative;
	height: 0;
	overflow: hidden;
	padding-bottom: 64.97%;
}
.img--posted > img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.img--dummy{
	border: 1px solid #D6D6D6;
	background-color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}
.img--dummy img{
	z-index: 2;
	width: 60%;
}

/* テキスト
--------------------------------------*/
div.txt--i,
p.txt--i,
ul.txt--i > li,
li.txt--i{
	padding-left: 1em;
	text-indent: -1em;
}
.txt--u{
	text-decoration: underline;
}
.txt--center{
	text-align: center;
}

.txt--cmn{
	font-size: 1.8rem;
	line-height: 2;
}
.txt--cmn p:not(:last-child),
.txt--cmn ul:not(:last-child){
	margin-bottom: 1.73em;
}
.txt--cmn img{
	width: auto;
	height: auto;
	max-width: 100%;
}

.txt--line-clamp{
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	max-height: 4em;
}
.txt--line-clamp a{
	transition: color .3s ease;
}
.txt--line-clamp .hover--underline{
	transition: background-size 1.5s cubic-bezier(0.19, 1, 0.22, 1);
}

.link--square{
	position: relative;
	padding-left: 3.5rem;
}
.link--square:before,
.link--square:after{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
}
.link--square:before{
	background-color: #201090;
	width: 2.5rem;
	height: 2.5rem;
	padding: 0;
	left: 0;
	top: calc(50% - 1.25rem);
}
.link--square:after{
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0.6rem 0 0.6rem 0.7rem;
	border-color: transparent transparent transparent #fff;
	left: 0.9rem;
	top: calc(50% - 0.6rem);
}

.link--pdf:not(.not-icon){
	position: relative;
	display: inline-block;
	padding-left: 4.7rem;
	font-size: 1.8rem;
	line-height: 2;
	text-decoration: underline;
}
.link--pdf:not(.not-icon):before{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	left: 0;
	top: 0;
	width: 3.2rem;
	height: 4rem;
	background: url(../img/common/icon-pdf.svg) no-repeat center center;
	background-size: contain;
}
@media print,screen and (min-width: 600px) {
	.link--pdf:not(.not-icon){
		transition: color .3s ease;
	}
	.link--pdf:not(.not-icon):hover{
		color: #201090;
	}
}

/* iframe処理
--------------------------------------*/
.gmap--wrap{
	position: relative;
	width: 100%;
	overflow: hidden;
	padding-top: 50rem;
}
.gmap--wrap iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 54rem;
}
.movie--wrap{
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
.movie--wrap iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.movie--wrap video{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/* パンくず
--------------------------------------*/
.pnkz{
	font-size: 1.3rem;
	padding-top: 2.5rem;
	padding-bottom: 10.7rem;
	display: flex;
}
.pnkz .txt--line-clamp{
	-webkit-line-clamp: 1;
	max-height: 1em;
	flex: 1;
}


/* popup
--------------------------------------*/
.popup--cmn{
	display: none;
	z-index:1005;
	position: relative;
}
.popup--cmn .popup-overlay{
	background-color: rgba(0, 0, 0, .8);
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
}
.popup--cmn .popup-container{
	position: relative;
	pointer-events: auto;
}
.popup--cmn .close{
	position: absolute;
	display: block;
	cursor: pointer;
	box-sizing: border-box;
	z-index: 2;
	width: 6rem;
	height: 6rem;
	top: -9rem;
	right: 0;
	border: 2px solid #fff;
	transition: background .3s ease;
}
.popup--cmn .close:before,
.popup--cmn .close:after{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	background-color: #fff;
	width: 3rem;
	height: 2px;
	border-radius: 5rem;
	top: calc(50% - 1px);
	left: calc(50% - 1.5rem);
	transition: background .3s ease;
}
.popup--cmn .close:before{
	transform: rotate(45deg);
}
.popup--cmn .close:after{
	transform: rotate(135deg);
}
.popup--cmn .popup-inner{
	box-sizing: border-box;
	width: 100%;
	max-height: calc(100vh - 22rem);
}
.popup--cmn .scroll-area{
	box-sizing: border-box;
}

@media only screen and (max-width: 599px) {
	.popup--cmn .close{
		right: 3rem;
	}
}

@media print,screen and (min-width: 600px) {
	.js--btn-popup{
		cursor: pointer;
	}
	.popup--cmn .close{
		top: 0;
		right: -9rem;
	}
	.popup--cmn .close:hover{
		background-color: #fff;
	}
	.popup--cmn .close:hover:before,
	.popup--cmn .close:hover:after{
		background-color: #464646;
	}
	.popup--cmn .popup-inner{
		width: 110rem;
		max-height: calc(100vh - 10rem);
	}
	.popup--cmn .scroll-area{
		overflow-y: scroll;
		max-height: calc(100vh - 10rem);
	}
}

/* parts
--------------------------------------*/
.before--triangle{
	position: relative;
	padding-left: 1.2rem;
}
.before--triangle:before{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0.6rem 0 0.6rem 0.7rem;
	border-color: transparent transparent transparent #fff;
	left: 0;
	top: calc(50% - 0.6rem);
	transition: border .3s ease;
}

/* Slider
--------------------------------------*/
/* ページネーション */
.slider-pagination{
	display: flex;
	justify-content: center;
	z-index: 2;
	pointer-events: none;
}
.slider-pagination .swiper-pagination-bullet{
	box-sizing: border-box;
	position: relative;
	margin: 0 !important;
	pointer-events: auto;
	width: 1.5rem;
	height: 1.5rem;
	background: #fff;
	border-radius: 100%;
	opacity: 1;
	transition: background .3s ease;
}
.slider-pagination .swiper-pagination-bullet:not(:last-child){
	margin-right: 1rem !important;
}
.slider-pagination .swiper-pagination-bullet-active{
	background-color: #201090;
}

@media screen and (min-width: 600px) {
	.slider-pagination .swiper-pagination-bullet-active{
		pointer-events: none;
	}
}

/* ナビゲーション */
.slider-arrows{
	position: absolute;
	top: calc(50% - 4rem);
	pointer-events: none;
	width: 100%;
	z-index: 5;
}
.slider-prev,
.slider-next{
	box-sizing: border-box;
	position: absolute;
	pointer-events: auto;
	cursor: pointer;
	padding: 0;
	width: 6rem;
	height: 8rem;
	background-color: #B33E5C;
	transition: background .3s ease;
}
.slider-prev{
	left: 0;
}
.slider-prev.before--triangle:before{
	border-width: 1rem 1.3rem 1rem 0;
	border-color: transparent #fff transparent transparent;
	left: calc((100% - 1.3rem) / 2);
	top: calc((100% - 2rem) / 2);
}
.slider-next{
	right: 0;
}
.slider-next.before--triangle:before{
	border-width: 1rem 0 1rem 1.3rem;
	border-color: transparent transparent transparent #fff;
	left: calc((100% - 1.3rem) / 2);
	top: calc((100% - 2rem) / 2);
}
.slider-prev.swiper-button-disabled,
.slider-next.swiper-button-disabled{
	opacity: 0;
	pointer-events: none;
}

@media print,screen and (min-width: 600px) {
	.slider-arrows{
		top: calc(50% - 5rem);
	}
	.slider-prev,
	.slider-next{
		width: 6rem;
		height: 10rem;
		transition: background .3s ease;
	}
	.slider-prev:hover,
	.slider-next:hover{
		background-color: rgba(179, 62, 92, .7);
	}
}

/* ページャー
--------------------------------------*/
.wp-pagenavi{
	display: flex;
	justify-content: center;
	margin-top: 5rem;
}
.wp-pagenavi .page,
.wp-pagenavi .current,
.wp-pagenavi .extend,
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .first,
.wp-pagenavi .last{
	box-sizing: border-box;
	height: 4rem;
	position: relative;
}
.wp-pagenavi .page,
.wp-pagenavi .current,
.wp-pagenavi .extend{
	box-sizing: border-box;
	font-size: 1.8rem;
	margin-left: 0.5rem;
	margin-right: 0.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 4rem;
	border: 1px solid #000;
}
.wp-pagenavi .current{
	background-color: #201090;
	color: #fff;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink{
	width: 1.4rem;
}
.wp-pagenavi .first,
.wp-pagenavi .last{
	width: 2.3rem;
}
.wp-pagenavi .first,
.wp-pagenavi .previouspostslink{
	margin-right: 1rem;
}
.wp-pagenavi .last,
.wp-pagenavi .nextpostslink{
	margin-left: 1rem;
}
.wp-pagenavi .previouspostslink:before,
.wp-pagenavi .nextpostslink:before,
.wp-pagenavi .first:before,
.wp-pagenavi .last:before,
.wp-pagenavi .first:after,
.wp-pagenavi .last:after{
	content:'';
	display: block;
	position: absolute;
	pointer-events: none;
	box-sizing: border-box;
	width: 1.9rem;
	height: 1.9rem;
	border-top: solid 0.2rem #000;
	top: 50%;
}
.wp-pagenavi .previouspostslink:before,
.wp-pagenavi .first:before,
.wp-pagenavi .first:after{
	border-left: solid 0.2rem #000;
}
.wp-pagenavi .nextpostslink:before,
.wp-pagenavi .last:before,
.wp-pagenavi .last:after{
	border-right: solid 0.2rem #000;
}
.wp-pagenavi .previouspostslink:before{
	left: 50%;
	transform: translate(-20%,-50%) rotate(-45deg);
}
.wp-pagenavi .first:before{
	left: 0.5rem;
	transform: translateY(-50%) rotate(-45deg);
}
.wp-pagenavi .first:after{
	right: -0.8rem;
	transform: translateY(-50%) rotate(-45deg);
}
.wp-pagenavi .nextpostslink:before{
	right: 50%;
	transform: translate(20%,-50%) rotate(45deg);
}
.wp-pagenavi .last:before{
	left: -0.8rem;
	transform: translateY(-50%) rotate(45deg);
}
.wp-pagenavi .last:after{
	right: 0.5rem;
	transform: translateY(-50%) rotate(45deg);
}

@media screen and (min-width: 600px) {
	.wp-pagenavi{
		margin-top: 10rem;
	}
	.wp-pagenavi .page,
	.wp-pagenavi .current,
	.wp-pagenavi .extend{
		margin-left: 1rem;
		margin-right: 1rem;
	}
	.wp-pagenavi .page{
		transition: background .3s ease, color .3s ease, border .3s ease;
	}
	.wp-pagenavi a.page:hover{
		background-color: #201090;
		border-color: #201090;
		color: #fff;
	}
	.wp-pagenavi .first{
		margin-right: 2rem;
	}
	.wp-pagenavi .previouspostslink{
		margin-right: 4rem;
	}
	.wp-pagenavi .last{
		margin-left: 2rem;
	}
	.wp-pagenavi .nextpostslink{
		margin-left: 4rem;
	}
	.wp-pagenavi .previouspostslink:before,
	.wp-pagenavi .nextpostslink:before,
	.wp-pagenavi .first:before,
	.wp-pagenavi .last:before,
	.wp-pagenavi .first:after,
	.wp-pagenavi .last:after{
		transition: border .3s ease;
	}
	.wp-pagenavi .previouspostslink:hover:before,
	.wp-pagenavi .nextpostslink:hover:before,
	.wp-pagenavi .first:hover:before,
	.wp-pagenavi .last:hover:before,
	.wp-pagenavi .first:hover:after,
	.wp-pagenavi .last:hover:after{
		border-color: #201090;
	}
}


/*====================================
header
====================================*/
.hamburger-btn{
	box-sizing: border-box;
	position: fixed;
	z-index: 1001;
	width: 5rem;
	height: 5rem;
	top: 2rem;
	right: 2rem;
	background-color: #fff;
	border-radius: 1rem;
	box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.16);
	transition: background 0.35s ease, box-shadow 0.35s ease;
}
.hamburger-btn-inner{
	display: block;
	position: absolute;
	width: 2.8rem;
	height: 2.4rem;
	top: 1.3rem;
	right: 1.1rem;
	transition: transform 0.35s ease;
}
.hamburger-btn span{
	position: absolute;
	top: 0;
	right: 0;
	width: 2.8rem;
	height: 2px;
	background-color: #000;
	transition: transform 0.35s ease, opacity 0.35s ease;
}
.hamburger-btn span:nth-child(2){
	top: 1.1rem;
}
.hamburger-btn span:last-child{
	top: 2.2rem;
}

.hamburger-btn.is--open{
	background-color: rgba(255, 255, 255, 0);
	box-shadow: 0px 0px 6px 0px rgba(0,0,0,0);
}
.hamburger-btn.is--open .hamburger-btn-inner{
	width: 2rem;
	height: 2rem;
	top: 1rem;
	right: 1.4rem;
	transform: rotate(360deg);
}
.hamburger-btn.is--open span:first-child{
	transform:translate(0.2rem, 1.1rem) rotate(-45deg);
}
.hamburger-btn.is--open span:nth-child(2){
	opacity: 0;
}
.hamburger-btn.is--open span:last-child{
	transform:translate(0.2rem, -1.1rem) rotate(45deg);
}

/* hamburger menu
--------------------------------------*/
#hamburger-menu{
	z-index:1000;
	position: fixed;
	box-sizing: border-box;
	height: 100vh;
	top: 0;
	width: 30rem;
	right: -30rem;
	transition: transform .3s ease, box-shadow .3s ease;
}
#hamburger-menu.is--open{
	box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.16);
	transform: translateX(-30rem);
}
#hamburger-menu .menu-inner{
	box-sizing: border-box;
	position: relative;
	overflow-y: scroll;
	width: 100%;
	height: 100%;
	padding: 7rem 3rem;
}
#hamburger-menu .block-nav1 .nav-item-box{
	box-sizing: border-box;
	position: relative;
	border-bottom: 1px solid #D6D6D6;
	height: 7rem;
	padding-right: 3.5rem;
	display: flex;
	align-items: center;
}
#hamburger-menu .block-nav1 .nav-item-box:before{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0.6rem 0 0.6rem 0.7rem;
	border-color: transparent transparent transparent #949494;
	right: 2.2rem;
	top: calc(50% - 0.6rem);
	transition: transform .3s ease, top .3s ease;
}
#hamburger-menu .block-nav1 .nav-item.has--child .nav-item-box:before{
	top: calc(50% - 0.35rem);
	transform: rotate(90deg);
}
#hamburger-menu .block-nav1 .nav-item.has--child .nav-item-box.is--open:before{
	transform: rotate(-90deg);
}
#hamburger-menu .block-nav1 .nav-item-icon-wrap{
	box-sizing: border-box;
	width: 7.2rem;
	padding-right: 1.9rem;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
#hamburger-menu .block-nav1 .nav-item-txt{
	font-size: 1.6rem;
}
#hamburger-menu .block-nav1 .nav-subitem{
	background-image: linear-gradient(to right, #D6D6D6, #D6D6D6 0.5rem, transparent 0.5rem, transparent 1rem);
	background-repeat: repeat-x;
	background-size: 1rem 1px;
	background-position: left bottom;
}
#hamburger-menu .block-nav1 .nav-subitem-box{
	display: flex;
	align-items: center;
	padding: 0 2rem;
	height: 7rem;
	font-size: 1.6rem;
}

/* アイコン調整 */
#hamburger-menu .block-nav1 .nav-item.item-facilities .nav-item-icon-wrap{
	padding-right: 1.7rem;
}
#hamburger-menu .block-nav1 .nav-item.item-faq .nav-item-icon-wrap{
	padding-right: 1.5rem;
}
#hamburger-menu .block-nav1 .nav-item.item-access .nav-item-icon-wrap{
	padding-right: 1.7rem;
}

#hamburger-menu .block-nav2{
	padding-top: 4rem;
}
#hamburger-menu .block-nav2 .nav-item:not(:last-child){
	margin-bottom: 3.5rem;
}
#hamburger-menu .block-nav2 .before--triangle:before{
	border-color: transparent transparent transparent #949494;
}
#hamburger-menu .block-nav2 .nav-item-txt{
	font-size: 1.6rem;
}
#hamburger-menu .block-btn{
	padding-top: 4rem;
}
#hamburger-menu .block-btn .btn{
	font-size: 1.6rem;
}
#hamburger-menu .block-btn .btn:not(:last-child){
	margin-bottom: 2rem;
}

/* hamburger-layer */
#hamburger-layer{
	position: fixed;
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	z-index:999;
	pointer-events: none;
}
#hamburger-layer.is--open{
	pointer-events: auto;
}

/* header
--------------------------------------*/
header{
	box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
	width: 100%;
}
.header-logo{
	position: relative;
	width: 32.4rem;
	height: 23.9rem;
}
.header-logo:before{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	bottom: 0;
	right: 0;
	background-color: #201090;
	width: 82.2rem;
	height: 82.2rem;
	border-radius: 100%;
}
.header-logo .logo{
	position: absolute;
	display: block;
	width: 16.2rem;
	top: 5.2rem;
	left: 2.8rem;
}

@media print,screen and (min-width: 600px) {
	.header-logo{
		position: absolute;
		top: 0;
		left: 0;
		width: 49.4rem;
		height: 32.8rem;
	}
	.header-logo .logo{
		width: 25.7rem;
		top: 8.3rem;
		left: 8.3rem;
	}
	.header-content{
		box-sizing: border-box;
		width: 100%;
		padding: 4rem 4rem 4rem 0;
		background-color: rgba(255, 255, 255, .6);
	}
	.header-nav{
		margin-left: auto;
		margin-right: 0;
		position: relative;
		display: flex;
		justify-content: flex-end;
		width: calc(100vw - 2rem - 42.5rem);
	}
	.header-nav .nav-item{
		position: relative;
		width: calc((100% - 2.3rem * 6) / 7);
	}
	.header-nav .nav-item:not(:last-child){
		margin-right: 2.3rem;
	}
	.header-nav .nav-item-box{
		box-sizing: border-box;
		padding-bottom: 2.3rem;
		width: 100%;
		height: 10rem;
		border-radius: 1rem;
		box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.16);
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
	}
	.header-nav .nav-item-icon{
		margin: 0 auto 1rem auto;
	}
	.header-nav .nav-item-txt{
		line-height: 1;
	}
	.header-nav .has--child .nav-item-box{
		cursor: pointer;
	}
	.header-nav .has--child .nav-item-box:before,
	.gnav-nav .has--child:before{
		content: '';
		display: block;
		position: absolute;
		pointer-events: none;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0.7rem 0.6rem 0 0.6rem;
		border-color: #949494 transparent transparent transparent;
		bottom: 0.8rem;
		left: calc(50% - 0.6rem);
		transition: border .3s ease;
	}
	.header-nav .has--child:hover .nav-item-box:before{
		border-color: #fff transparent transparent transparent;
	}
	.header-nav .has--child .nav-sublist-container,
	.gnav-nav .has--child .nav-sublist-container{
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		position: absolute;
		width: 27.7rem;
		padding-top: 2.5rem;
		top: 9.5rem;
		left: calc((100% - 27.7rem) / 2);
		transition: opacity .3s ease;
	}
	body.is--loaded .header-nav .has--child .nav-sublist-container,
	body.is--loaded .gnav-nav .has--child .nav-sublist-container{
		visibility: visible;
	}
	.header-nav .has--child:hover .nav-sublist-container,
	.gnav-nav .has--child:hover .nav-sublist-container{
		opacity: 1;
		pointer-events: auto;
	}
	.header-nav .has--child .nav-sublist,
	.gnav-nav .has--child .nav-sublist{
		padding: 3.5rem 3rem 3.5rem 4rem;
		box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.20);
	}
	.header-nav .has--child .nav-subitem:not(:last-child),
	.gnav-nav .has--child .nav-subitem:not(:last-child){
		margin-bottom: 1rem;
	}
	.header-nav .has--child .nav-subitem-txt,
	.gnav-nav .has--child .nav-subitem-txt{
		line-height: 1.2;
	}

	/* アイコン調整 */
	.header-nav .nav-item.item-facilities .nav-item-icon{
		width: 3rem;
		height: 2.5rem;
		margin-bottom: 1.2rem;
	}
	.header-nav .nav-item.item-faq .nav-item-icon{
		width: 3.9rem;
		height: 3.2rem;
	}
	.header-nav .nav-item.item-access .nav-item-icon{
		width: 3.8rem;
		height: 3.2rem;
	}
	.header-nav .nav-item.item-mail .nav-item-icon{
		width: 3.2rem;
		height: 2.3rem;
		margin-bottom: 1.3rem;
	}

	.gnav{
		position: fixed;
		z-index: 1000;
		top: 0;
		left: 0;
		width: 100%;
		padding-top: 1rem;
		height: 7rem;
		top: -8rem;
		transition: transform .3s ease;
	}
	.gnav.is--scroll{
		transform: translateY(7rem);
	}
	.gnav-inner{
		height: 100%;
		display: flex;
		justify-content: space-between;
	}
	.gnav-logo{
		width: 11.725rem;
		height: 100%;
		display: flex;
		align-items: center;
	}
	.gnav-content{
		flex: 1;
		margin-left: auto;
		margin-right: 0;
	}
	.gnav-nav{
		height: 100%;
		display: flex;
		justify-content: flex-end;
		width: calc(100% + 4rem);
	}
	.gnav-nav .nav-item{
		position: relative;
		height: 100%;
		display: flex;
		align-items: center;
		padding-left: 4rem;
		padding-right: 4rem;
	}
	.gnav-nav .nav-item-txt{
		line-height: 1;
	}
	.gnav-nav .has--child{
		cursor: pointer;
	}
	.gnav-nav .has--child:before{
		bottom: 1rem;
	}
	.gnav-nav .has--child:hover .nav-item-box:before{
		border-color: #201090 transparent transparent transparent;
	}
	.gnav-nav .has--child .nav-sublist-container{
		top: 7rem;
	}
}
@media print,screen and (min-width: 960px) {
	.header-logo{
		width: 49.4rem;
		height: 32.8rem;
	}
	.header-logo .logo{
		width: 25.7rem;
		top: 8.3rem;
		left: 8.3rem;
	}
	.header-nav{
		width: calc(100vw - 50rem);
	}
}
@media print,screen and (min-width: 1300px) {
	.header-nav{
		width: calc(100vw - 4rem - 50rem);
	}
}
@media print,screen and (min-width: 1800px) {
	.header-nav{
		width: 1160px;
	}
}


/*===============================
footer
===============================*/
footer{
	padding-top: 8.5rem;
	padding-bottom: 5.4rem;
}
.js--relative-btn-to-top{
	position: relative;
}
.js--btn-to-top{
	position: fixed;
	z-index: 5;
	box-sizing: border-box;
	display: block;
	width: 5rem;
	height: 5rem;
	right: 1rem;
	bottom: 5rem;
	opacity: 0;
	border: 2px solid #201090;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background .3s ease, border .3s ease, opacity .3s ease;
}
.js--btn-to-top:before{
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0.8rem 1.1rem 0.8rem;
	border-color: transparent transparent #201090 transparent;
	transition: border .3s ease;
}
.js--btn-to-top:hover{
	border-color: #fff;
}
.js--btn-to-top:hover:before{
	border-color: transparent transparent #fff transparent;
}
.js--btn-to-top.is--scroll{
	opacity: 1;
}

@media print,screen and (min-width: 600px) {
	footer{
		padding-top: 10rem;
		padding-bottom: 10rem;
	}
	.js--btn-to-top{
		right: 3rem;
	}
	.js--btn-to-top.is--footerfix{
		position: absolute;
		bottom: 15rem;
	}
}

.footer-logo{
	display: block;
	width: 23.6rem;
	margin: 0 auto;
}
.footer-logo-txt{
	font-size: 1.3rem;
	margin-top: 2rem;
}
.footer-btn-block{
	margin-top: 4rem;
}
.footer-btn-block .btn:not(:last-child){
	margin-bottom: 2rem;
}

.footer-sns-block{
	margin-top: 6rem;
}
.footer-sns{
	display: flex;
	align-items: center;
	justify-content: center;
}
.footer-sns-item{
	display: block;
}
.footer-sns-item:not(:last-child){
	margin-right: 4rem;
}
.footer-sns-item.item-twitter{
	width: 3.5rem;
}
.footer-sns-item.item-facebook{
	width: 2.4rem;
}
.footer-sns-item.item-instagram{
	width: 3.6rem;
}
.footer-sns-item.item-youtube{
	width: 5.1rem;
}
.footer-sns-item.item-tiktok{
	width: 3.7rem;
}

.footer-copyright{
	padding-top: 11rem;
	font-size: 1.3rem;
	line-height: 1.69;
}

@media only screen and (max-width: 599px) {
	.footer-logo-txt{
		width: calc(100% + 2em);
		margin-left: -1em;
	}
	.footer-btn-block{
		width: 31rem;
		margin-left: auto;
		margin-right: auto;
	}
	.footer-btn-block .btn{
		font-size: 1.6rem;
	}
}

@media print,screen and (min-width: 600px) {
	.footer-container-wrap{
		display: flex;
		justify-content: space-between;
	}
	.footer-logo-container{
		width: 38rem;
	}
	.footer-logo{
		width: 23.6rem;
	}
	.footer-btn-block{
		margin-top: 4.5rem;
	}

	.footer-nav-container{
		flex: 1;
	}
	.footer-nav-block{
		display: flex;
		justify-content: flex-end;
	}
	.footer-nav-block .nav-list-box:not(:last-child){
		padding-right: 4rem;
		border-right: 1px solid rgba(255, 255, 255, .3);
	}
	.footer-nav-block .nav-list-box:not(:first-child){
		padding-left: 4rem;
	}
	.footer-nav-block .nav-list-ttl,
	.footer-nav-block .nav-item:not(:last-child){
		margin-bottom: 2rem;
	}
	.footer-nav-block .nav-list-ttl,
	.footer-nav-block .nav-item-txt{
		line-height: 1.3;
	}
	.footer-nav-block .nav-item{
		padding-left: 1.4rem;
	}
	.footer-nav-block .nav-item:before{
		top: 0.5rem;
	}
	.footer-sns{
		justify-content: flex-end;
	}
	a.footer-sns-item:hover{
		opacity: 0.5;
	}
	.footer-sns-item:not(:last-child){
		margin-right: 3rem;
	}
	.footer-sns-item.item-twitter{
		width: 2.6rem;
	}
	.footer-sns-item.item-facebook{
		width: 1.8rem;
	}
	.footer-sns-item.item-instagram{
		width: 2.7rem;
	}
	.footer-sns-item.item-youtube{
		width: 3.8rem;
	}
	.footer-sns-item.item-tiktok{
		width: 2.8rem;
	}

	.footer-copyright{
		padding-top: 4.5rem;
	}
}

/*====================================
top
====================================*/
/* main
--------------------------------------*/
#top .sec-main .main-slide{
	height: 50rem;
}
#top .sec-main{
	overflow: hidden;
	position: relative;
	width: 100%;
}
#top .sec-main .block-slide{
	height: 100%;
}
#top .sec-main .main-slide{
	position: relative;
	display: block;
}
#top .sec-main .sec-inner{
	position: absolute;
	z-index: 5;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	pointer-events: none;
}
#top .sec-main .sec-inner-inner{
	position: relative;
	height: 100%;
}
#top .sec-main .main-slider-pagination{
	position: absolute;
	pointer-events: auto;
	right: -2rem;
	top: 47.5rem;
	justify-content: flex-end;
}
#top .sec-main .block-news{
	box-sizing: border-box;
	pointer-events: auto;
	z-index: 5;
	background-color: rgba(179, 62, 92, .9);
	width: 100%;
	padding: 1.7rem 0;
}
#top .sec-main .block-news .news-item .txt--cmn{
	line-height: 1.8;
}

@media print,screen and (min-width: 600px) {
	#top .sec-main,
	#top .sec-main .main-slide{
		height: 71rem;
	}
	#top .sec-main .main-slider-pagination{
		right: 0;
		top: 61.5rem;
	}
	#top .sec-main .block-news{
		padding: 1.9rem 0;
		position: absolute;
		left: 0;
		bottom: 0;
	}
	#top .sec-main .block-news .news-item{
		-webkit-line-clamp: 1;
		max-height: 1.8em;
	}
	#top .sec-main .block-news .news-item a{
		line-height: 1;
	}
}

/* top common
--------------------------------------*/
#top .top-sec-ttl{
	margin-bottom: 5rem;
}
#top .top-sec-ttl-icon{
	margin: 0 auto 0.8rem auto;
}
#top .top-sec-ttl-txt{
	font-size: 3rem;
}
#top .top-sec-ttl-e{
	font-size: 1.6rem;
	margin-top: 1.3rem;
}

@media print,screen and (min-width: 600px) {
	#top .top-sec-ttl-txt{
		font-size: 3.6rem;
	}
	#top .top-sec-ttl-e{
		font-size: 1.8rem;
	}
}

/* news
--------------------------------------*/
#top .sec-news{
	padding: 10rem 0;
}
#top .sec-news .top-sec-ttl-icon{
	mask-image: url(../img/top/icon-new.svg);
	-webkit-mask-image: url(../img/top/icon-new.svg);
	width: 4rem;
	height: 3.3rem;
}
#top .sec-news .news-item:not(:last-child){
	margin-bottom: 3rem;
}
#top .sec-news .news-head{
	display: flex;
	align-items: center;
	margin-bottom: 1rem;
}
#top .sec-news .news-new{
	border-radius: 0.5rem;
	font-size: 1.3rem;
	padding: 0.4rem 0.6rem;
	margin-right: 1rem;
}
#top .sec-news .news-date{
	font-size: 1.3rem;
}
#top .sec-news .block-archive-btn{
	margin-top: 5rem;
	text-align: right;
}
#top .sec-news .archive-btn{
	display: inline-block;
}

#top .sec-news .archive-btn .txt{
	line-height: 1;
}
#top .sec-news .container-btn{
	box-sizing: border-box;
	padding: 4.5rem 3rem 3rem 3rem;
}
#top .sec-news .container-btn .container-ttl{
	margin-bottom: 3.2rem;
}
#top .sec-news .container-btn .container-ttl span{
	position: relative;
	display: inline-block;
	font-size: 2.2rem;
	padding: 0 2.4rem;
}
#top .sec-news .container-btn .container-ttl span:before,
#top .sec-news .container-btn .container-ttl span:after{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	height: 2.5rem;
	width: 0.2rem;
	border-radius: 1rem;
	background-color: #B33E5C;
	top: -0.2rem;
}
#top .sec-news .container-btn .container-ttl span:before{
	left: 0.3rem;
	transform: rotate(-20deg);
}
#top .sec-news .container-btn .container-ttl span:after{
	right: 0.3rem;
	transform: rotate(20deg);
}
#top .sec-news .container-btn .btn:not(:last-child){
	margin-bottom: 2rem;
}

@media only screen and (max-width: 599px) {
	#top .sec-news .container-btn{
		margin-top: 6rem;
	}
	#top .sec-news .container-btn .btn{
		font-size: 1.6rem;
	}
}

@media print,screen and (min-width: 600px) {
	#top .sec-news .sec-inner{
		display: flex;
		align-items: flex-start;
	}
	#top .sec-news .container-news{
		flex: 1;
		padding-right: 10rem;
	}
	#top .sec-news .block-news{
		display: flex;
		align-items: center;
	}
	#top .sec-news .block-news .box-ttl{
		padding-right: 5rem;
	}
	#top .sec-news .top-sec-ttl{
		margin-bottom: 0;
	}
	#top .sec-news .block-news .box-list{
		flex: 1;
		padding-left: 5rem;
		border-left: 1px solid #D6D6D6;
	}
	#top .sec-news .news-item:not(:last-child){
		margin-bottom: 3.4rem;
	}
	#top .sec-news .news-head{
		margin-bottom: 1.2rem;
	}
	#top .sec-news .news-date{
		font-size: 1.6rem;
	}
	#top .sec-news .news-ttl{
		-webkit-line-clamp: 1;
		max-height: 2em;
		line-height: 1.2;
	}

	#top .sec-news .container-btn{
		width: 38rem;
	}
}

/* event
--------------------------------------*/
#top .sec-event{
	padding: 10rem 0;
}
#top .sec-event .top-sec-ttl-icon{
	width: 3.6rem;
	height: 3.9rem;
}
#top .sec-event .event-item{
	box-sizing: border-box;
	box-shadow: 0px 0px 20px 0px #D1BBC1;
}
#top .sec-event .event-txt-container{
	padding: 3rem;
}
#top .sec-event .event-img:not(.img--dummy){
	display: block;
}
#top .sec-event .event-img.img--dummy{
	height: 31.8rem;
}
#top .sec-event .event-ttl{
	font-size: 2rem;
	line-height: 1.8;
}
#top .sec-event .event-txt-box{
	margin-top: 2rem;
	border-top: 1px solid #D6D6D6;
	padding-top: 2rem;
	font-size: 1.6rem;
	line-height: 1.3;
}
#top .sec-event .event-txt-box .txt--line-clamp{
	-webkit-line-clamp: 6;
	max-height: 7.8em;
}
#top .sec-event .event-txt-box .ttl{
	margin-bottom: 1rem;
}
#top .sec-event .event-btn{
	width: 100%;
	height: 8rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
#top .sec-event .event-btn .before--triangle:before{
	border-color: transparent transparent transparent #707070;
}
#top .sec-event .archive-btn{
	margin-top: 6rem;
}

@media only screen and (max-width: 599px) {
	#top .sec-event .event-item:not(:last-child){
		margin-bottom: 3rem;
	}
	#top .sec-event .event-img{
		width: 76%;
		margin-left: auto;
		margin-right: auto;
	}
	#top .sec-event .event-txt-block{
		padding-top: 3rem;
	}
}

@media print,screen and (min-width: 600px) {
	#top .sec-event .event-list{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#top .sec-event .event-item{
		width: calc((100% - 6rem) / 2);
		display: flex;
		flex-direction: column;
	}
	#top .sec-event .event-item:nth-child(n+3){
		margin-top: 6rem;
	}
	#top .sec-event .event-txt-container{
		flex: 1;
		padding: 4rem;
		display: flex;
	}
	#top .sec-event .event-img-block{
		width: 22.5rem;
	}
	#top .sec-event .event-txt-block{
		flex: 1;
		padding-left: 2.7rem;
	}
	#top .sec-event .event-ttl{
		text-decoration: underline;
	}
	#top .sec-event .event-txt-box{
		margin-top: 3rem;
		padding-top: 3rem;
	}
	#top .sec-event .event-btn:hover .before--triangle:before{
		border-color: transparent transparent transparent #fff;
	}
	#top .sec-event .archive-btn{
		width: 45rem;
		margin: 10rem auto 0 auto;
	}
}

/* link
--------------------------------------*/
#top .sec-link .link-list{
	display: flex;
}
#top .sec-link .link-item{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50%;
	height: 22rem;
}
#top .sec-link .link-item:before,
#top .sec-link .link-item:after{
	content: '';
	display: none;
	position: absolute;
	pointer-events: none;
	background-color: #fff;
}
#top .sec-link .link-item:before{
	width: 1px;
	height: calc(100% - 4.3rem - 1.5rem);
}
#top .sec-link .link-item:after{
	height: 1px;
	width: calc(100% - 3rem - 1.5rem);
}
#top .sec-link .link-icon{
	height: 5.5rem;
}
#top .sec-link .link-icon img{
	height: 100%;
	width: auto;
}
#top .sec-link .link-txt{
	margin-top: 1rem;
	font-size: 2rem;
	line-height: 1.8;
}

@media only screen and (max-width: 599px) {
	#top .sec-link .link-list{
		flex-wrap: wrap;
	}
	#top .sec-link .link-item:nth-child(odd):before,
	#top .sec-link .link-item:nth-child(n+3):after{
		display: block;
	}
	#top .sec-link .link-item:nth-child(1):before{
		bottom: 1.5rem;
		right: 0;
	}
	#top .sec-link .link-item:nth-child(3):before{
		top: 1.5rem;
		right: 0;
	}
	#top .sec-link .link-item:nth-child(3):after{
		top: 0;
		right: 1.5rem;
	}
	#top .sec-link .link-item:nth-child(4):after{
		top: 0;
		left: 1.5rem;
	}
	#top .sec-link .link-txt .before--triangle{
		display: inline-block;
	}
	#top .sec-link .link-txt .before--triangle:before{
		top: 0.5em;
	} 
}

@media print,screen and (min-width: 600px) {
	#top .sec-link .link-item{
		width: 25%;
		height: 20rem;
	}
	#top .sec-link .link-item:not(:last-child):before{
		display: block;
		right: 0;
		top: 4rem;
		height: calc(100% - 4rem * 2);
	}
}

/* facilities
--------------------------------------*/
#top .sec-facilities{
	padding: 10rem 0;
}
#top .sec-facilities .top-sec-ttl-icon{
	width: 4.1rem;
	height: 3.3rem;
}
#top .sec-facilities .facilities-list{
	width: calc(100% - 2rem);
	margin: 0 auto;
}
#top .sec-facilities .facilities-item{
	position: relative;
	display: block;
	overflow: hidden;
}
#top .sec-facilities .facilities-img{
	padding-bottom: 72.58%;
}
#top .sec-facilities .facilities-img:after{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: #000;
	opacity: 0.3;
}
#top .sec-facilities .facilities-layer{
	display: block;
	position: absolute;
	pointer-events: none; 
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 7rem 7rem;
	border-color: transparent transparent #000 transparent;
	opacity: 0.7;
	right: 0;
	bottom: 0;
	transition: border .3s ease
}
#top .sec-facilities .facilities-item-inner{
	position: absolute;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}
#top .sec-facilities .facilities-item-inner:before{
	z-index: 5;
	left: auto;
	top: auto;
	right: 1.3rem;
	bottom: 1.8rem;
}
#top .sec-facilities .facilities-ttl-icon{
	margin: 0 auto 2rem auto;
}
#top .sec-facilities .facilities-ttl-e{
	font-size: 2.6rem;
	letter-spacing: 0.1em;
}
#top .sec-facilities .facilities-ttl-txt{
	font-size: 1.6rem;
	margin-top: 1.1rem;
}

#top .sec-facilities .facilities-item.item-hall .facilities-ttl-icon{
	width: 6.2rem;
}
#top .sec-facilities .facilities-item.item-gallery .facilities-ttl-icon{
	width: 4.8rem;
}
#top .sec-facilities .facilities-item.item-music-hall .facilities-ttl-icon{
	width: 5.3rem;
}
#top .sec-facilities .facilities-item.item-music-studio .facilities-ttl-icon{
	width: 7.2rem;
}
#top .sec-facilities .facilities-item.item-culture-studio .facilities-ttl-icon{
	width: 5.7rem;
}
#top .sec-facilities .facilities-item.item-meeting-room .facilities-ttl-icon{
	width: 6.1rem;
}
#top .sec-facilities .facilities-item.item-information-corner .facilities-ttl-icon{
	width: 5rem;
}
#top .sec-facilities .facilities-item.item-floor-map .facilities-ttl-icon{
	width: 4.9rem;
}

#top .sec-facilities .block-archive-btn{
	margin-top: 6rem;
}

@media only screen and (max-width: 599px) {
	#top .sec-facilities .facilities-item:not(:last-child){
		margin-bottom: 1rem;
	}
}

@media print,screen and (min-width: 600px) {
	#top .sec-facilities .facilities-list{
		width: 93%;
		display: flex;
		flex-wrap: wrap;
	}
	#top .sec-facilities .facilities-item{
		width: calc((100% - 3.6rem) / 4);
	}
	#top .sec-facilities .facilities-item:not(:nth-child(4n)){
		margin-right: 1.2rem;
	}
	#top .sec-facilities .facilities-item:nth-child(n+5){
		margin-top: 1.2rem;
	}
	#top .sec-facilities .facilities-img{
		padding-bottom: 65%;
	}
	#top .sec-facilities .facilities-img:after{
		opacity: 0.4;
		transition: opacity .3s ease;
	}
	#top .sec-facilities .facilities-item:hover .facilities-img:after{
		opacity: 0.4;
	}
	#top .sec-facilities .facilities-item-inner:after{
		transition: border .3s ease;
	}
	#top .sec-facilities .facilities-item:hover .facilities-item-inner:after{
		border-width: 0 0 100% 100%;
	}
	#top .sec-facilities .facilities-ttl-icon{
		margin-bottom: 2rem;
	}
	#top .sec-facilities .facilities-ttl-e{
		font-size: 2.5rem;
	}
	#top .sec-facilities .facilities-ttl-txt{
		font-size: 1.8rem;
	}

	#top .sec-facilities .facilities-item.item-hall .facilities-ttl-icon{
		width: 8.3rem;
	}
	#top .sec-facilities .facilities-item.item-gallery .facilities-ttl-icon{
		width: 6.5rem;
	}
	#top .sec-facilities .facilities-item.item-music-hall .facilities-ttl-icon{
		width: 7.2rem;
	}
	#top .sec-facilities .facilities-item.item-music-studio .facilities-ttl-icon{
		width: 9.7rem;
	}
	#top .sec-facilities .facilities-item.item-culture-studio .facilities-ttl-icon{
		width: 7rem;
	}
	#top .sec-facilities .facilities-item.item-meeting-room .facilities-ttl-icon{
		width: 8.2rem;
	}
	#top .sec-facilities .facilities-item.item-information-corner .facilities-ttl-icon{
		width: 6.9rem;
	}
	#top .sec-facilities .facilities-item.item-floor-map .facilities-ttl-icon{
		width: 6.6rem;
	}

	#top .sec-facilities .block-archive-btn{
		margin-top: 10rem;
	}
	#top .sec-facilities .archive-btn{
		width: 45rem;
		margin: 0 auto;
	}
}
@media print,screen and (min-width: 1800px) {
	#top .sec-facilities .facilities-ttl-e{
		font-size: 3rem;
	}
}

/* sns
--------------------------------------*/
#top .sec-sns{
	padding-top: 10rem;
}
#top .sec-sns .top-sec-ttl-icon{
	mask-image: url(../img/top/icon-social-media.svg);
	-webkit-mask-image: url(../img/top/icon-social-media.svg);
	width: 5.6rem;
	height: 4.9rem;
}
#top .sec-sns .block-timeline{
	margin-bottom: 3rem;
}
#top .sec-sns .block-timeline .sns-ttl-box{
	margin-bottom: 2.3rem;
	display: flex;
	align-items: center;
}
#top .sec-sns .block-timeline .sns-ttl{
	font-size: 2.6rem;
	margin-left: 1rem;
}
#top .sec-sns .block-timeline .sns-timeline-box{
	padding: 3rem;
}
#top .sec-sns .block-timeline .sns-timeline-box-inner{
	min-height: 500px;
}
#top .sec-sns .block-timeline .fb-page{
	width: 100%;
}

@media only screen and (max-width: 599px) {
	#top .sec-sns .block-timeline .sns-item:not(:last-child){
		margin-bottom: 4rem;
	}
}

@media print,screen and (min-width: 600px) {
	#top .sec-sns .block-timeline{
		margin-bottom: 6rem;
		width: 118rem;
	}
	#top .sec-sns .block-timeline .sns-list{
		display: flex;
		justify-content: space-between;
	}
	#top .sec-sns .block-timeline .sns-item{
		width: calc((100% - 6rem) / 2);
	}
	#top .sec-sns .block-timeline .sns-ttl-box{
		height: 2.6rem;
	}
}

#top .sec-sns .block-link .instagram-box{
	position: relative;
}
#top .sec-sns .block-link .instagram-box .link-box{
	box-sizing: border-box;
	position: absolute;
	width: 29rem;
	height: 29rem;
	top: calc((100% - 29rem) / 2);
	left: calc((100% - 29rem) / 2);
	border: 2px solid #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}
#top .sec-sns .block-link .link-box .txt{
	font-size: 2.6rem;
	margin-left: 1rem;
}
#top .sec-sns .block-link .other-box .link-box{
	height: 16rem;
}
#top .sec-sns .block-link .other-box .link-box:not(:last-child){
	margin-bottom: 0.2rem;
}

@media only screen and (max-width: 599px) {
	#top .sec-sns .block-link .other-box{
		margin-top: 0.2rem;
	}
}

@media print,screen and (min-width: 600px) {
	#top .sec-sns .block-link{
		display: flex;
	}
	#top .sec-sns .block-link .instagram-box{
		width: 72%;
	}
	#top .sec-sns .block-link .instagram-box .link-box{
		width: 40rem;
		height: 20rem;
		top: calc((100% - 20rem) / 2);
		left: calc((100% - 40rem) / 2);
	}
	#top .sec-sns .block-link .other-box{
		flex: 1;
		padding-left: 0.2rem;
	}
	#top .sec-sns .block-link .other-box .link-box{
		height: 100%;
	}
}

/* access
--------------------------------------*/
#top .sec-access{
	padding: 10rem 0;
}
#top .sec-access .top-sec-ttl-icon{
	width: 4.3rem;
	height: 3.6rem;
}
#top .sec-access .access-list{
	display: flex;
	flex-wrap: wrap;
	width: calc(100% + 3rem);
}
#top .sec-access .access-item{
	margin-top: 2.7rem;
	margin-right: 3rem;
	display: flex;
}
#top .sec-access .access-icon{
	width: 4.5rem;
}
#top .sec-access .access-txt{
	flex: 1;
	font-size: 2.2rem;
	line-height: 1.63;
}

#top .sec-access .item-address .access-icon img{
	width: 3.5rem;
	padding-top: 0.4rem;
}
#top .sec-access .item-tel .access-icon img{
	width: 2.3rem;
	margin-left: 0.7rem;
	padding-top: 0.2rem;
}
#top .sec-access .item-fax .access-icon img{
	width: 2.6rem;
	margin-left: 0.4rem;
	padding-top: 0.2rem;
}
#top .sec-access .item-time .access-icon img{
	width: 2.6rem;
	padding-top: 0.3rem;
	padding-left: 0.5rem;
}
#top .sec-access .item-train .access-icon img{
	width: 2.3rem;
	padding-top: 0.5rem;
	padding-left: 0.6rem;
}

@media print,screen and (min-width: 600px) {
	#top .sec-access .block-access{
		margin-top: 0;
	}
	#top .sec-access .access-item{
		margin-top: 4.5rem;
	}
}

/*====================================
404
====================================*/
#page404 .sec-404{
	padding-bottom: 15rem;
}
#page404 .sec-404 .block-txt{
	margin-bottom: 6rem;
}

@media print,screen and (min-width: 600px) {
	#page404 .sec-404{
		display: flex;
		justify-content: center;
		padding-bottom: 20rem;
	}
	#page404 .sec-404 .block-txt{
		margin-bottom: 10rem;
		text-align: center;
	}
	#page404 .sec-404 .btn{
		width: 45rem;
		margin: 0 auto;
	}
}

/*====================================
access
====================================*/
#access .sec-pagettl{
	background-image: url(../img/access/pagettl-bg-sp.jpg);
}
#access .access-item{
	display: flex;
}
#access .access-txt{
	flex: 1;
}

/* location
--------------------------------------*/
#access .sec-location .block-access{
	padding-top: 2.5rem;
	padding-bottom: 4.5rem;
}
#access .sec-location .access-list{
	display: flex;
	flex-wrap: wrap;
	width: calc(100% + 3rem);
}
#access .sec-location .access-item{
	margin-top: 2.7rem;
	margin-right: 3rem;
}
#access .sec-location .access-item .access-icon{
	width: 4.5rem;
}
#access .sec-location .access-item .access-txt{
	font-size: 2.2rem;
	line-height: 1.63;
}

#access .sec-location .access-item.item-address .access-icon img{
	width: 3.5rem;
	padding-top: 0.4rem;
}
#access .sec-location .access-item.item-tel .access-icon img{
	width: 2.3rem;
	margin-left: 0.7rem;
	padding-top: 0.2rem;
}
#access .sec-location .access-item.item-fax .access-icon img{
	width: 2.6rem;
	margin-left: 0.4rem;
	padding-top: 0.2rem;
}
#access .sec-location .access-item.item-time .access-icon img{
	width: 2.6rem;
	padding-top: 0.3rem;
	padding-left: 0.5rem;
}
#access .sec-location .block-access .box-detail{
	margin-top: 3rem;
	padding: 2.5rem 3rem;
}

@media print,screen and (min-width: 600px) {
	#access .sec-pagettl{
		background-image: url(../img/access/pagettl-bg-pc.jpg);
	}
	#access .sec-location .block-access{
		padding-bottom: 5rem;
	}
	#access .sec-location .access-item{
		margin-top: 3rem;
	}
}

/* transport
--------------------------------------*/
#access .sec-transport{
	padding-top: 6rem;
	padding-bottom: 15rem;
}
#access .sec-transport .transport-ttl{
	margin-bottom: 1.5rem;
}
#access .sec-transport .transport-ttl .access-icon{
	width: 4.5rem;
}
#access .sec-transport .transport-ttl .access-txt{
	font-size: 2.2rem;
}
#access .sec-transport .item-train .access-icon img{
	width: 2.3rem;
	padding-top: 0.5rem;
	padding-left: 0.6rem;
}
#access .sec-transport .item-car .access-icon img{
	width: 2.7rem;
	padding-top: 1.1rem;
}
#access .sec-transport .block-info{
	margin-top: 5.5rem;
	padding: 3rem 3rem 2.5rem 3rem;
}
#access .sec-transport .block-info .info-list{
	margin-top: 2rem;
}
#access .sec-transport .block-info .access-icon{
	width: 2.6rem;
}
#access .sec-transport .item-tel .access-icon img{
	width: 1.4rem;
	padding-top: 0.9rem;
}
#access .sec-transport .item-fax .access-icon img{
	width: 1.6rem;
	padding-top: 0.8rem;
}
#access .sec-transport .item-time .access-icon img{
	width: 1.9rem;
	padding-top: 0.8rem;
}

@media only screen and (max-width: 599px) {
	#access .sec-transport .transport-item:not(:last-child){
		padding-bottom: 3.5rem;
		border-bottom: 1px solid #D6D6D6;
	}
	#access .sec-transport .transport-item:not(:first-child){
		padding-top: 4rem;
	}
	#access .sec-transport .block-info .info-list .access-item:not(:last-child){
		margin-bottom: 0.8rem;
	}
	#access .popup--map .scroll-area{
		width: 100vw;
		overflow-x: scroll;
	}
	#access .popup--map .scroll-area .img{
		box-sizing: border-box;
		width: 100rem;
		margin: 0 3rem;
	}
}

@media print,screen and (min-width: 600px) {
	#access .sec-transport{
		padding-top: 8rem;
		padding-bottom: 20rem;
	}
	#access .sec-transport .transport-list{
		display: flex;
	}
	#access .sec-transport .transport-item{
		box-sizing: border-box;
		width: 50%;
	}
	#access .sec-transport .transport-item:not(:last-child){
		padding-right: 5rem;
		border-right: 1px solid #D6D6D6;
	}
	#access .sec-transport .transport-item:not(:first-child){
		padding-left: 5rem;
	}
	#access .sec-transport .block-info{
		margin-top: 8rem;
		padding: 5rem;
	}
	#access .sec-transport .block-info .info-list{
		margin-top: 2.5rem;
		display: flex;
		justify-content: center;
	}
	#access .sec-transport .block-info .info-list .access-item:not(:last-child){
		margin-right: 3rem;
	}
}

/*====================================
table
====================================*/
.tbl--price{
	box-sizing: border-box;
	width: 100%;
	border: 1px solid #D6D6D6;
}
.tbl--price thead{
	border-bottom: 1px solid #D6D6D6;
	position: sticky;
	top: 0;
}
.tbl--price th,
.tbl--price td{
	box-sizing: border-box;
	text-align: center;
	vertical-align: middle;
	font-size: 1.8rem;
	line-height: 1.55;
	padding: 1.1rem 1rem;
}
.tbl--price th:not(:last-child),
.tbl--price td:not(:last-child){
	border-right: 1px solid #D6D6D6;
}
.tbl--price tr:not(:last-child) th,
.tbl--price tr:not(:last-child) td{
	border-bottom: 1px solid #D6D6D6;
}
.tbl--price thead th{
	padding-left: 0.3rem;
	padding-right: 0.3rem;
}

.tbl--price.hall2 tbody td:nth-last-child(4),
.tbl--price.hall3 tbody td:nth-last-child(3),
.tbl--price.gallery2 tbody td:nth-last-child(5),
.tbl--price.music-hall2 tbody td:nth-last-child(4),
.tbl--price.music-hall3 tbody td:nth-last-child(3),
.tbl--price.music-studio2 tbody td:nth-last-child(4),
.tbl--price.culture-studio2 tbody td:nth-last-child(4),
.tbl--price.meeting-room2 tbody td:nth-last-child(4),
.tbl--price.futai tbody td:nth-last-child(4){
	vertical-align: top;
}

@media only screen and (max-width: 599px) {
	.tbl--price:not(:last-child){
		margin-bottom: 3rem;
	}

	.tbl--price.hall thead th,
	.tbl--price.gallery thead th,
	.tbl--price.music-hall thead th,
	.tbl--price.meeting-room thead th{
		width: 21%;
	}
	.tbl--price.hall thead th:nth-child(1),
	.tbl--price.hall thead th:nth-child(2),
	.tbl--price.gallery thead th:nth-child(1),
	.tbl--price.gallery thead th:nth-child(2),
	.tbl--price.music-hall thead th:nth-child(1),
	.tbl--price.music-hall thead th:nth-child(2),
	.tbl--price.meeting-room thead th:nth-child(1),
	.tbl--price.meeting-room thead th:nth-child(2){
		width: 19%;
	}
	.tbl--price.hall thead th:nth-child(3),
	.tbl--price.gallery thead th:nth-child(3),
	.tbl--price.music-hall thead th:nth-child(3),
	.tbl--price.meeting-room thead th:nth-child(3){
		width: 16%;
	}

	.tbl--price.hall2 thead th,
	.tbl--price.music-hall2 thead th,
	.tbl--price.music-studio2 thead th,
	.tbl--price.culture-studio2 thead th,
	.tbl--price.meeting-room2 thead th,
	.tbl--price.futai thead th{
		width: 22%;
	}
	.tbl--price.hall2 thead th:nth-child(1),
	.tbl--price.music-hall2 thead th:nth-child(1),
	.tbl--price.music-studio2 thead th:nth-child(1),
	.tbl--price.culture-studio2 thead th:nth-child(1),
	.tbl--price.meeting-room2 thead th:nth-child(1),
	.tbl--price.futai thead th:nth-child(1){
		width: 17%;
	}
	.tbl--price.hall2 thead th:nth-child(2),
	.tbl--price.music-hall2 thead th:nth-child(2),
	.tbl--price.music-studio2 thead th:nth-child(2),
	.tbl--price.culture-studio2 thead th:nth-child(2),
	.tbl--price.meeting-room2 thead th:nth-child(2),
	.tbl--price.futai thead th:nth-child(2){
		width: 26%;
	}

	.tbl--price.hall3 tbody td,
	.tbl--price.music-hall3 tbody td{
		width: 22%;
	}
	.tbl--price.hall3 tbody td:nth-last-child(2),
	.tbl--price.music-hall3 tbody td:nth-last-child(2){
		width: 56%;
	}

	.tbl--price.gallery2 thead th{
		width: 18%;
	}
	.tbl--price.gallery2 thead th:nth-child(2){
		width: 22%;
	}

	.tbl--price.music-studio thead th{
		width: 16.6%;
	}
	.tbl--price.music-studio thead th:nth-child(1){
		width: 18%;
	}
	.tbl--price.music-studio tbody td{
		padding-left: 0.3rem;
		padding-right: 0.3rem;
	}
	.tbl--price.music-studio tbody td:nth-last-child(6){
		vertical-align: top;
	}

	.tbl--price.music-studio2 tbody td:nth-last-child(4){
		padding-left: 0.3rem;
		padding-right: 0.3rem;
	}

	.tbl--price.culture-studio thead th{
		width: 19%;
	}
	.tbl--price.culture-studio thead th:nth-child(1){
		width: 25%;
	}
	.tbl--price.culture-studio thead th:nth-child(2){
		width: 16%;
	}
}

@media print,screen and (min-width: 600px) {
	.tbl--price thead{
		top: 7rem;
	}
	.tbl--price th,
	.tbl--price td{
		padding: 1rem;
	}

	.tbl--price.hall thead th,
	.tbl--price.gallery thead th,
	.tbl--price.music-hall thead th,
	.tbl--price.meeting-room thead th{
		width: 13%;
	}
	.tbl--price.hall thead th:nth-child(1),
	.tbl--price.gallery thead th:nth-child(1),
	.tbl--price.music-hall thead th:nth-child(1),
	.tbl--price.meeting-room thead th:nth-child(1){
		width: 17%;
	}

	.tbl--price.hall2 thead th,
	.tbl--price.music-hall2 thead th,
	.tbl--price.music-studio2 thead th,
	.tbl--price.culture-studio2 thead th,
	.tbl--price.meeting-room2 thead th,
	.tbl--price.futai thead th{
		width: 25%;
	}
	.tbl--price.hall2 tbody td:nth-last-child(4),
	.tbl--price.music-hall2 tbody td:nth-last-child(4),
	.tbl--price.music-studio2 tbody td:nth-last-child(4),
	.tbl--price.culture-studio2 tbody td:nth-last-child(4),
	.tbl--price.meeting-room2 tbody td:nth-last-child(4),
	.tbl--price.futai tbody td:nth-last-child(4){
		padding-top: 2.5rem;
	}

	.tbl--price.hall3 tbody td,
	.tbl--price.music-hall3 tbody td{
		width: calc(100% / 3);
	}
	.tbl--price.hall3 tbody td:nth-last-child(3),
	.tbl--price.music-hall3 tbody td:nth-last-child(3){
		padding-top: 2.5rem;
	}

	.tbl--price.gallery2 thead th{
		width: 26.84%;
	}
	.tbl--price.gallery2 thead th:nth-child(1){
		width: 14.61%;
	}
	.tbl--price.gallery2 thead th:nth-child(4),
	.tbl--price.gallery2 thead th:nth-child(5){
		width: 15.69%;
	}
	.tbl--price.gallery2 tbody td:nth-last-child(5){
		padding-top: 2.5rem;
	}

	.tbl--price.music-studio thead th{
		width: 11.3%;
	}
	.tbl--price.music-studio thead th:nth-child(1){
		width: 10.15%;
	}
	.tbl--price.music-studio tbody td:nth-last-child(9){
		vertical-align: top;
		padding-top: 2.5rem;
	}

	.tbl--price.culture-studio thead th{
		width: 12%;
	}
	.tbl--price.culture-studio thead th:nth-child(1){
		width: 10%;
	}
}

.tbl--cmn1{
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #D6D6D6;
}
.tbl--cmn1 th,
.tbl--cmn1 td{
	box-sizing: border-box;
	padding: 2.2rem 3rem;
}
.tbl--cmn1 th{
	background-color: #FBF3F5;
	color: #B33E5C;
}

@media only screen and (max-width: 599px) {
	.tbl--cmn1 th,
	.tbl--cmn1 td{
		display: block;
	}
	.tbl--cmn1 th,
	.tbl--cmn1 tr:not(:last-child) td{
		border-bottom: 1px solid #D6D6D6;
	}
}

@media print,screen and (min-width: 600px) {
	.tbl--cmn1 th,
	.tbl--cmn1 td{
		vertical-align: middle;
	}
	.tbl--cmn1 th{
		width: 20%;
		border-right: 1px solid #D6D6D6;
		padding-left: 9.5rem;
	}
	.tbl--cmn1 td{
		width: 80%;
	}
	.tbl--cmn1 tr:not(:last-child) th,
	.tbl--cmn1 tr:not(:last-child) td{
		border-bottom: 1px solid #D6D6D6;
	}
}

/*====================================
price
====================================*/
#price .sec-pagettl{
	background-image: url(../img/price/pagettl-bg-sp.jpg);
}
#price .container-price{
	padding-bottom: 15rem;
}
#price .anchor-list{
	margin-bottom: 10rem;
	display: flex;
	flex-wrap: wrap;
}
#price .anchor-item{
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 8rem;
	width: calc((100% - 2rem) / 2);
	font-size: 1.8rem;
	line-height: 1.55;
	padding: 0 2rem 0 0;
}
#price .anchor-item:before{
	top: calc((100% - 0.7rem) / 2);
	left: auto;
	right: 1rem;
	border-width: 0.7rem 0.6rem 0 0.6rem;
	border-color: #201090 transparent transparent transparent;
}

@media only screen and (max-width: 599px) {
	#price .anchor-list{
		justify-content: space-between;
	}
	#price .anchor-item:nth-child(n+3){
		margin-top: 2rem;
	}
}

@media print,screen and (min-width: 600px) {
	#price .sec-pagettl{
		background-image: url(../img/price/pagettl-bg-pc.jpg);
	}
	#price .container-price{
		padding-bottom: 20.5rem;
	}
	#price .anchor-item{
		width: calc((100% - 3rem * 6) / 7);
		padding: 0 3.2rem 0 0;
	}
	#price .anchor-item:not(:nth-child(7n)){
		margin-right: 3rem;
	}
	#price .anchor-item:before{
		right: 2rem;
	}
	#price .anchor-item:hover:before{
		border-color: #fff transparent transparent transparent;
	}
}

#price .sec-price:not(:last-child){
	margin-bottom: 6rem;
}
#price .sec-price .block-price:not(:last-child){
	margin-bottom: 4rem;
}
#price .sec-price .block-price .box-txt{
	margin-bottom: 2.5rem;
}
#price .sec-price .block-price .box-price:not(:last-child){
	margin-bottom: 3rem;
}
#price .sec-futai .block-file{
	margin-top: 1.9rem;
}

@media only screen and (max-width: 599px) {
	#price .sec-dl .file-item:not(:last-child){
		margin-bottom: 3rem;
	}
}

@media print,screen and (min-width: 600px) {
	#price .sec-price:not(:last-child){
		margin-bottom: 8rem;
	}
	#price .sec-price .block-price:not(:last-child){
		margin-bottom: 6rem;
	}
	#price .sec-price .block-price .box-txt{
		margin-bottom: 2.5rem;
	}
	#price .sec-price .block-price .box-price:not(:last-child){
		margin-bottom: 6rem;
	}
	#price .sec-futai .block-file{
		margin-top: 2.9rem;
	}
	#price .sec-dl .file-list{
		display: flex;
		flex-wrap: wrap;
		margin-top: -3rem;
	}
	#price .sec-dl .file-item{
		margin-right: 4rem;
		margin-top: 3rem;
	}
}


/*====================================
facilities
====================================*/
#facilities .sec-pagettl,
#facilities-c .sec-pagettl{
	background-image: url(../img/facilities/pagettl-bg-sp.jpg);
}
#facilities .sec-about{
	padding-bottom: 10rem;
}
#facilities .sec-about .block-img img{
	border: 1px solid #D6D6D6;
}
#facilities .sec-about .catch{
	font-size: 2.2rem;
	line-height: 1.63;
	margin-bottom: 2.5rem;
}
#facilities .sec-about .box-detail{
	margin-top: 2.5rem;
	padding: 2.7rem 2.5rem;
}

#facilities .sec-about .block-tbl{
	margin-top: 5rem;
}

@media only screen and (max-width: 599px) {
	#facilities .sec-about .block-txt{
		margin-top: 2.7rem;
	}
	#facilities .sec-about .detail-item:not(:last-child){
		margin-bottom: 0.5rem;
	}
}

@media print,screen and (min-width: 600px) {
	#facilities .sec-pagettl,
	#facilities-c .sec-pagettl{
		background-image: url(../img/facilities/pagettl-bg-pc.jpg);
	}
	#facilities .sec-about{
		padding-bottom: 15rem;
	}
	#facilities .sec-about .wrap-about{
		display: flex;
	}
	#facilities .sec-about .block-img{
		width: 55.2rem;
	}
	#facilities .sec-about .block-txt{
		flex: 1;
		padding-left: 5rem;
	}
	#facilities .sec-about .catch{
		font-size: 2.6rem;
		line-height: 1.69;
		margin-bottom: 2.9rem;
	}
	#facilities .sec-about .box-detail{
		margin-top: 3.3rem;
	}
	#facilities .sec-about .detail-list{
		display: flex;
		justify-content: center;
	}
	#facilities .sec-about .detail-item:not(:last-child){
		margin-right: 3.5rem;
	}

	#facilities .sec-about .block-tbl th{
		padding-left: 3rem;
		text-align: center;
	}
}

/* floormap
--------------------------------------*/
#facilities .sec-floormap{
	padding: 10rem 0;
}
#facilities .sec-floormap .container-floormap{
	padding: 6rem 3rem;
}
#facilities .sec-floormap .floormap-img-box-inner{
	position: relative;
}
#facilities .sec-floormap .btn-popup{
	margin-top: 4rem;
}
#facilities .sec-floormap .btn-popup .icon{
	margin-left: 1.5rem;
}

@media only screen and (max-width: 599px) {
	#facilities .sec-floormap .floormap-item:not(:last-child){
		padding-bottom: 4rem;
		border-bottom: 1px solid #D6D6D6;
		margin-bottom: 4rem;
	}
	#facilities .popup--floormap .scroll-area{
		width: 100vw;
		overflow-x: scroll;
	}
	#facilities .popup--floormap .scroll-area .floormap-img{
		box-sizing: border-box;
		padding: 8rem;
		width: 93.4rem;
		margin: 0 3rem;
		background-color: #fff;
	}
}

@media print,screen and (min-width: 600px) {
	#facilities .sec-floormap .container-floormap{
		padding: 8rem 6rem;
	}
	#facilities .sec-floormap .floormap-list{
		display: flex;
		justify-content: center;
	}
	#facilities .sec-floormap .floormap-item:not(:last-child){
		border-right: 1px solid #D6D6D6;
	}
	#facilities .sec-floormap .floormap-img-box{
		display: flex;
		justify-content: center;
	}
	#facilities .sec-floormap .floormap-img img{
		width: auto;
		height: 35.4rem;
	}
}

/* facilities
--------------------------------------*/
#facilities .sec-facilities{
	padding-top: 10rem;
	padding-bottom: 15rem;
}
#facilities .sec-facilities .facilities-ttl{
	font-size: 2.2rem;
	line-height: 1.63;
	margin-top: 2rem;
	margin-bottom: 1.2rem;
}
#facilities .sec-facilities .facilities-btn-box{
	margin-top: 1.5rem;
}

@media only screen and (max-width: 599px) {
	#facilities .sec-facilities .facilities-item:not(:last-child){
		margin-bottom: 6rem;
	}
}

@media print,screen and (min-width: 600px) {
	#facilities .sec-facilities{
		padding-top: 15rem;
		padding-bottom: 20rem;
	}
	#facilities .sec-facilities .facilities-list{
		display: flex;
		flex-wrap: wrap;
	}
	#facilities .sec-facilities .facilities-item{
		width: calc((100% - 11.8rem) / 3);
		display: flex;
		flex-direction: column;
	}
	#facilities .sec-facilities .facilities-item:not(:nth-child(3n)){
		margin-right: 5.9rem;
	}
	#facilities .sec-facilities .facilities-item:nth-child(n+4){
		margin-top: 8rem;
	}
	#facilities .sec-facilities .facilities-ttl-box{
		flex: 1;
	}
	#facilities .sec-facilities .facilities-ttl{
		margin-top: 3rem;
		margin-bottom: 2.2rem;
	}
	#facilities .sec-facilities .facilities-btn-box{
		margin-top: 2.5rem;
	}
}

/*====================================
facilities child
====================================*/
/* common
--------------------------------------*/
#facilities-c .container-facilities{
	padding-bottom: 9.5rem;
}
#facilities-c .sec-facilities:not(:last-child){
	margin-bottom: 6rem;
}

#facilities-c .facilities-photo-img{
	position: relative;
}
#facilities-c .facilities-photo-img-ttl{
	box-sizing: border-box;
	background-color: rgba(0, 0, 0, .7);
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 6rem;
	padding: 1.5rem;
	font-size: 2.2rem;
}

@media only screen and (max-width: 599px) {
	#facilities-c .facilities-photo-img-ttl{
		width: 100%;
	}
	#facilities-c .detail-tbl .file-item:not(:last-child){
		margin-bottom: 2.8rem;
	}
}

@media print,screen and (min-width: 600px) {
	#facilities-c .container-facilities{
		padding-bottom: 14.5rem;
	}
	#facilities-c .sec-facilities:not(:last-child){
		margin-bottom: 8rem;
	}

	#facilities-c .facilities-photo-img-ttl{
		position: absolute;
		left: 0;
		bottom: 3rem;
		min-width: 24rem;
	}

	#facilities-c .detail-tbl .tr-pdf .file-list{
		display: flex;
		flex-wrap: wrap;
		width: calc(100% + 4rem);
	}
	#facilities-c .detail-tbl .tr-pdf .file-item{
		margin-right: 4rem;
		margin-bottom: 3rem;
	}
}

/* about */
#facilities-c .sec-about .block-txt{
	padding-top: 2.5rem;
}

@media only screen and (max-width: 599px) {
	#facilities-c .sec-about .sec-inner{
		width: 100%;
		margin: 0;
	}
}
@media print,screen and (min-width: 600px) {
	#facilities-c .sec-about .block-txt{
		width: 100%;
		margin: 0;
	}
}

/* photo */
#facilities-c .sec-photo .block-slide{
	position: relative;
	overflow: hidden;
}
#facilities-c .sec-photo .block-thumbnail{
	margin-top: 2rem;
}
#facilities-c .sec-photo .thumbnail-list{
	display: flex;
	flex-wrap: wrap;
}
#facilities-c .sec-photo .thumbnail-item{
	position: relative;
	cursor: pointer;
	width: calc((100% - 1.4rem) / 2);
}
#facilities-c .sec-photo .thumbnail-item:before{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	bottom: 0;
	right: 0;
	border: 0.6rem solid #201090;
	opacity: 0;
	transition: opacity .3s ease;
}
#facilities-c .sec-photo .thumbnail-icon-box{
	position: absolute;
	bottom: 0;
	right: 0;
	pointer-events: none;
	width: 3.4rem;
	height: 3.4rem;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background .3s ease;
}
#facilities-c .sec-photo .thumbnail-item:hover:before,
#facilities-c .sec-photo .thumbnail-item.is--active:before{
	opacity: 1;
}
#facilities-c .sec-photo .thumbnail-item:hover .thumbnail-icon-box,
#facilities-c .sec-photo .thumbnail-item.is--active .thumbnail-icon-box{
	background-color: #201090;
}
#facilities-c .sec-photo .thumbnail-item:hover .thumbnail-icon,
#facilities-c .sec-photo .thumbnail-item.is--active .thumbnail-icon{
	background-color: #fff;
}

@media only screen and (max-width: 599px) {
	#facilities-c .sec-photo .sec-inner{
		width: 100%;
		margin: 0;
	}
	#facilities-c .sec-photo .thumbnail-list{
		justify-content: space-between;
	}
	#facilities-c .sec-photo .thumbnail-item:nth-child(n+3){
		margin-top: 1.4rem;
	}
}
@media print,screen and (min-width: 600px) {
	#facilities-c .sec-photo .sec-ttl,
	#facilities-c .sec-photo .slide,
	#facilities-c .sec-photo .block-thumbnail{
		width: 100%;
	}
	#facilities-c .sec-photo .thumbnail-item{
		width: calc((100% - 1.4rem * 5) / 6);
	}
	#facilities-c .sec-photo .thumbnail-item:not(:nth-child(6n)){
		margin-right: 1.4rem;
	}
	#facilities-c .sec-photo .thumbnail-item:nth-child(n+7){
		margin-top: 1.4rem;
	}
}

/* detail */
#facilities-c .sec-detail .box-tbl:not(:last-child){
	margin-bottom: 6rem;
}
#facilities-c .sec-detail .detail-tbl .tr-pdf td{
	padding-bottom: 2.7rem;
}

@media only screen and (max-width: 599px) {
	#facilities-c .sec-detail .detail-tbl .tr-pdf .file-list:not(:first-child){
		margin-top: 2.2rem;
	}
}
@media print,screen and (min-width: 600px) {
	#facilities-c .sec-detail .detail-tbl .tr-pdf td{
		padding-bottom: 0.2rem;
	}
}

/* example */
#facilities-c .sec-example .example-item:not(:last-child){
	margin-bottom: 5.5rem;
}
#facilities-c .sec-example .example-txt{
	padding-top: 2.5rem;
}

@media print,screen and (min-width: 600px) {
	#facilities-c .sec-example .example-item:not(:last-child){
		margin-bottom: 7.5rem;
	}
}

/* price */
#facilities-c .sec-price .block-price:not(:last-child),
#facilities-c .sec-price .block-price .box-price:not(:last-child){
	margin-bottom: 4rem;
}
#facilities-c .sec-price .box-txt{
	margin-bottom: 2.5rem;
}

@media print,screen and (min-width: 600px) {
	#facilities-c .sec-price .block-price:not(:last-child),
	#facilities-c .sec-price .block-price .box-price:not(:last-child){
		margin-bottom: 6rem;
	}
	#facilities-c .sec-price .box-txt{
		margin-bottom: 2.8rem;
	}
}

/* facilities-list */
.section--facilities-list{
	padding-top: 10rem;
	padding-bottom: 15rem;
}
.section--facilities-list .facilities-ttl{
	font-size: 2.2rem;
	line-height: 1.63;
	margin-bottom: 2rem;
}
.section--facilities-list .facilities-item .before--triangle:before{
	border-color: transparent transparent transparent #000;
}
.section--facilities-list .facilities-item.item-about .facilities-img-box,
.section--facilities-list .facilities-item.item-floormap .facilities-img-box{
	border: 1px solid #EEE;
}

@media only screen and (max-width: 599px) {
	.section--facilities-list .facilities-item:not(:last-child){
		margin-bottom: 6rem;
	}
}

@media print,screen and (min-width: 600px) {
	.section--facilities-list{
		padding-bottom: 20rem;
	}
	.section--facilities-list .facilities-list{
		display: flex;
		flex-wrap: wrap;
	}
	.section--facilities-list .facilities-item{
		width: calc((100% - 5.9rem * 2) / 3);
	}
	.section--facilities-list .facilities-item:nth-child(n+4){
		margin-top: 8rem;
	}
	.section--facilities-list .facilities-item:not(:nth-child(3n)){
		margin-right: 5.9rem;
	}
	.section--facilities-list .facilities-item .btn:hover .before--triangle:before{
		border-color: transparent transparent transparent #fff;
	}
}

/*====================================
policy
====================================*/
#policy .sec-policy{
	padding-bottom: 14.5rem;
}
#policy .sec-policy .block-lead{
	margin-bottom: 9.5rem;
}
#policy .sec-policy .policy-item:not(:last-child){
	margin-bottom: 5.5rem;
}

@media print,screen and (min-width: 600px) {
	#policy .sec-policy{
		padding-bottom: 20rem;
	}
	#policy .sec-policy .policy-item:not(:last-child){
		margin-bottom: 7.5rem;
	}
}

/*====================================
web-accessibility
====================================*/
#web-accessibility .sec-pagettl2 .sec-inner-inner{
	padding-top: 5.5rem;
}
#web-accessibility .container-web{
	padding-bottom: 14.5rem;
}
#web-accessibility .sec-lead{
	margin-bottom: 9.5rem;
}
#web-accessibility .sec-web:not(:last-child){
	margin-bottom: 5.5rem;
}

@media print,screen and (min-width: 600px) {
	#web-accessibility .container-web{
		padding-bottom: 20rem;
	}
	#web-accessibility .sec-web:not(:last-child){
		margin-bottom: 7.5rem;
	}
}


/*====================================
link
====================================*/
#link .container-link{
	padding-bottom: 14.5rem;
}
#link .sec-link:not(:last-child){
	margin-bottom: 5.5rem;
}
#link .sec-link .block-link:not(:last-child){
	margin-bottom: 5rem;
}
#link .sec-link .link-item{
	margin-bottom: 2.5rem;
}

@media only screen and (max-width: 599px) {
	#link .sec-link .link-item .link--square{
		display: inline-block;
	}
	#link .sec-link .link-item .link--square:before {
		top: 0.6rem;
	}
	#link .sec-link .link-item .link--square:after {
		top: 1.3rem;
	}
}

@media print,screen and (min-width: 600px) {
	#link .container-link{
		padding-bottom: 20rem;
	}
	#link .sec-link:not(:last-child){
		margin-bottom: 7.5rem;
	}
	#link .sec-link .link-list{
		display: flex;
		flex-wrap: wrap;
		width: calc(100% + 3rem);
	}
	#link .sec-link .link-item{
		margin-right: 3rem;
	}
}

/*====================================
sitemap
====================================*/
#sitemap .sec-sitemap{
	padding-bottom: 14.5rem;
}
#sitemap .sec-sitemap .nav-list-ttl,
#sitemap .sec-sitemap .nav-item:not(:last-child){
	margin-bottom: 2rem;
}
#sitemap .sec-sitemap .before--triangle:before{
	border-color: transparent transparent transparent #000;
}

@media only screen and (max-width: 599px) {
	#sitemap .sec-sitemap{
		width: 29.4rem;
	}
	#sitemap .sec-sitemap .nav-list-box:not(:last-child){
		padding-bottom: 3.5rem;
		border-bottom: 1px solid #D6D6D6;
	}
	#sitemap .sec-sitemap .nav-list-box:not(:first-child){
		padding-top: 3.5rem;
	}
}

@media print,screen and (min-width: 600px) {
	#sitemap .sec-sitemap{
		padding-bottom: 19rem;
	}
	#sitemap .sec-sitemap .block-sitemap{
		display: flex;
		justify-content: center;
	}
	#sitemap .sec-sitemap .nav-list-box:not(:last-child){
		padding-right: 6rem;
		border-right: 1px solid #D6D6D6;
	}
	#sitemap .sec-sitemap .nav-list-box:not(:first-child){
		padding-left: 6rem;
	}
}

/*====================================
faq
====================================*/
#faq .faq-sec-wrap{
	padding-bottom: 14.5rem;
}
#faq .sec-faq:not(:last-child){
	margin-bottom: 5.5rem;
}
#faq .faq-item:not(:last-child){
	margin-bottom: 3.5rem;
}
#faq .faq-q{
	margin-bottom: 1.5rem;
	font-size: 1.8rem;
	line-height: 2;
}

@media print,screen and (min-width: 600px) {
	#faq .faq-sec-wrap{
		padding-bottom: 19.5rem;
	}
	#faq .sec-faq:not(:last-child){
		margin-bottom: 7.5rem;
	}
	#faq .faq-item:not(:last-child){
		margin-bottom: 5.5rem;
	}
	#faq .faq-a{
		padding: 0 2rem;
	}
}

/*====================================
availability
====================================*/
#availability .sec-availability{
	padding-bottom: 14.5rem;
}
#availability .sec-availability .block-lead{
	margin-bottom: 5.5rem;
}
#availability .sec-availability .flow-item{
	position: relative;
	padding: 0;
}
#availability .sec-availability .flow-item:not(:last-child){
	padding-bottom: 9rem;
}
#availability .sec-availability .flow-item.before--triangle:before{
	border-width: 3rem 3.6rem 0 3.6rem;
	border-color: #D6D6D6 transparent transparent transparent;
	top: auto;
	bottom: 3rem;
	left: calc(50% - 3.6rem);
}
#availability .sec-availability .flow-txt{
	font-size: 2.2rem;
	padding: 2.9rem 0.5rem;
}
#availability .sec-availability .blcok-txt{
	margin-top: 5.5rem;
}

@media print,screen and (min-width: 600px) {
	#availability .sec-availability{
		padding-bottom: 19.5rem;
	}
	#availability .sec-availability .block-lead{
		margin-bottom: 7.5rem;
	}
	#availability .sec-availability .flow-list{
		width: 62rem;
		margin: 0 auto;
	}
	#availability .sec-availability .flow-txt{
		font-size: 2.6rem;
		padding: 2.7rem 0.5rem;
	}
	#availability .sec-availability .blcok-txt{
		margin-top: 7.5rem;
	}
}

/*====================================
guidance
====================================*/
/* common
--------------------------------------*/
#guidance .sec-pagettl{
	background-image: url(../img/guidance/pagettl-bg-sp.jpg);
}

@media print,screen and (min-width: 600px) {
	#guidance .sec-pagettl{
		background-image: url(../img/guidance/pagettl-bg-pc.jpg);
	}
}

/* lead */
#guidance .sec-guidance-lead{
	padding-bottom: 8rem;
}
#guidance .sec-guidance-lead .guidance-check-block{
	margin-top: 7.5rem;
	padding: 6rem 3rem 3rem 3rem;
	border: 1px solid #D6D6D6;
}
#guidance .sec-guidance-lead .guidance-check-box .box-ttl{
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 2.7rem;
}
#guidance .sec-guidance-lead .guidance-check-box .box-ttl-icon{
	width: 2.8rem;
	height: 2.8rem;
	border-radius: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
#guidance .sec-guidance-lead .guidance-check-box .box-ttl-txt{
	margin-left: 1rem;
	font-size: 2.2rem;
}
#guidance .sec-guidance-lead .guidance-check-box .wrap-btn{
	padding-top: 3.7rem;
}
#guidance .sec-guidance-lead .guidance-check-box.box-howto .btn{
	font-size: 1.6rem;
	line-height: 1.625;
	padding: 2.4rem 2rem;
}

@media only screen and (max-width: 599px) {
	#guidance .sec-guidance-lead .guidance-check-box:not(:last-child){
		padding-bottom: 5rem;
		border-bottom: 1px solid #D6D6D6;
	}
	#guidance .sec-guidance-lead .guidance-check-box:not(:first-child){
		padding-top: 5rem;
	}
	#guidance .sec-guidance-lead .guidance-check-box.box-howto .btn{
		height: auto;
	}
	#guidance .sec-guidance-lead .guidance-check-box.box-howto .before--triangle:before{
		top: 0.6rem;
	}
}

@media print,screen and (min-width: 600px) {
	#guidance .sec-guidance-lead{
		padding-bottom: 10rem;
	}
	#guidance .sec-guidance-lead .guidance-check-block{
		margin-top: 9.5rem;
		padding: 6rem;
		display: flex;
	}
	#guidance .sec-guidance-lead .guidance-check-box{
		width: 50%;
		box-sizing: border-box;
		display: flex;
		flex-direction: column;
	}
	#guidance .sec-guidance-lead .guidance-check-box:not(:last-child){
		padding-right: 6rem;
		border-right: 1px solid #D6D6D6;
	}
	#guidance .sec-guidance-lead .guidance-check-box:not(:first-child){
		padding-left: 6rem;
	}
	#guidance .sec-guidance-lead .guidance-check-box .wrap-ttl{
		flex: 1;
	}
	#guidance .sec-guidance-lead .guidance-check-box .btn{
		width: 45rem;
		margin-left: auto;
		margin-right: auto;
	}
}

/* flow */
#guidance .guidance-container-flow{
	padding-top: 8rem;
	padding-bottom: 14.5rem;
}
#guidance .guidance-container-flow .sec-guidance-flow:not(:last-child){
	margin-bottom: 5.5rem;
}

#guidance .guidance-container-flow .sec-flow:not(:last-child){
	margin-bottom: 10rem;
}
#guidance .guidance-container-flow .sec-flow .block-anchor{
	margin-bottom: 6rem;
}
#guidance .guidance-container-flow .sec-flow .anchor-list{
	margin-top: 5.4rem;
}
#guidance .guidance-container-flow .sec-flow .anchor-btn{
	font-size: 2.2rem;
	line-height: 1.63;
	padding: 0;
}
#guidance .guidance-container-flow .sec-flow .anchor-btn.before--triangle:before{
	left: auto;
	right: 2rem;
	border-width: 0.7rem 0.6rem 0 0.6rem;
	border-color: #fff transparent transparent transparent;
	top: calc(50% - 0.35rem);
}

#guidance .guidance-container-flow .sec-flow .box-flow:not(:last-child){
	margin-bottom: 10rem;
}
#guidance .guidance-container-flow .sec-flow .flow-box{
	box-sizing: border-box;
	padding: 3rem;
}
#guidance .guidance-container-flow .sec-flow .flow-box:not(:last-child){
	margin-bottom: 7.2rem;
}
#guidance .guidance-container-flow .sec-flow .flow-box.before--triangle:before{
	border-width: 3.2rem 5.5rem 0 5.5rem;
	border-color: #CF8699 transparent transparent transparent;
	left: calc((100% - 11rem) / 2);
	top: auto;
	bottom: -5.2rem;
}
#guidance .guidance-container-flow .sec-flow .flow-ttl{
	display: flex;
	margin-bottom: 3rem;
}
#guidance .guidance-container-flow .sec-flow .flow-step{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 10rem;
	font-size: 1.8rem;
}
#guidance .guidance-container-flow .sec-flow .flow-ttl-txt{
	flex: 1;
	font-size: 1.8rem;
	line-height: 2;
	padding: 1.2rem 2rem;
}
#guidance .guidance-container-flow .sec-flow .flow-subbox:not(:last-child){
	margin-bottom: 4rem;
}
#guidance .guidance-container-flow .sec-flow .flow-btn .btn-tel .btn-inner{
	display: flex;
}
#guidance .guidance-container-flow .sec-flow .flow-btn .btn-tel .icon{
	margin-top: 0.2rem;
}
#guidance .guidance-container-flow .sec-flow .flow-note{
	border: 1px solid #D6D6D6;
	padding: 3rem 2.8rem;
}

#guidance .guidance-container-flow .sec-rule ul > li > ul.txt--i > li{
	padding-left: 2em;
	text-indent: -2em;
}

#guidance .guidance-container-flow .sec-other .block-other:not(:last-child){
	margin-bottom: 2.5rem;
}

@media only screen and (max-width: 599px) {
	#guidance .guidance-container-flow .sec-flow .anchor-btn{
		height: 10rem;
	}
	#guidance .guidance-container-flow .sec-flow .anchor-btn:not(:last-child){
		margin-bottom: 3rem;
	}

	#guidance .guidance-container-flow .sec-flow .flow-btn .btn:not(:last-child){
		margin-bottom: 3rem;
	}
	#guidance .guidance-container-flow .sec-flow .flow-btn .btn-reserve .before--triangle:before{
		top: 0.6em;
	}
	#guidance .guidance-container-flow .sec-flow .flow-btn .btn{
		line-height: 1.55;
	}
}

@media print,screen and (min-width: 600px) {
	#guidance .guidance-container-flow{
		padding-top: 10rem;
		padding-bottom: 19.5rem;
	}
	#guidance .guidance-container-flow .sec-guidance-flow:not(:last-child){
		margin-bottom: 7.5rem;
	}
	
	#guidance .guidance-container-flow .sec-flow:not(:last-child){
		margin-bottom: 15rem;
	}
	#guidance .guidance-container-flow .sec-flow .block-anchor{
		margin-bottom: 8rem;
	}
	#guidance .guidance-container-flow .sec-flow .anchor-list{
		margin-top: 7.5rem;
		display: flex;
		justify-content: center;
	}
	#guidance .guidance-container-flow .sec-flow .anchor-btn{
		padding-right: 3.2rem;
	}
	#guidance .guidance-container-flow .sec-flow .anchor-btn:first-child{
		width: 48rem;
		margin-right: 3rem;
	}
	#guidance .guidance-container-flow .sec-flow .anchor-btn:last-child{
		width: 57rem;
	}

	#guidance .guidance-container-flow .sec-flow .box-flow:not(:last-child){
		margin-bottom: 15rem;
	}
	#guidance .guidance-container-flow .sec-flow .flow-box{
		padding: 6rem;
	}
	#guidance .guidance-container-flow .sec-flow .flow-subbox:not(:last-child){
		margin-bottom: 6rem;
	}
	#guidance .guidance-container-flow .sec-flow .flow-btn{
		display: flex;
		justify-content: center;
	}
	#guidance .guidance-container-flow .sec-flow .flow-btn .btn{
		width: 45rem;
	}
	#guidance .guidance-container-flow .sec-flow .flow-btn .btn:not(:last-child){
		margin-right: 3rem;
	}
	#guidance .guidance-container-flow .sec-flow .flow-btn .btn-tel{
		pointer-events: none;
	}

	#guidance .guidance-container-flow .sec-other .block-other:not(:last-child){
		margin-bottom: 3.5rem;
	}
}

/* regist
--------------------------------------*/
#guidance.page--regist .sec-flow .flow-box-step3 .flow-btn{
	margin-top: 2.5rem;
}

@media only screen and (max-width: 599px) {
	#guidance.page--regist .sec-flow .anchor-btn{
		line-height: 1.63;
		height: 9rem;
	}
	#guidance.page--regist .sec-flow .flow-box-step3 .btn-tel{
		height: auto;
		padding-top: 1.4rem;
		padding-bottom: 1.4rem;
	}
}
@media print,screen and (min-width: 600px) {
	#guidance.page--regist .sec-guidance-flow .anchor-btn{
		width: 44rem;
	}
	#guidance.page--regist .sec-flow .flow-box-step3 .flow-note{
		padding-bottom: 6rem;
	}
}

/* download
--------------------------------------*/
#guidance.page--download .dl-sec-wrap{
	padding-bottom: 12rem;
}
#guidance.page--download .sec-dl:not(:last-child){
	margin-bottom: 5.5rem;
}
@media only screen and (max-width: 599px) {
	#guidance.page--download .file-item:not(:last-child){
		margin-bottom: 3rem;
	}
}
@media print,screen and (min-width: 600px) {
	#guidance.page--download .dl-sec-wrap{
		padding-bottom: 16rem;
	}
	#guidance.page--download .sec-dl:not(:last-child){
		margin-bottom: 4rem;
	}
	#guidance.page--download .file-list{
		display: flex;
		flex-wrap: wrap;
		width: calc(100% + 4rem);
	}
	#guidance.page--download .file-item{
		margin-bottom: 4rem;
		margin-right: 4rem;
	}
}


/*====================================
news
====================================*/
#news .sec-pagettl{
	background-image: url(../img/news/pagettl-bg-sp.jpg);
}
#news .sec-archive{
	padding-bottom: 15rem;
}
#news .news-item{
	padding: 5rem 0;
}
#news .news-item:not(:last-child){
	border-bottom: 1px solid #D6D6D6;
}
#news .news-head{
	margin-bottom: 2rem;
	display: flex;
	align-items: center;
}
#news .news-new{
	font-size: 1.3rem;
	padding: 0.4rem 0.6rem;
	border-radius: 0.5rem;
	margin-right: 1rem;
}
#news .news-time{
	font-size: 1.3rem;
}
#news .sec-archive .news-btn .before--triangle{
	padding-left: 2rem;
}

#news .sec-single{
	padding-bottom: 15rem;
}
#news .sec-single .news-ttl{
	font-size: 2.6rem;
	line-height: 1.69;
	margin-bottom: 5.5rem;
}
#news .sec-single .btn-to-archive{
	margin-top: 9.5rem;
}

@media only screen and (max-width: 599px) {
	#news .sec-archive .news-btn{
		width: 25.7rem;
		margin: 3.5rem auto 0 auto;
	}
	#news .sec-archive .news-btn .before--triangle:before{
		border-color: transparent transparent transparent #000;
	}
}

@media print,screen and (min-width: 600px) {
	#news .sec-pagettl{
		background-image: url(../img/news/pagettl-bg-pc.jpg);
	}
	#news .sec-archive{
		padding-bottom: 20rem;
	}
	#news .sec-archive .news-content{
		display: flex;
	}
	#news .sec-archive .news-ttl-box{
		flex: 1;
		padding-right: 4rem;
		font-size: 2.2rem;
	}
	#news .sec-archive .news-btn-box{
		width: 25.7rem;
	}
	#news .sec-archive .news-btn:not(:hover) .before--triangle:before{
		border-color: transparent transparent transparent #000;
	}

	#news .sec-single{
		padding-bottom: 20rem;
	}
	#news .sec-single .news-ttl{
		font-size: 3rem;
		line-height: 1.8;
		margin-bottom: 9.5rem;
	}
	#news .sec-single .btn-to-archive{
		width: 45rem;
		margin: 14.5rem auto 0 auto;
	}
}

/*====================================
form
====================================*/
/* input */
.form--tbl input[type="text"],
.form--tbl input[type="tel"],
.form--tbl input[type="email"],
.form--tbl textarea{
	appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
	border: none;
	font-family : inherit;
	color: inherit;
	background: none;
	box-sizing: border-box;
	width: 100%;
	border: 1px solid #D6D6D6;
}
.form--tbl input[type="text"],
.form--tbl input[type="tel"],
.form--tbl input[type="email"]{
	height: 4rem;
	padding: 0 1rem;
}
.form--tbl input:placeholder-shown,
.form--tbl textarea:placeholder-shown {
	color: #ccc;
}
.form--tbl input::-webkit-input-placeholder,
.form--tbl textarea::-webkit-input-placeholder {
	color: #ccc;
}
.form--tbl textarea{
	padding: 1rem;
}

/* checkbox radio */
.form--tbl span.wpcf7-list-item{
	margin: 0;
}
.form--tbl .wpcf7-radio .wpcf7-list-item{
	display: block;
}
.form--tbl .wpcf7-radio .wpcf7-list-item:not(:last-child){
	margin-bottom: 1.5rem;
}
.form--tbl .wpcf7-radio input[type="radio"],
.form--tbl .wpcf7-acceptance input[type="checkbox"]{
	display: none;
}
.form--tbl .wpcf7-radio .wpcf7-list-item-label,
.form--tbl .wpcf7-acceptance .wpcf7-list-item-label{
	display: inline-block;
	position: relative;
	padding-left: 2.3rem;
}
.form--tbl .wpcf7-radio .wpcf7-list-item-label:before,
.form--tbl .wpcf7-radio .wpcf7-list-item-label:after,
.form--tbl .wpcf7-acceptance .wpcf7-list-item-label:before,
.form--tbl .wpcf7-acceptance .wpcf7-list-item-label:after{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	box-sizing: border-box;
}
.form--tbl .wpcf7-radio .wpcf7-list-item-label:before,
.form--tbl .wpcf7-acceptance .wpcf7-list-item-label:before{
	width: 1.6rem;
	height: 1.6rem;
	left: 0;
	top: calc(50% - 0.8rem);
	background-color: #fff;
	border: 1px solid #BBB;
	transition: background .2s ease, border .2s ease;
	border-radius: 100%;
}
.form--tbl .wpcf7-radio .wpcf7-list-item-label:after,
.form--tbl .wpcf7-acceptance .wpcf7-list-item-label:after{
	opacity: 0;
	transition: opacity .2s ease;
	width: 0.8rem;
	height: 0.8rem;
	border-radius: 100%;
	background-color: #000;
	left: 0.4rem;
	top: calc(50% - 0.4rem);
}
.form--tbl .wpcf7-radio input:checked + .wpcf7-list-item-label:after,
.form--tbl .wpcf7-acceptance input:checked + .wpcf7-list-item-label:after{
	opacity: 1;
}

@media print,screen and (min-width: 600px) {
	.form--tbl .wpcf7-radio .wpcf7-list-item:not(:last-child){
		margin-bottom: 1rem;
	}
}

/* ボタン */
.btn--form{
	margin-top: 8rem;
}
.btn--form input{
	outline: none;
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance: none;
	background: none;
	border: none;
	padding: 0;
	display: inline-block;
	position: relative;
	text-align: center;
	cursor: pointer;
	line-height: 1;
	z-index: 3;
	box-sizing: border-box;
	width: 100%;
	height: 8rem;
	background-color: #484848;
	color: #fff;
	font-size: 1.8rem;
	transition: background .3s ease, color .3s ease, border .3s ease, opacity .3s ease;
}
.btn--form input:disabled{
	opacity: .7;
	pointer-events: none;
}

@media print,screen and (min-width: 600px) {
	.btn--form{
		margin-top: 10rem;
		text-align: center;
	}
	.btn--form input{
		width: 45rem;
	}
}

.form--tbl{
	box-sizing: border-box;
	width: 100%;
	border: 1px solid #D6D6D6;
}
.form--tbl p:not(:last-child){
	margin-bottom: 0;
}
.form--tbl th,
.form--tbl td{
	box-sizing: border-box;
	vertical-align: middle;
}
.form--tbl th{
	background-color: #201090;
	color: #fff;
	padding: 1.2rem 2rem;
}
.form--tbl td{
	background-color: #fff;
	padding: 2rem;
}

.form--tbl .req-cell-inner{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.form--tbl .req-cell-inner .req{
	font-size: 1.3rem;
	color: #000;
	line-height: 1;
	padding: 0.3rem 0.5rem;
	background-color: #fff;
}
.form--tbl .td-block:not(:last-child){
	margin-bottom: 2rem;
}
.form--tbl .td-label{
	line-height: 1.2;
	margin-bottom: 1rem;
}
.form--tbl .td-detail-txt:not(:first-child){
	margin-top: 0.5rem;
}
.form--tbl .unit-wrap{
	display: flex;
	align-items: center;
}
.form--tbl .unit-wrap .unit:not(:last-child){
	margin-right: 1rem;
}

.form--tbl .address-block-postcode{
	display: flex;
}
.form--tbl .address-block-postcode .btn-setaddress{
	width: 13rem;
	height: 4rem;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	margin-left: 1rem;
}

@media screen and (max-width: 599px) {
	.form--tbl th,
	.form--tbl td{
		display: block;
	}
	.form--tbl th{
		border-bottom: 1px solid #D6D6D6;
	}
	.form--tbl tr:not(:last-child) td{
		border-bottom: 1px solid #D6D6D6;
	}

	.form--tbl .address-block-postcode .unit-wrap{
		flex: 1;
	}
	.form--tbl .address-block-postcode .btn-setaddress{
		font-size: 1.5rem;
	}
}

@media print,screen and (min-width: 600px) {
	.form--tbl th,
	.form--tbl td{
		vertical-align: middle;
	}
	.form--tbl th{
		width: 28%;
		padding: 2.3rem 2rem 2.3rem 5.2rem;
	}
	.form--tbl tr:not(:last-child) th{
		border-bottom: 1px solid #fff;
	}
	.form--tbl td{
		width: 72%;
	}
	.form--tbl tr:not(:last-child) td{
		border-bottom: 1px solid #D6D6D6;
	}

	.form--tbl .address-block-postcode .unit-input{
		width: 21.5rem;
	}
	.form--tbl .address-block-postcode .btn-setaddress{
		width: 15rem;
		margin-left: 2rem;
	}
	.form--tbl .address-block-unput{
		display: flex;
		align-items: center;
	}
	.form--tbl .address-block-unput .td-label{
		width: 8em;
		margin: 0;
	}
	.form--tbl .address-block-unput .td-input{
		flex: 1;
	}
}

.wpcf7 form .wpcf7-response-output{
	padding: 2.4rem 2rem;
	border: none !important;
}
.wpcf7 form:not(.sent) .wpcf7-response-output{
	background-color: #980404;
	color: #fff;
}
.wpcf7 .recaptha-caption{
	margin-top: 10rem;
}
.wpcf7 .recaptha-caption a{
	text-decoration: underline;
}
.grecaptcha-badge { visibility: hidden; }
.wpcf7 form.sent .form--tbl,
.wpcf7 form.sent .btn--form,
.wpcf7 form.sent .wpcf7-response-output{
	display: none;
}
.wpcf7 form .sent-thankyou-message{
	display: none;
}
.wpcf7 form.sent .sent-thankyou-message{
	display: block;
	background-color: #fff;
	padding: 3rem;
}

@media print,screen and (min-width: 600px) {
	.wpcf7 form.sent .sent-thankyou-message{
		padding: 6rem;
	}
}

/*====================================
contact
====================================*/
#contact .sec-contact{
	padding-bottom: 9.5rem;
}
#contact .sec-contact .block-ttl{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 3rem;
}
#contact .sec-contact .block-ttl-txt{
	font-size: 2.6rem;
	margin-left: 1rem;
}
#contact .sec-contact .block-contact.block-tel .box-tel{
	font-size: 3rem;
	margin-bottom: 1.7rem;
}

@media only screen and (max-width: 599px) {
	#contact .sec-contact .block-contact:not(:last-child){
		padding-bottom: 5.5rem;
		border-bottom: 1px solid #D6D6D6;
	}
	#contact .sec-contact .block-contact:not(:first-child){
		padding-top: 6rem;
	}
	#contact .sec-contact .block-contact.block-tel .box-txt{
		width: calc(100% + 1em);
		margin-left: -0.5em;
	}
	#contact .sec-contact .block-contact.block-mail .block-ttl{
		margin-bottom: 3.5rem;
	}
}

@media print,screen and (min-width: 600px) {
	#contact .sec-contact{
		display: flex;
		justify-content: center;
	}
	#contact .sec-contact .block-contact{
		display: flex;
		flex-direction: column;
	}
	#contact .sec-contact .block-contact:not(:last-child){
		padding-right: 7rem;
		border-right: 1px solid #D6D6D6;
	}
	#contact .sec-contact .block-contact:not(:first-child){
		padding-left: 7rem;
	}
	#contact .sec-contact .block-contact.block-mail .block-ttl{
		margin-bottom: 4rem;
	}
}

/* form
--------------------------------------*/
#contact .sec-form{
	box-sizing: border-box;
	padding-top: 10rem;
	padding-bottom: 15rem;
}

@media only screen and (max-width: 599px) {
	#contact .sec-form{
		width: 100%;
	}
}

@media print,screen and (min-width: 600px) {
	#contact .sec-form{
		padding: 6rem 6rem 10rem 6rem;
		margin-bottom: 20rem;
	}
	#contact .sec-form .sec-inner{
		width: 100%;
		margin: 0;
	}
}

/*====================================
sunheart-friend
====================================*/
#sunheart-friend .sec-about .container-lead{
	padding-bottom: 5.5rem;
}
#sunheart-friend .sec-about .container-lead .block-period .box-period{
	font-size: 2.6rem;
}

#sunheart-friend .sec-about .container-about{
	padding-top: 5rem;
	padding-bottom: 5.5rem;
}
#sunheart-friend .sec-about .container-about .container-ttl{
	margin-bottom: 2.5rem;
}
#sunheart-friend .sec-about .container-about .container-ttl span{
	position: relative;
	display: inline-block;
	font-size: 2.6rem;
	padding: 0 2.1rem;
}
#sunheart-friend .sec-about .container-about .container-ttl span:before,
#sunheart-friend .sec-about .container-about .container-ttl span:after{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	height: 6.1rem;
	width: 0.2rem;
	border-radius: 1rem;
	background-color: #B33E5C;
	top: 1rem;
}
#sunheart-friend .sec-about .container-about .container-ttl span:before{
	left: 0.3rem;
	transform: rotate(-15deg);
}
#sunheart-friend .sec-about .container-about .container-ttl span:after{
	right: 0.3rem;
	transform: rotate(15deg);
}
#sunheart-friend .sec-about .tokuten-box{
	padding: 3rem 3rem 2.7rem 3rem;
}
#sunheart-friend .sec-about .tokuten-box:not(:last-child){
	margin-bottom: 3rem;
}
#sunheart-friend .sec-about .tokuten-ttl{
	display: flex;
	margin-bottom: 1.3rem;
}
#sunheart-friend .sec-about .tokuten-ttl-icon{
	margin-top: 0.2rem;
	width: 2.8rem;
	height: 2.8rem;
	border-radius: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
#sunheart-friend .sec-about .tokuten-ttl-txt{
	flex: 1;
	padding-left: 0.7rem;
	font-size: 2.2rem;
	line-height: 1.63;
}

#sunheart-friend .sec-about .tokuten-box .item-partner-store{
	margin-top: 3.5rem;
}
#sunheart-friend .sec-about .tokuten-box .store-p-name{
	padding: 2.9rem 2.2rem;
	font-size: 1.8rem;
	border: 1px solid #D6D6D6;
	border-bottom: none;
}
#sunheart-friend .tbl--store{
	box-sizing: border-box;
	width: 100%;
	border: 1px solid #D6D6D6;
}
#sunheart-friend .tbl--store th,
#sunheart-friend .tbl--store td{
	box-sizing: border-box;
	font-size: 1.8rem;
	line-height: 1.55;
	padding: 1.1rem 0.9rem;
}
#sunheart-friend .tbl--store th:not(:last-child),
#sunheart-friend .tbl--store td:not(:last-child){
	border-right: 1px solid #D6D6D6;
}
#sunheart-friend .tbl--store tr:not(:last-child) th,
#sunheart-friend .tbl--store tr:not(:last-child) td{
	border-bottom: 1px solid #D6D6D6;
}
#sunheart-friend .tbl--store thead{
	border-bottom: 1px solid #D6D6D6;
	position: sticky;
	top: 0;
}
#sunheart-friend .tbl--store thead th{
	vertical-align: middle;
	text-align: center;
	width: calc(100% / 3);
}
#sunheart-friend .tbl--store .store-name .cat{
	font-size: 1.3rem;
}

#sunheart-friend .sec-about .block-fees{
	margin-top: 6rem;
}
#sunheart-friend .sec-about .block-fees .item-fees{
	display: flex;
	align-items: center;
	margin-bottom: 3.5rem;
}
#sunheart-friend .sec-about .block-fees .item-fees-label{
	font-size: 2.6rem;
	padding: 1.6rem;
	border-radius: 1rem;
}
#sunheart-friend .sec-about .block-fees .item-fees-txt{
	flex: 1;
	font-size: 3.6rem;
	padding-left: 2rem;
}

@media only screen and (max-width: 599px) {
	#sunheart-friend .sec-about .container-lead .block-period .box-period{
		line-height: 1.69;
		margin-bottom: 2.5rem;
	}

	#sunheart-friend .sec-about .container-about{
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	#sunheart-friend .sec-about .container-about .container-ttl span{
		line-height: 1.69;
	}

	#sunheart-friend .tbl--store thead th:nth-child(2){
		text-align: left;
	}
	#sunheart-friend .tbl--store .store-name .cat{
		margin-bottom: 0.5rem;
	}

	#sunheart-friend .sec-about .block-fees .box-txt .txt--i li{
		padding-left: 0;
		text-indent: 0;
	}
	#sunheart-friend .sec-about .block-fees .box-img{
		margin-top: 4rem;
	}
}

@media print,screen and (min-width: 600px) {
	#sunheart-friend .sec-about .container-lead{
		padding-bottom: 7.5rem;
	}
	#sunheart-friend .sec-about .container-lead .block-period{
		display: flex;
		align-items: center;
	}
	#sunheart-friend .sec-about .container-lead .block-period .box-txt{
		flex: 1;
		padding-left: 3rem;
	}

	#sunheart-friend .sec-about .container-about{
		box-sizing: border-box;
		padding: 6.5rem 6rem 6rem 6rem;
	}
	#sunheart-friend .sec-about .container-about .container-inner{
		width: auto;
		margin-left: auto;
		margin-right: auto;
	}
	#sunheart-friend .sec-about .container-about .container-ttl{
		margin-bottom: 4rem;
	}
	#sunheart-friend .sec-about .container-about .container-ttl span{
		padding: 0 2.5rem;
	}
	#sunheart-friend .sec-about .container-about .container-ttl span:before,
	#sunheart-friend .sec-about .container-about .container-ttl span:after{
		height: 2.7rem;
		top: 0rem;
	}
	#sunheart-friend .sec-about .container-about .container-ttl span:before{
		left: 0.3rem;
		transform: rotate(-18deg);
	}
	#sunheart-friend .sec-about .container-about .container-ttl span:after{
		right: 0.3rem;
		transform: rotate(18deg);
	}
	#sunheart-friend .sec-about .tokuten-box{
		padding: 6rem 6rem 5.7rem 6rem;
	}
	#sunheart-friend .sec-about .tokuten-box:not(:last-child){
		margin-bottom: 2rem;
	}
	#sunheart-friend .sec-about .tokuten-ttl-icon{
		margin-top: 0.4rem;
	}

	#sunheart-friend .tbl--store thead{
		top: 7rem;
	}
	#sunheart-friend .tbl--store thead th{
		width: 19%;
		padding: 1.6rem 2rem;
	}
	#sunheart-friend .tbl--store thead th:nth-child(1){
		width: 43%;
	}
	#sunheart-friend .tbl--store thead th:nth-child(2){
		width: 37%;
	}
	#sunheart-friend .tbl--store td{
		padding: 2.6rem 2rem;
	}
	#sunheart-friend .tbl--store .store-name{
		display: flex;
		align-items: center;
	}
	#sunheart-friend .tbl--store .store-name .name{
		flex: 1;
		padding-left: 2rem;
	}

	#sunheart-friend .sec-about .block-fees{
		display: flex;
	}
	#sunheart-friend .sec-about .block-fees .box-txt{
		flex: 1;
		padding-right: 4rem;
	}
	#sunheart-friend .sec-about .block-fees .box-img{
		width: 37rem;
	}
}

/* application
--------------------------------------*/
#sunheart-friend .sec-application{
	padding-top: 6rem;
	padding-bottom: 15rem;
}
#sunheart-friend .sec-application .block-lead{
	margin-bottom: 6rem;
}
#sunheart-friend .sec-application .howto-ttl{
	display: flex;
	align-items: center;
	margin-bottom: 1.5rem;
}
#sunheart-friend .sec-application .howto-ttl-icon{
	display: flex;
	align-items: center;
}
#sunheart-friend .sec-application .howto-ttl-icon .icon.tel{
	width: 1.4rem;
	margin-right: 0.7rem;
}
#sunheart-friend .sec-application .howto-ttl-icon .icon.fax{
	width: 1.6rem;
}
#sunheart-friend .sec-application .howto-ttl-icon .icon.car{
	width: 1.8rem;
}
#sunheart-friend .sec-application .howto-ttl-txt{
	flex: 1;
	padding-left: 0.9rem;
	font-size: 1.8rem;
}
#sunheart-friend .sec-application .howto-link{
	margin-top: 3.5rem;
}

@media only screen and (max-width: 599px) {
	#sunheart-friend .sec-application .block-lead .box-btn{
		margin-top: 2.5rem;
	}
	#sunheart-friend .sec-application .howto-box:not(:last-child){
		padding-bottom: 3.5rem;
		border-bottom: 1px solid #707070;
	}
	#sunheart-friend .sec-application .howto-box:not(:first-child){
		padding-top: 4.5rem;
	}
}

@media print,screen and (min-width: 600px) {
	#sunheart-friend .sec-application{
		padding-top: 8rem;
		padding-bottom: 19.5rem;
	}
	#sunheart-friend .sec-application .block-lead{
		margin-bottom: 8rem;
		display: flex;
	}
	#sunheart-friend .sec-application .block-lead .box-txt{
		flex: 1;
		padding-right: 5rem;
	}
	#sunheart-friend .sec-application .block-lead .box-btn{
		width: 45rem;
	}
	#sunheart-friend .sec-application .block-howto{
		display: flex;
	}
	#sunheart-friend .sec-application .howto-box{
		box-sizing: border-box;
		width: 50%;
	}
	#sunheart-friend .sec-application .howto-box:not(:last-child){
		padding-right: 5rem;
		border-right: 1px solid #D6D6D6;
	}
	#sunheart-friend .sec-application .howto-box:not(:first-child){
		padding-left: 5rem;
	}
}

/*====================================
ticket
====================================*/
#ticket .container-howto{
	padding-bottom: 15rem;
}
#ticket .container-howto .lead-txt{
	margin-bottom: 5.5rem;
}
#ticket .sec-howto:not(:last-child){
	padding-bottom: 6rem;
}

#ticket .sec-howto.sec-counter .box-link{
	margin-top: 3.5rem;
}

#ticket .sec-howto.sec-tel .info-list{
	margin-top: 3.5rem;
}
#ticket .sec-howto.sec-tel .info-item{
	display: flex;
}
#ticket .sec-howto.sec-tel .info-icon{
	margin-right: 1rem;
	width: 1.4rem;
	margin-top: 0.7rem;
}
#ticket .sec-howto.sec-tel .info-item.item-time .info-icon{
	width: 1.9rem;
	margin-top: 0.8rem;
}
#ticket .sec-howto.sec-tel .info-txt{
	flex:1;
}
#ticket .sec-howto.sec-tel .box-detail{
	margin-top: 3.5rem;
	padding: 2.7rem 3rem;
}

#ticket .sec-howto.sec-online .logo-list{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	width: calc(100% + 4rem);
}
#ticket .sec-howto.sec-online .logo-item{
	width: 18.6rem;
	margin-top: 5rem;
	margin-right: 4rem;
}
#ticket .sec-howto.sec-online .logo-item.pia{
	width: 7.2rem;
}
#ticket .sec-howto.sec-online .logo-item.ticketpay{
	width: 23.5rem;
}

@media only screen and (max-width: 599px) {
	#ticket .sec-howto.sec-tel .info-item:not(:last-child){
		margin-bottom: 1.5rem;
	}
}

@media print,screen and (min-width: 600px) {
	#ticket .container-howto{
		padding-bottom: 25rem;
	}
	#ticket .container-howto .lead-txt{
		margin-bottom: 11rem;
	}
	#ticket .sec-howto:not(:last-child){
		padding-bottom: 8rem;
	}
	
	#ticket .sec-howto.sec-tel .info-list{
		margin-top: 5rem;
		display: flex;
		align-items: center;
	}
	#ticket .sec-howto.sec-tel .info-item:not(:last-child){
		margin-right: 3rem;
	}
	#ticket .sec-howto.sec-tel .box-detail{
		padding: 4.5rem 5rem;
	}
}


/*====================================
social-media-policy
====================================*/
#social-media-policy .sec-pagettl2 .sec-inner-inner{
	padding-top: 5.5rem;
}
#social-media-policy .container-social{
	padding-bottom: 14.5rem;
}
#social-media-policy .sec-lead{
	margin-bottom: 9.5rem;
}
#social-media-policy .sec-social:not(:last-child){
	margin-bottom: 5.5rem;
}

@media print,screen and (min-width: 600px) {
	#social-media-policy .container-social{
		padding-bottom: 20rem;
	}
	#social-media-policy .sec-social:not(:last-child){
		margin-bottom: 7.5rem;
	}
}


/*====================================

====================================*/

@media only screen and (max-width: 599px) {
}

@media print,screen and (min-width: 600px) {
}

/*
--------------------------------------*/
