@charset "UTF-8";

/*===============================================
●mian.css 画面の横幅が770px以上
===============================================*/
@media screen and (min-width: 770px) {
    body {
        background-size: 100%;
        color: #000;
        font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Yu Gothic Medium", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ', Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
        font-size: 16px;
        line-height: 34px;
        min-width: 1200px;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }

    /*=========================
▼▼共通▼▼
===========================*/
    img,
    a {
        display: block;
        width: 100%;
    }

    .pc_none {
        display: none;
    }

    .auto {
        width: 1200px;
        margin: 0 auto;
    }

    input[type="image"],
    input[type="submit"],
    input[type="button"],
    button {
        cursor: pointer;
    }

    .barlow {
        font-family: 'Barlow Semi Condensed', sans-serif;
        font-weight: 500;
        letter-spacing: .05em;
        -webkit-font-smoothing: subpixel-antialiased;
        -moz-osx-font-smoothing: auto;
    }

    section {
        width: 100%;
        float: left;
        clear: both;
        position: relative;
    }

    .btn a {
        width: 100%;
        font-size: 15px;
        line-height: 1.5;
        color: #000;
        text-align: center;
        padding: 18px 0 17px;
        border: 1px solid #000;
        background-color: #fff;
        position: relative;
        transition-duration: .3s;
    }

    .btn a:hover {
        color: #fff;
        background-color: #000;
    }

    .btn a::after {
        content: "";
        display: block;
        width: 54px;
        height: 9px;
        background-image: url("../img/share/icon_arrow_01.png");
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain;
        position: absolute;
        top: 25px;
        right: -15px;
        transition-duration: .3s;
    }

    .btn a:hover::after {
        background-image: url("../img/share/icon_arrow_01w.png");
        right: 10px;
    }

    .title_box h3 {
        font-size: 37px;
        line-height: 1.3;
        margin-bottom: 8px;
    }

    .title_box p {
        font-size: 13px;
        line-height: 1.5;
        font-weight: bold;
    }

    /*=========================
▲▲共通▲▲
===========================*/
    #container {
        width: 100%;
        clear: both;
        float: left;
    }

    header {
        width: 100%;
        float: left;
        clear: both;
    }

    header .auto {
        height: 107px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    header h1 {
        width: 224px;
        margin: auto auto auto 0;
    }

    header .pc_navi {
        width: 650px;
        font-size: 10px;
        line-height: 1.4;
        letter-spacing: .09em;
        margin: auto 0 auto auto;
    }

    header .pc_navi ul {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        text-align: center;
    }

    header .pc_navi ul li a {
        position: relative;
        padding: 20px 0 20px;
        color: #afafaf;
        font-weight: bold;
    }

    header .pc_navi ul li a::after {
        position: absolute;
        bottom: -15px;
        left: 0;
        content: '';
        width: 0;
        height: 7px;
        background-color: #f18b2c;
        transition: .3s;
    }

    header .pc_navi ul li a:hover::after {
        width: 100%;
    }

    header .pc_navi span {
        font-size: 17px;
        color: #000;
    }

    #subpage_main {
        width: 100%;
        float: left;
        clear: both;
        text-align: center;
    }

    #subpage_main .main_img_bg {
        width: 100%;
        height: 366px;
        border-bottom: 16px solid #e1e1e1;
        background-repeat: no-repeat;
        background-position: center center;
        background-size: cover;
        margin-bottom: 43px;
    }

    #subpage_main .page_title {
        position: relative;
        color: #ee7a33;
        padding-bottom: 76px;
    }

    #subpage_main .page_title::after {
        content: "";
        display: block;
        width: 2px;
        height: 64px;
        background-color: #ee7a33;
        position: absolute;
        bottom: 0;
        left: 50%;
        margin-left: -1px;
    }

    #subpage_main .page_title h2 {
        font-size: 50px;
        line-height: 1.3;
        letter-spacing: .07em;
        margin-bottom: 1px;
    }

    #subpage_main .page_title .jp_text {
        font-size: 13px;
        line-height: 1.5;
    }

    #contents {
        width: 100%;
        min-width: 1200px;
        clear: both;
        float: left;
        margin-bottom: 200px;
    }

    #conts_contact {
        width: 100%;
        color: #fff;
        padding: 88px 0 90px;
        text-align: center;
        background: #ee7a33;
        background: -moz-linear-gradient(left, #ee7a33 0%, #eea133 100%);
        background: -webkit-linear-gradient(left, #ee7a33 0%, #eea133 100%);
        background: linear-gradient(to right, #ee7a33 0%, #eea133 100%);
    }

    #conts_contact h2 {
        font-size: 37px;
        font-weight: 500;
        line-height: 1.3;
        margin-bottom: 12px;
    }

    #conts_contact .text {
        line-height: 30px;
        margin-bottom: 29px;
    }

    #conts_contact .btn {
        width: 295px;
        margin: 0 auto;
    }

    #conts_contact .btn a {
        border: none;
        padding: 21px 0 20px;
        font-size: 16px;
    }

    #conts_contact .btn a::after {
        top: 29px;
    }

    footer {
        width: 100%;
        clear: both;
        float: left;
        padding-top: 55px;
        padding-bottom: 49px;
    }

    footer .auto {
        width: 1070px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    footer .left_box {
        width: 645px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    footer .left_box .footer_logo {
        width: 115px;
        margin: auto 70px auto 0;
    }

    footer .left_box .footer_navi {
        width: 465px;
        font-size: 15px;
        line-height: 1.5;
        letter-spacing: .07em;
        margin: auto auto auto 0;
    }

    footer .left_box .footer_navi ul {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    footer .left_box .footer_navi ul li {
        width: 158px;
        display: inline-block;
    }

    footer .left_box .footer_navi ul li:nth-of-type(2),
    footer .left_box .footer_navi ul li:nth-of-type(5) {
        width: 157px;
    }

    footer .left_box .footer_navi ul li:nth-of-type(3n) {
        width: 145px;
        margin-right: 0;
    }

    footer .left_box .footer_navi ul li a {
        width: auto;
        display: inline-block;
        padding: 13px 0 13px;
        position: relative;
    }

    footer .left_box .footer_navi ul li a::after {
        position: absolute;
        bottom: 6px;
        left: 0;
        content: '';
        width: 0;
        height: 1px;
        background-color: #000;
        transition: .3s;
    }

    footer .left_box .footer_navi ul li a:hover::after {
        width: 100%;
    }

    footer .left_box .footer_navi ul li a::before {
        content: "";
        width: 10px;
        height: 1px;
        background-color: #000;
        display: inline-block;
        vertical-align: middle;
        margin-bottom: 3px;
        margin-right: 8px;
    }

    footer .right_box {
        width: 300px;
        padding-top: 28px;
        margin: auto 0 0 auto;
    }

    footer .right_box .sns_link {
        width: 220px;
        margin-left: 20px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin-bottom: 22px;
    }

    footer .right_box .sns_link li {
        width: 44px;
        height: 44px;
    }

    footer .right_box .sns_link li a {
        width: 100%;
        height: 100%;
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain;
        transition-duration: .3s;
    }

    footer .right_box .sns_link li:first-of-type a {
        background-image: url("../img/share/icon_sns_ig.png");
    }

    footer .right_box .sns_link li:first-of-type a:hover {
        background-image: url("../img/share/icon_sns_ig_on.png");
    }

    footer .right_box .sns_link li:nth-of-type(2) a {
        background-image: url("../img/share/icon_sns_tw.png");
    }

    footer .right_box .sns_link li:nth-of-type(2) a:hover {
        background-image: url("../img/share/icon_sns_tw_on.png");
    }

    footer .right_box .sns_link li:nth-of-type(3) a {
        background-image: url("../img/share/icon_sns_fb.png");
    }

    footer .right_box .sns_link li:nth-of-type(3) a:hover {
        background-image: url("../img/share/icon_sns_fb_on.png");
    }

    footer .right_box .sns_link li:nth-of-type(4) a {
        background-image: url("../img/share/icon_sns_yt.png");
    }

    footer .right_box .sns_link li:nth-of-type(4) a:hover {
        background-image: url("../img/share/icon_sns_yt_on.png");
    }

    footer .right_box .copy {
        font-size: 11px;
        line-height: 1.5;
        text-align: right;
        color: #bebebe;
        letter-spacing: .07em;
    }

    #back-top {
        display: none;
        bottom: 150px;
        right: 30px;
        clear: both;
        float: left;
        position: fixed;
        width: 86px;
        height: auto;
        z-index: 99;
    }
}
