@charset "UTF-8";
/* ==========================================================
Name:
    module.css

Description:
    サイトで共通使用する汎用モジュール及びページ固有のスタイルを記述する
    汎用モジュールは、アルファベット降順(A->Z)に記述する
    ページ固有のスタイルは、ディレクトリ名のアルファベット降順(A->Z)、
    ファイル名のアルファベット降順(A->Z)にそれぞれ記述する

Contents:
    margin
    hide
    module
    page
    ========================================================== */
/* ==========================================================
*
*   module
*
========================================================== */
/* ---------------------------------------------
*   hover-opacity
--------------------------------------------- */
@media screen and (min-width: 751px) {
    .hover-opacity {
        transition: opacity 300ms;
    }
    .hover-opacity:hover {
        opacity: 0.8;

    }
}

/* ---------------------------------------------
*   fadeup-sp
--------------------------------------------- */
@media screen and (max-width: 750px) {
    .js-fadeup-sp {
        opacity: 0;
        transition: all 1s ease;
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }
    .js-fadeup-sp--show {
        display: block;
        opacity: 1;
        transition-delay: 100ms;
        -webkit-transform: translateY(0px);
        transform: translateY(0px);
    }
}

/* ---------------------------------------------
*   js-code-br
--------------------------------------------- */
.js-code-br {
    transition: all 1s ease;
}

.js-code-br--show .js-code-br__order {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
}

.js-code-br__order {
    display: block;
    opacity: 0;
    transition: all 1s ease;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
}

.js-code-br__order:nth-child(1) {
    transition-delay: 100ms;
}

.js-code-br__order:nth-child(2) {
    transition-delay: 250ms;
}

.js-code-br__order:nth-child(3) {
    transition-delay: 400ms;
}

.js-code-br__order:nth-child(4) {
    transition-delay: 550ms;
}

.js-code-br__order:nth-child(5) {
    transition-delay: 700ms;
}

.js-code-br__order:nth-child(6) {
    transition-delay: 850ms;
}

.js-code-br__order:nth-child(7) {
    transition-delay: 1000ms;
}

.js-code-br__order:nth-child(8) {
    transition-delay: 1150ms;
}

.js-code-br__order:nth-child(9) {
    transition-delay: 1300ms;
}

.js-code-br__order:nth-child(10) {
    transition-delay: 1450ms;
}

.js-code-br__order:nth-child(11) {
    transition-delay: 1600ms;
}

.js-code-br__order:nth-child(12) {
    transition-delay: 1750ms;
}

.js-code-br__order:nth-child(13) {
    transition-delay: 1900ms;
}

.js-code-br__order:nth-child(14) {
    transition-delay: 2050ms;
}

.js-code-br__order:nth-child(15) {
    transition-delay: 2200ms;
}

.js-code-br__order:nth-child(16) {
    transition-delay: 2350ms;
}

.js-code-br__order:nth-child(17) {
    transition-delay: 2500ms;
}

.js-code-br__order:nth-child(18) {
    transition-delay: 2650ms;
}

.js-code-br__order:nth-child(19) {
    transition-delay: 2800ms;
}

.js-code-br__order:nth-child(20) {
    transition-delay: 2950ms;
}

/* ---------------------------------------------
*   js-fadeup
--------------------------------------------- */
.js-fadeup {
    display: block;
    opacity: 0;
    transition: all 1s ease;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
}

.js-fadeup--show {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
}

.js-fadeup__timing-1 {
    transition-delay: 100ms;
}

.js-fadeup__timing-2 {
    transition-delay: 200ms;
}

.js-fadeup__timing-3 {
    transition-delay: 300ms;
}

.js-fadeup__timing-4 {
    transition-delay: 400ms;
}

.js-fadeup__timing-5 {
    transition-delay: 500ms;
}

.js-fadeup__timing-6 {
    transition-delay: 600ms;
}

.js-fadeup__timing-7 {
    transition-delay: 700ms;
}

.js-fadeup__timing-8 {
    transition-delay: 800ms;
}

.js-fadeup__timing-9 {
    transition-delay: 900ms;
}

.js-fadeup__timing-10 {
    transition-delay: 1000ms;
}

.js-fadeup__timing-11 {
    transition-delay: 1100ms;
}

.js-fadeup__timing-12 {
    transition-delay: 1200ms;
}

.js-fadeup__timing-13 {
    transition-delay: 1300ms;
}

.js-fadeup__timing-14 {
    transition-delay: 1400ms;
}

.js-fadeup__timing-15 {
    transition-delay: 1500ms;
}

.js-fadeup__timing-16 {
    transition-delay: 1600ms;
}

.js-fadeup__timing-17 {
    transition-delay: 1700ms;
}

.js-fadeup__timing-18 {
    transition-delay: 1800ms;
}

.js-fadeup__timing-19 {
    transition-delay: 1900ms;
}

.js-fadeup__timing-20 {
    transition-delay: 2000ms;
}

.js-fadeup__timing-21 {
    transition-delay: 2100ms;
}

/* ---------------------------------------------
*   js-sp-menu-opened
--------------------------------------------- */
.js-sp-menu-opened {
    overflow: hidden;
}

@media screen and (max-width: 750px) {
    .js-sp-menu-opened {
        position: static;
        top: auto;
        z-index: -1;
        width: 100%;
        height: 100%;
    }
}

/* ---------------------------------------------
*   bg-blue
--------------------------------------------- */
.bg-blue {
    position: relative;
    background: url(/img/bg_blue.png) 0 0 repeat;
}

.bg-blue:before, .bg-blue:after {
    position: absolute;
    right: 0;
    left: 0;
    display: block;
    width: 100%;
    background-position: 50% 0;
    background-size: 100% auto;
    background-size: 1217px auto;
    background-repeat: repeat-x;
    content: "";
}

.bg-blue:before {
    top: -17px;
    height: 17px;
    background-image: url(/img/bg_blue_top.png);
}

.bg-blue:after {
    bottom: -18px;
    height: 18px;
    background-image: url(/img/bg_blue_bottom.png);
}

@media screen and (max-width: 750px) {
    .android .bg-blue:after {
        bottom: -16px;
    }
}

/* ---------------------------------------------
*   bg-light
--------------------------------------------- */
.bg-light {
    background: url(/img/bg_white.png) 0 0 repeat;
}

/* ---------------------------------------------
*   text-border
--------------------------------------------- */
.text-border {
    padding-right: 3px;
    border-right: 2px solid #e60012;
}

@media screen and (max-width: 750px) {
    .text-border {
        padding-right: 0;
        padding-bottom: 0.46875vw;
        border-right: none;
        border-bottom: 1px solid #e60012;
    }
}

/* ---------------------------------------------
*   fc-red
--------------------------------------------- */
.fc-red {
    color: #e60012;
    font-weight: bold;
}

/* ---------------------------------------------
*   lineup-contents
--------------------------------------------- */
.lineup-contents {
    display: flex;
    width: 100%;
}

@media screen and (max-width: 750px) {
    .lineup-contents {
        display: block;
    }
}

/* ---------------------------------------------
*   mod-caption
--------------------------------------------- */
.mod-caption {
    display: block;
    overflow: hidden;
    margin-right: auto;
    margin-left: auto;
    padding-top: 53px;
    height: 0;
    background-size: 100% auto;
    -webkit-background-size: 100% auto;
    background-size: contain;
    background-repeat: no-repeat;
}

@media screen and (max-width: 750px) {
    .mod-caption {
        padding-top: 8.28125vw;
    }
}

.mod-caption--tonsetsu {
    margin-bottom: 10px;
    padding-top: 58.5px;
    width: 402px;
    background-image: url(/img/title_tonsetsu.png);
}

@media screen and (max-width: 750px) {
    .mod-caption--tonsetsu {
        margin-bottom: 0.78125vw;
        padding-top: 9.14062vw;
        width: 62.8125vw;
    }
}

.mod-caption--menu {
    margin-bottom: 150px;
    width: 366px;
    background-image: url(/img/title_menu.png);
}

@media screen and (max-width: 750px) {
    .mod-caption--menu {
        margin-bottom: 10.9375vw;
        width: 57.1875vw;
    }
}

