@charset "UTF-8";

/*
Theme Name: SUNROAD 2026
Theme URI: 
Author: 
Author URI: 
Description: SUNROAD ウェブサイトVer.0.4
Requires at least: 5.9
Tested up to: 5.9
Requires PHP: 5.9
Version: -
License: Copyrights Reserved By Monmark, Inc.
License URI: 
Text Domain: 
Tags: 
*/

/* Color Palette */
:root{
	--IRO-Black:		rgba( 42, 26, 45,1.0);/*タイトル文字・ボタン・ボタン「整える」 黒に近い色*/
	--IRO-Orange:		rgba(237,114, 27,1.0);/*グローバルメニュー・ハンバーガー・フッター・ドロップダウンメニューの背景・ボタン「暮らす」　オレンジ*/
	--IRO-Mint:			rgba(194,223,203,1.0);/*お知らせの背景　ミントグリーン*/
	--IRO-Green:		rgba( 67,125,107,1.0);/*お知らせ枠・「一覧を見る」矢印・ボタン「食べる」　緑*/
	--IRO-Beige:		rgba(242,234,211,1.0);/*トップページお知らせ・ショップリスト・吉祥寺サンロード商店街マップ・YouTube背景　ベージュ*/
	--IRO-Pink:			rgba(227,178,164,1.0);/*トップページショップリスト背景　薄いピンク*/
	--IRO-Yamabuki:		rgba(245,208, 33,1.0);/*トップページ吉祥寺サンロード商店街マップ背景　山吹色*/
	--IRO-PinkDark:		rgba(198, 30, 87,1.0);/*「ショップリスト」文字・ボタン「買う」　濃いピンク*/
	--IRO-Blue:			rgba(  0, 22,196,1.0);/*トップページショップリスト枠・ボタン「遊ぶ」　青*/
	--IRO-Yellow:		rgba(242,230, 52,1.0);/*トップページショップリスト枠の中の〇　黄色*/
	--IRO-Water:		rgba( 79,146,191,1.0);/*ボタン「学ぶ」　水色*/

	--IRO-Purple:		rgba( 42, 27, 46,1.0);/**/

	--IRO-PurplePale:	rgba(177,141,191,1.0);/**/

	--BP-0768:768px;
}

/* Break Points

@media only screen and (max-width:8px){}
@media only screen and (max-width:768px){}
@media only screen and (max-width:550px){}
@media only screen and (max-width:440px){}
@media only screen and (max-width:350px){}

*/

@font-face {font-family:'Togalite';	src:url('img/Togalite-Black.otf') format('opentype');	font-display:swap;font-style:normal;font-weight:700;}
@font-face {font-family:'Togalite';	src:url('img/Togalite-Heavy.otf') format('opentype');	font-display:swap;font-style:normal;font-weight:600;}
@font-face {font-family:'Togalite';	src:url('img/Togalite-Bold.otf') format('opentype');	font-display:swap;font-style:normal;font-weight:500;}
@font-face {font-family:'Togalite';	src:url('img/Togalite-Medium.otf') format('opentype');	font-display:swap;font-style:normal;font-weight:400;}
@font-face {font-family:'Togalite';	src:url('img/Togalite-Regular.otf') format('opentype');	font-display:swap;font-style:normal;font-weight:300;}
@font-face {font-family:'Togalite';	src:url('img/Togalite-Light.otf') format('opentype');	font-display:swap;font-style:normal;font-weight:200;}
@font-face {font-family:'Togalite';	src:url('img/Togalite-Thin.otf') format('opentype');	font-display:swap;font-style:normal;font-weight:100;}
@font-face {font-family:'Ronde-B';	src:url('img/Ronde-B_square.otf') format('opentype');	font-display:swap;font-style:normal;font-weight:100;}
@font-face {font-family:'Mamelon';	src:url('img/Mamelon-3-Hi-Regular.otf') format('opentype');	font-display:swap;font-style:normal;font-weight:300;}
@font-face {font-family:'Mamelon';	src:url('img/Mamelon-3.5-Hi-Regular.otf') format('opentype');	font-display:swap;font-style:normal;font-weight:350;}
@font-face {font-family:'Mamelon';	src:url('img/Mamelon-4-Hi-Regular.otf') format('opentype');	font-display:swap;font-style:normal;font-weight:400;}
@font-face {font-family:'Mamelon';	src:url('img/Mamelon-5-Hi-Regular.otf') format('opentype');	font-display:swap;font-style:normal;font-weight:500;}

*{
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
/*	transition: all 0.3s;*/

	font:normal normal 18px/28px 'Noto Sans JP',"Noto Color Emoji",sans-serif;

	list-style:none;
	box-sizing:border-box;
	text-decoration:none;
/*
	border-collapse:collapse;
	color:rgba(0,0,0,1.0);
*/
	border:0px solid rgba(0,0,0,0);
	position:relative;
}

@media screen and (min-width: 768px){
	.pc {
		display: inline;
	}
	.sp {
		display: none;
	}
}

@media screen and (max-width: 768px) {
	.pc {
		display: none;
	}
	.sp {
		display: inline;
	}
}

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

.SVGlib{
	width:0;
	height:0;
	line-height:0;
	margin:0;
	padding:0;
	position:fixed;
	top:100%;
	left:100%;
	visibility:hidden;
}

.svbIcon{
	width:32px;
	height:32px;
	margin:12px 2px;
	display:inline-block;
}

.svgRed{		fill:red;}
.svgWhite{		fill:rgba(255,255,255,1.0);}
.svgBlue{		fill:rgba( 78,153,203,1.0);}
.svgBrown{		fill:rgba(166,124, 82,1.0);}
.svgBlueD{		fill:rgba( 44, 75,144,1.0);}
.svgPurple{		fill:rgba(102, 45,145,1.0);}
.svgPink{		fill:rgba(255,123,172,1.0);}
.svgGreen{		fill:rgba( 65,180,126,1.0);}
.svgBrownD{		fill:rgba( 96, 56, 19,1.0);}
.svgYellow{		fill:rgba(251,176, 59,1.0);}
.svgGreenD{		fill:rgba( 68,128,109,1.0);}
.svgRedPink{	fill:rgba(212, 20, 90,1.0);}
.svgTikTokBlue{	fill:rgba( 45,204,211,1.0);}
.svgTikTokRed{	fill:rgba(241, 32, 74,1.0);}

html{
/*
	overflow:auto;
	overflow-y:scroll;
	z-index:-99999;
	scroll-behavior:smooth;
	background-color:rgba(254,250,233,1.0);
*/
}

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

	html{
		overflow: scroll;
		scrollbar-width:none;
	}
}
*/

body{
	width:100%;
	overflow-x:hidden;
	padding:0.01px 0 0;
	padding:1px 0 0;
/*
	overflow-y:scroll;
	overflow:hidden;
	position:relative;
	z-index:-9999;
*/}

main{
	margin:80px 0 0;
	width:100%;
/*
	overflow:hidden;
*/}
/*
@media only screen and (max-width:1280px){

	main{
		margin:70px 0 0;
	}

}

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

	main{
		margin:60px 0 0;
	}

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

	main{
		margin:50px 0 0;
	}

}

figure img{
	width:100%;
	vertical-align:top;
}

section{
	padding:1px calc(50% - 960px / 2);
	padding:100px calc(50% - 1200px / 2);
	padding:100px calc(50% - 1000px / 2);
	overflow:hidden;
}

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

	section{
		padding:100px 20px;
	}

}

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

	*{
		font:normal normal 16px/24px 'Noto Sans JP',"Noto Color Emoji",sans-serif;
	}

}

	header{
		overflow:hidden;
	}

	header,
	header figure,
	header figure picture,
	header figure picture img:nth-child(1){
		width:100vw;
		height:calc(100vw / 1163 * 606);
	}

	.Top header,
	.Top header figure,
	.Top header figure picture,
	.Top header figure picture img:nth-child(1){
		width:100vw;
		height:calc(100vw / 1920 * 1000);
	}
/*
	header figure picture img:nth-child(1){
		display:block;
	}

	header figure picture img:nth-child(2){
		display:none;
	}
*/
@media only screen and (max-width:768px){

	header,
	header figure,
	header figure picture,
	header figure picture img:nth-child(2){
		width:100vw;
		height:calc(100vw / 960 * 720);
	}

	.Top header,
	.Top header figure,
	.Top header figure picture:nth-child(2),
	.Top header figure picture:nth-child(2) img{
		width:100vw;
		height:calc(100vw / 960 * 640);
	}
/*
	header figure picture img:nth-child(1){
		display:none;
	}

	header figure picture img:nth-child(2){
		display:block;
	}

	header figure:nth-child(2) img:nth-child(1){
		display:block;
	}
*/

}

footer *{
	color:rgba(255,255,255,1.0);
}

footer{
	padding:0 calc(50% - 960px / 2);
	background-color:rgba(240,130,33,1.0);
	display:flex;
	flex-flow:row wrap;
}

footer div{
	width:300px;
	margin:0 0 0 calc(100% - 300px);
}

footer div address a{
	display:block;
}

footer small{
	width:100%;
	height:30px;
	line-height:28px;
	text-align:center;
	display:block;
}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

.Mark,
.Mark figure,
.Mark figure img{
	width:calc(320px / 122 * 72);
	height:72px;
}

.Mark{
	top:4px;
	left:4px;
	position:fixed;
	display:block;
	z-index:99999;
}

.Map .Mark{
	display:none;
}

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

}

.GlobalMega{
	width:100%;
	height:0px;
	overflow:hidden;
	display:flex;
	flex-flow:row nowrap;
	top:0px;
	left:0px;
	position:fixed;
	z-index:1111;
	justify-content:center;
	transition: all 0.3s;
	background-color:rgba(237,114,27,1.0);
}

.GlobalMega *{
	color:rgba(255,255,255,1.0);
}

.GlobalMega figure{
	width:40vh;
	height:40vh;
	margin:5vh 0;
}

.GlobalMega figure picture{
	display:block;
	overflow:hidden;
}

.GlobalMega .L,
.GlobalMega .R{
	height:450px;
	margin:80px 0 0;
}

.GlobalMega .L{
	display:flex;
	flex-flow:column nowrap;
}

.GlobalMega .L li{
	margin:0 0 10px;
}

.GlobalMega .R a,
.GlobalMega .R p,
.GlobalMega .L li a span{
	font-family:'Togalite';
	font-weight:500;
}
/*
.GlobalMega .R{
	margin:338px 0 0;
}
*/
.GlobalMega figure picture:nth-child(1){
	display:block;
}

.GlobalMega figure picture:nth-child(2){
	display:none;
}

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

	.GlobalMega{
		flex-flow:row wrap;
	}

	.GlobalMega figure{
		width:500px;
		height:375px;
		margin:0 calc(50% - 500px / 2);
		order:-1;
	}

	.GlobalMega .L,
	.GlobalMega .R{
		height:270px;
		margin:0 10px 0 0;
	}

	.GlobalMega .R{
		margin:150px 0 0 10px;
	}

	.GlobalMega .R a,
	.GlobalMega .R p{
		display:block;
		text-align:right;
	}

	.GlobalMega figure picture:nth-child(1){
		display:none;
	}

	.GlobalMega figure picture:nth-child(2){
		display:block;
	}

}

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

	.GlobalMega figure{
		width:100vw;
		height:75vw;
	}

	.GlobalMega .L,
	.GlobalMega .R{
		width:calc(49vw - 8px);
		height:270px;
		margin:0 0 0 8px;
	}

	.GlobalMega .R{
		width:calc(68vw - 8px);
		margin:200px 8px 0 -18vw;
	}

}

/*
@media only screen and (max-width:332px){
*/
@media only screen and (max-width:380px){

	.GlobalMega figure{
		margin:0;
	}

	.GlobalMega .L,
	.GlobalMega .R{
		width:calc(58vw - 8px);
		height:270px;
		margin:0 0 0 8px;
	}

	.GlobalMega .R{
		width:calc(64vw - 8px);
		margin:200px 8px 0 -22vw;
	}

	.GlobalMega .L li a span{
		font-size:16px;
	}

	.GlobalMega .R a,
	.GlobalMega .R p{
		font-size:13px;
	}

}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

.Global{
	width:100%;
	height:80px;
	top:0px;
	left:0;
	transition:all 0.3s;
	background-color:rgba(255,255,255,0);
	background-color:rgba(255,255,255,0.8);

	z-index:999;
	position:absolute;

/*
	top:-110px;
*/
}

.Global::after{
	content:'';
	width:100%;
	height:16px;
	top:calc(100% - 0px);
	left:0;
	position:absolute;
	z-index:-1;
	z-index:2;
}

.Global ul{
	width:100%;
	height:80px;
	display:flex;
	flex-flow:row wrap;
	transition:all 0.3s;
	justify-content:flex-start;
}

.Global ul li{
	height:80px;
	margin:0;
}

.Global ul li:nth-child(1){
	margin:0 0 0 calc(100% - 218px * 1 - 146px * 1 - 128px * 2 - 92px * 1 - 100px * 1 + 30px * 1);
}

.Global ul li a{
	width:0px;
	height:80px;
	margin:0;
	display:block;
}

.Global ul li:nth-child(1),.Global ul li:nth-child(1) a{	width:218px;}	/*198px*/
.Global ul li:nth-child(2),.Global ul li:nth-child(2) a{	width:146px;}	/*126px*/
.Global ul li:nth-child(3),.Global ul li:nth-child(3) a{	width:128px;}	/*108px*/
.Global ul li:nth-child(4),.Global ul li:nth-child(4) a{	width:92px;}	/*72px*/
.Global ul li:nth-child(5),.Global ul li:nth-child(5) a{	width:128px;}	/*72px*/

.Global ul li a span{
	width:100%;
	height:80px;
	line-height:80px;
	display:inline;
	color:rgba(129,195,114,1.0);
	color:rgba(255,255,255,1.0);
	text-align:center;
	font-size:24px;
	font-weight:700;
	top:0;
	left:0;
	position:absolute;

	font-size:18px;
	font-family:'Togalite';
	font-weight:500;
	color:rgba(0,0,0,1.0);
	color:rgba(238,123, 40,1.0);
/*
	transform:rotateX(-90deg);
*/
}


/*
.Global ul li:nth-child(n+3) a span:nth-child(1){
	-webkit-animation:move1_1 .6s linear alternate 1 forwards;
			animation:move1_1 .6s linear alternate 1 forwards;
}

.Global ul li:nth-child(n+3) a:hover span:nth-child(1){
	-webkit-animation:move1_2 .4s linear alternate 1 forwards;
			animation:move1_2 .4s linear alternate 1 forwards;
}
*/
				@keyframes move1_1{		0%{transform:rotateX(90deg);}		50%{transform:rotateX(0deg);}		100%{transform:rotateX(0deg);}}
@-webkit-keyframes move1_1{		0%{transform:rotateX(90deg);}		50%{transform:rotateX(0deg);}		100%{transform:rotateX(0deg);}}

				@keyframes move1_2{		0%{transform:rotateX(0deg);}		50%{transform:rotateX(90deg);}		100%{transform:rotateX(90deg);}}
@-webkit-keyframes move1_2{		0%{transform:rotateX(0deg);}		50%{transform:rotateX(90deg);}		100%{transform:rotateX(90deg);}}

/*
.Global ul li:nth-child(n+3) a span:nth-child(2){
	-webkit-animation:move2_1 .6s linear alternate 1 forwards;
			animation:move2_1 .6s linear alternate 1 forwards;
}

.Global ul li:nth-child(n+3) a:hover span:nth-child(2){
	-webkit-animation:move2_2 .4s linear alternate 1 forwards;
			animation:move2_2 .4s linear alternate 1 forwards;
}
*/
				@keyframes move2_1{		0%{transform:rotateX(0deg);}		50%{transform:rotateX(-90deg);}		100%{transform:rotateX(-90deg);}}
@-webkit-keyframes move2_1{		0%{transform:rotateX(0deg);}		50%{transform:rotateX(-90deg);}		100%{transform:rotateX(-90deg);}}

				@keyframes move2_2{		0%{transform:rotateX(-90deg);}		50%{transform:rotateX(-90deg);}		100%{transform:rotateX(0deg);}}
