@charset "UTF-8";

#key img {
    object-position: center 100%;
}

#lead {
    padding: 12vw 0 15vw;
    position: relative;
}
#lead::before {
    content: "";
    position: absolute;
    bottom: 35vw;
    left: 0;
    width: 50%;
    height: 79%;
    background: url(../img/lunch/lead-d1.png) repeat right center / 569% auto;
    z-index: -1;
}
#lead .inner {
    padding: 0 4%;
    box-sizing: border-box;
}
#lead h2 {
    white-space: nowrap;
    margin: 0 0 6vw 0;
}
#lead .inner1 .fl2 h3 {
    font-size: 6.13vw;
    margin: 5vw 0 5vw;
    letter-spacing: 0.1em;
}
#lead .inner1 p.btn a {
    width: 45vw;
    height: 45vw;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 9vw auto 0;
}
#lead .inner1 p.btn a::after {
    content: "";
    position: absolute;
    top: auto;
    bottom: 5vw;
    left: 50%;
    transform: translateX(-50%);
    background: url(../img/lunch/lead-arr.png) no-repeat center center / 100%
        auto;
    width: 4vw;
    height: 4vw;
}
#lead .slick-slider .slick-dots li {
    display: block;
    text-align: left;
    margin-bottom: 3px;
}
#lead .slick-slider .slick-dots button {
    border-radius: 0;
    width: 35px;
    height: 4px;
    background: #999999;
    border: 0;
}
#lead .slick-slider .slick-dots {
    display: block;
    position: absolute;
    bottom: 7vw;
    left: 4vw;
}
#lead .slick-slider .slick-dots .slick-active button {
    width: 50px;
}
#lead .inner1 {
    margin-bottom: 15vw;
}
#lead .inner2 .box {
    background: url(../img/lunch/bg1.jpg);
    color: #fff;
    padding: 12vw 4% 12vw;
    margin-top: 9vw;
    box-sizing: border-box;
}
#lead .inner2 h3 {
    text-align: center;
}
#lead .inner2 h3 span {
    background: #760000;
    display: inline-block;
    padding: 2vw 6vw;
    font-size: 4.5vw;
    letter-spacing: 0.15em;
}
#lead .inner2 .box ul {
    line-height: 1.56;
    border-top: 1px solid #928d89;
    margin-top: 5.33vw;
    padding-top: 5.33vw;
}

#lead .inner2 .box ul li {
    position: relative;
    padding-left: 18px;
    box-sizing: border-box;
}
#lead .inner2 .box ul li span {
    position: absolute;
    top: 0;
    left: 0;
}
#lead .inner2 .price-all {
    margin-top: 3vw;
}

