@charset "UTF-8";


/* maintit
------------------------------------------------- */
.maintit {
    width: 20%;
    height: 100vh;
    position: sticky;
    top: 0;
    z-index: 10;
}
.maintit h1 {
    font-size: 0.47rem;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: 0.02em;
    text-align: center;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 1.68rem;
    opacity: 0;
}
.maintit.isAnimate h1 {
    animation: fade 1s ease 1.2s 1 forwards;
}
.maintit h1 b {
    display: block;
    font-size: 0.16rem;
    font-weight: 400;
    padding-left: 0.08rem;
}
.maintit .snav {
    position: absolute;
    left: 0.4rem;
    bottom: 0.3rem;
}
.maintit .snav ul li {
    margin-top: 0.05rem;
}
.maintit .snav ul li a {
    display: block;
    color: #A5A5A5;
    padding-left: 0.25rem;
    position: relative;
}
.maintit .snav ul li a::before {
    content: '';
    width: 0.2rem;
    height: 1px;
    background-color: rgba(112,112,112,0.5);
    position: absolute;
    left: 0;
    top: 50%;
    transition: 0.4s;
}
.maintit .snav ul li a.current {
    padding-left: 0.35rem;
    color: #3B3B3B;
}
.maintit .snav ul li a.current::before {
    width: 0.3rem;
}
.maintit .snav-btn {
    display: none;
}
@media screen and (min-width:751px){
.maintit .snav {
    opacity: 0;
}
.maintit.isAnimate .snav {
    animation: fade 1s ease 1.5s 1 forwards;
}
.maintit .snav ul li a:hover {
    padding-left: 0.35rem;
    color: #3B3B3B;
}
.maintit .snav ul li a:hover::before {
    width: 0.3rem;
}
}
@media screen and (max-width:750px){
.maintit {
    width: 100%;
    height: auto;
    position: relative;
}
.maintit h1 {
    width: 100%;
    font-size: 0.32rem;
    margin: 0 0 10vw 0.1rem;
}
.maintit h1 b {
    font-size: 0.12rem;
}
.maintit .snav {
    background-color: rgba(0,0,0,0.7);
    border-radius: 0 0.05rem 0.05rem 0;
    padding: 2.5vw 10vw 11vw 0;
    position: fixed;
    left: -100vw;
    top: auto;
    bottom: 0.1rem;
    z-index: 20;
    transition: 0.4s;
}
.maintit .snav.is-show {
    left: 0;
}
.maintit .snav ul li {
    font-size: 0.14rem;
    margin: 0.035rem 0;
}
.maintit .snav ul li a {
    color: #fff;
    transition: 0.4s;
}
.maintit .snav ul li a::before {
    background-color: #fff;
}
.maintit .snav ul li a.current {
    color: #D99F00;
}
.maintit .snav ul li a.current::before {
    background-color: #D99F00;
}
.maintit .snav-btn {
    height: 7vw;
    font-size: 0.14rem;
    line-height: 1;
    background-color: #D99F00;
    border-radius: 0 0.05rem 0.05rem 0;
    padding: 1vw 4vw 1vw 7vw;
    color: rgba(247,241,212,0.8);
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    left: 0;
    bottom: 0.1rem;
    z-index: 22;
    cursor: pointer;
}
.maintit .snav-btn span {
    width: 0.12rem;
    height: 0.12rem;
    position: absolute;
    left: 2.1vw;
    top: 50%;
    margin-top: -0.06rem;
    transition: 0.4s;
}
.maintit .snav-btn span::before,
.maintit .snav-btn span::after {
    content: '';
    width: 100%;
    height: 0.01rem;
    background-color: rgba(247,241,212,0.8);
    position: absolute;
    left: 0;
    top: 50%;
}
.maintit .snav-btn span::after {
    content: '';
    width: 0.01rem;
    height: 100%;
    left: 50%;
    top: 0.2vw;
}
.maintit .snav-btn.open span {
    transform: rotate(360deg);
}
.maintit .snav-btn.open span::after {
    opacity: 0;
}
}