@-webkit-keyframes move2_2{		0%{transform:rotateX(-90deg);}		50%{transform:rotateX(-90deg);}		100%{transform:rotateX(0deg);}}

/*@media only screen and (max-width:920px){*/
@media only screen and (max-width:1000px){

	.Global{
		display:none;
	}

}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

#Switch/*,#Burger*/{
	display:none;
}

#Burger *{
	margin:0;
}

#Burger{
	width:50px;
	height:50px;
	line-height:44px;

	top:15px;
	right:15px;
	position:fixed;
	z-index:9999;
	cursor:pointer;

	background-color:rgba(255,255,255,1.0);
/*
	margin:5px 0 0;
	padding:28px 0 0 2px;
	text-shadow:1px 1px 0px rgba(0,0,0,1.0),-1px 1px 0px rgba(0,0,0,1.0),-1px -1px 0px rgba(0,0,0,1.0),1px -1px 0px rgba(0,0,0,1.0);
*/
	transition:all 500ms ease-in-out;
}

#Burger:hover{
/*
	color:rgba(255,255,255,1.0);
	text-shadow:1px 1px 0px rgba(0,0,0,1.0),-1px 1px 0px rgba(0,0,0,1.0),-1px -1px 0px rgba(0,0,0,1.0),1px -1px 0px rgba(0,0,0,1.0);
*/
}
#Burger .Buns,#Burger .Buns::before{
	content:'';
	width:35px;
	height:2px;
	top:50%;
	left:50%;
	cursor:pointer;
	display:block;
	transition:all 500ms ease-in-out;
	position:absolute;
	background-color:rgb(237,114,27,1.0);
/*
	background-color:rgb(114,175,45);
	box-shadow:1px 1px 0px rgba(26,150,213,1.0),-1px 1px 0px rgba(26,150,213,1.0),-1px -1px 0px rgba(26,150,213,1.0),1px -1px 0px rgba(26,150,213,1.0);
*/
}
/*
#Burger:hover .Buns::before{
	background-color:rgb(26,150,213);
	box-shadow:1px 1px 0px rgba(114,175,45,1.0),-1px 1px 0px rgba(114,175,45,1.0),-1px -1px 0px rgba(114,175,45,1.0),1px -1px 0px rgba(114,175,45,1.0);
}
*/
#Burger .Buns{
	transform:translate3d(-50%, -4px, 0);
}

#Burger .Buns::before{
	transform:translate3d(-50%, -10px, 0);
}
/*
#Burger .Buns::after{
	transform:translate3d(-50%,	0px, 0);
}
*/
#Switch:checked + #Burger .Buns{
	transform:translateX(-50%) rotate(-25deg);
	top:30%;
}

#Switch:checked + #Burger .Buns::before{
	transform:translateX(-50%) rotate(45deg);
	top:0;
}
/*
#Switch:checked + #Burger .Buns::after{
	height:4px;
	transform:translateX(-50%) translateY(-10px) rotate(0deg);
	top:10px;
	box-shadow:1px 1px 0px rgba(0,0,0,0),-1px 1px 0px rgba(0,0,0,0),-1px -1px 0px rgba(0,0,0,0),1px -1px 0px rgba(0,0,0,0);
}
*/
#Burger .Patty{
	width:50px;
	height:25px;
	top:25px;
	left:0;
	position:absolute;
	display:block;
	z-index:99999;
}

#Burger .Patty span{
	width:50px;
	height:25px;
	line-height:25px;
	top:0;
	left:0;
	text-align:center;
	position:absolute;
	display:block;
	font-size:11px;
	font-weight:bold;
	color:rgba(237,114,27,1.0);
	transition:all 0.3s;
}

									#Burger .Patty span:nth-child(1){transform:rotateX(0deg);}
									#Burger .Patty span:nth-child(2){transform:rotateX(90deg);}

#Switch:checked + #Burger .Patty span:nth-child(1){transform:rotateX(90deg);}
#Switch:checked + #Burger .Patty span:nth-child(2){transform:rotateX(0deg);}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

	#Burger{
		display:block;
	}

	#Switch:checked ~ .GlobalMega{
		height:50vh;
	}

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

	#Switch:checked ~ .GlobalMega{
		height:645px;
	}

}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/
/*
.Privacypolicy main,
.AR main,
.Access main,
.NewsOne main,
.News main,
.NewsEach main,
.Shop main,
.ShopEach */body:not(.Top):not(.Map) main{
	width:calc(100% - 60px);
	margin:110px 30px 30px;
	background-color:var(--IRO-Beige);
	border-radius:20px;
	position:relative;
}
/*
.Privacypolicy main::before,
.AR main::before,
.Access main::before,
.NewsOne main::before,
.News main::before,
.NewsEach main::before,
.Shop main::before,
.ShopEach */body:not(.Top):not(.Map) main::before{
	content:'';
	width:calc(100% + 60px);
	height:calc(100% + 60px);
	margin:0;
	background-color:orange;
	display:block;
	top:-30px;
	left:-30px;
	position:absolute;
	z-index:-1;
}


@media screen and (max-width: 672px){
/*
	.Privacypolicy main::before,
	.AR main::before,
	.Access main::before,
	.NewsOne main::before,
	.NewsOne main::before,
	.NewsEach main::before,
	.News main::before,
	.ShopEach main::before,
	.Shop */body:not(.Top):not(.Map) main::before{
		width:calc(100% + 38px);
	}

}


@media screen and (max-width: 672px){
/*
	.Privacypolicy main,
	.AR main,
	.Access main,
	.NewsOne main,
	.News main,
	.NewsEach main,
	.Shop main,
	.ShopEach */body:not(.Top):not(.Map) main{
		width:calc(100% - 16px);
		margin:110px 8px 30px;
	}

}

	.access-container{
		background-color:rgba(255,255,255,2551.0);
	}

/*
.Access main{	background-color:#f2ead7;}
.Access main::before{	background-color:#c8d8cd;}
*/
body:not(.Top).History main::before,
body:not(.Top).Broadcast main::before,
body:not(.Top).Book main::before,
body:not(.Top).Access main::before,
body:not(.Top).News main::before,
body:not(.Top).NewsOne main::before,
body:not(.Top).News main::before,
body:not(.Top).NewsEach main::before{	background-color:var(--IRO-Mint);}

body:not(.Top).About main::before,
body:not(.Top).Contact main::before,
body:not(.Top).AR main::before,
body:not(.Top).Shop main::before,
body:not(.Top).ShopEach main::before{	background-color:var(--IRO-Pink);}

.About section,
.AR section{
	margin-bottom: 60px;
}

.About section,
.AR section{
	margin:0;
	padding:50px calc(50% - 1000px / 2);
}

/*
.Broadcast .page-title {
	font-size: 34px;
	font-weight: 900;
	text-align: center;
	margin-bottom: 30px;
	letter-spacing: 0.05em;
}

.Wifi h1 {
	text-align: center;
	font-size: 32px;
	font-weight: bold;
	margin-bottom: 50px;
	letter-spacing: 2px;
}

.Wifi h2 {
	font-size: 20px;
	margin-bottom: 20px;
}
*/

.History h1,
.Contact h1,
.Wifi h1,
.Wifi h2,
.Access h1,
.Broadcast h1,
.AR h1,
.About h1{
	text-align: center;
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 30px;
	font-family:Togalite;
}

.Top h2{
	font-family:Togalite;
}

.News .Information h2,
.Shop .Shoplist h2,
.History h1,
.Contact h1,
.Wifi h1,
.Wifi h2,
.Access h1,
.Broadcast h1,
.Broadcast h2,
.AR h1,
.AR h2,
.AR h3,
.About h1,
.About h2,
.Top h2{
	color:var(--IRO-Purple);
}

.Privacypolicy h1,
.Privacypolicy h2,
.Wifi h3,
.AR h2,
.AR h3{
	font-weight:bold;
}

.Privacypolicy h1,
.Wifi h2{
	font-size:22px;
	font-family:inherit;
}

.Shop .Shoplist h2,
.News .Information h2,
.Top h2{
	width:100%;
	height:auto;
	display:block;
	margin:0 0 30px;
	padding:36px;
	position:relative;
	font-size:36px;
	font-family:Togalite;
	font-weight:700;
	text-align:center;
}

.Top .Shoplist h2,
.Top .Map h2{
	width:396px;
	height:252px;
	display:block;
	margin:0 0 30px;
	padding:36px;
	position:relative;
}

.Top h2 span{
	width:calc(396px - 36px * 2);
	height:calc(252px - 36px * 2);
	width:100%;
	height:100%;
	line-height:180px;
	font-size:36px;
	margin:0;
	display:block;
	font-family:'Togalite';
	font-weight:700;
	background-color:rgba(239,231,209,1.0);
}

@media screen and (max-width:540px){

	.Shop .Shoplist h2,
	.News .Information h2,
	.Top h2,
	.Top .Shoplist h2,
	.Top .Map h2,
	.Top h2 span{
		margin:0;
		padding:36px 0;
		font-size:24px;
	}

}

.Top .Shoplist h2 span{
	line-height:180px;
}

.Top .Map h2 span{
	padding:48px 0;
	line-height:42px;
}

.Top .Shoplist h2{
	background-color:rgba(9,57,148,1.0);
	background-image: radial-gradient(rgba(240,229,49,1.0) 25%, transparent 50%), radial-gradient(rgba(240,229,49,1.0) 25%, transparent 50%);
	background-position:0px 0px;
	background-size:36px 36px;
}

.Top .Map h2{
/*
	background-image:
		repeating-conic-gradient(transparent 0,transparent 13deg,#ffab3c 13deg,#ffab3c 16deg),
		repeating-conic-gradient(transparent 0,transparent 20deg,#ffab3c 20deg,#ffab3c 23deg),
		repeating-conic-gradient(transparent 0,transparent  5deg,#ffab3c  5deg,#ffab3c  8deg),
		repeating-conic-gradient(transparent 0,transparent 40deg,#ffab3c 40deg,#ffab3c 44deg),
		repeating-conic-gradient(transparent 0,transparent 10deg,#ffab3c 10deg,#ffab3c 13deg);
*/
	background-image:
		repeating-conic-gradient(
			rgba(237,231,194,1.0) 0deg,
			rgba(237,231,194,1.0) 8deg,
			rgba(206,88,47,1.0) 8deg,
			rgba(206,88,47,1.0) 16deg,
			rgba(237,231,194,1.0) 16deg,
			rgba(237,231,194,1.0) 24deg,
			rgba(64,125,106,1.0) 24deg,
			rgba(64,125,106,1.0) 32deg
		);
}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

/*.Shoplist{		background-color:rgba(225,177,164,1.0);}*/
.Top .Map{		background-color:rgba(244,208, 32,1.0);}
/*.Information{	background-color:var(--IRO-Mint);}*/
.Carousel{		background-color:var(--IRO-Beige);}


.Top .Shoplist h2 a,
.Top .Map h2 a{
	width:100%;
	height:100%;
	display:block;
}

.jump{
	width:100px;
	height:100px;
	border-radius:50%;
	background-color:gold;

	animation:jump 3s ease-in-out infinite;
	will-change:transform;
}

@keyframes jump{
	0%{		transform:translateY(0) translateX(0);}
	30%{	transform:translateY(-150px) translateX(100px);}
	33%{	transform:translateY(-150px) translateX(120px);}
	80%{	transform:translateY(200px) translateX(300px);}
	100%{	transform:translateY(250px) translateX(0px);}
}
/*
.Information div{
	width:100%;
	min-height:600px;
	border:8px solid green;
	border-radius:20px;
	position:relative;
}
*/

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

.HumanWare picture img,
.HumanWare picture,
.HumanWare{
	width:calc(540px / 2);
	height:calc(960px / 2);
}

.Top .Shoplist .HumanWare picture img,
.Top .Shoplist .HumanWare picture,
.Top .Shoplist .HumanWare{
	width:calc(540px / 2);
	height:calc(960px / 2);
}

.Information .HumanWare picture img,
.Information .HumanWare picture,
.Information .HumanWare{
	width:calc(640px / 4.4);
	height:calc(960px / 4.4);
}

.Information .Human1 picture img,
.Information .Human1 picture,
.Information .Human1{
	width:calc(686px / 4.4);
	height:calc(960px / 4.4);
}

.Humanwares{
	position:relative;
}

.HumanWare{
	position:absolute;
	z-index:1;
}

.Humanwares .Human1{top: -92px;left: -80px;transform:rotateZ(-15deg);}
.Humanwares .Human2{top:-143px;left:  58px;transform:rotateZ(-20deg);}
.Humanwares .Human3{top:-118px;right: 40px;transform:rotateZ(-12deg);}
.Humanwares .Human4{top:-105px;right:-80px;transform:rotateZ( 16deg);}

.Top .Shoplist .HumanWare,
.Top .Map .HumanWare{
	position:relative;
}

.Shop .Shoplist .Humanwares .HumanWare{
}

.Shop .Shoplist .Humanwares .HumanWare,
.Shop .Shoplist .Humanwares .HumanWare picture,
.Shop .Shoplist .Humanwares .HumanWare picture img{
	width:120px;
	width:calc(540px / 3);
	height:calc(960px / 3);
}

.Shop .Shoplist .Humanwares .Human1{
	transform:initial;
	top:0;
	left:-30px;
}

.Shop .Shoplist .Humanwares .Human3{
	transform:initial;
	top:0;
	right:-30px;
}

@media screen and (max-width:1136px){

	.Humanwares .Human1{top: -92px;left: -10px;transform:rotateZ(-15deg);}
	.Humanwares .Human2{top:-143px;left: 128px;transform:rotateZ(-20deg);}
	.Humanwares .Human3{top:-118px;right:110px;transform:rotateZ(-12deg);}
	.Humanwares .Human4{top:-105px;right:-10px;transform:rotateZ( 16deg);}

}

@media screen and (max-width:810px){

	.Top .Shoplist h2,
	.Top .Map h2{
		width:66vw;
		max-width:396px;
	}

	.HumanWare picture img,
	.HumanWare picture,
	.HumanWare,
	.Top .Shoplist .HumanWare picture img,
	.Top .Shoplist .HumanWare picture,
	.Top .Shoplist .HumanWare{
		width:33.294vw;
		height:calc(33.294vw / 540 * 960);
	}

	.Top .Shoplist .HumanWare{
		width:33.294vw;
		height:calc(33.294vw / 540 * 960);
	}

	.Top .Map .Human1{
		margin:0 -10vw 0 -15vw;
	}

	.Top .Map .Human3{
		margin:0 -12vw 0 -10vw;
	}


}


@media screen and (max-width:540px){

	.Humanwares .Human1{top:-24.6vw;left: -2.3vw;transform:rotateZ(-15deg);}
	.Humanwares .Human2{top:-35.4vw;left: 18vw;transform:rotateZ(-20deg);}
	.Humanwares .Human3{top:-31.4vw;right:13.8vw;transform:rotateZ(-12deg);}
	.Humanwares .Human4{top:-28vw;right:-2.8vw;transform:rotateZ( 16deg);}

	.Information .HumanWare picture img,
	.Information .HumanWare picture,
	.Information .HumanWare{
		width:calc(640px / 4.4 / 1.3);
		height:calc(960px / 4.4 / 1.3);
		width:calc(26.8vw * 0.8);
		height:calc(40.3vw * 0.8);
	}

	.Information .Human1 picture img,
	.Information .Human1 picture,
	.Information .Human1{
		width:calc(686px / 4.4 / 1.3);
		height:calc(960px / 4.4 / 1.3);
		width:calc(28.8vw * 0.8);
		height:calc(40.3vw * 0.8);
	}

}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/


.Information{
	padding:180px calc(50% - 1000px / 2);
}

.NewsOne .Information{
	padding:0px calc(50% - 1000px / 2);
}

.NewsOne .Information article{
	background-color:rgba(255,255,255,1.0);
}

.NewsOne .Information article div{
	margin:10px 10px 0;
}