#more {
    background: url(../img/private/course-bg.jpg);
    padding: 12vw 0 15vw;
}
#more h2 {
    text-align: center;
    font-size: 7vw;
    letter-spacing: 0.2em;
}
#more h2 span {
    position: relative;
}
#more h2 span::before {
    content: "";
    position: absolute;
    top: -6vw;
    left: -4vw;
    width: 1px;
    height: 15vw;
    background: #000;
    transform: rotate(45deg);
}
#more h2 + h3 {
    text-align: center;
    font-size: 4vw;
    letter-spacing: 0.1em;
    margin-bottom: 9vw;
}
#more p.txt1 {
    font-size: 20px;
}
#more p.txt-sub1 {
    text-align: center;
    margin: 12vw 0 6vw;
}
#more .inner {
    box-sizing: border-box;
}
#more .inner1 p.img2 {
    width: 90%;
    margin: 6vw 0 0 auto;
}
#more .inner .box {
    background: url(../img/lunch/bg1.jpg);
    color: #fff;
    padding: 12vw 4% 12vw;
    margin-top: 9vw;
    box-sizing: border-box;
}
#more .inner h3 span {
    background: #760000;
    display: inline-block;
    padding: 2vw 6vw;
    font-size: 4.5vw;
    letter-spacing: 0.15em;
}
#more .inner .price-all {
    margin-top: 3vw;
}
#more .inner ul {
    line-height: 1.56;
    border-top: 1px solid #928d89;
    margin-top: 5.33vw;
    padding-top: 5.33vw;
}
#more .inner1 h3 {
    text-align: center;
}
#more .inner1 ul li {
    margin-bottom: 12px;
    padding-left: 19px;
    position: relative;
}
#more .inner1 ul li span {
    position: absolute;
    top: 0;
    left: 0;
}
#more .inner1 ul + p.txt {
    margin-bottom: 12vw;
    position: relative;
    padding-left: 19px;
}
#more .inner1 ul + p.txt span {
    position: absolute;
    top: 0;
    left: 0;
}
#more .inner1 p.btn a {
    text-align: left;
    line-height: 1.5;
    padding: 16px 30px;
    font-size: 18px;
}
#more .inner1 p.btn a::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 7vw;
    background: url(../img/lunch/more-arr.png) no-repeat center center / 100%
        auto;
    width: 20px;
    height: 20px;
}
#more .inner2 {
    margin: 15vw 0 15vw;
}
#more .inner2 .box {
    text-align: center;
}
#more .inner2 .price-all {
    text-align: center;
}
#more .inner2 ul li {
    margin-bottom: 12px;
}
#more .inner3 .price-all {
    text-align: center;
}
#more .inner3 .box {
    text-align: center;
}
#more .inner4 h3 {
    text-align: center;
}
#more .inner4 .price-all {
    text-align: center;
}
#more .inner4 {
    margin: 15vw 0 15vw;
}
#more .inner4 ul li {
    position: relative;
    padding-left: 19px;
}
#more .inner4 ul li span {
    position: absolute;
    top: 0;
    left: 0;
}
#more .row .col {
    margin-bottom: 15vw;
}
#more .row .col h3 {
    margin-bottom: 2vw;
    line-height: 1.5;
}

.row-table {
    margin-top: 8vw;
}
.table-list {
    border: 1px solid #1c1408;
    margin-top: 2.66vw;
}

.table-list dl {
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.table-list dl dt,
.table-list dl dd {
    width: 50%;
}

.table-list dl dt {
    background-image: url("../img/shared/bgbody.jpg");
    background-position: center top;
    background-repeat: repeat;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 3vw 0;
}

.table-list dl dd {
    background-image: url("../img/shared/bg2.jpg");
    background-position: center top;
    background-repeat: repeat;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 2vw 0;
    border-left: 1px solid #1c1408;
}

.table-list dl + dl {
    border-top: 1px solid #1c1408;
}

@media screen and (min-width: 768px) {
    .table-list {
        margin-top: 12px;
    }
    .table-list dl dt,
    .table-list dl dd {
        padding: 9px 0;
    }
    .table-list2 dl {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        width: 130.5px;
    }
    .table-list2 dl dt,
    .table-list2 dl dd {
        width: auto;
    }
    .table-list2 dl dd {
        border-left: 0;
        border-top: 1px solid #000;
    }
    .table-list2 dl + dl {
        border-top: 0;
        border-left: 1px solid #000;
    }
    .row-table {
        margin-top: 9px;
    }
    .row-table + .row-table {
        margin-top: 50px;
    }
}

#more .row .card {
    background: url(../img/lunch/bg1.jpg);
    color: #fff;
    padding: 12vw 4% 10vw;
    margin-top: 9vw;
    box-sizing: border-box;
}
#more .row .card .box {
    border-bottom: 1px solid #ccc;
    padding: 0 0 5vw;
    margin-bottom: 7vw;
}
#more .row .card h3 {
    text-align: center;
}
#more .row .card h3 span {
    background: #760000;
    display: inline-block;
    padding: 2vw 6vw;
    font-size: 4.5vw;
    letter-spacing: 0.15em;
}
#more .row .card .price-all {
    margin: 3vw 0 0;
}
#more .row .card ul {
    line-height: 1.56;
}
#more .row .card ul li {
    padding-left: 19px;
    position: relative;
}
#more .row .card ul li span {
    position: absolute;
    top: 0;
    left: 0;
}