/* mainvisual
------------------------------------------------- */
.mainvisual {
    width: 100%;
    margin-bottom: 0.64rem;
}
.mainvisual .con {
    width: 30.82vw;
    opacity: 0;
}
.mainvisual.isAnimate .con {
    animation: fade 1s ease 1.2s 1 forwards;
}
.mainvisual .con h1 {
    font-size: 0.47rem;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: 0.02em;
    text-align: center;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 1.68rem;
}
.mainvisual .con h1 b {
    display: block;
    font-size: 0.16rem;
    font-weight: 400;
    padding-left: 0.05rem;
}
.mainvisual .photo {
    width: 69.18vw;
    opacity: 0;
}
.mainvisual.isAnimate .photo {
    animation: fade 1s ease 0.4s 1 forwards;
}
@media screen and (max-width: 1366px) and (min-width: 751px) {
.mainvisual {
    align-items: center;
}
}
@media screen and (max-width:750px){
.mainvisual {
    width: 100%;
    margin-bottom: 15vw;
}
.mainvisual .con {
    width: 100%;
    margin-bottom: 10vw;
}
.mainvisual .con h1 {
    width: 100%;
    font-size: 0.32rem;
    margin-left: 0.1rem;
}
.mainvisual .con h1 b {
    font-size: 0.12rem;
}
.mainvisual .photo {
    width: 100%;
}
}


/* share, shop
------------------------------------------------- */
/* maintit */
.share .maintit h1 {
    padding-top: 2rem;
    margin-left: 1.35rem;
}
.share.shop .maintit h1 {
    padding-top: 2.9rem;
    margin-left: 1.68rem;
    letter-spacing: 0.3em;
}
.share.shop .maintit h1 b {
    letter-spacing: 0.02em;
}
@media screen and (max-width:750px){
.share .maintit h1 {
    padding-top: 0.85rem;
    margin-left: 0.1rem;
}
.share.shop .maintit h1 {
    padding-top: 0.85rem;
    margin-left: 0.1rem;
    letter-spacing: 0.3em;
}
.share.shop .maintit h1 b {
    letter-spacing: 0.02em;
}
}

/* mainvisual */
.share .mainvisual {
    margin: -100vh 0 0.85rem;
}
@media screen and (max-width:750px){
.share .mainvisual {
    margin: 0;
}
}

