@charset "utf-8"; 

/* 親メニュー - Parent nav */
.topGmenu {
	/* width: 1200px; */
	/* margin: 0 auto; */
}

/*  */
nav>ul {
	display: flex;
	list-style: none;
	margin: 10px 0 5px;
	padding: 0;
}

nav>ul li {
	position: relative;
}

.menu-item-has-children {
	text-align: center;
	flex: 0 0 auto;
}

.menu-item-has-children {
	flex: 1 0 auto;
}

li.menu-item-has-children a {
	color: #222;
	text-decoration: none;
	display: block;
}

nav>ul>li>a {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px 0 11px;
	line-height: 1;
	border-right: solid 1px gainsboro;
	/* font-weight: bold; */
	letter-spacing: 2px;
	font-size: 1.1em;
}

a#nav01 {
	border-left: solid 1px #222;
}

nav>ul>li>a::before {
	/* content: url(/img/r2022/i-arrow.png); */
	/* margin-right: 7px; */
}

.gMenu > li{
	position:relative;
}

.gMenu > li:after {
	display:inline-block;
	position:absolute;
	bottom:-0.7em;
	left:0;
	width:100%;
	height:1em; 
	color:#b676b6;
	letter-spacing:0.1em;
}

.gMenu > li:first-child:after {
	content:'About';
}

.gMenu > li:nth-child(2):after {
	content:'Tourist area';
}

.gMenu > li:nth-child(3):after {
	content:'Nature Play';
}

.gMenu > li:nth-child(4):after {
	content:'Hot Spring';
}

.gMenu > li:nth-child(5):after {
	content:'Event Tradition';
}

.gMenu > li:nth-child(6):after {
	content:'Eat Specialty';
}


/* 子メニュー - .sub-menu */

nav .sub-menu {
	position: absolute;
	width: 500px;
	background-color:#fffaff;
	opacity: 0;
	visibility: hidden;
	transition: .3s;
	list-style: none;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	border: solid 2px #b676b6;
}

nav .sub-menu li {
	width: 50%;
}

nav .sub-menu strong,
nav .sub-menu a {
	position:relative;
	color: #222;
	padding: 8px 14px 7px 35px;
	width: 100%;
	display: block;
	box-sizing: border-box;
	background-repeat: no-repeat;
	background-position: 13px 12px;
	text-align: left;
	background-size: 8px auto;
	transition: background 0.1s;
}

nav .sub-menu a:before {
	display:inline-block;
	content:'';
	position:absolute;
	top:50%;
	transform:translatey(-50%);
	left:1em;
	background-image:url(/img/kankou/list-arrow.png);
	background-size:contain;
	width:15px;
	height:15px;
}

nav .sub-menu a:hover {
	color: #FFF;
	background-image: none;
}

nav .sub-menu a:hover:before {
   -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}

li.menu-item-has-children:nth-child(4)>ul:nth-child(3),
li.menu-item-has-children:nth-child(5)>ul:nth-child(3),
li.menu-item-has-children:nth-child(6)>ul:nth-child(3) {
	right: 0;
}

/* ホバー＆フォーカスで子メニュー表示 */
/* Display sub menu by hover & focus */

nav .menu-item-has-children:hover ul,
nav .menu-item-has-children ul.focused {
	opacity: 1;
	visibility: visible;
	z-index: 9999;
}

nav li.menu-item-has-children li a:hover,
nav li.menu-item-has-children li a:focus {
	background-color:#a74da7;
}

nav .menu-item-has-children:hover>a:nth-child(1) {
	background-color: #a74da7;
	color: #FFF;
}


/* グロナビ（下層）ここまで */


/* ハンバーガーメニュー */
.humberger {
	display: block;
	height: 45px;
	position: fixed;
	z-index: 9999;
	width: 45px;
	border: none;
	background-color: #b676b6;
	top: 5px;
	right: 5px;
	border-radius: 5px;
}

.humberger.-active .humberger__line {
	background-color: transparent;
}

.humberger.-active .humberger__line::before {
	top: 0;
	transform: rotate(45deg);
}

.humberger.-active .humberger__line::after {
	top: 0;
	transform: rotate(-45deg);
}

.humberger__line {
	display: block;
	height: 2px;
	position: absolute;
	top: 22px;
	left: 50%;
	transform: translateX(-50%);
	width: 24px;
	background-color: #FFF;
	transition: 0.1s;
}

.humberger__line:before,
.humberger__line:after {
	content: "";
	display: block;
	height: 100%;
	position: absolute;
	width: 100%;
	background-color: #FFF;
	transition: inherit;
}