#lunch_box {
    background: url(../img/lunch/lunch_box-d1.png) no-repeat right -63vw top / 290%
            auto,
        url(../img/lunch/lunch_box-bg.jpg);
    color: #fff;
    padding: 12vw 0 15vw;
}
#lunch_box h2 {
    text-align: center;
    font-size: 5vw;
    letter-spacing: 0.2em;
}
#lunch_box h2 span {
    position: relative;
    font-size: 8vw;

}
#lunch_box h2 span::before {
    content: "";
    position: absolute;
    top: -6vw;
    left: -4vw;
    width: 1px;
    height: 15vw;
    background: #fff;
    transform: rotate(45deg);
}
#lunch_box h2 + p.txt-sub {
    text-align: center;
    margin-bottom: 9vw;
}
#lunch_box p.txt-sub + p.txt {
    margin-bottom: 12vw;
}
#lunch_box .fl1 dl {
    margin: 9vw 0 5vw;
    text-align: center;
}
#lunch_box .fl1 dt {
    font-size: 6.5vw;
}
#lunch_box .fl1 dt small {
    font-size: 5vw;
    display: block;
    margin-bottom: 1.5vw;
    line-height: 1;
}
#lunch_box .fl1 dd {
    font-size: 6vw;
}
#lunch_box .fl1 dd small {
    font-size: 4.5vw;
}
#lunch_box .fl2 p.img {
    margin: 0 -5%;
}

#lunch_box .fl2 dl {
    margin: 1vw 0 0;
    text-align: center;
}
#lunch_box .fl2 dt {
    font-size: 6.5vw;
}
#lunch_box .fl2 dd {
    font-size: 5.5vw;
}
#lunch_box .fl2 {
    margin: 7vw 0 10vw;
}
#lunch_box .fl3 p.img {
    margin-bottom: 6vw;
}
#lunch_box .fl3 {
    margin-bottom: 12vw;
}
#lunch_box .row-1 > p.img {
    margin-bottom: 3vw;
}
#lunch_box .row-1 .fl4 p + p {
    margin: 0 0 0 3vw;
}
#lunch_box .row-1 .fl5 {
    margin: 7vw 0 12vw;
}
#lunch_box .row-1 .fl5 p.price {
    text-align: center;
    font-size: 6vw;
    letter-spacing: 0.15em;
    margin-bottom: 4vw;
}
#lunch_box .row-1 .fl5 p.price small {
    font-size: 5vw;
}
#lunch_box .row-1 .col {
    border: 1px solid #fff;
    box-sizing: border-box;
    padding: 9vw 0 10vw;
}
#lunch_box .row-1 .col p.tel {
    text-align: center;
    font-size: 4vw;
}
#lunch_box .row-1 .col p.tel .cl {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    font-size: 9vw;
}
#lunch_box .row-1 .col p.tel i {
    line-height: 1;
    display: block;
    margin: 3vw 3vw 0 0;
    width: 6vw;
}
#lunch_box .row-1 .col p.tel small {
    font-size: 3vw;
    letter-spacing: 0;
}
#lunch_box .row-1 .col p.btn {
    width: 75%;
    margin: 9vw auto 0;
}
#lunch_box .row-1 .col p.btn a {
    padding: 12px 0;
    letter-spacing: 0.15em;
}
#lunch_box .row-1 .col p.btn a:after {
    display: none;
}
#lunch_box .row-1 .col p.btn i {
    margin: 0 10px 0 0;
    position: relative;
    top: -3px;
}

#faq {
    background: url(../img/private/course-bg.jpg);
    padding: 15vw 0 15vw;
}
#faq h2 {
    text-align: center;
    font-size: 9vw;
    letter-spacing: 0.2em;
}
#faq h2 span {
    position: relative;
}
#faq h2 span::before {
    content: "";
    position: absolute;
    top: -10vw;
    left: -2vw;
    width: 1px;
    height: 21vw;
    background: #000;
    transform: rotate(45deg);
}
#faq h3 {
    text-align: center;
    line-height: 1;
    margin-bottom: 11vw;
}
#faq dl {
    padding: 30px 0 18px;
    border-bottom: 1px solid #46291e;
}
#faq dl:first-child {
    padding-top: 0;
}
#faq dt {
    display: flex;
}
#faq dd {
    display: flex;
    margin: 6vw 0 0 4vw;
}
#faq dt span {
    width: 11vw;
    min-width: 11vw;
    height: 11vw;
    background: url(../img/lunch/qa-bgbox.jpg);
    color: #fff;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 5.5vw;
    margin: -2vw 3vw 0 0;
    position: relative;
    font-family: "Libre Baskerville", serif;
}
#faq dd span {
    width: 11vw;
    min-width: 11vw;
    height: 11vw;
    background: url(../img/lunch/qa-bgbox.jpg);
    color: #fff;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 5.5vw;
    margin: -2vw 3vw 0 0;
    position: relative;
    font-family: "Libre Baskerville", serif;
}

