@charset "utf-8";
/*/////////////////////////////////////////////////////////////////////////
ポケモンローカルActs
/////////////////////////////////////////////////////////////////////////*/
* { margin:0; padding:0; box-sizing:border-box; -webkit-box-sizing:border-box;}
html, body { height:100%;}
html { font-family:'Noto Sans JP', "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;}
body { font-size:62.5%; line-height:1; -webkit-text-size-adjust:100%;}
h1, h2, h3, h4, h5, h6 { font-size:100%;}
article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary { display:block;}
audio,canvas,progress,video { display:inline-block;}
a,embed,object,button { outline:none;}
img { border:none; box-sizing:content-box; -webkit-box-sizing:content-box;}
hr { display:none;}
li { list-style:none;}
a { background-color:transparent;}
iframe { border:0;}

/*＠common
/////////////////////////////////////////////////////////////////////*/
body {
	background:url(../img/bg_dot.png) center 0;
	background-size:auto 12px;
	font-weight:400; text-align:center; color:#222;
	min-width:1140px;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
	-webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
a { color:#222; text-decoration:none; transition:all 0.2s;}
.sp a:active { -webkit-transition:none !important; transition:none !important;}
img { display:block; width:100%; margin:0 auto;}
input, button, textarea, select {
	border:none; border-radius:0; outline:none;
	background:none; vertical-align:baseline; font-family:inherit;
	-webkit-appearance:none; -moz-appearance:none; appearance:none;
	-webkit-transition:all 0.2s; transition:all 0.2s;
}
#container { padding-top:62px; overflow:hidden; position:relative;}
#contents { position:relative;}

/*loading*/
#loading {
	width:100%; height:100%;
	background: #fff url(../img/bg_dot.png) center 0;
	background-size:auto 12px;
	position:fixed; top:0; left:0; z-index:9999;
	}
	#loading div {
		width:100%; height:350px;
		position:absolute; top:50%; left:50%;
		-webkit-transform:translate(-50%, -50%);
		transform:translate(-50%, -50%);
		-webkit-animation:fadeIn 1s;
		animation:fadeIn 1s;
	}
	.loadon #loading div:before {
		content:""; display:block; width:250px; height:200px;
		background:url(../img/logo.png) no-repeat 0 0;
		background-size:405px auto;
		position:absolute; top:0; left:50%;
		-webkit-transform:translateX(-50%);
		transform:translateX(-50%);
		-webkit-animation:fadeIn .3s;
		animation:fadeIn .3s;
	}
	#loading ul {
		width:100%; height:135px;
		font-size:0; text-align:center;
		position:absolute; bottom:0; left:0;
	}
	#loading ul li { display:inline-block; height:100%; position:relative;}
	#loading ul li:after {
		content:""; display:block;
		width:80%; height:14px;
		background:rgba(0, 0, 0, 0.1); border-radius:50%;
		position:absolute; bottom:-2px; left:50%;
		-webkit-transform:translateX(-50%);
		transform:translateX(-50%);
	}
	#loading ul li img {
		width:auto; height:100%; position:relative; z-index:10;
		-webkit-animation:bound 1.3s ease-in-out infinite;
		animation:bound 1.3s ease-in-out infinite;
	}
	#loading ul li:nth-child(1) img { animation-delay:0s;}
	#loading ul li:nth-child(2) img { animation-delay:0.2s;}
	#loading ul li:nth-child(3) img { animation-delay:0.4s;}
	#loading ul li:nth-child(4) img { animation-delay:0.6s;}
	/*manhole*/
	.manhole.loadon #loading div:before {
		width:270px; height:210px;
		background:url(../img/manhole_title.png) no-repeat 0 0;
		background-size:270px auto;
	}
	.manhole #loading ul li { height:80%; padding:0 5px;}
	.manhole #loading ul li:after { width:70%; height:16px; bottom:-6px;}

/*header*/
#header {
	width:100%; height:62px;
	position:absolute; top:0; left:0; z-index:200;
	}
	#header .inner {
		width:100%; height:100%;
		background:#fff; border-bottom:1px solid #f00;
		position:absolute; top:0; left:0;
	}
	#header h1 {
		width:170px; height:140px; background:#fff;
		border-right:1px solid #f00; border-bottom:1px solid #f00;
		position:absolute; top:0; left:0;
	}
	#header h1:before {
		content:""; display:block; width:150px; height:120px;
		background:url(../img/logo.png) no-repeat -255px 0;
		background-size:405px auto;
		text-indent:150%; white-space:nowrap; overflow:hidden;
		position:absolute; top:50%; left:50%;
		-webkit-transform:translate(-50%, -50%);
		transform:translate(-50%, -50%);
	}
	#header h1 a {
		display:block; width:100%; height:100%;
		background:#fff; opacity:0;
		text-indent:150%; white-space:nowrap; overflow:hidden;
		position:absolute; top:-1px; left:0;
	}
	.pc #header h1 a:hover { opacity:0.3;}
	#header .sharebtn {
		height: 100%;
		position: absolute;
		top: 0;
		right: 55px;
	}

/*footer*/
#footer .f1 { padding:60px 0;}
#footer .f2 { background:#5b5b5b; padding:50px 0;}
#footer .f2 .inner { width:1000px; margin:0 auto; position:relative;}
	#footer .otherlink { padding-top:30px;}
	#footer .otherlink li {
		display:inline-block; width:230px; height:90px;
		vertical-align:middle; margin:0 5px;
	}
	#footer .otherlink li a {
		display:block; width:100%; height:100%;
		background:transparent no-repeat;
		background-size:contain;
		text-indent:150%; white-space:nowrap; overflow:hidden;
	}
	#footer .otherlink li.official a { background-image:url(../img/logo_official.png);}
	#footer .otherlink li.daisuki a { background-image:url(../img/logo_daisuki.png); background-position:0 30px;}
	#footer .otherlink li.logo {
		width:190px; height:160px;
		position:absolute; top:0; left:0;
	}
	#footer .otherlink li.logo a:before {
		content:""; display:block; width:250px; height:200px;
		background:url(../img/logo.png) no-repeat 0 0;
		background-size:405px auto;
		position:absolute; top:50%; left:50%;
		-webkit-transform:translate(-50%, -50%) scale(0.75);
		transform:translate(-50%, -50%) scale(0.75);
	}
	#footer .copyright { font-size:10px; font-weight:bold; color:#fff; line-height:1.6;}
#footer .language { background:#000; font-size:14px; font-weight:bold; color:#fff; padding:25px 0 30px;}
	#footer .language ul { padding-top:18px;}
	#footer .language li { display:inline-block; margin:0 15px;}
	#footer .language li a {
		display:inline-block; font-size:16px; color:#fff;
		border-bottom:1px solid #fff; padding-bottom:8px;
	}
	/*hover*/
	.pc #footer .language li a:hover,
	#footer .language li a.this { opacity:0.6;}

#ptop { position:fixed; transition:all 0.5s; visibility:hidden; opacity:0; z-index:998;}
	#ptop a {
		display:block; width:90px; height:90px;
		background:rgba(0, 0, 0, 0.2); border-radius:50px;
		font-size:0; color:transparent; cursor:pointer;
		position:relative;
	}
	#ptop a:before {
		content:""; display:block; width:40px; height:25px;
		background:url(../img/icon_arrow_w.svg) no-repeat;
		background-size:contain;
		position:absolute; top:50%; left:50%;
		-webkit-transform:translate(-50%, -50%);
		transform:translate(-50%, -50%);
	}
	#ptop.end { bottom:140px;}

/*sharebtn*/
.sharebtn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.sharebtn li {
	width: 25px;
	height: 25px;
}
.sharebtn li:not(:last-child) {
	margin-right: 8px;
}
.sharebtn li a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	font-size: 0;
	color: transparent;
	position: relative;
}
.sharebtn li a:before {
	content:"";
	display: block;
	width: 100%;
	height: 100%;
	background: transparent no-repeat;
	background-size: contain;
}
.sharebtn li.tw a:before { background-image: url(../img/icon_x_b.svg);}
.sharebtn li.fb a:before { background-image: url(../img/icon_fb_b.svg);}
.pc .sharebtn li a:hover { opacity: .7;}

