@charset "UTF-8";
/* CSS Document */
@font-face {font-family: J-TRIP;src: local("J-TRIP-Light"), url("//www.jtrip.co.jp/J-TRIP-Light.otf");font-weight: normal;font-display: swap}
@font-face {font-family: J-TRIP;src: local("J-TRIP-Medium"), url("//www.jtrip.co.jp/J-TRIP-Medium.otf");font-weight: bold;font-display: swap}]
header{ padding: 15px 0 0 0;}
header li{list-style: none}
header a {outline: none;text-decoration: none;color: #000;}
header a:hover {opacity: 0.8;transition: all 0.15s linear;}
header img {vertical-align: bottom; -webkit-backface-visibility: hidden;}
header {font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "Hiragino Mincho ProN", Century, "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;font-size: 15px;color: #000000;line-height: 1.86;letter-spacing: 1px;background: #fff;-webkit-text-size-adjust: 100%;-webkit-overflow-scrolling: touch;padding: 15px 0 10px 0;position: relative;}
header::before, header::after {content: "";display: block;height: 26px;width: calc(100vw - 19px);position: absolute;top: 32px;left: 0;right: 0;background: #d80c18;}
header:after {display: none;}
header .memberPlan {position: absolute;top: 15px;right: 135px}
header>.innerWrap {background: #fff;max-width: 1262px !important;padding-left: 31px;padding-right: 31px;}
header .logo img {height: 60px;width: auto;}
header .btns {position: absolute;top: 16px;right: 55px}
header .btns li {float: left;margin-left: 48px;position: relative}
header .btns li.favBtn {display: none}
header .btns li img {height: 28px;width: auto}
header .btns li .num {display: block;text-align: center;width: 22px;height: 22px;font-size: 14px;line-height: 22px;color: #fff;background: #d80c18;border-radius: 50%;position: absolute;top: -11px;right: -14px}
@keyframes menuIn {
0% {display:none;opacity:0;margin-top:-30px}
1% {display:block;opacity:0}
100% {opacity:1;display:block;margin-top:0;z-index:9999}
}
@keyframes menuOut {
0% {display:block;opacity:1;margin-top:0}
99% {display:none;opacity:0}
100% {opacity:0;margin-top:-30px;display:none;z-index:-1}
}
header .menu .inner {display: none;position: absolute;top: 71px;right: 0;padding: 32px 32px 32px 0px;background: #fff;border: 1px solid #6A6A6A;transition: all 0.25s linear;z-index: 9999}
header .menu.open .inner {display: block;animation-name: menuIn;animation-duration: 0.25s;animation-timing-function: ease-out;animation-iteration-count: 1;animation-fill-mode: forwards;animation-direction: alternate}
header .menu.close .inner {display: block;animation-name: menuOut;animation-duration: 0.25s;animation-timing-function: ease-out;animation-iteration-count: 1;animation-fill-mode: forwards;animation-direction: alternate}
header .menu ul {font-size: 14px;line-height: 2.57;float: left;min-width: 160px;padding-left: 48px}
header .menu ul:nth-child(2) {border-left: 1px solid #bcbcbc}
header .menu ul .noLink {color: #ccc}
.innerWrap {margin: 0 auto;position: relative;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
.innerWrap.Lsize {max-width: 1200px;}
.innerWrap.Msize {max-width: 1000px;}
.innerWrap.Ssize {max-width: 900px;}
.spCont {display: none;}
@media screen and (max-width: 1000px) {header .memberPlan {position: relative;left: 0;right: 0;top: 0;display: block;text-align: center;margin-top: 16px}}
@media screen and (max-width: 768px) {
header {padding: 0;}
header::before, header::after {  display: block;  width: 7px;  height: 28px;  top: 10px;}
header:before {right: inherit;}
header:after {left: inherit;}
header .memberPlan {display: block;font-size: 0;text-align: center;position: relative;top: 0;left: 0;margin: 0;}
header .memberPlan a {display: block;line-height: 1.5;color: #d80c18;padding: 5px 20px 5px 30px;margin: 10px 15px 15px;border: 1px solid #d80c18;font-size: 13px;}
header .memberPlan a:before {content: "";border-right: 1px solid #d80c18;border-top: 1px solid #d80c18;width: 5px;height: 5px;left: 29px;position: absolute;transform: rotate(45deg);-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);top: 50%;margin: -4px 0 0 0}
header>.innerWrap {background: none;max-width: inherit !important;padding-left: 0;padding-right: 0}
header .logo { height: 38px; padding: 7px 0 7px 20px;}
header .logo img {height: 38px;}
header .btns {top: 11px;right: 30px;}
header .btns li {margin-left: 20px;}
header .btns li.open {z-index: 10001;}
header .btns li img {height: 30px;}
header .btns li .num {width: 18px;height: 18px;font-size: 10px;line-height: 18px;top: -7px;right: -10px;}
header .menu {opacity: 0;height: 0;pointer-events: none}
header .menu.open {height: auto;position: absolute;top: 0;bottom: 0;left: 0;right: 0;z-index: 8888;transition: all 0.25s linear;opacity: 1;z-index: 10000;pointer-events: auto;}
header .menu.open:before {content: "";position: fixed;top: 0;bottom: 0;left: 0;right: 0;background: rgba(0,0,0,0.7);}
header .menu .inner {width: auto;position: absolute;top: 100px;right: 20px;left: 20px;padding: 0;background: #fff;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
header .menu ul {padding: 16px 0;min-width: 100%;font-size:12px;}
header .menu ul li a {display: block;padding: 5px 30px;}
header .menu ul:nth-child(2) {border-top: 1px solid #bcbcbc;border-left: 0px none;}
.spCont {display: block;}
.pcCont {display: none;}
}