.mod-caption--access {
    margin-bottom: 150px;
    margin-top: 200px;
    width: 668px;
    background-image: url(/img/title_access.png);
}

@media screen and (max-width: 750px) {
    .mod-caption--access {
        margin-bottom: 4.6875vw;
        margin-top: 12.0vw;
        width: 89.0625vw;
    }
}

.mod-caption__detail {
    text-align: center;
    letter-spacing: .35em;
    font-size: 1.05263rem;
}

/* ---------------------------------------------
*   mod-image
--------------------------------------------- */
.mod-image {
    margin-right: auto;
    margin-left: auto;
}

.mod-image--knack {
    margin-bottom: 218px;
    width: 1037px;
}

@media screen and (max-width: 750px) {
    .mod-image--knack {
        margin-bottom: 15.625vw;
        width: 100%;
    }
}

.mod-image--position {
    margin-bottom: 100px;
    width: 652px;
}

@media screen and (max-width: 750px) {
    .mod-image--position {
        margin-bottom: 7.8125vw;
        width: 100%;
    }
}

/* ---------------------------------------------
*   mod-text
--------------------------------------------- */
.mod-text {
    white-space: nowrap;
}

/* ---------------------------------------------
*   mod-title
--------------------------------------------- */
.mod-title {
    display: block;
    overflow: hidden;
    margin-right: auto;
    margin-bottom: 93px;
    margin-left: auto;
    padding-top: 40px;
    height: 0;
    background-position: 0 0;
    background-size: 100% auto;
    -webkit-background-size: 100% auto;
    background-repeat: no-repeat;
}

@media screen and (max-width: 750px) {
    .mod-title {
        margin-bottom: 7.8125vw;
        padding-top: 6.25vw;
    }
}

.mod-title--greeting {
    width: 194px;
    background-image: url(/img/title_greeting.png);
}

@media screen and (max-width: 750px) {
    .mod-title--greeting {
        width: 30.3125vw;
    }
}

.mod-title--particular {
    width: 348.5px;
    background-image: url(/img/title_particular.png);
}

@media screen and (max-width: 750px) {
    .mod-title--particular {
        width: 54.45312vw;
    }
}

.mod-title--knack {
    width: 541px;
    background-image: url(/img/title_knack.png);
}

@media screen and (max-width: 750px) {
    .mod-title--knack {
        width: 84.53125vw;
    }
}

.mod-title--position {
    width: 425.5px;
    background-image: url(/img/title_position.png);
}

@media screen and (max-width: 750px) {
    .mod-title--position {
        width: 66.875vw;
    }
}

.mod-title--lunch {
    width: 232.5px;
    background-image: url(/img/titile_lunch.png);
}

@media screen and (max-width: 750px) {
    .mod-title--lunch {
        width: 36.32812vw;
    }
}

.mod-title--dinner {
    width: 271.5px;
    background-image: url(/img/title_dinner.png);
}

@media screen and (max-width: 750px) {
    .mod-title--dinner {
        width: 42.42188vw;
    }
}
.mod-title--takeout {
    width: 232.5px;
    background-image: url(/img/title_takeout.png);
}
@media screen and (max-width: 750px) {
    .mod-title--takeout {
        width: 36.32812vw;
    }
}

/* ---------------------------------------------
*   mod-menu
--------------------------------------------- */
.mod-menu {
    margin-right: auto;
    margin-left: auto;
    width: 1045px;
}

.ipad .mod-menu {
    width: auto;
    padding: 0 20px;
}

@media screen and (max-width: 750px) {
    .mod-menu {
        width: 100%;
    }
}

.mod-menu__item {
    width: 50%;
}

@media screen and (max-width: 750px) {
    .mod-menu__item {
        margin-bottom: 7.8125vw;
        width: 100%;
    }
    .mod-menu__item:last-child {
        margin-bottom: 0;
    }
}

.mod-menu__item:nth-of-type(odd) {
    width: 450px;
}

@media screen and (max-width: 750px) {
    .mod-menu__item:nth-of-type(odd) {
        width: auto;
    }
}

.mod-menu__item:nth-of-type(even) {
    width: 475px;
}

@media screen and (max-width: 750px) {
    .mod-menu__item:nth-of-type(even) {
        width: auto;
    }
}

.mod-menu__item .small-text {
    font-size: 0.84211rem;
}

.mod-menu__item dt {
    margin-bottom: 16px;
    padding-bottom: 13px;
    border-bottom: 1px solid #000;
    font-weight: bold;
    font-size: 1.21053rem;
}

@media screen and (max-width: 750px) {
    .mod-menu__item dt {
        margin-bottom: 2.34375vw;
        padding-bottom: 0.78125vw;
        font-size: 3.90625vw;
    }
}

.mod-menu__item dd {
    line-height: 2.2;
}

@media screen and (max-width: 750px) {
    .mod-menu__item dd {
        line-height: 2;
    }
}

/* ---------------------------------------------
*   mod-menu2
--------------------------------------------- */
.mod-menu2 {
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 20px;
    width: 1045px;
}

.ipad .mod-menu2 {
    width: auto;
    padding: 0 20px;
}

@media screen and (max-width: 750px) {
    .mod-menu2 {
        width: 90%;
        margin-bottom: 7.0vw;
    }
}

.mod-menu__item2 {
    width: 50%;
}

@media screen and (max-width: 750px) {
    .mod-menu2__item {
        margin-bottom: 7.8125vw;
        width: 90%;
    }
    .mod-menu2__item:last-child {
        margin-bottom: 0;
    }
}

.mod-menu2__item:nth-of-type(odd) {
    width: 1045px;
}

@media screen and (max-width: 750px) {
    .mod-menu2__item:nth-of-type(odd) {
        width: auto;
    }
}

.mod-menu2__item:nth-of-type(even) {
    width: 475px;
}

@media screen and (max-width: 750px) {
    .mod-menu2__item:nth-of-type(even) {
        width: auto;
    }
}

.mod-menu2__item .small-text {
    font-size: 0.84211rem;
}

.mod-menu2__item dt {
    margin-bottom: 16px;
    padding-bottom: 13px;
    border-bottom: 1px solid #000;
    font-weight: bold;
    font-size: 1.21053rem;
}

@media screen and (max-width: 750px) {
    .mod-menu2__item dt {
        margin-bottom: 2.34375vw;
        padding-bottom: 0.78125vw;
        font-size: 3.90625vw;
    }
}

.mod-menu2__item dd {
    line-height: 2.2;
}

@media screen and (max-width: 750px) {
    .mod-menu2__item dd {
        line-height: 2;
    }
}

/* ---------------------------------------------
*   mod-menu3
--------------------------------------------- */
.mod-menu3 {
    margin-right: auto;
    margin-left: auto;
    width: 1045px;
}

.ipad .mod-menu3 {
    width: auto;
    padding: 0 20px;
}

@media screen and (max-width: 750px) {
    .mod-menu3 {
        width: 90%;
    }
}

.mod-menu__item {
    width: 50%;
}

@media screen and (max-width: 750px) {
    .mod-menu3__item {
        margin-bottom: 7.8125vw;
        width: 90%;
    }
    .mod-menu3__item:last-child {
        margin-bottom: 0;
    }
}

.mod-menu3__item:nth-of-type(odd) {
    width: 450px;
}

@media screen and (max-width: 750px) {
    .mod-menu3__item:nth-of-type(odd) {
        width: auto;
    }
}

.mod-menu3__item:nth-of-type(even) {
    width: 475px;
}

@media screen and (max-width: 750px) {
    .mod-menu3__item:nth-of-type(even) {
        width: auto;
    }
}

.mod-menu3__item .small-text {
    font-size: 0.84211rem;
}

.mod-menu3__item dt {
    margin-bottom: 16px;
    padding-bottom: 13px;
    border-bottom: 1px solid #000;
    font-weight: bold;
    font-size: 1.21053rem;
}

@media screen and (max-width: 750px) {
    .mod-menu3__item dt {
        margin-bottom: 2.34375vw;
        padding-bottom: 0.78125vw;
        font-size: 3.90625vw;
    }
}

