@charset "UTF-8";
/*
 * cmn_layout.css
 */
/* ==========================================================
!HTML5 elements
========================================================== */
header,
footer,
nav,
main,
section,
aside,
article {
	display: block;
}

figure,
figcaption {
	margin: 0;
	padding: 0;
}

/* ==========================================================
!Reseting
========================================================== */
/* 全ての要素のbox-sizingをデフォルトでborder-boxにする */
:root {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

*,
::before,
::after {
	border-width: 0;
	border-style: solid;
	-webkit-box-sizing: inherit;
	        box-sizing: inherit;
}

html {
	font-size: 62.5%;
}

body {
	color: #333333;
	font-family: -apple-system, BlinkMacSystemFont, "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1.6em;
	-webkit-font-feature-settings: "palt";
	        font-feature-settings: "palt";
	letter-spacing: 0.03em;
	line-height: 2;
	-webkit-text-size-adjust: none;
	   -moz-text-size-adjust: none;
	    -ms-text-size-adjust: none;
	        text-size-adjust: none;
	background: #ffffff none;
	-webkit-animation: fadeIn 2s ease 0s 1 normal;
	        animation: fadeIn 2s ease 0s 1 normal;

	overflow-scrolling: touch;
}

/* Hack for Safari 7.1-8.0 */
_::-webkit-full-page-media,
_:future,
:root body {
	-webkit-font-feature-settings: "pkna";
	        font-feature-settings: "pkna";
}

body,
div,
pre,
p,
blockquote,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
fieldset,
th,
td {
	margin: 0;
	padding: 0;
}

input,
textarea {
	margin: 0;
	font-size: 100%;
}

label {
	cursor: pointer;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 100%;
}

fieldset,
img {
	border: 0;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

*::-ms-backdrop,
img {
	width: 100%;
}

address,
caption,
cite,
code,
dfn,
em,
th,
var {
	font-weight: normal;
	font-style: normal;
}

ol,
ul {
	list-style: none;
}

caption,
th {
	text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
	font-weight: normal;
}

q:after,
q:before {
	content: "";
}

a,
input {
	/* outline: none; */
}

abbr,
acronym {
	border: 0;
}

img.object-fit-img {
	font-family: "object-fit: cover; object-position: 50% 50%;";

	-o-object-fit: cover;

	   object-fit: cover;
	-o-object-position: 50% 50%;
	   object-position: 50% 50%;
}

img.object-fit-img.top {
	font-family: "object-fit: cover; object-position: 50% top;";

	-o-object-position: 50% top;

	   object-position: 50% top;
}

img.object-fit-img.center {
	font-family: "object-fit: cover; object-position: 50% 50%;";

	-o-object-position: 50% 50%;

	   object-position: 50% 50%;
}

img.object-fit-img.bottom {
	font-family: "object-fit: cover; object-position: 50% bottom;";

	-o-object-position: 50% bottom;

	   object-position: 50% bottom;
}

/* ==========================================================
!Clearfix
========================================================== */
.clearfix:after {
	display: block;
	clear: both;
	content: "";
}

/* ==========================================================
!Layout
========================================================== */
html {
	overflow-y: scroll;
}

body {
	text-align: center;
}

@media print {
	html,
	html body {
		*zoom: 0.65;
	}
}

/* ==========================================================
!Wrapper
========================================================== */
#wrapper {
	/* margin: 60px auto 0; */
	margin: 0 auto;
	text-align: center;
}

/* 1120px以上（大きめPC） */
@media only screen and (min-width: 1120px), print {
	#wrapper {
		/* margin: 123px auto 0; */
		text-align: center;
	}
}

/* ==========================================================
!Header_Fixed
========================================================== */
#headertop_fixed {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999999;
	width: 100%;
	height: 60px;
	padding: 15px 10px 10px 10px;
	border-width: 0 0 1px 0;
	border-style: solid;
	border-color: #eaeaea;
	background: #ffffff none;
}

#headertop_fixed .inner01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row wrap;
	        flex-flow: row wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

#headertop_fixed .skip_hd_link {
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 9999;
	width: 100%;
	background: #333333 none;
}

#headertop_fixed .skip_hd_link a {
	display: block;
	overflow: hidden;
	height: 0;
	color: #ffffff;
	text-decoration: none;
	text-align: center;
}

#headertop_fixed .skip_hd_link a:focus {
	height: auto;
}

#headertop_fixed .skip_hd_link a span {
	padding: 8px 0;
}

#hd_logo {
	width: 234px;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#headertop_fixed .sp {
		display: inline-block;
	}
	#headertop_fixed .pc {
		display: none;
	}
}

/* 1120px以上（大きめPC） */
@media only screen and (min-width: 1120px), print {
	#headertop_fixed {
		height: 123px;
		padding: 0;
	}
	#headertop_fixed .sp {
		display: none;
	}
	#headertop_fixed .pc {
		display: inline-block;
	}
	#headertop_fixed .outer01 {
		width: 1120px;
		margin: 0 auto;
	}
	#headertop_fixed .inner01 {
		height: 123px;
		padding: 0;
	}
	#hd_logo {
		width: 240px;
	}
}

/* ==========================================================
!Gnavi
========================================================== */
#cover {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	width: 100vw;
	height: 100vh;
	background: rgba(0, 0, 0, 0.5) none;
	cursor: pointer;
}

#gnavi {
	position: absolute;
	top: 0;
	right: 1px;
	width: 52px;
	height: 60px;
	background: trasnparent none;
}

#gnavi:hover,
#gnavi:active,
#gnavi:focus {
	outline: 1px dotted #333333;
}

#gnavi.on {
	left: 0;
	width: 100%;
	background: rgba(0, 0, 0, 0.5);
}

#gnavi.on,
#gnavi.on:hover,
#gnavi.on:active,
#gnavi.on:focus {
	background: trasnparent none;
	outline: 1px dotted #333333;
}

#gnavi > ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	width: 52px;
	height: 60px;
	/* Menu Link Common
		------------------------------------ */
	/* Link common default */
	/* Link common visible */
}

#gnavi > ul .menu_trigger {
	position: relative;
	top: 0;
	left: 50%;
	z-index: 1000;
	width: 52px;
	height: 60px;
	padding: 0 15px 0 15px;
	cursor: pointer;
	-webkit-transform: translate(-50%, 0);
	    -ms-transform: translate(-50%, 0);
	        transform: translate(-50%, 0);
	/* Menu Line top */
	/* Menu Line middle */
	/* Menu Line bottom */
	/* Menu Close Line
			// ------------------------------------ */
	/* Menu Close Line top */
	/* Menu Close Line middle */
	/* Menu Close Line bottom */
}

#gnavi > ul .menu_trigger:before {
	display: block;
	-ms-flex-item-align: center;
	    align-self: center;
	position: relative;
	top: 50%;
	/* 線の位置 */
	left: 0;
	width: 100%;
	height: 2px;
	border-radius: 1px;
	text-align: center;
	content: "";
	background-color: #333333;
	/* 線の色 */
	-webkit-transform: translate(0, -6px);
	    -ms-transform: translate(0, -6px);
	        transform: translate(0, -6px);
	/* 線の位置 */
}

#gnavi > ul .menu_trigger .menu_trigger_line {
	display: block;
	-ms-flex-item-align: center;
	    align-self: center;
	position: relative;
	top: 50%;
	/* 線の位置 */
	left: 0;
	width: 100%;
	height: 2px;
	border-radius: 1px;
	text-align: center;
	background-color: #333333;
	/* 線の色 */
	-webkit-transform: translate(0, -2px);
	    -ms-transform: translate(0, -2px);
	        transform: translate(0, -2px);
	/* 線の位置 */
}

#gnavi > ul .menu_trigger:after {
	display: block;
	-ms-flex-item-align: center;
	    align-self: center;
	position: relative;
	top: 50%;
	/* 線の位置 */
	left: 0;
	width: 100%;
	height: 2px;
	border-radius: 1px;
	text-align: center;
	content: "";
	background-color: #333333;
	/* 線の色 */
	-webkit-transform: translate(0, 2px);
	    -ms-transform: translate(0, 2px);
	        transform: translate(0, 2px);
	/* 線の位置 */
}

#gnavi > ul .menu_trigger.active {
	position: absolute;
	right: 325px;
	left: auto;
	-webkit-transform: translate(0, 0);
	    -ms-transform: translate(0, 0);
	        transform: translate(0, 0);
}

#gnavi > ul .menu_trigger.active:before {
	opacity: 1;
	background-color: #ffffff;
	/* 線の色 */
	-webkit-transform: translateY(2px) rotate(-45deg);
	    -ms-transform: translateY(2px) rotate(-45deg);
	        transform: translateY(2px) rotate(-45deg);
}

#gnavi > ul .menu_trigger.active .menu_trigger_line {
	background-color: transparent;
	/* 線の色 無し */
}

#gnavi > ul .menu_trigger.active:after {
	opacity: 1;
	background-color: #ffffff;
	/* 線の色 */
	-webkit-transform: translateY(-2px) rotate(45deg);
	    -ms-transform: translateY(-2px) rotate(45deg);
	        transform: translateY(-2px) rotate(45deg);
}

#gnavi > ul > li:nth-of-type(2) {
	display: block;
	overflow: auto;
	visibility: hidden;
	/* 変更前 */
	opacity: 1;
	/* 変更前 */
	position: fixed;
	top: 0;
	right: 0;
	z-index: 999;
	width: 320px;
	height: 100vh;
	/* 変更前 */
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	-webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
	        box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2);
	background: #ffffff none;
	/* fade slide */
	-webkit-transform: translateX(100%);
	    -ms-transform: translateX(100%);
	        transform: translateX(100%);
	/* 変更前 */
	-webkit-transition-property: overflow, visibility, height, -webkit-transform;
	transition-property: overflow, visibility, height, -webkit-transform;
	-o-transition-property: overflow, visibility, height, transform;
	transition-property: overflow, visibility, height, transform;
	transition-property: overflow, visibility, height, transform, -webkit-transform;
	/* transitionを適用するCSSプロパティ名を指定 */
	-webkit-transition-duration: 0.5s;
	     -o-transition-duration: 0.5s;
	        transition-duration: 0.5s;
	/* 0.3秒かけて */
	-webkit-transition-timing-function: ease-out;
	     -o-transition-timing-function: ease-out;
	        transition-timing-function: ease-out;
	/* 変化の進行割合をイージングで指定 */
	/* gnavi default */
	/* others link default */
	/* gnavi global */
}

#gnavi > ul > li:nth-of-type(2) > ul > li {
	position: relative;
	border-width: 0 0 1px 0;
	border-style: solid;
	border-color: #eaeaea;
}

#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 {
	background: url(../img/ico_area_red.svg) no-repeat 20px 15px;
	background-size: 25px 25px;
}

#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 {
	background: url(../img/ico_purpose_orange.svg) no-repeat 20px 15px;
	background-size: 25px 25px;
}

#gnavi > ul > li:nth-of-type(2) > ul > li#gnav03 {
	background: url(../img/ico_recommend_orange.svg) no-repeat 20px 15px;
	background-size: 25px 25px;
}

#gnavi > ul > li:nth-of-type(2) > ul > li#gnav04 {
	background: url(../img/ico_hiking_green.svg) no-repeat 20px 15px;
	background-size: 25px 25px;
}

#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05:before {
	content: none;
}

#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 {
	width: 100%;
	margin: 0 auto;
	padding: 30px 20px 30px 20px;
}

#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 a,
#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 div,
#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 button {
	padding: 13px 0 13px 35px;
	border-color: #005baf;
	border-radius: 10vw;
	color: #ffffff;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 700;
	background: #005baf url(../img/ico_ticket_white.svg) no-repeat 50px 50%;
	background-size: 25px 25px;
}

#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 a:hover,
#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 a:focus,
#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 div:hover,
#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 div:focus,
#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 button:hover,
#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 button:focus {
	color: #005baf;
	background: #ffffff url(../img/ico_ticket_blue.svg) no-repeat 50px 50%;
	background-size: 25px 25px;
}

#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 a:after,
#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 div:after,
#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 button:after {
	content: none;
}

#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dt {
	position: relative;
	padding: 18px 0 18px 60px;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 700;
	cursor: pointer;
}

#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dt:before {
	display: block;
	position: absolute;
	top: 50%;
	right: 20px;
	width: 16px;
	height: 2px;
	border-width: 2px 0 0 0;
	border-style: solid;
	border-color: #005baf;
	content: "";
}

#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dt:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 26px;
	width: 2px;
	height: 16px;
	border-width: 0 2px 0 0;
	border-style: solid;
	border-color: #005baf;
	content: "";
	-webkit-transform: translate(-50%, -45%);
	    -ms-transform: translate(-50%, -45%);
	        transform: translate(-50%, -45%);
}

#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dt.active:after {
	content: none;
}

#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd {
	display: none;
	border-width: 1px 0 0 0;
	border-style: solid;
	border-color: #eaeaea;
}

#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li {
	border-width: 0 0 1px 0;
	border-style: solid;
	border-color: #eaeaea;
}

#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li:last-child {
	border-width: 0;
}

#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li > a {
	display: block;
	position: relative;
	padding: 13px 0 13px 18px;
	font-size: 13px;
	font-size: 1.3rem;
}

#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li > a:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 23px;
	width: 8px;
	height: 8px;
	border-width: 1px 1px 0 0;
	border-style: solid;
	border-color: #005baf;
	content: "";
	-webkit-transform: translateY(-50%) rotate(45deg);
	    -ms-transform: translateY(-50%) rotate(45deg);
	        transform: translateY(-50%) rotate(45deg);
}

#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li div[class*="block_"] {
	overflow: hidden;
	margin: 0 0 2px 0;
	border-radius: 5px;
}

#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li div[class*="block_"] > a {
	display: block;
	position: relative;
	padding: 13px 0 13px 18px;
	font-size: 13px;
	font-size: 1.3rem;
}

#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li div[class*="block_"] > a:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 23px;
	width: 8px;
	height: 8px;
	border-width: 1px 1px 0 0;
	border-style: solid;
	border-color: #005baf;
	content: "";
	-webkit-transform: translateY(-50%) rotate(45deg);
	    -ms-transform: translateY(-50%) rotate(45deg);
	        transform: translateY(-50%) rotate(45deg);
}

#gnavi > ul > li:nth-of-type(2) > ul > li > a {
	display: block;
	position: relative;
	padding: 18px 0 18px 60px;
	/* 0.1秒かけて */
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 700;
	text-decoration: none;
	-webkit-transition-property: background-color;
	-o-transition-property: background-color;
	transition-property: background-color;
	/* transitionを適用するCSSプロパティ名を指定 colorとbackground-colorが変更対象 */
	/* fade */
	-webkit-transition-duration: 0.1s;
	     -o-transition-duration: 0.1s;
	        transition-duration: 0.1s;
}

#gnavi > ul > li:nth-of-type(2) > ul > li > a:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 23px;
	width: 11px;
	height: 11px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #005baf;
	content: "";
	-webkit-transform: translateY(-50%) rotate(45deg);
	    -ms-transform: translateY(-50%) rotate(45deg);
	        transform: translateY(-50%) rotate(45deg);
}

#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2) {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row wrap;
	        flex-flow: row wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2):after {
	display: block;
	width: calc(100% / 2) !important;
	content: "";
}

#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2) > li {
	width: 50%;
	border-width: 0 1px 1px 0;
	border-style: solid;
	border-color: #eaeaea;
}

#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2) > li:before {
	content: none;
}

#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2) > li:nth-child(2n) {
	border-width: 0 0 1px 0;
}

#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2) > li:nth-last-child(-n+1) {
	border-width: 0 1px 0 0;
}

#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2) > li > a {
	padding: 18px 0 18px 18px;
	font-size: 13px;
	font-size: 1.3rem;
	font-weight: 400;
	background-color: rgba(255, 255, 255, 0.3);
}

#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2) > li > a:after {
	content: none;
}

#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2) > li > a span {
	padding: 0 1.5em 0 0;
	background: url(../img/ico_window_black.svg) no-repeat right 3px top 55%;
	background-size: 9px 9px;
}

#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(3) {
	margin: 0 0 40px 0;
	border-width: 1px 0 0 0;
	border-style: solid;
	border-color: #eaeaea;
}

#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(3) > li {
	width: 100%;
	text-align: center;
}

#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(3) > li:before {
	content: none;
}

#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(3) > li a {
	position: relative;
	padding: 18px 0 18px 0;
	font-size: 13px;
	font-size: 1.3rem;
	font-weight: 400;
}

#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(3) > li a:after {
	content: none;
}

#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(3) > li a span {
	padding: 0 0 0 1.5em;
	background: url(../img/ico_global01.svg) no-repeat 0 50%;
	background-size: auto 80%;
}

#gnavi > ul > li.visible:nth-of-type(2) {
	overflow: auto;
	/* 変更後 */
	visibility: visible;
	/* 変更後 */
	opacity: 1;
	/* 変更後 */
	height: 100vh;
	/* 変更後 */
	/* fade slide */
	-webkit-transform: translateX(0);
	    -ms-transform: translateX(0);
	        transform: translateX(0);
	/* 変更後 */
	-webkit-transition-property: overflow, visibility, height, -webkit-transform;
	transition-property: overflow, visibility, height, -webkit-transform;
	-o-transition-property: overflow, visibility, height, transform;
	transition-property: overflow, visibility, height, transform;
	transition-property: overflow, visibility, height, transform, -webkit-transform;
	/* transitionを適用するCSSプロパティ名を指定 */
	-webkit-transition-duration: 0.5s;
	     -o-transition-duration: 0.5s;
	        transition-duration: 0.5s;
	/* 0.3秒かけて */
	-webkit-transition-timing-function: ease-out;
	     -o-transition-timing-function: ease-out;
	        transition-timing-function: ease-out;
	/* 変化の進行割合をイージングで指定 */
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#gnavi .sp {
		display: inline-block;
	}
	#gnavi .pc {
		display: none;
	}
}