/*language*/
.select-language ul {
	width:100px; background:#fff;
	border:1px solid #f00; border-radius:5px;
	position:absolute; top:100%; right:3px; z-index:100;
	padding:10px 0; margin-top:-10px;
	display:none;
	}
	.select-language ul:before {
		content:''; display:block; width:0; height:0;
		position:absolute; bottom:100%; right:10px;
		border:3px transparent solid;
		border-bottom-color:#f00;
		border-width:0 3px 5px 3px;
	}
	.select-language ul:after {
		content:''; display:block; width:0; height:0;
		position:absolute; bottom:100%; right:11px;
		border:2px transparent solid;
		border-bottom-color:#fff;
		border-width:0 2px 4px 2px;
	}
	.select-language ul li a {
		display:block; font-size:14px; color:#f00;
		padding:7px 3px 7px 0; position:relative;
	}
	.select-language ul li a:before,
	.select-language ul li a:after {
		content:''; display:block; width:2px; height:9px;
		background:#f00; border-radius:10px;
		position:absolute; top:9px; right:10px;
		transform:rotate(45deg);
		-webkit-transform:rotate(45deg);
		opacity:0;
	}
	.select-language ul li a:before {
		height:6px;
		transform:rotate(-45deg);
		-webkit-transform:rotate(-45deg);
		top:12px; right:14px;
	}
	.select-language ul li a.this:before,
	.select-language ul li a.this:after { opacity:1;}
	/*hover*/
	.pc .select-language ul li a:hover,
	.sp .select-language ul li a.hover { color:#fff; background:#f00;}
	.pc .select-language:hover ul { display:block;}
	.pc.d2.manhole .select-language ul li a:hover,
	.sp.d2.manhole .select-language ul li a.hover { color:#fff; background:#288e44;}

/*btn*/
.link-btn { text-align:center;}
	.link-btn a {
		display:inline-block; width:390px; height:60px;
		font-size:21px; color:#f00; background:#fff;
		border:1px solid #f00; border-radius:50px;
		margin:0 auto; position:relative; overflow:hidden;
		cursor:pointer;
	}
	.link-btn a:before {
		content:""; border:0 solid #f00; border-radius:50px;
		position:absolute; top:0; bottom:0; left:0; right:0;
		transition:border-width 0.1s ease-out;
	}
	.link-btn a:after {
		content:""; display:block; width:12px; height:18px;
		background:url(../img/icon_arrow.svg) no-repeat;
		background-size:contain;
		position:absolute; top:50%; right:25px;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
		transition:all 0.2s;
	}
	.link-btn a span {
		display:inline-block; width:100%;
		position:absolute; top:50%; left:0;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
	}
	.link-btn.more a span { margin-top:-2px;}
	.link-btn.open a:after {
		-webkit-transform:translateY(-50%) rotate(90deg);
		transform:translateY(-50%) rotate(90deg);
		right:30px; margin-top:1px;
	}
	/*hover*/
	.pc .link-btn a:hover:before { border-width:2px;}
	.sp .link-btn a.hover:before { border-width:1px;}
	.pc .link-btn:not(.open) a:hover:after,
	.sp .link-btn:not(.open) a.hover:after {
		-webkit-transform:translate(4px, -50%);
		transform:translate(4px, -50%);
	}

/*area-list*/
.area-list {
	background:#fff;
	border-top:1px solid #f00;
	border-bottom:1px solid #f00;
	padding:40px 0 30px; position:relative;
	}
	.area-list .outer {
		width:1040px; height:170px;
		margin:0 auto; overflow:hidden;
		position:relative; z-index:10;
	}
	.area-item { width:130px; height:170px; margin:0 10px; outline:none;}
	.area-item a { display:block; width:100%;}
	.area-item span { display:inline-block; vertical-align:top;}
	.area-item .name {
		min-width:75%; font-size:18px; font-weight:bold; color:#f00;
		border-bottom:1px solid #f00; padding-bottom:5px;
		white-space:nowrap;
	}
	.area-item .name:after {
		content:""; display:inline-block; width:6px; height:10px;
		background:url(../img/icon_arrow.svg) no-repeat;
		background-size:contain;
		vertical-align:middle; margin:-3px -15px 0 7px;
		transition:all 0.2s;
	}
	.area-item .pic {
		width:130px; height:130px;
		background:#e1eff4; border-radius:50%;
		margin-bottom:10px; overflow:hidden; position:relative;
		transition:all 0.2s;
	}
	.area-item .pic img { position:absolute; top:0; left:0; transition:all 0.2s;}
	.area-carousel { opacity:0; transition:opacity 0.3s;}
	.area-carousel.slick-initialized { opacity:1;}
	/*hover*/
	.pc .area-item a:hover .pic img { -webkit-transform:scale(1.1); transform:scale(1.1);}
	.pc .area-item a:hover .name:after,
	.sp .area-item a.hover .name:after { -webkit-transform:translateX(3px); transform:translateX(3px);}
	/*arrow*/
	.area-list .arrows-area { width:100%; height:100%; position:absolute; top:0; left:0;}
	.area-list .arrows-area a {
		display:block; width:42px; height:42px;
		background:#fff; border-radius:50%;
		position:absolute; top:50%;
		margin-top:-21px; cursor:pointer;
	}
	.area-list .arrows-area .prev { left:50%; margin-left:-565px;}
	.area-list .arrows-area .next { right:50%; margin-right:-565px;}
	.area-list .arrows-area a:before {
		content:""; display:block; width:14px; height:22px;
		background:url(../img/icon_arrow.svg) no-repeat;
		background-size:contain;
		position:absolute; top:50%; left:50%;
		-webkit-transform:translate(-50%, -50%);
		transform:translate(-50%, -50%);
	}
	.area-list .arrows-area .prev:before {
		-webkit-transform:translate(-50%, -50%) rotate(-180deg);
		transform:translate(-50%, -50%) rotate(-180deg);
		margin-left:-2px;
	}
	.area-list .arrows-area .next:before { margin-left:2px;}

/*sort*/
.sortby { position:absolute; top:57px; left:50%; margin-left:160px; z-index:100;}
	.sortby > li {
		display:inline-block; vertical-align:top;
		font-size:14px; color:#f00; cursor:pointer;
		padding:0 10px; margin:0 5px; position:relative;
	}
	.sortby > li.arr { padding-right:10px;}
	.sortby > li.arr:after {
		content:""; display:block; width:6px; height:10px;
		background:url(../img/icon_arrow.svg) no-repeat;
		background-size:contain;
		position:absolute; top:13px; right:-3px;
		-webkit-transform:rotate(90deg);
		transform:rotate(90deg);
	}
	.sortby > li > a { display:inline-block; color:#f00; padding:10px 2px;}
	.sortby > li ul {
		width:100px; background:#fff;
		border:1px solid #f00; border-radius:5px;
		position:absolute; top:100%; left:50%;
		padding:10px 0; margin:-1px 0 0 -50px;
		display:none;
	}
	.sortby > li ul:before {
		content:''; display:block; width:0; height:0;
		position:absolute; bottom:100%; left:50%; margin-left:-3px;
		border:3px transparent solid;
		border-bottom-color:#f00;
		border-width:0 3px 7px 3px;
	}
	.sortby > li ul:after {
		content:''; display:block; width:0; height:0;
		position:absolute; bottom:100%; left:50%; margin-left:-2px;
		border:2px transparent solid;
		border-bottom-color:#fff;
		border-width:0 2px 5px 2px;
	}
	.sortby > li ul li a { display:block; color:#f00; padding:7px 0;}
	.sortby > li.this > a { border-bottom:1px solid #f00;}
	/*hover*/
	.pc .sortby > li ul li a:hover,
	.sp .sortby > li ul li a.hover { color:#fff; background:#f00;}
	.pc .sortby > li:hover ul { display:block;}

/*hoverline*/
.hoverline {
	width:100%;
	background:linear-gradient(transparent calc(100% - 2px), rgb(0, 0, 0) 2px) no-repeat;
	background-size:0% 100%;
	transition:background-size 0s ease;
	padding-bottom:2px;
}
.hoverline:hover {
	background-size:100% 100%;
	transition:background-size 0.5s ease;
}
.hoverline span {
	width:100%;
	background:linear-gradient(transparent calc(100% - 1px), rgb(0, 0, 0) 1px) no-repeat;
	background-size:100% 100%;
	padding-bottom:2px;
}
.hoverline.green { background-image:linear-gradient(transparent calc(100% - 2px), rgb(40, 142, 68) 2px);}
.hoverline.green span { background-image:linear-gradient(transparent calc(100% - 1px), rgb(40, 142, 68) 2px);}
.hoverline.gray { background-image:linear-gradient(transparent calc(100% - 2px), rgb(81, 81, 81) 2px);}
.hoverline.gray span { background-image:linear-gradient(transparent calc(100% - 1px), rgb(81, 81, 81) 2px);}

/*cookie*/
.cookie-notification {
	width:100%; font-size:16px; color:#fff; line-height:1.3;
	background:#000; padding:30px 0;
	position:fixed; bottom:0; left:0; z-index:2000;
	display:none;
	}
	.cookie-notification p { padding-bottom:15px;}
	.cookie-notification p a { color:#00aeff; border-bottom:1px solid #00aeff;}
	.cookie-notification .cookie-approve {
		display:inline-block; min-width:90px;
		font-size:20px; color:#fff;
		background:#0090d5; border-radius:50px;
		padding:3px 20px; cursor:pointer;
	}

/*＠section
/////////////////////////////////////////////////////////////////////*/
.section-block { border-top:1px solid #f00; padding-bottom:90px;}
	.section-block h2 { font-weight:bold; padding:60px 0 30px; position:relative;}
	.section-block h2 .jp { font-size:33px; color:#f00;}
	.section-block h2 .en {
		display:inline-block; min-width:220px; height:60px;
		font-size:20px; color:#fff; line-height:60px;
		background:#f00; border-radius:50px;
		position:absolute; top:-30px; left:50%;
		-webkit-transform:translateX(-50%);
		transform:translateX(-50%);
		padding:0 45px;
	}
	.section-block h2 .en:before,
	.section-block h2 .en:after {
		content:""; display:block; width:20px; height:20px;
		background:url(../img/icon_mb_w.svg) no-repeat;
		background-size:contain;
		position:absolute; top:50%;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
	}
	.section-block h2 .en:before { left:12px;}
	.section-block h2 .en:after { right:12px;}
	.section-block p { font-size:18px; line-height:2.5;}

	/*infiniteslide*/
	.section-block.goods .outer,
	.section-block.gallery .outer { height:600px; padding-top:20px; margin-bottom:40px; overflow:hidden;}
	.section-block .infiniteslide_wrap { padding-top:10px; margin-top:-10px;}

	/*manhole*/
	.section-block.manhole { padding-bottom:110px;}
	.section-block.manhole .inner ul { font-size:0; text-align:left; padding:0 30px;}
	.section-block.manhole .inner ul li {
		display:inline-block; width:25%; vertical-align:top;
		font-size:18px; line-height:1.4; text-align:center;
		padding:0 15px 28px;
	}
	.section-block.manhole .inner ul li a { display:block; width:100%; transition:none;}
	.section-block.manhole .inner ul li img { margin-bottom:6px;}
	/*hover*/
	.pc .section-block.manhole .inner ul li a:hover img,
	.sp .section-block.manhole .inner ul li a.hover img {
		-webkit-animation:jump 0.3s;
		animation:jump 0.3s;
	}
	/*video*/
	.section-block.video .inner ul { font-size:0; text-align:left; padding-top:10px; margin:0 auto;}
	.section-block.video .inner ul li {
		display:inline-block; width:47.5%; vertical-align:top;
		font-size:18px; font-weight:500; line-height:1.5; text-align:center;
		margin:0 4.8% 40px 0;
	}
	.section-block.video .inner ul li:nth-child(2n) { margin-right:0;}
	.section-block.video .inner ul li > div {
		width:100%; height:0; padding-top:56.25%;
		margin-bottom:10px; position:relative;
	}
	.section-block.video .inner ul li > div iframe { width:100%; height:100%; position:absolute; top:0; left:0;}
	/*event*/
	.section-block.event .inner ul { font-weight:bold; text-align:left;}
	.section-block.event .inner ul li {
		display:table; width:100%; table-layout:fixed;
		padding-bottom:20px; position:relative;
	}
	.section-block.event .inner ul li:last-child { padding-bottom:0;}
	.section-block.event .inner ul li > div { display:table-cell; vertical-align:top;}
	.section-block.event .inner ul li .pic { width:190px;}
	.section-block.event .inner ul li .pic a {
		display:block; width:100%; height:0;
		padding-top:calc(95 / 190 * 100%);
		position:relative; overflow:hidden;
	}
	.section-block.event .inner ul li .pic a img {
		position:absolute; top:50%; left:0;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
	}
	.section-block.event .inner ul li .pic + .txt { padding-left:20px;}
	.section-block.event .inner ul li .date,
	.section-block.event .inner ul li .icon { display:inline-block; vertical-align:top; font-size:14px;}
	.section-block.event .inner ul li .icon a,
	.section-block.event .inner ul li .icon span {
		display:inline-block; font-size:12px; color:#fff;
		background:#f00; border-radius:50px;
		padding:5px 13px 6px; margin:0 6px 5px 0;
	}
	.section-block.event .inner ul li .icon .area {
		color:#f00; background:#fff; border:1px solid #f00;
		padding:4px 13px 5px;
	}
	.section-block.event .inner ul li .title { font-size:16px; line-height:1.8;}
	.section-block.event .inner ul li p {
		width:100%; font-size:14px; font-weight:400; line-height:1.8;
		padding:12px 0 20px; display:none;
	}
	.section-block.event .inner ul li .arr { display:block; cursor:pointer; padding-right:40px; position:relative;}
	.section-block.event .inner ul li .arr:after {
		content:""; display:block; width:13px; height:20px;
		background:url(../img/icon_arrow.svg) no-repeat;
		background-size:contain;
		position:absolute; top:50%; right:5px;
		margin-top:-10px; transition:all 0.3s;
		-webkit-transform:rotate(90deg);
		transform:rotate(90deg);
	}
	.section-block.event .inner ul li .arr span { border:none; padding-bottom:0;}
	.section-block.event .inner ul li .arr.active:after {
		-webkit-transform:rotate(-90deg);
		transform:rotate(-90deg);
	}

	.event .section-block.event .inner ul li .meta { margin-top:-7px;}
	.event .section-block.event .inner ul li .date { padding:10px 12px 3px 0;}
	.event .section-block.event .inner ul li .icon { padding-top:6px;}

/*list*/
.photo-list ul { display:inline-block; width:876px; font-size:0;}
	.photo-list ul li { display:inline-block; width:280px; height:280px; vertical-align:top; margin:6px; position:relative;}
	.photo-list ul li.new:after {
		content:"NEW"; display:block; width:46px; height:46px;
		font-size:14px; font-weight:bold; color:#fff;
		text-align:center; line-height:46px;
		background:#f00; border-radius:50%;
		position:absolute; top:-11px; left:-11px; z-index:30;
		-webkit-animation:wobble-up 2s ease-in-out infinite;
		animation:wobble-up 2s ease-in-out infinite;
	}
	.photo-list ul li.new.on:after {
		-webkit-animation:wobble-up 1s ease-in-out infinite;
		animation:wobble-up 1s ease-in-out infinite;
	}
	.photo-list ul li a {
		display:block; width:100%; height:0; padding-top:100%;
		background:#fff; border-radius:20px; text-align:center;
		position:relative; overflow:hidden;
	}
	.photo-list ul li a img {
		width:auto; height:100%;
		position:absolute; top:50%; left:50%;
		-webkit-transform:translate(-50%, -50%);
		transform:translate(-50%, -50%);
	}
	.photo-list ul li a:before {
		content:""; display:block; width:100%; height:100%;
		background:#f00;
		position:absolute; top:0; left:0; z-index:10;
		opacity:0;
	}
	.photo-list ul li dl {
		width:100%; font-size:20px; color:#fff;
		position:absolute; top:50%; left:0; z-index:20;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
		transition:all 0.3s; opacity:0;
	}
	.photo-list ul li dt {
		display:inline-block; min-width:88px;
		border:2px solid #fff;
		padding:5px 12px; margin-bottom:13px;
	}
	.photo-list ul li .title {
		max-width:90%; line-height:1.4; margin:0 auto 15px;
		display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2;
		max-height:calc(1.4em * 2); overflow:hidden;
	}
	.photo-list ul li .more {
		display:inline-block; min-width:170px;
		font-size:16px; font-weight:500; color:#f00;
		background:#fff; border-radius:50px;
		padding:9px 0 11px;
	}
	.gallery .photo-list ul li dl { font-size:18px;}
	.gallery .photo-list ul li dt { padding-bottom:7px;}
	.gallery .photo-list ul li.item.x2 dl { font-size:22px;}
	.gallery .photo-list ul li.item.x2 dt { font-size:24px;}
	.gallery .photo-list ul li.item.x2 .more { font-size:18px;}
	/*hover*/
	.pc .photo-list ul li a:hover:before { opacity:0.92;}
	.pc .photo-list ul li a:hover dl { opacity:1;}

/*＠TOP
/////////////////////////////////////////////////////////////////////*/
.top #container { padding-top:0;}
.top #header h1 { text-indent:150%; white-space:nowrap; overflow:hidden;}
#top-main {
	width:100%; height:520px;
	background:url(../img/map.png) no-repeat center 75px;
	background-size:auto 380px;
	text-align:left; overflow:hidden;
	padding-top:65px; position:relative;
	}
	#top-main:before {
		content:""; display:block;
		width:100%; height:65px;
		background:#f4f4f4;
		position:absolute; bottom:0; left:0;
	}
	#top-main ul { padding-top:75px; position:relative;}
	#top-main ul li { position:relative;}
	#top-main ul li:after {
		content:""; display:block;
		width:80%; height:35px;
		background:rgba(0, 0, 0, 0.1); border-radius:50%;
		position:absolute; bottom:0; left:50%;
		-webkit-transform:translateX(-50%);
		transform:translateX(-50%);
	}
	#top-main ul li img { width:auto; height:380px; position:relative; z-index:10;}
	#top-main ul li.alt img {
		-webkit-animation:bound 1s;
		animation:bound 1s;
	}
	#top-main ul li.alt:after {
		-webkit-animation:shadow 1s;
		animation:shadow 1s;
	}

/*banner-list*/
#banner-area { background:#fff; position:relative;}
#banner-area:before {
	content:""; display:block;
	width:100%; height:80px;
	background:#f4f4f4;
	position:absolute; top:0; left:0;
}
.banner-list { padding:20px 0; position:relative; z-index:10;}
	.banner-list .outer {
		width:1040px; height:125px;
		margin:0 auto; overflow:hidden;
		position:relative; z-index:10;
	}
	.banner-item { width:250px; height:125px; margin:0 5px; outline:none;}
	.banner-item a { display:block; width:100%;}
	.banner-carousel { opacity:0; transition:opacity 0.3s;}
	.banner-carousel.slick-initialized { opacity:1;}
	/*arrow*/
	.banner-list .arrows { width:100%; height:100%; position:absolute; top:0; left:0;}
	.banner-list .arrows a {
		display:block; width:42px; height:42px;
		background:#fff; border-radius:50%;
		position:absolute; top:50%;
		margin-top:-21px; cursor:pointer;
	}
	.banner-list .arrows .prev { left:50%; margin-left:-565px;}
	.banner-list .arrows .next { right:50%; margin-right:-565px;}
	.banner-list .arrows a:before {
		content:""; display:block; width:14px; height:22px;
		background:url(../img/icon_arrow.svg) no-repeat;
		background-size:contain;
		position:absolute; top:50%; left:50%;
		-webkit-transform:translate(-50%, -50%);
		transform:translate(-50%, -50%);
	}
	.banner-list .arrows .prev:before {
		-webkit-transform:translate(-50%, -50%) rotate(-180deg);
		transform:translate(-50%, -50%) rotate(-180deg);
		margin-left:-2px;
	}
	.banner-list .arrows .next:before { margin-left:2px;}

/*info*/
.top-info { width:880px; font-weight:500; line-height:1.8; text-align:left; margin:0 auto 15px;}
	.top-info li { display:table; width:100%;}
	.top-info li + li { margin-top:3px;}
	.top-info li > div { display:table-cell; vertical-align:baseline; text-align:left;}
	.top-info li .date { width:7.2em; font-size:12px; padding-right:1.5em;}
	.top-info li .link { font-size:16px;}

/*about*/
.top .about { padding:70px 0 75px;}
	.top .about .inner {
		width:880px;
		background:#fff; border:1px solid #f00;
		padding:60px; margin:0 auto;
	}
	.top .about .inner h2 { display:inline-block; font-size:34px; line-height:1.3; color:#f00; margin-bottom:30px;}
	.top .about .inner h2 span { display:inline-block; position:relative;}
	.top .about .inner h2 span:nth-child(1):before,
	.top .about .inner h2 span:nth-child(1):after {
		content:""; display:block; width:34px; height:34px;
		background:url(../img/icon_mb.svg) no-repeat;
		background-size:contain;
		position:absolute; top:50%;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
		margin-top:2px;
	}
	.top .about .inner h2 span:nth-child(1):before { left:-48px;}
	.top .about .inner h2 span:nth-child(1):after { right:-48px;}
	.top .about .inner h2 span:nth-child(2) { display:block; font-size:24px; padding-top:8px;}
	.top .about .inner p { font-size:18px; text-align:left; line-height:2.5;}
	.top .about .inner p:before {
		content:""; display:block; width:320px; height:307px;
		background:url(../img/map2.png) no-repeat;
		background-size:contain;
		float:right; margin:-70px -25px 0 40px;
	}
	.top .about .inner p:after { content:""; clear:both; display:block;}

/*section*/
.top #banner-area .area-list { border:none; padding:20px 0;}
.top .section-block > p { color:#f00;}
.top .section-block > h2 { padding-bottom:5px;}
.top .section-block.about .inner { width:735px; text-align:left; padding-top:10px; margin:0 auto;}
.top .section-block.goods,
.top .section-block.gallery {
	background:#f4f4f4; border-bottom:1px solid #f00;
	padding-bottom:75px; margin-bottom:120px;
	}
	.top .photo-list ul li.new:after { top:-8px; left:-8px;}
.top .section-block.manhole { background:#fff;}
	.top .section-block.manhole .inner { width:1000px; padding:20px 0; margin:0 auto;}
.top .section-block.video { background:#fff; border-bottom:1px solid #f00; padding-bottom:50px;}
	.top .section-block.video .inner { width:845px; padding-top:15px; margin:0 auto;}

/*＠d2
/////////////////////////////////////////////////////////////////////*/
.d2 #contentsIn { background:#fff; padding-top:77px;}
.d2 .section-block { background:#f4f4f4; position:relative;}
	.d2 .section-block h2 { padding-bottom:40px;}
	.d2 .section-block .inner {
		width:1000px; background:#fff; border-radius:20px;
		padding:60px 60px 70px; margin:0 auto;
	}
	.d2 .section-block .inner + .inner { margin-top:30px;}
	.d2 .section-block .inner h3 { font-size:28px; text-align:left; letter-spacing:1px; margin:-5px 0 30px;}
	.d2 .section-block .inner .link-btn { padding-top:50px;}
.d2 .photo-list { padding:0 7px 30px;}
	.d2 .photo-list .grid { display:block; width:auto; margin:0 auto 30px;}
	.d2 .photo-list .grid .item { width:240px; height:240px; margin:7px;}
	.d2 .photo-list .grid .item.x2 { width:494px; height:494px;}
.d2 .searchError { min-height:250px; font-size:24px; line-height:1.3; color:#888; padding:80px 10px;}
.error404 #contents .inner { background:#f4f4f4; border-top:1px solid #f00; padding:80px 0;}
	.error404 #contents .inner h2 { font-size:36px; color:#f00; margin-bottom:30px;}
	.error404 #contents .inner p {
		width:510px; font-size:16px; font-weight:500;
		text-align:left; line-height:1.8; margin:0 auto 60px;
	}
	.error404 #contents .inner p:after {
		content:""; display:block; width:260px; height:160px;
		background:url(../img/404yadon.png) no-repeat;
		background-size:contain;
		margin:60px auto 0;
	}

/*＠municipality
/////////////////////////////////////////////////////////////////////*/
.municipality #contents-main {
	width:100%; height:450px;
	position:relative; overflow:hidden;
	}
	.municipality #contents-main img {
		width:auto; height:100%;
		position:absolute; top:0; left:50%;
		-webkit-transform:translateX(-50%);
		transform:translateX(-50%);
	}

.municipality #contents { display:table; width:100%; table-layout:fixed;}
.municipality #contents > div { display:table-cell; vertical-align:top; position:relative;}
	.municipality #contents > div:before {
		content:""; display:block; width:100%; height:20px;
		background:url(../img/bg_wave1.png) repeat-x;
		background-size:auto 20px;
		position:absolute; top:-20px; left:0;
	}
	.municipality #contents #main:before {
		background-image:url(../img/bg_wave1.png);
		background-position:right 0;
	}
	.municipality #contents #side:before {
		background-image:url(../img/bg_wave2.png);
		background-position:left 0;
	}
/*main*/
.municipality #main { background:#fff; z-index:10;}
.municipality #main .inner { max-width:900px; padding:0 3%; margin:0 auto;}
.municipality #main .link-btn { padding-bottom:30px;}
.municipality .heading { text-align:left; margin-bottom:50px;}
	.municipality .heading h1 {
		display:inline-block; font-size:36px; font-weight:100;
		color:#f00; background:#fff; border:1px solid #f00;
		padding:20px 30px 23px 80px; margin:-40px 0 30px;
		position:relative;
	}
	.municipality .heading h1:before {
		content:""; display:block; width:42px; height:42px;
		background:url(../img/icon_mb.svg) no-repeat;
		background-size:contain;
		position:absolute; top:50%; left:22px;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
	}
	.municipality .heading h1 > span { display:table-cell; vertical-align:middle;}
	.municipality .heading h1 > span:nth-child(1) { font-size:60px; font-weight:bold; white-space:nowrap;}
	.municipality .heading h1 > span:nth-child(2) { padding:5px 10px 0 14px;}
	.municipality .heading h1 > span:nth-child(3) { line-height:1.1; padding-top:5px;}
	.municipality .heading .lead { font-size:16px; line-height:2.2;}
	/*pagelink*/
	.municipality .pagelink { font-size:0; margin-bottom:30px;}
	.municipality .pagelink li { display:inline-block; vertical-align:top; margin:0 6px 6px 0;}
	.municipality .pagelink li a {
		display:inline-block; font-size:16px; color:#f00;
		background:#f1ede7; border-radius:50px;
		padding:5px 15px 7px;
	}
	/*hover*/
	.pc.municipality #main .pagelink li a:hover,
	.sp.municipality #main .pagelink li a.hover { background:#f00; color:#fff;}

.municipality .pokemon { padding-bottom:100px;}
	.municipality .pokemon h2 {
		font-size:20px; color:#fff; margin-bottom:30px;
		background:#f00; border-radius:50px;
		padding:8px 15px 9px;
	}
	.municipality .pokemon .profile {
		max-width:800px; min-height:250px; text-align:left;
		padding-left:280px; margin:0 auto;
		position:relative;
	}
	.municipality .pokemon .profile + .profile { margin-top:20px;}
	.municipality .pokemon .profile h3 { font-size:34px; color:#f00;line-height:1.3; padding-bottom:25px;}
	.municipality .pokemon .profile h3 .num { font-size:28px; margin-right:10px;}
	.municipality .pokemon .profile dl {
		display:inline-block; font-size:14px; line-height:1.5;
		vertical-align:top; margin-bottom:25px;
	}
	.municipality .pokemon .profile dl + dl { margin-left:40px;}
	.municipality .pokemon .profile dl:after { content:""; clear:both; display:block;}
	.municipality .pokemon .profile dt {
		width:4.5em; font-weight:bold; color:#f00;
		padding:2px 0; position:relative; float:left;
	}
	.municipality .pokemon .profile dt:after {
		content:"："; color:#222; font-weight:normal;
		position:absolute; top:2px; right:0;
	}
	.municipality .pokemon .profile dd { padding:2px 0 2px 4.5em;}
	.municipality .pokemon .profile p { font-size:14px; font-weight:500; line-height:1.5;}
	.municipality .pokemon .profile .pic {
		width:240px; height:240px; background:#fff;
		border:1px solid #f00; border-radius:10px;
		position:absolute; top:5px; left:0;
		overflow:hidden;
	}
	.municipality .pokemon .profile .pic img {
		position:absolute; top:50%; left:0;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
	}
.municipality .photo-list ul { width:100%; text-align:left; padding-bottom:25px;}
	.municipality .photo-list ul li { width:31.5%; height:auto; margin:1%;}
	.municipality .photo-list ul li:nth-child(3n) { margin-right:0;}
	.municipality .photo-list ul li a { height:auto; text-align:left; padding-top:0;}
	.municipality .photo-list ul li a .pic {
		width:100%; height:0; padding-top:100%;
		border-radius:20px; overflow:hidden; position:relative;
	}
	.municipality .photo-list ul li a img {
		transition:all 0.25s, transform 0.25s;
		-webkit-backface-visibility:hidden;
		backface-visibility:hidden;
	}
	.municipality .photo-list ul li a:before,
	.municipality .photo-list ul li a:after { display:none;}
	.municipality .photo-list ul li p { line-height:1.5; padding:10px 0 10px 10px;}
	/*hover*/
	.pc.municipality .photo-list ul li a:hover img {
		-webkit-transform:translate(-50%, -50%) scale3d(1.1,1.1,1);
		transform:translate(-50%, -50%) scale3d(1.1,1.1,1);
	}

.municipality #container > .area-list { position:relative; z-index:10;}

/*side*/
.municipality #side { width:320px; background:#f4f4f4; padding-top:30px; z-index:1;}
	.municipality #side .banner { width:100%;}
	.municipality #side .banner a { display:block; width:250px; margin:0 auto 20px;}
	.municipality #side .timeline { padding:30px 2px;}

/*＠manhole
/////////////////////////////////////////////////////////////////////*/
body.manhole { font-family:'M PLUS Rounded 1c', sans-serif;}
.manhole #container { border:20px solid #288e44; padding:0;}
	.manhole #container:before {
		content:""; display:block;
		width:20px; height:100%;
		background:#288e44;
		position:fixed; top:0; right:0; z-index:120;
	}
	.manhole #manhole-main:before,
	.manhole #manhole-main:after {
		content:""; display:block;
		width:100%; height:20px;
		background:#288e44;
		position:fixed; left:0; z-index:120;
	}
	.manhole #manhole-main:before { top:0;}
	.manhole #manhole-main:after { bottom:0;}

/*footer*/
.manhole #footer .f1 { padding:0; margin:75px 0;}
.manhole #footer .f2 { background:#288e44; padding:50px 0 30px;}
.manhole #footer .snsbtn { font-size:0; margin-bottom:55px;}
	.manhole #footer .snsbtn li { display:inline-block; width:390px; vertical-align:top; margin:0 7px;}
	.manhole #footer .snsbtn li a {
		display:block; width:100%; height:60px;
		font-size:21px; font-weight:bold; color:#fff;
		line-height:60px; letter-spacing:0.05em;
		background:#288e44; border-radius:50px;
		position:relative;
	}
	.manhole #footer .snsbtn li a:before {
		content:""; display:block; width:25px; height:25px;
		background:transparent no-repeat;
		background-size:contain;
		position:absolute; top:50%; left:35px;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
	}
	.manhole #footer .snsbtn li.tw a:before { background-image:url(../img/icon_tw_w.svg);}
	.manhole #footer .snsbtn li.fb a:before { background-image:url(../img/icon_fb_w.svg);}