.mod-menu3__item dd {
    line-height: 2.2;
}

@media screen and (max-width: 750px) {
    .mod-menu3__item dd {
        line-height: 2;
    }
}

/* ---------------------------------------------
*   mod-note
--------------------------------------------- */
.mod-note {
    margin-right: auto;
    margin-left: auto;
    width: 1045px;
    font-size: .94737rem;
    margin-top: 60px;
}

.ipad .mod-note {
    width: auto;
    padding: 0 20px;
}

@media screen and (max-width: 750px) {
    .mod-note {
        width: 100%;
        margin-top: 6.25vw;
    }
}

/* ---------------------------------------------
*   newline-contents
--------------------------------------------- */
.newline-contents {
    flex-wrap: wrap;
}

/* ---------------------------------------------
*   reverse-contents
--------------------------------------------- */
.reverse-contents {
    flex-direction: column;
}

/* ---------------------------------------------
*   spacecenter-contents
--------------------------------------------- */
.spacecenter-contents {
    justify-content: center;
}

/* ---------------------------------------------
*   spacefull-contents
--------------------------------------------- */
.spacefull-contents {
    justify-content: space-between;
}

/* ---------------------------------------------
*   writing-mode
--------------------------------------------- */
.writing-vertical {
    -ms-writing-mode: tb-rl;

    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}

@media screen and (max-width: 750px) {
    .writing-vertical {
        -ms-writing-mode: lr-tb;

        -webkit-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
    }
}

/* ==========================================================
*
*   page
*
========================================================== */
/* ---------------------------------------------
*   page-title
--------------------------------------------- */
.page-title {
    display: block;
    overflow: hidden;
    margin-right: auto;
    margin-bottom: 185px;
    margin-left: auto;
    padding-top: 409px;
    width: 217px;
    height: 0;
    background: url(/img/img_keyvisual.png) 0 0 no-repeat;
    background-size: contain;
    background-repeat: no-repeat;
}

@media screen and (max-width: 750px) {
    .page-title {
        margin-bottom: 28.90625vw;
        padding-top: 63.90625vw;
        width: 33.90625vw;
    }
}

.page-title-outer {
    padding-top: 205px;
}

@media screen and (max-width: 750px) {
    .page-title-outer {
        padding-top: 100px;
    }
}

/* ---------------------------------------------
*   section
--------------------------------------------- */
@media screen and (max-width: 750px) {
    .section {
        padding-right: 4.6875%;
        padding-left: 4.6875%;
    }
}

.section--first {
    box-sizing: border-box;
    margin-right: auto;
    margin-left: auto;
    padding-bottom: 195px;
    width: 660px;
    line-height: 3.5;
}

@media screen and (max-width: 750px) {
    .section--first {
        padding-bottom: 12.5vw;
        width: auto;
    }
}

.section--first .mod-text {
    height: 553px;
    line-height: 3.5;
}

@media screen and (max-width: 750px) {
    .section--first .mod-text {
        height: auto;
        text-align: center;
        line-height: 2.3;
    }
}

.section--first .mod-image {
    width: 313px;
}

@media screen and (max-width: 750px) {
    .section--first .mod-image {
        width: 48.90625vw;
    }
}

.section--second {
    padding-bottom: 265px;
}

@media screen and (max-width: 750px) {
    .section--second {
        padding-bottom: 12.5vw;
    }
}

.section--fourth {
    padding-bottom: 190px;
}

@media screen and (max-width: 750px) {
    .section--fourth {
        padding-bottom: 12.5vw;
    }
}

/* ---------------------------------------------
*   specialty-list
--------------------------------------------- */
.specialty-list {
    height: 540px;
}

@media screen and (max-width: 750px) {
    .specialty-list {
        height: auto;
    }
}

.specialty-list__item {
    margin-right: 35px;
}

.ipad .specialty-list__item {
    margin-right: 18px;
}

@media screen and (max-width: 750px) {
    .specialty-list__item {
        margin-right: 0;
        margin-bottom: 7.8125vw;
    }
}

.specialty-list__item:first-child {
    margin-right: 0;
}

.specialty-list__item--1 .specialty-list__item-title .js-code-br__order {
    transition-delay: 100ms;
}

.specialty-list__item--1 .js-code-br__order:nth-child(1) {
    transition-delay: 250ms;
}

.specialty-list__item--1 .js-code-br__order:nth-child(2) {
    transition-delay: 400ms;
}

.specialty-list__item--2 .specialty-list__item-title .js-code-br__order {
    transition-delay: 550ms;
}

.specialty-list__item--2 .js-code-br__order:nth-child(1) {
    transition-delay: 700ms;
}

.specialty-list__item--2 .js-code-br__order:nth-child(2) {
    transition-delay: 850ms;
}

.specialty-list__item--3 .specialty-list__item-caption .js-code-br__order {
    transition-delay: 1000ms;
}

.specialty-list__item--3 .js-code-br__order:nth-child(1) {
    transition-delay: 1150ms;
}

.specialty-list__item--3 .js-code-br__order:nth-child(2) {
    transition-delay: 1300ms;
}

.specialty-list__item--4 .specialty-list__item-title .js-code-br__order {
    transition-delay: 1450ms;
}

.specialty-list__item--4 .js-code-br__order:nth-child(1) {
    transition-delay: 1600ms;
}

.specialty-list__item--4 .js-code-br__order:nth-child(2) {
    transition-delay: 1750ms;
}

.specialty-list__item--4 .js-code-br__order:nth-child(3) {
    transition-delay: 1900ms;
}

.specialty-list__item--5 .specialty-list__item-title .js-code-br__order {
    transition-delay: 2050ms;
}

.specialty-list__item--5 .js-code-br__order:nth-child(1) {
    transition-delay: 2200ms;
}

.specialty-list__item--5 .js-code-br__order:nth-child(2) {
    transition-delay: 2350ms;
}

.specialty-list__item--5 .js-code-br__order:nth-child(3) {
    transition-delay: 2500ms;
}

.specialty-list__item--5 .js-code-br__order:nth-child(4) {
    transition-delay: 2650ms;
}

.specialty-list__item--5 .js-code-br__order:nth-child(5) {
    transition-delay: 2800ms;
}

.specialty-list__item--indent {
    padding-left: 12px;
}

@media screen and (max-width: 750px) {
    .specialty-list__item--indent {
        padding-left: 3.75%;
    }
}

.specialty-list__item-title {
    position: relative;
    top: -15px;
    margin-left: 20px;
    font-weight: bold;
    font-size: 1.31579rem;
}

@media screen and (max-width: 750px) {
    .specialty-list__item-title {
        position: static;
        margin-bottom: 0.78125vw;
        margin-left: 0;
        font-size: 3.90625vw;
    }
}

.specialty-list__item-text {
    line-height: 2;
}

.specialty-list__item-text-narrow {
    letter-spacing: -.03em;
}

.specialty-list__item-text-length {
    -ms-writing-mode: lr-tb;
    line-height: 1;

    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
}

.specialty-list__item-caption {
    position: relative;
    /*top: -15px;*/
    margin-left: 10px;
    font-weight: bold;
    font-size: 1.21053rem;
}

@media screen and (max-width: 750px) {
    .specialty-list__item-caption {
        position: static;
        margin-bottom: 0.78125vw;
        margin-left: 0;
        font-size: 3.90625vw;
    }
}


.specialty-list__item-caption.specialty-list__item-caption--en {
    position: relative !important;
    padding-left: 20px;
}

@media screen and (max-width: 750px) {
    .specialty-list__item-caption.specialty-list__item-caption--en {
        padding-left: 4vw;
    }
}

.specialty-list__item-caption.specialty-list__item-caption--en:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-65%);
    background-color: #333;
    width: 13px;
    height: 13px;
}

@media screen and (max-width: 750px) {
    .specialty-list__item-caption.specialty-list__item-caption--en:after {
        width: 2.8vw;
        height: 2.8vw;
        transform: translateY(-60%);
    }
}

.specialty-list__item-num {
    margin-bottom: 12px;
    padding: 3px 3px;
    color: #fff;
    background-color: #333;
    border-radius: 5px;
}