/* 1120px以上（大きめPC） */
@media only screen and (min-width: 1120px), print {
	#cover {
		z-index: 9999;
	}
	#gnavi {
		position: static;
		width: 843px;
		height: 123px;
	}
	#gnavi .sp {
		display: none;
	}
	#gnavi .pc {
		display: inline-block;
	}
	#gnavi:hover,
	#gnavi:active,
	#gnavi:focus {
		outline: none;
	}
	#gnavi > ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-flow: row wrap;
		        flex-flow: row wrap;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		position: relative;
		width: 100%;
		height: 100%;
		/* Menu Link Common
			------------------------------------ */
		/* Link common default */
	}
	#gnavi > ul .menu_trigger {
		display: none;
	}
	#gnavi > ul > li:nth-of-type(2) {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-flow: row wrap;
		        flex-flow: row wrap;
		-webkit-box-pack: end;
		    -ms-flex-pack: end;
		        justify-content: flex-end;
		overflow: visible;
		visibility: visible;
		/* 変更前 */
		opacity: 1;
		/* 変更前 */
		position: relative;
		width: auto;
		height: auto;
		/* 変更前 */
		-webkit-box-shadow: none;
		        box-shadow: none;
		background: transparent;
		/* fade slide */
		-webkit-transform: translateX(0);
		    -ms-transform: translateX(0);
		        transform: translateX(0);
		/* 変更前 */
		/* gnavi common */
		/* gnavi default */
		/* others link default */
		/* gnavi global */
	}
	#gnavi > ul > li:nth-of-type(2) > ul {
		width: 100%;
		margin: 0 0 0 80px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li {
		position: static;
		width: calc(100% / 5);
		border-width: 0;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li:last-of-type {
		width: 278px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 {
		background: url(../img/ico_area_red.svg) no-repeat center top, -webkit-linear-gradient(top, #d6d6d6 1px, transparent 1px) repeat-y 0 0;
		background: url(../img/ico_area_red.svg) no-repeat center top, -o-linear-gradient(top, #d6d6d6 1px, transparent 1px) repeat-y 0 0;
		background: url(../img/ico_area_red.svg) no-repeat center top, linear-gradient(to bottom, #d6d6d6 1px, transparent 1px) repeat-y 0 0;
		background-size: 30px 30px, 1px 2px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 {
		background: url(../img/ico_purpose_orange.svg) no-repeat center top, -webkit-linear-gradient(top, #d6d6d6 1px, transparent 1px) repeat-y 0 0;
		background: url(../img/ico_purpose_orange.svg) no-repeat center top, -o-linear-gradient(top, #d6d6d6 1px, transparent 1px) repeat-y 0 0;
		background: url(../img/ico_purpose_orange.svg) no-repeat center top, linear-gradient(to bottom, #d6d6d6 1px, transparent 1px) repeat-y 0 0;
		background-size: 30px 30px, 1px 2px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav03 {
		background: url(../img/ico_recommend_orange.svg) no-repeat center top, -webkit-linear-gradient(top, #d6d6d6 1px, transparent 1px) repeat-y 0 0;
		background: url(../img/ico_recommend_orange.svg) no-repeat center top, -o-linear-gradient(top, #d6d6d6 1px, transparent 1px) repeat-y 0 0;
		background: url(../img/ico_recommend_orange.svg) no-repeat center top, linear-gradient(to bottom, #d6d6d6 1px, transparent 1px) repeat-y 0 0;
		background-size: 30px 30px, 1px 2px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav04 {
		background: url(../img/ico_hiking_green.svg) no-repeat center top, -webkit-linear-gradient(top, #d6d6d6 1px, transparent 1px) repeat-y 0 0;
		background: url(../img/ico_hiking_green.svg) no-repeat center top, -o-linear-gradient(top, #d6d6d6 1px, transparent 1px) repeat-y 0 0;
		background: url(../img/ico_hiking_green.svg) no-repeat center top, linear-gradient(to bottom, #d6d6d6 1px, transparent 1px) repeat-y 0 0;
		background-size: 30px 30px, 1px 2px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 {
		width: 240px;
		margin: 0 0 0 40px;
		padding: 0;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 a,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 div,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 button {
		padding: 10px 0 10px 35px;
		font-size: 14px;
		font-size: 1.4rem;
		font-weight: 400;
		background-position: 3em 50%;
		background-size: 30px 30px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 a:after,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 div:after,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 button:after {
		content: none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 a:hover,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 a:focus,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 div:hover,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 div:focus,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 button:hover,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav05 .btn_basic01 button:focus {
		background-position: 3em 50%;
		background-size: 30px 30px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion {
		position: static;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dt {
		position: relative;
		padding: 37px 0 0 0;
		font-size: 12px;
		font-size: 1.2rem;
		font-weight: 400;
		text-align: center;
		cursor: pointer;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dt:before {
		position: absolute;
		top: auto;
		bottom: -14px;
		left: 0;
		width: 100%;
		height: 3px;
		border-width: 0;
		content: "";
		-webkit-transform: translateY(0);
		    -ms-transform: translateY(0);
		        transform: translateY(0);
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dt:after {
		content: none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd {
		display: none;
		position: absolute;
		top: 107px;
		left: 50%;
		width: 100vw;
		background: #ffffff none;
		-webkit-transform: translateX(-50%) translateX(-139px);
		    -ms-transform: translateX(-50%) translateX(-139px);
		        transform: translateX(-50%) translateX(-139px);
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-flow: row wrap;
		        flex-flow: row wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
		width: calc(1164px);
		margin: 0 auto;
		padding: 20px 20px 40px 20px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li {
		overflow: hidden;
		border-width: 0;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li > a:after {
		content: none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li > a img {
		width: 100%;
		height: 100%;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li:nth-of-type(2) .object-fit-img {
		font-family: "object-fit: cover; object-position: 50% 90%;";

		-o-object-fit: cover;

		   object-fit: cover;
		-o-object-position: 50% 90%;
		   object-position: 50% 90%;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li:nth-of-type(3) .object-fit-img {
		font-family: "object-fit: cover; object-position: 50% 20%;";

		-o-object-fit: cover;

		   object-fit: cover;
		-o-object-position: 50% 20%;
		   object-position: 50% 20%;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li:nth-of-type(4) .object-fit-img {
		font-family: "object-fit: cover; object-position: 50% 50%;";

		-o-object-fit: cover;

		   object-fit: cover;
		-o-object-position: 50% 50%;
		   object-position: 50% 50%;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li:nth-of-type(5) .object-fit-img {
		font-family: "object-fit: cover; object-position: 50% 35%;";

		-o-object-fit: cover;

		   object-fit: cover;
		-o-object-position: 50% 35%;
		   object-position: 50% 35%;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li:nth-of-type(6) .object-fit-img {
		font-family: "object-fit: cover; object-position: 50% 100%;";

		-o-object-fit: cover;

		   object-fit: cover;
		-o-object-position: 50% 100%;
		   object-position: 50% 100%;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li:nth-of-type(7) .object-fit-img {
		font-family: "object-fit: cover; object-position: 50% 50%;";

		-o-object-fit: cover;

		   object-fit: cover;
		-o-object-position: 50% 50%;
		   object-position: 50% 50%;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li:nth-of-type(8) .object-fit-img {
		font-family: "object-fit: cover; object-position: 50% 75%;";

		-o-object-fit: cover;

		   object-fit: cover;
		-o-object-position: 50% 75%;
		   object-position: 50% 75%;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd > ul > li:nth-of-type(9) .object-fit-img {
		font-family: "object-fit: cover; object-position: 50% 20%;";

		-o-object-fit: cover;

		   object-fit: cover;
		-o-object-position: 50% 20%;
		   object-position: 50% 20%;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dt {
		-webkit-transition: 0.4s;
		-o-transition: 0.4s;
		transition: 0.4s;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dt.current:before,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dt.active:before,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dt:hover:before,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dt:focus:before {
		background: #ea1a13 none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul {
		padding: 20px 20px 40px 20px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li {
		width: calc((100% - 30px) / 4);
		margin: 0 0 10px 0;
		border-radius: 10px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li > a {
		display: block;
		position: relative;
		height: 100px;
		padding: 0;
		font-size: 14px;
		font-size: 1.4rem;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li > a img {
		-webkit-transition: -webkit-transform 0.3s linear;
		transition: -webkit-transform 0.3s linear;
		-o-transition: transform 0.3s linear;
		transition: transform 0.3s linear;
		transition: transform 0.3s linear, -webkit-transform 0.3s linear;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li > a:before {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 1;
		content: "";
		background: rgba(0, 0, 0, 0.3) none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li > a:hover,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li > a:focus {
		opacity: 1;
		background: none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li > a:hover img,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li > a:focus img {
		-webkit-transform: scale(1.1, 1.1);
		    -ms-transform: scale(1.1, 1.1);
		        transform: scale(1.1, 1.1);
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li > a span {
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		z-index: 1;
		width: 100%;
		color: #ffffff;
		font-weight: 700;
		text-align: center;
		-webkit-transform: translate(-50%, -50%);
		    -ms-transform: translate(-50%, -50%);
		        transform: translate(-50%, -50%);
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li:first-of-type {
		width: 95%;
		margin: 0 auto 1em;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li:first-of-type > a {
		height: auto;
		padding: 0;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li:first-of-type > a:before {
		content: none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li:first-of-type > a span {
		display: inline-block;
		position: relative;
		top: 50%;
		left: 0;
		width: auto;
		padding: 0 1em 0 0;
		color: #000000;
		font-weight: 400;
		text-align: left;
		-webkit-transform: none;
		    -ms-transform: none;
		        transform: none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li:first-of-type > a span:after {
		display: inline-block;
		position: absolute;
		top: 50%;
		right: 0;
		z-index: 3;
		width: 8px;
		height: 8px;
		border-width: 2px 2px 0 0;
		border-style: solid;
		border-color: #000000;
		content: "";
		-webkit-transform: translateY(-50%) rotate(45deg);
		    -ms-transform: translateY(-50%) rotate(45deg);
		        transform: translateY(-50%) rotate(45deg);
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li:nth-last-child(-n+4) {
		margin: 0;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dt {
		-webkit-transition: 0.4s;
		-o-transition: 0.4s;
		transition: 0.4s;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dt.current:before,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dt.active:before,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dt:hover:before,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dt:focus:before {
		background: #ff7700 none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul {
		padding: 20px 20px 30px 20px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li {
		width: calc((100% - 50px) / 6);
		margin: 0 0 10px 0;
		border-radius: 10px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li div[class*="block_"] {
		overflow: hidden;
		margin: 0 0 2px 0;
		border-radius: 5px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li div[class*="block_"] a {
		display: block;
		position: relative;
		height: 135px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li div[class*="block_"] a:before {
		display: block;
		position: absolute;
		top: 0;
		left: 50%;
		z-index: 1;
		width: 100px;
		height: 100px;
		border-radius: 50%;
		content: "";
		-webkit-transform: translateX(-50%);
		    -ms-transform: translateX(-50%);
		        transform: translateX(-50%);
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li div[class*="block_"] a:after {
		content: none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li div[class*="block_"] a p {
		display: block;
		position: absolute;
		bottom: 0;
		left: 50%;
		z-index: 1;
		width: 100%;
		font-weight: 700;
		text-align: center;
		-webkit-transform: translateX(-50%);
		    -ms-transform: translateX(-50%);
		        transform: translateX(-50%);
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li .block_kanko01 a:before {
		background: #1ba7f0 url(../img/ico_kankou_white.svg) no-repeat center 50%;
		background-size: 60px 60px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li .block_sansaku01 a:before {
		background: #00af52 url(../img/ico_sansaku_white.svg) no-repeat center 50%;
		background-size: 60px 60px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li .block_onsen01 a:before {
		background: #e1b10b url(../img/ico_onsen_white.svg) no-repeat center 50%;
		background-size: 60px 60px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li .block_gourmet01 a:before {
		background: #ea6f8f url(../img/ico_gourmet_white.svg) no-repeat center 50%;
		background-size: 60px 60px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li .block_souvenir01 a:before {
		background: #864fca url(../img/ico_souvenir_white.svg) no-repeat center 50%;
		background-size: 60px 60px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li .block_hotel01 a:before {
		background: #00af90 url(../img/ico_hotel_white.svg) no-repeat center 50%;
		background-size: 60px 60px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li > a {
		display: block;
		position: relative;
		height: 100px;
		padding: 50px 16px 50px 16px;
		font-size: 14px;
		font-size: 1.4rem;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li > a img {
		position: absolute;
		top: -100%;
		right: -100%;
		bottom: -100%;
		left: -100%;
		z-index: 0;
		min-width: 100%;
		min-height: 100%;
		margin: auto;
		-webkit-transition: -webkit-transform 0.3s linear;
		transition: -webkit-transform 0.3s linear;
		-o-transition: transform 0.3s linear;
		transition: transform 0.3s linear;
		transition: transform 0.3s linear, -webkit-transform 0.3s linear;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li > a:hover,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li > a:focus {
		background: none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li > a:hover img,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li > a:focus img {
		-webkit-transform: scale(1.1, 1.1);
		    -ms-transform: scale(1.1, 1.1);
		        transform: scale(1.1, 1.1);
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li > a span {
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		z-index: 1;
		width: 100%;
		color: #ffffff;
		font-weight: 700;
		text-align: center;
		-webkit-transform: translate(-50%, -50%);
		    -ms-transform: translate(-50%, -50%);
		        transform: translate(-50%, -50%);
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li:first-of-type {
		width: 95%;
		margin: 0 auto 1em;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li:first-of-type > a {
		height: auto;
		padding: 0;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li:first-of-type > a:before {
		content: none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li:first-of-type > a span {
		display: inline-block;
		position: relative;
		top: 50%;
		left: 0;
		width: auto;
		padding: 0 1em 0 0;
		color: #000000;
		font-weight: 400;
		text-align: left;
		-webkit-transform: none;
		    -ms-transform: none;
		        transform: none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li:first-of-type > a span:after {
		display: inline-block;
		position: absolute;
		top: 50%;
		right: 0;
		z-index: 3;
		width: 8px;
		height: 8px;
		border-width: 2px 2px 0 0;
		border-style: solid;
		border-color: #000000;
		content: "";
		-webkit-transform: translateY(-50%) rotate(45deg);
		    -ms-transform: translateY(-50%) rotate(45deg);
		        transform: translateY(-50%) rotate(45deg);
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li:nth-last-child(-n+4) {
		margin: 0;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li > a {
		position: relative;
		padding: 37px 0 0 0;
		font-size: 12px;
		font-size: 1.2rem;
		font-weight: 400;
		text-align: center;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li > a:before {
		position: absolute;
		top: auto;
		bottom: -14px;
		left: 0;
		width: 100%;
		height: 3px;
		border-width: 0;
		content: "";
		-webkit-transform: translateY(0);
		    -ms-transform: translateY(0);
		        transform: translateY(0);
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li > a:after {
		content: none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav03 > a {
		-webkit-transition: 0.4s;
		-o-transition: 0.4s;
		transition: 0.4s;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav03 > a.current:before,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav03 > a.active:before,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav03 > a:hover:before,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav03 > a:focus:before {
		background: #ff9900 none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav04 > a {
		-webkit-transition: 0.4s;
		-o-transition: 0.4s;
		transition: 0.4s;
	}
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav04 > a.current:before,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav04 > a.active:before,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav04 > a:hover:before,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav04 > a:focus:before {
		background: #00af52 none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(1) {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-ordinal-group: 4;
		    -ms-flex-order: 3;
		        order: 3;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
		margin: 10px 0 0 0;
	}
	#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(1) > li {
		background-image: -webkit-linear-gradient(top, #d6d6d6 1px, transparent 1px);
		background-image: -o-linear-gradient(top, #d6d6d6 1px, transparent 1px);
		background-image: linear-gradient(to bottom, #d6d6d6 1px, transparent 1px);
		background-repeat: repeat-y;
		background-size: 1px 2px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2) {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-ordinal-group: 2;
		    -ms-flex-order: 1;
		        order: 1;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-flow: row wrap;
		        flex-flow: row wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		position: relative;
		top: -7px;
		width: 324px;
	}
	#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2):after {
		content: none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2) > li {
		width: auto;
		border-width: 0;
		background-color: none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2) > li:nth-child(2n),
	#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2) > li:nth-last-child(-n+1) {
		border-width: 0;
	}
	#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2) > li > a {
		padding: 0 0 0 2.2em;
		font-size: 11px;
		font-size: 1.1rem;
		background: none;
	}
	#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(2) > li > a:after {
		background-position: 0 60%;
		background-size: 0.9em auto;
	}
	#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(3) {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-ordinal-group: 3;
		    -ms-flex-order: 2;
		        order: 2;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		position: relative;
		top: -7px;
		width: auto;
		margin: 0 0 0 22px;
		border-width: 0;
	}
	#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(3) > li {
		padding: 0 0 0 1.6em;
		border-width: 0;
		background-color: none;
		background-position: 0 50%;
		background-size: auto 0.9em;
	}
	#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(3) > li:last-of-type {
		width: auto;
	}
	#gnavi > ul > li:nth-of-type(2) > ul:nth-of-type(3) > li > a {
		padding: 0;
		font-size: 11px;
		font-size: 1.1rem;
	}
	/* IE11 */
	*::-ms-backdrop > ul,
	#gnavi > ul {
		/* Menu Link Common
			------------------------------------ */
		/* Link common default */
	}
	*::-ms-backdrop > ul > li:nth-of-type(2),
	#gnavi > ul > li:nth-of-type(2) {
		/* gnavi common */
	}
	*::-ms-backdrop > ul > li:nth-of-type(2) > ul > li,
	#gnavi > ul > li:nth-of-type(2) > ul > li {
		width: 20% !important;
	}
	*::-ms-backdrop > ul > li:nth-of-type(2) > ul > li .hd_accordion dd,
	#gnavi > ul > li:nth-of-type(2) > ul > li .hd_accordion dd {
		-ms-transform: translateX(130px);
		    transform: translateX(130px);
	}
	*::-ms-backdrop > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav01 .hd_accordion dd > ul > li {
		width: 25% !important;
	}
	*::-ms-backdrop > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li,
	#gnavi > ul > li:nth-of-type(2) > ul > li#gnav02 .hd_accordion dd > ul > li {
		width: 16.666% !important;
	}
}

/* ==========================================================
!Breadcrumb
========================================================== */
#topicpath {
	width: 100%;
	text-align: left;
	background: #f5f4ef none;
}

#topicpath .outer01 {
	overflow-x: auto;
	/* テキストが多い時はX軸にスクロールバーが出現するように */

	-webkit-overflow-scrolling: touch;
	/* スマホでスクロールを滑らかにする */
}

#topicpath ol {
	display: table;
	padding: 0 4% 0 4%;
	/* SPで左右に余白を空けるため　paddingを入れて幅を$wmax相当に */
	font-size: 0.01em;
	line-height: 1;
	text-align: left;
}

#topicpath ol li {
	display: table-cell;
	/* [必須]  */
	font-size: 0.01em;
	line-height: 1;
	white-space: nowrap;
}

#topicpath ol li:first-of-type span {
	/* WCAG 2.0 C7 */
	overflow: hidden;
	position: absolute;
	top: -10px;
	width: 1px;
	height: 1px;
}

#topicpath ol li:nth-child(n+2):before {
	margin: 0 8px 0 8px;
	font-size: 12px;
	font-size: 1.2rem;
	content: ">";
}

#topicpath ol li a {
	padding: 10px 0;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1;
	white-space: nowrap;
}

#topicpath ol li span {
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1;
	white-space: nowrap;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#topicpath .outer01 {
		overflow: hidden;
		/* ハミ出した部分を隠す */
	}
	#topicpath ol {
		padding: 0 22px 0 22px;
	}
	#topicpath ol li a {
		font-size: 12px;
		font-size: 1.2rem;
	}
	#topicpath ol li span {
		font-size: 12px;
		font-size: 1.2rem;
	}
}

/* ==========================================================
!TOP Mainimg
========================================================== */
#top_mainimg {
	width: 100%;
	background: url(../img/top/winter_bg.jpg) no-repeat right center;
	background-size: cover;
}

#top_mainimg .outer01 {
	position: relative;
	max-width: 848px;
	height: 350px;
	padding: 0 3% 42.8% 3%;;
}

#top_mainimg .maintxt01 {
	height: 242px;
	padding: 150px 0 0 0;
	color: #ffffff;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 700;
	text-align: center;
	text-shadow: 1px 2px 3px #808080b8;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#top_mainimg .outer01 {
		max-width: 880px;
		height: 450px;
		padding: 0 40px 0 40px;
	}
	#top_mainimg .maintxt01 {
		height: 400px;
		padding: 204px 0 0 0;
		font-size: 30px;
		font-size: 3rem;
		text-shadow: 1px 2px 3px #808080b8;
	}
}

/* ==========================================================
!Area Mainimg
========================================================== */
/* TOP
------------------------------------ */
#area_mainimg {
	overflow: hidden;
	position: relative;
	min-height: 350px;
}

#area_mainimg.top {
	background: url(../img/area/mainimg_area_top01.jpg) no-repeat center 70%;
	background-size: cover;
}

#area_mainimg.nikko-kinugawa {
	background: url(../img/area/mainimg_area_nikko-kinugawa01.jpg) no-repeat center 90%;
	background-size: cover;
}

#area_mainimg.shitamachi {
	background: url(../img/area/mainimg_area_shitamachi01.jpg) no-repeat center 20%;
	background-size: cover;
}

#area_mainimg.urbanpark {
	background: url(../img/area/mainimg_area_urbanpark01.jpg) no-repeat center center;
	background-size: cover;
}

#area_mainimg.tochigi {
	background: url(../img/area/mainimg_area_tochigi01.jpg) no-repeat center 35%;
	background-size: cover;
}

#area_mainimg.ryomo {
	background: url(../img/area/mainimg_area_ryomo01.jpg) no-repeat center bottom;
	background-size: cover;
}

#area_mainimg.aizu {
	background: url(../img/area/mainimg_area_aizu01.jpg) no-repeat center center;
	background-size: cover;
}

#area_mainimg.tojo-line-south {
	background: url(../img/area/mainimg_area_tojo-line-south01.jpg) no-repeat center 75%;
	background-size: cover;
}

#area_mainimg.tojo-line-north {
	background: url(../img/area/mainimg_area_tojo-line-north01.jpg) no-repeat center 20%;
	background-size: cover;
}

#area_mainimg:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
	background: rgba(0, 0, 0, 0.3) none;
}

#area_mainimg .txt_area_mainimg {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 100%;
	padding: 0 30px 0 30px;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

#area_mainimg .txt_area_mainimg h1 {
	padding: 40px 0 0 0;
	color: #ffffff;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 700;
	background: url(../img/ico_area_white.svg) no-repeat center 10px;
	background-size: 30px 30px;
}

#area_mainimg .txt_area_mainimg p {
	margin: 30px 0 0 0;
	color: #ffffff;
	font-size: 12px;
	font-size: 1.2rem;
	text-align: left;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#area_mainimg {
		min-height: 470px;
	}
	#area_mainimg .txt_area_mainimg h1 {
		padding: 60px 0 0 0;
		font-size: 30px;
		font-size: 3rem;
		background-size: 40px 40px;
	}
	#area_mainimg .txt_area_mainimg p {
		font-size: 16px;
		font-size: 1.6rem;
		text-align: center;
	}
}

/* ==========================================================
!Purpose Mainimg
========================================================== */
/* TOP
------------------------------------ */
#purpose_mainimg.top {
	overflow: hidden;
	position: relative;
	min-height: 150px;
	background: url(../img/purpose/mainimg_purpose_top01.jpg) no-repeat center center;
	background-size: cover;
}

#purpose_mainimg.top:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
	background: rgba(0, 0, 0, 0.3) none;
}

#purpose_mainimg.top .txt_purpose_mainimg {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 100%;
	padding: 0 30px 0 30px;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

#purpose_mainimg.top .txt_purpose_mainimg h1 {
	padding: 40px 0 0 0;
	color: #ffffff;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 700;
	background: url(../img/ico_purpose_white.svg) no-repeat center 10px;
	background-size: 30px 30px;
}

#purpose_mainimg.top .txt_purpose_mainimg p {
	text-align: left;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#purpose_mainimg.top {
		min-height: 200px;
	}
	#purpose_mainimg.top .txt_purpose_mainimg .outer01 h1 {
		padding: 60px 0 0 0;
		font-size: 30px;
		font-size: 3rem;
		background-size: 40px 40px;
	}
	#purpose_mainimg.top .txt_purpose_mainimg .outer01 p {
		font-size: 16px;
		font-size: 1.6rem;
		text-align: center;
	}
}

/* Lower
------------------------------------ */
#purpose_mainimg {
	overflow: hidden;
	position: relative;
	min-height: 150px;
}

#purpose_mainimg:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
	background: rgba(0, 0, 0, 0.3) none;
}

#purpose_mainimg .txt_purpose_mainimg {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 100%;
	padding: 0 30px 0 30px;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

#purpose_mainimg .txt_purpose_mainimg h1 {
	padding: 40px 0 0 0;
	color: #ffffff;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 700;
}

#purpose_mainimg.kankou {
	background: url(../img/purpose/mainimg_purpose_kankou01.jpg) no-repeat center center;
	background-size: cover;
}

#purpose_mainimg.kankou .txt_purpose_mainimg h1 {
	background: url(../img/ico_kankou_white.svg) no-repeat center 10px;
	background-size: 30px 30px;
}

#purpose_mainimg.sansaku {
	background: url(../img/purpose/mainimg_purpose_sansaku01.jpg) no-repeat center 65%;
	background-size: cover;
}

#purpose_mainimg.sansaku .txt_purpose_mainimg h1 {
	background: url(../img/ico_sansaku_white.svg) no-repeat center 10px;
	background-size: 30px 30px;
}

#purpose_mainimg.onsen {
	background: url(../img/purpose/mainimg_purpose_onsen01.jpg) no-repeat center center;
	background-size: cover;
}

#purpose_mainimg.onsen .txt_purpose_mainimg h1 {
	background: url(../img/ico_onsen_white.svg) no-repeat center 10px;
	background-size: 30px 30px;
}

#purpose_mainimg.gourmet {
	background: url(../img/purpose/mainimg_purpose_gourmet01.jpg) no-repeat center center;
	background-size: cover;
}

#purpose_mainimg.gourmet .txt_purpose_mainimg h1 {
	background: url(../img/ico_gourmet_white.svg) no-repeat center 10px;
	background-size: 30px 30px;
}

#purpose_mainimg.souvenir {
	background: url(../img/purpose/mainimg_purpose_souvenir01.jpg) no-repeat center 63%;
	background-size: cover;
}

#purpose_mainimg.souvenir .txt_purpose_mainimg h1 {
	background: url(../img/ico_souvenir_white.svg) no-repeat center 10px;
	background-size: 30px 30px;
}

#purpose_mainimg.hotel {
	background: url(../img/purpose/mainimg_purpose_hotel01.jpg) no-repeat center center;
	background-size: cover;
}

#purpose_mainimg.hotel .txt_purpose_mainimg h1 {
	background: url(../img/ico_hotel_white.svg) no-repeat center 10px;
	background-size: 30px 30px;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#purpose_mainimg {
		min-height: 200px;
	}
	#purpose_mainimg .txt_purpose_mainimg .outer01 h1 {
		padding: 60px 0 0 0;
		font-size: 30px;
		font-size: 3rem;
	}
	#purpose_mainimg .txt_purpose_mainimg .outer01 p {
		font-size: 16px;
		font-size: 1.6rem;
		text-align: center;
	}
	#purpose_mainimg.kankou .txt_purpose_mainimg h1 {
		background-size: 40px 40px;
	}
	#purpose_mainimg.sansaku .txt_purpose_mainimg h1 {
		background-size: 40px 40px;
	}
	#purpose_mainimg.onsen .txt_purpose_mainimg h1 {
		background-size: 40px 40px;
	}
	#purpose_mainimg.gourmet .txt_purpose_mainimg h1 {
		background-size: 40px 40px;
	}
	#purpose_mainimg.souvenir .txt_purpose_mainimg h1 {
		background-size: 40px 40px;
	}
	#purpose_mainimg.hotel .txt_purpose_mainimg h1 {
		background-size: 40px 40px;
	}
}

/* ==========================================================
!Ticket Mainimg
========================================================== */
/* TOP
------------------------------------ */
#ticket_mainimg.top {
	overflow: hidden;
	position: relative;
	min-height: 350px;
	background: url(../img/ticket/mainimg_ticket01.jpg?20240813) no-repeat right;
	background-size: cover;
}

#ticket_mainimg.top:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
	background: rgba(0, 0, 0, 0.3) none;
}

#ticket_mainimg.top .txt_ticket_mainimg {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 100%;
	padding: 0 30px 0 30px;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

#ticket_mainimg.top .txt_ticket_mainimg h1 {
	padding: 40px 0 0 0;
	color: #ffffff;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 700;
	background: url(../img/ico_ticket_white.svg) no-repeat center 10px;
	background-size: 30px 30px;
}

#ticket_mainimg.top .txt_ticket_mainimg p {
	margin: 30px 0 0 0;
	color: #ffffff;
	font-size: 12px;
	font-size: 1.2rem;
	text-align: left;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#ticket_mainimg.top {
		min-height: 470px;
	}
	#ticket_mainimg.top .txt_ticket_mainimg h1 {
		padding: 60px 0 0 0;
		font-size: 30px;
		font-size: 3rem;
		background-size: 40px 40px;
	}
	#ticket_mainimg.top .txt_ticket_mainimg p {
		font-size: 16px;
		font-size: 1.6rem;
		text-align: center;
	}
}

