/* 親メニュー - Parent #top_search_box */
#top_search {
    background: #005243;
    border-radius: 0 0 20px 20px;
}

ul#gnav {
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: center;
}

ul#gnav li:last-child {
    border-right: none;
}

ul#gnav li a {
    display: block;
    color: #FFF;
    line-height: 1.2;
    text-decoration: none;
    text-align: center;
    padding: 13px 10px 11px;
}

ul#gnav>li>a {
    font-size: 1.9rem;
}

/*  */

#top_search_box>ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
}

#top_search_box>ul li {
    position: relative;
}

.menu-item-has-children {
    text-align: center;
    flex: 0 0 auto;
}

.menu-item-has-children {
    flex: 1 0 auto;
}


#top_search_box>ul>li>a {
    line-height: 1;
    border-right: solid 1px #FFF;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

#gnav6>a:nth-child(1) {
    border: none;
}

li.menu-item-has-children a {
    color: #222;
    text-decoration: none;
    display: block;
}

li.menu-item-has-children>a {
    color: #FFF;
    padding: 20px 0 18px;
    display: flex;
    column-gap: 12px;
}


/* 子メニュー - .sub-menu */

#top_search_box .sub-menu {
    position: absolute;
    width: 500px;
    background-color: #fff;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
    list-style: none;
    padding: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border: solid 3px #005243;
    border-radius: 6px;
}

#top_search_box .sub-menu li {
    width: 50%;
}

#top_search_box .sub-menu a {
    color: #222;
    padding: 8px 5px 7px 20px;
    width: 100%;
    display: flex;
    box-sizing: border-box;
    text-align: left;
    align-items: center;
    line-height: 20px;
    column-gap: 5px;
    border-radius: 6px;
    position: relative;
}

#top_search_box .sub-menu a::before {
    content: "";
    position: absolute;
    top: 12px;
    left: 2px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 7px;
    height: 7px;
    border-top: 2px solid #005243;
    border-right: 2px solid #005243;
}


#top_search_box .sub-menu a:hover {
    color: #FFF;
}

li.menu-item-has-children:nth-child(4)>ul:nth-child(2),
li.menu-item-has-children:nth-child(5)>ul:nth-child(2),
li.menu-item-has-children:nth-child(6)>ul:nth-child(2) {
    right: 0;
}

/* ホバー＆フォーカスで子メニュー表示 */
/* Display sub menu by hover & focus */

#top_search_box .menu-item-has-children:hover ul,
#top_search_box .menu-item-has-children ul.focused {
    opacity: 1;
    visibility: visible;
    z-index: 999;
}

#top_search_box li.menu-item-has-children li a:hover,
#top_search_box li.menu-item-has-children li a:focus {
    background-color: #ac8e00;
    color: #FFF;
}

#top_search_box .menu-item-has-children:hover>a:nth-child(1) {
    background-color: #ac8e00;
    color: #FFF;
}

#gnav1>a:nth-child(1) {
    border-radius: 0 0 0 20px;
}

#gnav6>a:nth-child(1) {
    border-radius: 0 0 20px 0;
}

#top_search_box li.menu-item-has-children li a:hover::before {
	border-top: 2px solid #685605;
	border-right: 2px solid #685605;
}

/* グロナビ（下層）ここまで */


/*  */