.specialty-list__item-num.specialty-list__item-num--en {
    display: inline-block;
    line-height: 1;
    padding: 3px 3px 2px;
    margin-bottom: 0;
    font-family: "游明朝体", "游明朝", "Yu Mincho", YuMincho, "meiryo", "HGS明朝E", Georgia, "Hiragino Mincho ProN", メイリオ, sans-serif;
}

.ie11 .specialty-list__item-num {
    display: inline-block;
    margin-left: 5px;
    padding: 4px 9px 4px 0;
    vertical-align: bottom;
    line-height: 1;
}

.windows .specialty-list__item-num.specialty-list__item-num--en {
    padding: 4px 3px 2px;
}

.ie11 .specialty-list__item-num.specialty-list__item-num--en {
    padding: 10px 6px 1px 6px;
}

@media screen and (max-width: 750px) {
    .specialty-list__item-num {
        margin-right: 2vw;
        margin-bottom: 0;
        padding: 0.6vw 1vw 0.4vw;
    }

    .specialty-list__item-num.specialty-list__item-num--en {
        margin-right: 1vw;
        padding: 0.8vw 0.8vw 0.6vw;
    }
}

.section-space220 {
    padding-top: 220px;
}

@media screen and (max-width: 750px) {
    .section-space220 {
        padding-top: 12.5vw;
    }
}

.section-space255 {
    padding-top: 255px;
}

@media screen and (max-width: 750px) {
    .section-space255 {
        padding-top: 12.5vw;
        padding-bottom: 12.5vw;
    }
}

/* ---------------------------------------------
*   knack-list
--------------------------------------------- */
.knack-list {
    margin-bottom: 100px;
    height: 480px;
}

@media screen and (max-width: 750px) {
    .knack-list {
        margin-bottom: 12.5vw;
        height: auto;
    }
}

.knack-list__item {
    margin-right: 63px;
}

@media screen and (max-width: 750px) {
    .knack-list__item {
        margin-right: 0;
        margin-bottom: 7.8125vw;
    }
}

.knack-list__item:first-child {
    margin-right: 0;
}

.knack-list__item--1 .knack-list__item-title .js-code-br__order {
    transition-delay: 100ms;
}

.knack-list__item--1 .js-code-br__order:nth-child(1) {
    transition-delay: 250ms;
}

.knack-list__item--1 .js-code-br__order:nth-child(2) {
    transition-delay: 400ms;
}

.knack-list__item--1 .js-code-br__order:nth-child(3) {
    transition-delay: 550ms;
}

.knack-list__item--1 .js-code-br__order:nth-child(4) {
    transition-delay: 700ms;
}

.knack-list__item--2 .knack-list__item-title .js-code-br__order {
    transition-delay: 850ms;
}

.knack-list__item--2 .js-code-br__order:nth-child(1) {
    transition-delay: 1000ms;
}

.knack-list__item--2 .js-code-br__order:nth-child(2) {
    transition-delay: 1150ms;
}

.knack-list__item--2 .js-code-br__order:nth-child(3) {
    transition-delay: 1300ms;
}

.knack-list__item--2 .js-code-br__order:nth-child(4) {
    transition-delay: 1450ms;
}

.knack-list__item--3 .knack-list__item-title .js-code-br__order {
    transition-delay: 1600ms;
}

.knack-list__item--3 .js-code-br__order:nth-child(1) {
    transition-delay: 1750ms;
}

.knack-list__item--3 .js-code-br__order:nth-child(2) {
    transition-delay: 1900ms;
}

.knack-list__item--3 .js-code-br__order:nth-child(3) {
    transition-delay: 2050ms;
}

.knack-list__item--3 .js-code-br__order:nth-child(4) {
    transition-delay: 2200ms;
}

.knack-list__item--4 .knack-list__item-title .js-code-br__order {
    transition-delay: 2350ms;
}

.knack-list__item--4 .js-code-br__order:nth-child(1) {
    transition-delay: 2500ms;
}

.knack-list__item--4 .js-code-br__order:nth-child(2) {
    transition-delay: 2650ms;
}

.knack-list__item--4 .js-code-br__order:nth-child(3) {
    transition-delay: 2800ms;
}

.knack-list__item--4 .js-code-br__order:nth-child(4) {
    transition-delay: 2950ms;
}

.knack-list__item--4 .js-code-br__order:nth-child(5) {
    transition-delay: 3100ms;
}

.knack-list__item--4 .js-code-br__order:nth-child(6) {
    transition-delay: 3250ms;
}

.knack-list__item-title {
    position: relative;
    top: -15px;
    margin-left: 22px;
    font-weight: bold;
    font-size: 1.26316rem;
}

@media screen and (max-width: 750px) {
    .knack-list__item-title {
        position: static;
        margin-bottom: 1.5625vw;
        margin-left: 0;
        font-size: 3.90625vw;
    }
}

.knack-list__item-text {
    line-height: 1.8;
}

.knack-list__item-text-narrow {
    letter-spacing: -.04em;
}

.knack-list__item-text-length {
    -ms-writing-mode: lr-tb;
    line-height: 1;

    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
}

/* ---------------------------------------------
*   position-list
--------------------------------------------- */
.position-list {
    box-sizing: border-box;
    padding-bottom: 165px;
    height: 653px;
}

@media screen and (max-width: 750px) {
    .position-list {
        padding-bottom: 12.5vw;
        height: auto;
    }
}

.position-list__item {
    margin-right: 30px;
}

@media screen and (max-width: 750px) {
    .position-list__item {
        margin-right: 0;
        margin-bottom: 7.8125vw;
    }
    .position-list__item:last-child {
        margin-bottom: 0;
    }
}

.position-list__item dt {
    display: inline-block;
    padding-right: 15px;
    height: 140px;
    vertical-align: top;
    font-weight: bold;
    font-size: 1.05263rem;
}

@media screen and (max-width: 750px) {
    .position-list__item dt {
        display: block;
        margin-bottom: 1.5625vw;
        padding-right: 0;
        height: auto;
        font-size: 3.90625vw;
    }
}

.position-list__item dd {
    display: inline-block;
    font-size: 1.05263rem;
}

@media screen and (max-width: 750px) {
    .position-list__item dd {
        display: block;
    }
}

/* ---------------------------------------------
*   data-list
--------------------------------------------- */
.data-list {
    margin-right: auto;
    margin-left: auto;
    padding-bottom: 32px;
    width: 655px;
}

@media screen and (max-width: 750px) {
    .data-list {
        padding-bottom: 4.6875vw;
        width: auto;
    }
}

.data-list__item {
    margin-bottom: 13px;
    font-size: 1.21053rem;
}

.data-list__item--time dt {
    width: 110px;
}

@media screen and (max-width: 750px) {
    .data-list__item--time dt {
        width: auto;
    }
}

.data-list__item--address dt {
    margin-right: 18px;
}

@media screen and (max-width: 750px) {
    .data-list__item--address dt {
        margin-right: 0;
    }
}

.data-list__item--tel {
    margin-bottom: 0;
}

.data-list__item--tel dt {
    margin-right: 7px;
}

@media screen and (max-width: 750px) {
    .data-list__item--tel dt {
        margin-right: 0;
    }
}

.data-list__item dt {
    display: inline-block;
    vertical-align: middle;
    letter-spacing: .1em;
    font-weight: bold;
}

@media screen and (max-width: 750px) {
    .data-list__item dt {
        display: block;
        font-size: 3.90625vw;
    }
}

.data-list__item dd {
    display: inline-block;
    vertical-align: middle;
}

@media screen and (max-width: 750px) {
    .data-list__item dd {
        display: block;
        font-size: 2.96875vw;
    }
}

.data-list__item .big-text {
    letter-spacing: -.15em;
    font-size: 2.47368rem;
}

.data-list__item-line {
    position: relative;
}

.data-list__item-line::before, .data-list__item-line::after {
    position: absolute;
    content: '';
    height: 1px;
    width: 100%;
    background-color: #333;
    left: 0;
}

.data-list__item-line::before {
    top: 35%;
}