/* Lower
------------------------------------ */
#ticket_mainimg.lower .img_ticket_mainimg {
	overflow: hidden;
	position: relative;
	min-height: 228px;
	background: url(../img/img_noimage01.jpg) no-repeat center center;
	background-size: cover;
}

#ticket_mainimg.lower .txt_ticket_mainimg {
	padding: 30px 30px 30px 30px;
}

#ticket_mainimg.lower .txt_ticket_mainimg .outer01 h1 {
	margin: 0 0 22px 0;
	padding: 22px 0 22px 0;
	border-width: 3px 0 3px 0;
	border-style: solid;
	border-color: #005baf;
	font-size: 20px;
	font-size: 2rem;
	font-weight: 700;
	line-height: 2;
	text-align: center;
}

#ticket_mainimg.lower .txt_ticket_mainimg .outer01 p {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 2;
	text-align: left;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#ticket_mainimg.lower {
		display: table;
		table-layout: fixed;
		position: relative;
		width: 100%;
		min-height: 416px;
	}
	#ticket_mainimg.lower .img_ticket_mainimg {
		display: table-cell;
		width: 50%;
		min-height: 416px;
	}
	#ticket_mainimg.lower .txt_ticket_mainimg {
		display: table-cell;
		width: 50%;
		padding: 60px 40px 46px 5%;
	}
	#ticket_mainimg.lower .txt_ticket_mainimg .outer01 {
		width: 100%;
		max-width: 440px;
		margin: 0 auto 0 0;
	}
	#ticket_mainimg.lower .txt_ticket_mainimg .outer01 h1 {
		margin: 0 0 32px 0;
		padding: 16px 0 16px 0;
		font-size: 28px;
		font-size: 2.8rem;
	}
	#ticket_mainimg.lower .txt_ticket_mainimg .outer01 p {
		font-size: 16px;
		font-size: 1.6rem;
		text-align: center;
	}
}

/* 960px以上（大きめタブレット 横位置とか） */
@media only screen and (min-width: 960px), print {
	#ticket_mainimg.lower .txt_ticket_mainimg {
		padding: 60px 40px 46px 8%;
	}
}

/* 1400px以上（大きいPC） */
@media only screen and (min-width: 1400px), print {
	#ticket_mainimg.lower .txt_ticket_mainimg {
		padding: 60px 40px 46px 120px;
	}
}

/* ==========================================================
!Movie Mainimg
========================================================== */
/* TOP
------------------------------------ */
#movie_mainimg {
	overflow: hidden;
	position: relative;
	min-height: 350px;
	background: url(../img/movie/mainimg_movie01.jpg) no-repeat 0 center;
	background-size: cover;
}

#movie_mainimg:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
	background: rgba(0, 0, 0, 0.3) none;
}

#movie_mainimg .txt_movie_mainimg {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 100%;
	padding: 0 30px 0 30px;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

#movie_mainimg .txt_movie_mainimg h1 {
	padding: 40px 0 0 0;
	color: #ffffff;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 700;
	background: url(../img/ico_movie_white.svg) no-repeat center 10px;
	background-size: 30px 30px;
}

#movie_mainimg .txt_movie_mainimg p {
	margin: 30px 0 0 0;
	color: #ffffff;
	font-size: 12px;
	font-size: 1.2rem;
	text-align: left;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#movie_mainimg {
		min-height: 470px;
	}
	#movie_mainimg .txt_movie_mainimg h1 {
		padding: 60px 0 0 0;
		font-size: 30px;
		font-size: 3rem;
		background-size: 40px 40px;
	}
	#movie_mainimg .txt_movie_mainimg p {
		font-size: 16px;
		font-size: 1.6rem;
		text-align: center;
	}
}

/* ==========================================================
!Campaign Mainimg
========================================================== */
#campaign_mainimg {
	overflow: hidden;
	position: relative;
	min-height: 150px;
	background: url(../img/campaign/mainimg_campaign01.jpg) no-repeat 0 center;
	background-size: cover;
}

#campaign_mainimg:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
	background: rgba(0, 0, 0, 0.3) none;
}

#campaign_mainimg .txt_campaign_mainimg {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 100%;
	padding: 0 30px 0 30px;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

#campaign_mainimg .txt_campaign_mainimg h1 {
	padding: 40px 0 0 0;
	color: #ffffff;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 700;
	background: url(../img/ico_recommend_white.svg) no-repeat center 10px;
	background-size: 30px 30px;
}

#campaign_mainimg .txt_campaign_mainimg p {
	margin: 30px 0 0 0;
	color: #ffffff;
	font-size: 12px;
	font-size: 1.2rem;
	text-align: left;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#campaign_mainimg {
		min-height: 200px;
	}
	#campaign_mainimg .txt_campaign_mainimg h1 {
		padding: 60px 0 0 0;
		font-size: 30px;
		font-size: 3rem;
		background-size: 40px 40px;
	}
	#campaign_mainimg .txt_campaign_mainimg p {
		font-size: 16px;
		font-size: 1.6rem;
		text-align: center;
	}
}

/* ==========================================================
!Magazine Mainimg
========================================================== */
#magazine_mainimg {
	overflow: hidden;
	position: relative;
	min-height: 150px;
	background: #005baf none;
}

#magazine_mainimg:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
	background: rgba(0, 0, 0, 0.3) none;
}

#magazine_mainimg .txt_magazine_mainimg {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 100%;
	padding: 0 30px 0 30px;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

#magazine_mainimg .txt_magazine_mainimg h1 {
	padding: 40px 0 0 0;
	color: #ffffff;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 700;
	background: url(../img/ico_magazine_white.svg) no-repeat center 10px;
	background-size: 30px 30px;
}

#magazine_mainimg .txt_magazine_mainimg p {
	margin: 30px 0 0 0;
	color: #ffffff;
	font-size: 12px;
	font-size: 1.2rem;
	text-align: left;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#magazine_mainimg {
		min-height: 200px;
	}
	#magazine_mainimg .txt_magazine_mainimg h1 {
		padding: 60px 0 0 0;
		font-size: 30px;
		font-size: 3rem;
		background-size: 40px 40px;
	}
	#magazine_mainimg .txt_magazine_mainimg p {
		font-size: 16px;
		font-size: 1.6rem;
		text-align: center;
	}
}

/* ==========================================================
!Sitemap Mainimg
========================================================== */
#sitemap_mainimg {
	overflow: hidden;
	position: relative;
	min-height: 150px;
	background: #005baf none;
}

#sitemap_mainimg:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
	background: rgba(0, 0, 0, 0.3) none;
}

#sitemap_mainimg .txt_sitemap_mainimg {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 100%;
	padding: 0 30px 0 30px;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

#sitemap_mainimg .txt_sitemap_mainimg h1 {
	padding: 40px 0 0 0;
	color: #ffffff;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 700;
	background: url(../img/ico_area_white.svg) no-repeat center 10px;
	background-size: 30px 30px;
}

#sitemap_mainimg .txt_sitemap_mainimg p {
	margin: 30px 0 0 0;
	color: #ffffff;
	font-size: 12px;
	font-size: 1.2rem;
	text-align: left;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#sitemap_mainimg {
		min-height: 200px;
	}
	#sitemap_mainimg .txt_sitemap_mainimg h1 {
		padding: 60px 0 0 0;
		font-size: 30px;
		font-size: 3rem;
		background-size: 40px 40px;
	}
	#sitemap_mainimg .txt_sitemap_mainimg p {
		font-size: 16px;
		font-size: 1.6rem;
		text-align: center;
	}
}

/* ==========================================================
!Area Mainimg
========================================================== */
/* TOP
------------------------------------ */
#hiking_mainimg {
	overflow: hidden;
	position: relative;
	min-height: 350px;
}

#hiking_mainimg.top {
	background: url(../img/hiking/mainimg_hiking_top01.jpg) no-repeat center 30%;
	background-size: cover;
}

#hiking_mainimg.lower {
	background: url(../img/hiking/mainimg_hiking_lower01.jpg) no-repeat center 50%;
	background-size: cover;
}

#hiking_mainimg:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
	background: rgba(0, 0, 0, 0.3) none;
}

#hiking_mainimg .txt_hiking_mainimg {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 100%;
	padding: 0 30px 0 30px;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

#hiking_mainimg .txt_hiking_mainimg h1 {
	padding: 40px 0 0 0;
	color: #ffffff;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 700;
	background: url(../img/ico_hiking_white.svg) no-repeat center 10px;
	background-size: 30px 30px;
}

#hiking_mainimg .txt_hiking_mainimg p {
	margin: 30px 0 0 0;
	color: #ffffff;
	font-size: 12px;
	font-size: 1.2rem;
	text-align: center;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#area_mainimg {
		min-height: 470px;
	}
	#area_mainimg .txt_area_mainimg h1 {
		padding: 60px 0 0 0;
		font-size: 30px;
		font-size: 3rem;
		background-size: 40px 40px;
	}
	#area_mainimg .txt_area_mainimg p {
		font-size: 16px;
		font-size: 1.6rem;
		text-align: center;
	}
}

/* ==========================================================
!Contents
========================================================== */
#contents {
	margin: 0 auto;
	text-align: center;
}

/* ==========================================================
!Section Common
========================================================== */
.outer01 p,
.outer01 li,
.outer01 dt,
.outer01 dd,
.outer01 figcaption {
	/* Android */
	background: url(../img/img_android01.png);
}

.inner01 {
	padding: 10% 4% 10% 4%;
	/* SPで左右に余白を空けるため　paddingを入れて幅を$wmax相当に */
	text-align: left;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	.outer01 {
		width: 100%;
		/*max-width: calc(1164px);*/
		max-width: calc(1040px);
		margin: 0 auto;
	}
	.inner01 {
		padding: 0 1.9% 0 1.9%;
		/* SPで左右に余白を空けるため　paddingを入れて幅を$wmax相当に */
		text-align: left;
	}
}

/* 1120px以上（大きめPC） */
@media only screen and (min-width: 1120px), print {
	.outer01 {
		width: 1120px;
	}
	.inner01 {
		padding: 0 22px 0 22px;
		/* SPで左右に余白を空けるため　paddingを入れて幅を$wmax相当に */
		text-align: left;
	}
}

/* 1400px以上（大きいPC） */
@media only screen and (min-width: 1400px), print {
	.outer01 {
		/*width: calc(1164px);*/
		width: calc(1040px);
	}
	.inner01 {
		padding: 0 22px 0 22px;
		/* SPで左右に余白を空けるため　paddingを入れて幅を$wmax相当に */
		text-align: left;
	}
}

/* ==========================================================
!Pagetop
========================================================== */
/* fixed
------------------------------------ */
.pagetop_fixed {
	display: none;
	position: relative;
	width: 100%;
	margin: 0 auto;
}

.pagetop_fixed p {
	display: block;
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 9999;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	-webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.1);
	        box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.1);
	background: #ffffff none;
	cursor: pointer;
}

.pagetop_fixed p span {
	/* WCAG 2.0 C7 */
	overflow: hidden;
	position: absolute;
	top: -10px;
	width: 1px;
	height: 1px;
}

.pagetop_fixed p:before {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 13px;
	height: 13px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #005baf;
	content: "";
	-webkit-transform: translate(-45%, -25%) rotate(-45deg);
	    -ms-transform: translate(-45%, -25%) rotate(-45deg);
	        transform: translate(-45%, -25%) rotate(-45deg);
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	/* fixed
	------------------------------------ */
	.pagetop_fixed p {
		bottom: 60px;
	}
}

/* ==========================================================
!Others
========================================================== */
.others {
	padding: 8% 0 8% 0;
	border-width: 1px 0 0 0;
	border-style: solid;
	border-color: #eaeaea;
}

.others ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row wrap;
	        flex-flow: row wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.others ul li {
	width: calc(50% - 2%);
	margin: 0 0 4% 0;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	.others {
		padding: 30px 0 30px 0;
	}
	.others ul li {
		width: calc((100% - 7.5%) / 4);
		margin: 0 0 2.5% 0;
	}
	.others ul:before,
	.others ul:after {
		display: block;
		width: calc((100% - 7.5%) / 4);
		content: "";
	}
	.others ul:before {
		-webkit-box-ordinal-group: 2;
		    -ms-flex-order: 1;
		        order: 1;
	}
}

/* 1120px以上（大きめPC） */
@media only screen and (min-width: 1120px), print {
	.others {
		padding: 60px 0 32px 0;
	}
	.others ul li {
		width: calc((100% - 81px) / 4);
		margin: 0 0 28px 0;
	}
	.others ul li:nth-of-type(4n) {
		margin: 0 0 28px 0;
	}
	.others ul:before,
	.others ul:after {
		display: block;
		width: calc((100% - 81px) / 4);
		content: "";
	}
	.others ul:before {
		-webkit-box-ordinal-group: 2;
		    -ms-flex-order: 1;
		        order: 1;
	}
}

/* ==========================================================
!Footer
========================================================== */
/* #footer {
	position: relative;
	background: #333333 none;
} */

#footer .outer01 {
	padding: 11% 0 4% 0;
}

#footer .inner01 {
	padding: 0 8% 0 8%;
}

#ft_logo {
	margin: 0 0 13% 0;
	text-align: center;
}

#ft_logo img {
	width: 36%;
	max-width: 240px;
}

#ft_links ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row wrap;
	        flex-flow: row wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	margin: 8% 0 8% 0;
	padding: 0 0 7% 0;
	border-width: 0 0 1px 0;
	border-style: solid;
	border-color: rgba(255, 255, 255, 0.2);
}

#ft_links ul li {
	width: calc(50% - 10px);
	margin: 0 0 4% 0;
	text-align: left;
}

#ft_links ul li a {
	color: #ffffff;
	font-size: 12px;
	font-size: 1.2rem;
}

#ft_links ul li a.blank {
	padding: 0 1.5em 4% 0;
	background: url(../img/ico_window_white.svg) no-repeat right 3px top 35%;
	background-size: 9px 9px;
}

#ft_copyright {
	text-align: center;
}

#ft_copyright small {
	color: #999999;
	font-family: Arial, sans-serif;
	font-size: 8px;
	font-size: 0.8rem;
	letter-spacing: 0;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#footer .outer01 {
		padding: 8% 0 4% 0;
	}
	#footer .inner01 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-flow: row wrap;
		        flex-flow: row wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
	}
	#ft_logo {
		width: 10%;
		margin: 0 0 18% 0;
	}
	#ft_logo img {
		width: 100%;
		max-width: 240px;
	}
	#ft_links {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-flow: row wrap;
		        flex-flow: row wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
		width: 85%;
	}
	#ft_links ul {
		display: block;
		width: calc(100% / 4);
		margin: 0;
		padding: 0;
		border-width: 0;
	}
	#ft_links ul li {
		width: 100%;
		margin: 0 0 4% 0;
	}
	#ft_links ul li a {
		font-size: 12px;
		font-size: 1.2rem;
	}
	#ft_links ul li a.blank {
		padding: 0 1.5em 4% 0;
		background: url(../img/ico_window_white.svg) no-repeat right 3px top 35%;
		background-size: 9px 9px;
	}
	#ft_copyright {
		width: 100%;
		font-size: 10px;
		font-size: 1rem;
		text-align: right;
	}
}

/* 1120px以上（大きめPC） */
@media only screen and (min-width: 1120px), print {
	#footer .outer01 {
		padding: 60px 0 20px 0;
	}
	#ft_logo {
		width: 176px;
		margin: 0;
	}
	#ft_logo img {
		width: 120px;
	}
	#ft_links {
		width: 70%;
		margin: 0 0 40px 0;
	}
}

/* ==========================================================
!H(n)eading
========================================================== */
.h2_basic01 {
	margin: 0 0 25px 0;
	text-align: center;
}

.h2_basic01 h2 {
	display: inline-block;
	position: relative;
	padding: 0 0 0 38px;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.5;
}

.h2_basic01 h2:before {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 30px;
	height: 30px;
	content: "";
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
}

.h2_basic01.normal h2 {
	padding: 0;
}

.h2_basic01.tagarea h2 {
	padding: 0;
	font-size: 20px;
	font-size: 2rem;
}

.h2_basic01.arealist {
	margin: 0 0 52px 0;
}

.h2_basic01.arealist h2 {
	padding: 20px 24px 20px 24px;
	border-width: 4px 0 4px 0;
	border-style: solid;
	border-color: #ffffff;
	color: #ffffff;
}

.h2_basic01.area h2:before {
	background: url(../img/ico_area_blue.svg) no-repeat 0 50%;
	background-size: 30px 30px;
}

.h2_basic01.ticket h2:before {
	background: url(../img/ico_ticket_blue.svg) no-repeat 0 50%;
	background-size: 30px 30px;
}

.h2_basic01.money h2:before {
	background: url(../img/ico_price_blue.svg) no-repeat 0 50%;
	background-size: 30px 30px;
}

.h2_basic01.buy h2:before {
	background: url(../img/ico_buy_blue.svg) no-repeat 0 50%;
	background-size: 30px 30px;
}

.h2_basic01.other h2:before {
	background: url(../img/ico_other_blue.svg) no-repeat 0 50%;
	background-size: 30px 30px;
}

.h2_basic01.kanko h2:before {
	background: url(../img/ico_kankou_black.svg) no-repeat 0 50%;
	background-size: 30px 30px;
}

.h2_basic01.sansaku h2:before {
	background: url(../img/ico_sansaku_black.svg) no-repeat 0 50%;
	background-size: 30px 30px;
}

.h2_basic01.onsen h2:before {
	background: url(../img/ico_onsen_black.svg) no-repeat 0 50%;
	background-size: 30px 30px;
}

.h2_basic01.gourmet h2:before {
	background: url(../img/ico_gourmet_black.svg) no-repeat 0 50%;
	background-size: 30px 30px;
}

.h2_basic01.souvenir h2:before {
	background: url(../img/ico_souvenir_black.svg) no-repeat 0 50%;
	background-size: 30px 30px;
}

.h2_basic01.hotel h2:before {
	background: url(../img/ico_hotel_black.svg) no-repeat 0 50%;
	background-size: 30px 30px;
}

.h2_basic01.route h2:before {
	background: url(../img/ico_train_black.svg) no-repeat 0 50%;
	background-size: 30px 30px;
}

.h2_basic01.special_nikko h2:before {
	background: url(../img/ico_kingu_black.png) no-repeat 95% 20%;
	background-size: 30px 30px;
}

.h2_basic01.movie h2:before {
	background: url(../img/ico_movie_black.svg) no-repeat 0 50%;
	background-size: 30px 30px;
}

.h3_basic01 {
	margin: 0 0 27px 0;
	text-align: center;
}

.h3_basic01 h3 {
	display: inline-block;
	position: relative;
	font-size: 20px;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
}

.h3_basic01.arealist {
	margin: 0 0 35px 0;
}

.h3_basic01.arealist h3 {
	padding: 0 0 0 33px;
}

.h3_basic01.arealist h3:before {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 25px;
	height: 25px;
	content: "";
	background: url(../img/ico_map_black.svg) no-repeat 0 50%;
	background-size: 25px 25px;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	.h2_basic01 h2 {
		padding: 0 0 0 48px;
	}
	.h2_basic01 h2:before {
		width: 40px;
		height: 40px;
	}
	.h2_basic01.arealist h2 {
		font-size: 40px;
		font-size: 4rem;
	}
	.h2_basic01.area h2:before {
		background-size: 40px 40px;
	}
	.h2_basic01.ticket h2:before {
		background-size: 40px 40px;
	}
	.h2_basic01.money h2:before {
		background-size: 40px 40px;
	}
	.h2_basic01.buy h2:before {
		background-size: 40px 40px;
	}
	.h2_basic01.other h2:before {
		background-size: 40px 40px;
	}
	.h2_basic01.kanko h2:before {
		background-size: 40px 40px;
	}
	.h2_basic01.sansaku h2:before {
		background-size: 40px 40px;
	}
	.h2_basic01.onsen h2:before {
		background-size: 40px 40px;
	}
	.h2_basic01.gourmet h2:before {
		background-size: 40px 40px;
	}
	.h2_basic01.souvenir h2:before {
		background-size: 40px 40px;
	}
	.h2_basic01.hotel h2:before {
		background-size: 40px 40px;
	}
	.h2_basic01.route h2:before {
		background-size: 40px 40px;
	}
	.h2_basic01.movie h2:before {
		background-size: 40px 40px;
	}
	.h3_basic01.arealist h3 {
		padding: 0 0 0 38px;
		font-size: 24px;
		font-size: 2.4rem;
	}
	.h3_basic01.arealist h3:before {
		width: 30px;
		height: 30px;
		background-size: 30px 30px;
	}
}

/* ==========================================================
!Listing
========================================================== */
/* 青丸リスト
------------------------------------ */
.ul_basic01 ul li {
	position: relative;
	padding: 0 0 8px 1em;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2;
}

.ul_basic01 ul li:last-of-type {
	margin: 0;
}

.ul_basic01 ul li:before {
	display: block;
	position: absolute;
	top: 0.8em;
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	content: "";
	background: #005baf none;
}

.ashio-area .ul_basic01 ul li:before {
	display: block;
	position: absolute;
	top: 0.8em;
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	content: "";
	background: #545454 none;
}

.ashio-area.ul_basic01 ul li:before {
	display: block;
	position: absolute;
	top: 0.8em;
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	content: "";
	background: #000 none;
}

.ul_basic01 ul li span {
	display: inline-block;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.5;
}

.ul_basic01 .note01 > li:before {
	width: 0;
	height: 0;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	.ul_basic01 ul li:before {
		top: 0.9em;
	}
}

/* 番号リスト
------------------------------------ */
.ol_basic01 ol {
	padding: 0 0 0 2em;
	list-style-type: decimal;
}

.ol_basic01 ol li {
	margin: 4px 0 0 0;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2;
}

.ol_basic01 ol li:first-child {
	margin: 0;
}

.ol_basic01 ol li span {
	display: inline-block;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.5;
}

/* フローリスト
------------------------------------ */
.ol_flow01 ol > li {
	position: relative;
	margin: 4vw 0 0 0;
	background: #eaeaea none;
}

.ol_flow01 ol > li:before {
	display: block;
	/* 下向き三角 */
	position: absolute;
	top: -3.2vw;
	left: 50%;
	width: 0;
	max-width: 24px;
	height: 0;
	margin: 0 0 0 -2.5vw;
	border-width: 2.5vw 2.5vw 0 2.5vw;
	border-style: solid;
	border-color: #00af52 transparent transparent transparent;
	content: "";
}

.ol_flow01 ol > li:first-child {
	margin: 0;
}

.ol_flow01 ol > li:first-child:before {
	content: none;
}

.ol_flow01 ol > li.column01 {
	padding: 0;
	border-width: 0;
	background: transparent;
}

.ol_flow01 ol > li > ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row nowrap;
	        flex-flow: row nowrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-ms-flex-line-pack: center;
	    align-content: center;
}

.ol_flow01 ol > li > ul > li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	position: static;
	width: calc(50% - 1%);
	margin: 0;
	background: #efefef none;
}

.ol_flow01 ol > li > ul > li div {
	width: 100%;
}

.ol_flow01 ol > li > ul > li div p {
	margin: 0;
	padding: 4% 4% 4% 4%;
}

.ol_flow01 ol > li > ul > li dl {
	width: 100%;
}

.ol_flow01 ol > li > ul > li dl dt {
	padding: 4% 4% 2% 4%;
}

.ol_flow01 ol > li > ul > li dl dd {
	padding: 0 4% 4% 4%;
}

.ol_flow01 ol > li p {
	margin: 0;
	padding: 2% 2% 2% 2%;
	font-weight: bold;
	text-align: center;
}