.NewsOne .Information article .article_header_disp p.date{
	margin:0 0 10px;
	font-weight:bolder;
	line-height:24px;
	font-size:18px;
}

.NewsOne .Information h1{
	font-weight:bolder;
	line-height:24px;
	font-size:22px;
}

.Top .Slash{
	margin:-100px 0 0;
}

.Top .Slash::before{
	content:'';
	width:100%;
	height:100%;
	top:0;
	left:0;
	display:block;
	position:absolute;
}

.Top .Information::before{		background-color:var(--IRO-Mint);	clip-path:polygon(0 0,0  80%,100% 93.2%,100%  0%);	clip-path:polygon(0 0,0 calc(100% - 100px),100% 100%,100%  0%);}
.Top .Shoplist::before{			background-color:rgba(225,177,164,1.0);	clip-path:polygon(0 0,0 100%,100% 80.0%,100% 20%);	clip-path:polygon(0 0,0 100%,100% calc(100% - 100px),100%  calc(0% + 100px));}
.Top .Map::before{				background-color:rgba(244,208, 32,1.0);	clip-path:polygon(0 80%,100% 100%,100% 0%,0% 20%);	clip-path:polygon(0 calc(100% - 100px),100% 100%,100% 0%,0% calc(0% + 100px));}
.Top .Movie::before{			background-color:rgba(225,177,164,1.0);	clip-path:polygon(0 0,0 100%,100% 100%,100%  20%);	clip-path:polygon(0 0,0 100%,100% 100%,100% calc(0% + 100px));}

.Top .Information{
	margin:0;
}

.Top .Carousel{
	padding:80px;
	border:7px solid var(--IRO-Green);
	border-radius:16px;
	display:flex;
	flex-flow:column nowrap;
	align-items:center;
	position:relative;
}

.Top .Movie .LinkMovie,
.Top .Carousel .LinkNews{
	width:120px;
	height:50px;
	top:calc(100% - 70px);
	right:40px;
	line-height:48px;
	text-align:center;
	color:var(--IRO-Beige);
	background-color:var(--IRO-Green);
	position:absolute;
}

.Top .Movie .LinkMovie{
	width:240px;
	margin:100px auto 0;
	top:calc(100% - 100px);
	right:calc(50% - 120px);
	background-color:var(--IRO-Purple);
	border-radius:8px;
	display:block;
	top:0;
	left:0;
	position:relative;
}


.Top .Carousel .LinkNews::after{
	content:'';
	width:0px;
	height:0px;
	top:0;
	left:100%;
	border-top:25px solid rgba( 67,125,107,0);
	border-bottom:25px solid rgba( 67,125,107,0);
	border-left:25px solid var(--IRO-Green);
	display:block;
	position:absolute;
}

@media screen and (max-width:640px){

	.Top .Carousel{
		padding:80px 0 140px;
	}

}

@media screen and (max-width:540px){

	.Top .Carousel{
		padding:0 0 140px;
	}

}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

.Top .Shoplist{
	height:640px;
	padding:initial;
	position:relative;
/*	background-color:initial;*/
}

.Top .Shoplist a{
	width:100%;
	height:100%;
	padding:0px calc(50% - 1000px / 2) 100px;
	display:flex;
	justify-content:center;
	align-items:anchor-center;
}

.Top .Shoplist .Actlist li{
	width:100px;
	height:40px;
	line-height:38px;
	margin:10px 0 0;
	font-weight:700;
	text-align:center;
	border-radius:20px;
	color:var(--IRO-Beige);
}
.Top .Shoplist .Actlist li:nth-child(1){background-color:var(--IRO-PinkDark);margin:20px 0 0 0px;}
.Top .Shoplist .Actlist li:nth-child(2){background-color:var(--IRO-Green);margin:20px 0 0 20px;}
.Top .Shoplist .Actlist li:nth-child(3){background-color:rgba(237,114, 27,1.0);margin:20px 0 0 40px;}
.Top .Shoplist .Actlist li:nth-child(4){background-color:var(--IRO-Black);margin:20px 0 0 20px;}
.Top .Shoplist .Actlist li:nth-child(5){background-color:var(--IRO-Blue);margin:20px 0 0 40px;}
.Top .Shoplist .Actlist li:nth-child(6){background-color:var(--IRO-Water);margin:20px 0 0 0px;}

.Top .Map{
	height:640px;
	padding:initial;
	position:relative;
	background-color:initial;
}

.Top .Map a{
	width:100%;
	height:100%;
	padding:60px calc(50% - 1000px / 2);
	display:flex;
	justify-content:center;
	align-items:anchor-center;
}

.Top .Map a figure:nth-child(2){
	order:-1;
}

.Top .Movie{
	height:auto;
	position:relative;
}

.Top .Movie h2{
	margin:40px 0;
}

.Top .Movie h2 .svbIcon{
	margin:3px 8px -3px 0;
}

.Top .Movie .MovieList li,
.Top .SNS .InstaList li{
/*
	width:calc(18vw + 4px);
	height:calc(32vw + 4px);
	max-width:192px;
	max-height:calc(192px / 9 * 16);
*/
	width:calc((100vw - 40px - 60px) / 4);
	height:calc(((100vw - 40px - 60px) / 4) / 9 * 16);

	width:calc(100% / 3 - 30px);
	height:initial;

	margin:0 15px 30px;
	border-radius:8px;
	border:2px solid rgba(0,0,0,1.0);
	background-color:rgba(192,192,192,1.0);
	position:relative;
	overflow:hidden;
}

.Top .Movie .MovieList li svg{
	top:calc(50% - 28px);
	left:calc(50% - 20px);
	position:absolute;
}

.Top .MovieList,
.Top .SNSList,
.Top .SNS .InstaList{
	display:flex;
	flex-flow:row wrap;
	justify-content:center;
}

.Top .MovieList,
.Top .SNS .InstaList{
	justify-content:initial;
}

.Top .SNS p{
	font-family:Togalite;
	text-align:center;
}

.Top .SNS .InstaList{
	margin:40px 0;
}

.Top .SNSList li{
	margin:30px 20px 0;
}

.Top .SNSList .svbIcon{
	width:50px;
	height:50px;
	margin:0;
}

@media screen and (max-width:810px){

	.Top .Shoplist a{
		flex-flow:row wrap;
		justify-content:flex-start;
	}

	.Top .Shoplist a div{
		margin:0 0 0 calc(100% - 33.294vw - 396px);
	}

	.Top .Shoplist .Actlist{
		width:396px;
		margin:-90px 0 0 calc(100% - 33.294vw - 396px);
		order:1;
		display:flex;
		flex-flow:row wrap;
	}

	.Top .Shoplist .Actlist li:nth-child(n){
		margin:0 8px 0 0;
	}

	.Top .Shoplist .Actlist li:nth-child(3){
		margin:0 80px 8px 0;
	}

	.Top .Shoplist .Actlist li:nth-child(4){
		margin:0 8px 0 80px;
	}

	.Top .Shoplist .Actlist li:nth-child(6){
		margin:0;
	}

}

@media screen and (max-width: 768px){

	.Top .Movie .MovieList li,
	.Top .SNS .InstaList li{
		width:calc(100% / 3 - 20px);
		margin:0 10px 20px;
	}

}

	.Top .SNS .InstaList li:nth-child(4),
	.Top .Movie .MovieList li:nth-child(4){
		display:none;
	}

@media screen and (max-width: 540px){

	.Top .Movie,
	.Top .SNS{
		padding:100px 5px;
	}

	.Top .Movie .MovieList li,
	.Top .SNS .InstaList li{
		width:calc(100% / 2 - 10px);
		margin:0 5px 10px;
	}

	.Top .SNS .InstaList li:nth-child(4),
	.Top .Movie .MovieList li:nth-child(4){
		display:initial;
	}

}

@media screen and (max-width:600px){

	.Top .Shoplist a{
		padding:0px calc(50% - 1000px / 2) 10vw;
		justify-content:center;
	}

	.Top .Shoplist h2,
	.Top .Map h2{
		width:59.8vw;
		height:42.0vw;
	}

	.Top .Shoplist h2{
		padding:6.6vw;
		background-size:6vw 6vw;
	}

	.Top .Shoplist h2 span{
		line-height:28.4vw;
		font-size:5vw;
	}

	.Top .Shoplist a div{
		width:59.8vw;
		height:42.0vw;
		margin:0 0 0 6vw;
	}

	.Top .Shoplist .HumanWare{
		margin:0 0 0 -6vw;
	}

	.Top .Shoplist .Actlist{
		width:78vw;
		margin:-12vw 0 0 0;
	}

	.Top .Shoplist .Actlist li{
		max-width:100px;
		width:20.792vw;
	}

	.Top .Shoplist .Actlist li:nth-child(n){
		margin:0 1.6vw 0 0;
	}

	.Top .Shoplist .Actlist li:nth-child(3){
		margin:0 12vw 1.6vw 0;
	}

	.Top .Shoplist .Actlist li:nth-child(4){
		margin:0 1.6vw 0 12vw;
	}

	.Top .Shoplist .Actlist li:nth-child(6){
		margin:0;
	}

}

@media screen and (max-width:600px){

	.Top .Shoplist h2 span{
		margin:0;
		padding:initial;
		font-size:6vw;
	}

}

@media screen and (max-width:600px){

	.Top .Map h2{
		padding:6.6vw;
	}

	.Top .Map h2 span{
		line-height:6vw;
		font-size:5vw;
		padding:8vw 0;
	}

	.Top .Map a{
		width:100%;
		height:100%;
		padding:initial;
		display:initial;
		justify-content:initial;
		align-items:initial;
		position:relative;
		display:block;
		margin:25vw 0 0;
	}

	.Top .Map a div{
		width:calc(100% - 20px);
		top:45px;
		left:10px;
		position:absolute;
	}

	.Top .Map a div h2{
		margin:0 auto 20px;
	}

	.Top .Map a div p{
		text-align:center;
	}

	.Top .Map .Human1,
	.Top .Map .Human3{
		margin:0;
		top:0;
		left:-5vw;
		position:absolute;
	}

	.Top .Map .Human3{
		left:initial;
		right:-5vw;
	}

}

@media screen and (max-width:540px){

	.Top .Map a{
		margin:28vw 0 0;
	}

}

@media screen and (max-width:440px){

	.Top .Map{
		height:145vw;
	}

}

/*
@media screen and (max-width:600px){

	.Top .Map .Human1{
		margin:0 -10vw 0 0;
		margin:0 -10vw 0 -7vw;
	}

	.Top .Map .Human3{
		margin:0 0 0 -10vw;
		margin:0 -5vw  0 -10vw;
	}

	.Top .Map h2 span{
		line-height:6vw;
		font-size:5vw;
		padding:8vw 0;
	}

}

@media screen and (max-width:540px){

	.Top .Map h2{
		padding:6.6vw;
	}

	.Top .Map .Human1{
		margin:0 -10vw 0 0;
		margin:-54vw -10vw 0 -7vw;
	}

	.Top .Map .Human3{
		margin:0 0 0 -10vw;
		margin:-54vw -5vw 0 -10vw;
	}

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

	.Top .Shoplist .Actlist{
		margin:-28vw 0 0 0;
	}


}

@media screen and (max-width:420px){

	.Top .Shoplist .Actlist{
		margin:-42vw 0 0 0;
	}

}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

.News .Information .NewsIndex{
	margin:0 0 100px;
	display:flex;
	flex-flow:row nowrap;
	justify-content:center;
}

.News .Information .NewsIndex li{
	width:140px;
	height:40px;
	line-height:38px;
	margin:0 5px;
	text-align:center;
	border-radius:15px;
	color:var(--IRO-Beige);
	font-family:Togalite;
	font-weight:500;
	font-size:20px;
	cursor:pointer;
}

.News .Information .NewsIndex li:nth-child(1){background-color:rgba(  0,  0,  0,1.0);}
.News .Information .NewsIndex li:nth-child(2){background-color:var(--IRO-Green);}
.News .Information .NewsIndex li:nth-child(3){background-color:rgba(206, 88, 47,1.0);}

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

	.News .Information .Humanwares .Human1{	top:-92px;	left:-4px;}
	.News .Information .Humanwares .Human2{	top:-143px;	left:132px;}
	.News .Information .Humanwares .Human3{	top:-118px;	right:110px;}
	.News .Information .Humanwares .Human4{	top:-105px;	right:4px;}

}

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

	.News .Information .Humanwares{
		width:100%;
		margin:0 auto;
		top:140px;
		position:absolute;
	}

}

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

	.News .Information .Humanwares .HumanWare picture img,
	.News .Information .Humanwares .HumanWare picture,
	.News .Information .Humanwares .HumanWare{
		width:calc(640px / 6);
		height:calc(960px / 6);
	}

	.News .Information .Humanwares .Human1 picture img,
	.News .Information .Humanwares .Human1 picture,
	.News .Information .Humanwares .Human1{
		width:calc(686px / 6);
		height:calc(960px / 6);
	}

	.News .Information .Humanwares .Human1{	top:-92px;	left:-4px;}
	.News .Information .Humanwares .Human2{	top:-127px;	left:97px;}
	.News .Information .Humanwares .Human3{	top:-118px;	right:83px;}
	.News .Information .Humanwares .Human4{	top:-105px;	right:4px;}

}

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

	.News .Information .Humanwares .HumanWare picture img,
	.News .Information .Humanwares .HumanWare picture,
	.News .Information .Humanwares .HumanWare{
		width:21.3vw;
		height:calc(21.3vw / 640 * 960);
	}

	.News .Information .Humanwares .Human1 picture img,
	.News .Information .Humanwares .Human1 picture,
	.News .Information .Humanwares .Human1{
		width:22.8vw;
		height:calc(22.8vw / 686 * 960);
	}

	.News .Information .Humanwares .Human1{	top:-92px;	left:-4px;}
	.News .Information .Humanwares .Human2{	top:-127px;	left:19.4vw;}
	.News .Information .Humanwares .Human3{	top:-118px;	right:16.6vw;}
	.News .Information .Humanwares .Human4{	top:-105px;	right:4px;}

}

.NewsList{
	display:flex;
	flex-flow:row wrap;
	justify-content:center;
}

.NewsList li{
	width:calc(100% / 3 - 6px);
	height:auto;
	margin:3px;

	width:327px;
}

.NewsList li a{
	width:100%;
	height:100%;
	padding:3px;
	background-color:rgba(255,255,255,1.0);
	display:block;
}

.NewsList li figure{
	width:calc(100% + 6px);
	height:calc((100% + 6px) / 16 * 9);
	margin:-3px 0 0 -3px;

	width:327px;
	height:calc(327px / 4 * 3);
}

.News figure.NewsThumbnail img,
.News .NewsList li figure img{
	width:100%;
	height:100%;

	width:327px;
	height:calc(327px / 4 * 3);
	object-fit:cover;
}

.NewsList li h3{
	margin:3px;
	font-weight:bolder;
	line-height:24px;
}

.NewsList li p{
	font-size:16px;
	line-height:20px;
}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

.ShopList div{
	display:flex;
	flex-flow:row nowrap;
}

.Shops{
	display:none;
}

.Shops{
	display:flex;
	flex-flow:column nowrap;
	justify-content:center;
	align-items:center;
}

.Shops li{
	width:100%;
	height:180px;
	max-width:1000px;
	margin:0 0 16px;
}

.Shops li a{
	width:100%;
	height:180px;
	background-color:rgba(255,255,255,1.0);
	display:flex;
	flex-flow:row nowrap;
}

.Shops li figure,
.Shops li figure picture,
.Shops li figure picture img{
	width:240px;
	height:180px;
}

.Shops li figure picture img{
	object-fit:cover;
}

.Shops li div{
	display:flex;
	flex-flow:column nowrap;
	padding:20px 40px 10px;
	position:relative;
}

.Shops li div h3{
	line-height:30px;
	margin:0 0 8px;
	font-size:20px;
	font-weight:bolder;
}

.Shops li div .svbIcon{
	width:30px;
	height:30px;
	top:10px;
	left:5px;
	position:absolute;
}

.Shops li div p{
	line-height:20px;
}

.Shops li div p.Item{
	line-height:20px;
	font-size:13px;
	margin:0 0 12px;
}


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

	.NewsList li{
		width:calc(100% / 2 - 6px);
		max-width:320px;
		margin:10px 10px;

		width:320px;
		/*height:calc(320px / 4 * 3);*/
	}

	.News figure.NewsThumbnail img,
	.News .NewsList li figure img{
		width:320px;
		height:calc(320px / 4 * 3);
	}

}