/* cont1 */
.share #contents {
    padding-bottom: 2rem;
}
.share .cont1 {
    padding-top: 0.9rem;
}
.share.shop .cont1 {
    padding-bottom: 0.6rem;
}
.share .cont1 .sec {
    width: 69.18vw;
    margin-right: calc(5rem - 50cqw);
    position: relative;
}
.share .cont1 .sec h2 {
    font-size: 0.32rem;
    font-weight: 400;
    line-height: 1.45;
    display: flex;
    align-items: center;
    margin-bottom: 0.15rem;
}
.share .cont1 .sec h2 span {
    display: inline-block;
    width: 1.11rem;
    line-height: 2.166;
    background-color: #D99F00;
    border-radius: 0.05rem;
    font-size: 0.12rem;
    color: #fff;
    text-align: center;
    margin-left: 0.1rem;
}
.share.shop .cont1 .sec h2 {
    width: 0.83rem;
    position: absolute;
    left: -1.23rem;
    top: 1.65rem;
}
.share.shop #sousou .cont1 .sec h2.logo {
    width: 1.2rem;
    left: -1.43rem;
    top: 1.92rem;
}
.share.shop #hyaku_saji_hyakka .cont1 .sec h2.logo {
    width: 1.2rem;
    left: -1.43rem;
    top: 2.15rem;
}
.share .cont1 .swiper .swiper-button-next,
.share .cont1 .swiper .swiper-button-prev {
    width: 0.36rem;
    height: 0.72rem;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2237.951%22%20height%3D%2273.782%22%20viewBox%3D%220%200%2037.951%2073.782%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_128885%22%20data-name%3D%22%E3%83%91%E3%82%B9%20128885%22%20d%3D%22M167.533%2C1421.6l36.36%2C36.361-36.36%2C36.361%22%20transform%3D%22translate(-167.002%20-1421.075)%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.5%22%2F%3E%3C%2Fsvg%3E') center center no-repeat;
    background-size: 100% auto;
    right: 0.19rem;
    margin-top: -0.36rem;
    text-indent: -9999px;
    transition: 0.4s;
}
.share .cont1 .swiper .swiper-button-prev {
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2237.952%22%20height%3D%2273.782%22%20viewBox%3D%220%200%2037.952%2073.782%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_128886%22%20data-name%3D%22%E3%83%91%E3%82%B9%20128886%22%20d%3D%22M203.893%2C1421.6l-36.361%2C36.361%2C36.361%2C36.361%22%20transform%3D%22translate(-166.472%20-1421.075)%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.5%22%2F%3E%3C%2Fsvg%3E');
    right: auto;
    left: 0.19rem;
}
.share .cont1 .swiper .swiper-button-next::after,
.share .cont1 .swiper .swiper-button-prev::after {
    display: none;
}
.share .cont1 .con {
    width: 7.7rem;
}
.share .cont1 .con .txt {
    font-size: 0.14rem;
    padding: 0.3rem 0 0.25rem;
}
.share.shop .cont1 .con .txt {
    letter-spacing: 0.04em;
    line-height: 2;
}
.share .cont1 .con .add {
    font-size: 0.14rem;
    line-height: 2;
    padding-top: 0.05rem;
}
.share .cont1 .con .add .insta {
    text-decoration: underline;
}
.share .cont1 .con .box {
    width: 7.07rem;
}
.share .cont1 .con .box .photo {
    border: 0.01rem solid #B4B4B4;
    box-sizing: border-box;
}
.share .cont1 .con .box .caution {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 0.25rem;
}
.share .cont1 .con .box .caution p {
    width: 77.8%;
    font-size: 0.12rem;
    line-height: 1.66;
    letter-spacing: 0.04em;
    text-align: left;
}
.share .cont1 .con .box .caution .btn {
    width: 1.11rem;
    font-size: 0.13rem;
}
.share .cont1 .con .box .caution .btn a {
    width: 100%;
    height: 0.26rem;
    background-color: #1A1A1A;
    border: 0.01rem solid #1A1A1A;
    border-radius: 0.03rem;
    color: #fff;
    padding-left: 0.48rem;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    position: relative;
}
.share .cont1 .con .box .caution .btn a::before {
    content: '';
    width: 0.35rem;
    height: 0.01rem;
    background-color: #fff;
    position: absolute;
    left: 0;
    top: 50%;
    transition: 0.4s;
}
.share .cont1 .con .box .caution .insta {
    width: 0.2673rem;
}
.share .cont1 .bggy {
    background-color: #F0F0F0;
    padding: 0.28rem 0 0.28rem 0.5rem;
    margin-top: 0.45rem;
}
.share .cont1 .bggy dl {
    display: flex;
    align-items: center;
}
.share .cont1 .bggy dl dt {
    width: 1.2738rem;
    margin-right: 0.43rem;
}
.share .cont1 .bggy dl dd {
    width: 2.47rem;
    margin-right: 0.38rem;
}
.share .cont1 .bggy dl dd p {
    font-size: 0.14rem;
}
.share .cont1 .bggy dl dd.photo {
    width: 1.36rem;
    margin-right: 0.2rem;
}
@media screen and (min-width:751px){
.share .cont1 .swiper .swiper-button-next:hover,
.share .cont1 .swiper .swiper-button-prev:hover {
    opacity: 0.7;
}
.share .cont1 .con .add .tel {
    pointer-events: none;
}
.share .cont1 .con .add .insta:hover {
    text-decoration: none;
}
.share .cont1 .con .box .caution .btn a:hover {
    background-color: #fff;
    color: #1A1A1A;
}
.share .cont1 .con .box .caution .btn a:hover::before {
    background-color: #1A1A1A;
}
}
@media screen and (max-width:750px){
.share #contents {
    padding-bottom: 20vw;
}
.share .cont1 {
    padding: 20vw 0 5vw;
}
.share.shop .cont1 {
    padding-bottom: 5vw;
}
.share .cont1 .sec {
    width: 100%;
    margin-right: 0;
}
.share .cont1 .sec h2 {
    font-size: 0.24rem;
}
.share.shop .cont1 .sec h2 {
    width: 0.498rem;
    position: static;
    margin: 0 0 0.2rem 3vw;
}
.share.shop #sousou .cont1 .sec h2.logo {
    width: 0.72rem;
}
.share.shop #hyaku_saji_hyakka .cont1 .sec h2.logo {
    width: 0.72rem;
}
.share .cont1 .sec .swiper {
    width: 100vw;
    margin-left: -4vw;
}
.share .cont1 .swiper .swiper-button-next,
.share .cont1 .swiper .swiper-button-prev {
    width: 0.2rem;
    height: 0.4rem;
    right: 0.1rem;
    margin-top: -0.2rem;
}
.share .cont1 .swiper .swiper-button-prev {
    right: auto;
    left: 0.1rem;
}
.share .cont1 .con {
    width: 100%;
}
.share .cont1 .con .txt {
    font-size: 0.14rem;
    padding: 0.25rem 3vw 0.2rem;
}
.share.shop .cont1 .con .txt {
    letter-spacing: 0.04em;
    line-height: 2;
}
.share .cont1 .con .add {
    font-size: 0.13rem;
    padding: 0.05rem 3vw 0;
}
.share .cont1 .con .add .insta {
    text-decoration: underline;
}
.share .cont1 .con .box {
    width: 100%;
}
.share .cont1 .con .box .caution {
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 0.25rem;
}
.share .cont1 .con .box .caution p {
    width: 100%;
    margin-bottom: 5vw;
}
.share .cont1 .con .box .caution .btn {
    margin: 0 2.5vw;
}
.share .cont1 .con .box .caution .insta {
    margin: 0 2.5vw;
}
.share .cont1 .bggy {
    width: 96vw;
    padding: 8vw 8vw 8vw 4vw;
    margin-top: 0.4rem;
    box-sizing: border-box;
}
.share .cont1 .bggy dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.share .cont1 .bggy dl dt {
    width: 30%;
    margin-right: 3%;
}
.share .cont1 .bggy dl dd {
    width: 67%;
    margin-right: 0;
}
.share .cont1 .bggy dl dd p {
    line-height: 1.55;
}
.share .cont1 .bggy dl dd.photo {
    width: 48%;
    margin: 5vw 0 0;
}
}