.data-list__item-line::after {
    top: 55%;
}

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

    .data-list__item-line::before {
        top: 35%;
    }

    .data-list__item-line::after {
        top: 55%;
    }
}

@media screen and (max-width: 750px) {
    .data-list__item .big-text {
        font-size: 4.6875vw;
    }
}

.data-list__item .big-fax {
    letter-spacing: -.15em;
    font-size: 2.47368rem;
}

@media screen and (max-width: 750px) {
    .data-list__item .big-fax {
        font-size: 4.6875vw;
    }
}

.data-list__item .big-text2 {
    letter-spacing: 0.08em;
    font-size: 3.37368rem;
}

@media screen and (max-width: 750px) {
    .data-list__item .big-text2 {
        font-size: 9.0875vw;
    }
}

.data-list__item .big-text-fax2 {
    letter-spacing: 0.05em;
    font-size: 3.07368rem;
}

@media screen and (max-width: 750px) {
    .data-list__item .big-text-fax2 {
        font-size: 7.5875vw;
    }
}


.data-list__item-caption {
    font-size: 1.05263rem;
}

@media screen and (max-width: 750px) {
    .data-list__item-caption {
        font-size: 2.96875vw;
    }
}

.data-list__item-caption--top {
    line-height: 2.2;
}

/* ---------------------------------------------
*   data-link
--------------------------------------------- */
.data-link {
    margin-right: auto;
    margin-bottom: 140px;
    margin-left: auto;
    width: 655px;
}

@media screen and (max-width: 750px) {
    .data-link {
        margin-bottom: 12.5vw;
        width: 100%;
    }
}

.data-link__item {
    display: block;
    padding: 28px 0;
    width: 620px;
    border-radius: 8px;
    background-color: #333;
    color: #fff;
    text-align: center;
    letter-spacing: .03em;
    font-size: 1.57895rem;
}

@media screen and (max-width: 750px) {
    .data-link__item {
        padding: 3.90625vw 0;
        width: 100%;
        font-size: 3.90625vw;
    }
}

/* ---------------------------------------------
*   data-link2
--------------------------------------------- */
.data-link2 {
    margin-right: auto;
    margin-top: 55px;
    margin-left: auto;
    width: 655px;
}

@media screen and (max-width: 750px) {
    .data-link2 {
        margin-top: 5.5vw;
        margin-bottom: 3.5vw;
        width: 90%;
    }
}

.data-link2__item {
    display: block;
    padding: 28px 0;
    width: 620px;
    border-radius: 8px;
    background-color: #333;
    color: #fff;
    text-align: center;
    letter-spacing: .03em;
    font-size: 1.57895rem;
}

@media screen and (max-width: 750px) {
    .data-link2__item {
        padding: 3.90625vw 0;
        width: 100%;
        font-size: 3.90625vw;
    }
}

/* ---------------------------------------------
*   map-content
--------------------------------------------- */
#map-content {
    width: 100%;
    height: 690px;
}

@media screen and (max-width: 750px) {
    #map-content {
        height: 46.875vw;
    }
}

/* ---------------------------------------------
*   map-image
--------------------------------------------- */
.map-image {
    width: 535px;
	margin: 70px auto 0;
}

@media screen and (max-width: 750px) {
    .map-image {
        width: calc(310 / 375 * 100vw);
		margin-top: calc(45 / 375 * 100vw);
    }
}

/* ==========================================================
*
*   English Page Settings
*
========================================================== */

/* ---------------------------------------------
*   english-page
--------------------------------------------- */
.english-page {
    font-family: "Amiri", sans-serif;
    line-height: 1.5;
}

@media screen and (max-width: 750px) {
    .english-page {
        font-size: 4.375vw;
    }
}

/* ---------------------------------------------
*   section
--------------------------------------------- */
.english-page .section--first {
    padding-bottom: 120px;
}

@media screen and (max-width: 750px) {
    .english-page .section--first {
        padding-bottom: 15.625vw;
    }
}

/* ---------------------------------------------
*   mod-title
--------------------------------------------- */
.english-page .mod-title {
    height: auto;
    padding-top: 0;
    text-align: center;
    font-size: 1.84211rem;
    font-weight: bold;
    background: none;
    margin-bottom: 20px;
    line-height: 2;
    letter-spacing: .03em;
}

@media screen and (max-width: 750px) {
    .english-page .mod-title {
        margin-bottom: 6.25vw;
    }
}

.english-page .mod-title--greeting ,
.english-page .mod-title--particular ,
.english-page .mod-title--knack ,
.english-page .mod-title--position ,
.english-page .mod-title--lunch ,
.english-page .mod-title--dinner {
    width: auto;
    background-image: none;
}

.english-page .mod-title--lunch ,
.english-page .mod-title--dinner {
    font-size: 1.57895rem;
}

@media screen and (max-width: 750px) {
    .english-page .mod-title--lunch ,
    .english-page .mod-title--dinner {
        font-size: 5vw;
    }
}

/* ---------------------------------------------
*   mod-caption
--------------------------------------------- */
.english-page .mod-caption {
    height: auto;
    padding-top: 0;
    text-align: center;
    font-size: 1.84211rem;
    font-weight: bold;
    background: none;
    margin-bottom: 20px;
    letter-spacing: .03em;
}

.english-page .mod-caption--tonsetsu ,
.english-page .mod-caption--menu ,
.english-page .mod-caption--access {
    padding-top: 0;
    background: none;
    width: auto;
    margin-bottom: 20px;
}

.english-page .mod-caption__detail {
    font-size: 1.15789rem;
    font-weight: bold;
    letter-spacing: .02em;
}

@media screen and (max-width: 750px) {
    .english-page .mod-caption__detail {
        font-size: 4.6875vw;
    }
}

/* ---------------------------------------------
*   mod-menu
--------------------------------------------- */
.english-page .mod-menu__item:nth-of-type(odd) {
    width: 500px;
}

@media screen and (max-width: 750px) {
    .english-page .mod-menu__item:nth-of-type(odd) {
        width: auto;
    }
}

@media screen and (max-width: 750px) {
    .english-page .mod-menu__item dt {
        font-size: 4.6875vw;
    }
}

@media screen and (max-width: 750px) {
    .english-page .mod-menu__item dd {
        line-height: 1.8;
    }
}

.english-page .mod-menu__item .small-text {
    margin-left: 5px;
}

@media screen and (max-width: 750px) {
    .english-page .mod-menu__item .small-text {
        font-size: 3.4375vw;
    }
}

@media screen and (max-width: 750px) {
    .english-page .mod-menu__item dd.mod-menu__item-long {
        padding: 2.5vw 0;
        line-height: 1.2;
    }
}

/* ---------------------------------------------
*   specialty-list
--------------------------------------------- */
.english-page .specialty-list {
    width: 900px;
    height: auto;
    margin-right: auto;
    margin-left: auto;
}

@media screen and (max-width: 750px) {
    .english-page .specialty-list {
        width: auto;
    }
}

.english-page .specialty-list__item {
    margin-right: 0;
    margin-bottom: 30px;
}

@media screen and (max-width: 750px) {
    .english-page .specialty-list__item {
        margin-bottom: 6.25vw;
    }
}

.english-page .specialty-list__item:last-child {
    margin-bottom: 0;
}

.english-page .specialty-list__item-title {
    position: static;
    margin-left: 0;
    font-size: 1.15789rem;
    margin-bottom: 5px;
}

@media screen and (max-width: 750px) {
    .english-page .specialty-list__item-title {
        font-size: 4.6875vw;
    }
}

.english-page .specialty-list__item-text {
    line-height: 1.5;
}

.english-page .specialty-list__item-caption {
    position: static;
    margin-left: 0;
}

@media screen and (max-width: 750px) {
    .english-page .specialty-list__item-caption {
        font-size: 4.6875vw;
    }
}

/* ---------------------------------------------
*   knack-list
--------------------------------------------- */
.english-page .knack-list {
    width: 900px;
    height: auto;
    margin-right: auto;
    margin-left: auto;
}

@media screen and (max-width: 750px) {
    .english-page .knack-list {
        width: auto;
    }
}