@media screen and (min-width: 768px) {
    .txt-ver-pc {
        cursor: vertical-text;
        writing-mode: vertical-rl;
        -o-writing-mode: vertical-rl;
        -ms-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        -moz-writing-mode: vertical-rl;
        -webkit-writing-mode: vertical-rl;
        text-orientation: upright;
        word-wrap: break-word;
    }
    .txt-ver-pc .txt-latin {
        cursor: vertical-text;
        direction: rtl;
        writing-mode: vertical-rl;
        -o-writing-mode: vertical-rl;
        -ms-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        -moz-writing-mode: vertical-rl;
        -webkit-writing-mode: vertical-rl;
        text-orientation: sideways-right;
        -o-text-orientation: sideways-right;
        -ms-text-orientation: upright;
        -ms-text-orientation: sideways-right;
        -moz-text-orientation: sideways-right;
        -webkit-text-orientation: sideways-right;
        letter-spacing: 0.25em;
    }
    .txt-ver-pc.txt-latin {
        cursor: vertical-text;
        direction: rtl;
        writing-mode: vertical-rl;
        -o-writing-mode: vertical-rl;
        -ms-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        -moz-writing-mode: vertical-rl;
        -webkit-writing-mode: vertical-rl;
        text-orientation: sideways-right;
        -o-text-orientation: sideways-right;
        -ms-text-orientation: upright;
        -ms-text-orientation: sideways-right;
        -moz-text-orientation: sideways-right;
        -webkit-text-orientation: sideways-right;
        letter-spacing: 0.25em;
    }
    .flbox {
        display: flex;
    }
    section img {
        max-width: inherit;
    }
    #lead {
        padding: 145px 30px 150px;
        box-sizing: border-box;
        background: url(../img/lunch/lead-d2.png) no-repeat center top 700px;
    }
    #lead h2 {
        margin: 0 45px 0 0;
    }
    #lead::before {
        display: none;
    }
    #lead .inner {
        padding: 0;
    }
    #lead .inner1 {
        width: 100%;
        max-width: 1100px;
        margin: 0 auto 144px;
    }
    #lead .inner1 .fl1 {
        justify-content: flex-end;
    }
    #lead .inner1 .fl2 {
        justify-content: space-between;
        align-items: flex-end;
    }
    #lead .inner1 .fl2 .gr {
        width: 693px;
    }
    #lead .inner1 p.btn a {
        width: 250px;
        min-width: 250px;
        height: 250px;
        font-size: 18px;
        margin: 0 20px -116px -3px;
    }
    #lead .inner1 p.btn a::after {
        top: auto;
        bottom: 25px;
        width: 25px;
        height: 15px;
        transition: all 0.3s ease;
    }
    #lead .inner1 p.btn a:hover::after {
        background: url(../img/lunch/lead-arr_on.png) no-repeat center center /
            100% auto;
    }
    #lead .inner1 .fl2 h3 {
        font-size: 46px;
        margin: 35px 0 28px;
        letter-spacing: 0.05em;
        line-height: 1;
    }
    #lead .inner1 .fl2 .txt {
        letter-spacing: 0.05em;
    }

    #lead .inner2 .fl3 {
        align-items: flex-start;
    }
    #lead .inner2 .fade {
        order: 1;
        width: 879px;
        height: 580px;
        margin: 79px -148px 0 0;
    }
    #lead .inner2 .box {
        padding: 38px 60px 44px 75px;
        margin: 0 -93px 0 -70px;
        width: 445px;
        order: 0;
        position: relative;
        z-index: 1;
    }
    #lead .inner2 h3 {
        text-align: left;
    }
    #lead .inner2 h3 span {
        padding: 0px 50px;
        font-size: 20px;
    }
    #lead .inner2 .price-all {
        margin-top: 7px;
    }
    #lead .inner2 .price-all dd {
        margin-top: 19px;
    }
    #lead .inner2 .box ul {
        margin-top: 28px;
        padding-top: 28px;
    }
    #lead .inner2 .box ul li {
        padding-left: 18px;
    }
    #lead .inner2 .box ul li + li {
        margin-top: 15px;
    }

    #lead .inner2 .slick-slider .slick-dots button {
        width: 52px;
    }
    #lead .inner2 .slick-slider .slick-dots .slick-active button {
        width: 75px;
    }
    #lead .inner2 .slick-slider .slick-dots li {
        margin-bottom: 10px;
    }
    #lead .inner2 .slick-slider .slick-dots {
        bottom: 15px;
        left: 24px;
    }
    #more {
        padding: 149px 30px 129px;
        box-sizing: border-box;
    }
    #more h2 {
        font-size: 60px;
        line-height: 1;
    }
    #more h2 span::before {
        top: -61px;
        left: -19px;
        height: 136px;
        transform: rotate(45deg);
    }
    #more h2 + h3 {
        font-size: 24px;
        margin: 29px 0 60px;
        line-height: 1;
    }
    #more h2 + h3 + p.txt1 {
        text-align: center;
		font-size: 20px;
    }
    #more p.txt-sub1 {
        margin: 72px 0 37px;
    }
    #more .inner {
        padding: 0;
    }
    #more .inner .box {
        padding: 50px 50px;
        margin-top: 0;
    }
    #more .inner1 .box {
        width: 505px;
        margin: 0 -81px 0 0;
        padding: 50px 71px 47px;
    }
    #more .inner1 .pics {
        width: 806px;
        margin-left: -250px;
    }
    #more .inner1 h3 {
        text-align: left;
    }
    #more .inner h3 span {
        padding: 0px 50px;
        font-size: 20px;
    }
    #more .inner .price-all {
        margin-top: 2px;
    }
    #more .inner .price-all dd {
        margin-top: 20px;
    }
    #more .inner1 dt {
        white-space: nowrap;
    }
    #more .inner1 .flbox {
        justify-content: space-between;
    }
    #more .inner ul {
        margin-top: 28px;
        padding-top: 28px;
    }
    #more .inner ul li {
        padding-left: 19px;
    }
    #more .inner ul li + li {
        margin-top: 15px;
    }
    #more .inner2 ul li {
        padding-left: 0;
    }
    #more .inner3 ul li {
        padding-left: 0;
    }
    #more .inner ul li span {
        top: 0;
    }
    #more .inner1 ul {
        margin-bottom: 27px;
    }
    #more .inner1 ul + p.txt {
        margin-bottom: 53px;
        padding-left: 21px;
        line-height: 30px;
    }
    #more .inner1 p.btn a {
        line-height: 30px;
        padding: 19px 30px;
        font-size: 18px;
        letter-spacing: 0.2em;
        width: 314px;
    }
    #more .inner1 p.btn a::after {
        right: 28px;
        width: 23px;
        height: 23px;
        transition: all 0.3s ease;
        will-change: transform;
    }
    #more .inner1 p.btn a:hover::after {
        background: url(../img/lunch/more-arr_on.png) no-repeat center center /
            100% auto;
    }
    #more .inner1 p.img2 {
        width: 500px;
        margin: 18px 0 0 auto;
        text-align: right;
    }
    #more .inner2 {
        margin: 125px auto 29px;
        width: 100%;
        max-width: 1440px;
    }
    #more .inner2 > .flbox {
        justify-content: space-between;
    }
    #more .inner2 .box {
        width: 530px;
        padding: 50px 85px 35px;
    }
    #more .inner2 p.img {
        display: inline-table;
    }
    #more .inner3 {
        margin-left: auto;
        margin-right: auto;
        width: 100%;
        max-width: 1440px;
    }
    #more .inner3 p.img {
        display: inline-table;
    }
    #more .inner3 .box {
        padding: 50px 50px;
        width: 530px;
        min-width: 530px;
        order: 0;
    }
    #more .inner3 p.img {
        order: 1;
    }
    #more .inner4 {
        width: 100%;
        max-width: 1150px;
        margin: 130px auto 0px;
    }
    #more .inner4 .flbox {
        justify-content: space-between;
        align-items: flex-start;
    }
    #more .inner4 .box {
        width: 400px;
        min-width: 400px;
        margin: 19px 0 0 -75px;
        z-index: 1;
        position: relative;
        padding: 39px 60px 72px;
    }
    #more .inner4 h3 {
        text-align: left;
    }
    #more .inner4 .price-all {
        text-align: left;
    }

    #more .inner4 ul {
        padding-top: 35px;
    }
    #more .inner4 .img {
        margin-left: -75px;
    }
    #more .row .col {
        margin-bottom: 165px;
        padding: 0 105px;
        box-sizing: border-box;
    }
    #more .row .col h3 {
        margin-bottom: 1px;
        font-size: 20px;
        letter-spacing: 0.15em;
    }
    #more .row .wrap > p.img {
        margin: 0 -50px;
    }
    #more .row .card {
        padding: 38px 50px 32px;
        margin-top: 20px;
    }
    #more .row .card h3 {
        text-align: left;
    }
    #more .row .card h3 span {
        padding: 0 30px;
        font-size: 20px;
    }
    #more .row .card .price-all {
        margin: 5px 0 0;
    }

    #more .row .card .box {
        width: 362px;
        border: 0;
        border-right: 1px solid #ccc;
        padding: 25px 0 29px 0;
        margin: 0 50px 0 0;
    }
    #more .row .card .menu-ul {
        display: flex;
        justify-content: space-between;
        width: 475px;
        margin-top: 14px;
    }
    #more .row .card ul li {
        letter-spacing: 0.15em;
    }
    #more .row .card ul li + li {
        margin-top: 16px;
    }
    #lunch_box {
        background: url(../img/lunch/lunch_box-d1.png) no-repeat center top,
            url(../img/lunch/lunch_box-bg.jpg);
        padding: 156px 0 110px;
    }
    #lunch_box h2 {
        font-size: 30px;
        line-height: 3;
    }
	    #lunch_box h2 span{
        font-size: 60px;
        line-height: 1;
    }

    #lunch_box h2 span::before {
        top: -136px;
        left: -42px;
        height: 143px;
        transform: rotate(45deg);
    }
    #lunch_box h2 + p.txt-sub {
        margin: 30px 0 55px;
        font-size: 24px;
        line-height: 1;
    }
    #lunch_box p.txt-sub + p.txt {
        margin-bottom: 91px;
        text-align: center;
    }
    #lunch_box .fl1 {
        justify-content: space-between;
    }
    #lunch_box .fl1 .box {
        width: 440px;
        margin: 59px 0 0 60px;
    }
    #lunch_box .fl1 p.img {
        margin-left: -181px;
    }
    #lunch_box .fl1 dl {
        margin: 0 0 46px;
        text-align: left;
    }
    #lunch_box .fl1 dt small {
        font-size: 26px;
        margin-bottom: -3px;
    }
    #lunch_box .fl1 dt {
        font-size: 36px;
        margin-bottom: 0;
    }
    #lunch_box .fl1 dd {
        font-size: 30px;
        line-height: 1;
        text-align: right;
    }
    #lunch_box .fl1 dd small {
        font-size: 22px;
    }
    #lunch_box .fl2 {
        margin: 93px 0 0;
    }
    #lunch_box .fl2 p.img {
        margin: 0;
        order: 1;
        position: relative;
        z-index: 5;
        display: inline-table;
    }
    #lunch_box .fl2 dl {
        margin: 162px 33px 0 58px;
        text-align: left;
        order: 0;
        white-space: nowrap;
    }
    #lunch_box .fl2 dt {
        font-size: 36px;
        letter-spacing: 0.2em;
        line-height: 1;
    }
    #lunch_box .fl2 dd {
        font-size: 26px;
        text-align: right;
        letter-spacing: 0.2em;
        line-height: 1;
        margin: 14px -16px 0 0;
    }
    #lunch_box .fl3 {
        margin: -102px 0 134px;
        justify-content: flex-end;
    }
    #lunch_box .fl3 p.txt {
        width: 450px;
        min-width: 450px;
        margin: 164px 21px 0 56px;
    }
    #lunch_box .fl3 p.img {
        margin-bottom: 0;
        display: inline-table;
    }
    #lunch_box .row-1 > p.img {
        margin-bottom: 20px;
    }
    #lunch_box .row-1 .fl4 {
        justify-content: space-between;
    }
    #lunch_box .row-1 .fl4 p + p {
        margin: 0;
    }
    #lunch_box .row-1 .fl5 {
        margin: 35px 0 89px;
        justify-content: space-between;
        align-items: center;
    }
    #lunch_box .row-1 .fl5 p.price {
        font-size: 36px;
        letter-spacing: 0.15em;
        margin: 0;
        width: 516px;
    }
    #lunch_box .row-1 .fl5 p.price small {
        font-size: 26px;
    }
    #lunch_box .row-1 .fl5 p.txt {
        width: 445px;
        margin-right: 20px;
    }
    #lunch_box .row-1 .col {
        padding: 51px 0 51px;
        width: 701px;
        margin: 0 auto;
    }
    #lunch_box .row-1 .col p.tel {
        font-size: 20.82px;
    }
    #lunch_box .row-1 .col p.tel .cl {
        font-size: 45px;
        line-height: 1;
        letter-spacing: 0;
        margin-bottom: 10px;
    }
    #lunch_box .row-1 .col p.tel i {
        line-height: 1;
        display: block;
        margin: -3px 12px 0 0;
        width: auto;
    }
    #lunch_box .row-1 .col p.tel small {
        font-size: 16px;
        letter-spacing: 0.15em;
    }
    #lunch_box .row-1 .col p.btn a {
        padding: 18px 0;
        font-size: 24px;
        letter-spacing: 0.15em;
    }
    #lunch_box .row-1 .col p.btn {
        width: 360px;
        margin: 37px auto 0;
    }
    #lunch_box .row-1 .col p.btn i {
        margin: 0 10px 0 0;
        position: relative;
        top: -3px;
        background: url(../img/lunch/lunch_box-ic.png) no-repeat center center /
            100% auto;
        transition: all 0.3s ease;
    }
    #lunch_box .row-1 .col p.btn i img {
        opacity: 0;
    }
    #lunch_box .row-1 .col p.btn a:hover i {
        background: url(../img/lunch/lunch_box-ic_on.png) no-repeat center
            center / 100% auto;
    }
    #faq {
        background: transparent;
        padding: 89px 30px 91px;
        box-sizing: border-box;
    }
    #faq .inner {
        background: url(../img/private/course-bg.jpg);
        width: 100%;
        max-width: 1300px;
        margin: 0 auto;
        padding: 137px 0 87px;
    }
    #faq .inner .wrap {
        padding: 0 50px;
        box-sizing: border-box;
    }
    #faq h2 {
        font-size: 60px;
        line-height: 1;
    }
    #faq h2 span::before {
        top: -66px;
        left: 0;
        height: 139px;
        transform: rotate(45deg);
    }
    #faq h3 {
        margin: 27px 0 85px;
        font-size: 24px;
    }
    #faq dl {
        padding: 49px 0 41px;
    }
    #faq dt span {
        width: 59px;
        min-width: 59px;
        height: 59px;
        font-size: 25px;
        margin: -9px 21px 0 0;
    }
    #faq dt {
        font-size: 22px;
        letter-spacing: 0.15em;
        line-height: 40px;
    }
    #faq dd {
        margin: 30px 0 0 30px;
        font-size: 18px;
        letter-spacing: 0.15em;
        line-height: 40px;
    }
    #faq dd span {
        width: 59px;
        min-width: 59px;
        height: 59px;
        font-size: 25px;
        margin: -9px 21px 0 0;
    }
}


@media screen and (max-width: 1300px) and (min-width: 768px){
    #more .inner2{
        max-width: 1200px;
    }
    #more .inner2 p.img{
        margin-left: -270px;
    }
}