/* event
------------------------------------------------- */
/* mainvisual */
.event .mainvisual .con h1 {
    padding-top: 2.7rem;
}
@media screen and (max-width: 1366px) and (min-width: 751px) {
.event .mainvisual .con h1 {
    padding-top: 0.6rem;
}
}
@media screen and (max-width:750px){
.event .mainvisual .con h1 {
    padding-top: 0.85rem;
}
}

/* cont1 */
.event .cont1 {
    width: 9.95rem;
    margin: 0 auto;
}
.event .cont1 .box {
    width: 6.4rem;
    margin: 1.1rem auto 1.4rem;
}
.event .cont1 .box p {
    font-size: 0.14rem;
    text-align: center;
}
.event .cont1 .box ul {
    margin-top: 0.25rem;
}
.event .cont1 .box ul li {
    margin: 0 0.35rem;
}
.event .cont1 .box ul li a {
    height: 0.65rem;
    color: #D99F00;
    display: flex;
    align-items: center;
    padding-right: 0.38rem;
    position: relative;
}
.event .cont1 .box ul li a::before {
    content: '';
    width: 0.15rem;
    height: 0.13rem;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2214.193%22%20height%3D%2213.267%22%20viewBox%3D%220%200%2014.193%2013.267%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_300%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%20300%22%20transform%3D%22translate(-451.362%20-3577.246)%22%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_126479%22%20data-name%3D%22%E3%83%91%E3%82%B9%20126479%22%20d%3D%22M-6359.608%2C3480.854l6.1%2C6.1-6.1%2C6.1%22%20transform%3D%22translate(6818%2096.922)%22%20fill%3D%22none%22%20stroke%3D%22%23d99f00%22%20stroke-width%3D%221.5%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_126480%22%20data-name%3D%22%E3%83%91%E3%82%B9%20126480%22%20d%3D%22M-6287.956%2C3516.88h-12.682%22%20transform%3D%22translate(6752%2067)%22%20fill%3D%22none%22%20stroke%3D%22%23d99f00%22%20stroke-width%3D%221.5%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E') right center no-repeat;
    background-size: 100% auto;
    position: absolute;
    right: 0.2rem;
    top: 50%;
    margin-top: -0.065rem;
    transition: 0.4s;
}
.event .cont1 .box ul li a span {
    width: 0.66rem;
    height: 0.65rem;
    background: url("../img/event/btn.svg") center center no-repeat;
    background-size: cover;
    position: absolute;
    right: 0;
    top: 0;
    transition: 0.4s;
}
.event .cont1 .con {
    border-top: 0.01rem solid #C6C6C6;
    padding-top: 0.45rem;
    margin-top: 0.4rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.event .cont1 .con p {
    width: 75.4%;
    font-size: 0.12rem;
    line-height: 1.66;
    letter-spacing: 0.04em;
    text-align: left;
}
.event .cont1 .con .btn {
    width: 1.11rem;
    font-size: 0.13rem;
}
.event .cont1 .con .btn a {
    width: 100%;
    height: 0.26rem;
    background-color: #1A1A1A;
    border: 0.01rem solid #1A1A1A;
    border-radius: 0.03rem;
    color: #fff;
    padding-left: 0.48rem;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    position: relative;
}
.event .cont1 .con .btn a::before {
    content: '';
    width: 0.35rem;
    height: 0.01rem;
    background-color: #fff;
    position: absolute;
    left: 0;
    top: 50%;
    transition: 0.4s;
}
.event .cont1 .con .insta {
    width: 0.2673rem;
}
@media screen and (min-width:751px){
.event .cont1 .box ul li a:hover::before {
    right: 0.1rem;
}
.event .cont1 .box ul li a:hover span {
    right: -0.15rem;
}
.event .cont1 .con .btn a:hover {
    background-color: #fff;
    color: #1A1A1A;
}
.event .cont1 .con .btn a:hover::before {
    background-color: #1A1A1A;
}
}
@media screen and (max-width:750px){
.event .cont1 {
    width: 100%;
}
.event .cont1 h2 {
    width: 100vw;
    margin-left: -4vw;
}
.event .cont1 .box {
    width: 100%;
    margin: 15vw auto 20vw;
}
.event .cont1 .box ul {
    display: flex;
    margin-top: 0.25rem;
}
.event .cont1 .box ul li {
    font-size: 0.14rem;
    margin: 0 0.15rem;
}
.event .cont1 .box ul li a {
    line-height: 1.4;
}
.event .cont1 .con {
    padding-top: 0.25rem;
    margin-top: 0.25rem;
    justify-content: center;
    flex-wrap: wrap;
}
.event .cont1 .con p {
    width: 100%;
    font-size: 0.12rem;
    text-align: left;
    margin-bottom: 5vw;
}
.event .cont1 .con .btn {
    margin: 0 2.5vw;
}
.event .cont1 .con .insta {
    margin: 0 2.5vw;
}
}

/* slider */
.event .slider {
    margin-bottom: 2rem;
}
.event .slider .infiniteslide {
    display: none;
    transition: 0.4s;
    z-index: 1;
}
.event .slider .infiniteslide_wrap .infiniteslide li {
    width: 3.5rem;
    margin-right: 0.02rem;
}
.event .slider .infiniteslide_wrap .infiniteslide li img {
    width: 100%;
    height: auto;
}
@media screen and (max-width:750px){
.event .slider {
    margin-bottom: 25vw;
}
.event .slider .infiniteslide_wrap .infiniteslide li {
    width: 2.8rem;
}
}


/* access
------------------------------------------------- */
/* mainvisual */
.access .mainvisual .con h1 {
    padding-top: 3.2rem;
}
@media screen and (max-width: 1366px) and (min-width: 751px) {
.access .mainvisual .con h1 {
    padding-top: 0.6rem;
}
}
@media screen and (max-width:750px){
.access .mainvisual .con h1 {
    padding-top: 0.85rem;
}
}

/* map */
.access .map {
    margin-bottom: 0.3rem;
}
.access .map .gmap {
    width: 100%;
    height: 4.2rem;
    position: relative;
}
.access .map .gmap iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}
@media screen and (max-width:750px){
.access .map {
    margin-bottom: 15vw;
}
.access .map .gmap {
    width: 100vw;
    margin-left: -4vw;
    height: 3.5rem;
}
}