.ol_flow01 ol > li dl {
	padding: 2% 2% 2% 2%;
}

.ol_flow01 ol > li dl dt {
	font-weight: bold;
}

.ol_flow01 ol > li dl dd {
	font-size: 88%;
}

/* 説明リスト
------------------------------------ */
.dl_basic01 dl {
	margin: 0 0 25px 0;
}

.dl_basic01 dl dt {
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 2;
}

.dl_basic01 dl dd {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2;
}

.dl_basic02 {
	margin: 10px 0 0 0;
}

.dl_basic02 dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row wrap;
	        flex-flow: row wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	margin: 0 0 10px 0;
	padding: 0 0 10px 0;
	border-width: 0 0 1px 0;
	border-style: dotted;
	border-color: #d6d6d6;
}

.dl_basic02 dl:last-of-type {
	margin-bottom: 0;
}

.dl_basic02 dl dt {
	width: 40%;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 2;
}

.dl_basic02 dl dd {
	width: 60%;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2;
}

.dl_basic02 dl dd + dd {
	width: 1000%;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	.dl_basic02 dl dt {
		width: 20%;
	}
	.dl_basic02 dl dd {
		width: 80%;
	}
}

/* ==========================================================
!Box
========================================================== */
/* 基本：縦積み2カラム
------------------------------------ */
.box_basic01 ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row wrap;
	        flex-flow: row wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.box_basic01 ul li {
	width: calc(50% - 5px);
	max-width: 100%;
	margin: 0 0 40px 0;
}

.box_basic01 ul li:nth-child(2n+1):nth-last-child(-n+2),
.box_basic01 ul li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
	margin: 0;
}

.box_basic01 a p {
	overflow: hidden;
	max-height: 170px;
}

.box_basic01 a p img {
	border-radius: 5px;
}

.box_basic01 a .detail {
	padding: 0 5px 0 5px;
}

.box_basic01 a .detail dl {
	padding: 15px 0 15px 0;
}

.box_basic01 a .detail dl dt {
	margin: 0 0 10px 0;
	font-size: 20px;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
}

.box_basic01 a .detail dl dd {
	font-size: 14px;
	font-size: 1.4rem;
}

.box_basic01 a .detail .line {
	display: block;
	position: relative;
	margin: 0 0 2% 0;
	padding: 0 0 0 1.8em;
	color: #999999;
	font-size: 13px;
	font-size: 1.3rem;
}

.box_basic01 a .detail .line:before {
	position: absolute;
	top: 0.2em;
	left: 0;
	color: #005baf;
	font: bold 14px/1 "Font Awesome 5 Free";
	content: "\f3c5";
}

.box_basic01 a .detail .tag {
	display: block;
	position: relative;
	margin: 0 0 2% 0;
	padding: 0 0 0 1.8em;
	color: #999999;
	font-size: 13px;
	font-size: 1.3rem;
}

.box_basic01 a .detail .tag:before {
	position: absolute;
	top: 0.4em;
	left: 0;
	color: #005baf;
	font: bold 14px/1 "Font Awesome 5 Free";
	content: "\f02b";
}

.box_basic01 a .detail .update {
	display: block;
	color: #999999;
	font-size: 12px;
	font-size: 1.2rem;
	text-align: right;
}

.box_basic01.purpose ul li {
	width: 100%;
}

.box_basic01.purpose a {
	width: 100%;
}

.box_basic01.purpose div {
	overflow: hidden;
	max-height: 230px;
	border-radius: 5px;
}

.box_basic01.purpose div p {
	overflow: visible;
	position: relative;
	max-height: 230px;
	margin: 0 0 -1px 0;
}

.box_basic01.purpose div p:before {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 100px;
	height: 100px;
	border-radius: 50%;
	content: "";
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

.box_basic01.purpose div p img {
	width: 100%;
	max-height: 230px;
}

.box_basic01.purpose .block_kanko01 p:before {
	background: #1ba7f0 url(../img/ico_kankou_white.svg) no-repeat center 50%;
	background-size: 60px 60px;
}

.box_basic01.purpose .block_kanko01 dl dt {
	color: #1ba7f0;
}

.box_basic01.purpose .block_sansaku01 p:before {
	background: #00af52 url(../img/ico_sansaku_white.svg) no-repeat center 50%;
	background-size: 60px 60px;
}

.box_basic01.purpose .block_sansaku01 dl dt {
	color: #00af52;
}

.box_basic01.purpose .block_onsen01 p:before {
	background: #e1b10b url(../img/ico_onsen_white.svg) no-repeat center 50%;
	background-size: 60px 60px;
}

.box_basic01.purpose .block_onsen01 dl dt {
	color: #e1b10b;
}

.box_basic01.purpose .block_gourmet01 p:before {
	background: #ea6f8f url(../img/ico_gourmet_white.svg) no-repeat center 50%;
	background-size: 60px 60px;
}

.box_basic01.purpose .block_gourmet01 dl dt {
	color: #ea6f8f;
}

.box_basic01.purpose .block_souvenir01 p:before {
	background: #864fca url(../img/ico_souvenir_white.svg) no-repeat center 50%;
	background-size: 60px 60px;
}

.box_basic01.purpose .block_souvenir01 dl dt {
	color: #864fca;
}

.box_basic01.purpose .block_hotel01 p:before {
	background: #00af90 url(../img/ico_hotel_white.svg) no-repeat center 50%;
	background-size: 60px 60px;
}

.box_basic01.purpose .block_hotel01 dl dt {
	color: #00af90;
}

.box_basic01.movie a p {
	position: relative;
	margin: 0 0 -1px 0;
}

.box_basic01.movie a p:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
	background: rgba(0, 0, 0, 0.3) none;
}

.box_basic01.movie a p:after {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 15vw;
	height: 15vw;
	content: "";
	background: url(../img/ico_play01.svg) no-repeat 0 0;
	background-size: 15vw auto;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	.box_basic01 ul li {
		width: calc((100% - 48px) / 3);
		margin: 0 0 60px 0;
	}
	.box_basic01 ul li:nth-child(3n+1):nth-last-child(-n+3),
	.box_basic01 ul li:nth-child(3n+1):nth-last-child(-n+3) ~ li {
		margin: 0;
	}
	.box_basic01 ul:after {
		display: block;
		width: calc((100% - 48px) / 3);
		content: "";
	}
	.box_basic01 a p {
		overflow: hidden;
		position: relative;
		z-index: 1;
		border-radius: 5px;
	}
	.box_basic01 a p img {
		width: 100%;
		-webkit-transform: scale(1.01);
		    -ms-transform: scale(1.01);
		        transform: scale(1.01);
		-webkit-transition: 0.4s;
		-o-transition: 0.4s;
		transition: 0.4s;
	}
	.box_basic01 a figure {
		overflow: hidden;
		position: relative;
		z-index: 1;
		border-radius: 5px;
	}
	.box_basic01 a figure img {
		width: 100%;
		-webkit-transition: 0.4s;
		-o-transition: 0.4s;
		transition: 0.4s;
	}
	.box_basic01 a:hover p img,
	.box_basic01 a:focus p img {
		-webkit-transform: scale(1.1);
		    -ms-transform: scale(1.1);
		        transform: scale(1.1);
	}
	.box_basic01 a:hover figure img,
	.box_basic01 a:focus figure img {
		-webkit-transform: scale(1.1);
		    -ms-transform: scale(1.1);
		        transform: scale(1.1);
	}
	.box_basic01.purpose ul li {
		width: calc((100% - 64px) / 3);
	}
	.box_basic01.purpose ul:after {
		display: block;
		width: calc((100% - 64px) / 3) !important;
		content: "";
	}
	.box_basic01.purpose div {
		max-height: 250px;
	}
	.box_basic01.purpose div p img {
		max-height: 250px;
	}
	.box_basic01.movie ul li {
		width: calc((100% - 64px) / 3);
	}
	.box_basic01.movie ul:after {
		display: block;
		width: calc((100% - 64px) / 3) !important;
		content: "";
	}
	.box_basic01.movie a p:after {
		width: 80px;
		height: 80px;
		background-size: 80px auto;
	}
}

/* 960px以上（大きめタブレット 横位置とか） */
@media only screen and (min-width: 960px), print {
	.box_basic01 ul li {
		width: calc((100% - 84px) / 4);
	}
	.box_basic01 ul li:nth-child(4n+1):nth-last-child(-n+4),
	.box_basic01 ul li:nth-child(4n+1):nth-last-child(-n+4) ~ li {
		margin: 0;
	}
	.box_basic01 ul:before,
	.box_basic01 ul:after {
		display: block;
		width: calc((100% - 84px) / 4) !important;
		content: "";
	}
	.box_basic01 ul:before {
		-webkit-box-ordinal-group: 2;
		    -ms-flex-order: 1;
		        order: 1;
	}
}

/* 基本：横並び2カラム
------------------------------------ */
.box_basic02 ul li {
	margin: 0 0 25px 0;
}

.box_basic02 ul li:nth-last-child {
	margin: 0;
}

.box_basic02 ol li {
	margin: 0 0 25px 0;
}

.box_basic02 ol li:nth-last-child {
	margin: 0;
}

.box_basic02 ol li dl dt {
	position: relative;
	padding: 0 0 0 2em;
}

.box_basic02 ol li dl dt:before {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 1.5em;
	height: 1.5em;
	border-radius: 50%;
	content: "";
	background: #000000 none;
}

.box_basic02 ol li dl dt:after {
	position: absolute;
	top: 7%;
	left: 0;
	z-index: 2;
	width: 1.5em;
	height: 1.5em;
	color: #ffffff;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	-webkit-transform: translateY(-55%);
	    -ms-transform: translateY(-55%);
	        transform: translateY(8%);
}

.box_basic02 ol li:nth-of-type(1) dl dt:after {
	content: "1";
}

.box_basic02 ol li:nth-of-type(2) dl dt:after {
	content: "2";
}

.box_basic02 ol li:nth-of-type(3) dl dt:after {
	content: "3";
}

.box_basic02 ol li:nth-of-type(4) dl dt:after {
	content: "4";
}

.box_basic02 ol li:nth-of-type(5) dl dt:after {
	content: "5";
}

.box_basic02 ol li:nth-of-type(6) dl dt:after {
	content: "6";
}

.box_basic02 a,
.box_basic02 div {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row wrap;
	        flex-flow: row wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.box_basic02 a p,
.box_basic02 div p {
	overflow: hidden;
	width: 33%;
}

.box_basic02 a p img,
.box_basic02 div p img {
	border-radius: 5px;
}

.box_basic02 a dl,
.box_basic02 div dl {
	width: 65%;
	padding: 0 5px 0 5px;
}

.box_basic02 a dl dt,
.box_basic02 div dl dt {
	margin: 0 0 10px 0;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 700;
}

.box_basic02 a dl dd,
.box_basic02 div dl dd {
	font-size: 12px;
	font-size: 1.2rem;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	.box_basic02 ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-flow: row wrap;
		        flex-flow: row wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
		text-align: center;
	}
	.box_basic02 ol {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-flow: row wrap;
		        flex-flow: row wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
	}
	.box_basic02 ol li {
		width: calc((100% - 52px) / 2);
	}
	.box_basic02 ol li:nth-child(3n+1):nth-last-child(-n+3),
	.box_basic02 ol li:nth-child(3n+1):nth-last-child(-n+3) ~ li {
		margin: 0;
	}
	.box_basic02 a dl dt,
	.box_basic02 div dl dt {
		margin: 0 0 5px 0;
		font-size: 20px;
		font-size: 2rem;
	}
	.box_basic02 a dl dd,
	.box_basic02 div dl dd {
		font-size: 14px;
		font-size: 1.4rem;
	}
}

/* ==========================================================
!Box 線
========================================================== */
/* 灰色枠
------------------------------------ */
.box_flame01 {
	margin: 27px 0 0 0;
	padding: 26px 26px 26px 26px;
	border-width: 4px 4px 4px 4px;
	border-style: solid;
	border-color: #d6d6d6;
	border-radius: 10px;
	background: #ffffff none;
}

.box_flame01 ul li {
	font-size: 14px;
	font-size: 1.4rem;
}

.box_flame01 dl dt {
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: 700;
}

.box_flame01 dl dd {
	margin: 0 0 3% 0;
	font-size: 14px;
	font-size: 1.4rem;
}

.box_flame01 dl dd:last-of-type {
	margin: 0;
}

.box_flame01 dl dd a {
	color: #005baf;
}

.box_flame01 figure {
	text-align: center;
}

.box_flame01 > *:last-of-type {
	margin: 0;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	.box_flame01 {
		padding: 36px 36px 36px 36px;
	}
}

/* 青枠
------------------------------------ */
.box_flame02 {
	margin: 9.2% 0 0 0;
	padding: 6% 0 0 0;
	border-width: 1px 1px 1px 1px;
	border-style: solid;
	border-color: #005baf;
	border-radius: 10px;
	background: #ffffff none;
}

.box_flame02 ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row wrap;
	        flex-flow: row wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.box_flame02 ul li {
	position: relative;
	width: calc(100% / 2);
	margin: 0 0 6% 0;
}

.box_flame02 ul li:after {
	position: absolute;
	top: 50%;
	right: 0;
	width: 1px;
	height: 100%;
	content: "";
	background: -webkit-linear-gradient(top, #d6d6d6, #d6d6d6 1px, transparent 1px, transparent 2px);
	background: -o-linear-gradient(top, #d6d6d6, #d6d6d6 1px, transparent 1px, transparent 2px);
	background: linear-gradient(to bottom, #d6d6d6, #d6d6d6 1px, transparent 1px, transparent 2px);
	background-size: 1px 2px;
	-webkit-transform: translate(0, -50%);
	    -ms-transform: translate(0, -50%);
	        transform: translate(0, -50%);
}

.box_flame02 ul li:nth-child(2n):after {
	content: none;
}

.box_flame02 ul li a {
	display: block;
	position: relative;
	padding: 0 0 7% 0;
	color: #005baf;
	font-size: 14px;
	font-size: 1.4rem;
}

.box_flame02 ul li a:after {
	display: block;
	position: absolute;
	bottom: 2px;
	left: 50%;
	width: 8px;
	height: 8px;
	border-width: 0 1px 1px 0;
	border-style: solid;
	border-color: #005baf;
	content: "";
	-webkit-transform: translate(-50%, 0) rotate(45deg);
	    -ms-transform: translate(-50%, 0) rotate(45deg);
	        transform: translate(-50%, 0) rotate(45deg);
}

.box_flame02 dl dt {
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: 700;
}

.box_flame02 dl dd {
	margin: 0 0 3% 0;
	font-size: 14px;
	font-size: 1.4rem;
}

.box_flame02 dl dd a {
	color: #005baf;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	.box_flame02 {
		margin: 42px 0 0 0;
		padding: 15px 0 0 0;
	}
	.box_flame02 ul {
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
	}
	.box_flame02 ul li {
		width: auto;
		margin: 0 0 13px 0;
	}
	.box_flame02 ul li:nth-child(2n):after {
		content: "";
	}
	.box_flame02 ul li:first-child:nth-last-child(1),
	.box_flame02 ul li:first-child:nth-last-child(1) ~ li {
		width: 100%;
	}
	.box_flame02 ul li:first-child:last-of-type:after {
		content: none;
	}
	.box_flame02 ul li:first-child:nth-last-child(2),
	.box_flame02 ul li:first-child:nth-last-child(2) ~ li {
		width: 50%;
	}
	.box_flame02 ul li:first-child:last-of-type:after {
		content: none;
	}
	.box_flame02 ul li:first-child:nth-last-child(3),
	.box_flame02 ul li:first-child:nth-last-child(3) ~ li {
		width: 33.33333%;
	}
	.box_flame02 ul li:first-child:last-of-type:after {
		content: none;
	}
	.box_flame02 ul li:first-child:nth-last-child(4),
	.box_flame02 ul li:first-child:nth-last-child(4) ~ li {
		width: 25%;
	}
	.box_flame02 ul li:first-child:last-of-type:after {
		content: none;
	}
	.box_flame02 ul li:first-child:nth-last-child(5),
	.box_flame02 ul li:first-child:nth-last-child(5) ~ li {
		width: 20%;
	}
	.box_flame02 ul li:first-child:last-of-type:after {
		content: none;
	}
	.box_flame02 ul li a {
		padding: 0 0 13px 0;
	}
}

/* ==========================================================
!Box 塗り
========================================================== */
/* 白塗ベース
------------------------------------ */
.box_paint01 {
	border-radius: 5px;
}

.box_paint01 ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row wrap;
	        flex-flow: row wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.box_paint01 ul li {
	margin: 0 0 40px 0;
	border-radius: 5px;
	-webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.1);
	        box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.1);
	background: #ffffff none;
}

.box_paint01 a {
	width: 100%;
}

.box_paint01 a div dl {
	padding: 20px 15px 20px 15px;
}

.box_paint01 a div dl dt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	margin: 0 0 18px 0;
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: 700;
}

.box_paint01 a div dl dd {
	font-size: 13px;
	font-size: 1.3rem;
}

.box_paint01 a .img {
	overflow: hidden;
	position: relative;
	z-index: 1;
	margin: 0 0 -1px 0;
	border-radius: 0 0 5px 5px;
}

.box_paint01 a .img span {
	display: block;
	width: 100%;
	height: 20vh;
	border-radius: 0 0 5px 5px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.box_paint01 a p {
	overflow: hidden;
	position: relative;
	z-index: 1;
	border-radius: 0 0 5px 5px;
}

.box_paint01 a p img {
	width: 100%;
	min-height: 18.6vh;
	border-radius: 0 0 5px 5px;
	-webkit-transform: scale(1.01);
	    -ms-transform: scale(1.01);
	        transform: scale(1.01);
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.box_paint01 a figure {
	overflow: hidden;
	position: relative;
	z-index: 1;
	border-radius: 0 0 5px 5px;
}

.box_paint01 a figure img {
	width: 100%;
	border-radius: 0 0 5px 5px;
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.box_paint01 a:hover .img span,
.box_paint01 a:focus .img span {
	-webkit-transform: scale(1.1);
	    -ms-transform: scale(1.1);
	        transform: scale(1.1);
}

.box_paint01 a:hover p img,
.box_paint01 a:focus p img {
	-webkit-transform: scale(1.1);
	    -ms-transform: scale(1.1);
	        transform: scale(1.1);
}

.box_paint01 a:hover figure img,
.box_paint01 a:focus figure img {
	-webkit-transform: scale(1.1);
	    -ms-transform: scale(1.1);
	        transform: scale(1.1);
}

.box_paint01.arealist ul {
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
}

.box_paint01.arealist ul li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row wrap;
	        flex-flow: row wrap;
	position: relative;
}

.box_paint01.arealist ul li:after {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 6px;
	border-radius: 0 0 5px 5px;
	content: "";
}

.box_paint01.arealist a {
	width: 100%;
	max-width: 100%;
}

.box_paint01.arealist a .image {
	overflow: hidden;
	position: relative;
	width: 100%;
	border-radius: 5px 5px 0 0;
}

.box_paint01.arealist a .image:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	border-radius: 5px 5px 0 0;
	content: "";
	background: rgba(0, 0, 0, 0.3) none;
}

.box_paint01.arealist a .image:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 5.5%;
	z-index: 3;
	width: 8px;
	height: 8px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #ffffff;
	content: "";
	-webkit-transform: translateY(-50%) rotate(45deg);
	    -ms-transform: translateY(-50%) rotate(45deg);
	        transform: translateY(-50%) rotate(45deg);
}

.box_paint01.arealist a .image img {
	width: 100%;
	-webkit-transform: scale(1);
	    -ms-transform: scale(1);
	        transform: scale(1);
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.box_paint01.arealist a .image p {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 100%;
	padding: 24px;
	color: #ffffff;
	font-size: 20px;
	font-size: 2rem;
	font-weight: 700;
	text-align: center;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

.box_paint01.arealist a:hover .image img,
.box_paint01.arealist a:focus .image img {
	-webkit-transform: scale(1.1);
	    -ms-transform: scale(1.1);
	        transform: scale(1.1);
}

.box_paint01.arealist .text {
	padding: 16px 20px 24px 20px;
}

.box_paint01.arealist .text > ul {
	padding: 0 0 0 24px;
}

.box_paint01.arealist .text > ul li {
	display: block;
	width: 100%;
	margin: 0;
	-webkit-box-shadow: none;
	        box-shadow: none;
}

.box_paint01.arealist .text > ul li a {
	position: relative;
	padding: 16px 0 16px 1.5em;
}

.box_paint01.arealist .text > ul li a:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 5.5%;
	z-index: 3;
	width: 8px;
	height: 8px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #333333;
	content: "";
	-webkit-transform: translateY(-50%) rotate(45deg);
	    -ms-transform: translateY(-50%) rotate(45deg);
	        transform: translateY(-50%) rotate(45deg);
}

.box_paint01.arealist .text > ul li.kanko a {
	background: url(../img/ico_kankou_black.svg) no-repeat 0 50%;
	background-size: auto 1.2em;
}

.box_paint01.arealist .text > ul li.sansaku a {
	background: url(../img/ico_sansaku_black.svg) no-repeat 0 50%;
	background-size: auto 1.2em;
}

.box_paint01.arealist .text > ul li.onsen a {
	background: url(../img/ico_onsen_black.svg) no-repeat 0 50%;
	background-size: auto 1.2em;
}

.box_paint01.arealist .text > ul li.gourmet a {
	background: url(../img/ico_gourmet_black.svg) no-repeat 0 50%;
	background-size: auto 1.2em;
}

.box_paint01.arealist .text > ul li.souvenir a {
	background: url(../img/ico_souvenir_black.svg) no-repeat 0 50%;
	background-size: auto 1.2em;
}

.box_paint01.arealist .text > ul li.hotel a {
	background: url(../img/ico_hotel_black.svg) no-repeat 0 50%;
	background-size: auto 1.2em;
}

.box_paint01.arealist .text > ul li.ticket a {
	background: url(../img/ico_ticket_black.svg) no-repeat 0 50%;
	background-size: auto 1.2em;
}

.box_paint01.arealist .block_nikko-kinugawa01:after {
	background: #ff7e00 none;
}

.box_paint01.arealist .block_tokyo-shitamachi01:after {
	background: #0057b8 none;
}

.box_paint01.arealist .block_tobu-urban-park-line01:after {
	background: #65b900 none;
}

.box_paint01.arealist .block_tochigi-utsunomiya-kanuma01:after {
	background: #d3a11d none;
}

.box_paint01.arealist .block_ryomo01:after {
	background: #ec2620 none;
}

.box_paint01.arealist .block_aizu01:after {
	background: #d17a17 none;
}

.box_paint01.arealist .block_tojo-line-south01:after {
	background: #1e22aa none;
}

.box_paint01.arealist .block_tojo-line-north01:after {
	background: #1e22aa none;
}

.box_paint01.ticket {
	max-width: 1120px;
	margin: 0 auto 30px;
}

.box_paint01.ticket ul {
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
}

.box_paint01.ticket ul li {
	width: calc(50% - 5px);
	max-width: 100%;
}

.box_paint01.ticket a div dl dt {
	padding: 10px 0 10px 0;
	border-width: 2px 0 2px 0;
	border-style: solid;
	border-color: #005baf;
	text-align: center;
}

.box_paint01.ticket a p {
	margin: 0 0 -1px 0;
}

.box_paint01.ticket.one {
	max-width: 800px;
	border-radius: 5px;
	-webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.1);
	        box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.1);
	background: #ffffff none;
}

.box_paint01.ticket.one a div dl {
	padding: 40px 40px 40px 40px;
}

.box_paint01.ticket.one a .img span {
	height: 33vh;
}

.box_paint01.ticket.one a p img {
	max-height: 33vh;
}

.box_paint01.recommend > ul {
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
}