.english-page .knack-list__item {
    margin-bottom: 30px;
    margin-right: 0;
}

@media screen and (max-width: 750px) {
    .english-page .knack-list__item {
        margin-bottom: 6.25vw;
    }
}

.english-page .knack-list__item:last-child {
    margin-bottom: 0;
}

.english-page .knack-list__item-title {
    position: static;
    margin-left: 0;
    margin-bottom: 5px;
}

@media screen and (max-width: 750px) {
    .english-page .knack-list__item-title {
        font-size: 4.6875vw;
    }
}

.english-page .knack-list__item-text {
    line-height: 1.5;
}

/* ---------------------------------------------
*   position-list
--------------------------------------------- */
.english-page .position-list {
    height: auto;
}

.english-page .position-list__item {
    margin-right: 0;
    margin-bottom: 30px;
}

@media screen and (max-width: 750px) {
    .english-page .position-list__item {
        margin-bottom: 6.25vw;
    }
}

.english-page .position-list__item:last-child {
    margin-bottom: 0;
}

.english-page .position-list__item dl {
    letter-spacing: -.4em;
}

.english-page .position-list__item dt {
    letter-spacing: normal;
    width: 180px;
    height: auto;
    box-sizing: border-box;
    font-size: 1.26316rem;
    vertical-align: middle;
    padding-right: 30px;
    text-align: center;
}

@media screen and (max-width: 750px) {
    .english-page .position-list__item dt {
        text-align: left;
        width: auto;
        padding-right: 0;
        font-size: 4.6875vw;
    }
}

.english-page .position-list__item dd {
    letter-spacing: normal;
    vertical-align: middle;
    width: calc(100% - 180px);
}

@media screen and (max-width: 750px) {
    .english-page .position-list__item dd {
        width: auto;
        font-size: 4.375vw;
    }
}

/* ---------------------------------------------
*   lineup-contents
--------------------------------------------- */
.english-page .lineup-contents--decide {
    width: 900px;
    margin-right: auto;
    margin-left: auto;
}

@media screen and (max-width: 750px) {
    .english-page .lineup-contents--decide {
        width: auto;
    }
}

/* ---------------------------------------------
*   section-contents
--------------------------------------------- */
.english-page .section-contents {
    margin-right: auto;
    margin-left: auto;
}

/* ---------------------------------------------
*   data-list
--------------------------------------------- */
@media screen and (max-width: 750px) {
    .english-page .data-list__item dt {
        font-size: 4.6875vw;
    }
}

@media screen and (max-width: 750px) {
    .english-page .data-list__item dd {
        font-size: 4.375vw;
    }
}

@media screen and (max-width: 750px) {
    .english-page .data-list__item-caption {
        font-size: 3.75vw;
    }
}

.english-page .data-list__item .big-text {
    letter-spacing: normal;
}

@media screen and (max-width: 750px) {
    .english-page .data-list__item .big-text {
        font-size: 7.8125vw;
    }
}


/* ---------------------------------------------
*   movie
--------------------------------------------- */
.movie {
    margin-top: 65px;
}

.movie .movie__ttl {
    margin-right: 20px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    letter-spacing: -0.02em;
}

.movie .movie__iframe {
    margin: 15px auto 0;
    padding-right: 35px;
    width: 620px;
    height: 348px;
}

.windows .movie .movie__iframe {
    margin: 10px auto 0;
}

.movie .movie__iframe iframe {
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 750px) {
    .movie {
        margin-top: 10vw;
    }

    .movie .movie__ttl {
        margin-right: 0;
        font-size: 2.96875vw;
        letter-spacing: 0.02em;
    }

    .movie .movie__iframe {
        margin: 2vw auto 0;
        padding-right: 0;
        width: 90%;
        height: 50vw;
    }
}

/* ==========================================================
*
*   margin
*
========================================================== */
/* ---------------------------------------------
*   margin-top
--------------------------------------------- */
.mgt-pc--0 {
    margin-top: 0 !important;
}

.mgt-pc--5 {
    margin-top: 5px !important;
}

.mgt-pc--10 {
    margin-top: 10px !important;
}

.mgt-pc--15 {
    margin-top: 15px !important;
}

.mgt-pc--20 {
    margin-top: 20px !important;
}

.mgt-pc--25 {
    margin-top: 25px !important;
}

.mgt-pc--30 {
    margin-top: 30px !important;
}

.mgt-pc--35 {
    margin-top: 35px !important;
}

.mgt-pc--40 {
    margin-top: 40px !important;
}

.mgt-pc--45 {
    margin-top: 45px !important;
}

.mgt-pc--50 {
    margin-top: 50px !important;
}

.mgt-pc--55 {
    margin-top: 55px !important;
}

.mgt-pc--60 {
    margin-top: 60px !important;
}

.mgt-pc--65 {
    margin-top: 65px !important;
}

.mgt-pc--70 {
    margin-top: 70px !important;
}

.mgt-pc--75 {
    margin-top: 75px !important;
}

.mgt-pc--80 {
    margin-top: 80px !important;
}

.mgt-pc--85 {
    margin-top: 85px !important;
}

.mgt-pc--90 {
    margin-top: 90px !important;
}

.mgt-pc--95 {
    margin-top: 95px !important;
}

.mgt-pc--100 {
    margin-top: 100px !important;
}

.mgt-pc--105 {
    margin-top: 105px !important;
}

.mgt-pc--110 {
    margin-top: 110px !important;
}

.mgt-pc--115 {
    margin-top: 115px !important;
}

.mgt-pc--120 {
    margin-top: 120px !important;
}

.mgt-pc--125 {
    margin-top: 125px !important;
}

.mgt-pc--130 {
    margin-top: 130px !important;
}

.mgt-pc--135 {
    margin-top: 135px !important;
}

.mgt-pc--140 {
    margin-top: 140px !important;
}

.mgt-pc--145 {
    margin-top: 145px !important;
}

.mgt-pc--150 {
    margin-top: 150px !important;
}

.mgt-pc--155 {
    margin-top: 155px !important;
}

.mgt-pc--160 {
    margin-top: 160px !important;
}

.mgt-pc--165 {
    margin-top: 165px !important;
}

.mgt-pc--170 {
    margin-top: 170px !important;
}

.mgt-pc--175 {
    margin-top: 175px !important;
}

.mgt-pc--180 {
    margin-top: 180px !important;
}

.mgt-pc--185 {
    margin-top: 185px !important;
}

.mgt-pc--190 {
    margin-top: 190px !important;
}

.mgt-pc--195 {
    margin-top: 195px !important;
}

.mgt-pc--200 {
    margin-top: 200px !important;
}

.mgt-pc--205 {
    margin-top: 205px !important;
}

.mgt-pc--210 {
    margin-top: 210px !important;
}

.mgt-pc--215 {
    margin-top: 215px !important;
}

.mgt-pc--220 {
    margin-top: 220px !important;
}

.mgt-pc--225 {
    margin-top: 225px !important;
}

.mgt-pc--230 {
    margin-top: 230px !important;
}

.mgt-pc--235 {
    margin-top: 235px !important;
}

.mgt-pc--240 {
    margin-top: 240px !important;
}

.mgt-pc--245 {
    margin-top: 245px !important;
}

.mgt-pc--250 {
    margin-top: 250px !important;
}

