@charset "UTF-8";

*{ margin: 0; padding: 0; box-sizing: border-box; list-style: none; text-decoration: none; color: #353535;}
.f-white{ color: #fff;}
/* no click */
.nocursor{ pointer-events: none; color: #808080; opacity: .3;}
.hover{ pointer-events: none;}



/************
 header
 *************/
 #header { position: sticky; top: 0; z-index: 999;}
.header_bg{ height: 80px; background-color: #fff; padding: 0 40px 0 20px;}
.header_contents{ width: 100%; height: 100%; display: flex; justify-content: space-between; align-items: center; gap:10%;}
.header_contents h1{ width: 20%;}

.hamburger { width: 100%; height: 100%; display: flex; justify-content: space-between; align-items: center;}
.hamburger .logo { width: 20%;}
.hamburger .btn_gNav { position: sticky; right: 20px; width: 30px; height: 24px; z-index: 12; box-sizing: border-box; cursor: pointer; -webkit-transition: all 400ms; transition: all 400ms;}
.hamburger .btn_gNav span { position: absolute; width: 100%; height: 4px; background: #353535; border-radius: 10px; -webkit-transition: all 400ms; transition: all 400ms;}
.hamburger .btn_gNav span:nth-child(1) { top: 0;}
.hamburger .btn_gNav span:nth-child(2) { top: 10px;}
.hamburger .btn_gNav span:nth-child(3) { top: 20px;}
.hamburger .btn_gNav.open span:nth-child(1) { background: #353535; top: 6px; -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); transform: rotate(-45deg);}
.hamburger .btn_gNav.open span:nth-child(2),
.hamburger .btn_gNav.open span:nth-child(3) { top: 6px; background: #353535; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); transform: rotate(45deg);}

.btn_gNav { display: none;}
.gNav { width: 70%; height: 100%; position: relative; display: flex; justify-content: end; align-items: center;}

.gNav .gNav_menu { display: flex; justify-content: space-between; align-items: center; width: 100%; height: 100%; font-size: 1.5rem; padding-top: 5px;}
.gNav .gNav_menu li { margin: 0 auto; padding: 0 5px; position: relative;}
.gNav .gNav_menu .bg_green{ background-color: #3F815D; padding: 15px 60px;}
.gNav .gNav_menu .bg_green:hover{ opacity: .5; transition: 1s; cursor: pointer;}
.gNav .gNav_menu li a.g_underLine::after{ position: relative; display: block; left: 0; content: ''; width: 0; height: 7px; background: #3F815D ; bottom: -24px; transition: .3s; }
.gNav .gNav_menu li a.g_underLine:hover::after { width: 100%; }



/* ドロップメニュー */
.gNav .gNav_menu li a.afternone::after{display: none;}
.gNav .gNav_menu .noLine a.workshop::after,
.gNav .gNav_menu .noLine a.column::after,
.gNav .gNav_menu .noLine a.town-report::after{ content: ''; display: block; width: 100%; height: 7px; background-color: #fff; position: relative; top: -1px;}
.menu_item:hover .drop_menu_list { visibility: visible;}
.menu_item a { color: #353535;}

.drop_menu { position: relative;}
.drop_menu_list { background-color: #fffffff2; left: 0; position: absolute; padding: 10px 0 0; top: 100%; visibility: hidden; width: max-content; z-index: 1; box-shadow: 5px 5px 5px rgba(82, 82, 82, 0.38);}
.gNav .gNav_menu .menu_item .drop_menu_list .drop_menu_item{ padding: 0; line-height: 1.8;}
.gNav .gNav_menu .menu_item .drop_menu_list .drop_menu_item a{ display: block; width: 100%; padding: 5px 20px;}
.gNav .gNav_menu .menu_item .drop_menu_list .drop_menu_item a:hover{ background-color: #80808033;}
.gNav .gNav_menu .menu_item .drop_menu_list .drop_menu_item a:hover::after{ display: none;}


@media screen and (max-width: 800px) {
    .btn_gNav { display: block;}
    .gNav { position: fixed; top: 0; right: -100%; width: 80%; height: 100%; background-color: #fff; font-size: 16px; box-sizing: border-box; z-index: 1; padding-top: 50px; transition: .3s;}
    .gNav.open { right: 0;}
    .gNav .gNav_menu { padding: 0; width: 100%; height: 100%; display: block; flex-direction: column; text-align: center; overflow: scroll;}
    .gNav .gNav_menu li { width: 86%; padding: 15px; border-bottom: #525252 1px solid;}
    .gNav .gNav_menu li a::after { display: none; }
    .gNav .gNav_menu li a:hover::after { display: none;}

    .drop_menu_list{ position: relative; visibility: unset; width: 100%; box-shadow: none; text-align: left;}
    .gNav .gNav_menu .noLine a::after{ display: none;}
    .gNav .gNav_menu .menu_item .drop_menu_list .drop_menu_item{ padding: 0px; line-height: 1.8; margin: 0; width: 100%; border-bottom: none;}
    .gNav .gNav_menu .menu_item .drop_menu_list .drop_menu_item a:hover{ background-color: #fff; text-decoration: underline;}
    .gNav .gNav_menu .sp_padding01{ padding: 20px 0;}
    .gNav .gNav_menu .sp_padding02 { padding: 0;}

}


@media screen and (max-width:800px){
    .responsive_btn{ display: flex;}
    .header_bg{ position: relative;}
    .header_nav{ background: #fff; width:100%; height: 100vh; padding: 30px 40px; position: fixed; top: 0; right: -100%; transition: .5s; transform: translateX(100%); transition: ease .4s;}
    .header_nav_lists{ display: block; text-align: center;}
    .header_contents h1{ width: 50%;}
    .hamburger .logo { width: 40%;}
}