.box_paint01.recommend > ul li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-shadow: none;
	        box-shadow: none;
	background: none;
}

.box_paint01.recommend > ul li.no {
	display: none;
}

.box_paint01.recommend.slide_recommend01 > ul li {
	display: inline-block;
}

.box_paint01.recommend a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 5% 4% 4% 4%;
}

.box_paint01.recommend figure {
	min-height: 0;
	border-radius: 0;
}

.box_paint01.recommend figure img {
	border-radius: 0;
}

.box_paint01.recommend article {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	        flex-direction: column;
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 100%;
	border-radius: 5px;
	-webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.1);
	        box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.1);
	background: #ffffff none;
}

.box_paint01.recommend article.new:before {
	position: absolute;
	top: -4%;
	left: -4%;
	z-index: 3;
	width: 15vw;
	max-width: 50px;
	height: 15vw;
	max-height: 50px;
	padding: 1.5em 0 0 0;
	border-radius: 50%;
	color: #ffffff;
	font-size: 12px;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	content: "NEW";
	background: #e21818 none;
}

.box_paint01.recommend article figure {
	-webkit-box-ordinal-group: 1;
	    -ms-flex-order: 0;
	        order: 0;
	width: 100%;
	max-height: 218px;
	border-radius: 5px 5px 0 0;
}

.box_paint01.recommend article .detail {
	-webkit-box-ordinal-group: 2;
	    -ms-flex-order: 1;
	        order: 1;
	position: relative;
	width: 100%;
	max-width: 100%;
	padding: 7.7% 7.7% 5.2% 7.7%;
}

.box_paint01.recommend article .detail h3 {
	font-size: 16px;
	font-size: 1.6rem;
	margin: 0 0 12% 0;
	font-weight: 700;
	line-height: 1.5;
}

.box_paint01.recommend article .detail h3 span {
	display: block;
	margin: 0 0 2.5% 0;
	font-size: 11px;
	font-size: 1.1rem;
	font-weight: 400;
}

.box_paint01.recommend article .detail .tag {
	display: block;
	position: relative;
	margin: 0 0 2% 0;
	padding: 0 0 0 1.8em;
	color: #999999;
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 1.5;
}

.box_paint01.recommend article .detail .tag:before {
	position: absolute;
	top: 0.4em;
	left: 0;
	color: #005baf;
	font: bold 14px/1 "Font Awesome 5 Free";
	content: "\f02b";
}

.box_paint01.recommend article .detail .line {
	display: block;
	position: relative;
	margin: 0 0 1% 0;
	padding: 0 0 0 1.8em;
	color: #999999;
	font-size: 13px;
	font-size: 1.3rem;
}

.box_paint01.recommend article .detail .line:before {
	position: absolute;
	top: 0.2em;
	left: 0.2em;
	color: #005baf;
	font: bold 14px/1 "Font Awesome 5 Free";
	content: "\f3c5";
}

.box_paint01.recommend article .detail .update {
	display: block;
	color: #999999;
	font-size: 12px;
	font-size: 1.2rem;
	text-align: right;
}

.box_paint01.spot a dl dt {
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.box_paint01.spot a p {
	margin: 0;
	border-radius: 5px 5px 0 0;
}

.box_paint01.spot a p img {
	height: auto;
}

.box_paint01.movie {
	-webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
	        box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}

.box_paint01.movie a div dl {
	padding: 8% 9% 11% 9%;
}

.box_paint01.movie a div dl dt {
	margin: 0 0 4% 0;
	padding: 3.7% 0 3.7% 0;
	border-width: 0;
	border-style: solid;
	border-color: #005baf;
	font-size: 16px;
	font-size: 1.6rem;
	text-align: center;
}

.box_paint01.movie a .img {
	position: relative;
	border-radius: 0 0 5px 5px;
}

.box_paint01.movie a .img:before {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 15vw;
	height: 15vw;
	content: "";
	background: url(../img/ico_play01.svg) no-repeat 0 0;
	background-size: 15vw auto;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

.box_paint01.movie a p {
	position: relative;
	margin: 0 0 -1px 0;
	border-radius: 0 0 5px 5px;
}

.box_paint01.movie a p:before {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	width: 15vw;
	height: 15vw;
	content: "";
	background: url(../img/ico_play01.svg) no-repeat 0 0;
	background-size: 15vw auto;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

.box_paint01.magazine ul li {
	width: 100%;
	margin: 0 0 1px 0;
	border-radius: 0;
	-webkit-box-shadow: none;
	        box-shadow: none;
}

.box_paint01.magazine a {
	display: block;
	width: 80%;
	max-width: 558px;
	margin: 0 auto;
	padding: 9% 6% 6% 6%;
	background: #ffffff none;
}

.box_paint01.magazine a > article figure {
	margin: 0 0 6.5% 0;
	text-align: center;
}

.box_paint01.magazine a > article figure img {
	width: auto;
	max-height: 170px;
	margin: 0 auto;
}

.box_paint01.magazine a > article h2 {
	margin: 0 0 3.5% 0;
	font-weight: 700;
}

.box_paint01.magazine a > article p {
	margin: 0 0 5% 0;
	font-size: 13px;
	font-size: 1.3rem;
}

.box_paint01.magazine a > article ul {
	display: block;
}

.box_paint01.magazine a > article ul li {
	margin: 0;
	padding: 0 0 0 1em;
	border-radius: none;
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: #999999;
	font-size: 11px;
	font-size: 1.1rem;
	background: transparent none;
}

.box_paint01.magazine a.blank h2 {
	display: inline-block;
	padding: 0 1em 0 0;
	background: url(../img/ico_window_blue.svg) no-repeat right 3px top 55%;
	background-size: 9px 9px;
}

.box_paint01.magazine_bn {
	max-width: 800px;
	margin: 0 auto;
}

.box_paint01.magazine_bn ul {
	margin: 0 0 8% 0;
}

.box_paint01.magazine_bn ul li {
	width: calc((100% - 1px) / 2);
	margin: 0 0 1px 0;
	border-radius: 0;
	-webkit-box-shadow: none;
	        box-shadow: none;
}

.box_paint01.magazine_bn a {
	display: block;
	width: 80%;
	max-width: 558px;
	margin: 0 auto;
	padding: 12% 4% 12% 4%;
	text-align: center;
	background: #ffffff none;
}

.box_paint01.magazine_bn a.blank p {
	display: inline-block;
	padding: 0 1.5em 0 0;
	text-align: center;
	background: url(../img/ico_window_blue.svg) no-repeat right 3px top 55%;
	background-size: 9px 9px;
}

.box_paint01.magazine_bn a figure {
	margin: 0 0 8% 0;
	text-align: center;
}

.box_paint01.magazine_bn a figure img {
	width: auto;
	max-height: 170px;
	margin: 0 auto;
}

.box_paint01.magazine_bn a p {
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 700;
}

.box_paint01.magazine_bn .btn_basic01 a {
	padding: 10px 0 10px 0;
	background: #005baf none;
}

.box_paint01.magazine_bn .btn_basic01 a:hover,
.box_paint01.magazine_bn .btn_basic01 a:focus {
	opacity: 1;
	border-color: #005baf;
	color: #005baf;
	background: #ffffff none;
}

.box_paint01.magazine_bn .btn_basic01 a:hover:after,
.box_paint01.magazine_bn .btn_basic01 a:focus:after {
	border-color: #005baf #005baf transparent transparent;
}

/* 960px以上（大きめタブレット 横位置とか） */
@media only screen and (min-width: 960px), print {
	.box_paint01 ul li {
		margin: 0 0 60px 0;
	}
	.box_paint01 a div dl {
		padding: 24px 36px 24px 40px;
	}
	.box_paint01 a div dl dt {
		margin: 0 0 12px 0;
		padding: 4px 0 4px 0;
		font-size: 16px;
		font-size: 1.6rem;
	}
	.box_paint01 a div dl dd {
		font-size: 13px;
		font-size: 1.3rem;
	}
	.box_paint01 a .img {
		overflow: hidden;
		margin: 0;
	}
	.box_paint01 a .img span {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 100%;
		max-height: none;
		border-radius: 0;
	}
	.box_paint01 a p {
		overflow: hidden;
		margin: 0;
	}
	.box_paint01 a p img {
		border-radius: 0;
	}
	.box_paint01.arealist ul li {
		width: calc((100% - 64px) / 3);
	}
	.box_paint01.arealist ul li:nth-child(3n+1):nth-last-child(-n+3),
	.box_paint01.arealist ul li:nth-child(3n+1):nth-last-child(-n+3) ~ li {
		margin: 0;
	}
	.box_paint01.arealist ul:after {
		display: block;
		width: calc((100% - 64px) / 3) !important;
		content: "";
	}
	.box_paint01.ticket ul li {
		width: calc(50% - 15px);
	}
	.box_paint01.ticket a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-flow: row wrap;
		        flex-flow: row wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: stretch;
		    -ms-flex-align: stretch;
		        align-items: stretch;
		height: 100%;
	}
	.box_paint01.ticket a div {
		width: 60%;
		max-width: 800px;
		height: auto;
	}
	.box_paint01.ticket a div dl dt {
		width: 100%;
		margin: 0 0 24px 0;
		padding: 9px 0 10px 0;
	}
	.box_paint01.ticket a div dl dd {
		width: 100%;
	}
	.box_paint01.ticket a .img {
		width: 40%;
		max-width: 366px;
		border-radius: 0 5px 5px 0;
	}
	.box_paint01.ticket a .img img {
		width: 100%;
	}
	.box_paint01.ticket a p {
		width: 40%;
		max-width: 366px;
		height: 100%;
		border-radius: 0 5px 5px 0;
	}
	.box_paint01.ticket a p img {
		width: 100%;
		height: 100%;
		border-radius: 0;
	}
	.box_paint01.ticket.one a .img span {
		height: 100%;
	}
	.box_paint01.ticket.one a p {
		height: auto;
	}
	.box_paint01.ticket.one a p img {
		height: 100%;
	}
	.box_paint01.recommend > ul li {
		width: calc((100% - 55px) / 3);
	}
	.box_paint01.recommend > ul:after {
		display: block;
		width: calc((100% - 55px) / 3) !important;
		content: "";
	}
	.box_paint01.recommend a {
		padding: 10px 10px 10px 10px;
	}
	.box_paint01.recommend article.new:before {
		top: -10px;
		left: -10px;
		padding: 1.5em 0 0 0;
		font-size: 12px;
		font-size: 1.2rem;
	}
	.box_paint01.recommend article .detail {
		padding: 22px 22px 20px 30px;
	}
	.box_paint01.recommend article .detail .category {
		top: -5%;
		left: 0;
		padding: 4px 12px 5px 12px;
		font-size: 11px;
		font-size: 1.1rem;
	}
	.box_paint01.recommend article .detail h3 {
		margin: 0 0 14px 0;
	}
	.box_paint01.recommend article .detail h3 span {
		margin: 0 0 2px 0;
		font-size: 11px;
		font-size: 1.1rem;
	}
	.box_paint01.recommend article .detail .tag {
		margin: 0 0 4px 0;
		font-size: 13px;
		font-size: 1.3rem;
	}
	.box_paint01.recommend article .detail .line {
		margin: 0 0 4px 0;
		font-size: 13px;
		font-size: 1.3rem;
	}
	.box_paint01.recommend article .detail .update {
		display: block;
		font-size: 12px;
		font-size: 1.2rem;
		text-align: right;
	}
	.box_paint01.spot a dl {
		padding: 15px 18px 15px 18px;
	}
	.box_paint01.spot a dl dt {
		margin: 0 0 8px 0;
		padding: 0;
	}
	.box_paint01.spot a p img {
		min-height: auto;
	}
	.box_paint01.movie {
		max-width: 800px;
		margin: 0 auto 30px;
		-webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
		        box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
		background: #ffffff none;
	}
	.box_paint01.movie a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-flow: row wrap;
		        flex-flow: row wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: stretch;
		    -ms-flex-align: stretch;
		        align-items: stretch;
		height: 100%;
	}
	.box_paint01.movie a div {
		width: 51%;
		max-width: 800px;
		height: 100%;
	}
	.box_paint01.movie a div dl {
		padding: 40px 40px 40px 40px;
	}
	.box_paint01.movie a div dl dt {
		margin: 0 0 16px 0;
		padding: 0;
		font-size: 20px;
		font-size: 2rem;
		font-weight: 700;
	}
	.box_paint01.movie a .img {
		width: 40%;
		max-width: 366px;
		height: 100%;
		border-radius: 0 5px 5px 0;
	}
	.box_paint01.movie a .img span {
		height: 100%;
	}
	.box_paint01.movie a .img img {
		width: 100%;
		height: 100%;
	}
	.box_paint01.movie a p {
		width: 49%;
		max-width: 390px;
		border-radius: 0 5px 5px 0;
	}
	.box_paint01.movie a p:before {
		width: 80px;
		height: 80px;
		background-size: 80px auto;
	}
	.box_paint01.movie a p img {
		width: 100%;
		height: 100%;
		border-radius: 0;
	}
	.box_paint01.magazine ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
	}
	.box_paint01.magazine ul li {
		width: calc((100% - 4px) / 4);
		margin: 0 1px 0 0;
	}
	.box_paint01.magazine ul li:nth-child(4n) {
		margin: 0;
	}
	.box_paint01.magazine a {
		width: 100%;
		padding: 24px 24px;
	}
	.box_paint01.magazine a > article ul {
		display: block;
	}
	.box_paint01.magazine a > article ul li {
		width: 100%;
	}
	.box_paint01.magazine_bn > ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
		margin: 0 0 29px 0;
	}
	.box_paint01.magazine_bn > ul li {
		width: calc((100% - 3px) / 3);
		margin: 0 1px 1px 0;
	}
	.box_paint01.magazine_bn > ul li:nth-child(3n) {
		margin: 0 0 1px 0;
	}
	.box_paint01.magazine_bn a {
		width: 100%;
		padding: 33px 24px 33px 24px;
	}
	.box_paint01.magazine_bn a figure {
		margin: 0 0 18px 0;
	}
	.box_paint01.magazine_bn .btn_basic01 {
		max-width: 320px;
		margin: 0 auto;
	}
}

/* 黄塗ベース
------------------------------------ */
.box_paint02 {
	padding: 25px 25px 25px 25px;
	background: #f5f4ef none;
}

.box_paint02 p {
	overflow: hidden;
	max-height: 300px;
	border-radius: 0 0 5px 5px;
}

.box_paint02 p img {
	border-radius: 5px 5px 0 0;
}

.box_paint02 > dl {
	padding: 4% 4% 4% 4%;
}

.box_paint02 > dl dt {
	margin: 0 0 9% 0;
	font-size: 3.64583vw;
	font-weight: 700;
}

.box_paint02 > dl dd {
	font-size: 3.38542vw;
}

.box_paint02 .caution01 {
	margin: 4% 0 0 0;
}

.box_paint02 .caution01 p {
	position: relative;
	margin: 0 0 2% 0;
	padding: 0 0 0 1.25em;
	color: #e21818;
	font-size: 16px;
	font-size: 1.6rem;
}

.box_paint02 .caution01 p:before {
	position: absolute;
	top: 0.5em;
	left: 0;
	color: #e21818;
	font: bold 14px/1 "Font Awesome 5 Free";
	content: "\f05a";
}

.box_paint02 .caution01 ul li {
	position: relative;
	padding: 0 0 0 1.5em;
	font-size: 14px;
	font-size: 1.4rem;
}

.box_paint02 .caution01 ul li:before {
	position: absolute;
	top: 0;
	left: 0;
	content: "※ ";
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	.box_paint02 {
		padding: 30px 30px 30px 30px;
	}
}

/* ==========================================================
!Table
========================================================== */
/* シンプル
------------------------------------ */
.table_basic01 > table {
	display: block;
	width: 100%;
}

.table_basic01 > table tr th,
.table_basic01 > table tr td {
	display: block;
	padding: 4% 0 4% 0;
}

.table_basic01 > table tr th {
	font-weight: 700;
}

.table_basic01 > table tr td {
	position: relative;
	padding: 0 0 4% 0;
}