/* cont1 */
.access .cont1 {
    padding-bottom: 0.45rem;
}
.access .cont1 .sec .con {
    width: 40.6%;
    font-size: 0.14rem;
    letter-spacing: 0.05em;
    margin-bottom: 0.8rem;
}
.access .cont1 .sec .con:nth-child(2) {
    width: 52.5%;
}
.access .cont1 .sec .con h2 {
    font-size: 0.21rem;
    font-weight: 400;
    margin-bottom: 0.05rem;
    position: relative;
}
.access .cont1 .sec .con h2::after {
    content: '';
    width: 100%;
    height: 0.01rem;
    background-color: #7C7C7C;
    position: absolute;
    right: 0;
    top: 50%;
    z-index: 1;
}
.access .cont1 .sec .con h2 span {
    background-color: #fff;
    padding-right: 0.15rem;
    position: relative;
    z-index: 2;
}
.access .cont1 .sec .con dl {
    display: flex;
    margin-bottom: 0.15rem;
}
.access .cont1 .sec .con dl dt {
    width: 28%;
}
.access .cont1 .sec .con:nth-child(2) dl dt {
    width: 24.5%;
}
.access .cont1 .sec .con dl dd {
    width: 72%;
}
.access .cont1 .sec .con:nth-child(2) dl dd {
    width: 75.5%;
}
.access .cont1 .sec .con .txt {
    padding: 0.35rem 0 0.2rem;
}
@media screen and (max-width:750px){
.access .cont1 {
    padding-bottom: 15vw;
}
.access .cont1 .sec .con {
    width: 100%;
    margin-bottom: 10vw;
    padding: 0 3vw;
    box-sizing: border-box;
    letter-spacing: normal;
}
.access .cont1 .sec .con:nth-child(2) {
    width: 100%;
}
.access .cont1 .sec .con h2 {
    font-size: 0.18rem;
}
.access .cont1 .sec .con dl dt {
    width: 37%;
}
.access .cont1 .sec .con:nth-child(2) dl dt {
    width: 37%;
}
.access .cont1 .sec .con dl dd {
    width: 63%;
}
.access .cont1 .sec .con:nth-child(2) dl dd {
    width: 63%;
}
}