.humberger__line:before {
	top: -6px;
}

.humberger__line:after {
	top: 6px;
}

.humberger__text {
	position: absolute;
	bottom: 8px;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
}

.header {
	/* width: 300px; */
	display: none;
}

.header__nav-area {
	position: fixed;
	top: 0;
	left: -100%;
	z-index: 9998;
	height: 100vh;
	width: 100%;
	visibility: hidden;
	padding-top: 60px; 
	background-color: #fff;
	transition: 0.1s;
}

.header__nav-area.-active {
	left: 0;
	visibility: visible;
	overflow-y:scroll;
}

.global-navigation {
	padding-top: 40px;
	padding-right: 25px;
	padding-bottom: 120px;
	padding-left: 25px;
}

.global-navigation__list>li {
	padding-bottom: 20px;
	border-bottom: 2px solid #e7e9ee;
}

.global-navigation__list>li+li {
	margin-top: 20px;
}

.global-navigation__link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	color: #172e59;
	font-weight: 900;
	transition: color 0.1s;
	font-size: 0.875rem;
}

.global-navigation__link.-accordion {
	position: relative;
	background: none;
	border: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	padding: 0;
}

.global-navigation__link.-accordion::after {
	content: '';
	display: block;
	height: 12px;
	position: absolute;
	top: 50%;
	right: 5px;
	width: 2px;
	background-color: #ed3242;
	transform: translateY(-50%);
	transition: transform 0.1s;
}

.global-navigation__link.-accordion::before {
	content: '';
	display: block;
	height: 2px;
	position: absolute;
	top: 50%;
	right: 0;
	width: 12px;
	background-color: #ed3242;
	transform: translateY(-50%);

}

.global-navigation__link.-active::after {
	transform: translateY(-50%) rotate(-90deg);
}

.accordion {
	height: 0;
	overflow: hidden;
	visibility: hidden;
	transition: 0.1s;
}

.accordion.-active {
	height: auto;
	padding-top: 30px;
	visibility: visible;
}

.accordion__list li {
	font-size: 0.75rem;
}

.accordion__list li+li {
	margin-top: 21px;
}

.accordion__link {
	color: #172e59;
}


/* スマホ */
@media (max-width:1024px) {
	.header {
		display: block;
		width: 100%;
	}

	.header__nav-area {
		height: 100vh;
		overflow-y: scroll;
	}

 /* グロナビ */
    ul.gMenu {
        padding: 0;
        margin: 20px 10px 150px;
    }

    ul.gMenu li {
        list-style: none;
    }

    ul.gMenu>li>a {
        text-align: left;
        padding: 10px;
        border-bottom: solid 1px #1f5134;
        color: #993699;
        font-weight: bold;
    }

    ul.sub-menu {
        margin: 0;
        background-color:  #fffaff;
        border-radius: 0 0 5px 5px;
	padding:0;
    }

    ul.sub-menu li {
        position: relative;
        padding: 0.5em 1em 0.5em 1.4em;
        border-bottom: solid 2px #fff;
	transition:all .3s;
    }

    ul.sub-menu li:hover {
	background:#f0edf0;
    }

    ul.sub-menu li:before {
        content: "";
        position: absolute;
        top: 50%;
	transform:translatey(-50%);
        left: 0.5em;
	background-image:url(/img/kankou/list-arrow.png);
	background-size:contain;
        width: 15px;
        height: 15px;
    }

    ul.sub-menu li a, ul.sub-menu li strong {
        text-align: left;
        font-size: 1.2rem;
        padding: 7px 10px 5px;
    }

    ul.sub-menu li strong {
        display: flex;
        justify-content: flex-start;
    }

    .gMenu > li:after {
	display:none;
    }

    /* レスポンシブアコーディオン用 */
    .gMenu .acc_title_wrap {
        position: relative;
    }

    .gMenu .acc_title {
        position: relative;
	transition:all .3s;
    }

    .gMenu .acc_title>label {
        display: block;
        cursor: pointer;
        padding: 0px;
        width: 100%;
    }

    .gMenu .acc_title+input[id*="acc_ttl_label"]+* {
        display: none;
    }

    .gMenu .acc_title+input[id*="acc_ttl_label"]:checked+* {
        display: block;
    }

    .gMenu .no_acc_title label[for*="acc_ttl_label"] {
        background: none;
    }

    .gMenu .acc_title:hover {
	background:#f5e4f5;
    }

}