@media screen and (max-width: 750px) {
    .mgt-sp--0 {
        margin-top: 0 !important;
    }
    .mgt-sp--5 {
        margin-top: 0.78125vw !important;
    }
    .mgt-sp--10 {
        margin-top: 1.5625vw !important;
    }
    .mgt-sp--15 {
        margin-top: 2.34375vw !important;
    }
    .mgt-sp--20 {
        margin-top: 3.125vw !important;
    }
    .mgt-sp--25 {
        margin-top: 3.90625vw !important;
    }
    .mgt-sp--30 {
        margin-top: 4.6875vw !important;
    }
    .mgt-sp--35 {
        margin-top: 5.46875vw !important;
    }
    .mgt-sp--40 {
        margin-top: 6.25vw !important;
    }
    .mgt-sp--45 {
        margin-top: 7.03125vw !important;
    }
    .mgt-sp--50 {
        margin-top: 7.8125vw !important;
    }
    .mgt-sp--55 {
        margin-top: 8.59375vw !important;
    }
    .mgt-sp--60 {
        margin-top: 9.375vw !important;
    }
    .mgt-sp--65 {
        margin-top: 10.15625vw !important;
    }
    .mgt-sp--70 {
        margin-top: 10.9375vw !important;
    }
    .mgt-sp--75 {
        margin-top: 11.71875vw !important;
    }
    .mgt-sp--80 {
        margin-top: 12.5vw !important;
    }
    .mgt-sp--85 {
        margin-top: 13.28125vw !important;
    }
    .mgt-sp--90 {
        margin-top: 14.0625vw !important;
    }
    .mgt-sp--95 {
        margin-top: 14.84375vw !important;
    }
    .mgt-sp--100 {
        margin-top: 15.625vw !important;
    }
    .mgt-sp--105 {
        margin-top: 16.40625vw !important;
    }
    .mgt-sp--110 {
        margin-top: 17.1875vw !important;
    }
    .mgt-sp--115 {
        margin-top: 17.96875vw !important;
    }
    .mgt-sp--120 {
        margin-top: 18.75vw !important;
    }
    .mgt-sp--125 {
        margin-top: 19.53125vw !important;
    }
    .mgt-sp--130 {
        margin-top: 20.3125vw !important;
    }
    .mgt-sp--135 {
        margin-top: 21.09375vw !important;
    }
    .mgt-sp--140 {
        margin-top: 21.875vw !important;
    }
    .mgt-sp--145 {
        margin-top: 22.65625vw !important;
    }
    .mgt-sp--150 {
        margin-top: 23.4375vw !important;
    }
    .mgt-sp--155 {
        margin-top: 24.21875vw !important;
    }
    .mgt-sp--160 {
        margin-top: 25vw !important;
    }
    .mgt-sp--165 {
        margin-top: 25.78125vw !important;
    }
    .mgt-sp--170 {
        margin-top: 26.5625vw !important;
    }
    .mgt-sp--175 {
        margin-top: 27.34375vw !important;
    }
    .mgt-sp--180 {
        margin-top: 28.125vw !important;
    }
    .mgt-sp--185 {
        margin-top: 28.90625vw !important;
    }
    .mgt-sp--190 {
        margin-top: 29.6875vw !important;
    }
    .mgt-sp--195 {
        margin-top: 30.46875vw !important;
    }
    .mgt-sp--200 {
        margin-top: 31.25vw !important;
    }
    .mgt-sp--205 {
        margin-top: 32.03125vw !important;
    }
    .mgt-sp--210 {
        margin-top: 32.8125vw !important;
    }
    .mgt-sp--215 {
        margin-top: 33.59375vw !important;
    }
    .mgt-sp--220 {
        margin-top: 34.375vw !important;
    }
    .mgt-sp--225 {
        margin-top: 35.15625vw !important;
    }
    .mgt-sp--230 {
        margin-top: 35.9375vw !important;
    }
    .mgt-sp--235 {
        margin-top: 36.71875vw !important;
    }
    .mgt-sp--240 {
        margin-top: 37.5vw !important;
    }
    .mgt-sp--245 {
        margin-top: 38.28125vw !important;
    }
    .mgt-sp--250 {
        margin-top: 39.0625vw !important;
    }
}

/* ---------------------------------------------
*   margin-bottom
--------------------------------------------- */
.mgb-pc--0 {
    margin-bottom: 0 !important;
}

.mgb-pc--5 {
    margin-bottom: 5px !important;
}

.mgb-pc--10 {
    margin-bottom: 10px !important;
}

.mgb-pc--15 {
    margin-bottom: 15px !important;
}

.mgb-pc--20 {
    margin-bottom: 20px !important;
}

.mgb-pc--25 {
    margin-bottom: 25px !important;
}

.mgb-pc--30 {
    margin-bottom: 30px !important;
}

.mgb-pc--35 {
    margin-bottom: 35px !important;
}

.mgb-pc--40 {
    margin-bottom: 40px !important;
}

.mgb-pc--45 {
    margin-bottom: 45px !important;
}

.mgb-pc--50 {
    margin-bottom: 50px !important;
}

.mgb-pc--55 {
    margin-bottom: 55px !important;
}

.mgb-pc--60 {
    margin-bottom: 60px !important;
}

.mgb-pc--65 {
    margin-bottom: 65px !important;
}

.mgb-pc--70 {
    margin-bottom: 70px !important;
}

.mgb-pc--75 {
    margin-bottom: 75px !important;
}

.mgb-pc--80 {
    margin-bottom: 80px !important;
}

.mgb-pc--85 {
    margin-bottom: 85px !important;
}

.mgb-pc--90 {
    margin-bottom: 90px !important;
}

.mgb-pc--95 {
    margin-bottom: 95px !important;
}

.mgb-pc--100 {
    margin-bottom: 100px !important;
}

.mgb-pc--105 {
    margin-bottom: 105px !important;
}

.mgb-pc--110 {
    margin-bottom: 110px !important;
}

.mgb-pc--115 {
    margin-bottom: 115px !important;
}

.mgb-pc--120 {
    margin-bottom: 120px !important;
}

.mgb-pc--125 {
    margin-bottom: 125px !important;
}

.mgb-pc--130 {
    margin-bottom: 130px !important;
}

.mgb-pc--135 {
    margin-bottom: 135px !important;
}

.mgb-pc--140 {
    margin-bottom: 140px !important;
}

.mgb-pc--145 {
    margin-bottom: 145px !important;
}

.mgb-pc--150 {
    margin-bottom: 150px !important;
}

.mgb-pc--155 {
    margin-bottom: 155px !important;
}

.mgb-pc--160 {
    margin-bottom: 160px !important;
}

.mgb-pc--165 {
    margin-bottom: 165px !important;
}

.mgb-pc--170 {
    margin-bottom: 170px !important;
}

.mgb-pc--175 {
    margin-bottom: 175px !important;
}

.mgb-pc--180 {
    margin-bottom: 180px !important;
}

.mgb-pc--185 {
    margin-bottom: 185px !important;
}

.mgb-pc--190 {
    margin-bottom: 190px !important;
}

.mgb-pc--195 {
    margin-bottom: 195px !important;
}

.mgb-pc--200 {
    margin-bottom: 200px !important;
}

.mgb-pc--205 {
    margin-bottom: 205px !important;
}

.mgb-pc--210 {
    margin-bottom: 210px !important;
}

.mgb-pc--215 {
    margin-bottom: 215px !important;
}

.mgb-pc--220 {
    margin-bottom: 220px !important;
}

.mgb-pc--225 {
    margin-bottom: 225px !important;
}

.mgb-pc--230 {
    margin-bottom: 230px !important;
}

.mgb-pc--235 {
    margin-bottom: 235px !important;
}

.mgb-pc--240 {
    margin-bottom: 240px !important;
}

.mgb-pc--245 {
    margin-bottom: 245px !important;
}

.mgb-pc--250 {
    margin-bottom: 250px !important;
}