@media screen and (max-width: 672px){

/*
}

@media screen and (max-width: 540px){
*/
	.Shop section.Shoplist{
		padding:100px 8px;
	}

	.Shops li{
		max-width:540px;
	}

	.Shops li div{
		padding:10px 10px 10px;
	}

	.Shops li div h3{
		margin:0 0 4px 22px;
		font-size:16px;
		line-height:20px;
	}

	.Shops li div .svbIcon{
		width:24px;
		height:24px;
		margin:0;
	}

	.Shops li,
	.Shops li a{
		height:auto;
	}

	.Shops li a{
		flex-flow:column nowrap;
	}

	.Shops li figure,
	.Shops li figure picture,
	.Shops li figure picture img{
		width:100%;
		height:180px;
	}

}

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

	.Shops{
		flex-flow:row wrap;
		align-items:initial;
	}

	.Shops li{
		width:calc(100% / 2 - 6px);
		max-width:300px;
		margin:3px 3px;
	}

	.Shops li{
		height:auto;
	}

	.Shops li a{
		height:auto;
		flex-flow:column nowrap;
	}

	.Shops li figure,
	.Shops li figure img{
		width:calc(100vw / 2 - 6px);
		height:calc((100vw / 2 - 6px) / 16 * 9);
	}

}

@media screen and (max-width: 676px){

	.Shops li{
		width:calc(100% / 1 - 6px);
		max-width:300px;
		margin:3px 3px;
	}

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

	.NewsList li{
		width:calc(100% / 2 - 6px);
		max-width:300px;
		margin:3px 3px;
	}

	.News figure.NewsThumbnail img,
	.News .NewsList li figure img{
		width:300px;
		height:calc(300px / 4 * 3);
	}

}

@media screen and (max-width: 676px){

	.NewsList li{
		width:calc(100% / 1 - 6px);
		max-width:300px;
		margin:3px 3px;
	}

	.News figure.NewsThumbnail img,
	.News .NewsList li figure img{
		width:300px;
		height:calc(300px / 4 * 3);
	}

}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/


#Search{
	width:calc(100% - 100px);
	height:50px;
	margin:0px 0px 0px;
	padding:0px 20px;
	background-color:rgba(242,242,242,1.0);
/*
	background-image:url(img/search.svg);
	background-repeat:no-repeat;
	background-position:100% 0%;
*/
	font-size:16px;
}

.SearchBox input:nth-child(2){
	width:100%;
}

.SearchContent label,
.SearchBox .ListLabel{
	margin:0 4px 4px 0;
	text-align:center;
	display:block;
	background-color:rgba(242,242,242,1.0);
	color:rgba(0,0,0,1.0);
	cursor:pointer;
	font-size:18px;
	border:1px solid rgba(242,242,242,1.0);
}

.SearchBox .ListLabel{
	width:calc((100% - 30px) / 3);
	height:60px;
	line-height:60px;
}

.SearchBox div{
	width:100%;
	margin: 20px 20px 40px;
	display:flex;
	flex-flow:row nowrap;
}

.SearchButton{
	width:50px;
	height:50px;
	padding:13px;
	display:inline-block;
	background-color:rgba(242,242,242,1.0);
	cursor:pointer;
}

.SearchButton svg{
	width:24px;
	height:24px;
}

.ListLabelCategory{
	width:calc(((700px - 46px) / 4) - 10px);
	height:calc(((700px - 46px) / 4) - 10px);
	line-height:calc(((700px - 46px) / 4) - 10px);
	border-radius:10px;
	position:relative;

	width:98px;
	height:40px;
}

.ListLabelCategory span{
	width:calc(100% - 34px);
	line-height:34px;
/*
	top:75%;
	left:0%;
	text-align:center;
	position:absolute;
*/
}

.ListLabelArea{
	width:calc((100% / 3) - 10px);
	height:60px;
	line-height:60px;
	margin:0 10px;
	border-radius:10px;
}

.ListLabelInitial{
	max-width:60px;
	width:calc((100% / 12) - 10px);
	width:54px;
	height:40px;
	line-height:36px;
	border-radius:10px;
	text-align:center;
}

.SearchBox input[name="List"],
.SearchContent input[name="Category"],
.SearchContent input[name="Initial"]{
	display:none;
}

.SearchContent label:hover,
.SearchBox .ListLabel:hover{
	border:1px solid rgba(239,151,157,1.0);
}

.SearchContent input:checked + label,
#ContentInitial input[name="Initial"]:checked + .ListLabelInitial,
.SearchBox input[name="List"]:checked + .ListLabel{
	background-color:rgba(239,151,157,1.0);
	color:rgba(255,255,255,1.0);
	border:1px solid rgba(239,151,157,1.0);
}

.SearchContent input:checked + label svg,
.SearchContent input:checked + label span{
	color:rgba(255,255,255,1.0);
	fill:rgba(255,255,255,1.0);
}

.SearchBox{
	width:720px;
	margin:0 140px;
}

.SearchBox .SearchContent{
	width:100%;
	margin:0 0 30px;
	display:flex;
	flex-flow:row wrap;
}

.SearchBox .SearchContent h3{
	width:100%;
	margin:0 0 8px;
	padding:0 0 4px;
	border-bottom:2px solid rgba(0,0,0,1.0);
}

.SearchBox .SearchContent label{
	display:flex;
	flex-flow:row nowrap;
	justify-content:center;
}

.SearchBox .SearchContent .svbIcon{
	margin:3px 2px 0;
}

.SearchIndex{
	display:none;
}

@media screen and (max-width:1240px){

	.SearchBox{
		margin:0 auto;
	}

}

@media screen and (max-width:1085px){

	.SearchBox{
		width:100%;
		margin:initial;
	}

	.Shop .Shoplist .Humanwares{
		width:100%;
		top:0;
		left:0;
		position:absolute;
	}

	.Shop .Shoplist .Humanwares .HumanWare,
	.Shop .Shoplist .Humanwares .HumanWare picture,
	.Shop .Shoplist .Humanwares .HumanWare picture img{
		width:calc(540px / 4.5);
		height:calc(960px / 4.5);
		left:initial;
		right:initial;
	}

	.Shop .Shoplist .Humanwares .Human1{
		left:0;
	}

	.Shop .Shoplist .Humanwares .Human3{
		right:0;
	}

}

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

	.Shop .Shoplist h2{
		margin:0 0 30px;
		padding:38px 0;
	}

}

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

	.Shop .Shoplist .Humanwares .HumanWare{
		top:20px;
	}

	.Shop .Shoplist .Humanwares .Human1{
		left:-20px;
	}

	.Shop .Shoplist .Humanwares .Human3{
		right:-20px;
	}

	.Shop .Shoplist .Humanwares .HumanWare,
	.Shop .Shoplist .Humanwares .HumanWare picture,
	.Shop .Shoplist .Humanwares .HumanWare picture img{
		width:calc(540px / 5.5);
		height:calc(960px / 5.5);
	}

}

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

	.ListLabelInitial{
		width:52px;
	}

}

.SearchBox .ListLabelCategory span{color:rgba(255,255,255,1.0);}
.SearchBox label[for="ListCategoryShopping"]{	background-color:var(--IRO-PinkDark);}
.SearchBox label[for="ListCategoryFood"]{		background-color:var(--IRO-Green);}
.SearchBox label[for="ListCategoryRealEstate"]{	background-color:var(--IRO-Orange);}
.SearchBox label[for="ListCategoryHairSalon"]{	background-color:var(--IRO-Black);}
.SearchBox label[for="ListCategoryAmusement"]{	background-color:var(--IRO-Blue);}
.SearchBox label[for="ListCategoryBook"]{		background-color:var(--IRO-Water);}
.SearchBox label[for="ListCategoryOther"]{		background-color:var(--IRO-PurplePale);}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

.ShopOne{
	padding:20px calc(50% - 1000px / 2) 100px;
}

.ShopOne div{
	max-width:758px;
	margin:0 auto;
	padding:30px 50px 0;
	background-color:rgba(255,255,255,1.0);
	display:flex;
	flex-flow:column nowrap;
}

.ShopOne h2{
	margin:40px auto 20px;
	font-size:36px;
	font-family:Togalite;
	font-weight:700;
	text-align:center;
	color:rgba(212, 20, 90,1.0);
}

.ShopOne .TitleCallSub{
	margin:0 auto 40px;
	font-family:Togalite;
	font-weight:700;
	text-align:center;
}

.ShopOne label{
	width:100%;
	margin:0 auto 8px;
	max-width:758px;
	font-weight:bold;
	padding:calc(8px / 2) 16px;
	color:rgba(255,255,255,1.0);
	display:block;
}

.ShopOne label.food{	background-color:rgba( 68,128,109,1.0);}
.ShopOne label.service{	background-color:rgba( 65,180,126,1.0);}
.ShopOne label.shopping{background-color:rgba(212, 20, 90,1.0);}
.ShopOne label.other{	background-color:rgba(240,130, 33,1.0);}

.ShopOne div figure{
	width:100%;
/*
	min-height:480px;
*/
	background-color:rgba(0,0,0,0.3);
}

.ShopOne div h1{
	margin:24px 0 0;
	margin:24px 0 24px 28px;
	font-size:20px;
	font-weight:bolder;
}

.ShopOne div h1 .svbIcon{
	margin:0 8px -8px 0;
}

.ShopOne div .Description{
	margin:20px 20px 0px 36px;
}

.ShopOne div .Item{
	margin:0px 20px 0px 36px;
	font-size:16px;
}

.ShopOne div table{
	margin:20px 10px;
}

.ShopOne div table tr{
	display:flex;
}

.ShopOne div table th{
	width:150px;
	height:60px;
	line-height:38px;
	padding:10px 20px;
	border-top:1px dotted rgb(0,0,0,1.0);
}

.ShopOne div table td{
	width:calc(100% - 150px);
	height:auto;
	padding:15px 20px;
	border-top:1px dotted rgb(0,0,0,1.0);
}

.ShopOne div table tr:nth-child(7) td{
	width:calc(100% - 0px);
}

.ShopOne .ShopOption span{
	border:1px solid var(--IRO-Purple);
	border-radius:5px;
	font-size:15px;
	padding:0px 4px 2px 4px;
	margin:0 0 4px 4px;
	display:inline-block;
}

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

	.ShopOne div{
		margin:0 8px;
		padding:30px 30px;
	}

}

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

	.ShopOne div{
		margin:0 8px;
		padding:10px 10px;
	}

	.ShopOne div .Description{
		margin:20px 16px 0px;
	}

	.ShopOne div table tr{
		flex-flow:column nowrap;
		border-top:1px dotted rgb(0,0,0,1.0);
	}

	.ShopOne div table td{
		width:100%;
	}

	.ShopOne div table tr th,
	.ShopOne div table tr td{
		border-top:1px dotted rgb(0,0,0,0);
	}

	.ShopOne div table tr th{
		width:initial;
		height:30px;
		line-height:30px;
		padding:initial;
		text-align:initial;
		font-size:14px;
	}

}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

.Map main{
	background-color:rgba(230,230,230,1.0);
	background-image:url(img/head-map.png);
	background-size:cover;
	background-position:top center;
	background-repeat:no-repeat;
	background-attachment:fixed;
	position:relative;
}

.Map main header{
	position:absolute;
}

#MapKichijojiSUNROAD{
	height:2933px;
	margin:100px calc(50% - 1000px / 2) 0;
	margin:0;
	padding:0;
	position:relative;
	overflow:hidden;
}

#MapKichijojiSUNROAD svg{
	margin:-350px 0 0;
	transition:all 2s;
	width:1000px;
	margin:0;
	top:0;
	left:calc(50% - 1000px / 2);
	position:absolute;
/*
	background-color:rgba(255,255,255,1.0);
*/
	background-size:contain;
	background-repeat:no-repeat;
	background-image:url(img/sunroad-map.jpg);
	opacity:0;
/*
	animation:mapIN 3s linear;
*/
}

@keyframes mapIN{
	0%{		opacity:0;}
	75%{	opacity:0;}
	100%{	opacity:1;}
}

#MapKichijojiSUNROAD a{
	cursor:pointer;
}

/*
.AreaA *{		fill: #fad4a8;	stroke: #f7931e;	stroke-width:1.0px;}
*/
/*
.Area_Shops{
	width:100%;
	height:0px;
	margin:0;
	padding:0;
	visibility:collapse;
	top:0;
	left:0;
	position:absolute;
}

#AreaA_Shops ul{						left:90px;}
#AreaA_Shops ul:nth-child(1){top: 120px;}
#AreaA_Shops ul:nth-child(2){top: 430px;}
#AreaA_Shops ul:nth-child(3){top: 830px;}
#AreaA_Shops ul:nth-child(4){top:1020px;}
#AreaB_Shops ul{						left:calc(100% - 270px);}
#AreaB_Shops ul:nth-child(1){top:  40px;}
#AreaB_Shops ul:nth-child(2){top: 360px;left:calc(100% - 340px);}
#AreaB_Shops ul:nth-child(3){top: 690px;}
#AreaB_Shops ul:nth-child(4){top: 950px;}
#AreaB_Shops ul:nth-child(5){top:1066px;}
#AreaB_Shops ul:nth-child(6){top:1180px;}
#AreaB_Shops ul:nth-child(7){top:1350px;}
#AreaC_Shops ul{						left:90px;}
#AreaC_Shops ul:nth-child(1){top: 120px;}
#AreaC_Shops ul:nth-child(2){top: 430px;}
#AreaC_Shops ul:nth-child(3){top: 830px;}
#AreaC_Shops ul:nth-child(4){top:1020px;}
#AreaC_Shops ul:nth-child(5){top:1020px;}
#AreaC_Shops ul:nth-child(6){top:1020px;}
#AreaC_Shops ul:nth-child(7){top:1020px;}
*/

/*
#MapKichijojiSUNROAD .AreaA:hover > *{
	fill:black;
}
*/

.Area *:hover{
	animation: flash 1s linear infinite;
}

.Blink{
	animation: flash 1s linear infinite;
}

@keyframes flash {
	0%,100% {	fill-opacity:0;}
	50% {		fill-opacity:0.75;}
}

#AreaA_Shops,
#AreaB_Shops,
#AreaC_Shops{
	display:none;
}

#MapTitle{
	width:500px;
	top:33px;
	left:0;
	position:fixed;
	transform:rotateZ(-10deg);
	z-index:1111;
}

#MapTitle figure,
#MapTitle figure img{
	width:100%;
}

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

	#MapTitle{
		width:38.4vw;
		top:2px;
		left:0;
		transform:rotateZ(-2deg);
	}

}

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

	#MapTitle{
		width:30.0vw;
		top:2px;
		left:0;
		transform:rotateZ(-2deg);
	}

}

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

	#MapTitle{
		width:200px;
		top:2px;
		left:0;
		transform:rotateZ(-2deg);
	}

}

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

	#MapTitle{
		width:180px;
	}

}
#Monitor{
	width:472px;
	height:auto;
	min-height:200px;
	padding:16px;
	top:110px;
	right:50px;
	position:fixed;

	background-color:rgba(0,0,0,0.75);
	border:2px solid rgba(255,255,255,0.25);
	z-index:1;

}

.GuideInitializeMap,
#MapGuide{
	color:rgba(166,226,40,1.0);
	font-family:'Togalite';
	font-family:'Ronde-B';
	font-size:22px;
	letter-spacing:-7px;
	position:relative;
}
/*
#MapGuide::after{
	content:'';
	width:100%;
	height:100%;
	top:0;
	left:0;
	position:absolute;
	background:repeating-linear-gradient(0deg,rgba(64,64,64,0) 0,rgba(64,64,64,0) 10px,rgba(0,0,0,0.75) 10px,rgba(0,0,0,0.75) 11px);
}
*/
#MapGuide .hitomi{
	font-family:'Noto Sans JP';
	margin:0 3px 0 4px;
}