.table_basic01 > table tr td:after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	content: "";
	background: -webkit-linear-gradient(left, #d6d6d6, #d6d6d6 1px, transparent 1px, transparent 2px);
	background: -o-linear-gradient(left, #d6d6d6, #d6d6d6 1px, transparent 1px, transparent 2px);
	background: linear-gradient(to right, #d6d6d6, #d6d6d6 1px, transparent 1px, transparent 2px);
	background-size: 2px 1px;
}

.table_basic01 > table tr:first-child th {
	padding: 0 0 4% 0;
}

.table_basic01 > table tr:last-child td {
	padding: 0;
}

.table_basic01 > table tr:last-child td:after {
	content: none;
}

/* 青枠版（金額用）
------------------------------------ */
.table_basic02 {
	display: block;
	overflow-x: auto;
	white-space: nowrap;

	-webkit-overflow-scrolling: touch;
}

.table_basic02 table {
	table-layout: fixed;
	width: 100%;
	min-width: 800px;
}

.table_basic02 table tr th,
.table_basic02 table tr td {
	padding: 10px 8px 10px 8px;
	border-width: 1px 1px 1px 1px;
	border-style: solid;
	border-color: #005baf;
	text-align: center;
	white-space: normal;
}

.table_basic02 table tr th:first-child,
.table_basic02 table tr td:first-child {
	border-width: 1px 1px 1px 0;
}

.table_basic02 table tr th:last-of-type,
.table_basic02 table tr td:last-of-type {
	border-width: 1px 0 1px 1px;
}

.table_basic02 table tr th:first-child:last-of-type,
.table_basic02 table tr td:first-child:last-of-type {
	border-width: 1px 0 1px 0;
}

.table_basic02 table thead tr th {
	color: #005baf;
	font-weight: 700;
	background: #e5eef7 none;
}

.table_basic02 table tbody tr th {
	padding: 10px 8px 10px 20px;
	text-align: left;
}

/* 青枠版（特典用）
------------------------------------ */
.table_basic03 > table {
	display: block;
	width: 100%;
	border-width: 0 0 1px 0;
	border-style: solid;
	border-color: #005baf;
}

.table_basic03 > table tr th,
.table_basic03 > table tr td {
	display: block;
	padding: 10px 8px 10px 8px;
	border-style: solid;
	border-color: #005baf;
	text-align: left;
	white-space: normal;
}

.table_basic03 > table tr th {
	border-width: 1px 0 0 0;
}

.table_basic03 > table tr td {
	border-width: 1px 0 0 0;
}

.table_basic03 > table thead tr th {
	color: #005baf;
	font-weight: 700;
	background: #e5eef7 none;
}

.table_basic03 > table tbody tr th {
	text-align: left;
	background: #e5eef7 none;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	/* シンプル
	------------------------------------ */
	.table_basic01 > table {
		display: table;
		table-layout: fixed;
		width: 100%;
	}
	.table_basic01 > table tr th,
	.table_basic01 > table tr td {
		display: table-cell;
		vertical-align: top;
	}
	.table_basic01 > table tr th {
		position: relative;
		width: 20%;
		max-width: 120px;
		padding: 24px 16px 24px 0;
	}
	.table_basic01 > table tr th:after {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 1px;
		content: "";
		background: -webkit-linear-gradient(left, #d6d6d6, #d6d6d6 1px, transparent 1px, transparent 2px);
		background: -o-linear-gradient(left, #d6d6d6, #d6d6d6 1px, transparent 1px, transparent 2px);
		background: linear-gradient(to right, #d6d6d6, #d6d6d6 1px, transparent 1px, transparent 2px);
		background-size: 2px 1px;
	}
	.table_basic01 > table tr td {
		width: 80%;
		padding: 24px 0 24px 16px;
	}
	.table_basic01 > table tr:first-child th {
		padding: 0 16px 24px 0;
	}
	.table_basic01 > table tr:first-child td {
		padding: 0 0 24px 16px;
	}
	.table_basic01 > table tr:last-child th {
		padding: 24px 16px 0 0;
	}
	.table_basic01 > table tr:last-child th:after {
		content: none;
	}
	.table_basic01 > table tr:last-child td {
		padding: 24px 0 0 16px;
	}
	.table_basic01 > table tr:last-child td:after {
		content: none;
	}
	.table_basic01 > table tr:only-of-type th {
		padding: 0 16px 0 0;
	}
	.table_basic01 > table tr:only-of-type td {
		padding: 0 0 0 16px;
	}
	/* 青枠版（金額用）
	------------------------------------ */
	.table_basic02 table {
		width: 100%;
	}
	.table_basic02 table tbody th {
		padding: 10px 8px 10px 27px;
	}
	/* 青枠版（特典用）
	------------------------------------ */
	.table_basic03 > table {
		display: table;
		table-layout: fixed;
		width: 100%;
	}
	.table_basic03 > table tr th,
	.table_basic03 > table tr td {
		display: table-cell;
		vertical-align: top;
	}
	.table_basic03 > table tr th {
		width: 30%;
		padding: 24px 16px 24px 16px;
	}
	.table_basic03 > table tr td {
		width: 70%;
		padding: 24px 16px 24px 16px;
	}
	html:not([lang*=""]) .table_basic03 table {
		/* Firefox用ハック */
		border-collapse: separate;
	}
}

/* ==========================================================
!Text
========================================================== */
/* 強調　青文字 */
mark {
	color: #005baf;
	font-weight: 700;
	background: none;
}

/* SEO的な強調 */
strong {
	font-weight: 700;
}

/* タグ
------------------------------------ */
/* 青背景＋白文字 */
.label_basic01 {
	display: inline-block;
	padding: 2px 6px 4px 6px;
	border-radius: 3px;
	color: #ffffff;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 700;
	background: #005baf none;
}

/* 赤背景＋白文字 */
.label_basic02 {
	display: inline-block;
	padding: 2px 6px 4px 6px;
	border-radius: 3px;
	color: #ffffff;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 700;
	background: #e21818 none;
}

/* 補足
------------------------------------ */
/* 単一補足　※印が自動で付与 */
p.note01 {
	position: relative;
	margin: 0 0 4% 0;
	padding: 0 0 0 1.5em;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 2;
}

p.note01:before {
	position: absolute;
	top: 0;
	left: 0;
	content: "※ ";
}

/* 複数補足　※印が自動で付与 */
ul.note01 li {
	position: relative;
	margin: 0;
	padding: 0 0 0 1.5em;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 2;
}

ul.note01 li:before {
	position: absolute;
	top: 0;
	left: 0;
	content: "※ ";
}

/* 注意
------------------------------------ */
.caution01 {
	position: relative;
	margin: 0 0 2% 0;
	padding: 0 0 0 1.25em;
	color: #e21818;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
}

.caution01:before {
	position: absolute;
	top: 0.75em;
	left: 0;
	color: #e21818;
	font: bold 14px/1 "Font Awesome 5 Free";
	content: "\f05a";
}

/* ==========================================================
!Text Link
========================================================== */
/* 青色文字：青色アイコン
------------------------------------ */
.txt_link01 {
	color: #005baf;
	text-decoration: underline;
}

.txt_link01 span {
	/* WCAG 2.0 C7 */
	overflow: hidden;
	position: absolute;
	top: -10px;
	width: 1px;
	height: 1px;
}

.txt_link01.blank {
	padding: 0 1em 0 0;
	background: url(../img/ico_window_blue.svg) no-repeat right 3px top 55%;
	background-size: 9px 9px;
}

.txt_link01.pdf {
	position: relative;
	padding: 0 1em 0 0;
}

.txt_link01.pdf:after {
	display: inline-block;
	position: absolute;
	top: 5px;
	right: 0;
	width: 1em;
	height: 1em;
	color: #005baf;
	font: 400 1em/1 "Font Awesome 5 Free";
	content: "\f1c1";
}

/* 青色文字：黒色アイコン
------------------------------------ */
.txt_link02 {
	color: #005baf;
	text-decoration: underline;
}

.txt_link02 span {
	/* WCAG 2.0 C7 */
	overflow: hidden;
	position: absolute;
	top: -10px;
	width: 1px;
	height: 1px;
}

.txt_link02.blank {
	padding: 0 1em 0 0;
	background: url(../img/ico_window_black.svg) no-repeat right 3px top 55%;
	background-size: 9px 9px;
}

.txt_link02.pdf {
	position: relative;
	padding: 0 1em 0 0;
}

.txt_link02.pdf:after {
	display: inline-block;
	position: absolute;
	top: 5px;
	right: 0;
	width: 1em;
	height: 1em;
	color: #005baf;
	font: 400 1em/1 "Font Awesome 5 Free";
	content: "\f1c1";
}

/* 黒色文字：青色アイコン
------------------------------------ */
.txt_link03 {
	color: #333333;
	text-decoration: underline;
}

.txt_link03 span {
	/* WCAG 2.0 C7 */
	overflow: hidden;
	position: absolute;
	top: -10px;
	width: 1px;
	height: 1px;
}

.txt_link03.blank {
	padding: 0 1em 0 0;
	background: url(../img/ico_window_blue.svg) no-repeat right 3px top 55%;
	background-size: 9px 9px;
}

.txt_link03.pdf {
	position: relative;
	padding: 0 1em 0 0;
}

.txt_link03.pdf:after {
	display: inline-block;
	position: absolute;
	top: 5px;
	right: 0;
	width: 1em;
	height: 1em;
	color: #333333;
	font: 400 1em/1 "Font Awesome 5 Free";
	content: "\f1c1";
}

/* 黒色文字：黒色アイコン
------------------------------------ */
.txt_link04 {
	color: #333333;
	text-decoration: underline;
}

.txt_link04 span {
	/* WCAG 2.0 C7 */
	overflow: hidden;
	position: absolute;
	top: -10px;
	width: 1px;
	height: 1px;
}

.txt_link04.blank {
	padding: 0 1em 0 0;
	background: url(../img/ico_window_black.svg) no-repeat right 3px top 55%;
	background-size: 9px 9px;
}

.txt_link04.pdf {
	position: relative;
	padding: 0 1em 0 0;
}

.txt_link04.pdf:after {
	display: inline-block;
	position: absolute;
	top: 5px;
	right: 0;
	width: 1em;
	height: 1em;
	color: #333333;
	font: 400 1em/1 "Font Awesome 5 Free";
	content: "\f1c1";
}

/* 灰色文字
------------------------------------ */
.txt_link05 {
	color: #999999;
}

.txt_link05 span {
	/* WCAG 2.0 C7 */
	overflow: hidden;
	position: absolute;
	top: -10px;
	width: 1px;
	height: 1px;
}

/* ==========================================================
!Tag Link
========================================================== */
.tag_link01 ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row wrap;
	        flex-flow: row wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.tag_link01 ul li {
	display: inline-block;
	margin: 0 8px 20px 8px;
}

.tag_link01 ul li a,
.tag_link01 ul li span {
	display: block;
	padding: 0 16px 0 16px;
	border-width: 1px;
	border-style: solid;
	border-color: #005baf;
	border-radius: 40px;
	color: #005baf;
	background: #ffffff none;
	cursor: pointer;
	line-height: 2;
	font-size: 16em;
	font-size: 1.6rem;
	font-weight: 700;
}

.tag_link01 ul li a:hover,
.tag_link01 ul li span:hover {
	color: #ffffff !important;
	background: #005baf none;
}

.tag_link01 ul li.on a,
.tag_link01 ul li.on span {
	color: #ffffff;
	background: #005baf none;
}

.tag_link01 ul li.on a:hover,
.tag_link01 ul li.on span:hover {
	color: #005baf !important;
	background: #ffffff none;
}

.tag_link01 ul li.tag_all01 a,
.tag_link01 ul li.tag_all01 span {
	border-color: #005baf;
	color: #005baf;
}

.tag_link01 ul li.tag_all01 a:hover,
.tag_link01 ul li.tag_all01 span:hover {
	background: #005baf none;
}

.tag_link01 ul li.tag_kanko01 a,
.tag_link01 ul li.tag_kanko01 span {
	border-color: #1ba7f0;
	color: #1ba7f0;
}

.tag_link01 ul li.tag_kanko01 a:hover,
.tag_link01 ul li.tag_kanko01 span:hover {
	background: #1ba7f0 none;
}

.tag_link01 ul li.tag_sansaku01 a,
.tag_link01 ul li.tag_sansaku01 span {
	border-color: #00af52;
	color: #00af52;
}

.tag_link01 ul li.tag_sansaku01 a:hover,
.tag_link01 ul li.tag_sansaku01 span:hover {
	background: #00af52 none;
}

.tag_link01 ul li.tag_onsen01 a,
.tag_link01 ul li.tag_onsen01 span {
	border-color: #e1b10b;
	color: #e1b10b;
}

.tag_link01 ul li.tag_onsen01 a:hover,
.tag_link01 ul li.tag_onsen01 span:hover {
	background: #e1b10b none;
}

.tag_link01 ul li.tag_gourmet01 a,
.tag_link01 ul li.tag_gourmet01 span {
	border-color: #ea6f8f;
	color: #ea6f8f;
}

.tag_link01 ul li.tag_gourmet01 a:hover,
.tag_link01 ul li.tag_gourmet01 span:hover {
	background: #ea6f8f none;
}

.tag_link01 ul li.tag_souvenir01 a,
.tag_link01 ul li.tag_souvenir01 span {
	border-color: #864fca;
	color: #864fca;
}

.tag_link01 ul li.tag_souvenir01 a:hover,
.tag_link01 ul li.tag_souvenir01 span:hover {
	background: #864fca none;
}

.tag_link01 ul li.tag_hotel01 a,
.tag_link01 ul li.tag_hotel01 span {
	border-color: #00af90;
	color: #00af90;
}

.tag_link01 ul li.tag_hotel01 a:hover,
.tag_link01 ul li.tag_hotel01 span:hover {
	background: #00af90 none;
}

/* ==========================================================
!Button
========================================================== */
/* Basic Blue Button */
.btn_basic01 a,
.btn_basic01 div,
.btn_basic01 button {
	display: block;
	position: relative;
	padding: 5.2% 0 5.2% 0;
	border-width: 1px 1px 1px 1px;
	border-style: solid;
	border-color: #005baf;
	border-radius: 40px;
	color: #ffffff;
	font-size: 14px;
	font-size: 1.4rem;
	text-align: center;
	background: #005baf none;
	-webkit-transition: all 0.2s ease-out;
	-o-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}

.btn_basic01 a:after,
.btn_basic01 div:after,
.btn_basic01 button:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 5.5%;
	width: 8px;
	height: 8px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #ffffff;
	content: "";
	-webkit-transform: translateY(-50%) rotate(45deg);
	    -ms-transform: translateY(-50%) rotate(45deg);
	        transform: translateY(-50%) rotate(45deg);
}

.btn_basic01 a p span,
.btn_basic01 div p span,
.btn_basic01 button p span {
	/* WCAG 2.0 C7 */
	overflow: hidden;
	position: absolute;
	top: -10px;
	width: 1px;
	height: 1px;
}

.btn_basic01 a:hover,
.btn_basic01 a:focus,
.btn_basic01 div:hover,
.btn_basic01 div:focus,
.btn_basic01 button:hover,
.btn_basic01 button:focus {
	opacity: 1;
	border-color: #005baf;
	color: #005baf;
	background: #ffffff none;
}

.btn_basic01 a:hover:after,
.btn_basic01 a:focus:after,
.btn_basic01 div:hover:after,
.btn_basic01 div:focus:after,
.btn_basic01 button:hover:after,
.btn_basic01 button:focus:after {
	border-color: #005baf #005baf transparent transparent;
}

/* Basic White Button */
.btn_basic02 a,
.btn_basic02 div,
.btn_basic02 button {
	display: block;
	position: relative;
	padding: 5% 4% 5% 4%;
	border-width: 1px 1px 1px 1px;
	border-style: solid;
	border-color: #000000;
	border-radius: 40px;
	color: #000000;
	font-size: 14px;
	font-size: 1.4rem;
	text-align: center;
	background: #ffffff none;
	-webkit-transition: all 0.2s ease-out;
	-o-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}

.btn_basic02 a:after,
.btn_basic02 div:after,
.btn_basic02 button:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 4%;
	width: 8px;
	height: 8px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #ffffff;
	content: "";
	-webkit-transform: translateY(-50%) rotate(45deg);
	    -ms-transform: translateY(-50%) rotate(45deg);
	        transform: translateY(-50%) rotate(45deg);
}

.btn_basic02 a p span,
.btn_basic02 div p span,
.btn_basic02 button p span {
	/* WCAG 2.0 C7 */
	overflow: hidden;
	position: absolute;
	top: -10px;
	width: 1px;
	height: 1px;
}

.btn_basic02 a:hover,
.btn_basic02 a:focus,
.btn_basic02 div:hover,
.btn_basic02 div:focus,
.btn_basic02 button:hover,
.btn_basic02 button:focus {
	opacity: 1;
	color: #ffffff;
	background: #000000 none;
}

/* Gray Button */
.btn_basic03 ul li {
	width: 100%;
	margin: 22px 0 0 0;
}

.btn_basic03 a,
.btn_basic03 div,
.btn_basic03 button {
	display: block;
	position: relative;
	padding: 40px 40px 40px 40px;
	color: #005baf;
	font-size: 14px;
	font-size: 1.4rem;
	text-align: left;
	background: #f5f4ef none;
	-webkit-transition: all 0.2s ease-out;
	-o-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}

.btn_basic03 a:after,
.btn_basic03 div:after,
.btn_basic03 button:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 4%;
	width: 8px;
	height: 8px;
	border-width: 1px 1px 0 0;
	border-style: solid;
	border-color: #005baf;
	content: "";
	-webkit-transform: translateY(-50%) rotate(45deg);
	    -ms-transform: translateY(-50%) rotate(45deg);
	        transform: translateY(-50%) rotate(45deg);
}

.btn_basic03 a p,
.btn_basic03 div p,
.btn_basic03 button p {
	display: inline-block;
}

.btn_basic03 a p span,
.btn_basic03 div p span,
.btn_basic03 button p span {
	/* WCAG 2.0 C7 */
	overflow: hidden;
	position: absolute;
	top: -10px;
	width: 1px;
	height: 1px;
}

.btn_basic03 a:hover,
.btn_basic03 a:focus,
.btn_basic03 div:hover,
.btn_basic03 div:focus,
.btn_basic03 button:hover,
.btn_basic03 button:focus {
	opacity: 0.8;
}

.btn_basic03.inlink a,
.btn_basic03.inlink div,
.btn_basic03.inlink button {
	padding: 10px 20px 10px 20px;
}

.btn_basic03.inlink a:after,
.btn_basic03.inlink div:after,
.btn_basic03.inlink button:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 4%;
	width: 8px;
	height: 8px;
	border-width: 1px 1px 0 0;
	border-style: solid;
	border-color: #005baf;
	content: "";
	-webkit-transform: translateY(-50%) rotate(135deg);
	    -ms-transform: translateY(-50%) rotate(135deg);
	        transform: translateY(-50%) rotate(135deg);
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	/* Basic Blue Button */
	.btn_basic01 a,
	.btn_basic01 div,
	.btn_basic01 button {
		padding: 10px 0 10px 0;
		font-size: 14px;
		font-size: 1.4rem;
	}
	.btn_basic01 a:after,
	.btn_basic01 div:after,
	.btn_basic01 button:after {
		right: 12px;
		width: 8px;
		height: 8px;
	}
	/* Basic White Button */
	.btn_basic02 a,
	.btn_basic02 div,
	.btn_basic02 button {
		padding: 10px 0 10px 0;
		font-size: 14px;
		font-size: 1.4rem;
	}
	.btn_basic02 a:after,
	.btn_basic02 div:after,
	.btn_basic02 button:after {
		right: 12px;
		width: 8px;
		height: 8px;
	}
}

/* ==========================================================
!TOP
========================================================== */
/* ==========================================================
!TOP common
========================================================== */
article[class*="top_"] .inner01 {
	padding: 40px 4% 60px 4%;
}

article[class*="top_"] .inner01 h2 {
	margin: 0 0 25px 0;
	padding: 30px 0 0 0;
	font-size: 20px;
	font-size: 2rem;
	font-weight: 700;
	text-align: center;
}

article[class*="top_"] .btn_basic01,
article[class*="top_"] .btn_basic02 {
	width: 80%;
	max-width: 260px;
	margin: 0 auto;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	article[class*="top_"] .inner01 {
		padding: 40px 1.9% 60px 1.9%;
	}
}
/* ==========================================================
!top_TTT
========================================================== */
article.top_TTT {
	position: relative;
}

article.top_TTT:after {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 30vh;
	content: "";
	background: #ffccd7 none;
}

article.top_TTT h2 {
	background: url(../img/icon_TTT.png) no-repeat center 0;
	background-size: 50px 40px;
}

article.top_TTT .box_paint01.ticket dl dt {
	border-color: #000000;
	font-size: 16px;
	font-size: 1.6rem;
}

article.top_TTT .box_paint01.ticket dl dd {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.5;
}
article.top_TTT .inner01 {
	padding: 40px 4% 20px 4%;
}
/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	article.top_TTT:after {
		height: 220px;
	}
}

/* ==========================================================
!top_ticket
========================================================== */
article.top_ticket {
	position: relative;
}

article.top_ticket:after {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 30vh;
	content: "";
	background: #fcc100 none;
}

article.top_ticket h2 {
	background: url(../img/ico_ticket_blue.svg) no-repeat center 0;
	background-size: 30px 30px;
}

article.top_ticket .box_paint01.ticket dl dt {
	border-color: #000000;
	font-size: 16px;
	font-size: 1.6rem;
}

article.top_ticket .box_paint01.ticket dl dd {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.5;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	article.top_ticket:after {
		height: 290px;
	}
}

/* ==========================================================
!top_recommend
========================================================== */
article.top_recommend {
	background: #fff5db none;
}

article.top_recommend h2 {
	background: url(../img/ico_recommend_orange.svg) no-repeat center 0;
	background-size: 30px 30px;
}

article.top_recommend .btn_basic02 {
	margin: 13% auto 0;
}

article.top_recommend .btn_basic02 a,
article.top_recommend .btn_basic02 div,
article.top_recommend .btn_basic02 button {
	border-color: #ff9900;
	color: #ff9900;
	background: #ffffff none;
}

article.top_recommend .btn_basic02 a:after,
article.top_recommend .btn_basic02 div:after,
article.top_recommend .btn_basic02 button:after {
	border-color: #ff9900 #ff9900 transparent transparent;
}

article.top_recommend .btn_basic02 a:hover,
article.top_recommend .btn_basic02 a:focus,
article.top_recommend .btn_basic02 div:hover,
article.top_recommend .btn_basic02 div:focus,
article.top_recommend .btn_basic02 button:hover,
article.top_recommend .btn_basic02 button:focus {
	color: #ffffff;
	background: #ff9900 none;
}

article.top_recommend .btn_basic02 a:hover:after,
article.top_recommend .btn_basic02 a:focus:after,
article.top_recommend .btn_basic02 div:hover:after,
article.top_recommend .btn_basic02 div:focus:after,
article.top_recommend .btn_basic02 button:hover:after,
article.top_recommend .btn_basic02 button:focus:after {
	border-color: #ffffff #ffffff transparent transparent;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	article.top_recommend .outer01 {
		width: 100%;
		max-width: 100%;
	}
	article.top_recommend .inner01 {
		padding: 40px 20px 60px 20px;
	}
	article.top_recommend .box_paint01 > ul li {
		width: auto;
	}
	article.top_recommend .btn_basic02 {
		margin: 65px auto 0;
	}
}

/* ==========================================================
!top_spot
========================================================== */
article.top_spot {
	background: #00afff url(../img/top/bg_spot01.jpg) no-repeat center bottom;
	background-size: cover;
}

article.top_spot h2 {
	color: #ffffff;
	background: url(../img/ico_area_white.svg) no-repeat center top;
	background-size: 30px 30px;
}

article.top_spot figure {
	width: 100%;
	max-width: 800px;
	margin: 0 auto 11.5%;
	text-align: center;
}

article.top_spot figure img {
	border-radius: 5px;
}

article.top_spot .box_paint01 {
	margin: 0 0 4% 0;
}

article.top_spot .box_paint01 ul li {
	width: calc(50% - 5px);
}

article.top_spot .box_paint01 ul li a dl dt {
	font-weight: 700;
	line-height: 1.5;
	text-align: left;
}

article.top_spot .box_paint01 ul li.nikko-kinugawa a dl dt {
	color: #ff7e00;
}

article.top_spot .box_paint01 ul li.shitamachi a dl dt {
	color: #0057b8;
}

article.top_spot .box_paint01 ul li.urbanpark a dl dt {
	color: #65b900;
}

article.top_spot .box_paint01 ul li.tochigi a dl dt {
	color: #d3a11d;
}

article.top_spot .box_paint01 ul li.ryomo a dl dt {
	color: #ec2620;
}

article.top_spot .box_paint01 ul li.aizu a dl dt {
	color: #d17a17;
}

article.top_spot .box_paint01 ul li.tojo a dl dt {
	color: #1e22aa;
}

article.top_spot .btn_basic02 a,
article.top_spot .btn_basic02 div,
article.top_spot .btn_basic02 button {
	border-color: #ea1a13;
	color: #ea1a13;
	background: #ffffff none;
}

article.top_spot .btn_basic02 a:after,
article.top_spot .btn_basic02 div:after,
article.top_spot .btn_basic02 button:after {
	border-color: #ea1a13 #ea1a13 transparent transparent;
}

article.top_spot .btn_basic02 a:hover,
article.top_spot .btn_basic02 a:focus,
article.top_spot .btn_basic02 div:hover,
article.top_spot .btn_basic02 div:focus,
article.top_spot .btn_basic02 button:hover,
article.top_spot .btn_basic02 button:focus {
	color: #ffffff;
	background: #ea1a13 none;
}

article.top_spot .btn_basic02 a:hover:after,
article.top_spot .btn_basic02 a:focus:after,
article.top_spot .btn_basic02 div:hover:after,
article.top_spot .btn_basic02 div:focus:after,
article.top_spot .btn_basic02 button:hover:after,
article.top_spot .btn_basic02 button:focus:after {
	border-color: #ffffff #ffffff transparent transparent;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	article.top_spot figure {
		margin: 0 auto 60px;
	}
	article.top_spot .box_paint01 {
		margin: 0 0 12px 0;
	}
	article.top_spot .box_paint01 ul li {
		width: calc((100% - 24px) / 3);
	}
	article.top_spot .box_paint01 ul li a dl dt {
		margin: 0 0 13px 0;
	}
	article.top_spot .box_paint01 ul:after {
		display: block;
		width: calc((100% - 24px) / 3);
		content: "";
	}
}

/* 960px以上（大きめタブレット 横位置とか） */
@media only screen and (min-width: 960px), print {
	article.top_spot .box_paint01 ul li {
		width: calc((100% - 86px) / 4);
	}
	article.top_spot .box_paint01 ul:before,
	article.top_spot .box_paint01 ul:after {
		display: block;
		width: calc((100% - 86px) / 4) !important;
		content: "";
	}
	article.top_spot .box_paint01 ul:before {
		-webkit-box-ordinal-group: 2;
		    -ms-flex-order: 1;
		        order: 1;
	}
}

/* ==========================================================
!top_purpose
========================================================== */
article.top_purpose {
	background: #ffedd9 none;
}

article.top_purpose .inner01 {
	padding: 10% 0 10% 0;
}

article.top_purpose h2 {
	background: url(../img/ico_purpose_orange.svg) no-repeat center 0;
	background-size: 30px 30px;
}

article.top_purpose .purpose_search {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row wrap;
	        flex-flow: row wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	margin: 0 0 8% 0;
}

article.top_purpose .purpose_search div[class*="block_"] {
	width: calc(50% - 1px);
	margin: 0 1px 1px 0;
}

article.top_purpose .purpose_search div[class*="block_"]:nth-child(2n) {
	width: 50%;
	margin: 0 0 1px 0;
}

article.top_purpose .purpose_search div[class*="block_"] a {
	display: block;
	overflow: hidden;
	opacity: 1;
	position: relative;
	z-index: 1;
	height: 18.3vh;
	min-height: 217px;
	max-height: 263px;
	border-radius: 5px;
}

article.top_purpose .purpose_search div[class*="block_"] a:before {
	display: block;
	position: absolute;
	top: 18.5%;
	left: 50%;
	z-index: 2;
	width: 26vw;
	height: 26vw;
	border-radius: 50%;
	content: "";
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
}

article.top_purpose .purpose_search div[class*="block_"] a:after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
	background: rgba(0, 0, 0, 0.3) none;
}

article.top_purpose .purpose_search div[class*="block_"] a img {
	position: absolute;
	z-index: 0;
	width: 100%;
	height: 100%;
	-webkit-transition: -webkit-transform 0.3s linear;
	transition: -webkit-transform 0.3s linear;
	-o-transition: transform 0.3s linear;
	transition: transform 0.3s linear;
	transition: transform 0.3s linear, -webkit-transform 0.3s linear;
}

article.top_purpose .purpose_search div[class*="block_"] a:hover img,
article.top_purpose .purpose_search div[class*="block_"] a:focus img {
	-webkit-transform: scale(1.1, 1.1);
	    -ms-transform: scale(1.1, 1.1);
	        transform: scale(1.1, 1.1);
}

article.top_purpose .purpose_search div[class*="block_"] a p {
	display: block;
	position: absolute;
	top: 72%;
	left: 50%;
	z-index: 2;
	width: 100%;
	color: #ffffff;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: 700;
	text-align: center;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
}

article.top_purpose .purpose_search .block_kanko01 a:before {
	background: #1ba7f0 url(../img/ico_kankou_white.svg) no-repeat center 50%;
	background-size: 50px 50px;
}

article.top_purpose .purpose_search .block_sansaku01 a:before {
	background: #00af52 url(../img/ico_sansaku_white.svg) no-repeat center 50%;
	background-size: 50px 50px;
}

article.top_purpose .purpose_search .block_onsen01 a:before {
	background: #e1b10b url(../img/ico_onsen_white.svg) no-repeat center 50%;
	background-size: 50px 50px;
}

article.top_purpose .purpose_search .block_gourmet01 a:before {
	background: #ea6f8f url(../img/ico_gourmet_white.svg) no-repeat center 50%;
	background-size: 50px 50px;
}

article.top_purpose .purpose_search .block_souvenir01 a:before {
	background: #864fca url(../img/ico_souvenir_white.svg) no-repeat center 50%;
	background-size: 50px 50px;
}

article.top_purpose .purpose_search .block_hotel01 a:before {
	background: #00af90 url(../img/ico_hotel_white.svg) no-repeat center 50%;
	background-size: 50px 50px;
}

article.top_purpose .btn_basic02 a,
article.top_purpose .btn_basic02 div,
article.top_purpose .btn_basic02 button {
	border-color: #ff7700;
	color: #ff7700;
	background: #ffffff none;
}

article.top_purpose .btn_basic02 a:after,
article.top_purpose .btn_basic02 div:after,
article.top_purpose .btn_basic02 button:after {
	border-color: #ff7700 #ff7700 transparent transparent;
}

article.top_purpose .btn_basic02 a:hover,
article.top_purpose .btn_basic02 a:focus,
article.top_purpose .btn_basic02 div:hover,
article.top_purpose .btn_basic02 div:focus,
article.top_purpose .btn_basic02 button:hover,
article.top_purpose .btn_basic02 button:focus {
	color: #ffffff;
	background: #ff7700 none;
}