@media screen and (max-width: 750px) {
    .mgb-sp--0 {
        margin-bottom: 0 !important;
    }
    .mgb-sp--5 {
        margin-bottom: 0.78125vw !important;
    }
    .mgb-sp--10 {
        margin-bottom: 1.5625vw !important;
    }
    .mgb-sp--15 {
        margin-bottom: 2.34375vw !important;
    }
    .mgb-sp--20 {
        margin-bottom: 3.125vw !important;
    }
    .mgb-sp--25 {
        margin-bottom: 3.90625vw !important;
    }
    .mgb-sp--30 {
        margin-bottom: 4.6875vw !important;
    }
    .mgb-sp--35 {
        margin-bottom: 5.46875vw !important;
    }
    .mgb-sp--40 {
        margin-bottom: 6.25vw !important;
    }
    .mgb-sp--45 {
        margin-bottom: 7.03125vw !important;
    }
    .mgb-sp--50 {
        margin-bottom: 7.8125vw !important;
    }
    .mgb-sp--55 {
        margin-bottom: 8.59375vw !important;
    }
    .mgb-sp--60 {
        margin-bottom: 9.375vw !important;
    }
    .mgb-sp--65 {
        margin-bottom: 10.15625vw !important;
    }
    .mgb-sp--70 {
        margin-bottom: 10.9375vw !important;
    }
    .mgb-sp--75 {
        margin-bottom: 11.71875vw !important;
    }
    .mgb-sp--80 {
        margin-bottom: 12.5vw !important;
    }
    .mgb-sp--85 {
        margin-bottom: 13.28125vw !important;
    }
    .mgb-sp--90 {
        margin-bottom: 14.0625vw !important;
    }
    .mgb-sp--95 {
        margin-bottom: 14.84375vw !important;
    }
    .mgb-sp--100 {
        margin-bottom: 15.625vw !important;
    }
    .mgb-sp--105 {
        margin-bottom: 16.40625vw !important;
    }
    .mgb-sp--110 {
        margin-bottom: 17.1875vw !important;
    }
    .mgb-sp--115 {
        margin-bottom: 17.96875vw !important;
    }
    .mgb-sp--120 {
        margin-bottom: 18.75vw !important;
    }
    .mgb-sp--125 {
        margin-bottom: 19.53125vw !important;
    }
    .mgb-sp--130 {
        margin-bottom: 20.3125vw !important;
    }
    .mgb-sp--135 {
        margin-bottom: 21.09375vw !important;
    }
    .mgb-sp--140 {
        margin-bottom: 21.875vw !important;
    }
    .mgb-sp--145 {
        margin-bottom: 22.65625vw !important;
    }
    .mgb-sp--150 {
        margin-bottom: 23.4375vw !important;
    }
    .mgb-sp--155 {
        margin-bottom: 24.21875vw !important;
    }
    .mgb-sp--160 {
        margin-bottom: 25vw !important;
    }
    .mgb-sp--165 {
        margin-bottom: 25.78125vw !important;
    }
    .mgb-sp--170 {
        margin-bottom: 26.5625vw !important;
    }
    .mgb-sp--175 {
        margin-bottom: 27.34375vw !important;
    }
    .mgb-sp--180 {
        margin-bottom: 28.125vw !important;
    }
    .mgb-sp--185 {
        margin-bottom: 28.90625vw !important;
    }
    .mgb-sp--190 {
        margin-bottom: 29.6875vw !important;
    }
    .mgb-sp--195 {
        margin-bottom: 30.46875vw !important;
    }
    .mgb-sp--200 {
        margin-bottom: 31.25vw !important;
    }
    .mgb-sp--205 {
        margin-bottom: 32.03125vw !important;
    }
    .mgb-sp--210 {
        margin-bottom: 32.8125vw !important;
    }
    .mgb-sp--215 {
        margin-bottom: 33.59375vw !important;
    }
    .mgb-sp--220 {
        margin-bottom: 34.375vw !important;
    }
    .mgb-sp--225 {
        margin-bottom: 35.15625vw !important;
    }
    .mgb-sp--230 {
        margin-bottom: 35.9375vw !important;
    }
    .mgb-sp--235 {
        margin-bottom: 36.71875vw !important;
    }
    .mgb-sp--240 {
        margin-bottom: 37.5vw !important;
    }
    .mgb-sp--245 {
        margin-bottom: 38.28125vw !important;
    }
    .mgb-sp--250 {
        margin-bottom: 39.0625vw !important;
    }
}

/* ==========================================================
*
*   hide
*
========================================================== */
@media screen and (min-width: 751px) {
    .pc-hide {
        display: none !important;
    }
}

@media screen and (max-width: 750px) {
    .sp-hide {
        display: none !important;
    }
}

/* ---------------------------------------------
*   announce
--------------------------------------------- */

.announce {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 850px;
    padding: 75px;
    border: 2px solid #333333;
    margin: 0 auto 185px;
}

.announce--en {
    width: 650px;
}

@media screen and (max-width: 750px) {
    .announce {
        width: 90.625%;
        padding: 10% 5%;
        margin-bottom: 28.90625vw;
        text-align: left;
    }
}

.announce__container {
    height: 430px;
}

@media screen and (max-width: 750px) {
    .announce__container {
        height: auto;
    }
}

.announce__title {
    font-weight: bold;
    font-size: 1.31579rem;
    margin-left: 30px;
}
.announce__title--en {
    font-size: 1.84211rem;
    margin-left: 0;
    text-align: center;
    margin-bottom: 20px;
}

@media screen and (max-width: 750px) {
    .announce__title {
        font-size: 3.90625vw;
        margin-bottom: 7.8125vw;
        margin-left: 0;
    }

    .announce__title--en {
        font-size: 1.84211rem;
    }
}

.announce__text {
    line-height: 2.5;
    font-weight: normal;
}

.announce__text--en {
    line-height: 1.5;
}

@media screen and (max-width: 750px) {
    .announce__text {
        line-height: 2.3;
    }

    .announce__text--en {
        line-height: 1.5;
        text-align: left;
    }
}

.announce__text-num {
    -ms-writing-mode: lr-tb;
    line-height: 1;

    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
}


/* ---------------------------------------------
* announce2
--------------------------------------------- */
.announce2 {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 850px;
    padding: 65px;
    border: 2px solid #333333;
    margin: 0 auto 185px;
}
.announce2--en {
    width: 650px;
}
@media screen and (max-width: 750px) {
    .announce2 {
        width: 90.625%;
        padding: 10% 5%;
        margin-bottom: 28.90625vw;
        text-align: left;
    }
}
.announce2__container {
    height: 430px;
}
@media screen and (max-width: 750px) {
    .announce2__container {
        height: auto;
    }
}
.announce2__title {
    font-weight: bold;
    font-size: 1.31579rem;
    margin-left: 30px;
}
.announce2__title--en {
    font-size: 1.84211rem;
    margin-left: 0;
    text-align: center;
    margin-bottom: 20px;
}
@media screen and (max-width: 750px) {
    .announce2__title {
        font-size: 3.90625vw;
        margin-bottom: 7.8125vw;
        margin-left: 0;
    }
    .announce2__title--en {
        font-size: 1.84211rem;
    }
}
.announce2__text {
    line-height: 2.5;
    font-weight: normal;
}
.announce2__text--en {
    line-height: 1.5;
}
@media screen and (max-width: 750px) {
    .announce2__text {
        line-height: 2.3;
    }
    .announce2__text--en {
        line-height: 1.5;
        text-align: left;
    }
}
.announce2__text-num {
    -ms-writing-mode: lr-tb;
    line-height: 1;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
}


/* ---------------------------------------------
*   mod-menu内
--------------------------------------------- */
/*  text-box
--------------------------------------------- */
.text-box {
    border: 1px solid #333;
    padding: 0.5em 0.7em 0.5em 1.2em;
    margin-top: 1em;
    margin-bottom: 1em;
}

@media screen and (max-width: 750px) {
    .text-box {
        display: inline-block;
        margin-top: 0.5em;
        margin-bottom: 0.5em;
    }
}

.text-box__head {
    position: relative;
    display: inline-block;
}

.text-box__head:after {
    position: absolute;
    bottom: .3em;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background-color: #333;
}

/*  txt-small
--------------------------------------------- */
.txt-small {
    font-size: 17px;
}

@media screen and (max-width: 750px) {
    .txt-small {
        font-size: 3.5vw;
    }
}

/*  custom-underline-link
--------------------------------------------- */
a.custom-underline-link {
  position: relative;
  color: #333;
  text-decoration: none; /* デフォルトの下線を消す */
  transition: opacity 0.3s ease;
}

/* 下線を疑似要素で作成 */
a.custom-underline-link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2.5px;            /* テキストから下に2px離す */
  width: 100%;
  height: 0.8px;             /* 細い下線（お好みで0.5pxなどもOK） */
  background-color: #333;
  transition: opacity 0.3s ease;
}

a.custom-underline-link:hover {
  opacity: 0.6;            /* テキストを透過 */
}

a.custom-underline-link:hover::after {
  opacity: 0.3;            /* 下線も透過（お好みで調整） */
}