#ShopInfo{
	width:440px;
	height:auto;
	padding:16px;
	padding:0;
	top:210px;
	right:150px;
	position:fixed;
	border-radius:0 0 14px 14px;
/*
	visibility:collapse;

	color:rgba(166,226,40,1.0);
	background-color:rgba(0,0,0,0.75);
	border:2px solid rgba(255,255,255,0.25);

*/
	background-color:rgba(255,255,255,0.8);
	border:0px solid rgba(0,0,0,0.25);

	margin:16px 0 0;
	top:initial;
	right:initial;
	position:relative;
}

#BuilInfo{
	width:0;
	height:0;
	overflow:hidden;
}

/*
#BuilInfo .svbIcon{
	width:30px;
	height:30px;
	top:10px;
	left:5px;
	position:absolute;
}
*/


#ShopInfo ul{
	margin:0;
	display:flex;
	flex-flow:column nowrap;
/*
	top:0;
	left:0;
	position:absolute;
*/}

#ShopInfo ul li{
	margin:10px 0 0;
}

#ShopInfo ul li a{
	display:flex;
	flex-flow:row nowrap;
}

#ShopInfo ul li h3{
	font-size:16px;
}

#ShopInfo ul li a span{
	width:30px;
	height:30px;
	min-width:30px;
	display:block;
	font-size:15px;
	font-weight:bold;
	text-align:right;
}

#ShopInfo ul li a span{
	width:32px;
	height:24px;
	min-width:32px;
	font-size:14px;
}

#ShopInfo svg.svbIcon{
	width:26px;
	height:26px;
	min-width:26px;
	margin:2px 4px 0;
	top:initial;
	left:initial;
	position:relative;
}

#ShopInfo .CloseButton{
	width:calc(100% - 6px);
	height:30px;
	margin:10px 3px 3px;
	text-align:center;
	cursor:pointer;
	border:1px solid rgba(0,0,0,1.0);
	border-radius:14px;
	font-size:13px;
}

#ShopInfo .CloseButton:hover{
	border:1px dashed rgba(0,0,0,1.0);
}
/*
#MapKichijojiSUNROAD svg.AreaA_ON{transform:scale(250%);top: 1080px;left:-500px;}	#MapKichijojiSUNROAD.AreaA_ON_Base{	height:1800px;}
#MapKichijojiSUNROAD svg.AreaB_ON{transform:scale(250%);top: 1740px;left: 400px;}	#MapKichijojiSUNROAD.AreaB_ON_Base{	height:1510px;}
#MapKichijojiSUNROAD svg.AreaC_ON{transform:scale(250%);top:  -30px;left:-210px;}	#MapKichijojiSUNROAD.AreaC_ON_Base{	height:1570px;}
#MapKichijojiSUNROAD svg.AreaD_ON{transform:scale(250%);top: -210px;left: 410px;}	#MapKichijojiSUNROAD.AreaD_ON_Base{	height: 940px;}
#MapKichijojiSUNROAD svg.AreaE_ON{transform:scale(250%);top: -910px;left:-210px;}	#MapKichijojiSUNROAD.AreaE_ON_Base{	height:1430px;}
#MapKichijojiSUNROAD svg.AreaF_ON{transform:scale(250%);top: -680px;left: 290px;}	#MapKichijojiSUNROAD.AreaF_ON_Base{	height:1300px;}
#MapKichijojiSUNROAD svg.AreaG_ON{transform:scale(250%);top:-1940px;left:-210px;}	#MapKichijojiSUNROAD.AreaG_ON_Base{	height:1886px;}
#MapKichijojiSUNROAD svg.AreaH_ON{transform:scale(250%);top:-2480px;left: 310px;}	#MapKichijojiSUNROAD.AreaH_ON_Base{	height:2560px;}
#MapKichijojiSUNROAD svg.AreaI_ON{transform:scale(250%);top:-3380px;left:-210px;}	#MapKichijojiSUNROAD.AreaI_ON_Base{	height:1550px;}
#MapKichijojiSUNROAD svg.AreaJ_ON{transform:scale(250%);top:-2930px;left: 410px;}	#MapKichijojiSUNROAD.AreaJ_ON_Base{	height:1630px;}

#MapKichijojiSUNROAD svg.AreaA_ON{transform:scale(250%);top: 1080px;left:-695px;}	#MapKichijojiSUNROAD.AreaA_ON_Base{	height:1650px;}
#MapKichijojiSUNROAD svg.AreaB_ON{transform:scale(250%);top: 1080px;left: 425px;}	#MapKichijojiSUNROAD.AreaB_ON_Base{	height:1650px;}
#MapKichijojiSUNROAD svg.AreaC_ON{transform:scale(250%);top:  -34px;left:-695px;}	#MapKichijojiSUNROAD.AreaC_ON_Base{	height:1650px;}
#MapKichijojiSUNROAD svg.AreaD_ON{transform:scale(250%);top: -160px;left: 425px;}	#MapKichijojiSUNROAD.AreaD_ON_Base{	height:1650px;}
#MapKichijojiSUNROAD svg.AreaE_ON{transform:scale(250%);top: -914px;left:-695px;}	#MapKichijojiSUNROAD.AreaE_ON_Base{	height:1650px;}
#MapKichijojiSUNROAD svg.AreaF_ON{transform:scale(250%);top:-1140px;left: 425px;}	#MapKichijojiSUNROAD.AreaF_ON_Base{	height:1650px;}
#MapKichijojiSUNROAD svg.AreaG_ON{transform:scale(250%);top:-1940px;left:-695px;}	#MapKichijojiSUNROAD.AreaG_ON_Base{	height:1650px;}
#MapKichijojiSUNROAD svg.AreaH_ON{transform:scale(250%);top:-1950px;left: 425px;}	#MapKichijojiSUNROAD.AreaH_ON_Base{	height:1650px;}
#MapKichijojiSUNROAD svg.AreaI_ON{transform:scale(250%);top:-3380px;left:-695px;}	#MapKichijojiSUNROAD.AreaI_ON_Base{	height:1650px;}
#MapKichijojiSUNROAD svg.AreaJ_ON{transform:scale(250%);top:-3020px;left: 425px;}	#MapKichijojiSUNROAD.AreaJ_ON_Base{	height:1650px;}

*/

	#MapKichijojiSUNROAD svg.AreaA_ON{width:2500px;top: -880px;left:calc(50% - 1725px);}	#MapKichijojiSUNROAD.AreaA_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaB_ON{width:2500px;top: -880px;left:calc(50% - 1015px);}	#MapKichijojiSUNROAD.AreaB_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaC_ON{width:2500px;top:-1850px;left:calc(50% - 1725px);}	#MapKichijojiSUNROAD.AreaC_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaD_ON{width:2500px;top:-2100px;left:calc(50% -  850px);}	#MapKichijojiSUNROAD.AreaD_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaE_ON{width:2500px;top:-2700px;left:calc(50% - 1725px);}	#MapKichijojiSUNROAD.AreaE_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaF_ON{width:2500px;top:-2850px;left:calc(50% - 1015px);}	#MapKichijojiSUNROAD.AreaF_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaG_ON{width:2500px;top:-4000px;left:calc(50% - 1725px);}	#MapKichijojiSUNROAD.AreaG_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaH_ON{width:2500px;top:-3840px;left:calc(50% - 1015px);}	#MapKichijojiSUNROAD.AreaH_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaI_ON{width:2500px;top:-5280px;left:calc(50% - 1725px);}	#MapKichijojiSUNROAD.AreaI_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaJ_ON{width:2500px;top:-5250px;left:calc(50% - 1015px);}	#MapKichijojiSUNROAD.AreaJ_ON_Base{	height:1650px;}