.manhole #footer .logo { width:550px; height:120px; margin:0 auto;}
	.manhole #footer .logo a {
		display:block; width:100%; height:100%;
		background:#fff url(../img/manhole_bn.png) no-repeat center 0;
		background-size:cover;
		border:5px solid #f00; border-radius:30px;
		text-indent:150%; white-space:nowrap; overflow:hidden;
		position:relative;
	}
.manhole #ptop { bottom:35px;}
	.manhole #ptop a { width:85px; height:85px; background:#288e44;}
	.manhole #ptop a:before { width:36px; height:23px;}
	.manhole #ptop.end { bottom:265px;}

/*sharebtn*/
.manhole .sharebtn {
	height: 40px;
	position: absolute;
	top: 20px;
	right: 65px;
}

/*btn*/
body.manhole .link-btn a { color:#288e44; border-color:#288e44;}
body.manhole .link-btn a:before { border-color:#288e44;}
body.manhole .link-btn a:after { background-image:url(../img/icon_arrow_g.svg);}

/*main*/
#manhole-main { min-height:710px; padding:30px 0 40px; position:relative;}
	#manhole-main .inner {
		width:930px; height:640px;
		background:url(../img/manhole_main.png) no-repeat center 0;
		background-size:contain;
		margin:0 auto; position:relative;
	}
	#manhole-main .inner h1 {
		width:335px; height:325px;
		background:url(../img/manhole_title.png) no-repeat;
		background-size:contain;
		text-indent:150%; white-space:nowrap; overflow:hidden;
		position:absolute; top:15px; left:30px;
	}
	#manhole-main .inner p { display:none;}
	#manhole-main .inner p:before,
	#manhole-main .inner p:after {
		content:""; display:block; width:3px; height:55px;
		background:#288e44; border-radius:50px;
		position:absolute; top:-6px;
	}
	#manhole-main .inner p:before {
		left:0;
		-webkit-transform:rotate(-40deg);
		transform:rotate(-40deg);
	}
	#manhole-main .inner p:after {
		right:0;
		-webkit-transform:rotate(40deg);
		transform:rotate(40deg);
	}
	/*language*/
	.d2.manhole .select-language ul { border-color:#288e44; margin-top:-3px;}
	.d2.manhole .select-language ul:before { border-bottom-color:#288e44;}
	.d2.manhole .select-language ul li a { color:#288e44;}
	.d2.manhole .select-language ul li a:before,
	.d2.manhole .select-language ul li a:after { background:#288e44; top:8px;}
	.d2.manhole .select-language ul li a:before { top:11px;}

.manhole .section-block { border-top-color:#288e44; padding-bottom:0;}
	.manhole .section-block > p { color:#288e44;}
	.manhole .section-block h2 { padding-bottom:5px;}
	.manhole .section-block h2 .jp { color:#288e44;}
	.manhole .section-block h2 .en { background:#288e44;}
	.manhole .section-block .inner { background:none; padding:0; position:relative;}
	.manhole .section-block .linktxt { position:absolute; top:25px; left:50%; margin-left:370px; z-index:10;}
	.manhole .section-block .linktxt a { font-size:18px; font-weight:bold; color:#288e44;}
	.manhole .section-block.goods { padding-bottom:75px;}
	.manhole .section-block.goods h2 { padding-top:70px;}
	.manhole .section-block.goods .outer { margin-top:0 !important;}

/*search*/
.manhole .searchField { padding-bottom:70px;}
	.manhole .searchFieldInner { width:400px; height:50px; margin:0 auto; position:relative;}
	.manhole .searchField input[type="text"] {
		width:295px; height:50px; color:#288e44;
		font-size:22px; font-weight:bold; line-height:1.5;
		background:#fff; border:5px solid #288e44;
		padding:0 0.7em 0.05em; position:absolute; top:0; left:0; z-index:2;
		transition:all 0.3s;
	}
	.manhole .searchField input[type="text"]::-webkit-input-placeholder { color:#9d9d9d; opacity:1;}
	.manhole .searchField input[type="text"]:-moz-placeholder { color:#9d9d9d;}
	.manhole .searchField input[type="text"]::-moz-placeholder { color:#9d9d9d; opacity:1;}
	.manhole .searchField input[type="text"]:-ms-input-placeholder { color:#9d9d9d;}
	.manhole .searchField input[type="text"]:focus { background:#e0f6e6;}
	.manhole .searchBtn { width:95px; height:56px; position:absolute; top:-5px; right:0; z-index:3;}
	.manhole .searchBtn:before {
		content:""; display:block; width:100%; height:30px;
		background:#288e44; border-radius:10px;
		position:absolute; bottom:0; left:0; z-index:1;
	}
	.manhole .searchBtn button {
		width:95px; height:52px; background:#46ab62;
		border:5px solid #288e44; border-radius:10px;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:0; left:0; z-index:3;
		cursor:pointer; transition:all 0.1s;
	}
	.manhole .searchBtn button:before {
		content:""; display:block; width:40px; height:40px;
		background:url(../img/icon_search.png) no-repeat;
		background-size:contain;
		position:absolute; top:50%; left:50%;
		-webkit-transform:translate(-50%, -50%);
		transform:translate(-50%, -50%);
	}
	.manhole .searchBtn button:hover { top:4px;}
.manhole .searchResult { background:#fff; padding:35px 0; margin:-30px 0 60px; /**/display:none;}
	.manhole .searchResult h2 {
		font-size:30px; color:#288e44; line-height:1.3;
		text-align:center; margin-bottom:40px;
	}
	.manhole .searchResult .section-block { background:none; border:none;}
	.manhole .searchError { min-height:0; font-size:26px; color:#f00; padding:10px 10px 80px;}

/*carousel*/
.manhole-list { margin-top:-20px;}
	.manhole-list .outer { width:900px; height:300px; margin:0 auto; overflow:hidden; position:relative; z-index:10;}
	.manhole-item {
		width:205px; height:300px;
		font-size:18px; line-height:1.4;
		padding-top:30px; margin:0 10px; outline:none;
	}
	.manhole-item a { display:block; width:100%; transition:none;}
	.manhole-item img { margin-bottom:6px;}
	/*hover*/
	.pc .manhole-item a:hover img,
	.sp .manhole-item a.hover img {
		-webkit-animation:jump 0.3s;
		animation:jump 0.3s;
	}
	/*arrow*/
	.manhole-list .arrows { width:100%; height:100%; position:absolute; top:0; left:0;}
	.manhole-list .arrows a {
		display:block; width:60px; height:60px;
		background:#fff; border-radius:50%;
		position:absolute; top:50%; z-index:20;
		margin-top:-30px; cursor:pointer;
	}
	.manhole-list .arrows .prev { left:50%; margin-left:-520px;}
	.manhole-list .arrows .next { right:50%; margin-right:-520px;}
	.manhole-list .arrows a:before {
		content:""; display:block; width:14px; height:22px;
		background:url(../img/icon_arrow_g.svg) no-repeat;
		background-size:contain;
		position:absolute; top:50%; left:50%;
		-webkit-transform:translate(-50%, -50%);
		transform:translate(-50%, -50%);
	}
	.manhole-list .arrows .prev:before {
		-webkit-transform:translate(-50%, -50%) rotate(-180deg);
		transform:translate(-50%, -50%) rotate(-180deg);
		margin-left:-2px;
	}
	.manhole-list .arrows .next:before { margin-left:2px;}
	.manhole-list .arrows .slick-disabled { opacity:0; cursor:default;}
	.manhole-carousel { opacity:0; transition:opacity 0.3s;}
	.manhole-carousel.slick-initialized { opacity:1;}
/*list*/
.manhole .photo-list ul { width:292px;}
.manhole .photo-list ul li a:before { background:#288e44;}
.manhole .photo-list ul li .more { color:#288e44; padding-top:10px;}

/*about*/
.manhole .about { margin:75px 0;}
	.manhole .about .inner {
		width:880px;
		background:#fff; border:1px solid #288e44;
		padding:50px 60px 60px; margin:0 auto;
	}
	.manhole .about .inner h2 {
		display:inline-block; font-size:33px;
		line-height:1.3; color:#288e44;
		padding:0 45px; margin-bottom:30px; position:relative;
	}
	.manhole .about .inner h2:before,
	.manhole .about .inner h2:after {
		content:""; display:inline-block; width:34px; height:34px;
		background:url(../img/icon_mb_g.svg) no-repeat;
		background-size:contain;
		position:absolute; top:50%;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
	}
	.manhole .about .inner h2:before { left:0;}
	.manhole .about .inner h2:after { right:0;}
	.manhole .about .inner h2 > span { font-size:24px;}
	.manhole .about .inner p { font-size:18px; line-height:2.5;}

/*contact*/
.manhole .contact {
	background:#fff;
	border-top:1px solid #288e44;
	border-bottom:1px solid #288e44;
	padding:60px 0 65px;
	}
	.manhole .contact .inner h2 {
		display:flex; align-items:center; justify-content:center;
		font-size:28px; line-height:1.3; color:#288e44;
		margin-bottom:30px; position:relative;
	}
	.manhole .contact .inner h2:before,
	.manhole .contact .inner h2:after {
		content:""; display:inline-block;
		width:34px; height:34px;
		background:url(../img/icon_mb_g.svg) no-repeat;
		background-size:contain;
		margin:0 13px;
	}
	.manhole .contact .inner p {
		font-size:18px; font-weight:500; line-height:2;
		color:#288e44; padding-bottom:30px;
	}

/*information*/
.manhole .information { background:#fff; margin:-20px 0 80px;}
	.manhole .information .inner {
		width:930px; padding:28px 0;
		margin:0 auto; position:relative;
	}
	.manhole .information h2 {
		display:inline-block; font-size:24px; color:#288e44;
		background:#fff; border-radius:10px 10px 0 0;
		padding:13px 20px;
		position:absolute; top:-20px; left:0;
	}
	.manhole .information ul { padding:10px 10px 10px 90px;}
	.manhole .information ul li {
		display:flex; font-size:20px; font-weight:bold;
		text-align:left; color:#515151; line-height:1.5;
		position:relative;
	}
	.manhole .information ul li + li { margin-top:10px;}
	.manhole .information ul li .date { font-size:14px; font-weight:500; padding:5px 0.5em 0 0;}
	.manhole .information ul li:before {
		content:""; display:inline-block; width:13px; height:13px;
		background:#288e44; border-radius:50%;
		position:absolute; top:9px; left:-20px;
	}
	.manhole .information ul li a { color:#515151;}

/*banner*/
.manhole-banner { margin:75px 0 100px;}
	.manhole-banner-item { width:90%; max-width:700px; background:#fff; margin:35px auto;}
	.manhole-banner-item a { display:block; width:100%;}
	.manhole-banner.rows .inner {
		display:flex; flex-wrap:wrap;
		justify-content:center;
		max-width:760px; margin:0 auto;
	}
	.manhole-banner.rows .manhole-banner-item { width:350px; margin:10px;}
	/*hover*/
	.pc .manhole-banner-item a:hover,
	.sp .manhole-banner-item a.hover { opacity:0.7;}

/*＠detail-manhole area
/////////////////////////////////////////////////////////////////////*/
.detail-manhole.area {
	width:90%; max-width:805px; height:90vh; text-align:left;
	background:#fff; border:5px solid #288e44; border-radius:10px;
	margin:0 auto; position:relative;
}
.detail-manhole.area .heading {
	height:90px; text-align:center;
	padding:32px 0 28px; position:relative;
	}
	.detail-manhole.area .heading h1 {
		display:flex; align-items:center; justify-content:center;
		max-width:92%; font-size:30px; color:#288e44;
		margin:0 auto;
	}
	.detail-manhole.area .heading h1:before,
	.detail-manhole.area .heading h1:after {
		content:""; display:inline-block;
		width:34px; height:34px;
		background:url(../img/icon_mb_g.svg) no-repeat;
		background-size:contain;
		margin:0 13px;
	}
.manhole-area {
	width:100%; height:calc(100% - 140px);
	border-top:1px solid #288e44;
	position:absolute; top:90px; left:0;
	overflow:hidden;
	}
	.manhole-area ul {
		width:100%; height:100%;
		position:absolute; top:0; left:0;
		overflow-y:auto;
	}
	.manhole-area li {
		font-size:28px; font-weight:bold;
		border-bottom:1px solid #288e44;
	}
	.manhole-area li a { display:flex; width:100%; height:80px; align-items:center; color:#288e44;}
	.manhole-area li a:not([href]) { color:#b5b6b5;}
	.manhole-area li a > span:nth-child(1) { width:140px; text-align:center;}
	.manhole-area li a > span:nth-child(2) {
		display:block; width:calc(100% - 140px); height:56px;
		font-size:0; padding-right:40px; overflow:hidden;
	}
	.manhole-area li a > span:nth-child(2) span { display:inline-block; position:relative;}
	.manhole-area li a > span:nth-child(2) img { width:50px; margin:3px;}
	.manhole-area li a > span span:nth-child(n+11) { display:none;}
	.manhole-area li a > span span:nth-child(10):after {
		content:"…"; font-size:22px;
		position:absolute; bottom:-5px; right:-1.3em;
	}
	/*hover*/
	.pc .manhole-area li a[href]:hover,
	.sp .manhole-area li a[href].hover { background:#fff001;}

/*＠manhole municipality
/////////////////////////////////////////////////////////////////////*/
#manhole-header { height:140px; background:#fff; position:relative; z-index:100;}
	#manhole-header::after {
		content:""; display:block; width:100%; height:20px;
		background:url(../img/bg_wave1.png) repeat-x;
		background-size:auto 20px;
		position:absolute; top:100%; left:0;
		transform:rotate(-180deg);
	}
	.manhole-header-logo { width:190px; position:absolute; top:15px; left:30px; z-index:10;}
	.manhole-header-title {
		display:flex; align-items:center; justify-content:center;
		max-width:92%; font-size:40px; color:#288e44;
		white-space:nowrap; padding-top:60px; margin:0 auto;
	}
	.manhole-header-title::before,
	.manhole-header-title::after {
		content:""; display:inline-block;
		width:40px; height:40px;
		background:url(../img/icon_mb_g.svg) no-repeat;
		background-size:contain;
		margin:0 13px;
	}

.manhole-municipality #container { opacity:1;}
	.manhole-municipality-list { padding-top:70px; margin-bottom:75px;}
	.manhole-municipality-list ul {
		display:flex; max-width:910px; flex-wrap:wrap;
		padding-left:5px; margin:0 auto;
	}
	.manhole-municipality-list .manhole-item {
		height:auto; font-weight:500; padding-top:0;
		margin-bottom:50px; position:relative;
	}
	.manhole-municipality-list .manhole-item.new:after {
		content:"NEW"; display:flex;
		align-items:center; justify-content:center;
		width:46px; height:46px; text-align:center;
		font-size:14px; font-weight:bold; color:#fff;
		background:#f00; border-radius:50%;
		position:absolute; top:5px; left:-5px; z-index:30;
		animation:wobble-up 2s ease-in-out infinite;
	}
	.manhole-municipality-list .manhole-item.new.on:after { animation:wobble-up 1s ease-in-out infinite;}
	.manhole-municipality .about { opacity:1 !important;}
	.manhole-municipality .about .inner h2 span { font-size:33px;}
	.manhole-municipality .about .inner p { text-align:left;}
	.manhole-municipality-map { background:#fff; padding:80px 0;}
	.manhole-municipality-map .inner { max-width:870px; margin:0 auto;}
	.manhole-municipality-map .embed {
		width:100%; height:0;
		padding-top:calc(3 / 4 * 100%);
		position:relative;
	}
	.manhole-municipality-map .embed iframe {
		width:100%; height:100%;
		position:absolute; top:0; left:0;
	}


/*＠plugin
/////////////////////////////////////////////////////////////////////*/
/*slick*/
.slick-slider {
	position:relative;
	display:block; box-sizing:border-box;
	-webkit-user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	user-select:none;
	-webkit-touch-callout:none;
	-khtml-user-select:none;
	-ms-touch-action:pan-y;
	touch-action:pan-y;
	-webkit-tap-highlight-color:transparent;
}
.slick-list {
	position:relative;
	display:block; overflow:hidden;
	margin:0; padding:0;
}
.slick-list:focus { outline:none;}
.slick-list.dragging { cursor:pointer;}
.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform:translate3d(0, 0, 0);
	-moz-transform:translate3d(0, 0, 0);
	-ms-transform:translate3d(0, 0, 0);
	-o-transform:translate3d(0, 0, 0);
	transform:translate3d(0, 0, 0);
}
.slick-track { position:relative; top:0; left:0; display:block;}
.slick-track:before,
.slick-track:after { display:table; content:'';}
.slick-track:after { clear:both;}
.slick-loading .slick-track { visibility:hidden;}
.slick-slide {
	display:none;
	float:left; height:100%; min-height:1px;
}
[dir='rtl'] .slick-slide { float:right;}
.slick-slide img { display:block;}
.slick-slide.slick-loading img { display:none;}
.slick-slide.dragging img { pointer-events:none;}
.slick-initialized .slick-slide { display:block;}
.slick-loading .slick-slide { visibility:hidden;}
.slick-vertical .slick-slide { display:block; height:auto; border:1px solid transparent;}
.slick-arrow.slick-hidden { display:none;}

/*magnific*/
.mfp-bg {
	width:100%; height:100%;
	background:#fff url(../img/bg_stripe.png) center center;
	background-size:8px auto;
	position:fixed; top:0; left:0; z-index:1042; overflow:hidden;
	opacity:1;
}
.mfp-wrap {
	width:100%; height:100%; position:fixed; top:0; left:0; z-index:1043;
	outline:none !important;
	backface-visibility:hidden;
	-webkit-backface-visibility:hidden;
	-webkit-overflow-scrolling:touch;
}
.mfp-container {
	width:100%; height:100%; text-align:center;
	position:absolute; top:0; left:0;
	-webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box;
	}
	.mfp-container:before { content:''; display:inline-block; height:100%; vertical-align:middle;}
	.mfp-align-top .mfp-container:before { display:none;}
.mfp-content { position:relative; display:inline-block; text-align:left; vertical-align:middle; margin:0 auto; z-index:1045;}
.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content { width:100%; cursor:auto;}
.mfp-ajax-cur { cursor:progress;}
.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close { cursor:-moz-zoom-out; cursor:-webkit-zoom-out; cursor:zoom-out;}
.mfp-zoom { cursor:pointer; cursor:-webkit-zoom-in; cursor:-moz-zoom-in; cursor:zoom-in;}
.mfp-auto-cursor .mfp-content { cursor:auto;}
.mfp-close, .mfp-arrow,
.mfp-preloader,
.mfp-counter { -webkit-user-select:none; -moz-user-select:none; user-select:none;}
.mfp-loading.mfp-figure { display:none;}
.mfp-hide { display:none !important;}
.mfp-preloader {
	position:absolute; top:50%; left:8px; right:8px; z-index:1044;
	width:auto; text-align:center; color:#ccc; margin-top:-0.8em;
	}
	.mfp-preloader a { color:#ccc;}
	.mfp-preloader a:hover { color:#fff;}
	.mfp-s-ready .mfp-preloader { display:none;}
.mfp-s-error .mfp-content { display:none;}
.mfp-close, .mfp-arrow {
	display:block; background:none;
	cursor:pointer; border:0; outline:none;
	-webkit-box-shadow:none; box-shadow:none;
	-webkit-appearance:none; appearance:none;
	-webkit-tap-highlight-color:transparent;
	padding:0;
	transition:all 0.2s;
	z-index:1046 !important;
}
button::-moz-focus-inner { padding:0; border:0;}
/*iframe*/
.mfp-iframe-holder { padding-top:30px; padding-bottom:40px;}
.mfp-iframe-holder .mfp-content { line-height:0; width:100%; max-width:1000px;}
.mfp-iframe-scaler { /* overflow:hidden; */ position:relative;}
.mfp-iframe-scaler iframe {
	display:block; width:100%; height:100%;
	position:absolute; top:0; left:0;
	-webkit-animation:fadeIn 0.5s ease both;
	animation:fadeIn 0.5s ease both;
}

/*///////////animation///////////*/
.mfp-zoom-in .mfp-container,
.mfp-zoom-in.mfp-bg {
	opacity:0;
	backface-visibility:hidden;
	-webkit-backface-visibility:hidden;
	transition:all 0.2s ease-in-out;
}
.mfp-zoom-in.mfp-ready .mfp-container { opacity:1;}
.mfp-zoom-in.mfp-ready.mfp-bg { opacity:1;}
.mfp-zoom-in.mfp-removing .mfp-container,
.mfp-zoom-in.mfp-removing.mfp-bg { opacity:0;}

/*/////////////portal/////////////*/
/*close*/
.portal-modal .mfp-close {
	width:60px; height:80px;
	text-indent:150%; white-space:nowrap; overflow:hidden;
	position:absolute; bottom:-85px; left:50%;
	margin-left:-30px;
	}
	.portal-modal .mfp-close:before,
	.portal-modal .mfp-close:after {
		content:''; display:block;
		width:50px; height:2px; background:#f00;
		position:absolute; top:40px; left:5px;
		-webkit-transform:rotate(-45deg);
		transform:rotate(-45deg);
	}
	.portal-modal .mfp-close:after {
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
/*arr*/
.portal-modal .mfp-arrow {
	width:50px; height:80px;
	position:absolute; top:50%;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);
	}
	.portal-modal .mfp-arrow-left { left:50%; margin-left:-560px;}
	.portal-modal .mfp-arrow-right { right:50%; margin-right:-560px;}
	.portal-modal .mfp-arrow:before {
		content:""; display:block; width:25px; height:40px;
		background:url(../img/icon_arrow.svg) no-repeat;
		background-size:contain;
		position:absolute; top:50%; left:50%;
		margin:-20px 0 0 -12.5px;
	}
	.portal-modal .mfp-arrow-left:before {
		-webkit-transform:rotate(180deg);
		transform:rotate(180deg);
	}
/*contact*/
.portal-modal.contact .mfp-ajax-holder { padding:40px 0;}
.contact-modal { width:1000px; background:#fff; margin:0 auto;}
	.contact-modal .title { height:155px; background:#f00; text-align:center; padding-top:45px;}
	.contact-modal .title h1 {
		display:inline-block; font-size:28px;
		color:#fff; line-height:1.35;
		padding:0 50px 2px; position:relative;
	}
	.contact-modal .title h1:before,
	.contact-modal .title h1:after {
		content:""; display:inline-block; width:34px; height:34px;
		background:url(../img/icon_mb_w.svg) no-repeat;
		background-size:contain;
		position:absolute; top:50%;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
	}
	.contact-modal .title h1:before { left:0;}
	.contact-modal .title h1:after { right:0;}
	.contact-modal .inner {
		width:745px; text-align:left;
		background:url(../img/contact_map1.png) no-repeat center 0;
		background-size:600px auto;
		padding:60px 0 90px; margin:0 auto;
	}
	.contact-modal .main { font-size:18px; font-weight:bold; line-height:2.2;}
	.contact-modal .main p { padding:0 35px 40px;}
	.contact-modal .main:after {
		content:""; display:block; width:745px; height:140px;
		background:url(../img/contact_poke1-1.png) no-repeat;
		background-size:contain;
		margin:20px auto;
	}
	.contact-modal .info dl { margin-bottom:40px;}
	.contact-modal .info dt {
		height:38px; font-size:18px; font-weight:bold;
		color:#fff; line-height:38px; text-align:center;
		background:#f00; border-radius:50px;
		margin-bottom:20px;
	}
	.contact-modal .info dd { font-size:16px; line-height:1.8; padding:0 35px;}
	.contact-modal .info dd div {
		background:url(../img/bg_line.png) repeat-x center bottom;
		background-size:8px auto;
		padding:15px 0 18px 40px; position:relative;
	}
	.contact-modal .info dd div:before {
		content:""; display:inline-block; width:25px; height:25px;
		background:url(../img/icon_mb.svg) no-repeat;
		background-size:contain;
		position:absolute; top:16px; left:0;
	}
	.contact-modal .info dd div ul { padding-left:20px;}
	.contact-modal .info dd div ul li { list-style:disc; padding:3px 0;}
	.contact-modal .btm { min-height:190px; text-align:center; padding:60px 0 50px; margin-bottom:40px;}
	.contact-modal .btm p {
		display:inline-block;
		font-size:24px; font-weight:bold;
		color:#f00; line-height:1.6;
		position:relative;
	}
	.contact-modal .btm p:before,
	.contact-modal .btm p:after {
		content:""; display:block; width:180px; height:190px;
		background:transparent no-repeat;
		background-size:contain;
		position:absolute; top:50%;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
	}
	.contact-modal .btm p:before { background-image:url(../img/contact_poke1-2.png); left:-160px;}
	.contact-modal .btm p:after { background-image:url(../img/contact_poke1-3.png); right:-150px;}
/*manhole*/
.contact-modal.manhole .title { background:#288e44;}
	.contact-modal.manhole .inner { background-image:url(../img/contact_map2.png); padding-bottom:60px;}
	.contact-modal.manhole .main:after {
		height:200px; margin:0 auto 40px;
		background-image:url(../img/contact_poke2-1.png);
	}
	.contact-modal.manhole .info dt { background:#288e44;}
	.contact-modal.manhole .info dd div:before { background-image:url(../img/icon_mb_g.svg);}
	.contact-modal.manhole .btm p { color:#288e44;}
	.contact-modal.manhole .btm p:before { background-image:url(../img/contact_poke2-2.png); left:-200px;}
	.contact-modal.manhole .btm p:after { background-image:url(../img/contact_poke2-3.png); right:-190px;}
.contact-modal.manhole .attn {
	width:745px; text-align:left; color:#f00;
	font-size:18px; font-weight:bold; line-height:2.2;
	border:3px solid #f00;
	padding:40px 50px; margin:60px auto 0;
	}
	.contact-modal.manhole .attn p + p { padding-top:40px;}


/*////////////manhole////////////*/
/*goods*/
.portal-modal.manhole .mfp-bg { background-image:url(../img/bg_stripe2.png);}
.portal-modal.manhole .mfp-close:before,
.portal-modal.manhole .mfp-close:after { background:#288e44;}
.portal-modal.manhole .mfp-arrow:before { background-image:url(../img/icon_arrow_g.svg);}
/*detail*/
.manhole-detail-modal .mfp-bg { background:none;}
.manhole-detail-modal .mfp-container {
	width:90%; max-width:1200px;
	bottom:0; right:0; margin:auto; padding:0;
	}
.manhole-detail-modal .mfp-iframe-holder .mfp-content { max-width:100%;}
.manhole-detail-modal .mfp-iframe-scaler {
	width:100%; height:90vh; background:#fff;
	border:5px solid #288e44; border-radius:10px;
}
.manhole-detail-modal .mfp-iframe-scaler iframe { border-radius:10px;}
/*area*/
.manhole-area-modal .mfp-bg { background:none;}
/*close*/
.manhole-mfpbtn {
	display:flex; justify-content:center;
	width:calc(100% + 2px); height:51px;
	background:#288e44;
	position:absolute; bottom:-1px; left:-1px;
	}
	.manhole-mfpbtn .mfp-close {
		width:100px; height:100%;
		text-indent:150%; overflow:hidden; white-space:nowrap;
		cursor:pointer; transition:all 0.2s;
	}
	.manhole-mfpbtn .mfp-close:before,
	.manhole-mfpbtn .mfp-close:after {
		content:''; display:block;
		width:28px; height:3px; background:#fff;
		position:absolute; top:50%; left:50%;
		margin:1px 0 0 -14px;
		-webkit-transform:rotate(-45deg);
		transform:rotate(-45deg);
	}
	.manhole-mfpbtn .mfp-close:after {
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}

/*hover*/
.pc .mfp-close:hover { opacity:0.7;}
/*portal用*/
.manhole-detail-modal:not(.manhole) .mfp-iframe-scaler { border-color:#f00;}
.manhole-detail-modal:not(.manhole) .mfp-arrow { background:#f00;}
.manhole-detail-modal:not(.manhole) .manhole-mfpbtn { background:#f00;}


/*＠media
/////////////////////////////////////////////////////////////////////*/
@media screen and (min-width:1080px){
	/*side-banner*/
	.municipality #side .banner.off { opacity:0;}
	.municipality #side .banner.fixed {
		width:100%; min-width:1140px;
		padding-left:calc(100% - 320px);
		position:fixed; top:95px; left:0;
		opacity:1 !important;
		-webkit-animation:slideIn 0.5s;
		animation:slideIn 0.5s;
	}
	.municipality #side .banner.fadeOut {
		opacity:0 !important;
		-webkit-animation:fadeOut 0.3s;
		animation:fadeOut 0.3s;
		pointer-events:none;
	}
}

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

	/*language*/
	.select-language { width:35px; height:100%; position:absolute; top:0; right:14px;}
	.select-language .selected {
		height:100%; font-size:18px; font-weight:bold; color:#f00;
		cursor:pointer; padding-top:22px;
	}
	.select-language .selected span:nth-child(1) { display:none;}
	.d2.manhole .select-language { height:40px; top:20px; right:20px;}
	.d2.manhole .select-language .selected {
		width:100%; line-height:40px;
		font-size:20px; color:#288e44;
		position:absolute; top:0; left:0;
		padding-top:1px;
	}

	/*menu*/
	#menu {
		width:calc(100% - 300px); height:100%;
		border-right:1px solid #f00;
		position:absolute; top:0; right:130px;
	}
	#mOpen { display:none;}
	#mList { font-size:0; text-align:right;}
	#mList li { display:inline-block; border-left:1px solid #f00; position:relative;}
	#mList li > a {
		display:block; min-width:135px; height:61px; line-height:61px;
		font-size:14px; font-weight:500; color:#f00; text-align:left;
		letter-spacing:0.03em; padding:0 22px 0 47px;
		cursor:pointer; position:relative; overflow:hidden;
	}
	#mList li > a:before {
		content:""; display:block; width:20px; height:20px;
		background:url(../img/icon_mb.svg) no-repeat;
		background-size:20px auto;
		position:absolute; top:50%; left:20px;
		margin-top:-10px;
	}
	#mList li > a:after {
		content:""; height:3px; background:#f00;
		position:absolute; bottom:0; left:0; right:0;
		-webkit-transform:translateY(3px);
		transform:translateY(3px);
		transition:transform 0.2s ease-out;
	}
	#mList li > a:hover:after {
		-webkit-transform:translateY(0);
		transform:translateY(0);
	}
	#mList li.m1 > a:after { display:none;}
	.gallery #mList li.m2 > a:after,
	.goods #mList li.m3 > a:after,
	.event #mList li.m4 > a:after,
	.manhole #mList li.m5 > a:after {
		-webkit-transform:translateY(0);
		transform:translateY(0);
		transition:transform 0.2s ease-out 1s;
	}
	/*area*/
	#mList .area-list {
		width:100%; text-align:center;
		border-bottom:1px solid #f00; padding:25px 20px 0;
		position:fixed; top:61px; left:50%; z-index:-1;
		-webkit-transform:translateX(-50%);
		transform:translateX(-50%);
		transition:all 0.3s;
		visibility:hidden; opacity:0;
	}
	#mList .area-item {
		display:inline-block; width:100px; height:140px;
		vertical-align:top; margin:0 7px 20px;
	}
	#mList .area-item .pic { display:block; width:100px; height:100px;}
	#mList .area-item .name { font-size:14px; font-weight:500;}
	#mList li.m1:before {
		content:''; display:block; width:0; height:0;
		position:absolute; bottom:-1px; left:50%; margin-left:-5px;
		border:5px transparent solid;
		border-bottom-color:#f00;
		border-width:0 5px 8px 5px;
	}
	#mList li.m1:after {
		content:''; display:block; width:0; height:0;
		position:absolute; bottom:-1px; left:50%; margin-left:-4px;
		border:4px transparent solid;
		border-bottom-color:#fff;
		border-width:0 4px 7px 4px;
	}
	#mList li.m1:before,
	#mList li.m1:after { visibility:hidden; opacity:0; z-index:110;}
	#mList li.m1:hover:before,
	#mList li.m1:hover:after { visibility:visible; opacity:1;}
	#mList li.m1:hover .area-list { visibility:visible; opacity:1; z-index:100;}

	/*fixed*/
	#header.fixed {
		position:fixed; min-width:1140px;
		-webkit-animation:slideIn 0.5s;
		animation:slideIn 0.5s;
	}
	#header.fixed h1 { height:100%; border-bottom:none;}
	#header.fixed h1:before { width:150px; height:50px; background-position:-255px -125px;}

	.d2 .photo-list .grid .sizer { display:none;}
	.municipality .section-block.event .inner ul { padding-bottom:50px;}
	.municipality .section-block.event .inner ul li .txt { padding-left:125px;}
	.municipality .section-block.event .inner ul li .date { position:absolute; top:8px; left:0;}
	.municipality .section-block.event .inner ul li .title { font-size:18px;}
	.municipality .section-block.about .inner:after { content:""; clear:both; display:block;}
	.municipality .section-block.about img { width:45%; float:right; margin:5px 0 20px 30px;}
	.municipality .section-block.about p { font-size:16px; text-align:left; line-height:2.2;}
	.municipality .section-block.about p + p { padding-top:30px;}

	#ptop { bottom:20px; left:calc(100vw - 120px);}
	.manhole #ptop { bottom:35px; left:calc(100vw - 135px);}

	/*manhole*/
	.manhole-detail-modal .mfp-arrow {
		width:70px; height:70px;
		background:#288e44; border-radius:50%;
		position:absolute; top:50%;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
	}
	.manhole-detail-modal .mfp-arrow-left { left:-35px;}
	.manhole-detail-modal .mfp-arrow-right { right:-35px;}
	.manhole-detail-modal .mfp-arrow:before {
		content:""; display:block; width:25px; height:16px;
		background:url(../img/icon_arrow_w.svg) no-repeat;
		background-size:contain;
		position:absolute; top:50%; left:50%;
		margin:-8px 0 0 -10px;
		-webkit-transform:rotate(90deg);
		transform:rotate(90deg);
	}
	.manhole-detail-modal .mfp-arrow-left:before {
		-webkit-transform:rotate(-90deg);
		transform:rotate(-90deg);
		margin-left:-12px;
	}

	/*area*/
	#manhole-main .inner ul { width:100%; height:100%; position:absolute; top:0; left:0; pointer-events:none;}
	#manhole-main .inner ul li { position:absolute;}
	#manhole-main .inner ul li.area1 { top:235px; left:715px;}
	#manhole-main .inner ul li.area2 { top:473px; left:701px;}
	#manhole-main .inner ul li.area3 { top:466px; left:527px;}
	#manhole-main .inner ul li.area4 { top:518px; left:396px;}
	#manhole-main .inner ul li.area5 { top:398px; left:222px;}
	#manhole-main .inner ul li.area6 { top:529px; left:11px;}
	#manhole-main .inner ul li a {
		display:inline-block; height:58px; line-height:48px;
		position:relative; pointer-events:none;
	}
	#manhole-main .inner ul li a:before {
		content:""; display:block; width:100%; height:30px;
		background:#288e44; border-radius:10px;
		position:absolute; bottom:-5px; left:0; z-index:1;
	}
	#manhole-main .inner ul li a > span {
		display:block; width:100%; height:100%;
		font-size:30px; font-weight:bold;
		color:#288e44; white-space:nowrap;
		background:#fff; border:5px solid #288e44;
		border-radius:10px; padding:0 15px;
		position:relative; z-index:2;
		transition:all 0.1s;
	}
		.ready #manhole-main .inner ul li a { pointer-events:auto;}
	#manhole-main .inner ul li a span span { display:inline-block; margin:0 -6px;}
	#manhole-main .inner ul li a:not([href]):before { background:#a1a1a1;}
	#manhole-main .inner ul li a:not([href]) > span { color:#a1a1a1; border-color:#a1a1a1;}
	/*hover*/
	.pc #manhole-main .inner ul li a.hover > span,
	.pc #manhole-main .inner ul li a:hover > span { background:#e0f6e6; margin-top:4px;}
	.pc #manhole-main .inner ul li a:not([href]).hover > span,
	.pc #manhole-main .inner ul li a:not([href]):hover > span { background:#fff; margin-top:0;}

}

/*＠SP
/////////////////////////////////////////////////////////////////////*/
@media screen and (max-width: 767.98px){
	body { min-width:320px; background-size:auto 8px;}
	br.pc { display:none;}
	#container { padding-top:50px;}

	/*loading*/
	#loading { background-size:auto 8px;}
	#loading div { height:245px;}
	.loadon #loading div:before { -webkit-transform:translateX(-50%) scale(0.75); transform:translateX(-50%) scale(0.75);}
	#loading ul { height:70px;}
	#loading ul li:after { height:7px;}
	#loading ul li:nth-child(1) img {
		-webkit-animation:bound_sp 1.3s ease-in-out infinite;
		animation:bound_sp1 1.3s ease-in-out infinite;
		animation-delay:0s;
	}
	#loading ul li:nth-child(2) img {
		-webkit-animation:bound_sp 1.3s ease-in-out infinite;
		animation:bound_sp2 1.3s ease-in-out infinite;
		animation-delay:0s;
	}
	#loading ul li:nth-child(3) img {
		-webkit-animation:bound_sp 1.3s ease-in-out infinite;
		animation:bound_sp3 1.3s ease-in-out infinite;
		animation-delay:0s;
	}
	#loading ul li:nth-child(4) img {
		-webkit-animation:bound_sp 1.3s ease-in-out infinite;
		animation:bound_sp4 1.3s ease-in-out infinite;
		animation-delay:0s;
	}
	.manhole #loading div { height:250px;}

	/*header*/
	#header { height:50px; position:fixed;}
	#header .inner { z-index:1001;}
	#header h1 { width:140px; height:100px; transition:all 0.2s;}
	#header h1:before { -webkit-transform:translate(-50%, -50%) scale(0.75); transform:translate(-50%, -50%) scale(0.75);}
	#header .sharebtn { width:80px; right:60px; border-left:1px solid #f00;}
	/*fixed*/
	#header.fixed h1,
	body:not(.top) #header h1 { height:100%; border-bottom:none;}
	#header.fixed h1:before,
	body:not(.top) #header h1:before {
		width:150px; height:50px;
		background-position:-255px -125px;
		-webkit-transform:translate(-50%, -50%) scale(0.8);
		transform:translate(-50%, -50%) scale(0.8);
	}
	/*language*/
	#header .select-language {
		display:inline-block; height:49px;
		position:absolute; top:50px; right:0;
		display:none;
	}
	#header .select-language .selected {
		height:100%; font-size:14px; font-weight:bold;
		color:#f00; text-align:right; cursor:pointer;
	}
	#header .select-language .selected span:nth-child(1) {
		display:inline-block; height:100%;
		padding:17px 30px 0; position:relative;
	}
	#header .select-language .selected span:nth-child(1):after {
		content:""; display:block; width:6px; height:10px;
		background:url(../img/icon_arrow.svg) no-repeat;
		background-size:contain;
		position:absolute; top:50%; right:15px;
		-webkit-transform:translateY(-50%) rotate(90deg);
		transform:translateY(-50%) rotate(90deg);
		margin-top:2px;
	}
	#header .select-language .selected span:nth-child(2) { display:none;}

	/*menu*/
	#mOpen {
		width:60px; height:50px; cursor:pointer;
		border-left:1px solid #f00;
		position:absolute; top:0; right:0; z-index:1002;
		transition:all 0.5s;
	}
	#mOpen .icon {
		width:24px; height:18px;
		position:absolute; top:50%; left:50%;
		-webkit-transform:translate(-50%, -50%);
		transform:translate(-50%, -50%);
	}
	#mOpen .icon span {
		display:block; width:100%; height:2px;
		position:absolute; left:0;
		border-radius:50px; background:#f00;
		transition:all 0.4s;
	}
	#mOpen .icon span:nth-of-type(1) { top:0;}
	#mOpen .icon span:nth-of-type(2) { top:8px;}
	#mOpen .icon span:nth-of-type(3) { top:16px;}
	#mList {
		width:100%; height:100%;
		text-align:center; background:#fff;
		position:fixed; top:0; left:0; z-index:1000;
		padding-top:99px; display:none;
	}
	#mList ul { border-top:1px solid #f00;}
	#mList li { text-align:left; border-bottom:1px solid #f00;}
	#mList li > a {
		display:block; height:56px; line-height:55px;
		font-size:16px; font-weight:500; color:#f00;
		padding-left:50px; position:relative;
	}
	#mList li > a:before {
		content:""; display:block; width:20px; height:20px;
		background:url(../img/icon_mb.svg) no-repeat;
		background-size:20px auto;
		position:absolute; top:50%; left:20px;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
	}
	#mList li > a:after {
		content:""; display:block; width:10px; height:16px;
		background:url(../img/icon_arrow.svg) no-repeat;
		background-size:contain;
		position:absolute; top:50%; right:20px;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
	}
	#mList li.m1 > a:after { display:none;}
	/*area*/
	#mList .area-list { border:none; padding:0 2% 20px;}
	#mList .area-item { width:33.3333%;}
	#mList .area-item .pic { width:40px; height:40px;}
	#mList .area-item .name { font-size:13px; font-weight:500;}
	/*open*/
	#mOpen.active .icon span { background:#f00;}
	#mOpen.active .icon span:nth-of-type(1) {
		-webkit-transform:translateY(8px) rotate(-45deg);
		transform:translateY(8px) rotate(-45deg);
	}
	#mOpen.active .icon span:nth-of-type(2) { opacity:0;}
	#mOpen.active .icon span:nth-of-type(3) {
		-webkit-transform:translateY(-8px) rotate(45deg);
		transform:translateY(-8px) rotate(45deg);
	}

	/*footer*/
	#footer .f1 { padding:40px 0;}
	#footer .f2 { padding:25px 0;}
	#footer .f2 .inner { width:100%;}
	#footer .otherlink { max-width:420px; margin:0 auto;}
	#footer .otherlink li {
		width:40%; height:0;
		padding-top:calc(90 / 230 * 40%);
		margin:0 1.5%; position:relative;
	}
	#footer .otherlink li a { position:absolute; top:0; left:0;}
	#footer .otherlink li.daisuki a { background-position:0 20px;}
	#footer .otherlink li.logo {
		display:block; width:180px; height:140px;
		margin:0 auto 20px; position:relative;
	}
	#footer .otherlink li.logo a:before {
		-webkit-transform:translate(-50%, -50%) scale(0.7);
		transform:translate(-50%, -50%) scale(0.7);
	}
	#footer .copyright { text-align:left; padding:0 20px;}
	#footer .language { font-size:13px; padding:20px 0 10px;}
	#footer .language li { margin:0 5px 15px;}
	#footer .language li a { font-size:13px; padding-bottom:6px;}

	#ptop { bottom:10px; right:10px;}
	#ptop a { width:50px; height:50px;}
	#ptop a:before { width:24px; height:15px; margin-top:-1px;}
	#ptop.end { bottom:85px;}

	.sharebtn li:not(:last-child) {
		margin-right: 6px;
	}

	/*language*/
	.select-language ul { right:10px; margin-top:-5px;}
	.select-language ul:before { right:40px;}
	.select-language ul:after { right:41px;}

	/*btn*/
	.link-btn a { width:80%; max-width:420px; height:42px; font-size:17px;}
	.link-btn a:after { width:9px; height:14px; right:20px;}
	.link-btn.open a:after {
		-webkit-transform:translateY(-50%) rotate(90deg);
		transform:translateY(-50%) rotate(90deg);
		right:23px;
	}

	/*area-list*/
	.area-list { font-size:0; text-align:left; padding:30px 0; padding:30px 0 30px 1.8%;}
	.area-carousel { opacity:1;}
	.area-list .outer { width:100%; height:auto;}
	.area-item {
		display:inline-block; width:32.7%; height:auto; text-align:center;
		padding:0 0.5%; margin:0 0 10px; vertical-align:top;
	}
	.area-item a { display:table; width:100%; table-layout:fixed;}
	.area-item span { display:table-cell; vertical-align:middle;}
	.area-item .name { min-width:0; font-size:14px; padding:0;}
	.area-item .name:after { width:5px; height:8px; margin:-2px -5px 0 5px;}
	.area-item .pic { width:45px; height:45px; margin-bottom:0;}
	/*sort*/
	.sortby { position:relative; top:0; left:0; margin:-10px 0 20px;}
	.sortby > li { padding:0 8px; margin:0;}

	/*cookie*/
	.cookie-notification { font-size:14px; padding:25px 10px;}
	.cookie-notification .cookie-approve { font-size:18px;}

	/*＠section
	/////////////////////////////////////////////////////////////////////*/
	.section-block { padding-bottom:50px;}
	.section-block h2 { padding:45px 0 20px;}
	.section-block h2 .jp { font-size:24px;}
	.section-block h2 .en {
		min-width:200px; height:40px;
		font-size:16px; line-height:40px; top:-20px;
		padding:0 35px;
	}
	.section-block h2 .en:before,
	.section-block h2 .en:after { width:16px; height:16px;}
	.section-block p { font-size:14px; line-height:2;}
	/*manhole*/
	.section-block.manhole { padding-bottom:80px;}
	.section-block.manhole .inner ul { padding:0 2%;}
	.section-block.manhole .inner ul li { width:33.3333%; font-size:14px; line-height:1.4; padding:0 1% 20px;}
	.section-block.manhole .inner ul li span { font-size:12px;}
	/*video*/
	.section-block.video .inner ul li { font-size:13px; line-height:1.35; margin-bottom:20px;}
	.section-block.video .inner ul li > div { margin-bottom:5px;}
	.section-block.video .inner ul li br { display:none;}
	/*event*/
	.section-block.event .inner ul li { padding-bottom:25px;}
	.section-block.event .inner ul li:last-child { padding-bottom:20px;}
	.section-block.event .inner ul li .pic { width:35%;}
	.section-block.event .inner ul li .txt { padding-top:0;}
	.section-block.event .inner ul li .pic + .txt { padding-left:10px;}
	.section-block.event .inner ul li .date { font-size:12px; padding:3px 5px 3px 0;}
	.section-block.event .inner ul li .icon a,
	.section-block.event .inner ul li .icon span { font-size:10px; padding:4px 6px; margin:0 3px 3px 0;}
	.section-block.event .inner ul li .icon .area { padding:3px 10px;}
	.section-block.event .inner ul li .title { font-size:14px; line-height:1.6;}
	.section-block.event .inner ul li .title span { padding-bottom:1px;}
	.section-block.event .inner ul li p { font-size:13px; line-height:1.6;}
	.section-block.event .inner ul li .arr { padding-right:10px;}
	.section-block.event .inner ul li .arr:after { width:9px; height:14px; right:-5px;}

	.event .section-block.event .inner ul li .date { padding:6px 5px 5px 0;}
	.event .section-block.event .inner ul li .icon { padding-top:3px;}

	/*list*/
	.photo-list ul { width:100%;}
	.photo-list ul li { width:31.7%; height:auto; margin:0.8%;}
	.photo-list ul li.new:after {
		width:30px; height:30px;
		font-size:10px; line-height:30px;
		top:-2px; left:-2px;
	}
	.photo-list ul li a { border-radius:15px;}
	.photo-list ul li dl { font-size:13px;}
	.photo-list ul li dt { min-width:5em; padding:3px 8px; margin-bottom:5px;}
	.photo-list ul li .title { margin-bottom:7px;}
	.photo-list ul li .more { min-width:80%; font-size:12px; padding:5px 0 7px;}
	.gallery .photo-list ul li dl { font-size:13px;}
	.gallery .photo-list ul li dt { padding-bottom:4px;}
	.gallery .photo-list ul li.item.x2 dl { font-size:15px;}
	.gallery .photo-list ul li.item.x2 dt { font-size:16px;}
	.gallery .photo-list ul li.item.x2 .more { min-width:60%; font-size:14px;}

	/*＠TOP
	/////////////////////////////////////////////////////////////////////*/
	#top-main {
		height:415px;
		background:url(../img/map2.png) no-repeat center 0;
		background-size:100% auto;
		padding-top:50px;
	}
	#top-main:before { height:55px;}
	#top-main ul { padding-top:65px;}
	#top-main ul li:after { height:27px;}
	#top-main ul li img { height:300px;}
	/*banner-list*/
	#banner-area:before { height:70px;}
	.banner-list .outer { width:100%; height:auto; padding:0 25px;}
	.banner-item { width:auto; height:auto; margin:0 4px; outline:none;}
	.banner-list .arrows a { width:30px; height:30px; margin-top:-15px;}
	.banner-list .arrows .prev { left:0; margin-left:0;}
	.banner-list .arrows .next { right:0; margin-right:0;}
	.banner-list .arrows a:before { width:10px; height:16px;}

	/*info*/
	.top-info { width:92%; line-height:1.8; padding-top:5px;}
	.top-info li .date { font-size:12px; padding-right:0.5em;}
	.top-info li .link { font-size:14px;}

	/*about*/
	.top .about { padding:40px 0 50px;}
	.top .about .inner { width:92%; padding:30px 0; position:relative;}
	.top .about .inner h2 { font-size:24px; margin-bottom:20px;}
	.top .about .inner h2 span:nth-child(1):before,
	.top .about .inner h2 span:nth-child(1):after { width:24px; height:24px;}
	.top .about .inner h2 span:nth-child(1):before { left:-32px;}
	.top .about .inner h2 span:nth-child(1):after { right:-32px;}
	.top .about .inner h2 span:nth-child(2) { font-size:18px; padding-top:5px;}
	.top .about .inner p { font-size:15px; line-height:2; padding:0 14px 0 20px;}
	.top .about .inner p:before {
		width:52%; height:0;
		padding-top:calc(720 / 750 * 52%);
		margin:-30px -12px 0 5px;
	}

	/**/
	.top #banner-area .area-list { padding:20px 0 20px 1.8%;}
	.top .section-block > h2 { padding-bottom:15px;}
	.top .section-block > p { line-height:1.6;}
	.top .section-block.about .inner { width:90%;}
	.top .section-block.goods,
	.top .section-block.gallery { padding-bottom:50px; margin-bottom:60px;}
	.top .section-block.goods .outer,
	.top .section-block.gallery .outer { height:auto; margin-bottom:20px;}
	.top .photo-list ul li.new:after { top:-6px; left:-6px;}
	.top .section-block.manhole .inner { width:100%;}
	.top .section-block.manhole .inner ul { text-align:center;}
	.top .section-block.manhole .inner ul li { width:45%; padding:0 2% 20px;}
	.top .section-block.video { padding-bottom:30px;}
	.top .section-block.video .inner { width:90%; padding-top:10px;}

	/*＠d2
	/////////////////////////////////////////////////////////////////////*/
	.d2 #contentsIn { padding-top:40px;}
	.d2 .section-block h2 { padding-bottom:30px;}
	.d2 .section-block .inner { width:95%; border-radius:15px; padding:6% 5%;}
	.d2 .section-block .inner + .inner { margin-top:20px;}
	.d2 .section-block .inner h3 { font-size:20px; letter-spacing:normal; margin:0 0 20px;}
	.d2 .section-block .inner .link-btn { padding:30px 0 20px;}

	.d2 .photo-list { padding:0 0 30px;}
	.d2 .photo-list .grid { width:96%; margin:0 auto;}
	.d2 .photo-list .grid .sizer,
	.d2 .photo-list .grid .item { width:33.3333%; height:auto; padding:4px; margin:0;}
	.d2 .photo-list .grid .item.x2 { width:66.6666%; height:auto;}

	.d2 .searchError { min-height:160px; font-size:18px; padding:50px 10px;}

	.error404 #contents .inner { padding:50px 0;}
	.error404 #contents .inner h2 { font-size:22px; margin-bottom:25px;}
	.error404 #contents .inner p { width:100%; font-size:14px; padding:0 16px; margin-bottom:40px;}
	.error404 #contents .inner p:after { width:70%; height:0; padding-top:calc(160 / 260 * 70%); margin-top:40px;}

	/*＠municipality
	/////////////////////////////////////////////////////////////////////*/
	.municipality #contents-main { height:250px;}
	.municipality #contents,
	.municipality #contents > div { display:block;}
	.municipality #contents > div:before { height:12px; background-size:auto 12px; top:-12px;}
	.municipality #contents #main:before,
	.municipality #contents #side:before { background-position:center 0;}
	/*main*/
	.municipality #main .inner { padding:0 4%;}
	.municipality #main .link-btn { padding-bottom:20px;}
	.municipality .heading { margin-bottom:30px;}
	.municipality .heading h1 {
		font-size:20px; letter-spacing:-0.05em;
		padding:15px 15px 15px 45px; margin:-20px 0 25px;
	}
	.municipality .heading h1:before { width:26px; height:26px; left:12px;}
	.municipality .heading h1 > span:nth-child(1) { font-size:27px; letter-spacing:normal;}
	.municipality .heading h1 > span:nth-child(2) { padding:0 5px;}
	.municipality .heading h1 > span:nth-child(3) { padding-top:0;}
	.municipality .heading .lead { font-size:15px; line-height:2;}
	/*pagelink*/
	.municipality .pagelink { margin-bottom:18px;}
	.municipality .pagelink li { margin:0 6px 8px 0;}
	.municipality .pagelink li a { font-size:13px; padding:5px 12px 6px;}

	.municipality .pokemon { padding-bottom:70px;}
	.municipality .pokemon .inner { padding:0 5%;}
	.municipality .pokemon h2 { font-size:16px; margin-bottom:20px;}
	.municipality .pokemon .profile { min-height:0; padding-left:0;}
	.municipality .pokemon .profile h3 { font-size:24px; padding:0 0 12px 135px;}
	.municipality .pokemon .profile h3 .num { font-size:18px; margin-right:5px;}
	.municipality .pokemon .profile dl {
		display:block; font-size:12px; line-height:1.5;
		padding-left:135px; margin-bottom:0;
	}
	.municipality .pokemon .profile dl + dl { margin:0 0 15px;}
	.municipality .pokemon .profile dt { padding:0;}
	.municipality .pokemon .profile dd { padding:0 0 0 4.5em;}
	.municipality .pokemon .profile p { font-size:12px; padding:0 10px;}
	.municipality .pokemon .profile .pic { width:120px; height:120px; top:5px;}

	.municipality .photo-list ul { padding:10px 0 20px;}
	.municipality .photo-list ul li { padding-top:0;}
	.municipality .photo-list ul li.new:after { top:-8px; left:-5px;}
	.municipality .photo-list ul li a .pic { border-radius:15px;}
	.municipality .photo-list ul li p { font-size:13px; line-height:1.35; padding:5px 0 10px 5px;}

	.municipality #main .section-block.manhole .inner { padding:0;}
	.municipality .section-block.event .inner ul { padding:10px 0 20px;}
	.municipality .section-block.event .inner ul li .meta { margin-bottom:3px;}
	.municipality .section-block.about .inner:after { content:""; clear:both; display:block;}
	.municipality .section-block.about img { width:45%; float:right; margin:5px 0 20px 20px;}
	.municipality .section-block.about p { text-align:left;}
	.municipality .section-block.about p + p { padding-top:25px;}

	/*side*/
	.municipality #side { width:100%; padding-bottom:50px; z-index:20;}
	.municipality #side .banner { padding-bottom:20px;}
	.municipality #side .banner a { width:80%; max-width:250px;}
	.municipality #side .timeline { padding:0 5%;}
	.municipality #side .timeline iframe { width:calc(100vw - 20px) !important;}

	/*＠manhole
	/////////////////////////////////////////////////////////////////////*/
	.manhole #container { border-width:10px;}
	.manhole #container:before { width:10px;}
	.manhole #manhole-main:before,
	.manhole #manhole-main:after { height:10px;}
	/*footer*/
	.manhole #footer .f1 { margin:45px 0;}
	.manhole #footer .f2 { padding:25px 0;}
	.manhole #footer .snsbtn { margin-bottom:30px;}
	.manhole #footer .snsbtn li { width:46%; margin:0 1%;}
	.manhole #footer .snsbtn li a {
		height:46px; font-size:15px; line-height:46px;
		letter-spacing:0; padding-right:15px;
	}
	.manhole #footer .snsbtn li a:before {
		display:inline-block; width:20px; height:20px;
		position:static; vertical-align:middle;
		-webkit-transform:translateY(0);
		transform:translateY(0);
		margin:-2px 8px 0 0;
	}
	.manhole #footer .logo {
		width:90%; height:0;
		padding-top:calc(120 / 550 * 90%);
		position:relative;
	}
	.manhole #footer .logo a {
		border-width:3px; border-radius:20px;
		position:absolute; top:0; left:0;
	}
	.manhole #footer .copyright { padding:0 10px;}
	.manhole #ptop { bottom:18px; right:18px;}
	.manhole #ptop a { width:50px; height:50px;}
	.manhole #ptop a:before { width:24px; height:15px;}
	.manhole #ptop.end { bottom:260px;}
	/*sharebtn*/
	.manhole .sharebtn { top:5px; right:45px;}
	/*main*/
	#manhole-main { min-height:0; padding:50px 0 25px;}
	#manhole-main .inner {
		width:100%; height:0;
		padding-top:calc(640 / 930 * 100%);
	}
	#manhole-main .inner h1 {
		width:48%; height:0;
		padding-top:calc(335 / 320 * 48%);
		top:-37px; left:6%;
	}
	#manhole-main .inner p { display:none;}
	/*area*/
	#manhole-main .inner ul { width:100%; height:100%; position:absolute; top:0; left:0;pointer-events:none;}
	#manhole-main .inner ul li { height:0; position:absolute;pointer-events:auto;}
	#manhole-main .inner ul li.area1 {
		width:29%; padding-top:calc(115 / 360 * 29%);
		top:38%; left:70%;
	}
	#manhole-main .inner ul li.area2 {
		width:14%; padding-top:calc(115 / 170 * 14%);
		top:73%; left:76%;
	}
	#manhole-main .inner ul li.area3 {
		width:14%; padding-top:calc(115 / 170 * 14%);
		top:70%; left:57%;
	}
	#manhole-main .inner ul li.area4 {
		width:14%; padding-top:calc(115 / 170 * 14%);
		top:80%; left:42%;
	}
	#manhole-main .inner ul li.area5 {
		width:25%; padding-top:calc(115 / 305 * 25%);
		top:58.5%; left:20.5%;
	}
	#manhole-main .inner ul li.area6 {
		width:25%; padding-top:calc(115 / 305 * 25%);
		top:82%; left:1%;
	}
	#manhole-main .inner ul li a {
		width:100%; height:100%;
		background:transparent no-repeat;
		background-size:contain;
		border:none; padding:0; border-radius:0;
		text-indent:150%; white-space:nowrap; overflow:hidden;
		position:absolute; top:0; left:0;
	}
	#manhole-main .inner ul li.area1 a { background-image:url(../img/manhole_btn1.png);}
	#manhole-main .inner ul li.area2 a { background-image:url(../img/manhole_btn2.png);}
	#manhole-main .inner ul li.area3 a { background-image:url(../img/manhole_btn3.png);}
	#manhole-main .inner ul li.area4 a { background-image:url(../img/manhole_btn4.png);}
	#manhole-main .inner ul li.area5 a { background-image:url(../img/manhole_btn5.png);}
	#manhole-main .inner ul li.area6 a { background-image:url(../img/manhole_btn6.png);}
	#manhole-main .inner ul li.area1 a:not([href]) { background-image:url(../img/manhole_btn1_not.png);}
	#manhole-main .inner ul li.area2 a:not([href]) { background-image:url(../img/manhole_btn2_not.png);}
	#manhole-main .inner ul li.area3 a:not([href]) { background-image:url(../img/manhole_btn3_not.png);}
	#manhole-main .inner ul li.area4 a:not([href]) { background-image:url(../img/manhole_btn4_not.png);}
	#manhole-main .inner ul li.area5 a:not([href]) { background-image:url(../img/manhole_btn5_not.png);}
	#manhole-main .inner ul li.area6 a:not([href]) { background-image:url(../img/manhole_btn6_not.png);}

	/*language*/
	.d2.manhole .select-language { width:30px; height:40px; position:absolute; top:5px; right:7px;}
	.d2.manhole .select-language .selected {
		width:100%; height:100%; line-height:40px;
		font-size:18px; font-weight:bold; color:#288e44;
		position:absolute; top:0; left:0; cursor:pointer;
	}
	.d2.manhole .select-language .selected span:nth-child(1) { display:none;}
	.d2.manhole .select-language ul { right:-3px; margin-top:-5px;}
	.d2.manhole .select-language ul:before { right:14px;}
	.d2.manhole .select-language ul:after { right:15px;}

	.manhole .section-block h2 { padding-bottom:10px;}
	.manhole .section-block > p { line-height:1.6;}
	.manhole .section-block .linktxt {
		text-align:right;
		position:relative; top:0; left:0;
		padding:0 10px 25px; margin:-20px 0 0;
	}
	.manhole .section-block .linktxt a { font-size:14px;}
	.manhole .section-block.goods { padding-bottom:50px;}
	.manhole .section-block.goods h2 { padding-top:45px;}
	.manhole .section-block.goods .outer { height:auto; margin-bottom:0;}

	/*search*/
	.manhole .searchField { padding-bottom:45px;}
	.manhole .searchFieldInner { width:80%; max-width:360px;}
	.manhole .searchField input[type="text"] {
		width:calc(100% - 80px); height:40px;
		font-size:16px; border-width:4px;
		padding:0 0.7em;
	}
	.manhole .searchBtn { width:70px; height:41px; top:-1px;}
	.manhole .searchBtn:before { border-radius:8px;}
	.manhole .searchBtn button { width:70px; height:38px; font-size:18px; border-width:4px; border-radius:8px;}
	.manhole .searchBtn button:before {
		-webkit-transform:translate(-50%, -50%) scale(0.7);
		transform:translate(-50%, -50%) scale(0.7);
	}
	.manhole .searchBtn button:hover { top:0;}
	.manhole .searchResult { padding:35px 0 30px; margin:-25px 0 75px;}
	.manhole .searchResult h2 { font-size:20px; margin-bottom:20px;}
	.manhole .searchResult .section-block { padding-bottom:0;}
	.manhole .searchResult .section-block .inner { width:100%; border-radius:0; padding:0;}
	.manhole .searchError { min-height:0; padding:10px 10px 40px;}

	/*carousel*/
	.manhole-list { height:220px; padding-top:25px; margin-top:-50px; overflow:hidden;}
	.manhole-list .outer {
		width:100%; height:240px;
		overflow-x:auto;
	}
	.manhole-carousel { display:inline-table; max-width:100%; padding:0 5px; opacity:1;}
	.manhole-item { display:table-cell; width:auto; height:auto; font-size:13px; padding:0 5px; margin:0;}
	.manhole-item a { width:115px; padding-top:25px;}
	.manhole-item span { font-size:12px;}
	/*list*/
	.manhole .photo-list ul { width:31.7%; margin:0 0.8%;}
	.manhole .photo-list ul li { width:100%; margin:2.5% 0;}
	/*about*/
	.manhole .about { margin:40px 0;}
	.manhole .about .inner {
		width:100%; border-left:none; border-right:none;
		padding:25px 0 30px; position:relative;
	}
	.manhole .about .inner h2 { font-size:24px; padding:0 35px; margin-bottom:15px;}
	.manhole .about .inner h2:before,
	.manhole .about .inner h2:after { width:28px; height:28px; margin:0 5px;}
	.manhole .about .inner h2 > span { font-size:17px;}
	.manhole .about .inner p { font-size:16px; line-height:2; text-align:left; padding:0 16px;}
	/*contact*/
	.manhole .contact { padding:40px 0 45px;}
	.manhole .contact .inner h2 { font-size:22px; margin-bottom:20px;}
	.manhole .contact .inner h2:before,
	.manhole .contact .inner h2:after { width:26px; height:26px; margin:0 7px;}
	.manhole .contact .inner p { font-size:15px; line-height:1.8; text-align:left; padding:0 20px 20px;}
	/*information*/
	.manhole .information { margin:-15px 0 50px;}
	.manhole .information .inner { width:100%; padding:30px 0;}
	.manhole .information h2 { font-size:20px; padding:10px 15px; left:15px;}
	.manhole .information ul { padding:0 15px 0 30px;}
	.manhole .information ul li { display:block; font-size:15px;}
	.manhole .information ul li + li { margin-top:8px;}
	.manhole .information ul li .date { display:block; font-size:12px; padding:0;}
	.manhole .information ul li:before { width:9px; height:9px; top:4px; left:-13px;}
	/*banner*/
	.manhole-banner { margin:40px 0 55px;}
	.manhole-banner-item { margin:20px auto;}
	.manhole-banner.rows .manhole-banner-item { width:80%; margin:10px auto;}

	/*＠detail-manhole area
	/////////////////////////////////////////////////////////////////////*/
	.detail-manhole.area { width:100%; height:100%; border-radius:0;}
	.detail-manhole.area .heading { height:65px; padding:22px 0 18px;}
	.detail-manhole.area .heading h1 { font-size:24px;}
	.detail-manhole.area .heading h1:before,
	.detail-manhole.area .heading h1:after { width:26px; height:26px;}
	.manhole-area { height:calc(100% - 110px); top:65px;}
	.manhole-area li { font-size:20px;}
	.manhole-area li a { height:52px;}
	.manhole-area li a > span:nth-child(1) { width:90px;}
	.manhole-area li a > span:nth-child(2) { width:calc(100% - 90px); height:44px; padding-right:0;}
	.manhole-area li a > span:nth-child(2) img { width:40px; margin:2px;}
	.manhole-area li a > span span:nth-child(n+6) { display:none;}
	.manhole-area li a > span span:nth-child(5):after {
		content:"…"; font-size:18px;
		position:absolute; bottom:-2px; right:-1.3em;
	}

	/*＠manhole municipality
	/////////////////////////////////////////////////////////////////////*/
	#manhole-header { height:85px;}
	#manhole-header::after { height:12px; background-size:auto 12px;}
	.manhole-header-logo { width:22%; max-width:110px; top:10px; left:5px;}
	.manhole-header-title { font-size:24px; padding-top:40px;}
	.manhole-header-title::before,
	.manhole-header-title::after { width:24px; height:24px; margin:0 5px;}
	.manhole-municipality-list { padding:40px 2% 0; margin-bottom:40px;}
	.manhole-municipality-list ul { padding-left:0;}
	.manhole-municipality-list .manhole-item { display:block; width:33.3333%; padding:0 5px; margin-bottom:30px;}
	.manhole-municipality-list .manhole-item a { width:100%; padding:0;}
	.manhole-municipality-list .manhole-item.new:after {
		width:27%; height:22.1%;
		font-size:10px; font-size:2.5vw;
		top:0; left:0;
	}
	.manhole-municipality .about { opacity:1; margin-bottom:30px;}
	.manhole-municipality .about .inner h2 span { font-size:24px;}
	.manhole-municipality-map { padding:30px 25px;}
	.manhole-municipality-map .embed { padding-top:calc(4 / 3 * 100%);}
	.manhole-municipality .manhole-banner { margin:25px 0 35px;}


	/*＠plugin
	/////////////////////////////////////////////////////////////////////*/
	.mfp-iframe-holder { padding:0;}
	.mfp-iframe-holder .mfp-content { max-width:100% !important; height:100%; position:fixed; top:0; left:0;}
	.mfp-iframe-scaler { width:100% !important; height:100% !important;}

	/*/////////////portal/////////////*/
	.portal-modal .mfp-close {
		width:100%; height:50px;
		background:url(../img/bg_stripe.png) center center;
		background-size:6px auto;
		border-top:1px solid #f00;
		position:fixed; bottom:0; left:0; margin-left:0;
	}
	.portal-modal .mfp-close:before,
	.portal-modal .mfp-close:after {
		width:26px;
		top:50%;
		left:50%;
		-webkit-transform: translate(-50%,-50%) rotate(-45deg);
		transform: translate(-50%,-50%) rotate(-45deg);
	}
	.portal-modal .mfp-close:after {
		-webkit-transform: translate(-50%,-50%) rotate(45deg);
		transform: translate(-50%,-50%) rotate(45deg);
	}
	.portal-modal .mfp-arrow {
		width:50px; height:50px;
		position:fixed; top:100%; margin-top:-50px;
		-webkit-transform:translateY(0);
		transform:translateY(0);
	}
	.portal-modal .mfp-arrow-left { left:0; margin-left:0;}
	.portal-modal .mfp-arrow-right { right:0; margin-right:0;}
	.portal-modal .mfp-arrow:before { width:14px; height:22px; margin:-11px 0 0 -7px;}

	/*contact*/
	.portal-modal.contact .mfp-ajax-holder { padding:0;}
	.portal-modal.contact .mfp-content { width:100%; height:100%;}
	.contact-modal { width:100%; height:100%; overflow:hidden; position:relative;}
	.contact-modal .scrl {
		width:100%; height:100%;
		position:absolute; top:0; left:0;
		overflow:auto; -webkit-overflow-scrolling:touch;
	}
	.contact-modal .title { height:94px; padding-top:20px;}
	.contact-modal .title h1 { font-size:20px; padding:0 37px 2px;}
	.contact-modal .title h1:before,
	.contact-modal .title h1:after { width:26px; height:26px;}
	.contact-modal .inner { width:100%; background-size:95% auto; padding:30px 0 90px;}
	.contact-modal .main { font-size:15px; line-height:1.8;}
	.contact-modal .main p { padding:0 20px 25px;}
	.contact-modal .main:after {
		width:100%; height:0;
		padding-top:calc(140 / 745 * 100%);
		margin:0 auto 20px;
	}
	.contact-modal .info dl { padding:0 20px; margin-bottom:30px;}
	.contact-modal .info dt { height:36px; font-size:16px; line-height:36px; margin-bottom:10px;}
	.contact-modal .info dd { font-size:14px; line-height:1.8; padding:0;}
	.contact-modal .info dd div { padding-left:30px;}
	.contact-modal .info dd div:before { width:22px; height:22px; top:18px;}
	.contact-modal .btm { min-height:100px; padding:25px 0 30px; margin-bottom:20px;}
	.contact-modal .btm p { font-size:18px;}
	.contact-modal .btm p:before,
	.contact-modal .btm p:after { width:90px; height:95px;}
	.contact-modal .btm p:before { left:-85px;}
	.contact-modal .btm p:after { right:-80px;}

	.contact-modal.manhole .main:after {
		width:90%; height:0;
		padding-top:calc(200 / 745 * 90%);
		margin:0 auto 20px;
	}
	.contact-modal.manhole .btm p:before { left:-93px;}
	.contact-modal.manhole .btm p:after { right:-85px;}
	.contact-modal.manhole .attn {
		width:90%;
		font-size:15px; line-height:1.8;
		border:3px solid #f00;
		padding:20px; margin:30px auto 0;
	}
	.contact-modal.manhole .attn p + p { padding-top:20px;}

	/*///////////manhole///////////*/
	/*goods*/
	.portal-modal.manhole .mfp-close { background-image:url(../img/bg_stripe2.png); border-top-color:#288e44;}
	/*detail*/
	.manhole-detail-modal .mfp-container { width:100%;}
	.manhole-detail-modal .mfp-iframe-scaler { border-radius:0;}
	/*area*/
	.manhole-area-modal .mfp-content { width:100%; height:100%;}
	/*arrow*/
	.manhole-detail-modal .mfp-arrow {
		width:40px; height:40px;
		position:absolute; top:250px;
		z-index:1046 !important;
	}
	.manhole-detail-modal .mfp-arrow-left { left:5px;}
	.manhole-detail-modal .mfp-arrow-right { right:5px;}
	.manhole-detail-modal .mfp-arrow:before {
		content:''; display:block; width:10px; height:10px;
		border:2px solid #aaa;
		transform:rotate(-45deg);
		-webkit-transform:rotate(-45deg);
		position:absolute; top:14px;
	}
	.manhole-detail-modal .mfp-arrow-right:before { border-left-width:0; border-top-width:0; left:12px;}
	.manhole-detail-modal .mfp-arrow-left:before { border-right-width:0;border-bottom-width:0; left:17px;}
	.manhole-detail-modal:not(.manhole) .mfp-arrow { background:none;}
	/*close*/
	.manhole-mfpbtn { height:45px;}
	.manhole-mfpbtn .mfp-close { width:60px;}
	.manhole-mfpbtn .mfp-close:before,
	.manhole-mfpbtn .mfp-close:after { width:20px; height:2px; margin:1px 0 0 -10px;}
}
@media screen and (max-width:480px){
	.manhole-detail-modal .mfp-arrow { top:220px;}
}
@media screen and (max-width:400px){
	.manhole-detail-modal .mfp-arrow { top:190px;}
}
@media screen and (max-width:365px){
	.manhole .contact .inner h2:before,
	.manhole .contact .inner h2:after { display:none;}
	.manhole-municipality .about .inner h2 > span,
	.manhole-municipality .about .inner h2 > span span { font-size:22px;}
}
@media screen and (max-width:320px){
	/*loading*/
	#loading div:before { width:140px; height:115px;}
	#loading ul { height:60px;}
	/*header*/
	#header h1 { width:110px; height:85px;}
	#header h1:before { -webkit-transform:translate(-50%, -50%) scale(0.6); transform:translate(-50%, -50%) scale(0.6);}
	#header.fixed h1:before,
	body:not(.top) #header h1:before {
		-webkit-transform:translate(-50%, -50%) scale(0.7);
		transform:translate(-50%, -50%) scale(0.7);
	}
	/*language*/
	#header .select-language { height:34px;}
	#header .select-language .selected span:nth-child(1) { padding-top:9px;}

	#mList { padding-top:84px;}
	#mList li > a { padding-left:40px;}
	#mList li > a:before { left:12px;}
	#mList li > a:after { right:12px;}
	#mList .area-list { padding:0 1.5% 15px;}

	#footer .otherlink li { width:43%; padding-top:calc(90 / 230 * 43%);}
	#footer .language li a { font-size:12px;}

	.link-btn a { font-size:16px;}
	.link-btn a:after { right:16px;}
	.area-item .name { font-size:13px;}
	.area-item .pic { width:40px; height:40px;}
	.sortby > li { font-size:13px; margin:0 2px;}

	/*hoverline*/
	.hoverline { padding-bottom:1px;}
	.hoverline span { padding-bottom:1px;}

	/*＠section
	/////////////////////////////////////////////////////////////////////*/
	.section-block h2 { padding:40px 0 15px;}
	.section-block h2 .jp { font-size:20px;}
	.section-block h2 .en {
		min-width:160px; height:36px;
		font-size:14px; line-height:36px; top:-18px;
	}
	.section-block p { font-size:13px; line-height:1.8; letter-spacing:-0.02em;}
	/*manhole*/
	.section-block.manhole { padding-bottom:70px;}
	.section-block.manhole .inner ul li { font-size:13px;}
	.section-block.manhole .inner ul li span { font-size:10px;}

	/*＠TOP
	/////////////////////////////////////////////////////////////////////*/
	/*info*/
	.top-info { line-height:1.6;}
	.top-info li .date { font-size:12px; padding-right:0.5em;}
	.top-info li .link { font-size:13px;}
	/*about*/
	.top .about .inner { padding:25px 0;}
	.top .about .inner h2 { font-size:22px;}
	.top .about .inner h2 span:nth-child(1):before,
	.top .about .inner h2 span:nth-child(1):after { width:20px; height:20px;}
	.top .about .inner h2 span:nth-child(1):before { left:-25px;}
	.top .about .inner h2 span:nth-child(1):after { right:-25px;}
	.top .about .inner h2 span:nth-child(2) { font-size:16px;}
	.top .about .inner p { font-size:14px; line-height:1.8;}
	/**/
	.top .section-block > h2 { padding-bottom:10px;}
	.top .section-block.manhole .inner { padding:20px 0 5px;}
	.top .section-block.video .inner { width:92%;}

	/*＠d2
	/////////////////////////////////////////////////////////////////////*/
	.d2 .searchError { min-height:140px; font-size:16px;}

	.error404 #contents .inner { padding:40px 0;}
	.error404 #contents .inner h2 { font-size:20px; margin-bottom:25px;}
	.error404 #contents .inner p { font-size:13px;}

	/*＠municipality
	/////////////////////////////////////////////////////////////////////*/
	.municipality #contents-main { height:190px;}
	.municipality .heading h1 { font-size:18px;}

	/*＠manhole
	/////////////////////////////////////////////////////////////////////*/
	.manhole #container { border-width:6px;}
	.manhole #container:before,
	.manhole #container:after { height:6px;}
	.manhole-item span { font-size:11px;}
	.manhole .about .inner h2 { font-size:20px; padding-bottom:15px;}
	.manhole .about .inner h2 > span { font-size:16px;}
	.manhole .about .inner p { font-size:15px; line-height:1.8;}
	.manhole .contact .inner h2 { font-size:18px; margin-bottom:15px;}
	.manhole .contact .inner h2:before,
	.manhole .contact .inner h2:after { width:22px; height:22px; display:none;}
	.manhole .contact .inner p { font-size:14px;}
	.manhole-detail-modal .mfp-arrow { top:170px;}
	.manhole #ptop.end { bottom:260px;}
	.manhole-municipality .about .inner h2 span { font-size:20px;}

	.contact-modal .main { font-size:14px;}
	.contact-modal .info dl { padding:0 12px;}
	.contact-modal .info dt { font-size:15px; margin-bottom:0;}
	.contact-modal .info dd { font-size:13px;}
	.contact-modal .btm p { font-size:16px;}
	.contact-modal .link-btn a { width:90%;}
}


