@charset "UTF-8";
/* =====================================
	全体設定
===================================== */

html{
    font-size: 62.5%;
}

a{
	color:#383838;
	text-decoration:none;
    transition: 0.3s all ease;
}

a:hover{
	opacity: 0.7;
}

.sp{
	display:none !important;
}

body {
    line-height: 1.8;
    font-family: "Noto Sans JP",sans-serif;
    font-size: 16px;
    color: #383838;
    text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;/*Chrome,Safari*/
	-ms-text-size-adjust: 100%;/*EgdeMobile*/
	-moz-text-size-adjust: 100%;/*firefox*/
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    font-feature-settings: "palt";
    margin: 0;
}


/* =====================================
	header
===================================== */

header{
    width: 100%;
    height: 150px;
    background: #fff;
    padding: 0 40px;
    filter: drop-shadow(0px 3px 6px rgba(0,0,0,0.15));
    position: relative;
    z-index: 10;
}

header .inner{
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 29px 0 0;
}

header .inner .menu{
    width: 100%;
    height: 44px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 28px;
}

header .inner .menu > li:nth-child(1){
    flex-basis: 12.5%;
}

header .inner .menu > li:nth-child(2){
    flex-basis: 14%;
}

header .inner .menu > li:nth-child(3){
    flex-basis: 13.0%;
}

header .inner .menu > li:nth-child(4){
    flex-basis: 15.5%;
}

header .inner .menu > li:nth-child(5){
    flex-basis: 12.5%;
}

header .inner .menu > li:nth-child(6){
    flex-basis: 12.5%;
}

header .inner .menu > li:nth-child(7){
    flex-basis: 9%;
}

header .inner .menu > li:nth-child(8){
    flex-basis: 11%;
}

header .inner .menu > li > a{
    width: 100%;
    height: 44px;
    border-left: 1px solid #d8c07f;
    font-size: 16px;
    font-weight: bold;
    color: #0033a1;
    line-height: 1.25;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    flex-direction: column;
}

header .inner .menu > li:last-child > a{
    border-right: 1px solid #d8c07f;
}

header .inner .menu > li > a small{
    font-size: 75%;
    font-weight: normal;
}

header .inner .menu > li.dropDown{
    height: 44px;
    border-left: 1px solid #d8c07f;
    font-size: 16px;
    font-weight: bold;
    color: #0033a1;
    line-height: 1.25;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    cursor: pointer;
}

header .inner .menu > li.dropDown ul{
    position: absolute;
    top: 44px;
    left: 0;
    width: 100%;
    background: #fff;
    padding: 24px 15px 0;
    display: none;
}

header .inner .menu > li.dropDown ul a{
    width: 100%;
    height: 56px;
    border-top: 1px solid #efe6cc;
    font-size: 16px;
    font-weight: bold;
    color: #0033a1;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}


@media screen and (max-width: 768px) {

.pc{
	display:none !important;
}

.sp{
	display:block !important;
}

a:hover{
	opacity: 1;
}

body{
	font-size: 3.2vw;
    line-height: 1.5833;
    width: 100%;
    overflow-x: hidden;
    min-width: inherit;
}


/* =====================================
	header
===================================== */

header{
    height: 16vw;
    padding: 0 0 0 6.4vw;
}

header .inner{
    padding: 4.1vw 0 0;
    position: relative;
}

header .inner a img{
    width: 25.33vw;
}

header .inner .menu{
    height: auto;
    display: block;
    margin-top: 5.33vw;
}

header .inner .menu > li{
    width: 100%;
}

header .inner .menu > li:last-child{
    border-right: none;
}

header .inner .menu > li > a{
    height: auto;
    border-left: none;
    border-top: 0.4vw solid #c4c4c4;
    font-size: 4vw;
    line-height: 1.3;
    padding: 4.6vw 0 4.6vw 6.4vw;
    text-align: left;
    display: block;
    position: relative;
}

header .inner .menu > li > a::before{
    content: "";
    width: 2.933vw;
    height: 0.533vw;
    background: #002891;
    border-radius: 0.267vw;
    position: absolute;
    top: 50%;
    right: 5vw;
    transform: rotate(135deg) translateY(-1.4vw);
}

header .inner .menu > li > a::after{
    content: "";
    width: 2.933vw;
    height: 0.533vw;
    background: #002891;
    border-radius: 0.267vw;
    position: absolute;
    top: 50%;
    right: 5vw;
    transform: rotate(45deg) translateY(-1.4vw);
}

header .inner .menu > li.dropDown{
    height: auto;
    border-left: none;
    border-top: 0.4vw solid #c4c4c4;
    font-size: 4vw;
    line-height: 1.2;
    padding: 4.6vw 0 0 6.4vw;
    text-align: left;
    display: block;
    position: relative;
}

header .inner .menu > li.dropDown ul{
    position: inherit;
    top: auto;
    left: auto;
    width: 100%;
    padding: 4.6vw 0 0;
    display: block;
}

header .inner .menu > li.dropDown ul a{
    height: auto;
    border-top: 0.4vw solid #c4c4c4;
    font-size: 3.8vw;
    padding: 4.6vw;
    text-align: left;
    display: block;
    position: relative;
}

header .inner .menu > li.dropDown ul a::before{
    content: "";
    width: 2.933vw;
    height: 0.533vw;
    background: #002891;
    border-radius: 0.267vw;
    position: absolute;
    top: 48%;
    right: 5vw;
    transform: rotate(135deg) translateY(-1.4vw);
}

header .inner .menu > li.dropDown ul a::after{
    content: "";
    width: 2.933vw;
    height: 0.533vw;
    background: #002891;
    border-radius: 0.267vw;
    position: absolute;
    top: 48%;
    right: 5vw;
    transform: rotate(45deg) translateY(-1.4vw);
}

header .inner .menu > li:last-child > a {
    border-right: none;
}

.l-sp-nav{
    width: 16vw;
    height: 16vw;
    position: absolute;
    top: 0;
    right: 0;
    background: #00133d;
}

.l-nav-btn__bar{
    width: 4.267vw;
    height: 0.533vw;
    background: #fff;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.l-nav-btn__bar--1{
    top: 4.267vw;
}

.l-nav-btn__bar--2{
    top: 6.133vw;
}

.l-nav-btn__bar--3{
    top: 8vw;
}

.l-nav-btn__txt{
    font-size: 2.67vw;
    color: #fff;
    width: 100%;
    text-align: center;
    position: absolute;
    top: 9.467vw;
    left: 0;
    line-height: 1;
}

.gnavi{
    width: 100vw;
    height: 100dvh;
    position: absolute;
    top: 0;
    right: 0;
    background: rgba(255,255,255,0.8);
    display: none;
    overflow-y: scroll;
    padding-bottom: 10vw;
}

.gnavi .wrap{
    width: 84vw;
    background: #fff;
    margin: 0 0 0 auto;
    padding-top: 5.2vw;
    filter: drop-shadow(0px 3px 6px rgba(0,0,0,0.15));
}

.gnavi .wrap > a img{
    margin-left: 6.4vw;
    width: 25.33vw;
}

.gnavi .l-nav-btn__bar{
    left: 4vw;
    width: 5.867vw;
}

.gnavi .l-nav-btn__bar--1{
    transform: rotate(135deg) translateY(-1.4vw);
}

.gnavi .l-nav-btn__bar--2{
    transform: rotate(45deg) translateY(-1.4vw);
}

}