@media only screen and (max-width:1000px){
	/*
	#MapKichijojiSUNROAD svg.AreaA_ON{transform:scale(450%);top: 2250px;left:-580px;}	#MapKichijojiSUNROAD.AreaA_ON_Base{	height:1300px;}
	#MapKichijojiSUNROAD svg.AreaB_ON{transform:scale(320%);top: 1740px;left: 400px;}	#MapKichijojiSUNROAD.AreaB_ON_Base{	height:1510px;}
	#MapKichijojiSUNROAD svg.AreaC_ON{transform:scale(450%);top:  820px;left:-580px;}	#MapKichijojiSUNROAD.AreaC_ON_Base{	height:1100px;}
	#MapKichijojiSUNROAD svg.AreaD_ON{transform:scale(240%);top: -210px;left: 410px;}	#MapKichijojiSUNROAD.AreaD_ON_Base{	height: 940px;}
	#MapKichijojiSUNROAD svg.AreaE_ON{transform:scale(450%);top: -300px;left:-580px;}	#MapKichijojiSUNROAD.AreaE_ON_Base{	height:1100px;}
	#MapKichijojiSUNROAD svg.AreaF_ON{transform:scale(640%);top: -680px;left: 290px;}	#MapKichijojiSUNROAD.AreaF_ON_Base{	height:1300px;}
	#MapKichijojiSUNROAD svg.AreaG_ON{transform:scale(220%);top:-1300px;left:-460px;}	#MapKichijojiSUNROAD.AreaG_ON_Base{	height:1400px;}
	#MapKichijojiSUNROAD svg.AreaH_ON{transform:scale(540%);top:-2480px;left: 310px;}	#MapKichijojiSUNROAD.AreaH_ON_Base{	height:2560px;}
	#MapKichijojiSUNROAD svg.AreaI_ON{transform:scale(250%);top:-2400px;left:-460px;}	#MapKichijojiSUNROAD.AreaI_ON_Base{	height:1000px;}
	#MapKichijojiSUNROAD svg.AreaJ_ON{transform:scale(240%);top:-2930px;left: 410px;}	#MapKichijojiSUNROAD.AreaJ_ON_Base{	height:1630px;}

	#MapKichijojiSUNROAD svg.AreaA_ON{transform:scale(450%);top:  316vw;left: -81vw;}	#MapKichijojiSUNROAD.AreaA_ON_Base{	height: 182vw;}
	#MapKichijojiSUNROAD svg.AreaB_ON{transform:scale(300%);top:  156vw;left:  38vw;}	#MapKichijojiSUNROAD.AreaB_ON_Base{	height: 146vw;}
	#MapKichijojiSUNROAD svg.AreaC_ON{transform:scale(450%);top:  115vw;left: -81vw;}	#MapKichijojiSUNROAD.AreaC_ON_Base{	height: 155vw;}
	#MapKichijojiSUNROAD svg.AreaD_ON{transform:scale(240%);top:  -20vw;left:  40vw;}	#MapKichijojiSUNROAD.AreaD_ON_Base{	height: 146vw;}
	#MapKichijojiSUNROAD svg.AreaE_ON{transform:scale(450%);top:  -43vw;left: -81vw;}	#MapKichijojiSUNROAD.AreaE_ON_Base{	height: 142vw;}
	#MapKichijojiSUNROAD svg.AreaF_ON{transform:scale(240%);top:  -68vw;left:  40vw;}	#MapKichijojiSUNROAD.AreaF_ON_Base{	height: 182vw;}
	#MapKichijojiSUNROAD svg.AreaG_ON{transform:scale(220%);top:-1300px;left:-460px;}	#MapKichijojiSUNROAD.AreaG_ON_Base{	height:1400px;}
	#MapKichijojiSUNROAD svg.AreaH_ON{transform:scale(540%);top: -182vw;left:28.5vw;}	#MapKichijojiSUNROAD.AreaH_ON_Base{	height: 110vw;}
	#MapKichijojiSUNROAD svg.AreaI_ON{transform:scale(250%);top:-2400px;left:-460px;}	#MapKichijojiSUNROAD.AreaI_ON_Base{	height:1000px;}
	#MapKichijojiSUNROAD svg.AreaJ_ON{transform:scale(210%);top: -273vw;left:28.5vw;}	#MapKichijojiSUNROAD.AreaJ_ON_Base{	height: 145vw;}


	#MapKichijojiSUNROAD svg.AreaA_ON{transform:scale(210%);top:   70vw;left: -50vw;}	#MapKichijojiSUNROAD.AreaA_ON_Base{	height: 146vw;}
	#MapKichijojiSUNROAD svg.AreaB_ON{transform:scale(210%);top:   70vw;left:28.5vw;}	#MapKichijojiSUNROAD.AreaB_ON_Base{	height: 146vw;}
	#MapKichijojiSUNROAD svg.AreaC_ON{transform:scale(210%);top:  -24vw;left: -50vw;}	#MapKichijojiSUNROAD.AreaC_ON_Base{	height: 146vw;}
	#MapKichijojiSUNROAD svg.AreaD_ON{transform:scale(210%);top:  -20vw;left:28.5vw;}	#MapKichijojiSUNROAD.AreaD_ON_Base{	height: 146vw;}
	#MapKichijojiSUNROAD svg.AreaE_ON{transform:scale(210%);top:  -98vw;left: -50vw;}	#MapKichijojiSUNROAD.AreaE_ON_Base{	height: 146vw;}
	#MapKichijojiSUNROAD svg.AreaF_ON{transform:scale(210%);top: -118vw;left:28.5vw;}	#MapKichijojiSUNROAD.AreaF_ON_Base{	height: 146vw;}
	#MapKichijojiSUNROAD svg.AreaG_ON{transform:scale(210%);top: -182vw;left: -50vw;}	#MapKichijojiSUNROAD.AreaG_ON_Base{	height: 146vw;}
	#MapKichijojiSUNROAD svg.AreaH_ON{transform:scale(210%);top: -182vw;left:28.5vw;}	#MapKichijojiSUNROAD.AreaH_ON_Base{	height: 146vw;}
	#MapKichijojiSUNROAD svg.AreaI_ON{transform:scale(210%);top: -300vw;left: -50vw;}	#MapKichijojiSUNROAD.AreaI_ON_Base{	height: 146vw;}
	#MapKichijojiSUNROAD svg.AreaJ_ON{transform:scale(210%);top: -273vw;left:28.5vw;}	#MapKichijojiSUNROAD.AreaJ_ON_Base{	height: 146vw;}

	#MapKichijojiSUNROAD svg.AreaA_ON{width:200vw;top:-53vw;left:-108vw;}	#MapKichijojiSUNROAD.AreaA_ON_Base{	height:167vw;}
	#MapKichijojiSUNROAD svg.AreaB_ON{width:200vw;top:-17vw;left:-22vw;}	#MapKichijojiSUNROAD.AreaB_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaC_ON{width:200vw;top:-1850px;left:-96vw;}	#MapKichijojiSUNROAD.AreaC_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaD_ON{width:200vw;top:-2100px;left:-22vwcalc(50% -  850px);}	#MapKichijojiSUNROAD.AreaD_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaE_ON{width:200vw;top:-2700px;left:-96vw;}	#MapKichijojiSUNROAD.AreaE_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaF_ON{width:200vw;top:-2850px;left:-22vw;}	#MapKichijojiSUNROAD.AreaF_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaG_ON{width:200vw;top:-4000px;left:-96vw;}	#MapKichijojiSUNROAD.AreaG_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaH_ON{width:200vw;top:-3840px;left:-22vw;}	#MapKichijojiSUNROAD.AreaH_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaI_ON{width:200vw;top:-5280px;left:-96vw;}	#MapKichijojiSUNROAD.AreaI_ON_Base{	height:1650px;}
	#MapKichijojiSUNROAD svg.AreaJ_ON{width:200vw;top:-5250px;left:-22vw;}	#MapKichijojiSUNROAD.AreaJ_ON_Base{	height:1650px;}
	*/
	#MapKichijojiSUNROAD svg.AreaA_ON{width:1500px;top: -288px;left:calc(50% - 1080px);}	#MapKichijojiSUNROAD.AreaA_ON_Base{	height:1300px;}
	#MapKichijojiSUNROAD svg.AreaB_ON{width:1500px;top: -288px;left:calc(50% -  550px);}	#MapKichijojiSUNROAD.AreaB_ON_Base{	height:1300px;}
	#MapKichijojiSUNROAD svg.AreaC_ON{width:1500px;top: -868px;left:calc(50% - 1080px);}	#MapKichijojiSUNROAD.AreaC_ON_Base{	height:1300px;}
	#MapKichijojiSUNROAD svg.AreaD_ON{width:1500px;top: -868px;left:calc(50% -  550px);}	#MapKichijojiSUNROAD.AreaD_ON_Base{	height:1300px;}
	#MapKichijojiSUNROAD svg.AreaE_ON{width:1500px;top:-1500px;left:calc(50% - 1080px);}	#MapKichijojiSUNROAD.AreaE_ON_Base{	height:1300px;}
	#MapKichijojiSUNROAD svg.AreaF_ON{width:1500px;top:-1500px;left:calc(50% -  550px);}	#MapKichijojiSUNROAD.AreaF_ON_Base{	height:1300px;}
	#MapKichijojiSUNROAD svg.AreaG_ON{width:1500px;top:-2100px;left:calc(50% - 1080px);}	#MapKichijojiSUNROAD.AreaG_ON_Base{	height:1300px;}
	#MapKichijojiSUNROAD svg.AreaH_ON{width:1500px;top:-2100px;left:calc(50% -  550px);}	#MapKichijojiSUNROAD.AreaH_ON_Base{	height:1300px;}
	#MapKichijojiSUNROAD svg.AreaI_ON{width:1500px;top:-2900px;left:calc(50% - 1080px);}	#MapKichijojiSUNROAD.AreaI_ON_Base{	height:1300px;}
	#MapKichijojiSUNROAD svg.AreaJ_ON{width:1500px;top:-2900px;left:calc(50% -  550px);}	#MapKichijojiSUNROAD.AreaJ_ON_Base{	height:1300px;}


}

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

	#MapKichijojiSUNROAD svg.AreaA_ON{width:1350px;top: -288px;left:calc(50% -  920px);}	#MapKichijojiSUNROAD.AreaA_ON_Base{	height:1200px;}
	#MapKichijojiSUNROAD svg.AreaB_ON{width:1350px;top: -288px;left:calc(50% -  550px);}	#MapKichijojiSUNROAD.AreaB_ON_Base{	height:1200px;}
	#MapKichijojiSUNROAD svg.AreaC_ON{width:1350px;top: -868px;left:calc(50% -  920px);}	#MapKichijojiSUNROAD.AreaC_ON_Base{	height:1200px;}
	#MapKichijojiSUNROAD svg.AreaD_ON{width:1150px;top: -730px;left:calc(50% -  430px);}	#MapKichijojiSUNROAD.AreaD_ON_Base{	height:1200px;}
	#MapKichijojiSUNROAD svg.AreaE_ON{width:1350px;top:-1350px;left:calc(50% -  920px);}	#MapKichijojiSUNROAD.AreaE_ON_Base{	height:1200px;}
	#MapKichijojiSUNROAD svg.AreaF_ON{width:1350px;top:-1350px;left:calc(50% -  550px);}	#MapKichijojiSUNROAD.AreaF_ON_Base{	height:1200px;}
	#MapKichijojiSUNROAD svg.AreaG_ON{width:1350px;top:-1900px;left:calc(50% -  920px);}	#MapKichijojiSUNROAD.AreaG_ON_Base{	height:1200px;}
	#MapKichijojiSUNROAD svg.AreaH_ON{width:1350px;top:-1900px;left:calc(50% -  550px);}	#MapKichijojiSUNROAD.AreaH_ON_Base{	height:1200px;}
	#MapKichijojiSUNROAD svg.AreaI_ON{width:1350px;top:-2700px;left:calc(50% -  920px);}	#MapKichijojiSUNROAD.AreaI_ON_Base{	height:1200px;}
	#MapKichijojiSUNROAD svg.AreaJ_ON{width:1350px;top:-2700px;left:calc(50% -  550px);}	#MapKichijojiSUNROAD.AreaJ_ON_Base{	height:1200px;}

}

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

	#MapKichijojiSUNROAD svg.AreaA_ON{width:1100px;top: -240px;left:calc(50% -  760px);}	#MapKichijojiSUNROAD.AreaA_ON_Base{	height:1074px;}
	#MapKichijojiSUNROAD svg.AreaB_ON{width:1100px;top: -240px;left:calc(50% -  460px);}	#MapKichijojiSUNROAD.AreaB_ON_Base{	height:1074px;}
	#MapKichijojiSUNROAD svg.AreaC_ON{width:1100px;top: -700px;left:calc(50% -  760px);}	#MapKichijojiSUNROAD.AreaC_ON_Base{	height:1074px;}
	#MapKichijojiSUNROAD svg.AreaD_ON{width:1030px;top: -700px;left:calc(50% -  410px);}	#MapKichijojiSUNROAD.AreaD_ON_Base{	height:1074px;}
	#MapKichijojiSUNROAD svg.AreaE_ON{width:1100px;top:-1090px;left:calc(50% -  760px);}	#MapKichijojiSUNROAD.AreaE_ON_Base{	height:1074px;}
	#MapKichijojiSUNROAD svg.AreaF_ON{width:1100px;top:-1090px;left:calc(50% -  460px);}	#MapKichijojiSUNROAD.AreaF_ON_Base{	height:1074px;}
	#MapKichijojiSUNROAD svg.AreaG_ON{width:1100px;top:-1550px;left:calc(50% -  760px);}	#MapKichijojiSUNROAD.AreaG_ON_Base{	height:1074px;}
	#MapKichijojiSUNROAD svg.AreaH_ON{width:1100px;top:-1550px;left:calc(50% -  460px);}	#MapKichijojiSUNROAD.AreaH_ON_Base{	height:1074px;}
	#MapKichijojiSUNROAD svg.AreaI_ON{width:1100px;top:-2150px;left:calc(50% -  760px);}	#MapKichijojiSUNROAD.AreaI_ON_Base{	height:1074px;}
	#MapKichijojiSUNROAD svg.AreaJ_ON{width:1100px;top:-2150px;left:calc(50% -  460px);}	#MapKichijojiSUNROAD.AreaJ_ON_Base{	height:1074px;}

}

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

	#MapKichijojiSUNROAD svg.AreaA_ON{width: 900px;top: -175px;left:calc(50% -  620px);}	#MapKichijojiSUNROAD.AreaA_ON_Base{	height:747px;}
	#MapKichijojiSUNROAD svg.AreaB_ON{width: 900px;top: -175px;left:calc(50% -  370px);}	#MapKichijojiSUNROAD.AreaB_ON_Base{	height:747px;}
	#MapKichijojiSUNROAD svg.AreaC_ON{width: 900px;top: -570px;left:calc(50% -  620px);}	#MapKichijojiSUNROAD.AreaC_ON_Base{	height:747px;}
	#MapKichijojiSUNROAD svg.AreaD_ON{width: 800px;top: -500px;left:calc(50% -  300px);}	#MapKichijojiSUNROAD.AreaD_ON_Base{	height:747px;}
	#MapKichijojiSUNROAD svg.AreaE_ON{width: 900px;top: -890px;left:calc(50% -  620px);}	#MapKichijojiSUNROAD.AreaE_ON_Base{	height:747px;}
	#MapKichijojiSUNROAD svg.AreaF_ON{width: 900px;top: -970px;left:calc(50% -  380px);}	#MapKichijojiSUNROAD.AreaF_ON_Base{	height:747px;}

	#MapKichijojiSUNROAD svg.AreaG_ON{width: 900px;top:-1250px;left:calc(50% -  620px);}	#MapKichijojiSUNROAD.AreaG_ON_Base{	height:860px;}
	#MapKichijojiSUNROAD svg.AreaH_ON{width: 900px;top:-1250px;left:calc(50% -  380px);}	#MapKichijojiSUNROAD.AreaH_ON_Base{	height:747px;}
	#MapKichijojiSUNROAD svg.AreaI_ON{width: 900px;top:-1780px;left:calc(50% -  620px);}	#MapKichijojiSUNROAD.AreaI_ON_Base{	height:857px;}
	#MapKichijojiSUNROAD svg.AreaJ_ON{width: 900px;top:-1785px;left:calc(50% -  380px);}	#MapKichijojiSUNROAD.AreaJ_ON_Base{	height:852px;}

}

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

	#MapKichijojiSUNROAD svg.AreaA_ON{width: 800px;top: -169px;left:calc(50% -  540px);}	#MapKichijojiSUNROAD.AreaA_ON_Base{	height:747px;}
	#MapKichijojiSUNROAD svg.AreaB_ON{width: 800px;top: -169px;left:calc(50% -  340px);}	#MapKichijojiSUNROAD.AreaB_ON_Base{	height:747px;}
	#MapKichijojiSUNROAD svg.AreaC_ON{width: 800px;top: -482px;left:calc(50% -  540px);}	#MapKichijojiSUNROAD.AreaC_ON_Base{	height:747px;}
	#MapKichijojiSUNROAD svg.AreaD_ON{width: 700px;top: -412px;left:calc(50% -  280px);}	#MapKichijojiSUNROAD.AreaD_ON_Base{	height:747px;}
	#MapKichijojiSUNROAD svg.AreaE_ON{width: 800px;top: -770px;left:calc(50% -  540px);}	#MapKichijojiSUNROAD.AreaE_ON_Base{	height:747px;}
	#MapKichijojiSUNROAD svg.AreaF_ON{width: 800px;top: -820px;left:calc(50% -  340px);}	#MapKichijojiSUNROAD.AreaF_ON_Base{	height:747px;}

	#MapKichijojiSUNROAD svg.AreaG_ON{width: 800px;top:-1090px;left:calc(50% -  540px);}	#MapKichijojiSUNROAD.AreaG_ON_Base{	height:860px;}
	#MapKichijojiSUNROAD svg.AreaH_ON{width: 800px;top:-1090px;left:calc(50% -  340px);}	#MapKichijojiSUNROAD.AreaH_ON_Base{	height:747px;}
	#MapKichijojiSUNROAD svg.AreaI_ON{width: 800px;top:-1555px;left:calc(50% -  540px);}	#MapKichijojiSUNROAD.AreaI_ON_Base{	height:790px;}
	#MapKichijojiSUNROAD svg.AreaJ_ON{width: 800px;top:-1560px;left:calc(50% -  340px);}	#MapKichijojiSUNROAD.AreaJ_ON_Base{	height:711px;}

}

.InitializeMap{

}

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

	.GuideInitializeMap,
	.InitializeMap{
		display:none;
	}

	.Map main{
		margin:0;
		background-image:initial;
	}

/*
	#MapKichijojiSUNROAD{
		height:244.5vw;
		height:292.98vw;
		margin:80px 0 0;
	}
*/

	#MapKichijojiSUNROAD{
		height:293.4vw;
	}

	#MapKichijojiSUNROAD svg{
		width:100%;
		top:0;
		left:0;
		opacity:1;
/*
		top:initial;
		left:initial;
*/
	}

/*
	#MapKichijojiSUNROAD svg{
		margin:-295px 0 0 -80px;
		margin:-295px 0 0 -13.3vw;
	}

	#MapKichijojiSUNROAD svg.AreaA_ON{		width:464.5vw;	margin:-250vw 0 0 -266vw;}
*/

}

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

	#Monitor{
		width:340px;
		top:71px;
		right:4px;
	}

	#Monitor{
		padding:8px 8px;
		min-height:initial;
	}

	#MapGuide br,
	#MapGuide{
		font-size:18px;
		line-height:20px;
		font-family:'BIZ UDPGothic';
		font-size:12px;
		letter-spacing:-0.5px;
	}

	#ShopInfo{
		width:320px;
		margin:0;
	}

	#ShopInfo ul li{
		margin:4px 0 0;
		line-height:24px;
		height:24px;
		height:auto;
	}

	#ShopInfo svg.svbIcon{
		width:20px;
		height:22px;
		min-width:22px;
		margin:2px 2px 0;
		margin:0px 1px 0;
	}

	#ShopInfo ul li h3{
		line-height:24px;
		font-size:14px;
	}

	#ShopInfo ul li a span{
		width:32px;
		height:24px;
		min-width:32px;
		font-size:14px;
		line-height:22px;
	}

}

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

	#Monitor{
		border:0px solid rgba(0,0,0,0);
	}

	#ShopInfo{
		width:320px;
		margin:5px 0px 0px -5px;
		margin:8px 0 0;
	}

	#ShopInfo ul li{
		line-height:23px;
		margin:4px 0 0;
	}

	#ShopInfo ul li h3{
		line-height:23px;
		font-size:12px;
		font-weight:bold;
		font-family:'Mamelon';
		font-family:'BIZ UDPGothic';
	}

}

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

	#Monitor{
		width:320px;
		top:71px;
		right:0;
	}

	#ShopInfo{
		width:304px;
		margin:0px 0 0;
	}

}


@media only screen and (max-height:666px){

	#ShopInfo{
		max-height:413px;
		overflow-y:scroll;
	}

}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

.AR .container {
	max-width: 900px;
	margin: 0 auto;
	background-color: #f3ebd5; /* 内側のクリーム色背景 */
	border-radius: 20px;
	padding: 60px 50px;
	box-sizing: border-box;
}

.AR h2 {
	text-align: center;
	font-size: 28px;
	margin-top: 0;
	margin-bottom: 25px;
}

.AR p.desc {
	text-align: center;
	line-height: 1.8;
	margin-bottom: 50px;
	font-size: 15px;
}

/* ====== ARの遊び方セクション ====== */
.AR .ar-howto h3 {
	text-align: center;
	font-size: 22px;
	margin-bottom: 15px;
}

.AR .howto-box {
	background-color: #fff;
	border-radius: 12px;
	padding: 30px;
	margin-top:30px;
}

.AR .howto-box-title {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 20px;
}

.AR .steps-container {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 15px;
}

.AR .step {
	flex: 1;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;

	border-radius:18px;
	padding:0 0 5px;
}

.AR div.step:nth-child(1),
.AR div.step:nth-child(5){
	background-color:var(--IRO-Mint);
}

.AR div.step:nth-child(3),
.AR div.step:nth-child(7){
	background-color:rgba(243,210,198,1.0);
}

.AR .step-title {
	font-weight: bold;
	margin-bottom: 10px;
	font-size: 15px;
}

.AR .step-img {
	width: 100%;
	margin-bottom: 15px;
}

.AR .step-img img {
	width: 100%;
	max-width: 140px;
	height: auto;
	display: block;
	margin: 0 auto;
}

.AR .step-text,
.AR .step-text br{
	font-size: 13px;
	line-height: 1.5;
	text-align: center;
}

.AR .arrow {
	width: 0;
	height: 0;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 15px solid #d4c4a8; /* 矢印の色 */
	margin-top: 60px;
	flex-shrink: 0;

	margin-top:calc(120px + 0px);
}

/* ====== ARスポットセクション ====== */
.AR .spots-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	margin-top: 30px;
}

.AR .spot-item {
	display: flex;
	flex-direction: column;
}

.AR .spot-img-wrapper {
	position: relative;
	margin-bottom: 10px;
}

.AR .spot-img-wrapper img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	display: block;
}