/*fadeIn*/
.top #container,
.municipality #contents-main,
.municipality #contents,
.manhole #container { transition:all 0.5s; opacity:0;}
.section-block, .about { transition:all 0.75s; opacity:0;}
.municipality.ready #contents-main,
.municipality.ready #contents,
.manhole.ready #container,
.done { opacity:1 !important;}

/*areamap*/
#manhole-main #areamap {
	width:930px; height:640px;
	position:absolute;left:0;top:0;
}
@media screen and (max-width: 767.98px){
	#manhole-main #areamap {
		width:100%; height:auto;
	}
}


/*＠add 20230803
/////////////////////////////////////////////////////////////////////*/
.top-info-banner {
	background: #f4f4f4;
	padding: 10px;
}
.top-info-banner-item {
	display: block;
	max-width: 780px;
	margin: 0 auto;
}
.top-info-banner-item img {
	height: auto;
}
@media screen and (max-width: 767.98px){
	.top-info-banner {
		padding: 10px 4%;
	}
}


/*＠add 20231017
/////////////////////////////////////////////////////////////////////*/
@media screen and (min-width: 768px){
	.portal-modal:not(.contact) .mfp-container::before {
		display: none;
	}
	.portal-modal:not(.contact) .mfp-iframe-holder {
		padding: 0;
	}
	.portal-modal:not(.contact) .mfp-content {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		width: 100%;
		height: 100%;
		max-width: 100%;
	}
	.portal-modal:not(.contact) .mfp-iframe-scaler {
		width: 100%;
		height: calc(100% - 80px);
	}

	/*close*/
	.portal-modal:not(.contact) .mfp-close {
		width: 100vw;
		position: fixed;
		bottom: 0;
		left: 0;
		background: #fff;
		border-top: 1px solid #f00;
		margin-left: 0;
	}
	.portal-modal:not(.contact) .mfp-close::before,
	.portal-modal:not(.contact) .mfp-close::after {
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%,-50%) rotate(-45deg);
		transform: translate(-50%,-50%) rotate(-45deg);
		transition: opacity .15s;
	}
	.portal-modal:not(.contact) .mfp-close::after {
		-webkit-transform: translate(-50%,-50%) rotate(45deg);
		transform: translate(-50%,-50%) rotate(45deg);
	}
	.pc.portal-modal:not(.contact) .mfp-close:hover {
		opacity: 1;
	}
	.pc.portal-modal:not(.contact) .mfp-close:hover::before,
	.pc.portal-modal:not(.contact) .mfp-close:hover::after {
		opacity: .7;
	}

	.manhole-goods-modal:not(.contact) .mfp-close {
		border-top-color: #288e44;
	}
}
@media screen and (max-width: 767.98px){
	.portal-modal:not(.contact) .mfp-iframe-scaler {
		background: #fff;
	}
}