/* contact
------------------------------------------------- */
/* mainvisual */
.contact .mainvisual .con h1 {
    padding-top: 3.2rem;
}
@media screen and (max-width: 1366px) and (min-width: 751px) {
.contact .mainvisual .con h1 {
    padding-top: 0.6rem;
}
}
@media screen and (max-width:750px){
.contact .mainvisual .con h1 {
    padding-top: 0.85rem;
}
}

/* cont1 */
.contact .cont1 {
    margin-bottom: 1.9rem;
}
.contact .cont1 h2 {
    font-size: 0.2rem;
    font-weight: 500;
    letter-spacing: 0.08em;
}
.contact .cont1 .txt1 {
    letter-spacing: 0.06em;
    padding-bottom: 0.35rem;
    border-bottom: 0.01rem solid #707070;
}
.contact .cont1 dl {
    width: 100%;
    border-bottom: 0.01rem solid #707070;
    padding: 0.475rem 0;
    margin-bottom: 0.45rem;
    display: flex;
    align-items: center;
}
.contact .cont1 dl dt {
    width: 8.5%;
}
.contact .cont1 dl dd {
    font-size: 0.12rem;
    letter-spacing: 0.08em;
}
.contact .cont1 dl dd a {
    font-size: 0.2rem;
    letter-spacing: 0.08em;
    margin-right: 0.1rem;
}
.contact .cont1 table {
    width: 8.8rem;
    margin-top: 0.05rem;
}
.contact .cont1 table th,
.contact .cont1 table td {
    width: 1.7rem;
    font-size: 0.14rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    text-align: left;
    vertical-align: middle;
    padding: 0.1rem 0;
}
.contact .cont1 table th.vt {
    vertical-align: top;
    padding-top: 0.15rem;
}
.contact .cont1 table th span {
    color: #DB984C;
}
.contact .cont1 table td {
    width: 7.1rem;
}
.contact .cont1 table td input[type="text"],
.contact .cont1 table td input[type="tel"],
.contact .cont1 table td input[type="email"],
.contact .cont1 table td textarea {
    width: 3.74rem;
    height: 0.29rem;
    background-color: #FAFAFA;
    border: 0.005rem solid #707070;
    border-radius: 0.03rem;
    font-size: 0.12rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    padding: 0 0.1rem;
    box-sizing: border-box;
}
.contact .cont1 table td ul {
    display: flex;
}
.contact .cont1 table td ul li {
    margin-right: 0.1rem;
}
.contact .cont1 table td ul li input[type="text"] {
    width: 1.95rem;
}
.contact .cont1 table td ul.zip li input[type="text"] {
    width: 1.4rem;
}
.contact .cont1 table td ul.zip li button {
    width: 1.4rem;
    height: 0.29rem;
    background-color: #E0E0E0;
    border: none;
    border-radius: 0.03rem;
    font-size: 0.14rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    text-align: center;
    cursor: pointer;
    transition: 0.4s;
}
.contact .cont1 table td textarea {
    width: 100%;
    height: 2.72rem;
    padding: 0.05rem 0.1rem;
}
.contact .cont1 table td input[type="submit"],
.contact .cont1 .btn input[type="submit"] {
    width: 100%;
    height: 0.54rem;
    background-color: #D99F00;
    border: 0.01rem solid #D99F00;
    border-radius: 0.03rem;
    font-size: 0.24rem;
    font-weight: 500;
    letter-spacing: 0.08em;
    color: #fff;
    text-align: center;
    cursor: pointer;
    margin: 0.1rem 0;
    transition: 0.4s;
}
.contact .cont1 .btn {
    text-align: center;
}
.contact .cont1 .btn input[type="button"] {
    width: 80%;
    height: 0.45rem;
    background-color: #707070;
    border: 0.01rem solid #707070;
    border-radius: 0.03rem;
    font-size: 0.16rem;
    font-weight: 500;
    letter-spacing: 0.08em;
    color: #fff;
    text-align: center;
    cursor: pointer;
    margin: 0.1rem auto;
    transition: 0.4s;
}
.contact .cont1 table td .txt2 {
    font-size: 0.14rem;
    line-height: 2.5;
    letter-spacing: 0.06em;
    text-align: center;
    margin-top: 0.3rem;
}
.contact .cont1 table td .txt2 a {
    text-decoration: underline;
}
.contact .cont1 .sec {
    padding-top: 0.3rem;
}
.contact .cont1 .sec .error_messe {
    font-size: 0.14rem;
    margin-bottom: 0.1rem;
}
.contact .cont1 .sec .btn {
    margin-top: 0.3rem;
    text-align: center;
}