.AR .spot-badge {
	position: absolute;
	top: 6px;
	left: 6px;
	width: 26px;
	height: 26px;
	background: linear-gradient(135deg, #f08960, #e24e39);
	color: #fff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	font-size: 14px;
	box-shadow: 1px 1px 4px rgba(0,0,0,0.3);
	z-index: 2;
}

.AR .spot-title {
	font-weight: bold;
	font-size: 15px;
	margin-bottom: 5px;
}

.AR .spot-desc {
	font-size: 12px;
	line-height: 1.4;
	color: #333;
	margin: 0;
}

/* ====== MAPボタン ====== */
.AR .map-btn-wrapper {
	text-align: center;
	margin-top: 20px;
}

.AR .map-btn {
	display: inline-block;
	background-color: #3b2c35;
	color: #fff;
	text-decoration: none;
	padding: 16px 50px;
	border-radius: 6px;
	font-weight: bold;
	font-size: 16px;
	transition: opacity 0.3s;

	background-color:var(--IRO-Purple);
}

.AR .map-btn:hover {
	opacity: 0.8;
}

.AR .note-text {
	text-align: center;
	color: #d11c1c;
	font-size: 14px;
	margin-top: 20px;
	line-height: 1.8;
	font-weight: bold;
}


/* ====== レスポンシブ (max-width: 768px) ====== */
@media (max-width: 768px) {
/*
	body.AR {
		padding: 20px 15px;
	}
	.AR .container {
		padding: 40px 25px;
	}
*/
	.AR .pc-only {
		display: none; /* スマホ・タブレットでは改行を解除 */
	}
	.AR .steps-container {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 30px 20px;
	}
	.AR .arrow {
		display: none; /* グリッド化に伴い矢印は非表示 */
	}
	.AR .spots-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* ====== レスポンシブ (max-width: 450px) ====== */
@media (max-width: 450px) {
	.AR h2 {
		font-size: 24px;
	}
	.AR p.desc {
		font-size: 14px;
		text-align: left;
	}
	.AR .ar-howto h3 {
		font-size: 18px;
	}
	.AR .howto-box {
		padding: 20px 15px;
	}
	.AR .steps-container {
		grid-template-columns: 1fr;
		gap: 30px;
	}
	.AR .spots-grid {
		grid-template-columns: 1fr;
	}
	.AR .map-btn {
		width: 100%;
		box-sizing: border-box;
		padding: 16px 20px;
	}
}

/* ====== レスポンシブ (max-width: 350px) ====== */
@media (max-width: 350px) {
	.AR .container {
		padding: 30px 15px;
	}
	.AR h2 {
		font-size: 20px;
	}
	.AR .ar-howto h3 {
		font-size: 16px;
	}
	.AR .spot-title {
		font-size: 14px;
	}
	.AR .spot-desc {
		font-size: 11px;
	}
	.AR .map-btn {
		font-size: 14px;
		padding: 14px 10px;
	}
	.AR .note-text {
		font-size: 12px;
	}
}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

.About main{
	--bg-orange: #f08119;
	--bg-card: #f6efe3;
	--text-main: #333;
	--text-orange: #f08119;
	--btn-bg: #333;
}

.About .wrapper {
	width: 100%;
	padding: 40px 20px;
}

.About .container {
	max-width: 900px;
	margin: 0 auto;
	/*background-color: var(--bg-card);*/
	border-radius: 20px;
	padding: 60px 80px;
	position: relative;

	/*overflow:hidden;*/
}

.About .hero-wrapper {
	text-align: center;
	margin-bottom: 50px;
}

.About .hero-img {
	max-width: 100%;
	height: auto;
	border-radius: 20px;
}

.About .sec-title {
	text-align: center;
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 25px;
}

.About .sec-subtitle {
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 15px;
}
/*
.About .text-center {
	text-align: center !important;
}
*/
.About .text-block-wrapper {
/*
	text-align: center;
*/
	margin-bottom: 15px;
}

.About .text-block {
	display: inline-block;
	text-align: left;
/*
	line-height: 1.8;
	font-size: 15px;
*/

	text-shadow:1px 1px 0px var(--IRO-Beige),-1px 1px 0px var(--IRO-Beige),-1px -1px 0px var(--IRO-Beige),1px -1px 0px var(--IRO-Beige);
	z-index:11;
}

.About .highlight-large {
	display: block;
	font-size: 22px;
	font-weight: bold;
	color: var(--text-orange);
	margin: 10px 0;
}

.About .text-orange {
	color: var(--text-orange);
	font-weight: bold;
}

.About .link-url {
	display: inline-block;
	color: var(--text-main);
	text-decoration: underline;
/*
	margin-bottom: 15px;
*/
}

.About .btn-wrapper {
	text-align: center;
	margin-top: 30px;
}

.About .btn-ar {
	display: inline-block;
	background-color: var(--btn-bg);
	background-color:var(--IRO-Purple);
	color: #fff;
	padding: 15px 50px;
	border-radius: 5px;
	text-decoration: none;
	font-weight: bold;
	transition: opacity 0.3s;
}

.About .btn-ar:hover {
	opacity: 0.8;
}

.About .row-rain {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 30px;
}

.About .rain-text {
	flex: 1;
	text-align: left;
	line-height: 1.8;
	font-size: 15px;
}

.About .rain-img-wrapper {
	flex: 1;
	text-align: center;
}

.About .rain-img {
	max-width: 100%;
	height: auto;
}

.About .row-arcade {
	display: flex;
	justify-content: center;
	gap: 20px;
	margin-top: 30px;
}

.About .arcade-img {
	width: 48%;
	height: auto;
}

/* --- Absolute Images (装飾イラスト) --- */
.About .abs-img {
	position: absolute;
	z-index: 10;
	max-width: 130px;
}

.About .img-mob2 { top: 18%; left: -60px; }
.About .img-tomoyuki { top: 32%; right: -60px; }
.About .img-takashi { top: 52%; left: -60px; }
.About .img-mob4 { top: 70%; right: -60px; }
.About .img-mob5 { bottom: 8%; left: -60px; }
.About .img-mob1 { bottom: -20px; right: -40px; max-width: 150px; }


/* =========================================
	 Responsive Design
========================================= */

/* --- max-width: 768px --- */
@media (max-width: 768px) {
	.About .container {
		padding: 50px 40px;
	}
	
	.About .pc-only {
		display: none;
	}

	.About .text-block {
		display: block;
		text-align: left; /* スマホではそのまま左揃えで幅いっぱいに */
	}

	section {
		margin-bottom: 40px;
	}

	/* Flexboxの縦積み */
	.About .row-rain {
		flex-direction: column;
		align-items: center;
	}
	.About .rain-text {
		width: 100%;
		margin-bottom: 20px;
	}

	.About .row-arcade {
		flex-direction: column;
	}
	.About .arcade-img {
		width: 100%;
	}

	/* Absolute Images の調整 */
	.About .abs-img {
		max-width: 100px;
	}
	.About .img-mob2 { left: -30px; }
	.About .img-tomoyuki { right: -30px; }
	.About .img-takashi { left: -30px; }
	.About .img-mob4 { right: -30px; }
	.About .img-mob5 { left: -30px; }
	.About .img-mob1 { right: -20px; max-width: 120px; }
}

/* --- max-width: 450px --- */
@media (max-width: 450px) {
	.About .wrapper {
		padding: 20px 10px;
	}
	.About .container {
		padding: 40px 20px;
	}

	.About .main-title {
		font-size: 24px;
	}

	.About .sec-title {
		font-size: 18px;
	}

	.About .highlight-large {
		font-size: 18px;
	}

	.About .btn-ar {
		padding: 15px 30px;
		width: 100%;
		text-align: center;
	}

	/* コンテンツにかぶりすぎるのを防ぐため透過・縮小 */
	.About .abs-img {
		max-width: 80px;
		opacity: 0.6; 
	}
	.About .img-mob2 { left: -10px; }
	.About .img-tomoyuki { right: -10px; }
	.About .img-takashi { left: -10px; }
	.About .img-mob4 { right: -10px; }
	.About .img-mob5 { left: -10px; }
	.About .img-mob1 { right: -10px; max-width: 90px; }
}

/* --- max-width: 350px --- */
@media (max-width: 350px) {
	.About .container {
		padding: 30px 15px;
	}

	.About .main-title {
		font-size: 20px;
	}

	.About .sec-title {
		font-size: 16px;
	}

	.About .text-block, .rain-text {
		font-size: 14px;
	}

	/* 画面が小さすぎる場合は被って読めなくなるため非表示 */
	.About .abs-img {
		display: none; 
	}
}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

/* =========================================
	 Base Styles
=========================================
body {
	margin: 0;
	padding: 0;
	font-family: "Hiragino Kaku Gothic ProN", "Noto Sans JP", "メイリオ", Meiryo, sans-serif;
	color: #1a1a1a;
}
*/
.Access .page-wrapper {
	/*background-color: #c8d8cd; // 外側の薄い緑の背景*/
	padding: 40px 20px;
}

.Access .access-container {
	max-width: 900px;
	margin: 0 auto;
	background-color: #f2ead7; // 内側の薄いベージュの背景
	background-color: #fff; // 内側の薄いベージュの背景
	border-radius: 40px;
	padding: 60px 50px;
	box-sizing: border-box;
}

/* =========================================
	 Typography & Elements
========================================= */
.Access .page-title {
	text-align: center;
	font-size: 36px;
	font-weight: 900;
	margin: 0 0 20px 0;
	letter-spacing: 2px;
}

.Access .subtitle {
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 40px 0;
}

.Access .map-illustration {
	text-align: center;
	margin-bottom: 50px;
}

.Access .map-illustration img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

.Access .section-title {
	font-size: 20px;
	font-weight: bold;
	margin: 0 0 20px 0;
}

.Access .subsection-title {
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 15px 0;
	border-bottom: 4px solid #f18c00; /* オレンジ色の下線 */
	padding-bottom: 8px;
}

/* =========================================
	 Train Access Section
========================================= */
.Access .train-access-box {
	background-color: #ffffff;
	padding: 40px;
	margin-bottom: 50px;
}

.Access .route-map {
	text-align: center;
	margin-bottom: 30px;
}

.Access .route-map img {
	max-width: 100%;
	height: auto;
}

.Access .time-tables {
	display: flex;
	gap: 60px;
	justify-content: flex-start;
}

.Access .time-table {
	flex: 1;
}

.Access .line-name {
	display: inline-block;
	color: #ffffff;
	padding: 6px 16px;
	font-size: 14px;
	font-weight: bold;
	margin: 0 0 15px 0;
}

.Access .line-name.jr {
	background-color: #f08323;
}

.Access .line-name.keio {
	background-color: #7d619b;
}

.Access .time-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.Access .time-list li {
	display: flex;
	justify-content: flex-start;
	margin-bottom: 12px;
	font-size: 15px;
	font-weight: bold;
}

.Access .time-list li .station{
	width: 165px;
}

/* =========================================
	 Airport & Google Map Section
========================================= */
.Access .airport-text {
	font-size: 14px;
	font-weight: bold;
	line-height: 1.6;
	margin: 0 0 20px 0;
}

.Access .google-map-area {
	background-color: #ccc;
	width: 100%;
	height: 450px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #000;
	font-weight: bold;
	font-size: 16px;
}

/* =========================================
	 Responsive Design
========================================= */

/* Max-width: 768px */
@media screen and (max-width: 768px) {
	.Access .page-wrapper {
		padding: 20px 15px;
	}
	
	.Access .access-container {
		padding: 40px 30px;
		border-radius: 20px;
	}

	.Access .time-tables {
		flex-direction: column;
		gap: 30px;
	}
	
	.Access .google-map-area {
		height: 350px;
	}
}

/* Max-width: 450px */
@media screen and (max-width: 450px) {
	.Access .access-container {
		padding: 30px 20px;
		border-radius: 15px;
	}

	.Access .page-title {
		font-size: 28px;
	}

	.Access .subtitle {
		font-size: 16px;
		margin-bottom: 30px;
	}

	.Access .section-title {
		font-size: 18px;
	}

	.Access .subsection-title {
		font-size: 16px;
	}

	.Access .train-access-box {
		padding: 25px 15px;
	}

	.Access .time-list li {
		font-size: 14px;
	}

	.Access .time-list li .station{
		width: 150px;
	}

	.Access .google-map-area {
		height: 300px;
	}
}

/* Max-width: 350px */
@media screen and (max-width: 350px) {
	.Access .page-wrapper {
		padding: 10px;
	}

	.Access .access-container {
		padding: 25px 15px;
	}

	.Access .page-title {
		font-size: 24px;
		margin-bottom: 15px;
	}

	.Access .subtitle {
		font-size: 14px;
		margin-bottom: 25px;
	}

	.Access .time-list li {
		font-size: 13px;
		flex-flow:row nowrap; /* 要素を縦並びに変更 */
		gap: 4px;
		margin-bottom: 15px;
	}

	.Access .time-list li .station{
		width:150px;
	}

	.Access .time-list li .time{
		width:60px;
	}

	.Access .airport-text {
		font-size: 13px;
	}

	.Access .google-map-area {
		height: 250px;
	}
}
/*////////////////////////////////////////////////////////////////////////////////////////////////*/

.History main{
	--primary-color: #f7705b; /* 第X期の背景色 */
	--title-color: #ff9f8f; /* 第X期 タイトルの色 */
	--text-color: #333;
	--bg-color: #f4efdf; /* 背景色 */
	--timeline-line-color: #a0a0a0; /* タイムラインの線と丸の色 */
}

.History section{
	padding:initial;
}
/* --- メインコンテンツ --- */
.History .container {
	max-width: 1200px; /* PCなど大画面での最大幅 */
	margin: 0 auto;
	padding: 40px 20px;
}

.History .history {
	display: flex;
	flex-direction: column;
}

/* --- 第X期ヘッダー --- */
.History .era-header {
	background-color:var(--IRO-Orange);
	color: #fff;
	padding: 10px 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-radius: 4px;
	margin-bottom: 20px;
	font-size: 1.1em;
}

.History .era-title {
/*
	color: var(--title-color);
*/
	font-weight: bold;
	padding:0 0 0  28px;
}

.History .era-title::before{
	content: '';
	width:20px;
	height:20px;
	border-radius:50%;
	top:5px;
	bottom: 0;
	position: absolute;
	background-color:rgba(255,255,255,1.0);
	background-color:var(--IRO-Purple);
	display:block;
	left:0;
}

.History .era-years {
	font-size: 0.9em;
}

/* --- タイムライン（CSS） --- */
.History .timeline {
	list-style: none;
	padding: 0 0 0 20px; /* 左側にタイムラインの線を引くスペース */
	margin: 0;
	position: relative; /* 線を描画するためのベース */
}

/* タイムラインの線（CSS） */
.History .timeline::before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 29px; /* 丸の真ん中に線を引く */
	width: 2px;
	background-color: var(--timeline-line-color);

	top:-70px;
	height:calc(100% + 85px);
	z-index:1;
}

.History .timeline-item {
	position: relative;
	padding-bottom: 20px; /* 項目間の余白 */
	padding-left: 30px; /* 丸印と文字の間の余白 */
}

/* タイムラインの丸印（CSS） */
.History .timeline-item::after {
	content: '';
	position: absolute;
	left: 0;
	top: 6px; /* 文字の高さに合わせる */
	width: 12px;
	height: 12px;
	background-color: var(--timeline-line-color);
	border-radius: 50%;
	z-index: 1; /* 線より手前に表示 */

	left: 4px;
	top: 9px; /* 文字の高さに合わせる */
}

/* 各期最後の線は表示しない 
.History .history:last-child .timeline::before {
	display: none;
}
*/
.History .date-text {
	font-size: 0.9em;
	color: #555;
	margin-bottom: 5px;
}

.History .history-text {
	margin: 0;
}

/* --- レスポンシブ (Responsive) --- */

/* 768px */
@media screen and (max-width: 768px) {
	.History .container {
		max-width: 768px;
		padding: 20px;
	}
}

/* 450px */
@media screen and (max-width: 470px) {

	.History .era-years span{
		display:none;
	}

}

/* 450px */
@media screen and (max-width: 450px) {
	.History .container {
		max-width: 450px;
		padding:20px 8px;
	}

	.History .era-header{
		padding:10px 20px 10px 8px;
	}

	.History .timeline {
		padding: 0 0 0 8px; /* 左側にタイムラインの線を引くスペース */
	}

	.History .timeline::before {
		top:-63px;
		left:17px;
		height:calc(100% + 77px);
	}

}

/* 350px */
@media screen and (max-width: 350px) {
	.History .container {
		max-width: 350px;
	}
	.History .era-header {
		flex-direction: column;
		text-align: left;
		align-items: flex-start;
	}
	.History .era-years {
		margin-top: 5px;
	}
	.History .timeline {
		padding-left: 10px;
	}
	.History .timeline::before {
		left:17px;
	}
}

.History .era-header{
	margin-bottom:10px;
}

.History .era-Sub{
	font-size:22px;
	font-weight:bold;
	color:var(--IRO-Orange);
	margin-bottom:20px;
	padding:0 0 0 50px;
}

.History .history-text{
	list-style:disc;
}

.History .timeline-item ol{
	margin:0 0 0 8px;
}


/*////////////////////////////////////////////////////////////////////////////////////////////////*/

.Broadcast main{
	/* 全体の薄緑色の背景 */
	background-color: #CBE6D8;
	font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif;
	color: #111;
	line-height: 1.5;
}

/* =========================================
   PC向け 基本レイアウト
========================================= */
.Broadcast .container {
	padding: 50px 20px;
}

/* ベージュ色のコンテンツエリア */
.Broadcast .content-box {
	background-color: #F1EBD8;
	max-width: 900px;
	margin: 0 auto;
	padding: 70px 40px;
	border-radius: 40px;
}
/*
.Broadcast .page-description {
	font-size: 16px;
	text-align: center;
	line-height: 1.8;
	margin-bottom: 50px;
	font-weight: 500;
}
*/
.Broadcast .page-description {
	max-width:600px;
	margin:0 auto;
}

/* PC表示でのみ改行させるクラス */
.Broadcast .br-pc {
	display: inline;
}

/* 白いスケジュールボックス */
.Broadcast .schedule-box {
	background-color: #fff;
	max-width: 600px;
	margin:30px auto 0;
	padding: 40px;
	border-radius: 12px;
}

.Broadcast .schedule-title {
	font-size: 22px;
	font-weight: 900;
	text-align: center;
	margin-bottom: 20px;
	letter-spacing: 0.05em;
}

.Broadcast .schedule-list {
	list-style: none;
}

/* スケジュールの各行 */
.Broadcast .schedule-item {
	display: flex;
	align-items: center;
	margin-bottom: 8px;
	padding: 4px 15px 4px 4px;
}

.Broadcast .schedule-item:last-child {
	margin-bottom: 0;
}

/* 背景色の交互適用 (奇数はピンク、偶数は緑) */
.Broadcast .schedule-item:nth-child(odd) {
	background-color: #E6C1B9;
}
.Broadcast .schedule-item:nth-child(even) {
	background-color: #AAE0CE;
}

/* 時刻表示部分（白背景） */
.Broadcast .time {
	background-color: #fff;
	font-size: 20px;
	font-weight: bold;
	padding: 6px 15px;
	width: 90px;
	text-align: center;
}

/* 担当者名 */
.Broadcast .name {
	font-size: 18px;
	margin-left: 20px;
	font-weight: 500;
	flex: 1;
}

/* 音声アイコン */
.Broadcast .icon {
	display: flex;
	align-items: center;
	justify-content: center;

	display:none;
}
.Broadcast .icon svg {
	width: 24px;
	height: 24px;
	fill: #111;
}

/* =========================================
   レスポンシブ - タブレット向け (768px以下)
========================================= */
@media screen and (max-width: 768px) {
	.Broadcast .container {
		padding: 30px 15px;
	}
	.Broadcast .content-box {
		padding: 50px 30px;
		border-radius: 30px;
	}
	.Broadcast .page-title {
		font-size: 28px;
	}
	/* 画面幅が狭いときは自然な改行に任せる */
	.Broadcast .br-pc {
		display: none;
	}
	.Broadcast .schedule-box {
		padding: 30px 20px;
	}
	.Broadcast .time {
		font-size: 18px;
		width: 80px;
		padding: 6px 10px;
	}
	.Broadcast .name {
		font-size: 16px;
		margin-left: 15px;
	}
}

/* =========================================
   レスポンシブ - スマホ向け (450px以下)
========================================= */
@media screen and (max-width: 450px) {
	.Broadcast .container {
		padding: 20px 10px;
	}
	.Broadcast .content-box {
		padding: 30px 15px;
		border-radius: 20px;
	}
	.Broadcast .page-title {
		font-size: 22px;
		margin-bottom: 20px;
	}
	.Broadcast .page-description {
		font-size: 14px;
		margin-bottom: 30px;
	}
	.Broadcast .schedule-box {
		padding: 20px 15px;
	}
	.Broadcast .schedule-title {
		font-size: 18px;
	}
	.Broadcast .schedule-item {
		margin-bottom: 6px;
		padding: 3px 10px 3px 3px;
	}
	.Broadcast .time {
		font-size: 16px;
		width: 70px;
		padding: 5px 8px;
	}
	.Broadcast .name {
		font-size: 14px;
		margin-left: 10px;
	}
	.Broadcast .icon svg {
		width: 20px;
		height: 20px;
	}
}

/* =========================================
   レスポンシブ - 小型スマホ向け (350px以下)
========================================= */
@media screen and (max-width: 350px) {
	.Broadcast .content-box {
		padding: 20px 10px;
		border-radius: 15px;
	}
	.Broadcast .page-title {
		font-size: 18px;
	}
	.Broadcast .page-description {
		font-size: 13px;
	}
	.Broadcast .schedule-box {
		padding: 15px 10px;
	}
	.Broadcast .schedule-title {
		font-size: 16px;
	}
	.Broadcast .time {
		font-size: 14px;
		width: 55px;
		padding: 4px 5px;
	}
	.Broadcast .name {
		font-size: 12px;
		margin-left: 8px;
	}
	.Broadcast .icon svg {
		width: 16px;
		height: 16px;
	}
}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

.Wifi main{
	background-color: #d1e0d5; /* 外側の薄いグリーンの背景色 */
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	color: #1a1a1a;
	padding: 40px 20px;
	line-height: 1.6;
}

/* 中央のコンテンツエリア */
.Wifi .container {
	background-color: #f3ebd8; /* 内側のクリーム色の背景色 */
	max-width: 800px;
	margin: 0 auto;
	border-radius: 20px;
	padding: 60px 80px;
}

.Wifi .intro-text {
	font-size: 16px;
	margin-bottom: 40px;
}

/* 画像エリア */
.Wifi .image-area {
	text-align: center;
	margin-bottom: 50px;
}

.Wifi .wifi-images {
	display: flex;
	justify-content: center;
	margin-bottom: 15px;
}

.Wifi .wifi-logo {
	max-width: 100%;
	height: auto;
	width: 320px; /* 画像の想定サイズ */
}

.Wifi .image-caption {
	font-size: 14px;
	font-weight: bold;
}

/* サービス内容（テーブル風リスト） */
.Wifi .service-details {
	margin-bottom: 50px;
}

.Wifi .service-details h3 {
	font-size: 20px;
	margin-bottom: 20px;
}

.Wifi .service-details dl {
	border-top: 1px solid #1a1a1a;
}

.Wifi .service-row {
	display: flex;
	border-bottom: 1px dotted #888;
	padding: 16px 0;
}

.Wifi .service-row:last-child {
	border-bottom: 1px solid #1a1a1a;
}

.Wifi .service-row dt {
	width: 120px;
	font-weight: bold;
	flex-shrink: 0;
}

.Wifi .service-row dd {
	flex-grow: 1;
}

/* フッター注釈 */
.Wifi .footer-note {
	font-size: 14px;
	line-height: 1.8;
}

.Wifi .red-link {
	word-break: break-all; /* スマホでURLがはみ出さないようにする */
}

.Wifi .red-link:hover {
	text-decoration: underline;
}

/* =========================================
	 Responsive Styles
========================================= */

/* タブレット・小さめのPC向け (768px以下) */
@media screen and (max-width: 768px) {
	.Wifi .container {
		padding: 50px 40px;
	}
	.Wifi h1 {
		font-size: 28px;
		margin-bottom: 40px;
	}
	.Wifi h2 {
		font-size: 18px;
	}
	.Wifi .intro-text {
		font-size: 15px;
	}
	.Wifi .red-link {
		font-size: 16px;
	}
}

/* スマートフォン向け (450px以下) */
@media screen and (max-width: 450px) {
	.Wifi .container {
		padding: 30px 20px;
		border-radius: 15px;
	}
	.Wifi h1 {
		font-size: 22px;
		margin-bottom: 30px;
	}
	.Wifi h2 {
		font-size: 16px;
		margin-bottom: 15px;
	}
	.Wifi .intro-text {
		font-size: 14px;
		margin-bottom: 30px;
	}
	.Wifi .wifi-logo {
		width: 240px;
	}
	.Wifi .service-details h3 {
		font-size: 18px;
	}
	.Wifi .service-row {
		padding: 12px 0;
	}
	.Wifi .service-row dt {
		width: 90px;
		font-size: 14px;
	}
	.Wifi .service-row dd {
		font-size: 14px;
	}
	.Wifi .footer-note {
		font-size: 13px;
	}
	.Wifi .red-link {
		font-size: 14px;
	}
}

/* 小型スマートフォン向け (350px以下) */
@media screen and (max-width: 350px) {
	.Wifi .container {
		padding: 20px 15px;
		border-radius: 10px;
	}
	.Wifi h1 {
		font-size: 18px;
		margin-bottom: 20px;
	}
	.Wifi h2 {
		font-size: 14px;
	}
	.Wifi .intro-text {
		font-size: 13px;
	}
	.Wifi .wifi-logo {
		width: 100%;
	}
	.Wifi .service-row {
		flex-direction: column; /* 横並びから縦並びに変更 */
		border-bottom: 1px dotted #888;
	}
	.Wifi .service-row dt {
		width: 100%;
		margin-bottom: 4px;
	}
	.Wifi .red-link {
		font-size: 13px;
	}
}

/*////////////////////////////////////////////////////////////////////////////////////////////////*/

.Privacypolicy section h1{
	margin:0 0 20px;
}

.Privacypolicy section ul li{
	margin:20px 0 0;
}

.Privacypolicy section ul li p,
.Privacypolicy section ul ol{
	margin:0 0 0 20px;
}

.Privacypolicy section ul ol li{
	margin:initial;
}

.Privacypolicy section address{
	margin:20px 0 0;
}

.Privacypolicy section address p:nth-child(4){
	margin:20px 0 0 20px;
}
/*////////////////////////////////////////////////////////////////////////////////////////////////*/

/* =========================================
	 ベースカラー・設定
========================================= */
.Contact main{
	--bg-outer: #e2b8b2; /* 外側のくすみピンク */
	--bg-inner: #f3eedc; /* 内側のベージュ */
	--text-main: #2b1f2b; /* 濃い紫系ブラック */
	--text-star: #f08922; /* オレンジ */
	--border-color: #777777; /* 枠線 */
}

/* =========================================
	 レイアウト・基本スタイル
========================================= */
.Contact .contact-wrapper {
/*
	background-color: var(--bg-outer);
*/
	padding: 60px 20px;
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	color: var(--text-main);
}

.Contact .contact-container {
	/*background-color: var(--bg-inner);*/
	max-width: 800px;
	margin: 0 auto;
	padding: 60px 80px;
	border-radius: 20px;
	box-sizing: border-box;
}

.Contact .contact-title {
	text-align: center;
	font-size: 32px;
	font-weight: 900;
	margin: 0 0 30px;
	letter-spacing: 2px;
}

.Contact .contact-desc {
	text-align: center;
	margin-bottom: 40px;
	font-size: 15px;
	line-height: 1.6;
}
.Contact .contact-desc p { margin: 0; }

.Contact .required-star {
	color: var(--text-star);
	margin-left: 2px;
}

/* =========================================
	 WPCF7 フォーム入力欄
========================================= */
.Contact .form-group {
	margin-bottom: 25px;
}

.Contact .form-group label {
	display: block;
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 8px;
}

/* CF7特有のラップ要素をブロック化 */
.Contact .form-group span.wpcf7-form-control-wrap {
	display: block;
}

/* テキスト・メール・電話・テキストエリア */
.Contact .wpcf7-form-control.form-input,
.Contact .wpcf7-form-control.form-textarea {
	width: 100%;
	box-sizing: border-box;
	padding: 14px;
	border: 1px solid var(--border-color);
	border-radius: 4px;
	background-color: #ffffff;
	color: var(--text-main);
	font-size: 16px;
}

.Contact .wpcf7-form-control.form-textarea {
	height: 300px;
	resize: vertical;
}

/* =========================================
	 注意事項・プライバシーポリシー
========================================= */
.Contact .form-notes {
	margin-top: 15px;
	margin-bottom: 35px;
	font-size: 13px;
	line-height: 1.6;
}

.Contact .form-notes p {
	margin: 0 0 5px 0;
	padding-left: 1.2em;
	text-indent: -1.2em; /* ※の2行目以降の字下げ */
}

/* プライバシー同意 (CF7 acceptance対応) */
.Contact .form-agreement {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 40px;
}

/* CF7が出力する不要な余白を消す */
.Contact .form-agreement span.wpcf7-form-control-wrap { margin: 0; }
.Contact .form-agreement span.wpcf7-list-item { margin: 0; padding: 0; }
.Contact .form-agreement label { display: flex; align-items: center; cursor: pointer; }

/* カスタムチェックボックス */
.Contact .form-agreement input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	width: 24px;
	height: 24px;
	border: 1px solid var(--border-color);
	background-color: #ffffff;
	border-radius: 2px;
	margin: 0 10px 0 0;
	cursor: pointer;
	position: relative;
}

