@charset "UTF-8";

.pnav {
margin: 3em auto 4em;
max-width: 1200px;
width: 90%;
}
.pnav ul {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
border-top: 1px solid #ddd;
border-bottom: 1px solid #ddd;
}
.pnav a {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
position: relative;
padding: 30px;
line-height: 1;
}
.pnav li:first-child a {
padding-left: 50px;
}
.pnav li:first-child a::after {
content: "";
width: 10px;
height: 10px;
border: 0;
border-bottom: solid 1px #333;
border-left: solid 1px #333;
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
position: absolute;
top: 50%;
left: 20px;
margin-top: -4px;
transition: all .4s ease-out;
}
.pnav li:last-child a {
padding-right: 50px;
-webkit-box-pack: end;
-ms-flex-pack: end;
justify-content: flex-end;
text-align: right;
}
.pnav li:last-child a::after {
content: "";
width: 10px;
height: 10px;
border: 0;
border-top: solid 1px #333;
border-right: solid 1px #333;
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
position: absolute;
top: 50%;
right: 20px;
margin-top: -4px;
transition: all .4s ease-out;
}
.pnav a span:first-child {
font-size: 1.8rem;
letter-spacing: .05em;
will-change: color;
transition: color .3s;
font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}
.pnav a span:last-child {
display: block;
color: #222;
font-size: 1.6rem;
font-weight: 600;
letter-spacing: .1em;
margin-top: 5px;
}
.pnav a em {
font-style: normal;
font-size: 1.5rem;
letter-spacing: .05em;
font-weight: 600;
}
@media screen and (min-width: 1025px) {
.pnav li a:hover span:first-child {
color: #968959;
}
.pnav li:first-child a:hover::after {
left: 10px;
}
.pnav li:first-child a:hover::after {
left: 10px;
border-bottom-color: #968959;
border-left-color: #968959;
}
.pnav li:last-child a:hover::after {
right: 10px;
border-top-color: #968959;
border-right-color: #968959;
}
}
@media screen and (max-width: 767px) {
.pnav a {
padding: 15px;
}
.pnav li:first-child a {
padding-left: 30px;
}
.pnav li:last-child a {
padding-right: 30px;
}
.pnav li:first-child a::after {
width: 6px;
height: 6px;
left: 10px;
}
.pnav li:last-child a::after {
width: 6px;
height: 6px;
right: 10px;
}
.pnav a span:first-child {
font-size: 1.45rem;
}
.pnav a span:last-child {
font-size: 1.2rem;
}
.pnav a em {
font-size: 1.2rem;
}
}