@media screen and (min-width:751px){
.contact .cont1 dl dd a {
    pointer-events: none;
}
.contact .cont1 table td ul.zip li button:hover {
    background-color: #3B3B3B;
    color: #fff;
}
.contact .cont1 table td input[type="submit"]:hover {
    background-color: rgba(247,241,212,0.4);
    color: #D99F00;
}
.contact .cont1 .btn input[type="button"]:hover {
    background-color: #FAFAFA;
    color: #707070;
}
.contact .cont1 table td .txt2 a:hover {
    text-decoration: none;
}
}
@media screen and (max-width:750px){
.contact .cont1 {
    margin-bottom: 25vw;
}
.contact .cont1 h2 {
    font-size: 0.18rem;
}
.contact .cont1 .txt1 {
    font-size: 0.14rem;
    letter-spacing: normal;
    padding-bottom: 0.25rem;
}
.contact .cont1 dl {
    padding: 0.25rem 0;
    margin-bottom: 0.25rem;
    display: block;
}
.contact .cont1 dl dt {
    width: 100%;
}
.contact .cont1 dl dd {
    font-size: 0.12rem;
    letter-spacing: 0.08em;
}
.contact .cont1 dl dd a {
    display: block;
    font-size: 0.24rem;
    letter-spacing: 0.08em;
    margin-right: 0.1rem;
}
.contact .cont1 table {
    width: 100%;
    margin-top: 0.15rem;
}
.contact .cont1 table th,
.contact .cont1 table td {
    display: block;
    width: 100%;
    padding: 0.1rem 0 0.05rem;
}
.contact .cont1 table td {
    padding: 0 0 0.1rem;
}
.contact .cont1 table th.vt {
    padding-top: 0.15rem;
}
.contact .cont1 table td {
    width: 100%;
}
.contact .cont1 table td input[type="text"],
.contact .cont1 table td input[type="tel"],
.contact .cont1 table td input[type="email"],
.contact .cont1 table td textarea {
    width: 100%;
    height: 0.35rem;
}
.contact .cont1 table td ul li {
    margin-right: 0.1rem;
}
.contact .cont1 table td ul li:last-child {
    margin-right: 0;
}
.contact .cont1 table td ul li input[type="text"] {
    width: 100%;
}
.contact .cont1 table td ul.zip li button {
    height: 0.35rem;
}
.contact .cont1 table td textarea {
    height: 2rem;
}
.contact .cont1 table td input[type="submit"],
.contact .cont1 .btn input[type="submit"] {
    height: 0.5rem;
    font-size: 0.18rem;
}
.contact .cont1 .btn input[type="button"] {
    height: 0.4rem;
    font-size: 0.14rem;
}
.contact .cont1 table td .txt2 {
    font-size: 0.14rem;
    line-height: 1.85;
    letter-spacing: normal;
    text-align: left;
}
}