article.top_purpose .btn_basic02 a:hover:after,
article.top_purpose .btn_basic02 a:focus:after,
article.top_purpose .btn_basic02 div:hover:after,
article.top_purpose .btn_basic02 div:focus:after,
article.top_purpose .btn_basic02 button:hover:after,
article.top_purpose .btn_basic02 button:focus:after {
	border-color: #ffffff #ffffff transparent transparent;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	article.top_purpose .inner01 {
		padding: 40px 0 60px 0;
	}
	article.top_purpose .purpose_search {
		overflow: hidden;
		margin: 0 0 40px 0;
	}
	article.top_purpose .purpose_search div[class*="block_"] {
		width: calc((99.9% - 2px) / 3);
		margin: 0 1px 1px 0;
	}
	article.top_purpose .purpose_search div[class*="block_"]:nth-child(2n) {
		width: auto;
		margin: 0 1px 1px 0;
	}
	article.top_purpose .purpose_search div[class*="block_"]:nth-child(3n-2) {
		width: calc((99.9% - 2px) / 3);
	}
	article.top_purpose .purpose_search div[class*="block_"]:nth-child(3n-1) {
		width: calc((99.9% - 2px) / 3);
	}
	article.top_purpose .purpose_search div[class*="block_"]:nth-child(3n) {
		width: calc(99.9% / 3);
		margin: 0 0 1px 0;
	}
	article.top_purpose .purpose_search div[class*="block_"] a:before {
		top: 20%;
		left: 50%;
		width: 100px;
		height: 100px;
	}
	article.top_purpose .purpose_search div[class*="block_"] a p {
		top: 70%;
		left: 50%;
		-webkit-transform: translateX(-50%);
		    -ms-transform: translateX(-50%);
		        transform: translateX(-50%);
	}
	article.top_purpose .purpose_search .block_kanko01 a:before {
		background-size: 60px 60px;
	}
	article.top_purpose .purpose_search .block_sansaku01 a:before {
		background-size: 60px 60px;
	}
	article.top_purpose .purpose_search .block_onsen01 a:before {
		background-size: 60px 60px;
	}
	article.top_purpose .purpose_search .block_gourmet01 a:before {
		background-size: 60px 60px;
	}
	article.top_purpose .purpose_search .block_souvenir01 a:before {
		background-size: 60px 60px;
	}
	article.top_purpose .purpose_search .block_hotel01 a:before {
		background-size: 60px 60px;
	}
}

/* 1024px以上（基本のPC） */
@media only screen and (min-width: 1024px), print {
	article.top_purpose .purpose_search div[class*="block_"] {
		width: calc((100% - 10px) / 6);
		margin: 0 1px 0 0;
	}
	article.top_purpose .purpose_search div[class*="block_"]:nth-child(2n),
	article.top_purpose .purpose_search div[class*="block_"]:nth-child(3n-2),
	article.top_purpose .purpose_search div[class*="block_"]:nth-child(3n-1),
	article.top_purpose .purpose_search div[class*="block_"]:nth-child(3n) {
		width: 100%;
		margin: 0 1px 0 0;
	}
	article.top_purpose .purpose_search div[class*="block_"]:nth-child(6n-5) {
		width: calc((100% - 10px) / 6);
	}
	article.top_purpose .purpose_search div[class*="block_"]:nth-child(6n-4) {
		width: calc((100% - 10px) / 6);
	}
	article.top_purpose .purpose_search div[class*="block_"]:nth-child(6n-3) {
		width: calc((100% - 10px) / 6);
	}
	article.top_purpose .purpose_search div[class*="block_"]:nth-child(6n-2) {
		width: calc((100% - 10px) / 6);
	}
	article.top_purpose .purpose_search div[class*="block_"]:nth-child(6n-1) {
		width: calc((100% - 10px) / 6);
	}
	article.top_purpose .purpose_search div[class*="block_"]:nth-child(6n) {
		width: calc((100% + 18px) / 6);
		margin: 0;
	}
}

/* 1120px以上（大きめPC） */
@media only screen and (min-width: 1120px), print {
	article.top_purpose .purpose_search div[class*="block_"] a {
		height: 263px;
	}
}

/* ==========================================================
!top_movie
========================================================== */
article.top_movie h2 {
	background: url(../img/ico_movie_black.svg) no-repeat center 0;
	background-size: auto 30px;
}

article.top_movie .box_paint01 {
	margin: 0 auto 8%;
}

article.top_movie .box_paint01.movie a div dl dt {
	font-size: 16px;
	font-size: 1.6rem;
}

article.top_movie .box_paint01.movie a div dl dd {
	font-size: 14px;
	font-size: 1.4rem;
}

article.top_movie .btn_basic02 a,
article.top_movie .btn_basic02 div,
article.top_movie .btn_basic02 button {
	border-color: #005baf;
	color: #005baf;
	background: #ffffff none;
}

article.top_movie .btn_basic02 a:after,
article.top_movie .btn_basic02 div:after,
article.top_movie .btn_basic02 button:after {
	border-color: #005baf #005baf transparent transparent;
}

article.top_movie .btn_basic02 a:hover,
article.top_movie .btn_basic02 a:focus,
article.top_movie .btn_basic02 div:hover,
article.top_movie .btn_basic02 div:focus,
article.top_movie .btn_basic02 button:hover,
article.top_movie .btn_basic02 button:focus {
	color: #ffffff;
	background: #005baf none;
}

article.top_movie .btn_basic02 a:hover:after,
article.top_movie .btn_basic02 a:focus:after,
article.top_movie .btn_basic02 div:hover:after,
article.top_movie .btn_basic02 div:focus:after,
article.top_movie .btn_basic02 button:hover:after,
article.top_movie .btn_basic02 button:focus:after {
	border-color: #ffffff #ffffff transparent transparent;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	article.top_movie .box_paint01 {
		max-width: 800px;
		margin: 0 auto 40px;
		border-radius: 5px;
		-webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
		        box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
		background: #ffffff none;
	}
}

/* ==========================================================
!top_magazine
========================================================== */
article.top_magazine {
	background: #cbefff none;
}

article.top_magazine .outer01 {
	max-width: 800px;
}

article.top_magazine .outer01 a.blank h3 {
	display: inline-block;
	padding: 0 1em 0 0;
	background: url(../img/ico_window_blue.svg) no-repeat right 3px top 55%;
	background-size: 9px 9px;
}

article.top_magazine h2 {
	background: url(../img/ico_magazine_black.svg) no-repeat center 0;
	background-size: 30px 30px;
}

article.top_magazine a {
	display: block;
	width: 80%;
	max-width: 558px;
	margin: 0 auto;
	padding: 9% 6% 6% 6%;
	background: #ffffff none;
}

article.top_magazine a > article figure {
	margin: 0 0 8% 0;
	text-align: center;
}

article.top_magazine a > article figure img {
	width: auto;
	max-height: 170px;
	margin: 0 auto;
}

article.top_magazine a > article h3 {
	margin: 0 0 3.5% 0;
	font-weight: 700;
	line-height: 2;
}

article.top_magazine a > article p {
	margin: 0 0 5% 0;
	font-size: 13px;
	font-size: 1.3rem;
}

article.top_magazine a > article ul li {
	color: #999999;
	font-size: 11px;
	font-size: 1.1rem;
}

article.top_magazine .btn_basic01 a,
article.top_magazine .btn_basic01 div,
article.top_magazine .btn_basic01 button {
	padding: 5% 4% 5% 4%;
	border-color: #005baf;
	color: #ffffff;
	background: #005baf none;
}

article.top_magazine .btn_basic01 a:after,
article.top_magazine .btn_basic01 div:after,
article.top_magazine .btn_basic01 button:after {
	border-color: #ffffff #ffffff transparent transparent;
}

article.top_magazine .btn_basic01 a:hover,
article.top_magazine .btn_basic01 a:focus,
article.top_magazine .btn_basic01 div:hover,
article.top_magazine .btn_basic01 div:focus,
article.top_magazine .btn_basic01 button:hover,
article.top_magazine .btn_basic01 button:focus {
	color: #005baf;
	background: #ffffff none;
}

article.top_magazine .btn_basic01 a:hover:after,
article.top_magazine .btn_basic01 a:focus:after,
article.top_magazine .btn_basic01 div:hover:after,
article.top_magazine .btn_basic01 div:focus:after,
article.top_magazine .btn_basic01 button:hover:after,
article.top_magazine .btn_basic01 button:focus:after {
	border-color: #005baf #005baf transparent transparent;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	article.top_magazine a {
		display: block;
		width: auto;
		padding: 32px 20px 32px 20px;
		background: #ffffff none;
	}
	article.top_magazine a > article figure {
		margin: 0 0 18px 0;
	}
	article.top_magazine a > article h3 {
		margin: 0 0 9px 0;
	}
	article.top_magazine a > article p {
		margin: 0 0 16px 0;
	}
	article.top_magazine .btn_basic01 a,
	article.top_magazine .btn_basic01 div,
	article.top_magazine .btn_basic01 button {
		padding: 13px 0 14px 0;
		font-size: 14px;
		font-size: 1.4rem;
	}
	article.top_magazine .btn_basic01 a:after,
	article.top_magazine .btn_basic01 div:after,
	article.top_magazine .btn_basic01 button:after {
		right: 12px;
		width: 8px;
		height: 8px;
	}
}


/* ==========================================================
!top_banner
========================================================== */


article.top_banner h2 {
	background: url(../img/ico_banner_black.svg) no-repeat center 0;
	background-size: 30px 30px;
}

.top_banner .inner01 ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;
}
.top_banner .inner01 li {
	width: 48%;
}
.top_banner .inner01 li img {
	margin-right: 24px;
	margin-bottom: 24px;
	width: auto;
	height: auto;
	max-width: 100%;
	display: block;
}
article.top_banner .outer .inner01 h2 a{
	color: #005baf;
	text-decoration: underline;
}
article.top_banner .outer .inner01 h2 a:hover{
	text-decoration: none;
}
/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	article.top_banner .inner01 {
		width: 1120px;
		padding: 0;
	}
	.top_banner .inner01 li {
		width: 280px;
	}
	.top_banner .inner01 li img {
		margin-right: 24px;
		margin-bottom: 24px;
		width: 266px;
		height: auto;
		display: block;
	}
}


/* ==========================================================
!Detail
========================================================== */
/* ==========================================================
!Area
========================================================== */
/* Index
------------------------------------ */
#route_map .inner01 {
	padding-top: 40px;
	padding-bottom: 40px;
}

#route_map figure {
	max-width: 800px;
	margin: 0 auto;
	text-align: center;
}

#area_list {
	background: #f5f4ef none;
}

#area_list .inner01 {
	padding-top: 40px;
	padding-bottom: 40px;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#route_map .inner01 {
		padding-top: 60px;
		padding-bottom: 60px;
	}
	#area_list .inner01 {
		padding-top: 60px;
		padding-bottom: 60px;
	}
}

/* List
------------------------------------ */
.tag_area01 {
	padding: 40px 4% 0 4%;
}

#arealist_route_map .inner01 {
	padding: 40px 4% 40px 4%;
}

#arealist_route_map figure {
	text-align: center;
}

.arealist_detail01 .inner01 {
	position: relative;
	z-index: 2;
}

.arealist_detail01 .inner01:before {
	position: absolute;
	top: -10vw;
	left: 20%;
	z-index: 3;
	width: 27.47vw;
	max-width: 211px;
	height: 20.57vw;
	max-height: 158px;
	content: "";
	background: url(../img/area/img_balloon_bestrecommend01.png) no-repeat 0 0;
	background-size: cover;
	-webkit-transform: translate(-50%, 0);
	    -ms-transform: translate(-50%, 0);
	        transform: translate(-50%, 0);
}

.arealist_detail01 .summary01 {
	max-width: 800px;
	margin: 0 auto 52px;
	color: #ffffff;
	line-height: 1.5;
	text-align: center;
}

.arealist_detail01 .highlight_map01 {
	padding: 20px 20px 20px 20px;
	border-radius: 10px;
	background: #ffffff none;
}

.arealist_detail01 .highlight_map01 figure {
	margin: 0 0 40px 0;
	text-align: center;
}

#arealist_nikko {
	position: relative;
	background: url(../img/area/nikko-kinugawa/bg_arealist_nikko01.jpg) no-repeat 0 0;
	background-size: cover;
}

#arealist_nikko:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
	background: rgba(18, 189, 78, 0.4) none;
}

#arealist_nikko .box_basic02 ol li dl dt:before {
	background: #ff7e00 none;
}

#arealist_kinugawa {
	position: relative;
	background: url(../img/area/nikko-kinugawa/bg_arealist_kinugawa01.jpg) no-repeat 0 0;
	background-size: cover;
}

#arealist_kinugawa:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
	background: rgba(0, 108, 208, 0.4) none;
}

#arealist_kinugawa .box_basic02 ol li dl dt:before {
	background: #ff7e00 none;
}

#arealist_kawagoe {
	position: relative;
	background: url(../img/area/tojo-line-south/bg_arealist_kawagoe01.jpg) no-repeat 0 0;
	background-size: cover;
}

#arealist_kawagoe:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: "";
	background: rgba(221, 161, 0, 0.5) none;
}

#arealist_kawagoe .box_basic02 ol li dl dt:before {
	background: #1e22aa none;
}

#arealist_movie {
	background: #f5f4ef none;
}

#arealist_movie .inner01 {
	padding: 40px 4% 40px 4%;
}

#arealist_movie .box_paint01 {
	margin: 0 auto 24px;
}

#arealist_movie .btn_basic02 {
	max-width: 260px;
	margin: 0 auto;
}

#arealist_movie .btn_basic02 a,
#arealist_movie .btn_basic02 div,
#arealist_movie .btn_basic02 button {
	border-color: #005baf;
	color: #005baf;
	background: #ffffff none;
}

#arealist_movie .btn_basic02 a:after,
#arealist_movie .btn_basic02 div:after,
#arealist_movie .btn_basic02 button:after {
	border-color: #005baf #005baf transparent transparent;
}

#arealist_movie .btn_basic02 a:hover,
#arealist_movie .btn_basic02 a:focus,
#arealist_movie .btn_basic02 div:hover,
#arealist_movie .btn_basic02 div:focus,
#arealist_movie .btn_basic02 button:hover,
#arealist_movie .btn_basic02 button:focus {
	color: #ffffff;
	background: #005baf none;
}

#arealist_movie .btn_basic02 a:hover:after,
#arealist_movie .btn_basic02 a:focus:after,
#arealist_movie .btn_basic02 div:hover:after,
#arealist_movie .btn_basic02 div:focus:after,
#arealist_movie .btn_basic02 button:hover:after,
#arealist_movie .btn_basic02 button:focus:after {
	border-color: #ffffff #ffffff transparent transparent;
}

#arealist_ticket_kawagoe.ticket_list {
	background: #ffffff;
}

#arealist_ticket_kawagoe .inner01 {
	padding: 40px 4% 0 4%;
}

#arealist_ticket_kawagoe .box_paint01.ticket {
	margin-bottom: 0;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	.tag_area01 {
		padding: 60px 4% 0 4%;
	}
	#arealist_route_map .inner01 {
		padding: 60px 4% 60px 4%;
	}
	#arealist_route_map.special .inner01 {
		padding: 60px 4% 140px 4%;
	}
	.arealist_detail01 .inner01 {
		padding: 100px 2% 200px 2%;
	}
	.arealist_detail01 .inner01:before {
		top: -106px;
		left: 38%;
		-webkit-transform: translate(-50%, 0);
		    -ms-transform: translate(-50%, 0);
		        transform: translate(-50%, 0);
	}
	.arealist_detail01 .highlight_map01 {
		padding: 52px 70px 52px 70px;
	}
	.arealist_detail01 .highlight_map01 figure {
		margin: 0 0 60px 0;
	}
	#arealist_kinugawa.arealist_detail01 .inner01 {
		padding: 100px 2% 100px 2%;
	}
	#arealist_kawagoe.arealist_detail01 .inner01 {
		padding: 100px 2% 100px 2%;
	}
	#arealist_movie .inner01 {
		padding: 60px 4% 60px 4%;
	}
	#arealist_ticket_kawagoe .inner01 {
		padding: 60px 4% 60px 4%;
	}
}

/* Lower
------------------------------------ */
#area_detail {
	padding: 6.7% 0 0 0;
}

#area_detail .outer01 {
	max-width: 844px;
}

#area_detail .inner01 h1 {
	margin: 0 0 4% 0;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.5;
}

#area_detail .inner01 h2 {
	margin: 60px 0 30px 0;
	padding: 0 0 20px 0;
	border-width: 0 0 3px 0;
	border-style: solid;
	border-color: #005baf;
	font-size: 20px;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
}

#area_detail .inner01 h3 {
	margin: 0 0 5.5% 0;
	font-size: 20px;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
}

#area_detail .inner01 > p {
	margin: 0 0 4% 0;
	line-height: 1.5;
}

#area_detail .inner01 > ul {
	margin: 0 0 4% 0;
}

#area_detail .inner01 > ul li {
	position: relative;
	padding: 0 0 0 1em;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2;
}

#area_detail .inner01 > ul li:last-of-type {
	margin: 0;
}

#area_detail .inner01 > ul li:before {
	display: block;
	position: absolute;
	top: 0.8em;
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	content: "";
	background: #005baf none;
}

#area_detail .inner01 > ul li span {
	display: inline-block;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.5;
}

#area_detail .inner01 > ol li {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2;
}

#area_detail .inner01 > dl dt {
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 2;
}

#area_detail .inner01 > dl dd {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2;
}

#area_detail .inner01 > .list_detail01 {
	margin: 0 0 8% 0;
}

#area_detail .inner01 > .list_detail01 ul li {
	display: inline-block;
	position: relative;
	margin: 0 5% 0 0;
	padding: 0 0 0 1.25em;
	color: #999999;
	font-size: 13px;
	font-size: 1.3rem;
}

#area_detail .inner01 > .list_detail01 ul li:before {
	position: absolute;
	top: 4px;
	left: 0;
	color: #005baf;
	font: bold 14px/1 "Font Awesome 5 Free";
}

#area_detail .inner01 > .list_detail01 ul li.area:before {
	content: "\f3c5";
}

#area_detail .inner01 > .list_detail01 ul li.tag:before {
	content: "\f02b";
}

#area_detail .inner01 > figure {
	margin: 0 0 4% 0;
	text-align: center;
}

#area_detail .inner01 > figure img {
	margin: 0 0 2% 0;
}

#area_detail .inner01 > figure figcaption {
	color: #999999;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2;
	text-align: left;
}

#area_detail .inner01 .box_flame01,
#area_detail .inner01 .box_paint01 {
	margin: 0 0 4% 0;
}

#area_detail .inner01 table {
	display: block;
}

#area_detail .inner01 table th {
	display: block;
	padding: 5px 1em 0 0;
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: 700;
	vertical-align: top;
}

#area_detail .inner01 table td {
	display: block;
	margin: 0 0 10px 0;
	padding: 0 1em 5px 0;
	font-size: 14px;
	font-size: 1.4rem;
	vertical-align: top;

	word-break: break-all;
}

#area_detail .inner01 table td a {
	color: #005baf;
}

#area_detail .inner01 > .information_date01 {
	margin: 16% 0 4% 0;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#area_detail {
		padding: 25px 0 0 0;
	}
	#area_detail .inner01 h1 {
		margin: 0 0 16px 0;
		font-size: 32px;
		font-size: 3.2rem;
	}
	#area_detail .inner01 h2 {
		margin: 100px 0 40px 0;
		padding: 0 0 14px 0;
		font-size: 24px;
		font-size: 2.4rem;
	}
	#area_detail .inner01 h2:first-of-type {
		margin: 0 0 40px 0;
	}
	#area_detail .inner01 h3 {
		margin: 0 0 15px 0;
	}
	#area_detail .inner01 > p {
		margin: 0 0 26px 0;
	}
	#area_detail .inner01 > ul li {
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 2;
	}
	#area_detail .inner01 > ul li:before {
		top: 0.9em;
	}
	#area_detail .inner01 > ol li {
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 2;
	}
	#area_detail .inner01 > dl dt {
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: 700;
		line-height: 2;
	}
	#area_detail .inner01 > dl dd {
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 2;
	}
	#area_detail .inner01 > .list_detail01 {
		margin: 0 0 70px 0;
	}
	#area_detail .inner01 > .list_detail01 ul li {
		margin: 0 5% 0 0;
	}
	#area_detail .inner01 > figure {
		margin: 0 0 26px 0;
	}
	#area_detail .inner01 > figure img {
		margin: 0 0 12px 0;
	}
	#area_detail .inner01 > figure figcaption {
		color: #999999;
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 2;
		text-align: left;
	}
	#area_detail .inner01 .box_flame01,
	#area_detail .inner01 .box_paint01 {
		margin: 0 0 26px 0;
	}
	#area_detail .inner01 table {
		display: table;
	}
	#area_detail .inner01 table th {
		display: table-cell;
		padding: 6px 1.5em 6px 0;
		font-size: 14px;
		font-size: 1.4rem;
		font-weight: 700;
		vertical-align: top;
	}
	#area_detail .inner01 table td {
		display: table-cell;
		padding: 6px 0 6px 0;
		font-size: 14px;
		font-size: 1.4rem;
		vertical-align: top;

		word-break: break-all;
	}
	#area_detail .inner01 > .information_date01 {
		margin: 50px 0 26px 0;
	}
}

/* ==========================================================
!Old (TOBU are GO!GO!)
========================================================== */
/* Lower
------------------------------------ */
#campaign .gogo_archives {
	max-width: 895px;
	margin: 0 auto;
}

#campaign .gogo_archives table th,
#campaign .gogo_archives table td {
	vertical-align: top;
}

/* ==========================================================
!Ticket
========================================================== */
/* Common
------------------------------------ */
section[id*="ticket_"] .outer01,
section[class*="ticket_"] .outer01 {
	max-width: 844px;
}

section[id*="ticket_"] .outer01 + .outer01 .inner01,
section[class*="ticket_"] .outer01 + .outer01 .inner01 {
	padding-top: 0;
}

section[id*="ticket_"] .outer01 + .outer01 section,
section[class*="ticket_"] .outer01 + .outer01 section {
	margin: 0;
}

section[id*="ticket_"] .inner01,
section[class*="ticket_"] .inner01 {
	padding: 54px 4% 60px 4%;
}

section[id*="ticket_"] .inner01 section,
section[class*="ticket_"] .inner01 section {
	margin: 25px 0 0 0;
}

section[id*="ticket_"] .inner01 p.note01,
section[class*="ticket_"] .inner01 p.note01 {
	margin: 8px 0 0 0;
	line-height: 1.5;
}

section[id*="ticket_"] .inner01 p.note01 ~ .note01,
section[class*="ticket_"] .inner01 p.note01 ~ .note01 {
	margin: 0;
}

section[id*="ticket_"] .btn_basic01,
section[id*="ticket_"] .btn_basic02,
section[class*="ticket_"] .btn_basic01,
section[class*="ticket_"] .btn_basic02 {
	width: 80%;
	max-width: 260px;
	margin: 0 auto;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	section[id*="ticket_"] .inner01 {
		padding: 54px 1.9% 60px 1.9%;
	}
	section[id*="ticket_"] .inner01 section {
		margin: 25px 0 0 0;
	}
}

/* List
------------------------------------ */
section.ticket_list {
	background: #f5f4ef;
}

section.ticket_list:nth-child(odd) {
	background: #ffffff;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	section.ticket_list .outer01 {
		max-width: calc(1164px);
	}
}

/* Lower
------------------------------------ */
#ticket_detail {
	background: #f5f4ef none;
}