.Contact .form-agreement input[type="checkbox"]:checked::after {
	content: "";
	position: absolute;
	top: 3px;
	left: 7px;
	width: 6px;
	height: 12px;
	border: solid var(--text-main);
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

/* =========================================
	 送信ボタン
========================================= */
.Contact .form-submit {
	text-align: center;
	position: relative;
}

.Contact .wpcf7-submit.submit-btn {
	background-color: var(--text-main);
	color: #ffffff;
	border: none;
	border-radius: 4px;
	padding: 18px;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 2px;
	cursor: pointer;
	width: 100%;
	max-width: 280px;
	transition: opacity 0.3s;
}

.Contact .wpcf7-submit.submit-btn:hover {
	opacity: 0.8;
}

/* CF7 送信中のぐるぐるアイコン位置調整 */
.Contact .form-submit .wpcf7-spinner {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	margin-left: 15px;
}


/* =========================================
	 レスポンシブデザイン (指定ブレイクポイント)
========================================= */

/* タブレット (768px以下) */
@media screen and (max-width: 768px) {
	.Contact .contact-wrapper {
		padding: 40px 15px;
	}
	.Contact .contact-container {
		padding: 50px 40px;
	}
	.Contact .contact-title {
		font-size: 28px;
	}
}

/* スマートフォン (450px以下) */
@media screen and (max-width: 450px) {
	.Contact .contact-wrapper {
		padding: 20px 10px;
	}
	.Contact .contact-container {
		padding: 40px 20px;
		border-radius: 15px;
	}
	.Contact .contact-title {
		font-size: 24px;
		margin-bottom: 20px;
	}
	.Contact .contact-desc {
		font-size: 14px;
		margin-bottom: 30px;
	}
	.Contact .form-group label {
		font-size: 15px;
	}
	.Contact .wpcf7-form-control.form-input {
		padding: 12px;
		font-size: 15px;
	}
	.Contact .wpcf7-form-control.form-textarea {
		height: 200px;
	}
	.Contact .form-agreement {
		font-size: 16px;
	}
	.Contact .form-agreement input[type="checkbox"] {
		width: 22px;
		height: 22px;
	}
	/* スマホでは送信ボタンを横幅いっぱいにする */
	.Contact .wpcf7-submit.submit-btn {
		max-width: 100%;
	}
}

/* 小さめのスマートフォン (350px以下) */
@media screen and (max-width: 350px) {
	.Contact .contact-wrapper {
		padding: 15px 5px;
	}
	.Contact .contact-container {
		padding: 30px 15px;
		border-radius: 10px;
	}
	.Contact .contact-title {
		font-size: 22px;
	}
	.Contact .contact-desc {
		font-size: 13px;
	}
	.Contact .form-group label {
		font-size: 14px;
	}
	.Contact .form-notes {
		font-size: 12px;
	}
	.Contact .form-agreement {
		font-size: 14px;
	}
	.Contact .form-agreement input[type="checkbox"] {
		width: 20px;
		height: 20px;
		margin-right: 6px;
	}
}
/*////////////////////////////////////////////////////////////////////////////////////////////////*/