/* privacy
------------------------------------------------- */
/* cont1 */
.privacy .cont1 {
    padding: 1.45rem 0 1.1rem;
    position: relative;
}
.privacy .cont1 h1 {
    font-size: 0.47rem;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: 0.02em;
    text-align: center;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 1.68rem;
    top: 2rem;
}
.privacy .cont1 h1 b {
    display: block;
    font-size: 0.16rem;
    font-weight: 400;
    padding-left: 0.05rem;
}
.privacy .cont1 .sec {
    width: 82.3%;
}
.privacy .cont1 .con {
    padding-bottom: 0.35rem;
}
.privacy .cont1 .con h2,
.privacy .cont1 .con p {
    font-size: 0.14rem;
    font-weight: 400;
    line-height: 2.5;
}
@media screen and (max-width:750px){
.privacy .cont1 {
    padding: 0.85rem 0 17vw;
}
.privacy .cont1 h1 {
    width: 100%;
    font-size: 0.32rem;
    position: static;
    margin: 0 0 10vw 0.1rem;
}
.privacy .cont1 h1 i {
    display: inline-block;
    height: 2em;
}
.privacy .cont1 h1 b {
    font-size: 0.12rem;
}
.privacy .cont1 .sec {
    width: 100%;
}
.privacy .cont1 .con {
    padding: 0 3vw 8vw;
}
.privacy .cont1 .con h2,
.privacy .cont1 .con p {
    line-height: 2;
}
}