@charset "utf-8";
header {
width: 100%;
background: #fff;
}
header > div {
background-color: rgb(0 87 146 / 20%);
height: 100%;
padding: 1.25rem 0;
}
header > div > div {
display: flex;
justify-content: space-between;
align-items: center;
padding: 1rem 0;
}
.headerLeft {
width: 30%;
}
.headerRight {
width: 70%;
}
.headerRight .pcParts > nav > ul {
display: flex;
justify-content: flex-end;
font-weight: bold;;	
font-size: 1.1rem;

}
.headerRight .pcParts > nav > ul > li:not(:first-child) {
margin-left: 5%;
}
.headerRight .pcParts > nav > ul > li {
padding: 0.8rem 0px;
}
.headerLogo img {
    height: 80px;
    width: auto;
    object-fit: contain;
}
.dDown {
position: relative;
cursor: default;
}
.dDown > div {
display: block;
text-decoration: none;
position: relative;
transition:all .3s;
}
.dDown > ul {
position: relative;
transition:all .3s;
}
.pcParts > nav > ul > li > a:hover{
opacity: 0.6; 
}
.dDown > ul li a {
position: relative;
}

.dDown:not(:nth-child(3)) ul {
width: 155px;
}
.dDown:nth-child(3) ul {
width: 210px;
}
.dDown ul {
position: absolute;
left:0;
top:60px;
z-index: 4;
background: #fff;
border-radius: 10px;
padding: 1rem;
visibility: hidden;
opacity: 0;
transition: all .3s;
}
.dDown > ul li a::after{
content: '';
position: absolute;
right: 1rem;
top: 50%;
width: 6px;
height: 6px;
margin-top: -3px;
border-top: 2px solid #999;
border-right: 2px solid #999;
transform: rotate(45deg);
}
nav li.dDown:hover > ul {
visibility: visible;
opacity: 1;
}
.dDown ul li a {
font-size: 0.875rem;
display: block;
padding: 0.5rem 1rem;
border-radius: 10px;
}
nav li.dDown ul li a:hover,
nav li.dDown ul li a:active{
background-color: rgb(0 87 146 / 20%);
}
header .serchButton {
display: flex;
justify-content: flex-end;
}
header form {
position: relative;
}
header .pcParts form {
width: 30%;
}
header .serchButton input {
width: 100%;
border-radius: 50px;
border: 1px solid #3C3C3C;
background: #fff;
font-weight: bold;
}
header .pcParts .serchButton input {
padding: 5px 35px;
font-size: 0.875rem;
}
header .serchButton button{
position: absolute;
display: flex;
cursor: pointer;
}
header .pcParts .serchButton button{
top: calc(50% - 6px);
left: 15px;
}
header .pcParts .serchButton button img {
width: 12px;
}
@media screen and (max-width: 768px)  {
header {
height: 60px;
position: fixed;
top: 0;
z-index: 999;
}
header > div {
padding: 0;
}
header > div > div {
height: 100%;
}
header .logo {
font-size: 22px;
}
.headerLogo img {
    height: 40px;
    width: auto;
    object-fit: contain;
}

.headerLeft {
width: auto;
}
#spNav{
position:fixed;
z-index: 999;
top:60px;
right: -120%;
width:100%;
height: 100vh;
background: #005792;
transition: all 0.6s;
}
#spNav.panelactive{
right: 0;
}
#spNav.panelactive > div {
position: fixed;
z-index: 999; 
width: 100%;
height: 100vh;
overflow: auto;
-webkit-overflow-scrolling: touch;
}
#spNav ul {
width: 80%;
margin: 3rem auto 1.5rem;
}
#spNav ul li {
width: 100%;
}
#spNav li a{
color: #fff;
text-decoration: none;
padding:10px;
display: block;
text-transform: uppercase;
letter-spacing: 0.1em;
font-weight: bold;
}
#spNav li a.acOnlyOb {
    padding: 0;
}
.hMenu{
position:fixed;
z-index: 9999;
top:5px;
right: 10px;
cursor: pointer;
width: 50px;
height:50px;
}
.hMenu span{
display: inline-block;
transition: all .4s;
position: absolute;
left: 14px;
height: 2px;
border-radius: 2px;
background-color:#005792;
width: 45%;
}
.hMenu span:nth-of-type(1) {
top:15px; 
}
.hMenu span:nth-of-type(2) {
top:23px;
}
.hMenu span:nth-of-type(3) {
top:31px;
}
.hMenu.active span:nth-of-type(1) {
top: 16px;
left: 16px;
transform: translateY(6px) rotate(-45deg);
width: 45%;
}
.hMenu.active span:nth-of-type(2) {
opacity: 0;
}
.hMenu.active span:nth-of-type(3){
top: 28px;
left: 16px;
transform: translateY(-6px) rotate(45deg);
width: 45%;
}
#spNav .menu > li:first-child .acHead {
border-top: 1px solid #fff;
}
#spNav .acHead {
color: #fff;
cursor: pointer;
font-weight: bold;
padding: 1rem 1.5rem;
display: flex;
justify-content: space-between;
align-items: center;
border-bottom: 1px solid #fff;
font-size: 1.125rem;
}
#spNav  .acHead span {
display: block;
text-align: center;
line-height: 0;
position: relative;
width: 14px;
height: 14px;
}
#spNav .acHead span::before,#spNav .acHead span::after {
display: block;
content: "";
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
margin: auto;
width: 14px;
height: 2px;
background-color: #fff;
transition: .3s;
}
#spNav .acHead span::before {
transform: rotate(90deg);
-webkit-transform: rotate(90deg);
}
#spNav .acMenu.open .acHead span::before {
transform: rotate(0deg);
-webkit-transform: rotate(0deg);
}
#spNav .acMenu.open .acHead span::after {
background-color: transparent;
}
#spNav .acContent {
max-height: 0;
overflow: hidden;
transition: max-height 0.5s ease;
}
#spNav .acContent {
margin: 0;
width: 100%;
max-height: 0;
overflow: hidden;
transition: max-height 0.5s ease;
}
#spNav .acContent li {
position: relative;
padding-left: 2rem;
font-size: 1rem;
border-bottom: 1px solid #fff;
}
#spNav .acContent li a {
padding: 1rem 1.5rem 1rem 0.5rem;
}
header .spParts .serchButton {
width: 80%;
margin: 0 auto 60px;
}
header .spParts form {
width: 100%
}
header .spParts .serchButton input {
padding: 10px 15px 10px 45px;
}
header .spParts .serchButton button {
top: calc(50% - 10px);
left: 20px;
}
header .spParts .serchButton button img {
width: 20px;
}
}