@import url("https://fonts.googleapis.com/css2?family=Harmattan&display=swap");
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c&family=Noto+Serif+JP&display=swap");
@charset "UTF-8";
/*--------------------------------------------
STATE
---------------------------------------------*/
@media screen and (max-width: 768px){
	.is-pc{
		display : none;
	}
}
@media print,screen and (min-width: 769px){
	.is-sp{
		display : none;
	}
}
/*--------------------------------------------
DATA TEXT
---------------------------------------------*/
[data-before]:before{
	content : attr( data-before );
	white-space : pre;
}
[data-after]:after{
	content : attr( data-after );
	white-space : pre;
}
[data-both]:before{
	content : attr( data-both );
	white-space : pre;
}
[data-both]:after{
	content : attr( data-both );
	white-space : pre;
}
@media screen and (max-width: 768px){
	[data-sp-after]:after{
		content : attr( data-sp-after );
		white-space : pre;
	}
}
@media screen and (max-width: 768px){
	[data-sp-befpre]:befpre{
		content : attr( data-sp-before );
		white-space : pre;
	}
}
@media print,screen and (min-width: 769px){
	[data-pc-after]:after{
		content : attr( data-pc-after );
		white-pcace : pre;
	}
}
@media print,screen and (min-width: 769px){
	[data-pc-befpre]:befpre{
		content : attr( data-pc-before );
		white-space : pre;
	}
}
/*--------------------------------------------
IMG
---------------------------------------------*/
img.width{
	width : 100%;
	height : auto;
}
:root{
	--body : #333;
	--link : #333;
	--primary : #5da126;
}
/*--------------------------------------------
FONT
---------------------------------------------*/
.harmattann{
	font-family : "Harmattan", sans-serif;
}
.fot{
	font-family : "M PLUS Rounded 1c";
}
.notoserif{
	font-family : "Noto Serif JP", serif;
}
/*--------------------------------------------
BACKGROUND COLOR
---------------------------------------------*/
.bg01{
	background-color : #fcecf0;
}
.bg02{
	background-color : #fef4f7;
}
/*--------------------------------------------
TITLE
---------------------------------------------*/
.title01{
	display : flex;
	align-items : center;
	justify-content : center;
	text-align : center;
	background-color : #fff2f2;
	letter-spacing : .1em;
	text-indent : .1em;
	width : 100%;
}
@media screen and (max-width: 768px){
	.title01{
		height : calc( 85 * 100vw / 768 );
		font-size : 3.4rem;
	}
	.title01.is-pc{
		display : none;
	}
}
@media print,screen and (min-width: 769px){
	.title01{
		height : 62px;
		font-size : 2.4rem;
	}
}
.title02{
	text-align : center;
	letter-spacing : .1em;
	text-indent : .1em;
	color : #f16d90;
}
@media screen and (max-width: 768px){
	.title02{
		font-size : 4.6rem;
		line-height : 1.1304;
	}
}
@media print,screen and (min-width: 769px){
	.title02{
		font-size : 3rem;
		line-height : 1.3;
	}
}
.title03{
	font-weight : 500;
	letter-spacing : .1em;
}
.title03:after{
	content : "";
	display : block;
	background-color : #f184a1;
}
@media screen and (max-width: 768px){
	.title03{
		font-size : 3.2rem;
		line-height : 1.3;
	}
	.title03:after{
		margin-top : calc( ( 16 - 3 ) * 100vw / 768 );
		width : calc( 300 * 100vw / 768 );
		height : calc( 6 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.title03{
		font-size : 2.2rem;
		line-height : 1.5455;
	}
	.title03:after{
		margin-top : calc( 10px - 6px );
		width : 200px;
		height : 3px;
	}
}
.title04{
	text-align : center;
	letter-spacing : .1em;
	text-indent : .1em;
}
.title04:after{
	content : "";
	display : block;
	background-color : #f19eb4;
	margin-left : auto;
	margin-right : auto;
}
@media screen and (max-width: 768px){
	.title04{
		font-size : 5rem;
	}
	.title04:after{
		width : calc( 400 * 100vw / 768 );
		height : calc( 2 * 100vw / 768 );
		margin-top : calc( 31 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.title04{
		font-size : 3rem;
	}
	.title04:after{
		width : 600px;
		height : 2px;
		margin-top : 22px;
	}
}
.title05{
	width : 100%;
	background-color : #fff2f2;
	display : flex;
	align-items : center;
	justify-content : center;
	letter-spacing : .1em;
	text-indent : .1em;
}
.title05[data-no]{
	justify-content : flex-start;
}
.title05[data-no]:before{
	content : attr(data-no);
	flex-shrink : 0;
	color : #fff;
	background-color : #f184a1;
	border-radius : 50%;
	display : flex;
	align-items : center;
	justify-content : center;
	text-align : center;
	font-family : "FOT-スーラ Pro M";
	line-height : 1;
}
@media screen and (max-width: 768px){
	.title05{
		font-size : 3.4rem;
		line-height : 1.1471;
		padding-top : calc( ( 25.5 - 2.5 ) * 100vw / 768 );
		padding-bottom : calc( ( 25.5 - 2.5 ) * 100vw / 768 );
	}
	.title05[data-no]{
		padding-left : calc( 20 * 100vw / 768 );
		padding-right : calc( 20 * 100vw / 768 );
		padding-top : calc( 17 * 100vw / 768 );
		padding-bottom : calc( 17 * 100vw / 768 );
	}
	.title05[data-no]:before{
		width : calc( 51 * 100vw / 768 );
		height : calc( 51 * 100vw / 768 );
		font-size : 3.4rem;
		margin-right : calc( 22 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.title05{
		font-size : 2.4rem;
		line-height : 1.625;
		padding-top : calc( 19px - 7.5px );
		padding-bottom : calc( 19px - 7.5px );
	}
	.title05[data-no]{
		padding-left : 8px;
		padding-right : 8px;
		padding-top : 5.5px;
		padding-bottom : 5.5px;
	}
	.title05[data-no]:before{
		width : 51px;
		height : 51px;
		font-size : 3.4rem;
		margin-right : 23px;
	}
}
.title06{
	color : #fff;
	background-color : #f184a1;
	letter-spacing : .1em;
	width : 100%;
}
.title06.center{
	text-align : center;
	text-indent : .1em;
}
@media screen and (max-width: 768px){
	.title06{
		font-size : 3rem;;
		line-height : 1.3;
		padding-top : calc( ( 25 - 4.5 ) * 100vw / 768 );
		padding-bottom : calc( ( 25 - 4.5 ) * 100vw / 768 );
		padding-left : calc( 25 * 100vw / 768 );
		padding-right : calc( 25 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.title06{
		font-size : 2.4rem;;
		line-height : 1.625;
		padding-top : calc( 19px - 7.5px );
		padding-bottom : calc( 19px - 7.5px );
		padding-left : 26px;
		padding-right : 26px;
	}
	.title06.center{
		font-size : 1.8rem;
		padding-top : calc( 22px - 10.5px );
		padding-bottom : calc( 22px - 10.5px );
	}
}
/*--------------------------------------------
LEDE
---------------------------------------------*/
.lede01{
	letter-spacing : .1em;
}
@media screen and (max-width: 768px){
	.lede01{
		font-size : 2.6rem;
		line-height : 2;
		padding-left : calc( 24 * 100% / 720 );
		padding-right : calc( 24 * 100% / 720 );
	}
}
@media print,screen and (min-width: 769px){
	.lede01{
		text-align : center;
		font-size : 1.8rem;
		line-height : 1.8889;
		text-indent : .1em;
	}
}
/*--------------------------------------------
LINK
---------------------------------------------*/
.link01{
	display : inline-flex;
}
.link01:before{
	content : "»";
	flex-shrink : 0;
	display : inline-block;
	text-decoration : none;
}
.link01 span{
	text-decoration : underline;
}
.link02{
	margin-left : auto;
	margin-right : auto;
	display : flex;
	align-items : center;
	justify-content : center;
	text-align : center;
	border-style : solid;
	border-color : #ccc;
	letter-spacing : .1em;
	text-indent : .1em;
}
@media screen and (max-width: 768px){
	.link02{
		border-width : calc( 4 * 100vw / 768 );
		width : calc( 324 * 100vw / 768 );
		height : calc( 80 * 100vw / 768 );
		font-size : 2.6rem;
	}
}
@media print,screen and (min-width: 769px){
	.link02{
		border-width : 1px;
		width : 260px;
		height : 60px;
		font-size : 1.8rem;
	}
}
.link-more01{
	display : block;
	background : url("../images/ui/parts/arrow02.png") bottom right / 100% auto no-repeat;
	color : #fff;
	letter-spacing : .2em;
}
@media screen and (max-width: 768px){
	.link-more01{
		width : calc( 136 * 100vw / 768 );
		padding-left : calc( 7 * 100vw / 768 );
		font-size : 2rem;
		padding-bottom : calc( 10 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.link-more01{
		width : 89px;
		padding-left : 12px;
		font-size : 1.2rem;
		padding-bottom : 5px;
	}
}
.link-more02{
	display : flex;
	align-items : center;
	justify-content : center;
	text-align : center;
	letter-spacing : .1em;
	text-indent : .1em;
	font-family : "Harmattan", sans-serif;
	background-repeat : no-repeat;
}
@media screen and (max-width: 768px){
	.link-more02{
		background-image : url("../images/ui/parts/arrow03_sp.png");
		background-size : auto calc( 11 * 100vw / 768 );
		background-position : right calc( 10 * 100vw / 768 ) bottom calc( 17 * 100vw / 768 );
		width : calc( 250 * 100vw / 768 );
		height : calc( 50 * 100vw / 768 );
		color : #fff;
		background-color : #f184a1;
		font-size : 3rem;
	}
}
@media print,screen and (min-width: 769px){
	.link-more02{
		background-image : url("../images/ui/parts/arrow03_pc.png");
		background-size : auto 7px;
		background-position : right 10px bottom 9px;
		width : 150px;
		height : 30px;
		color : #fff;
		background-color : #f184a1;
		font-size : 2.2rem;
	}
}
.link-more03{
	display : flex;
	align-items : center;
	justify-content : center;
	text-align : center;
	letter-spacing : .1em;
	text-indent : .1em;
	font-family : "Harmattan", sans-serif;
	background-repeat : no-repeat;
	color : #fff;
	background-color : #f184a1;
}
@media screen and (max-width: 768px){
	.link-more03{
		background-image : url("../images/ui/parts/arrow03_pc.png");
		background-size : auto calc( 11 * 100vw / 768 );
		background-position : right calc( 10 * 100vw / 768 ) bottom calc( 17 * 100vw / 768 );
		width : calc( 250 * 100vw / 768 );
		height : calc( 50 * 100vw / 768 );
		font-size : 3rem;
	}
}
@media print,screen and (min-width: 769px){
	.link-more03{
		background-image : url("../images/ui/parts/arrow03_pc.png");
		background-size : auto 7px;
		background-position : right 10px bottom 9px;
		width : 150px;
		height : 30px;
		font-size : 2.2rem;
	}
}
.link-pdf01{
	display : inline-flex;
	align-items : center;
	text-decoration : underline;
}
.link-pdf01:after{
	content : "";
	display : block;
	background : url("../images/ui/icon/pdf.png") 0 0 / contain no-repeat;
}
@media screen and (max-width: 768px){
	.link-pdf01{
		font-size : 2.6rem;
	}
	.link-pdf01:after{
		width : calc( 33 * 100vw / 768 );
		height : calc( 36 * 100vw / 768 );
		margin-left : calc( 4 * 100vw / 768 );
		margin-right : calc( 4 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.link-pdf01{
		font-size : 1.6rem;
	}
	.link-pdf01:after{
		width : 24px;
		height : 26px;
		margin-left : 4px;
		margin-right : 4px;
	}
}
/*--------------------------------------------
IFRAME CONTAINER
---------------------------------------------*/
.iframe-container{
	position : relative;
}
.iframe-container > #map , .iframe-container > iframe{
	width : 100%;
	height : 100%;
	position : absolute;
	top : 0;
	left : 0;
	right : 0;
	bottom : 0;
	margin : auto;
}
.iframe-container{
	width : 100%;
}
/*--------------------------------------------
DATALIST
---------------------------------------------*/
.datalist01 div{
	display : flex;
	align-items : flex-end;
}
.datalist01 dt , .datalist01 dd{
	line-height : 1.2;
	border-bottom-style : solid;
	letter-spacing : .1em;
}
.datalist01 dt{
	flex-shrink : 0;
	border-bottom-color : #f184a1;
}
.datalist01 dd{
	flex-grow : 1;
	border-bottom-color : #e7ddd5;
}
@media screen and (max-width: 768px){
	.datalist01{
		padding-left : calc( 23 * 100% / 720 );
		padding-right : calc( 23 * 100% / 720 );
	}
	.datalist01 div + div{
		margin-top : calc( ( 67 - ( 31.2 + 11 - 2.6 + 3 ) ) * 100vw / 768 );
	}
	.datalist01 dt , .datalist01 dd{
		font-size : 2.6rem;
		border-bottom-width : calc( 3 * 100vw / 768 );
		padding-bottom : calc( ( 11 - 2.6 ) * 100vw / 768 );
	}
	.datalist01 dt{
		width : calc( 120 * 100% / 674 );
		margin-right : calc( 21 * 100% / 674 );
	}
}
@media print,screen and (min-width: 769px){
	.datalist01{
		display : flex;
		flex-wrap : wrap;
		justify-content : space-between;
	}
	.datalist01 div{
		width : 520px;
	}
	.datalist01 div:nth-of-type(n+3){
		margin-top : calc( 54px - ( 21.6px + 9px - 1.8px + 1px ) );
	}
	.datalist01 dt , .datalist01 dd{
		font-size : 1.8rem;
		border-bottom-width : 1px;
		padding-bottom : calc( 9px - 1.8px );
		padding-left : 10px;
		padding-right : 10px;
	}
	.datalist01 dt{
		width : 90px;
		margin-right : 9px;
	}
}
/*--------------------------------------------
PAGINATION
---------------------------------------------*/
#paginationSingle{
	position : relative;
    display: flex;
    align-items: center;
    justify-content: center;
}
#paginationSingle li{
	top : 0;
    margin: 0 5px;
}
#paginationSingle button{
	display : flex;
	align-items : center;
	justify-content : center;
	text-align : center;
	line-height : 1;
	letter-spacing : .1em;
	text-indent : .1em;
	color : #fff;
	background-color : #f184a1;
	width : 100%;
	font-family : "Harmattan", sans-serif;
}
#paginationSingle button:before{
	/*font-family:YakuHanJP , 'Noto Sans JP' , sans-serif;*/
}
@media screen and (max-width: 768px){
	#paginationSingle{
		height : calc( 60 * 100vw / 768 );
	}
	#paginationSingle li{
		width : calc( 220 * 100% / 768 );
	}
	#paginationSingle li:nth-child(1){
		left : calc( 50% - ( 232 * 100vw / 768 ) );
	}
	#paginationSingle li:nth-child(2){
		right : calc( 50% - ( 232 * 100vw / 768 ) );
	}
	#paginationSingle button{
		height : calc( 60 * 100vw / 768 );
		font-size : 2.6rem;
	}
}
@media print,screen and (min-width: 769px){
	#paginationSingle{
		height : 40px;
	}
	#paginationSingle li{
		width : 180px;
	}
	#paginationSingle li:nth-child(1){
		left : calc( 50% - 190px );
	}
	#paginationSingle li:nth-child(2){
		right : calc( 50% - 190px );
	}
	#paginationSingle button{
		height : 40px;
		font-size : 2.6rem;
	}
}
#paginationSingle02{
	display : flex;
	justify-content : center;
}
#paginationSingle02 a{
	display : flex;
	align-items : center;
	justify-content : center;
	text-align : center;
	line-height : 1;
	letter-spacing : .1em;
	text-indent : .1em;
	color : #fff;
	background-color : #f184a1;
	width : 100%;
	font-family : "Harmattan", sans-serif;
}
@media screen and (max-width: 768px){
	#paginationSingle02 li{
		width : calc( 220 * 100vw / 768 );
	}
	#paginationSingle02 li + li{
		margin-left : calc( 32 * 100vw / 768 );
	}
	#paginationSingle02 a{
		height : calc( 60 * 100vw / 768 );
		font-size : 2.6rem;
	}
}
@media print,screen and (min-width: 769px){
	#paginationSingle02 li{
		width : 180px;
	}
	#paginationSingle02 li + li{
		margin-left : 32px;
	}
	#paginationSingle02 a{
		height : 40px;
		font-size : 2.6rem;
	}
}

@media screen and (max-width: 768px){
	p.text span.wifi{
		background-color: #005bac;
		color: #fff;
		padding: calc( 6 * 100vw / 768 ) calc( 20 * 100vw / 768 );
		line-height: 3em;
		border-radius: 6px;
	}
}
@media print,screen and (min-width: 769px){
	p.text span.wifi{
		background-color: #005bac;
		color: #fff;
		padding: 3px 12px;
		line-height: 3em;
		border-radius: 6px;
	}
}