#ticket_detail .summary {
	margin: 0 0 5px 0;
}

#ticket_detail .table_basic01 table tr td .limited {
	display: inline-block;
}

#ticket_detail .table_basic01 table tr td .means {
	display: inline-block;
}

#ticket_detail .table_basic02 {
	display: block;
	overflow-x: auto;
	white-space: nowrap;

	-webkit-overflow-scrolling: touch;
}

#ticket_detail .table_basic02 table {
	table-layout: fixed;
	width: 100%;
	min-width: 800px;
}

#ticket_detail .table_basic02 table tr th,
#ticket_detail .table_basic02 table tr td {
	padding: 10px 8px 10px 8px;
	border-width: 1px 1px 1px 1px;
	border-style: solid;
	border-color: #005baf;
	text-align: center;
	white-space: normal;
}

#ticket_detail .table_basic02 table tr th:first-child,
#ticket_detail .table_basic02 table tr td:first-child {
	border-width: 1px 1px 1px 0;
}

#ticket_detail .table_basic02 table tr th:last-of-type,
#ticket_detail .table_basic02 table tr td:last-of-type {
	border-width: 1px 0 1px 1px;
}

#ticket_detail .table_basic02 table tr th:first-child:last-of-type,
#ticket_detail .table_basic02 table tr td:first-child:last-of-type {
	border-width: 1px 0 1px 0;
}

#ticket_detail .table_basic02 table thead tr th {
	color: #005baf;
	font-weight: 700;
	background: #e5eef7 none;
}

#ticket_detail .table_basic02 table tbody tr th {
	padding: 10px 8px 10px 20px;
	text-align: left;
}

#ticket_detail .table_basic03 > table {
	display: block;
	width: 100%;
	border-width: 0 0 1px 0;
	border-style: solid;
	border-color: #005baf;
}

#ticket_detail .table_basic03 > table tr th,
#ticket_detail .table_basic03 > table tr td {
	display: block;
	padding: 10px 8px 10px 8px;
	border-style: solid;
	border-color: #005baf;
	text-align: left;
	white-space: normal;
}

#ticket_detail .table_basic03 > table tr th {
	border-width: 1px 0 0 0;
}

#ticket_detail .table_basic03 > table tr td {
	border-width: 1px 0 0 0;
}

#ticket_detail .table_basic03 > table thead tr th {
	color: #005baf;
	font-weight: 700;
	background: #e5eef7 none;
}

#ticket_detail .table_basic03 > table tbody tr th {
	text-align: left;
	background: #e5eef7 none;
}

#ticket_detail .traffic01 {
	margin: 0 0 6% 0;
}

#ticket_detail .traffic01:last-of-type {
	margin: 0;
}

#ticket_detail .traffic01 p {
	margin: 0 0 4% 0;
}

#ticket_detail .traffic01 > *:last-child {
	margin: 0;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#ticket_detail section {
		margin: 0 0 55px 0;
	}
	#ticket_detail section:last-child {
		margin: 0;
	}
	#ticket_detail .summary {
		margin: 0 0 14px 0;
	}
	#ticket_detail .table_basic02 > table,
	#ticket_detail .table_basic03 > table {
		display: table;
		table-layout: fixed;
		width: 100%;
		border-width: 0 0 1px 0;
		border-style: solid;
		border-color: #005baf;
	}
	#ticket_detail .table_basic02 > table tr th,
	#ticket_detail .table_basic02 > table tr td,
	#ticket_detail .table_basic03 > table tr th,
	#ticket_detail .table_basic03 > table tr td {
		display: table-cell;
		border-width: 1px 0 0 0;
		border-style: solid;
		border-color: #005baf;
		vertical-align: top;
	}
	#ticket_detail .table_basic02 > table tr th,
	#ticket_detail .table_basic03 > table tr th {
		width: 30%;
		padding: 24px 16px 24px 16px;
	}
	#ticket_detail .table_basic02 > table tr td,
	#ticket_detail .table_basic03 > table tr td {
		width: 70%;
		padding: 24px 16px 24px 16px;
	}
	#ticket_detail .traffic01 {
		margin: 0 0 6% 0;
	}
	#ticket_detail .traffic01 .summary {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
		margin: 0.2em 0 0 0;
	}
	#ticket_detail .traffic01 .summary span {
		-ms-flex-negative: 0;
		    flex-shrink: 0;
		margin: -0.2em 0 0 0;
	}
	#ticket_detail .traffic01 .summary p {
		-webkit-box-flex: 1;
		    -ms-flex-positive: 1;
		        flex-grow: 1;
		padding: 0 0 0 1em;
	}
}

#ticket_buy {
	background: #f5f4ef none;
}

#ticket_buy .ul_basic01 ul li {
	font-weight: 700;
}

#ticket_buy .caution01 {
	position: static;
	margin: 4% 0 0 0;
	padding: 0;
	color: #333333;
	font-weight: normal;
}

#ticket_buy .caution01:before {
	content: none;
}

#ticket_buy .caution01 p {
	position: relative;
	margin: 0 0 2% 0;
	padding: 0 0 0 1.25em;
	color: #e21818;
	font-size: 16px;
	font-size: 1.6rem;
}

#ticket_buy .caution01 p:before {
	position: absolute;
	top: 0.5em;
	left: 0;
	color: #e21818;
	font: bold 14px/1 "Font Awesome 5 Free";
	content: "\f05a";
}

#ticket_buy .caution01 ul li {
	position: relative;
	padding: 0 0 0 1.5em;
	font-size: 14px;
	font-size: 1.4rem;
}

#ticket_buy .caution01 ul li:before {
	position: absolute;
	top: 0;
	left: 0;
	content: "※ ";
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#ticket_buy .caution01 {
		margin: 24px 0 0 0;
	}
	#ticket_buy .caution01 p {
		margin: 0 0 13px 0;
	}
	#ticket_buy .caution01 p:before {
		top: 0.3em;
		font-size: 18px;
	}
	#ticket_buy .caution01 ul li {
		margin: 0 0 8px 0;
		font-size: 12px;
		font-size: 1.2rem;
	}
}

#ticket_other .benefits01 {
	margin: 0 0 6% 0;
}

#ticket_other .benefits01:last-of-type {
	margin: 0;
}

#ticket_other .benefits01 p {
	margin: 0 0 4% 0;
}

#ticket_other .benefits01 > *:last-child {
	margin: 0;
}

#ticket_other .benefits01 .summary {
	margin: 0 0 4% 0;
}

#ticket_other .benefits01 .summary p {
	color: #005baf;
	font-weight: 700;
}

#ticket_other .benefits01 .area01 {
	margin: 0 0 1em 0;
	padding: 0 0 1em 0;
	border-width: 0 0 1px 0;
	border-style: solid;
	border-color: #d6d6d6;
}

#ticket_other .benefits01 .area01:last-child {
	margin: 0;
	padding: 0;
	border-width: 0;
}

#ticket_other .benefits01 .area01 > p {
	position: relative;
	margin: 0 0 4% 0;
	padding: 5px 0 4px 38px;
	font-weight: 700;
	overflow: visible;
}

#ticket_other .benefits01 .area01 > p:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 30px;
	height: 30px;
	content: "";
	background: url(../img/ico_area_black.svg) no-repeat 0 4px;
	background-size: 25px auto;
}

#ticket_other .benefits01 .table_basic03 > table {
	display: block;
	width: 100%;
	border-width: 0 0 1px 0;
	border-style: solid;
	border-color: #005baf;
}

#ticket_other .benefits01 .table_basic03 > table tr th,
#ticket_other .benefits01 .table_basic03 > table tr td {
	display: block;
	padding: 10px 8px 10px 8px;
	border-style: solid;
	border-color: #005baf;
	text-align: left;
	white-space: normal;
}

#ticket_other .benefits01 .table_basic03 > table tr th {
	border-width: 1px 0 0 0;
}

#ticket_other .benefits01 .table_basic03 > table tr td {
	border-width: 1px 0 0 0;
}

#ticket_other .benefits01 .table_basic03 > table thead tr th {
	color: #005baf;
	font-weight: 700;
	background: #e5eef7 none;
}

#ticket_other .benefits01 .table_basic03 > table tbody tr th {
	text-align: left;
	background: #e5eef7 none;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	/* others
	------------------------------------ */
	#ticket_other .outer01 + .outer01,
	#ticket_other .outer01:nth-last-child(1) {
		max-width: calc(1164px);
	}
	#ticket_other .benefits01 {
		margin: 0 0 6% 0;
	}
	#ticket_other .benefits01 .summary {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
		margin: 0.2em 0 0 0;
	}
	#ticket_other .benefits01 .summary span {
		-ms-flex-negative: 0;
		    flex-shrink: 0;
		margin: -0.2em 0 0 0;
	}
	#ticket_other .benefits01 .summary p {
		-webkit-box-flex: 1;
		    -ms-flex-positive: 1;
		        flex-grow: 1;
		padding: 0 0 0 48px;
	}
	#ticket_other .benefits01 .area01 {
		margin: 0 0 26px 0;
		padding: 0 0 26px 0;
	}
	#ticket_other .benefits01 .area01 > p {
		margin: 0 0 8px 0;
		padding-top: 10px;
	}
	#ticket_other .benefits01 .area01 > p:before {
		width: 40px;
		height: 40px;
		content: "";
		background: url(../img/ico_area_black.svg) no-repeat 0 4px;
		background-size: 35px auto;
	}
	#ticket_other .benefits01 .table_basic03 > table {
		display: table;
		table-layout: fixed;
		width: 100%;
		border-width: 0 0 1px 0;
		border-style: solid;
		border-color: #005baf;
	}
	#ticket_other .benefits01 .table_basic03 > table tr th,
	#ticket_other .benefits01 .table_basic03 > table tr td {
		display: table-cell;
		border-width: 1px 0 0 0;
		border-style: solid;
		border-color: #005baf;
		vertical-align: top;
	}
	#ticket_other .benefits01 .table_basic03 > table tr th {
		width: 30%;
		padding: 24px 16px 24px 16px;
	}
	#ticket_other .benefits01 .table_basic03 > table tr td {
		width: 70%;
		padding: 24px 16px 24px 16px;
	}
	#ticket_other .box_basic01 {
		-webkit-box-shadow: none;
		        box-shadow: none;
	}
}

/* ==========================================================
!Anchor
========================================================== */
.anchor01 {
	padding: 9% 4% 0 4%;
	background: #f5f4ef none;
}

.anchor01 .box_flame02 {
	width: 100%;
	max-width: 1120px;
	margin: 0 auto;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	.anchor01 {
		padding: 60px 40px 0 40px;
	}
}

/* ==========================================================
!Purpose
========================================================== */
/* Index
------------------------------------ */
#purpose_list .inner01 {
	padding-top: 40px;
	padding-bottom: 40px;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#purpose_list .inner01 {
		padding-top: 60px;
		padding-bottom: 60px;
	}
}

/* Lower
------------------------------------ */
#purpose_detail .inner01 {
	padding-top: 40px;
	padding-bottom: 40px;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#purpose_detail .inner01 {
		padding-top: 60px;
		padding-bottom: 60px;
	}
}

/* ==========================================================
!Movie
========================================================== */
/* Index
------------------------------------ */
#movie_list .inner01 {
	padding-top: 40px;
	padding-bottom: 40px;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#movie_list .inner01 {
		padding-top: 60px;
		padding-bottom: 60px;
	}
}

/* ==========================================================
!Campaign
========================================================== */
/* Index
------------------------------------ */
#campaign_list .inner01 {
	padding-top: 40px;
	padding-bottom: 40px;
}

#campaign_list .btn_basic01 .btn_more01 {
	width: 80%;
	max-width: 324px;
	margin: 0 auto;
	padding: 18px 0 18px 0;
	border-color: #005baf;
	color: #ffffff;
	background: #005baf none;
}

#campaign_list .btn_basic01 .btn_more01:after {
	content: none;
}

#campaign_list .btn_basic01 .btn_more01 span {
	display: inline-block;
}

#campaign_list .btn_basic01 .btn_more01 span:after {
	display: inline-block;
	width: 8px;
	height: 8px;
	margin: 0 0 0 24px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #ffffff;
	content: "";
	-webkit-transform: translateY(-30%) rotate(135deg);
	    -ms-transform: translateY(-30%) rotate(135deg);
	        transform: translateY(-30%) rotate(135deg);
}

#campaign_list .btn_basic01 .btn_more01:hover,
#campaign_list .btn_basic01 .btn_more01:focus {
	border-color: #005baf;
	color: #005baf;
	background: #ffffff none;
}

#campaign_list .btn_basic01 .btn_more01:hover span:after,
#campaign_list .btn_basic01 .btn_more01:focus span:after {
	border-color: #005baf;
}

#campaign_list .btn_basic02 .btn_close01 {
	width: 80%;
	max-width: 324px;
	margin: 0 auto;
	padding: 18px 0 18px 0;
	border-color: #000000;
	color: #ffffff;
	background: #000000 none;
}

#campaign_list .btn_basic02 .btn_close01:after {
	content: none;
}

#campaign_list .btn_basic02 .btn_close01 span {
	display: inline-block;
}

#campaign_list .btn_basic02 .btn_close01 span:after {
	display: inline-block;
	width: 8px;
	height: 8px;
	margin: 0 0 0 24px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #ffffff;
	content: "";
	-webkit-transform: translateY(10%) rotate(-45deg);
	    -ms-transform: translateY(10%) rotate(-45deg);
	        transform: translateY(10%) rotate(-45deg);
}

#campaign_list .btn_basic02 .btn_close01:hover,
#campaign_list .btn_basic02 .btn_close01:focus {
	color: #000000;
	background: #ffffff none;
}

#campaign_list .btn_basic02 .btn_close01:hover span:after,
#campaign_list .btn_basic02 .btn_close01:focus span:after {
	border-color: #000000;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#campaign_list .inner01 {
		padding-top: 60px;
		padding-bottom: 60px;
	}
	#campaign_list .btn_basic01 .btn_more01 {
		max-width: 600px;
	}
	#campaign_list .btn_basic02 .btn_close01 {
		max-width: 600px;
	}
}

/* Lower
------------------------------------ */
.lower_detail {
	padding: 6.7% 0 0 0;
}

.lower_detail .outer01 {
	max-width: 844px;
}

.lower_detail .inner01 h1 {
	margin: 0 0 4% 0;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.5;
}

.lower_detail .inner01 h2 {
	margin: 60px 0 30px 0;
	padding: 0 0 20px 0;
	border-width: 0 0 3px 0;
	border-style: solid;
	border-color: #005baf;
	font-size: 20px;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
}

.lower_detail .inner01 h3 {
	margin: 0 0 5.5% 0;
	font-size: 20px;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
}

.lower_detail .inner01 > p {
	margin: 0 0 4% 0;
	line-height: 1.5;
}

.lower_detail .inner01 > ul {
	margin: 0 0 4% 0;
}

.lower_detail .inner01 > ul li {
	position: relative;
	padding: 0 0 0 1em;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2;
}

.lower_detail .inner01 > ul li:last-of-type {
	margin: 0;
}

.lower_detail .inner01 > ul li:before {
	display: block;
	position: absolute;
	top: 0.8em;
	left: 0;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	content: "";
	background: #005baf none;
}

.lower_detail .inner01 > ul li span {
	display: inline-block;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.5;
}

.lower_detail .inner01 > ul.note01 li {
	position: relative;
	margin: 0;
	padding: 0 0 0 1.5em;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 2;
}

.lower_detail .inner01 > ul.note01 li:before {
	position: absolute;
	top: 0;
	left: 0;
	content: "※ ";
	background: none;
}

.lower_detail .inner01 > ol {
	margin: 0 0 25px 0;
	padding: 0 0 0 2em;
	list-style-type: decimal;
}

.lower_detail .inner01 > ol li {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2;
}

.lower_detail .inner01 > dl {
	margin: 0 0 25px 0;
}

.lower_detail .inner01 > dl dt {
	margin: 0 0 8px 0;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 2;
}

.lower_detail .inner01 > dl dd {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2;
}

.lower_detail .inner01 > .ol_flow01 {
	margin: 0 0 25px 0;
}

.lower_detail .inner01 > .list_detail01 {
	margin: 0 0 8% 0;
}

.lower_detail .inner01 > .list_detail01 ul li {
	display: inline-block;
	position: relative;
	margin: 0 5% 0 0;
	padding: 0 0 0 1.25em;
	color: #999999;
	font-size: 13px;
	font-size: 1.3rem;
}

.lower_detail .inner01 > .list_detail01 ul li:before {
	position: absolute;
	top: 4px;
	left: 0;
	color: #005baf;
	font: bold 14px/1 "Font Awesome 5 Free";
}

.lower_detail .inner01 > .list_detail01 ul li.area:before {
	content: "\f3c5";
}

.lower_detail .inner01 > .list_detail01 ul li.tag:before {
	content: "\f02b";
}

.lower_detail .inner01 > figure {
	margin: 0 0 4% 0;
	text-align: center;
}

.lower_detail .inner01 > figure img {
	margin: 0 0 2% 0;
}

.lower_detail .inner01 > figure figcaption {
	color: #999999;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2;
	text-align: left;
}

.lower_detail .inner01 .box_flame01,
.lower_detail .inner01 .box_paint01,
.lower_detail .inner01 .box_paint02 {
	margin: 0 0 4% 0;
}

.lower_detail .inner01 table {
	display: block;
}

.lower_detail .inner01 table th {
	display: block;
	padding: 5px 1em 0 0;
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: 700;
	vertical-align: top;
}

.lower_detail .inner01 table td {
	display: block;
	margin: 0 0 10px 0;
	padding: 0 1em 5px 0;
	font-size: 14px;
	font-size: 1.4rem;
	vertical-align: top;
}

.lower_detail .inner01 table td a {
	color: #005baf;
}

.lower_detail .inner01 > .information_date01 {
	margin: 16% 0 4% 0;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	.lower_detail {
		padding: 25px 0 0 0;
	}
	.lower_detail .inner01 h1 {
		margin: 0 0 16px 0;
		font-size: 32px;
		font-size: 3.2rem;
	}
	.lower_detail .inner01 h2 {
		margin: 100px 0 40px 0;
		padding: 0 0 14px 0;
		font-size: 24px;
		font-size: 2.4rem;
	}
	.lower_detail .inner01 h2:first-of-type {
		margin: 0 0 40px 0;
	}
	.lower_detail .inner01 h3 {
		margin: 0 0 15px 0;
	}
	.lower_detail .inner01 > p {
		margin: 0 0 26px 0;
	}
	.lower_detail .inner01 > ul li:before {
		top: 0.9em;
	}
	.lower_detail .inner01 > .list_detail01 {
		margin: 0 0 70px 0;
	}
	.lower_detail .inner01 > .list_detail01 ul li {
		margin: 0 5% 0 0;
	}
	.lower_detail .inner01 figure {
		margin: 0 0 26px 0;
	}
	.lower_detail .inner01 figure img {
		margin: 0 0 12px 0;
	}
	.lower_detail .inner01 figure figcaption {
		color: #999999;
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 2;
		text-align: left;
	}
	.lower_detail .inner01 .box_flame01,
	.lower_detail .inner01 .box_paint01 {
		margin: 0 0 26px 0;
	}
	.lower_detail .inner01 table {
		display: table;
	}
	.lower_detail .inner01 table th {
		display: table-cell;
		padding: 6px 1.5em 6px 0;
		font-size: 14px;
		font-size: 1.4rem;
		font-weight: 700;
		vertical-align: top;
	}
	.lower_detail .inner01 table td {
		display: table-cell;
		padding: 6px 0 6px 0;
		font-size: 14px;
		font-size: 1.4rem;
		vertical-align: top;
	}
	.lower_detail .inner01 > .information_date01 {
		margin: 50px 0 26px 0;
	}
}

/* ==========================================================
!Magazine
========================================================== */
/* Index
------------------------------------ */
#magazine_list {
	background: #f5f4ef none;
}

#magazine_list .inner01 {
	padding-top: 40px;
	padding-bottom: 40px;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#magazine_list .inner01 {
		padding-top: 60px;
		padding-bottom: 60px;
	}
}

/* Lower
------------------------------------ */
#magazine_detail {
	background: #f5f4ef none;
}

#magazine_detail .inner01 {
	padding-top: 40px;
	padding-bottom: 40px;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#magazine_detail .inner01 {
		padding-top: 60px;
		padding-bottom: 60px;
	}
}

/* ==========================================================
!Sitemap
========================================================== */
#sitemap .inner01 {
	padding-top: 40px;
	padding-bottom: 40px;
}

#sitemap .ul_basic01 ul li a {
	color: #005baf;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#sitemap .inner01 {
		padding-top: 60px;
		padding-bottom: 60px;
	}
	#sitemap .ul_basic01 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-flow: row wrap;
		        flex-flow: row wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
	}
	#sitemap .ul_basic01 > ul {
		width: 50%;
	}
}

/* ==========================================================
!Hiking
========================================================== */
#hiking .inner01 {
	padding-top: 40px;
	padding-bottom: 40px;
}

#hiking .tit_hiking_month {
	display: block;
	margin: 0 0 4% 0;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.5;
}

#hiking .present01 {
	padding: 24px 24px 24px 24px;
	text-align: center;
	background: rgba(221, 161, 0, 0.5) none;
}

#hiking > .box_paint02 {
	padding: 0;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
	#hiking .inner01 {
		padding-top: 60px;
		padding-bottom: 60px;
	}
	#hiking > .box_paint02 {
		padding: 0;
	}
}

/* 768px以下（タブレット） */
@media only screen and (max-width: 768px), print {
		#top_mainimg {
		width: 100%;
		background: url(../img/top/winter_bg_sp.jpg) no-repeat right 50%;
		background-size: cover;
	}
}

/*# sourceMappingURL=../../../map/cmn_layout.css.map */


/*LINEアプリ*/
/*PC*/
@media screen and (min-width: 767px){
	.joinflow__content .line_frame{
		display: flex;
	}
	.joinflow__content .line_image{
		margin-right: 20px;
	}
}

/*SP*/
@media screen and (max-width: 767px){
	.joinflow__content .line_frame{
		display: block;
		text-align: center;
	}
	.joinflow__content .line_image{
		margin-right: 0px;
	}
}


/*PC*/
@media screen and (min-width: 767px){
	#arealist_news .outer01 h2{
		font-size: 2.4rem;
		font-weight: 700;
		padding: 0px;
	}

	#arealist_news .outer01 p{
	    text-align: center;
	    font-size: 20px;
	}
	.h2_basic01.special_nikko h2:before{
		background: none;
	}
}
/*SP*/
@media screen and (max-width: 767px){
	#arealist_news .outer01 h2{
		font-size: 2.0rem;
		font-weight: 700;
		padding: 0px;
	}
	#arealist_news .outer01 p{
	    text-align: center;
	    font-size: 13px;
	}
	.h2_basic01.special_nikko h2:before{
		background: none;
	}
}


/*20240222追加*/
@media screen and (min-width: 767px){
	#recom02{
	position: relative;
  }
  #recom02:before{
			background-image: url(/odekake/common/img/top/osusume02.png);
			width: 80px;
			height: 80px;
			position: absolute;
			content: "";
			top: -21px;
			left: -34px;
			background-size: contain;
			background-repeat: no-repeat;
			pointer-events: none;
			z-index: 2;
		}
  }

  @media screen and (max-width: 767px){
	#recom02{
	position: relative;
  }
  #recom02:before{
			background-image: url(/odekake/common/img/top/osusume02.png);
			width: 70px;
			height: 70px;
			position: absolute;
			content: "";
			top: -33px;
			left: -7px;
			background-size: contain;
			background-repeat: no-repeat;
			pointer-events: none;
			z-index: 2;
		}
  }
  
  /*20240222追加ここまで*/