@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/css?family=Noto+Serif);
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    font-size: 100%;
    vertical-align: baseline;
}
html {
    line-height: 1;
}
ol, ul {
    list-style: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
caption, th, td {
    text-align: left;
    font-weight: normal;
    vertical-align: middle;
}
q, blockquote {
    quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
    content: "";
    content: none;
}
a img {
    border: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
    display: block;
}
html {
    font-size: 62.5%;
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}
body {
    margin-top: 110px;
    color: #30302c;
}
@media only screen and (max-width: 860px) {
    body {
        margin-top: 55px;
    }
}
#wrap {
    min-width: 1000px;
}
@media only screen and (max-width: 860px) {
    #wrap {
        min-width: 0;
    }
}
* {
    font-size: 14px;
    font-size: 1.4rem;
    box-sizing: border-box;
}
img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}
a {
    color: inherit;
    text-decoration: none;
    -webkit-transition: 0.4s;
    -moz-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
}
@media only screen and (min-width: 860px) {
    a:hover {
        opacity: .7;
    }
}
b {
    font-weight: bold;
}
@media only screen and (max-width: 860px) {
    .pc {
        display: none !important;
    }
}
@media only screen and (min-width: 860px) {
    .sp {
        display: none !important;
    }
}
.inner, .inner1200 {
    max-width: 1100px;
    padding: 0 50px;
    margin: 0 auto;
}
@media only screen and (max-width: 860px) {
    .inner, .inner1200 {
        width: 100%;
        padding: 0 20px;
    }
}
.inner1200 {
    max-width: 1300px;
}
.row {
    *zoom: 1;
}
.row:after {
    content: "";
    display: table;
    clear: both;
}
.googlemap {
    padding: 0 50px;
    height: 460px;
}
@media only screen and (max-width: 860px) {
    .googlemap {
        padding: 0;
        height: 200px;
    }
}
/* = Selected Text
----------------------------------------------- */
::selection {
    background: #cccde5;
    /* Safari */
}
::-moz-selection {
    background: #cccde5;
    /* Firefox */
}
.animation01 {
    opacity: 0;
    transition: 1.7s;
}
.animation01.is-active {
    opacity: 1;
}
.hoverOpacity, body.confirm .btn_correct {
    cursor: pointer;
    opacity: 1;
    transition: opacity 0.3s;
    -webkit-backface-visibility: hidden;
}
.hoverOpacity:hover, body.confirm .btn_correct:hover {
    opacity: 0.6;
}
footer .inner, footer .inner1200 {
    width: 1000px;
    padding: 0;
}
@media only screen and (max-width: 1040px) {
    footer .inner, footer .inner1200 {
        padding: 0 20px;
        width: 100%;
    }
}
@media only screen and (max-width: 860px) {
    footer .inner, footer .inner1200 {
        width: 100%;
    }
    footer .inner:nth-child(1), footer .inner1200:nth-child(1), footer .inner:nth-child(3), footer .inner1200:nth-child(3) {
        padding: 0 35px;
    }
    footer .inner:nth-child(4), footer .inner1200:nth-child(4) {
        padding: 0;
    }
}
footer .inner .brand, footer .inner1200 .brand {
    padding-top: 70px;
    text-align: center;
}
@media only screen and (max-width: 860px) {
    footer .inner .brand, footer .inner1200 .brand {
        padding-top: 35px;
        padding-bottom: 30px;
        text-align: left;
        border-bottom: 1px solid #d9d9d9;
    }
}
footer .inner .brand a, footer .inner1200 .brand a {
    transition: 0.3s;
}
footer .inner .brand a:hover, footer .inner1200 .brand a:hover {
    opacity: 0.6;
}
@media only screen and (max-width: 860px) {
    footer .inner .brand a, footer .inner1200 .brand a {
        display: block;
    }
}
footer .inner .brand a img, footer .inner1200 .brand a img {
    width: 139px;
    height: auto;
}
@media only screen and (max-width: 860px) {
    footer .inner .brand a img, footer .inner1200 .brand a img {
        width: 250px;
    }
}
footer .inner nav, footer .inner1200 nav {
    margin-top: 65px;
}
@media only screen and (max-width: 860px) {
    footer .inner nav, footer .inner1200 nav {
        margin-top: 30px;
    }
}
footer .inner nav ul, footer .inner1200 nav ul {
    font-size: 0;
    text-align: center;
}
footer .inner nav ul li, footer .inner1200 nav ul li {
    display: inline-block;
    vertical-align: middle;
    margin: 0 30px;
}
@media only screen and (max-width: 860px) {
    footer .inner nav ul li, footer .inner1200 nav ul li {
        margin: 0 0;
        width: 50%;
        border-top: 1px solid #30302c;
        border-left: 1px solid #30302c;
    }
    footer .inner nav ul li:nth-child(odd), footer .inner1200 nav ul li:nth-child(odd) {
        border-left: none;
    }
}
footer .inner nav ul li:first-child, footer .inner1200 nav ul li:first-child {
    margin-left: 0;
}
footer .inner nav ul li:last-child, footer .inner1200 nav ul li:last-child {
    margin-right: 0;
}
footer .inner nav ul li a, footer .inner1200 nav ul li a {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    transition: 0.3s;
}
footer .inner nav ul li a:hover, footer .inner1200 nav ul li a:hover {
    opacity: 0.6;
}
@media only screen and (max-width: 860px) {
    footer .inner nav ul li a, footer .inner1200 nav ul li a {
        font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
        font-size: 12px;
        font-size: 1.2rem;
        text-align: left;
        padding: 13px 0;
        padding-left: 37px;
        position: relative;
    }
    footer .inner nav ul li a:before, footer .inner1200 nav ul li a:before {
        content: "";
        position: absolute;
        width: 0;
        height: 0;
        top: 0;
        bottom: 0;
        left: 22px;
        margin: auto;
        border-style: solid;
        border-width: 3.8px 0 3.8px 3.8px;
        border-color: transparent transparent transparent #30302c;
    }
}
footer .inner .bases, footer .inner1200 .bases {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    padding: 0 50px;
    margin-top: 80px;
}
@media only screen and (max-width: 860px) {
    footer .inner .bases, footer .inner1200 .bases {
        padding: 0;
        display: block;
        margin-top: 35px;
    }
}
@media only screen and (max-width: 860px) {
    footer .inner .bases li, footer .inner1200 .bases li {
        padding-top: 40px;
        position: relative;
    }
    footer .inner .bases li:before, footer .inner1200 .bases li:before {
        content: "";
        width: 25px;
        height: 1px;
        background: #30302c;
        position: absolute;
        top: 17px;
        left: 0;
    }
    footer .inner .bases li:first-child, footer .inner1200 .bases li:first-child {
        padding-top: 0;
    }
    footer .inner .bases li:first-child:before, footer .inner1200 .bases li:first-child:before {
        content: none;
    }
}
footer .inner .bases li:nth-child(1), footer .inner1200 .bases li:nth-child(1) {
    width: 30%;
}
@media only screen and (max-width: 860px) {
    footer .inner .bases li:nth-child(1), footer .inner1200 .bases li:nth-child(1) {
        width: 100%;
    }
}
footer .inner .bases li:nth-child(2), footer .inner1200 .bases li:nth-child(2) {
    width: 24%;
}
@media only screen and (max-width: 860px) {
    footer .inner .bases li:nth-child(2), footer .inner1200 .bases li:nth-child(2) {
        width: 100%;
    }
}
footer .inner .bases li:nth-child(3), footer .inner1200 .bases li:nth-child(3) {
    width: 34%;
}
@media only screen and (max-width: 860px) {
    footer .inner .bases li:nth-child(3), footer .inner1200 .bases li:nth-child(3) {
        width: 100%;
    }
}
footer .inner .bases li .name, footer .inner1200 .bases li .name {
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: bold;
}
footer .inner .bases li .border, footer .inner1200 .bases li .border {
    margin-top: 20px;
    display: block;
    width: 20px;
    height: 1px;
    background: #30302c;
}
footer .inner .bases li address, footer .inner1200 .bases li address {
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.714285714;
    margin-top: 18px;
}
@media only screen and (min-width: 860px) {
    footer .inner .bases li address span.padding, footer .inner1200 .bases li address span.padding {
        padding-left: 40px;
    }
}
@media only screen and (max-width: 860px) {
    footer .inner .bases li address .sp-padding, footer .inner1200 .bases li address .sp-padding {
        padding-left: 30px;
    }
}
@media only screen and (max-width: 860px) {
    footer .inner .bases li address, footer .inner1200 .bases li address {
        margin-top: 10px;
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 1.5em;
    }
}
footer .inner .company-desc, footer .inner1200 .company-desc {
    display: none;
    margin-top: 50px;
    padding: 35px 0;
    border-top: 1px solid #d9d9d9;
    border-bottom: 1px solid #d9d9d9;
}
@media only screen and (max-width: 860px) {
    footer .inner .company-desc, footer .inner1200 .company-desc {
        margin-top: 0;
        padding: 38px 20px 20px;
        background: #30302c;
        border: none;
    }
}
footer .inner .company-desc p, footer .inner1200 .company-desc p {
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 2;
}
@media only screen and (max-width: 860px) {
    footer .inner .company-desc p, footer .inner1200 .company-desc p {
        color: #fff;
        font-size: 10px;
        font-size: 1rem;
    }
}
footer .copyright {
    background: #30302c;
    margin-top: 50px;
}
@media only screen and (max-width: 860px) {
    footer .copyright {
        margin-top: -1px;
    }
}
footer .copyright p {
    text-align: center;
    color: #fff;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    letter-spacing: 0.05em;
    font-size: 12px;
    font-size: 1.2rem;
    padding: 35px 0;
}
@media only screen and (max-width: 860px) {
    footer .copyright p {
        padding: 12px 15px 35px;
    }
}




.topBtn {
    width: 50px;
    height: 50px;
    background: #30302c;
    position: fixed;
    right: 50px;
    bottom: 110px;
    opacity: 0;
}
@media only screen and (max-width: 860px) {
    .topBtn {
        width: 40px;
        height: 40px;
        right: 15px;
        bottom: 30px;
    }
}
.topBtn.active {
    opacity: .7;
}
.topBtn:before {
    content: "";
    width: 8px;
    height: 26px;
    display: inline-block;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background: url(../images/common/arrow.png) center center/cover no-repeat;
}
@media only screen and (max-width: 860px) {
    .topBtn:before {
        width: 7px;
        height: 21px;
    }
}






.crowdfunding {
    width: 450px;
    height: 252px;
    position: fixed;
    right: 24px;
    bottom: 8px;
    z-index: 100;
}
.crowdfunding .close {
    width: 24px;
    height: 24px;
    position: absolute;
    right: 0px;
    top: -26px;
    cursor:pointer;
}
.crowdfunding .close img {
    width: 24px;
    height: 24px;
}
.crowdfunding .banner {
    width: 450px;
    height: 252px;
}
.crowdfunding .banner img {
    width: 450px;
    height: 252px;
}



@media only screen and (max-width: 860px) {
.crowdfunding {
        width: 70vw;
    height: 39vw;
        right: 8px;
        bottom: 8px;
    }
.crowdfunding .banner {
        width: 70vw;
}
.crowdfunding .banner img {
        width: 70vw;
    height: auto;
}
.crowdfunding .close {
    width: 24px;
    height: 24px;
    position: absolute;
    right: 0px;
    top: -26px;
    cursor:pointer;
}
}










header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 110px;
    background: #30302c;
    z-index: 9999;
}
@media only screen and (max-width: 909px) {
    header {
        min-width: 909px;
    }
}
@media only screen and (max-width: 860px) {
    header {
        min-width: 100%;
        height: 55px;
    }
}
header .inner .brand, header .inner1200 .brand {
    float: left;
    margin: 35px 0;
}
@media only screen and (max-width: 860px) {
    header .inner .brand, header .inner1200 .brand {
        margin: 13.5px 0;
    }
}
header .inner .brand a, header .inner1200 .brand a {
    display: block;
    transition: 0.3s;
}
header .inner .brand a:hover, header .inner1200 .brand a:hover {
    opacity: 0.6;
}
header .inner .brand a img, header .inner1200 .brand a img {
    width: 180px;
    height: auto;
}
@media only screen and (max-width: 860px) {
    header .inner .brand a img, header .inner1200 .brand a img {
        width: 125px;
    }
}
header .inner .right, header .inner1200 .right {
    float: right;
}
header .inner .right .upper, header .inner1200 .right .upper {
    text-align: right;
    font-size: 0;
    margin-top: 18px;
}
@media only screen and (max-width: 860px) {
    header .inner .right .upper, header .inner1200 .right .upper {
        margin-top: 0;
    }
}
header .inner .right .upper h1, header .inner1200 .right .upper h1 {
    vertical-align: middle;
    display: inline-block;
    font-size: 10px;
    font-size: 1rem;
    color: #96968c;
    margin-right: 33px;
}
header .inner .right .upper ul.pc, header .inner1200 .right .upper ul.pc {
    vertical-align: middle;
    display: inline-block;
}
header .inner .right .upper ul.pc li, header .inner1200 .right .upper ul.pc li {
    vertical-align: middle;
    display: inline-block;
}
header .inner .right .upper ul.pc li a, header .inner1200 .right .upper ul.pc li a {
    display: block;
    color: #fff;
    transition: 0.3s;
    font-weight: 100;
}
header .inner .right .upper ul.pc li a:hover, header .inner1200 .right .upper ul.pc li a:hover {
    opacity: 0.6;
}
header .inner .right .upper ul.pc li:nth-child(1), header .inner1200 .right .upper ul.pc li:nth-child(1) {
    margin-right: 27px;
}
header .inner .right .upper ul.pc li:nth-child(1) a, header .inner1200 .right .upper ul.pc li:nth-child(1) a {
    font-size: 13px;
    font-size: 1.3rem;
    padding-left: 7px;
    position: relative;
    font-weight: 100;
}
header .inner .right .upper ul.pc li:nth-child(1) a:before, header .inner1200 .right .upper ul.pc li:nth-child(1) a:before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    border-style: solid;
    border-width: 4px 0 4px 3px;
    border-color: transparent transparent transparent #ffffff;
}
header .inner .right .upper ul.pc li:nth-child(2) a, header .inner1200 .right .upper ul.pc li:nth-child(2) a {
    letter-spacing: 0.05em;
    padding: 12px 20px 12px 13px;
    background: #fff;
    font-weight: 100;
}
header .inner .right .upper ul.pc li:nth-child(2) a img, header .inner1200 .right .upper ul.pc li:nth-child(2) a img {
    width: 14px;
    height: 11px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 15px;
    position: relative;
    top: 1px;
}
header .inner .right .upper ul.pc li:nth-child(2) a span, header .inner1200 .right .upper ul.pc li:nth-child(2) a span {
    font-size: 13px;
    font-size: 1.3rem;
    color: #30302c;
    display: inline-block;
    vertical-align: middle;
}
header .inner .right .upper ul.sp, header .inner1200 .right .upper ul.sp {
    vertical-align: middle;
    display: inline-block;
    font-size: 0;
    margin-right: -20px;
}
header .inner .right .upper ul.sp li, header .inner1200 .right .upper ul.sp li {
    vertical-align: middle;
    display: inline-block;
}
header .inner .right .upper ul.sp li a, header .inner1200 .right .upper ul.sp li a {
    vertical-align: top;
    display: inline-block;
    width: 55px;
    height: 55px;
    position: relative;
    text-align: center;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}
header .inner .right .upper ul.sp li a:hover, header .inner1200 .right .upper ul.sp li a:hover {
    opacity: 0.6;
}
header .inner .right .upper ul.sp li a:nth-child(1), header .inner1200 .right .upper ul.sp li a:nth-child(1) {
    background-image: url(../images/common/header_contact_bg.png);
    background-size: 100%;
    padding: 12.5px 0;
}
header .inner .right .upper ul.sp li a:nth-child(1) img, header .inner1200 .right .upper ul.sp li a:nth-child(1) img {
    width: 33.5px;
    height: auto;
}
@media only screen and (max-width: 860px) {
    header .inner .right .upper ul.sp li a:nth-child(2), header .inner1200 .right .upper ul.sp li a:nth-child(2) {
        background: #151514;
    }
}
header .inner .right .upper ul.sp li a:nth-child(2) .menus span, header .inner1200 .right .upper ul.sp li a:nth-child(2) .menus span {
    position: absolute;
    width: 22px;
    height: 2px;
    background: #fff;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}
header .inner .right .upper ul.sp li a:nth-child(2) .menus span:nth-child(1), header .inner1200 .right .upper ul.sp li a:nth-child(2) .menus span:nth-child(1) {
    top: -25px;
}
header .inner .right .upper ul.sp li a:nth-child(2) .menus span:nth-child(2), header .inner1200 .right .upper ul.sp li a:nth-child(2) .menus span:nth-child(2) {
    top: -12px;
}
header .inner .right .upper ul.sp li a:nth-child(2) .menus span:nth-child(3), header .inner1200 .right .upper ul.sp li a:nth-child(2) .menus span:nth-child(3) {
    top: 2px;
}
header .inner .right .upper ul.sp li a:nth-child(2) img, header .inner1200 .right .upper ul.sp li a:nth-child(2) img {
    height: 7.5px;
    position: absolute;
    bottom: 12.5px;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}
header .inner .right .upper ul.sp li a:nth-child(2) img.o, header .inner1200 .right .upper ul.sp li a:nth-child(2) img.o {
    opacity: 1;
}
header .inner .right .upper ul.sp li a:nth-child(2) img.c, header .inner1200 .right .upper ul.sp li a:nth-child(2) img.c {
    opacity: 0;
}
header .inner .right .upper ul.sp li a:nth-child(2).on, header .inner1200 .right .upper ul.sp li a:nth-child(2).on {
    background: #000;
}
header .inner .right .upper ul.sp li a:nth-child(2).on .menus span:nth-child(1), header .inner1200 .right .upper ul.sp li a:nth-child(2).on .menus span:nth-child(1) {
    top: -12px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}
header .inner .right .upper ul.sp li a:nth-child(2).on .menus span:nth-child(2), header .inner1200 .right .upper ul.sp li a:nth-child(2).on .menus span:nth-child(2) {
    top: -12px;
    opacity: 0;
}
header .inner .right .upper ul.sp li a:nth-child(2).on .menus span:nth-child(3), header .inner1200 .right .upper ul.sp li a:nth-child(2).on .menus span:nth-child(3) {
    top: -12px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
header .inner .right .upper ul.sp li a:nth-child(2).on img.o, header .inner1200 .right .upper ul.sp li a:nth-child(2).on img.o {
    opacity: 0;
}
header .inner .right .upper ul.sp li a:nth-child(2).on img.c, header .inner1200 .right .upper ul.sp li a:nth-child(2).on img.c {
    opacity: 1;
}
header .inner .right .bottom, header .inner1200 .right .bottom {
    text-align: right;
    font-size: 0;
    margin-top: 18px;
}
@media only screen and (max-width: 860px) {
    header .inner .right .bottom, header .inner1200 .right .bottom {
        display: none;
    }
}
header .inner .right .bottom nav, header .inner1200 .right .bottom nav {
    vertical-align: middle;
    display: inline-block;
}
header .inner .right .bottom nav ul li, header .inner1200 .right .bottom nav ul li {
    display: inline-block;
    vertical-align: middle;
    margin-left: 55px;
}
@media only screen and (max-width: 863px) {
    header .inner .right .bottom nav ul li, header .inner1200 .right .bottom nav ul li {
        margin-left: 54px;
    }
}
header .inner .right .bottom nav ul li:first-child, header .inner1200 .right .bottom nav ul li:first-child {
    margin-left: 0;
}
header .inner .right .bottom nav ul li a, header .inner1200 .right .bottom nav ul li a {
    display: block;
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    color: #fff;
    transition: 0.3s;
    font-weight: 100;
}
header .inner .right .bottom nav ul li a:hover, header .inner1200 .right .bottom nav ul li a:hover {
    opacity: 0.6;
}
.sp-menu-whole {
    display: none;
    overflow-x: scroll;
    position: fixed;
    top: 55px;
    left: 0;
    width: 100%;
    height: calc(100% - 55px);
    background: rgba(24, 24, 22, 0.95);
    z-index: 9999;
}
.sp-menu-whole ul {
    padding: 0 55px;
    margin-top: 76px;
}
@media only screen and (max-width: 320px) {
    .sp-menu-whole ul {
        margin-top: 10px;
        padding: 0 30px;
    }
}
.sp-menu-whole ul li {
    border-bottom: 1px solid #474747;
    background-image: url(../images/common/sp_menu_labels.png);
    background-repeat: no-repeat;
    background-size: auto 480px;
    background-position: right top 23px;
}
@media only screen and (max-width: 320px) {
    .sp-menu-whole ul li {
        background-size: auto 400px;
    }
}
.sp-menu-whole ul li:nth-child(2) {
    background-position: right top -55px;
}
@media only screen and (max-width: 320px) {
    .sp-menu-whole ul li:nth-child(2) {
        background-position: right top -42px;
    }
}
.sp-menu-whole ul li:nth-child(3) {
    background-position: right top -134px;
}
@media only screen and (max-width: 320px) {
    .sp-menu-whole ul li:nth-child(3) {
        background-position: right top -108px;
    }
}
.sp-menu-whole ul li:nth-child(4) {
    background-position: right top -212px;
}
@media only screen and (max-width: 320px) {
    .sp-menu-whole ul li:nth-child(4) {
        background-position: right top -172px;
    }
}
.sp-menu-whole ul li:nth-child(5) {
    background-position: right top -289px;
}
@media only screen and (max-width: 320px) {
    .sp-menu-whole ul li:nth-child(5) {
        background-position: right top -237px;
    }
}
.sp-menu-whole ul li:nth-child(6) {
    background-position: right top -368px;
}
@media only screen and (max-width: 320px) {
    .sp-menu-whole ul li:nth-child(6) {
        background-position: right top -303px;
    }
}
.sp-menu-whole ul li:nth-child(7) {
    background-position: right top -446px;
}
@media only screen and (max-width: 320px) {
    .sp-menu-whole ul li:nth-child(7) {
        background-position: right top -368px;
    }
}
.sp-menu-whole ul li a {
    display: block;
    padding: 20px 0;
    color: #fff;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    padding-left: 20px;
    background-image: url(../images/common/arw.png);
    background-repeat: no-repeat;
    background-size: 6px 10px;
    background-position: center left;
    position: relative;
    transition: 0.3s;
}
.sp-menu-whole ul li a:hover {
    opacity: 0.6;
}
.sp-menu-whole .contact-btn {
    display: block;
    background: #fff;
    color: #30302c;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    text-align: center;
    padding: 17px 0 17px 25px;
    background-image: url(../images/common/icn_contact.png);
    background-size: 19px 15px;
    background-position: center left 25px;
    background-repeat: no-repeat;
    width: calc(100% - 60px);
    margin: 29px auto 0;
    transition: 0.3s;
    margin-bottom: 20px;
}
.sp-menu-whole .contact-btn:hover {
    opacity: 0.6;
}
.sidebar {
    width: 10%;
    margin-top: 214px;
    margin-top: 104px;
}
@media only screen and (max-width: 860px) {
    .sidebar {
        margin-top: 45px !important;
        width: 100%;
    }
}
.sidebar p {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    position: relative;
    font-family: "Noto Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    font-style: italic;
}
@media only screen and (max-width: 860px) {
    .sidebar p {
        width: 100%;
        border: 1px solid #30302c;
        padding: 10px;
        text-align: center;
    }
}
.sidebar p:after {
    content: '';
    display: block;
    width: 20px;
    height: 2px;
    background: #30302c;
    position: absolute;
    left: 0;
    bottom: -20px;
}
@media only screen and (max-width: 860px) {
    .sidebar p:after {
        display: none;
    }
}
.sidebar .archive {
    margin-top: 50px;
}
@media only screen and (max-width: 860px) {
    .sidebar .archive {
        margin-top: 30px;
    }
}
.sidebar ul {
    margin-top: 40px;
}
@media only screen and (max-width: 860px) {
    .sidebar ul {
        margin-top: 20px;
        display: none;
    }
}
.sidebar ul li {
    padding-bottom: 12px;
}
.sidebar ul li a {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
}
.btn {
    background: #fff;
    display: block;
    text-align: center;
    position: relative;
    padding: 27.5px;
    border: 1px solid #30302c;
    transition: 0.3s;
}
.btn:hover {
    border-color: #30302c;
    background: #30302c;
    color: #fff;
    opacity: 1;
}
.btn:hover > span {
    color: #fff;
}
.btn:hover::after {
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
}
.btn:hover::before {
    opacity: 0;
}
@media only screen and (max-width: 860px) {
    .btn {
        padding: 15px 0 13px;
        background: #30302c;
        border: none;
        margin-top: 20px;
        color: #fff;
    }
}
.btn:before {
    content: "";
    position: absolute;
    width: 30px;
    height: 2px;
    background: #30302c;
    left: -8px;
    top: 0;
    bottom: 0;
    margin: auto;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}
@media only screen and (max-width: 860px) {
    .btn:before {
        left: 0;
        width: 20px;
        background: #fff;
    }
}
.btn:after {
    content: "";
    position: absolute;
    width: 6px;
    height: 6px;
    background: transparent;
    right: 35px;
    top: 0;
    bottom: 0;
    margin: auto;
    border-top: 1px solid #30302c;
    border-right: 1px solid #30302c;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}
@media only screen and (max-width: 860px) {
    .btn:after {
        width: 5px;
        height: 5px;
        right: 20px;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
    }
}
.btn span {
    display: block;
}
.btn span.ja {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0.1em;
}
@media only screen and (max-width: 860px) {
    .btn span.ja {
        font-size: 14px;
        font-size: 1.4rem;
        color: #fff;
    }
}
.btn span.en {
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    font-style: italic;
    margin-top: 5px;
    font-family: "Noto Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (max-width: 860px) {
    .btn span.en {
        font-size: 10px;
        font-size: 1rem;
        margin-top: 6px;
        color: #999997;
    }
}
.btn--green {
    background: #c9dc86;
    border: none;
    width: 400px;
}
.btn--green::before {
    background: #fff;
}
.btn--green::after {
    border-color: #fff;
}
.btn--green .ja {
    color: #fff;
}
.errMsg {
    margin-left: 1em;
    padding-bottom: 1px;
    display: block;
    line-height: 1.4;
    text-indent: -.9em;
    color: #fff !important;
}
.formError {
    padding-bottom: 13px;
    display: block;
}
.fixed {
    padding-bottom: 0px;
}
.formError .formErrorClose {
    border: solid #252525 2px;
    border-radius: 9px 9px 9px 9px;
    -moz-border-radius: 9px 9px 9px 9px;
    -webkit-border-radius: 9px 9px 9px 9px;
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    top: -4px;
    right: -4px;
    color: #efefef;
    background: #333;
    font-weight: bold;
    text-align: center;
    line-height: middle;
    cursor: pointer;
    box-shadow: 1px -1px 3px #888;
    -moz-box-shadow: 1px -1px 3px #888;
    -webkit-box-shadow: 1px -1px 3px #888;
    _z-index: 2;
}
.formError .formErrorClose:hover {
    background: #666;
}
.fixed .formErrorClose {
    display: none;
}
.formError .formErrorContent {
    border-radius: 3px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    padding: 6px 10px;
    width: 180px;
    position: relative;
    color: #fff !important;
    background: #252525;
    font-family: "Lucida Sans Unicode", "Lucida Grande", Arial, Helvetica, "ヒラギノ丸ゴ Pro W4", HiraMaruPro-W4, "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, Osaka, sans-serif;
    font-size: 11px;
    box-shadow: 0px 0px 6px #888;
    -moz-box-shadow: 0px 0px 6px #888;
    -webkit-box-shadow: 0px 0px 6px #888;
    margin: 0 0 30px 0;
    _z-index: 1;
}
.fixed .formErrorContent {
    margin-top: .5em;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    background: #f60;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    margin: 0 0 30px 0;
}
.fadeOut {
    opacity: .2;
    filter: alpha(opacity=20);
}
.formError .formErrorArrow {
    width: 15px;
    height: 15px;
    position: absolute;
    bottom: 0;
    left: 20px;
    margin: 0 0 30px 0;
    _z-index: 0;
}
.fixed .formErrorArrow {
    display: none;
}
.formError .formErrorArrowBottom {
    margin: -6px;
    top: 0;
}
.fixed .formErrorArrowBottom {
    display: none;
}
.formError .formErrorArrow div {
    margin: 0 auto;
    display: block;
    height: 1px;
    background: #252525;
    line-height: 0px;
    font-size: 0px;
    box-shadow: 0px 2px 3px #888;
    -moz-box-shadow: 0px 2px 3px #888;
    -webkit-box-shadow: 0px 2px 3px #888;
}
.formError .formErrorArrowBottom div {
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
}
.formError .formErrorArrow .line10 {
    width: 19px;
}
.formError .formErrorArrow .line9 {
    width: 17px;
}
.formError .formErrorArrow .line8 {
    width: 15px;
}
.formError .formErrorArrow .line7 {
    width: 13px;
}
.formError .formErrorArrow .line6 {
    width: 11px;
}
.formError .formErrorArrow .line5 {
    width: 9px;
}
.formError .formErrorArrow .line4 {
    width: 7px;
}
.formError .formErrorArrow .line3 {
    width: 5px;
}
.formError .formErrorArrow .line2 {
    width: 3px;
}
.formError .formErrorArrow .line1 {
    width: 1px;
}
.clampMe, body.news main .inner .news-wrapper .article ul li a .title, body.news main .inner1200 .news-wrapper .article ul li a .title, .clampMe2, body.news main .inner .news-wrapper .article ul li .text, body.news main .inner1200 .news-wrapper .article ul li .text {
    position: relative;
    overflow: hidden;
}
.clampMe:after, body.news main .inner .news-wrapper .article ul li a .title:after, body.news main .inner1200 .news-wrapper .article ul li a .title:after, .clampMe2:after, body.news main .inner .news-wrapper .article ul li .text:after, body.news main .inner1200 .news-wrapper .article ul li .text:after {
    content: "";
    text-align: right;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 50%;
    background: linear-gradient(to right, rgba(255, 255, 255, 0), white 80%);
}
.clampMe:after, body.news main .inner .news-wrapper .article ul li a .title:after, body.news main .inner1200 .news-wrapper .article ul li a .title:after {
    height: 2em;
}
@media only screen and (max-width: 860px) {
    .clampMe:after, body.news main .inner .news-wrapper .article ul li a .title:after, body.news main .inner1200 .news-wrapper .article ul li a .title:after {
        height: 2.5em;
    }
}
.clampMe2:after, body.news main .inner .news-wrapper .article ul li .text:after, body.news main .inner1200 .news-wrapper .article ul li .text:after {
    height: 4.9em;
}
.clampMe, body.news main .inner .news-wrapper .article ul li a .title, body.news main .inner1200 .news-wrapper .article ul li a .title {
    height: 2em;
}
@media only screen and (max-width: 860px) {
    .clampMe, body.news main .inner .news-wrapper .article ul li a .title, body.news main .inner1200 .news-wrapper .article ul li a .title {
        height: 2.5em;
    }
}
.clampMe2, body.news main .inner .news-wrapper .article ul li .text, body.news main .inner1200 .news-wrapper .article ul li .text {
    height: 4.9em;
}
@supports (-webkit-line-clamp: 1) {
    .clampMe, body.news main .inner .news-wrapper .article ul li a .title, body.news main .inner1200 .news-wrapper .article ul li a .title {
        overflow: hidden;
        text-overflow: ellipsis;
        display: -webkit-box;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
    }
    .clampMe:after, body.news main .inner .news-wrapper .article ul li a .title:after, body.news main .inner1200 .news-wrapper .article ul li a .title:after {
        display: none;
    }
}
@supports (-webkit-line-clamp: 2) {
    .clampMe2, body.news main .inner .news-wrapper .article ul li .text, body.news main .inner1200 .news-wrapper .article ul li .text {
        overflow: hidden;
        text-overflow: ellipsis;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
    }
    @media only screen and (max-width: 860px) {
        .clampMe2, body.news main .inner .news-wrapper .article ul li .text, body.news main .inner1200 .news-wrapper .article ul li .text {
            -webkit-line-clamp: 2;
        }
    }
    .clampMe2:after, body.news main .inner .news-wrapper .article ul li .text:after, body.news main .inner1200 .news-wrapper .article ul li .text:after {
        display: none;
    }
}
.listBox {
    border: 1px solid #96968c;
    padding: 7px;
    background: #fff;
}
@media only screen and (min-width: 860px) {
    .listBox {
        width: 1000px;
        margin: 0 auto;
    }
}
@media only screen and (max-width: 860px) {
    .listBox {
        width: 100%;
    }
}
@media only screen and (max-width: 1100px) {
    .listBox {
        width: 100%;
    }
}
.listBox .inner, .listBox .inner1200 {
    border: 2px solid #000;
    padding: 45px 0;
    background: #fff;
}
@media only screen and (max-width: 1100px) {
    .listBox .inner, .listBox .inner1200 {
        width: 100%;
    }
}
@media only screen and (max-width: 860px) {
    .listBox .inner, .listBox .inner1200 {
        padding: 20px 0;
    }
}
.listBox .inner ul, .listBox .inner1200 ul {
    position: relative;
    margin: 0 auto;
    width: 630px;
}
@media only screen and (min-width: 860px) {
    .listBox .inner ul, .listBox .inner1200 ul {
        margin: 0 auto;
    }
}
@media only screen and (max-width: 860px) {
    .listBox .inner ul, .listBox .inner1200 ul {
        padding: 25px;
        width: 100%;
    }
}
.listBox .inner ul li, .listBox .inner1200 ul li {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 2.444444444;
    letter-spacing: .1em;
    text-align: left;
    padding: 0 0 0 50px;
    position: relative;
}
@media only screen and (max-width: 860px) {
    .listBox .inner ul li, .listBox .inner1200 ul li {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.5;
        padding: 0 0 0 20px;
        margin: 15px 0 0;
    }
}
@media only screen and (max-width: 860px) {
    .listBox .inner ul li:nth-of-type(1), .listBox .inner1200 ul li:nth-of-type(1) {
        margin: 0;
    }
}
.listBox .inner ul li::before, .listBox .inner1200 ul li::before {
    content: '';
    width: 23px;
    height: 20px;
    background: url(../images/common/icon.png) center/cover no-repeat;
    position: absolute;
    left: 0;
    top: 50%;
}
@media only screen and (min-width: 860px) {
    .listBox .inner ul li::before, .listBox .inner1200 ul li::before {
        -webkit-transform: translate(0, -50%);
        -moz-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        -o-transform: translate(0, -50%);
        transform: translate(0, -50%);
    }
}
@media only screen and (max-width: 860px) {
    .listBox .inner ul li::before, .listBox .inner1200 ul li::before {
        width: 15px;
        height: 13px;
        top: 5px;
        left: -5px;
    }
}
.pad--business {
    padding: 120px 0 80px;
}
.pad--works {
    padding: 110px 0 110px;
}
.pad--company--01 {
    padding: 0 0 70px;
}
.pad--company--02 {
    padding: 0 0 106px;
}
.pad--company--03 {
    padding: 140px 0 100px;
}
.pad--recruit--01 {
    padding: 110px 0 84px;
}
.pad--recruit--02 {
    padding: 107px 0;
}
.pad--recruit--03 {
    padding: 110px 0;
}
@media only screen and (max-width: 860px) {
    .pad {
        padding: 40px 0;
    }
}
.pagenav-detail {
    margin-top: 90px;
}
.pagenav-detail > ul {
    max-width: 365px;
    margin: 0 auto;
    margin-top: 90px !important;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.pagenav-detail > ul li {
    width: 130px;
    padding: 0;
    height: 35px;
    border: 1px solid #96968c;
    border-bottom: 1px solid #96968c !important;
    padding: 0 !important;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}
@media only screen and (max-width: 860px) {
    .pagenav-detail > ul li {
        width: 90px;
    }
}
.pagenav-detail > ul li a {
    display: block;
    text-decoration: none !important;
    color: #30302c !important;
    font-size: 14px !important;
    padding-top: 9px;
    text-align: center;
    height: 100%;
    width: 100%;
}
.pagenav-detail > ul .prev, .pagenav-detail > ul .next, .pagenav-detail > ul .first, .pagenav-detail > ul .last {
    width: 80px;
}
@media only screen and (max-width: 860px) {
    .pagenav-detail > ul .prev, .pagenav-detail > ul .next, .pagenav-detail > ul .first, .pagenav-detail > ul .last {
        width: 70px;
    }
}
.pagenav-detail > ul .prev, .pagenav-detail > ul .first {
    padding-left: 20px !important;
    background: url("../images/news/prev.png") center left 12px/5px auto no-repeat;
}
.pagenav-detail > ul .next, .pagenav-detail > ul .last {
    padding-right: 20px !important;
    background: url("../images/news/next.png") center right 12px/5px auto no-repeat;
}
.pagenav-detail .no-display {
    opacity: 0;
    pointer-events: none;
}
.pagination {
    text-align: center;
}
.pagination .wp-pagenavi {
    margin: 90px 0 auto;
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}
.pagination .wp-pagenavi a, .pagination .wp-pagenavi .current {
    border: 1px solid #96968c;
    color: #30302c;
    display: inline-block;
    padding-top: 6px;
    margin: 0 2px;
    width: 35px;
    height: 30px;
    text-align: center;
    font-size: 14px;
    font-size: 1.4rem;
}
.pagination .wp-pagenavi .prev, .pagination .wp-pagenavi .first, .pagination .wp-pagenavi .last, .pagination .wp-pagenavi .nextpostslink, .pagination .wp-pagenavi .previouspostslink {
    width: 80px;
}
@media only screen and (max-width: 860px) {
    .pagination .wp-pagenavi .prev, .pagination .wp-pagenavi .first, .pagination .wp-pagenavi .last, .pagination .wp-pagenavi .nextpostslink, .pagination .wp-pagenavi .previouspostslink {
        width: 70px;
    }
}
.pagination .wp-pagenavi .prev, .pagination .wp-pagenavi .first, .pagination .wp-pagenavi .previouspostslink {
    padding-left: 20px;
    background: url("../images/news/prev.png") center left 12px/5px auto no-repeat;
}
.pagination .wp-pagenavi .next, .pagination .wp-pagenavi .last, .pagination .wp-pagenavi .nextpostslink {
    padding-right: 20px;
    background: url("../images/news/next.png") center right 12px/5px auto no-repeat;
}
.pagination .wp-pagenavi .nextpostslink {
    order: 100;
}
.pagination .wp-pagenavi .last {
    order: 99;
    width: 35px;
    padding-right: 0;
    background: none;
    margin-left: 40px;
    position: relative;
}
.pagination .wp-pagenavi .last::before {
    content: '...';
    display: inline-block;
    width: 35px;
    height: 20px;
    position: absolute;
    left: -38px;
    top: 2px;
}
.pagination .wp-pagenavi .current {
    color: white !important;
    border: 1px solid #c9dc86;
    background: #c9dc86;
}
.pagination .wp-pagenavi .current a {
    color: #fff;
}
.pagination .wp-pagenavi .custom-extend {
    display: inline-block;
    background-color: white;
    border: none !important;
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: .4;
    position: relative;
    top: -2px;
    height: 18px;
    width: 40px;
}
.pagination .wp-pagenavi .custom-extend:first-of-type {
    display: none;
}
.pagination .wp-pagenavi .custom-extend:last-of-type {
    display: none;
}
/* ********************************************* */
/* background is set at the bottom of this page */
/* ********************************************* */
.sub-mv {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    height: 280px;
    margin-bottom: 65px;
}
@media only screen and (max-width: 860px) {
    .sub-mv {
        height: 160px;
        background-size: cover;
        background-position: 100%;
        margin-bottom: 55px;
    }
}
.sub-mv--wrapper {
    position: absolute;
    bottom: -65px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    max-width: 1000px;
    width: calc(100% + 20px);
    color: #30302c;
}
@media only screen and (max-width: 1100px) {
    .sub-mv--wrapper {
        padding: 0 50px;
    }
}
@media only screen and (max-width: 860px) {
    .sub-mv--wrapper {
        padding: 0 20px;
        bottom: -42px;
        width: 100%;
    }
}
@media only screen and (max-width: 860px) {
    .sub-mv--wrapper__reason {
        bottom: -55px;
    }
}
.sub-mv--wrapper .ja {
    font-size: 50px;
    font-size: 5rem;
    line-height: 1.8;
    letter-spacing: .1em;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (max-width: 860px) {
    .sub-mv--wrapper .ja {
        font-size: 30px;
        font-size: 3rem;
    }
}
@media only screen and (max-width: 860px) {
    .sub-mv--wrapper .ja--small {
        font-size: 30px;
        font-size: 3rem;
        position: relative;
        top: -13px;
    }
}
.sub-mv--wrapper .en {
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: .05em;
    font-family: "Noto Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    font-style: italic;
}
@media only screen and (max-width: 860px) {
    .sub-mv--wrapper .en {
        font-size: 16px;
        font-size: 1.6rem;
    }
}
.sub-mv--wrapper .breadcrumb {
    position: absolute;
    right: 0;
    bottom: 10px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-end;
    align-items: flex-end;
}
@media only screen and (max-width: 860px) {
    .sub-mv--wrapper .breadcrumb {
        right: 20px;
        bottom: 0;
    }
}
.sub-mv--wrapper .breadcrumb ul {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    /* IE11  */
}
.sub-mv--wrapper .breadcrumb ul li {
    font-size: 12px;
    font-size: 1.2rem;
    margin-right: 22px;
    position: relative;
    color: #7c7c7a;
}
.sub-mv--wrapper .breadcrumb ul li::before {
    content: '';
    background: url(../images/common/breadcrumb-arrow.png) center/contain no-repeat;
    width: 5px;
    height: 10px;
    position: absolute;
    top: 2px;
    right: -14px;
}
.sub-mv--wrapper .breadcrumb ul li:last-child {
    margin-right: 0;
}
.sub-mv--wrapper .breadcrumb ul li:last-child::before {
    content: none;
}
.sub-mv--wrapper .breadcrumb ul _:lang(x)::-ms-backdrop, .sub-mv--wrapper .breadcrumb ul li:before {
    top: -1px;
}
.sub-mv--works {
    background-image: url(../images/works/mv.jpg);
}
@media only screen and (max-width: 860px) {
    .sub-mv--works {
        background-image: url(../images/works/mv-sp.jpg);
    }
}
.sub-mv--business {
    background-image: url(../images/business/mv.jpg);
}
@media only screen and (max-width: 860px) {
    .sub-mv--business {
        background-image: url(../images/business/mv-sp.jpg);
    }
}
.sub-mv--company {
    background-image: url(../images/company/mv.jpg);
}
@media only screen and (max-width: 860px) {
    .sub-mv--company {
        background-image: url(../images/company/mv-sp.jpg);
    }
}
.sub-mv--reason {
    background-image: url(../images/reason/mv.jpg);
}
@media only screen and (max-width: 860px) {
    .sub-mv--reason {
        background-image: url(../images/reason/mv-sp.jpg);
    }
}
.sub-mv--recruit {
    background-image: url(../images/recruit/mv.jpg);
}
@media only screen and (max-width: 860px) {
    .sub-mv--recruit {
        background-image: url(../images/recruit/mv-sp.jpg);
        background-position: center;
    }
}
.sub-mv--contact {
    background-image: url(../images/contact/mv.jpg);
}
@media only screen and (max-width: 860px) {
    .sub-mv--contact {
        background-image: url(../images/contact/mv-sp.jpg);
        background-position: left 75% top 0;
    }
}
.sub-mv--news {
    background-image: url(../images/news/mv.jpg);
}
@media only screen and (max-width: 860px) {
    .sub-mv--news {
        background-image: url(../images/contact/mv-sp.jpg);
        background-position: left 75% top 0;
    }
}
.sub-title {
    position: relative;
    text-align: center;
    /* IE11  */
}
.sub-title--plus {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: .1em;
}
@media only screen and (max-width: 860px) {
    .sub-title--plus {
        font-size: 16px;
        font-size: 1.6rem;
        text-align: center;
        display: block;
        padding: 8px 0 0;
    }
}
.sub-title--contact {
    text-align: center;
}
.sub-title h3 {
    display: inline-block;
    font-size: 32px;
    font-size: 3.2rem;
    letter-spacing: .1em;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    position: relative;
}
@media only screen and (max-width: 860px) {
    .sub-title h3 {
        font-size: 28px;
        font-size: 2.8rem;
        text-align: left;
        letter-spacing: 0;
        line-height: 1.5;
    }
}
@media only screen and (max-width: 860px) {
    .sub-title h3.works {
        font-size: 23px;
        font-size: 2.3rem;
    }
}
@media only screen and (max-width: 860px) {
    .sub-title h3.business {
        padding: 0 20px;
        font-size: 23px;
        font-size: 2.3rem;
    }
}
.sub-title h3::before, .sub-title h3::after {
    content: '';
    width: 30px;
    height: 1px;
    background: #000;
    position: absolute;
    top: 50%;
}
@media only screen and (max-width: 860px) {
    .sub-title h3::before, .sub-title h3::after {
        width: 20px;
    }
}
.sub-title h3::before {
    left: -60px;
}
@media only screen and (max-width: 860px) {
    .sub-title h3::before {
        left: -30px;
    }
}
.sub-title h3::after {
    right: -60px;
}
@media only screen and (max-width: 860px) {
    .sub-title h3::after {
        right: -30px;
    }
}
@media only screen and (max-width: 860px) {
    .sub-title h3.business::before {
        left: -10px;
    }
}
@media only screen and (max-width: 860px) {
    .sub-title h3.business::after {
        right: 0;
    }
}
.sub-title _:lang(x)::-ms-backdrop, .sub-title h3:before, .sub-title h3:after {
    top: 10px;
}
.topbox {
    text-align: center;
}
.topbox--company {
    padding: 112px 0 120px;
}
@media only screen and (max-width: 860px) {
    .topbox--company {
        padding: 50px 0;
    }
}
.topbox--business {
    padding: 115px 0 140px;
}
.topbox--reason {
    padding: 115px 0 0;
}
.topbox--recruit {
    padding: 115px 0 30px;
}
@media only screen and (max-width: 860px) {
    .topbox {
        padding: 50px 0 60px;
    }
}
@media only screen and (max-width: 860px) {
    .topbox--reason {
        padding-bottom: 30px;
    }
}
.topbox--p01 {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 2.222222222;
    letter-spacing: .1em;
    padding: 0 0 80px;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (max-width: 860px) {
    .topbox--p01 {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 2;
        text-align: left;
        padding: 0 0 30px;
    }
}
.topbox .outside {
    display: block;
    margin-right: -100px;
    margin-left: -100px;
}
@media only screen and (max-width: 1200px) {
    .topbox .outside {
        margin-right: 0;
        margin-left: 0;
    }
}
.topbox .outside img {
    width: 100%;
}
.topbox .innerBox ul {
    border: 1px solid #000;
    position: relative;
}
@media only screen and (min-width: 860px) {
    .topbox .innerBox ul {
        padding: 55px 180px;
        width: 1000px;
        margin: 0 auto;
    }
}
@media only screen and (max-width: 860px) {
    .topbox .innerBox ul {
        padding: 20px 25px;
        width: 100%;
    }
}
.topbox .innerBox ul::before {
    content: '';
    display: block;
    border: 1px solid #96968c;
    width: 103.5%;
    height: 105%;
    left: -1.75%;
    top: -2.5%;
    position: absolute;
}
.topbox .innerBox ul li {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 2.444444444;
    letter-spacing: .1em;
    text-align: left;
    padding: 0 0 0 50px;
    position: relative;
}
@media only screen and (max-width: 860px) {
    .topbox .innerBox ul li {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.5;
        padding: 0 0 0 20px;
        margin: 15px 0 0;
    }
}
@media only screen and (max-width: 860px) {
    .topbox .innerBox ul li:nth-of-type(1) {
        margin: 0;
    }
}
.topbox .innerBox ul li::before {
    content: '';
    width: 22px;
    height: 20px;
    background: url(../images/business/icon.png) center/cover no-repeat;
    position: absolute;
    left: 0;
    top: 50%;
}
@media only screen and (min-width: 860px) {
    .topbox .innerBox ul li::before {
        -webkit-transform: translate(0, -50%);
        -moz-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        -o-transform: translate(0, -50%);
        transform: translate(0, -50%);
    }
}
@media only screen and (max-width: 860px) {
    .topbox .innerBox ul li::before {
        width: 15px;
        height: 13px;
        top: 5px;
        left: -5px;
    }
}
.title {
    text-align: center;
}
.title span {
    display: block;
}
.title .ja {
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    font-size: 28px;
    font-size: 2.8rem;
    letter-spacing: 0.2em;
}
.title .en {
    font-family: "Noto Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.1em;
    margin-top: 5px;
}
.notfound .subtt {
    padding-top: 100px;
    margin: 0 auto 50px;
    font-size: 25px;
    font-size: 2.5rem;
}
@media only screen and (max-width: 860px) {
    .notfound .subtt {
        padding-top: 60px;
        margin: 0 auto 40px;
    }
}
.notfound .content {
    margin: 0 auto;
    padding: 0 0 150px;
    text-align: center;
    width: 1000px;
}
@media only screen and (max-width: 860px) {
    .notfound .content {
        padding: 0 0 50px;
        width: 100%;
    }
}
.notfound .content p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2;
}
.notfound .content a {
    margin-top: 40px;
}
.notfound .content .btn {
    margin: 40px auto 0;
    width: 250px;
}
.notfound .content _:lang(x)::-ms-backdrop, .notfound .content .more {
    padding-top: 10px;
}
body.business main .topbox--p01 {
    padding: 0 0 70px !important;
}
body.business main .wrapper {
    padding-bottom: 180px;
}
@media only screen and (max-width: 860px) {
    body.business main .wrapper {
        padding-bottom: 70px;
    }
}
body.business main .sec {
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    padding: 110px 0 0;
    text-align: center;
}
@media only screen and (max-width: 860px) {
    body.business main .sec {
        padding: 40px 0 0;
    }
}
body.business main .sec:nth-of-type(1) {
    padding: 0;
}
body.business main .sec--title {
    font-size: 48px;
    font-size: 4.8rem;
    letter-spacing: .05em;
    margin: 0 0 56px;
    position: relative;
}
@media only screen and (max-width: 860px) {
    body.business main .sec--title {
        font-size: 28px;
        font-size: 2.8rem;
        margin: 0 0 30px;
    }
}
body.business main .sec--title::before {
    content: '';
    width: 100%;
    height: 30px;
    background: #f8faf1;
    position: absolute;
    left: 0;
    bottom: -15px;
    z-index: -1;
}
@media only screen and (max-width: 860px) {
    body.business main .sec--title::before {
        height: 25px;
        bottom: -13px;
    }
}
body.business main .sec--title .span01 {
    font-size: 30px;
    font-size: 3rem;
    letter-spacing: .1em;
    padding: 0 13px 0 20px;
}
@media only screen and (max-width: 860px) {
    body.business main .sec--title .span01 {
        font-size: 18px;
        font-size: 1.8rem;
    }
}
body.business main .sec--title .span02 {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: .05em;
}
@media only screen and (max-width: 860px) {
    body.business main .sec--title .span02 {
        font-size: 14px;
        font-size: 1.4rem;
    }
}
body.business main .sec .imgarea {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
body.business main .sec .imgarea span {
    width: calc(100% / 3);
}
@media all and (-ms-high-contrast: none) {
    body.business main .sec .imgarea span {
        width: calc(99% / 3);
    }
}
@media only screen and (max-width: 860px) {
    body.business main .sec .imgarea span {
        width: 100%;
    }
}
body.business main .sec--desc {
    width: 875px;
    margin: 0 auto;
    text-align: left;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2.25;
    letter-spacing: .05em;
    padding: 45px 0 0;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 860px) {
    body.business main .sec--desc {
        width: 100%;
        font-size: 12px;
        font-size: 1.2rem;
        text-align: justify;
        padding: 30px 0 0;
    }
}
body.company main .spacen {
    letter-spacing: 0.4em;
}
body.company main .inner .morebtn, body.company main .inner1200 .morebtn {
    padding: 0 35px;
}
@media only screen and (min-width: 860px) {
    body.company main .inner .morebtn .btn, body.company main .inner1200 .morebtn .btn {
        width: 400px;
        margin: 70px auto 0;
    }
}
body.company main .sectionWrapper .sec--01 {
    background: #f8faf1;
    padding: 95px 0 120px;
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--01 {
        padding: 0 0 40px;
    }
}
@media only screen and (min-width: 860px) {
    body.company main .sectionWrapper .sec--01 .box {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
    }
}
@media only screen and (min-width: 860px) {
    body.company main .sectionWrapper .sec--01 .box--bottom {
        margin-top: -25px;
    }
}
@media only screen and (max-width: 1100px) {
    body.company main .sectionWrapper .sec--01 .box--bottom {
        margin-top: 5px;
    }
}
@media only screen and (max-width: 1000px) {
    body.company main .sectionWrapper .sec--01 .box--bottom {
        margin-top: 30px;
    }
}
body.company main .sectionWrapper .sec--01 .box .text {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2.25;
    letter-spacing: .05em;
    color: #30302c;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--01 .box .text {
        font-size: 12px;
        font-size: 1.2rem;
    }
}
body.company main .sectionWrapper .sec--01 .box .text--left {
    width: 50%;
    padding: 40px 0 0;
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--01 .box .text--left {
        width: 100%;
        padding: 20px 0 0;
    }
}
body.company main .sectionWrapper .sec--01 .box .text--right {
    width: 45.8%;
    padding: 90px 0 0;
}
@media only screen and (max-width: 1100px) {
    body.company main .sectionWrapper .sec--01 .box .text--right {
        padding: 70px 0 0;
    }
}
@media only screen and (max-width: 1200px) {
    body.company main .sectionWrapper .sec--01 .box .text--right {
        width: 47.8%;
    }
}
@media only screen and (max-width: 1000px) {
    body.company main .sectionWrapper .sec--01 .box .text--right {
        padding: 30px 0 0;
    }
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--01 .box .text--right {
        width: 100%;
        padding: 0 0 20px;
    }
}
body.company main .sectionWrapper .sec--01 .box .img {
    display: block;
}
body.company main .sectionWrapper .sec--01 .box .img--left {
    width: 57%;
}
@media only screen and (min-width: 860px) {
    body.company main .sectionWrapper .sec--01 .box .img--left {
        margin-left: -70px;
    }
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--01 .box .img--left {
        width: 100%;
    }
}
body.company main .sectionWrapper .sec--01 .box .img--right {
    width: 53%;
}
@media only screen and (min-width: 860px) {
    body.company main .sectionWrapper .sec--01 .box .img--right {
        margin-right: -70px;
    }
}
@media only screen and (max-width: 1200px) {
    body.company main .sectionWrapper .sec--01 .box .img--right {
        margin-right: -45px;
    }
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--01 .box .img--right {
        width: 100%;
    }
}
body.company main .sectionWrapper .sec--01 .name {
    font-size: 24px;
    font-size: 2.4rem;
    display: block;
    position: relative;
    text-align: right;
    color: #30302c;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--01 .name {
        font-size: 16px;
        font-size: 1.6rem;
    }
}
body.company main .sectionWrapper .sec--01 .name .position {
    display: inline-block;
    padding: 0 15px 7px 0;
    font-size: 18px;
    font-size: 1.8rem;
    color: #30302c;
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--01 .name .position {
        font-size: 12px;
        font-size: 1.2rem;
    }
}
@media only screen and (min-width: 860px) {
    body.company main .sectionWrapper .sec--01 .name::before {
        content: '';
        width: 437px;
        height: .5px;
        background: #96968c;
        position: absolute;
        top: 50%;
        right: 40px;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
}
body.company main .sectionWrapper .sec--02 {
    padding: 107px 0 140px;
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--02 {
        padding: 0 0 50px;
    }
}
body.company main .sectionWrapper .sec--02 table {
    width: 100%;
}
body.company main .sectionWrapper .sec--02 table tr {
    width: 100%;
    display: table;
    position: relative;
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--02 table tr {
        display: block;
        padding: 15px 0;
    }
}
body.company main .sectionWrapper .sec--02 table tr::before {
    content: '';
    width: 100%;
    border-top: 1px dashed #b6b6af;
    position: absolute;
    top: 0;
    left: 0;
}
body.company main .sectionWrapper .sec--02 table tr:last-child::after {
    content: '';
    width: 100%;
    border-top: 1px dashed #b6b6af;
    position: absolute;
    bottom: 0;
    left: 0;
}
body.company main .sectionWrapper .sec--02 table tr th, body.company main .sectionWrapper .sec--02 table tr td {
    padding: 15px 0;
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--02 table tr th, body.company main .sectionWrapper .sec--02 table tr td {
        display: block;
        padding: 0;
    }
}
body.company main .sectionWrapper .sec--02 table tr th {
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: .025em;
    width: 26%;
    line-height: 2.25;
    font-weight: 600;
}
@media only screen and (min-width: 860px) {
    body.company main .sectionWrapper .sec--02 table tr th {
        padding-left: 40px;
    }
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--02 table tr th {
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1;
        width: 100%;
    }
}
body.company main .sectionWrapper .sec--02 table tr td {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.714285714;
    letter-spacing: .025em;
    width: calc(100% - 26%);
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--02 table tr td {
        font-size: 12px;
        font-size: 1.2rem;
        width: 100%;
        line-height: 1;
        padding: 15px 0 0;
    }
}
body.company main .sectionWrapper .sec--02 table tr td ul li {
    padding: 25px 0 0;
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--02 table tr td ul li {
        padding: 15px 0 0;
        line-height: 1.5;
    }
}
body.company main .sectionWrapper .sec--02 table tr td ul li:nth-of-type(1) {
    padding: 0;
}
body.company main .sectionWrapper .sec--02 table tr td ul li span {
    display: block;
    font-weight: 600;
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--02 table tr td ul li span {
        padding-bottom: 5px;
    }
}
body.company main .sectionWrapper .sec--03 {
    padding-bottom: 290px;
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--03 {
        padding-bottom: 60px;
    }
}
body.company main .sectionWrapper .sec--03 .partner-table {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
    border-top: 1px solid #d9d9d9;
    border-bottom: 1px solid #d9d9d9;
}
body.company main .sectionWrapper .sec--03 .partner-table ul {
    width: 40%;
    padding: 60px 0;
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--03 .partner-table ul {
        width: 100%;
        padding: 30px 0;
    }
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--03 .partner-table ul.ul01 {
        border-bottom: none;
        padding-bottom: 0;
    }
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--03 .partner-table ul.ul01 li:nth-of-type(1) {
        padding-top: 0;
    }
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--03 .partner-table ul.ul01 li:nth-of-type(1)::before {
        top: 12px;
    }
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--03 .partner-table ul.ul02 {
        border-top: none;
        padding-top: 0;
    }
}
body.company main .sectionWrapper .sec--03 .partner-table ul li {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 5px 0 0 15px;
    position: relative;
    color: #30302c;
    line-height: 2;
    letter-spacing: .05em;
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--03 .partner-table ul li {
        font-size: 12px;
        font-size: 1.2rem;
        padding-top: 6px;
    }
}
body.company main .sectionWrapper .sec--03 .partner-table ul li::before {
    content: '';
    width: 3px;
    height: 3px;
    border-radius: 50%;
    position: absolute;
    top: 20px;
    left: 0;
    background: #000;
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .sec--03 .partner-table ul li::before {
        top: 18px;
    }
}
body.company main .sectionWrapper .middle-img {
    display: block;
    height: 330px;
    background: url(../images/company/img04.jpg) center/cover no-repeat;
}
@media only screen and (max-width: 860px) {
    body.company main .sectionWrapper .middle-img {
        height: 150px;
    }
}
body.company .anchor {
    position: relative;
    top: -140px;
}
@media only screen and (max-width: 860px) {
    body.company .anchor {
        top: -65px;
    }
}
@media only screen and (max-width: 860px) {
    body.contact .sub-mv--contact .ja {
        letter-spacing: 0;
    }
}
body.contact main {
    padding: 60px 0 0;
}
@media only screen and (max-width: 860px) {
    body.contact main {
        padding: 20px 0 0;
    }
}
body.contact main .mv02 {
    background: url(../images/contact/img01.jpg) center/cover no-repeat;
    padding: 80px 0;
}
@media only screen and (max-width: 860px) {
    body.contact main .mv02 {
        padding: 30px 20px;
    }
}
body.contact main .mv02 h3 {
    color: #fff;
}
body.contact main .mv02 h3::before {
    background: #fff;
}
body.contact main .mv02 h3::after {
    background: #fff;
}
body.contact main .mv02 .border {
    color: #fff;
}
body.contact main .mv02 .telBox {
    background: #fff;
    width: 850px;
    margin: 80px auto 0;
    padding: 40px 70px 40px 90px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
    border: 1px solid #30302c;
    position: relative;
    z-index: 100;
}
@media only screen and (max-width: 860px) {
    body.contact main .mv02 .telBox {
        text-align: center;
        width: 100%;
        margin-top: 0;
        padding: 30px 0;
    }
}
body.contact main .mv02 .telBox .left {
    width: 240px;
    color: #30302c;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.714285714;
    letter-spacing: .05em;
}
@media only screen and (max-width: 860px) {
    body.contact main .mv02 .telBox .left {
        font-size: 12px;
        font-size: 1.2rem;
        width: 100%;
    }
}
body.contact main .mv02 .telBox .right {
    width: 380px;
    font-size: 50px;
    font-size: 5rem;
    letter-spacing: .1em;
    position: relative;
}
@media only screen and (max-width: 860px) {
    body.contact main .mv02 .telBox .right {
        font-size: 30px;
        font-size: 3rem;
        text-align: center;
        width: 100%;
        margin: 20px 0 0;
    }
}
body.contact main .mv02 .telBox .right .telicon {
    position: relative;
}
@media only screen and (max-width: 860px) {
    body.contact main .mv02 .telBox .right .telicon {
        display: inline-block;
        padding: 0 0 0 18px;
    }
}
body.contact main .mv02 .telBox .right .telicon::before {
    content: '';
    width: 25px;
    height: 35px;
    background: url(../images/contact/telicon.png) center/cover no-repeat;
    position: absolute;
    left: -30px;
    top: 23px;
}
@media only screen and (max-width: 860px) {
    body.contact main .mv02 .telBox .right .telicon::before {
        width: 15px;
        height: 20px;
        left: 0;
        top: 7px;
    }
}
@media only screen and (max-width: 320px) {
    body.contact main .mv02 .telBox .right .telicon {
        padding: 0 0 0 20px;
    }
    body.contact main .mv02 .telBox .right .telicon::before {
        left: 0;
    }
}
body.contact main .mv02 .telBox .right .time {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.6875;
    letter-spacing: .1em;
    display: block;
    text-align: center;
}
@media only screen and (max-width: 860px) {
    body.contact main .mv02 .telBox .right .time {
        font-size: 12px;
        font-size: 1.2rem;
    }
}
body.contact main .mv02 .telBox .bg {
    background: transparent;
    position: absolute;
    border: 2px solid #30302c;
    top: 6px;
    left: 6px;
    bottom: 6px;
    right: 6px;
    z-index: -1;
}
body.contact main .inner .form-wrapper, body.contact main .inner1200 .form-wrapper {
    padding: 110px 0 300px;
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper, body.contact main .inner1200 .form-wrapper {
        padding: 0 0 50px;
    }
}
body.contact main .inner .form-wrapper .notification, body.contact main .inner1200 .form-wrapper .notification {
    display: block;
    text-align: center;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: .05em;
    padding: 80px 0 0;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .notification, body.contact main .inner1200 .form-wrapper .notification {
        font-size: 12px;
        font-size: 1.2rem;
        text-align: left;
        padding: 0;
    }
}
body.contact main .inner .form-wrapper .progressbar, body.contact main .inner1200 .form-wrapper .progressbar {
    text-align: center;
}
body.contact main .inner .form-wrapper .progressbar ul, body.contact main .inner1200 .form-wrapper .progressbar ul {
    padding: 35px 0 0;
}
@media only screen and (min-width: 860px) {
    body.contact main .inner .form-wrapper .progressbar ul, body.contact main .inner1200 .form-wrapper .progressbar ul {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        justify-content: space-between;
    }
}
body.contact main .inner .form-wrapper .progressbar ul li, body.contact main .inner1200 .form-wrapper .progressbar ul li {
    text-align: center;
    background: #f6f6f6;
    padding: 22px 0;
    position: relative;
    color: #000;
    width: calc(100% / 3 - 10px);
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    letter-spacing: .05em;
    white-space: nowrap;
    font-size: 16px;
    font-size: 1.6rem;
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .progressbar ul li, body.contact main .inner1200 .form-wrapper .progressbar ul li {
        width: 100%;
        padding: 10px 0;
        margin: 10px 0 0;
    }
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .progressbar ul li:first-child, body.contact main .inner1200 .form-wrapper .progressbar ul li:first-child {
        margin: 0;
    }
}
@media only screen and (min-width: 860px) {
    body.contact main .inner .form-wrapper .progressbar ul li::before, body.contact main .inner1200 .form-wrapper .progressbar ul li::before {
        content: '';
        border-style: solid;
        border-color: transparent transparent transparent #f6f6f6;
        border-width: 29px 0 29px 20px;
        position: absolute;
        right: -20px;
        top: 0;
        z-index: 15;
    }
}
@media only screen and (min-width: 860px) {
    body.contact main .inner .form-wrapper .progressbar ul li::after, body.contact main .inner1200 .form-wrapper .progressbar ul li::after {
        content: '';
        border-style: solid;
        border-color: transparent transparent transparent #fff;
        border-width: 29px 0 29px 20px;
        position: absolute;
        right: -34px;
        top: 0;
        z-index: 10;
    }
}
body.contact main .inner .form-wrapper .progressbar ul li.active, body.contact main .inner1200 .form-wrapper .progressbar ul li.active {
    background: #96968c;
    color: #fff;
}
body.contact main .inner .form-wrapper .progressbar ul li.active::before, body.contact main .inner1200 .form-wrapper .progressbar ul li.active::before {
    border-color: transparent transparent transparent #96968c;
}
body.contact main .inner .form-wrapper .progressbar ul li:last-child::before, body.contact main .inner1200 .form-wrapper .progressbar ul li:last-child::before, body.contact main .inner .form-wrapper .progressbar ul li:last-child::after, body.contact main .inner1200 .form-wrapper .progressbar ul li:last-child::after {
    content: none;
}
body.contact main .inner .form-wrapper .table-wrapper, body.contact main .inner1200 .form-wrapper .table-wrapper {
    padding: 70px 0 0;
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .table-wrapper, body.contact main .inner1200 .form-wrapper .table-wrapper {
        padding: 30px 0 0;
    }
}
body.contact main .inner .form-wrapper .table-wrapper table, body.contact main .inner1200 .form-wrapper .table-wrapper table {
    width: 100%;
}
body.contact main .inner .form-wrapper .table-wrapper table tbody, body.contact main .inner1200 .form-wrapper .table-wrapper table tbody {
    display: block;
    width: 100%;
}
body.contact main .inner .form-wrapper .table-wrapper table tr, body.contact main .inner1200 .form-wrapper .table-wrapper table tr {
    display: block;
    width: 100%;
    border-top: 1px solid #d9d9d9;
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .table-wrapper table tr, body.contact main .inner1200 .form-wrapper .table-wrapper table tr {
        padding: 15px 0;
    }
}
body.contact main .inner .form-wrapper .table-wrapper table tr th, body.contact main .inner1200 .form-wrapper .table-wrapper table tr th, body.contact main .inner .form-wrapper .table-wrapper table tr td, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td {
    padding: 10px 0;
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .table-wrapper table tr th, body.contact main .inner1200 .form-wrapper .table-wrapper table tr th, body.contact main .inner .form-wrapper .table-wrapper table tr td, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td {
        padding: 0;
    }
}
body.contact main .inner .form-wrapper .table-wrapper table tr th, body.contact main .inner1200 .form-wrapper .table-wrapper table tr th {
    width: 295px;
    padding: 10px 0 10px 40px;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    font-weight: bold;
    font-size: 16px;
    font-size: 1.6rem;
    /* IE11  */
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .table-wrapper table tr th, body.contact main .inner1200 .form-wrapper .table-wrapper table tr th {
        display: block;
        width: 100%;
        padding: 0 0 20px;
        font-size: 14px;
        font-size: 1.4rem;
    }
}
body.contact main .inner .form-wrapper .table-wrapper table tr th span, body.contact main .inner1200 .form-wrapper .table-wrapper table tr th span {
    display: block;
    border-right: 1px solid #d9d9d9;
    padding: 25px 0;
    position: relative;
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .table-wrapper table tr th span, body.contact main .inner1200 .form-wrapper .table-wrapper table tr th span {
        display: block;
        border-right: none;
        padding: 0;
    }
}
body.contact main .inner .form-wrapper .table-wrapper table tr th span::before, body.contact main .inner1200 .form-wrapper .table-wrapper table tr th span::before {
    font-size: 12px;
    font-size: 1.2rem;
    content: '';
    padding: 3px 5px;
    position: absolute;
    top: 50%;
    right: 50px;
    color: #fff;
    font-weight: lighter;
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
    transform: translate(0, -50%);
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .table-wrapper table tr th span::before, body.contact main .inner1200 .form-wrapper .table-wrapper table tr th span::before {
        top: 8px;
        right: 0;
    }
}
body.contact main .inner .form-wrapper .table-wrapper table tr th span.required::before, body.contact main .inner1200 .form-wrapper .table-wrapper table tr th span.required::before {
    content: '必須';
    background: #d67070;
}
body.contact main .inner .form-wrapper .table-wrapper table tr th span.optional::before, body.contact main .inner1200 .form-wrapper .table-wrapper table tr th span.optional::before {
    content: '任意';
    background: #96968c;
}
@media only screen and (min-width: 860px) {
    body.contact main .inner .form-wrapper .table-wrapper table tr th span.exception, body.contact main .inner1200 .form-wrapper .table-wrapper table tr th span.exception {
        padding: 51% 0;
    }
}
body.contact main .inner .form-wrapper .table-wrapper table tr th _:lang(x)::-ms-backdrop, body.contact main .inner1200 .form-wrapper .table-wrapper table tr th _:lang(x)::-ms-backdrop, body.contact main .inner .form-wrapper .table-wrapper table tr th span::before, body.contact main .inner1200 .form-wrapper .table-wrapper table tr th span::before {
    padding: 7px 5px 3px !important;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td {
    width: 68%;
    padding: 2px 0 2px 40px;
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .table-wrapper table tr td, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td {
        display: block;
        width: 100%;
        padding: 0;
    }
}
body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="text"], body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="text"],
body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="email"],
body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="email"],
body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="tel"],
body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="tel"] {
    width: 400px;
    height: 50px;
    padding: 0 0 0 10px;
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="text"], body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="text"],
    body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="email"],
    body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="email"],
    body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="tel"],
    body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="tel"] {
        width: 100%;
        border: 1px solid #d9d9d9;
    }
}
body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="text"].location-input, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="text"].location-input, body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="text"].email-input, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="text"].email-input,
body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="email"].location-input,
body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="email"].location-input,
body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="email"].email-input,
body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="email"].email-input,
body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="tel"].location-input,
body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="tel"].location-input,
body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="tel"].email-input,
body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="tel"].email-input {
    width: 100%;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td label, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td label {
    position: relative;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td label::before, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td label::before {
    content: '';
    width: 16px;
    height: 16px;
    border: 1px solid #7c7c7a;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 4px;
    background: #fff;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td label::after, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td label::after {
    width: 12px;
    height: 12px;
    position: absolute;
    left: 3px;
    background: #c9dc86;
    border-radius: 50%;
    top: 7px;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td label span, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td label span {
    display: block;
    padding: 0 0 0 20px;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="checkbox"], body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="checkbox"] {
    display: none;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="checkbox"]:checked + label::before, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="checkbox"]:checked + label::before {
    border-color: #c9dc86;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="checkbox"]:checked + label::after, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="checkbox"]:checked + label::after {
    content: '';
}
body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="radio"], body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="radio"] {
    display: none;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="radio"]:checked + label::before, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="radio"]:checked + label::before {
    border-color: #c9dc86;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td input[type="radio"]:checked + label::after, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td input[type="radio"]:checked + label::after {
    content: '';
}
body.contact main .inner .form-wrapper .table-wrapper table tr td textarea, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td textarea {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: .05em;
    width: 100%;
    border-color: #d9d9d9;
    resize: none;
    padding: 15px;
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .table-wrapper table tr td textarea, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td textarea {
        padding: 10px;
    }
}
body.contact main .inner .form-wrapper .table-wrapper table tr td .radio, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td .radio {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    /* IE11  */
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .table-wrapper table tr td .radio, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td .radio {
        -webkit-flex-direction: column;
        flex-direction: column;
    }
}
body.contact main .inner .form-wrapper .table-wrapper table tr td .radio label, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td .radio label {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: 0;
    color: #7c7c7a;
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .table-wrapper table tr td .radio label, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td .radio label {
        width: 100%;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 2;
    }
}
body.contact main .inner .form-wrapper .table-wrapper table tr td .radio .container, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td .radio .container {
    display: -webkit-flex;
    display: flex;
    width: calc(100% / 3);
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .table-wrapper table tr td .radio .container, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td .radio .container {
        width: 100%;
    }
}
body.contact main .inner .form-wrapper .table-wrapper table tr td .radio .container input, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td .radio .container input {
    order: 1;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td .radio .container label, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td .radio .container label {
    order: 2;
    padding-left: 22px;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td .radio _:lang(x)::-ms-backdrop, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td .radio _:lang(x)::-ms-backdrop, body.contact main .inner .form-wrapper .table-wrapper table tr td .radio .container, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td .radio .container {
    width: 29%;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td .radio .option, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td .radio .option {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.714285714;
    letter-spacing: 0;
    white-space: nowrap;
    color: #7c7c7a;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td .radio--02 .container, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td .radio--02 .container {
    display: -webkit-flex;
    display: flex;
    width: 110px;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td .radio--02 .container input, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td .radio--02 .container input {
    order: 1;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td .radio--02 .container label, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td .radio--02 .container label {
    order: 2;
    padding-left: 22px;
}
body.contact main .inner .form-wrapper .table-wrapper table tr td .radio--02 label:last-child, body.contact main .inner1200 .form-wrapper .table-wrapper table tr td .radio--02 label:last-child {
    margin-right: 0;
}
body.contact main .inner .form-wrapper .table-wrapper table tr:last-child, body.contact main .inner1200 .form-wrapper .table-wrapper table tr:last-child {
    border-bottom: 1px solid #d9d9d9;
}
body.contact main .inner .form-wrapper .table-wrapper table tr:last-child .contact-contents, body.contact main .inner1200 .form-wrapper .table-wrapper table tr:last-child .contact-contents {
    padding-top: 20px;
    padding-bottom: 20px;
    line-height: 1.5;
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .table-wrapper table tr:last-child .contact-contents, body.contact main .inner1200 .form-wrapper .table-wrapper table tr:last-child .contact-contents {
        padding: 0;
    }
}
body.contact main .inner .form-wrapper .btn, body.contact main .inner1200 .form-wrapper .btn {
    margin: 60px auto 0;
    cursor: pointer;
    width: 340px;
    padding: 22px;
}
@media only screen and (max-width: 860px) {
    body.contact main .inner .form-wrapper .btn, body.contact main .inner1200 .form-wrapper .btn {
        width: 100%;
        margin-top: 30px;
        padding: 15px;
    }
}
body.confirm table .contact-contents {
    padding: 2px 0 2px 40px;
    line-height: 1.6;
}
body.confirm table tr .linen {
    line-height: 1.7;
}
body.confirm table tr th .exception {
    width: 255px;
}
body.confirm table tr td.contact-contents {
    padding-left: 0;
}
body.confirm .btn_correct {
    border-bottom: 1px solid #3c4137;
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
    display: block;
    font-weight: 500;
    margin: 40px auto 0;
    padding-bottom: 10px;
    text-align: center;
    width: 166px;
    -webkit-font-smoothing: antialiased;
}
@media only screen and (max-width: 860px) {
    body.confirm .btn_correct {
        font-size: 15px;
        font-size: 1.5rem;
        width: 140px;
    }
}
@media only screen and (min-width: 860px) {
    body.confirm .submitbtn {
        margin-top: 30px !important;
    }
}
body.complete .progressbar ul {
    padding-top: 75px !important;
}
body.complete .complete-content {
    border-top: 1px solid #d9d9d9;
    border-bottom: 1px solid #d9d9d9;
    margin: 60px 0 0;
    padding: 65px 0;
}
@media only screen and (max-width: 860px) {
    body.complete .complete-content {
        padding: 30px 0;
        margin: 30px 0 0;
    }
}
body.complete .complete-content p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2.5;
    letter-spacing: .05em;
    color: #30302c;
    text-align: center;
}
@media only screen and (max-width: 860px) {
    body.complete .complete-content p {
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 2;
    }
}
body.complete .complete-content .btn {
    width: 240px !important;
    color: #fff;
    padding: 18px !important;
    font-size: 14px;
    font-size: 1.4rem;
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}
body.complete .complete-content .btn::before {
    content: none;
}
/* IE11  */
_:lang(x)::-ms-backdrop, .radio .container label {
    padding-top: 3px;
}
/* IE11  */
_:lang(x)::-ms-backdrop, .mv02 .telBox .right {
    position: relative;
    left: 20px !important;
}
body.news main .inner .news-wrapper, body.news main .inner1200 .news-wrapper {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-bottom: 286px;
}
@media only screen and (max-width: 860px) {
    body.news main .inner .news-wrapper, body.news main .inner1200 .news-wrapper {
        margin-bottom: 100px;
    }
}
body.news main .inner .news-wrapper .article, body.news main .inner1200 .news-wrapper .article {
    width: 81%;
}
@media only screen and (max-width: 860px) {
    body.news main .inner .news-wrapper .article, body.news main .inner1200 .news-wrapper .article {
        width: 100%;
    }
}
body.news main .inner .news-wrapper .article ul, body.news main .inner1200 .news-wrapper .article ul {
    margin-top: 120px;
}
@media only screen and (max-width: 860px) {
    body.news main .inner .news-wrapper .article ul, body.news main .inner1200 .news-wrapper .article ul {
        margin-top: 20px;
    }
}
body.news main .inner .news-wrapper .article ul li, body.news main .inner1200 .news-wrapper .article ul li {
    padding: 36px 0;
    border-bottom: 1px solid #d9d9d9;
}
body.news main .inner .news-wrapper .article ul li .cat-date, body.news main .inner1200 .news-wrapper .article ul li .cat-date {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    align-items: center;
}
body.news main .inner .news-wrapper .article ul li .cat-date .cat, body.news main .inner1200 .news-wrapper .article ul li .cat-date .cat {
    font-size: 12px;
    font-size: 1.2rem;
    display: block;
    background: #30302c;
    padding: 5px 5px;
    color: #fff;
    width: auto;
    text-align: center;
}
body.news main .inner .news-wrapper .article ul li .cat-date date, body.news main .inner1200 .news-wrapper .article ul li .cat-date date {
    font-size: 12px;
    font-size: 1.2rem;
    padding-left: 10px;
}
body.news main .inner .news-wrapper .article ul li a, body.news main .inner1200 .news-wrapper .article ul li a {
    display: block;
}
body.news main .inner .news-wrapper .article ul li a .title, body.news main .inner1200 .news-wrapper .article ul li a .title {
    font-size: 24px;
    font-size: 2.4rem;
    padding-top: 20px;
    text-align: left;
}
@media only screen and (max-width: 860px) {
    body.news main .inner .news-wrapper .article ul li a .title, body.news main .inner1200 .news-wrapper .article ul li a .title {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.5;
    }
}
body.news main .inner .news-wrapper .article ul li .text, body.news main .inner1200 .news-wrapper .article ul li .text {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875;
    padding-top: 20px;
}
@media only screen and (max-width: 860px) {
    body.news main .inner .news-wrapper .article ul li .text, body.news main .inner1200 .news-wrapper .article ul li .text {
        font-size: 12px;
        font-size: 1.2rem;
    }
}
body.news main .inner .news-wrapper .article ul li a + a, body.news main .inner1200 .news-wrapper .article ul li a + a {
    display: none;
}
body.news main .inner .news-wrapper .sidebar, body.news main .inner1200 .news-wrapper .sidebar {
    width: 10%;
    margin-top: 214px;
}
@media only screen and (max-width: 860px) {
    body.news main .inner .news-wrapper .sidebar, body.news main .inner1200 .news-wrapper .sidebar {
        width: 100%;
    }
}
body.news main .inner .news-wrapper .sidebar p, body.news main .inner1200 .news-wrapper .sidebar p {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    position: relative;
    font-family: "Noto Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    font-style: italic;
}
@media only screen and (max-width: 860px) {
    body.news main .inner .news-wrapper .sidebar p, body.news main .inner1200 .news-wrapper .sidebar p {
        width: 100%;
        border: 1px solid #30302c;
        padding: 10px;
        text-align: center;
    }
}
body.news main .inner .news-wrapper .sidebar p:after, body.news main .inner1200 .news-wrapper .sidebar p:after {
    content: '';
    display: block;
    width: 20px;
    height: 2px;
    background: #30302c;
    position: absolute;
    left: 0;
    bottom: -20px;
}
@media only screen and (max-width: 860px) {
    body.news main .inner .news-wrapper .sidebar p:after, body.news main .inner1200 .news-wrapper .sidebar p:after {
        display: none;
    }
}
body.news main .inner .news-wrapper .sidebar .archive, body.news main .inner1200 .news-wrapper .sidebar .archive {
    margin-top: 50px;
}
@media only screen and (max-width: 860px) {
    body.news main .inner .news-wrapper .sidebar .archive, body.news main .inner1200 .news-wrapper .sidebar .archive {
        margin-top: 30px;
    }
}
body.news main .inner .news-wrapper .sidebar ul, body.news main .inner1200 .news-wrapper .sidebar ul {
    margin-top: 40px;
}
@media only screen and (max-width: 860px) {
    body.news main .inner .news-wrapper .sidebar ul, body.news main .inner1200 .news-wrapper .sidebar ul {
        margin-top: 20px;
        display: none;
    }
}
body.news main .inner .news-wrapper .sidebar ul li, body.news main .inner1200 .news-wrapper .sidebar ul li {
    padding-bottom: 12px;
}
body.news main .inner .news-wrapper .sidebar ul li a, body.news main .inner1200 .news-wrapper .sidebar ul li a {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
}
body.detail main .inner .news-wrapper .article, body.detail main .inner1200 .news-wrapper .article {
    margin-top: 100px;
}
body.detail main .inner .news-wrapper .article h2, body.detail main .inner1200 .news-wrapper .article h2 {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.5;
}
@media only screen and (max-width: 860px) {
    body.detail main .inner .news-wrapper .article h2, body.detail main .inner1200 .news-wrapper .article h2 {
        font-size: 18px;
        font-size: 1.8rem;
    }
}
body.detail main .inner .news-wrapper .article .cat-date, body.detail main .inner1200 .news-wrapper .article .cat-date {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    align-items: center;
    margin-top: 30px;
    padding-bottom: 80px;
    position: relative;
}
@media only screen and (max-width: 860px) {
    body.detail main .inner .news-wrapper .article .cat-date, body.detail main .inner1200 .news-wrapper .article .cat-date {
        padding-bottom: 40px;
    }
}
body.detail main .inner .news-wrapper .article .cat-date:after, body.detail main .inner1200 .news-wrapper .article .cat-date:after {
    content: '';
    display: block;
    width: 30px;
    height: 1px;
    background: #30302c;
    bottom: 20px;
    left: 0;
    position: absolute;
}
body.detail main .inner .news-wrapper .article .cat-date .cat, body.detail main .inner1200 .news-wrapper .article .cat-date .cat {
    font-size: 12px;
    font-size: 1.2rem;
    display: block;
    background: #30302c;
    padding: 5px 5px;
    color: #fff;
    width: auto;
    text-align: center;
}
body.detail main .inner .news-wrapper .article .cat-date date, body.detail main .inner1200 .news-wrapper .article .cat-date date {
    font-size: 12px;
    font-size: 1.2rem;
    padding-left: 20px;
}
body.detail main .inner .news-wrapper .article p, body.detail main .inner1200 .news-wrapper .article p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875;
    margin-top: 36px;
}
@media only screen and (max-width: 860px) {
    body.detail main .inner .news-wrapper .article p, body.detail main .inner1200 .news-wrapper .article p {
        margin-top: 16px;
        font-size: 14px;
        font-size: 1.4rem;
    }
}
body.detail main .inner .news-wrapper .article a, body.detail main .inner1200 .news-wrapper .article a {
    color: #9bb837;
    font-size: 16px;
    font-size: 1.6rem;
    text-decoration: underline;
}
@media only screen and (max-width: 860px) {
    body.detail main .inner .news-wrapper .article a, body.detail main .inner1200 .news-wrapper .article a {
        font-size: 14px;
        font-size: 1.4rem;
    }
}
body.detail main .inner .news-wrapper .article h3, body.detail main .inner1200 .news-wrapper .article h3 {
    font-size: 20px;
    font-size: 2rem;
    border-top: 1px solid #d9d9d9;
    border-bottom: 2px solid #c9dc86;
    padding: 18px 20px;
    margin-top: 50px;
    font-weight: bold;
}
@media only screen and (max-width: 860px) {
    body.detail main .inner .news-wrapper .article h3, body.detail main .inner1200 .news-wrapper .article h3 {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.5;
        padding: 10px 12px;
        margin-top: 25px;
    }
}
body.detail main .inner .news-wrapper .article h4, body.detail main .inner1200 .news-wrapper .article h4 {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 12px;
    border-bottom: 1px dashed #30302c;
    margin-top: 38px;
    font-weight: bold;
}
@media only screen and (max-width: 860px) {
    body.detail main .inner .news-wrapper .article h4, body.detail main .inner1200 .news-wrapper .article h4 {
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 1.5;
        margin-top: 20px;
    }
}
body.detail main .inner .news-wrapper .article h5, body.detail main .inner1200 .news-wrapper .article h5 {
    margin-top: 48px;
    background: url("../images/news/icon.png") top 2px left/24px auto no-repeat;
    font-size: 16px;
    font-size: 1.6rem;
    padding-left: 30px;
    line-height: 24px;
}
@media only screen and (max-width: 860px) {
    body.detail main .inner .news-wrapper .article h5, body.detail main .inner1200 .news-wrapper .article h5 {
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 1.5;
        margin-top: 24px;
    }
}
body.detail main .inner .news-wrapper .article blockquote, body.detail main .inner1200 .news-wrapper .article blockquote {
    background: #f8faf1;
    padding: 40px 50px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2;
    margin-top: 50px;
}
body.detail main .inner .news-wrapper .article blockquote p, body.detail main .inner1200 .news-wrapper .article blockquote p {
    margin-top: 0;
}
@media only screen and (max-width: 860px) {
    body.detail main .inner .news-wrapper .article blockquote, body.detail main .inner1200 .news-wrapper .article blockquote {
        margin-top: 25px;
        padding: 20px;
    }
}
body.detail main .inner .news-wrapper .sidebar, body.detail main .inner1200 .news-wrapper .sidebar {
    margin-top: 104px;
}
body.reason {
    counter-reset: counter;
}
@media only screen and (max-width: 860px) {
    body.reason .sub-mv--reason .ja {
        letter-spacing: 0;
    }
}
body.reason main .reasonBox-wrapper {
    padding-bottom: 290px;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox-wrapper {
        padding-bottom: 70px;
    }
}
body.reason main .outside {
    margin-bottom: 30px;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox {
        padding: 40px 0 0;
    }
}
body.reason main .reasonBox:nth-of-type(1) {
    padding: 0;
    margin-bottom: 20px;
}
body.reason main .reasonBox .reasonBox-top {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items: center;
    padding: 100px 0 0;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-top {
        padding: 0;
    }
}
body.reason main .reasonBox .reasonBox-top .text--left {
    order: 1;
}
body.reason main .reasonBox .reasonBox-top .text--right {
    order: 2;
}
body.reason main .reasonBox .reasonBox-top .text {
    width: 60%;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-top .text {
        width: 100%;
    }
}
body.reason main .reasonBox .reasonBox-top .text--title {
    display: block;
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: .05em;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    position: relative;
    padding: 20px 0 25px 60px;
    border-bottom: 1px solid #d9d9d9;
    font-style: italic;
    /* IE11  */
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-top .text--title {
        font-size: 18px;
        font-size: 1.8rem;
        padding: 0 0 10px 60px;
    }
}
body.reason main .reasonBox .reasonBox-top .text--title::before {
    content: '';
    width: 47px;
    height: 41px;
    background: url(../images/reason/icon.png) center/cover no-repeat;
    position: absolute;
    left: 0;
    top: 5px;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-top .text--title::before {
        width: 35px;
        height: 30px;
        left: 10px;
        top: -10px;
    }
}
body.reason main .reasonBox .reasonBox-top .text--title .letters {
    position: relative;
}
body.reason main .reasonBox .reasonBox-top .text--title .letters::after {
    content: counter(counter);
    counter-increment: counter;
    font-size: 60px;
    font-size: 6rem;
    color: #30302c;
    position: absolute;
    right: -35px;
    top: -30px;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-top .text--title .letters::after {
        font-size: 38px;
        font-size: 3.8rem;
        top: -15px;
        left: auto;
        right: -30px;
    }
}
body.reason main .reasonBox .reasonBox-top .text--title _:lang(x)::-ms-backdrop, body.reason main .reasonBox .reasonBox-top .text--title .letters:after {
    top: -15px;
}
body.reason main .reasonBox .reasonBox-top .text--subtitle {
    display: block;
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.6;
    letter-spacing: .05em;
    padding: 48px 0;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-top .text--subtitle {
        font-size: 18px;
        font-size: 1.8rem;
        padding: 20px 0;
    }
}
body.reason main .reasonBox .reasonBox-top .text--content {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875;
    letter-spacing: .05em;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-top .text--content {
        font-size: 12px;
        font-size: 1.2rem;
        padding: 20px 0 0;
    }
}
body.reason main .reasonBox .reasonBox-top .img {
    display: block;
    width: 38%;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-top .img {
        width: 100%;
    }
}
body.reason main .reasonBox .reasonBox-top .img--left {
    margin-left: -50px;
    order: 1;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-top .img--left {
        margin-left: 0;
    }
}
body.reason main .reasonBox .reasonBox-top .img--right {
    margin-right: -50px;
    order: 2;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-top .img--right {
        margin-right: 0;
    }
}
body.reason main .reasonBox .reasonBox-bottom {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: 60px 0 0 0;
    border: 4px double #96968c;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-bottom {
        margin: 30px 0 0;
    }
}
body.reason main .reasonBox .reasonBox-bottom .text {
    width: calc(100% - 24%);
    padding: 30px 50px;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-bottom .text {
        width: 100%;
        padding: 20px;
    }
}
@media only screen and (min-width: 860px) {
    body.reason main .reasonBox .reasonBox-bottom .text--left {
        order: 1;
    }
}
@media only screen and (min-width: 860px) {
    body.reason main .reasonBox .reasonBox-bottom .text--right {
        order: 2;
    }
}
body.reason main .reasonBox .reasonBox-bottom .text--title {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.636363636;
    letter-spacing: 0;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    display: block;
    padding: 0 0 10px;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-bottom .text--title {
        padding: 0;
        font-size: 16px;
        font-size: 1.6rem;
    }
}
body.reason main .reasonBox .reasonBox-bottom .text--content {
    font-size: 14px;
    font-size: 1.4rem;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    line-height: 2;
    letter-spacing: .05em;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-bottom .text--content {
        font-size: 12px;
        font-size: 1.2rem;
        padding: 10px 0 0;
    }
}
body.reason main .reasonBox .reasonBox-bottom .text--name {
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 2;
    letter-spacing: .05em;
    position: relative;
    text-align: right;
    padding: 0 0 0 20px;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-bottom .text--name {
        font-size: 14px;
        font-size: 1.4rem;
        padding: 10px 0 0;
    }
}
@media only screen and (min-width: 860px) {
    body.reason main .reasonBox .reasonBox-bottom .text--name::before {
        content: '';
        width: 100%;
        height: 6px;
        background: url(../images/reason/border.png) center/cover no-repeat;
        position: absolute;
        left: 0;
        top: 17px;
        z-index: -1;
    }
}
body.reason main .reasonBox .reasonBox-bottom .text--name .position {
    font-size: 14px;
    font-size: 1.4rem;
    display: inline-block;
    padding-left: 25px;
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-bottom .text--name .position {
        font-size: 12px;
        font-size: 1.2rem;
        padding-left: 10px;
    }
}
body.reason main .reasonBox .reasonBox-bottom .text--name .ip5 {
    display: none;
}
@media only screen and (max-width: 320px) {
    body.reason main .reasonBox .reasonBox-bottom .text--name .ip5 {
        display: block;
    }
}
body.reason main .reasonBox .reasonBox-bottom .text--name--01::before {
    width: 52%;
}
body.reason main .reasonBox .reasonBox-bottom .text--name--02::before {
    width: 51%;
}
body.reason main .reasonBox .reasonBox-bottom .text--name--03::before {
    width: 45%;
}
body.reason main .reasonBox .reasonBox-bottom .img {
    width: 24%;
}
@media only screen and (max-width: 860px) {
    body.reason main .reasonBox .reasonBox-bottom .img {
        width: 100%;
    }
}
@media only screen and (min-width: 860px) {
    body.reason main .reasonBox .reasonBox-bottom .img--left {
        order: 1;
    }
}
@media only screen and (min-width: 860px) {
    body.reason main .reasonBox .reasonBox-bottom .img--right {
        order: 2;
    }
}
body.reason .reasonBox--03 {
    margin-top: 20px;
}
body.recruit main {
    overflow: hidden;
}
body.recruit main .topbox--reason {
    padding-bottom: 15px !important;
}
body.recruit main .section-wrapper {
    padding: 0 50px;
}
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
    body.recruit main .section-wrapper {
        padding: 0 5px;
    }
}
@media only screen and (max-width: 860px) {
    body.recruit main .section-wrapper {
        padding: 0 25px;
    }
}
body.recruit main span.spec {
    font-weight: bold;
}
body.recruit main .sec--01 {
    position: relative;
}
body.recruit main .sec--01::before {
    content: '';
    width: 100%;
    height: 131%;
    background: #f8faf1;
    position: absolute;
    top:0%;
    left: 0;
    z-index: -1;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--01::before {
        margin-right: -10%;
        margin-left: -10%;
        padding-right: 5%;
        padding-left: 5%;
        width: 103%;
        left: 3%;
    }
}
body.recruit main .sec--02 {
    padding-bottom: 110px;
    margin-top: 5px;
    position: relative;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--02 {
        padding-bottom: 50px;
    }
}
body.recruit main .sec--02::before {
    content: '';
    width: 100%;
    height: 100%;
    background: #f8faf1;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--02::before {
        margin-right: -10%;
        margin-left: -10%;
        padding-right: 5%;
        padding-left: 5%;
        width: 103%;
        left: 3%;
    }
}
body.recruit main .sec--02 .box .inner, body.recruit main .sec--02 .box .inner1200 {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
body.recruit main .sec--02 .box .img {
    width: 45%;
}
@media only screen and (min-width: 860px) {
    body.recruit main .sec--02 .box .img {
        *zoom: 1;
    }
    body.recruit main .sec--02 .box .img:after {
        content: "";
        display: table;
        clear: both;
    }
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--02 .box .img {
        width: 100%;
    }
}
body.recruit main .sec--02 .box .img span:nth-of-type(1) {
    display: block;
    width: 520px;
    height: 365px;
    margin-left: -140px;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--02 .box .img span:nth-of-type(1) {
        margin-left: 0;
        width: 100%;
        height: auto;
    }
}
body.recruit main .sec--02 .box .img span:nth-of-type(2) {
    display: block;
    width: 310px;
    height: 220px;
    margin: 25px 0 0;
}
@media only screen and (min-width: 860px) {
    body.recruit main .sec--02 .box .img span:nth-of-type(2) {
        float: right;
    }
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--02 .box .img span:nth-of-type(2) {
        width: 100%;
        height: auto;
    }
}
body.recruit main .sec--02 .box .text {
    width: 52%;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--02 .box .text {
        width: 100%;
        padding: 15px 0 0;
    }
}
body.recruit main .sec--02 .box .text p {
    position: relative;
    top: 9px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 2.222222222;
    letter-spacing: .05em;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--02 .box .text p {
        font-size: 12px;
        font-size: 1.2rem;
    }
}
body.recruit main .sec--02 .box .text .text-bottom {
    padding: 80px 0 0;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--02 .box .text .text-bottom {
        padding: 25px 0 0;
    }
}
body.recruit main .sec--02 .box .text .text-bottom table {
    width: 100%;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--02 .box .text .text-bottom table {
        display: block;
        width: 100%;
    }
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--02 .box .text .text-bottom table tbody {
        display: block;
        width: 100%;
    }
}
body.recruit main .sec--02 .box .text .text-bottom table tr {
    width: 100%;
    display: block;
    margin-top: 25px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    align-items: center;
}
body.recruit main .sec--02 .box .text .text-bottom table tr:nth-of-type(1) {
    margin-top: 0;
}
body.recruit main .sec--02 .box .text .text-bottom table tr th {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.363636364;
    letter-spacing: 0;
    background: #fff;
    padding: 40px 25px;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--02 .box .text .text-bottom table tr th {
        display: block;
        width: 100%;
        font-size: 16px;
        font-size: 1.6rem;
        padding: 10px 20px;
    }
}
body.recruit main .sec--02 .box .text .text-bottom table tr td {
    width: calc(100% - 116px);
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--02 .box .text .text-bottom table tr td {
        display: block;
        width: 100%;
    }
}
body.recruit main .sec--02 .box .text .text-bottom table tr td ul li {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2.3125;
    letter-spacing: .05em;
    padding: 0 0 0 30px;
    position: relative;
    border-bottom: 1px solid #d9d9d9;
    margin: 0 0 0 35px;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--02 .box .text .text-bottom table tr td ul li {
        font-size: 12px;
        font-size: 1.2rem;
        margin: 0;
        padding: 5px 0 5px 25px;
    }
}
body.recruit main .sec--02 .box .text .text-bottom table tr td ul li::before {
    content: '';
    width: 7px;
    height: 7px;
    background: #000;
    position: absolute;
    left: 15px;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
    transform: translate(0, -50%);
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--02 .box .text .text-bottom table tr td ul li::before {
        top: calc(50% -2px);
        left: 10px;
    }
}
body.recruit main .sec--03 {
    padding: 40px 0 140px;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--03 .pad {
        padding: 40px 0 30px !important;
    }
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--03 {
        padding: 0 0 30px;
    }
}
body.recruit main .sec--03 .box-top {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
body.recruit main .sec--03 .box-top .text {
    width: 50%;
    padding: 30px 0 0;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--03 .box-top .text {
        padding: 0;
        width: 100%;
    }
}
body.recruit main .sec--03 .box-top .text .words {
    font-size: 48px;
    font-size: 4.8rem;
    line-height: 1.5;
    letter-spacing: .05em;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (min-width: 860px) {
    body.recruit main .sec--03 .box-top .text .words {
        position: relative;
        white-space: nowrap;
        z-index: 10;
    }
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--03 .box-top .text .words {
        font-size: 24px;
        font-size: 2.4rem;
    }
}
@media only screen and (max-width: 320px) {
    body.recruit main .sec--03 .box-top .text .words {
        font-size: 23px;
        font-size: 2.3rem;
    }
}
body.recruit main .sec--03 .box-top .text .profile {
    padding: 65px 0 0;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--03 .box-top .text .profile {
        padding: 30px 0 0;
    }
}
body.recruit main .sec--03 .box-top .text .profile--top {
    display: block;
}
body.recruit main .sec--03 .box-top .text .profile--top .tag {
    display: inline-block;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: .05em;
    background: #000;
    color: #fff;
    padding: 7px 22px;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--03 .box-top .text .profile--top .tag {
        font-size: 12px;
        font-size: 1.2rem;
    }
}
body.recruit main .sec--03 .box-top .text .profile--top .desc {
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    display: inline-block;
    padding: 0 0 0 10px;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--03 .box-top .text .profile--top .desc {
        font-size: 12px;
        font-size: 1.2rem;
        padding: 0;
    }
}
body.recruit main .sec--03 .box-top .text .profile--bottom {
    display: block;
}
body.recruit main .sec--03 .box-top .text .profile--bottom .position {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 3.75;
    letter-spacing: .05em;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    color: #30302c;
}
@media only screen and (min-width: 860px) {
    body.recruit main .sec--03 .box-top .text .profile--bottom .position {
        padding: 0 25px 0 0;
    }
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--03 .box-top .text .profile--bottom .position {
        font-size: 12px;
        font-size: 1.2rem;
    }
}
body.recruit main .sec--03 .box-top .text .profile--bottom .name {
    font-size: 28px;
    font-size: 2.8rem;
    line-height: 2.142857143;
    letter-spacing: .05em;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    position: relative;
    color: #30302c;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--03 .box-top .text .profile--bottom .name {
        font-size: 20px;
        font-size: 2rem;
    }
}
@media only screen and (min-width: 860px) {
    body.recruit main .sec--03 .box-top .text .profile--bottom .name::before {
        content: '';
        width: 160px;
        border-top: 1px solid #30302c;
        position: absolute;
        bottom: 12px;
        right: -168px;
    }
}
@media only screen and (min-width: 860px) and (max-width: 1100px) {
    body.recruit main .sec--03 .box-top .text .profile--bottom .name::before {
        width: 100px;
        right: -110px;
    }
}
body.recruit main .sec--03 .box-top .text .comment {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2.25;
    letter-spacing: .05em;
    padding: 55px 50px 0 0;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--03 .box-top .text .comment {
        font-size: 12px;
        font-size: 1.2rem;
        padding: 20px 0 0;
    }
}
body.recruit main .sec--03 .box-top .img {
    width: 100%;
    margin-right: -50%;
}
body.recruit main .sec--03 .box-bottom p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2.25;
    letter-spacing: .05em;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--03 .box-bottom p {
        font-size: 12px;
        font-size: 1.2rem;
    }
}
body.recruit main .sec--03 .box-bottom p span {
    display: block;
    padding: 15px 0 0;
}
body.recruit main .sec--03 .box-bottom .img {
    display: block;
    width: 625px;
    margin-left: -60px;
    padding: 60px 0 0;
}
body.recruit main .sec--04 {
    background: #f9f9f9;
    margin-right: -50px;
    margin-left: -50px;
    padding-right: 50px;
    padding-left: 50px;
    padding-bottom: 80px;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--04 {
        margin-right: -25px;
        margin-left: -25px;
        padding-right: 25px;
        padding-left: 25px;
        padding-bottom: 40px;
    }
}
body.recruit main .sec--04 .requirement-list {
    width: 880px;
    margin: 0 auto;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--04 .requirement-list {
        width: 100%;
    }
}
body.recruit main .sec--04 .requirement-list table {
    width: 100%;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--04 .requirement-list table {
        display: block;
    }
}
body.recruit main .sec--04 .requirement-list table .spacen {
    letter-spacing: 1.7em;
}
@media only screen and (min-width: 860px) {
    body.recruit main .sec--04 .requirement-list table tr {
        border-top: 1px solid #d9d9d9;
    }
    body.recruit main .sec--04 .requirement-list table tr:last-child {
        border-bottom: 1px solid #d9d9d9;
    }
}
body.recruit main .sec--04 .requirement-list table tr th, body.recruit main .sec--04 .requirement-list table tr td {
    padding: 20px 40px;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--04 .requirement-list table tr th, body.recruit main .sec--04 .requirement-list table tr td {
        padding: 15px;
    }
}
body.recruit main .sec--04 .requirement-list table tr th {
    background: #fff;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2.25;
    letter-spacing: .025em;
    width:240px;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--04 .requirement-list table tr th {
        display: block;
        width: 100%;
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 1;
    }
}
body.recruit main .sec--04 .requirement-list table tr td {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.714285714;
    letter-spacing: .025em;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--04 .requirement-list table tr td {
        display: block;
        width: 100%;
        font-size: 12px;
        font-size: 1.2rem;
    }
}
body.recruit main .sec--04 .requirement-list .notice {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.714285714;
    letter-spacing: .025em;
    padding: 50px 0 0;
    color: #30302c;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--04 .requirement-list .notice {
        padding: 15px 0 0;
        font-size: 12px;
        font-size: 1.2rem;
    }
}
body.recruit main .sec--04 .requirement-list .notice a {
    color: #30302c;
    font-weight: 600;
}
@media only screen and (min-width: 860px) {
    body.recruit main .sec--05 .box {
        padding-bottom: 120px;
    }
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--05 .box {
        padding-bottom: 50px;
    }
}
body.recruit main .sec--05 .box--top .contents, body.recruit main .sec--05 .box--bottom .contents {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2.25;
    letter-spacing: .05em;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--05 .box--top .contents, body.recruit main .sec--05 .box--bottom .contents {
        font-size: 12px;
        font-size: 1.2rem;
    }
}
body.recruit main .sec--05 .box--top {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
body.recruit main .sec--05 .box--top .img {
    width: 42%;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--05 .box--top .img {
        width: 100%;
    }
}
body.recruit main .sec--05 .box--top .text {
    width: 49.5%;
    padding: 24px 0 0;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--05 .box--top .text {
        width: 100%;
    }
}
body.recruit main .sec--05 .box--top .text .phrase {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 2;
    letter-spacing: .05em;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--05 .box--top .text .phrase {
        font-size: 18px;
        font-size: 1.8rem;
    }
}
body.recruit main .sec--05 .box--top .text .contents {
    padding: 50px 0 0;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--05 .box--top .text .contents {
        padding: 20px 0 0;
    }
}
body.recruit main .sec--05 .box--bottom {
    line-height: 1.5;
    letter-spacing: .05em;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    padding: 55px 0 0;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--05 .box--bottom {
        padding: 0;
    }
}
body.recruit main .sec--05 .box--bottom .name {
    font-size: 24px;
    font-size: 2.4rem;
    display: block;
    text-align: right;
    position: relative;
    color: #30302c;
    margin: 40px 0 0;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--05 .box--bottom .name {
        font-size: 18px;
        font-size: 1.8rem;
        margin: 10px 0 0;
    }
}
@media only screen and (min-width: 860px) {
    body.recruit main .sec--05 .box--bottom .name::before {
        content: '';
        width: 72%;
        height: 1px;
        background: #d9d9d9;
        position: absolute;
        left: 0;
        top: 55%;
    }
}
body.recruit main .sec--05 .box--bottom .name .position {
    font-size: 18px;
    font-size: 1.8rem;
    padding-right: 15px;
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec--05 .box--bottom .name .position {
        font-size: 12px;
        font-size: 1.2rem;
        padding-right: 0;
    }
}
@media only screen and (max-width: 860px) {
    body.recruit main .sec .inner, body.recruit main .sec .inner1200 {
        padding: 0;
    }
}
body.top main #mainv {
    height: 450px;
    position: relative;
}
body.top main #mainv ul {
    height: 100%;
}
body.top main #mainv ul div {
    height: 100%;
}
body.top main #mainv ul div li {
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
body.top main #mainv ul div li.slide01 {
    background-image: url(../images/top/main_v01.jpg);
    background-position: top center;
}
body.top main #mainv ul div li.slide02 {
    background-image: url(../images/top/main_v02.jpg);
}
body.top main #mainv ul div li.slide03 {
    background-image: url(../images/top/main_v03.jpg);
}
@media only screen and (max-width: 860px) {
    body.top main #mainv ul div li.slide01 {
        background-image: url(../images/top/main_v03_sp.jpg);
    }
    body.top main #mainv ul div li.slide02 {
        background-image: url(../images/top/main_v02_sp.jpg);
    }
    body.top main #mainv ul div li.slide03 {
        background-image: url(../images/top/main_v01_sp.jpg);
    }
}
body.top main #mainv > .catch {
    position: absolute;
    width: 555px;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 8%;
}
@media only screen and (max-width: 860px) {
    body.top main #mainv > .catch {
        width: 85%;
        top: 30px;
        bottom: auto;
        left: 5%;
        max-width: 380px;
    }
}
body.top main #intro {
    overflow: hidden;
    min-width: 1000px;
}
@media only screen and (max-width: 860px) {
    body.top main #intro {
        min-width: 0;
    }
}
body.top main #intro .intro-upper .inner, body.top main #intro .intro-upper .inner1200 {
    position: relative;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-upper .inner, body.top main #intro .intro-upper .inner1200 {
        padding: 0;
    }
}
body.top main #intro .intro-upper .inner .right, body.top main #intro .intro-upper .inner1200 .right {
    float: right;
    padding-top: 145px;
    padding-right: 110px;
    position: relative;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-upper .inner .right, body.top main #intro .intro-upper .inner1200 .right {
        padding: 0;
        float: none;
        width: 265px;
        margin: 0 auto;
    }
}
body.top main #intro .intro-upper .inner .right__border, body.top main #intro .intro-upper .inner1200 .right__border {
    position: absolute;
    right: 0;
    top: 100px;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-upper .inner .right__border, body.top main #intro .intro-upper .inner1200 .right__border {
        top: -26px;
        right: 7px;
    }
}
body.top main #intro .intro-upper .inner .right__border span, body.top main #intro .intro-upper .inner1200 .right__border span {
    display: block;
    width: 4px;
    height: 4px;
    border-radius: 4px;
    background: #30302c;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-upper .inner .right__border span, body.top main #intro .intro-upper .inner1200 .right__border span {
        width: 3px;
        height: 3px;
        border-radius: 3px;
    }
}
body.top main #intro .intro-upper .inner .right__border .animation01, body.top main #intro .intro-upper .inner1200 .right__border .animation01 {
    opacity: 0;
    transition: 1.7s;
}
body.top main #intro .intro-upper .inner .right__border .animation01.is-active, body.top main #intro .intro-upper .inner1200 .right__border .animation01.is-active {
    opacity: 1;
}
body.top main #intro .intro-upper .inner .right__border:before, body.top main #intro .intro-upper .inner1200 .right__border:before {
    content: "";
    position: absolute;
    right: 1px;
    top: 20px;
    width: 1px;
    height: 0px;
    background: #30302c;
    background: #30302c;
    transition: 1s;
    transition-delay: 0.4s;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-upper .inner .right__border:before, body.top main #intro .intro-upper .inner1200 .right__border:before {
        right: 1px;
        top: 6px;
        height: 190px;
    }
}
body.top main #intro .intro-upper .inner .right .animation01.is-active:before, body.top main #intro .intro-upper .inner1200 .right .animation01.is-active:before {
    height: 300px;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-upper .inner .right .animation01.is-active:before, body.top main #intro .intro-upper .inner1200 .right .animation01.is-active:before {
        height: 190px;
    }
}
body.top main #intro .intro-upper .inner .right__catch, body.top main #intro .intro-upper .inner1200 .right__catch {
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -o-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 2.727272727;
    letter-spacing: 0.1em;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    -webkit-transform: translate(100px, 0);
    -moz-transform: translate(100px, 0);
    -ms-transform: translate(100px, 0);
    -o-transform: translate(100px, 0);
    transform: translate(100px, 0);
    transition: 2s;
    transition-delay: 0.8s;
}
@media only screen and (min-width: 860px) {
    body.top main #intro .intro-upper .inner .right__catch, body.top main #intro .intro-upper .inner1200 .right__catch {
        width: 294px;
        height: 337px;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-upper .inner .right__catch, body.top main #intro .intro-upper .inner1200 .right__catch {
        margin: 78px 0 0;
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 2.4375em;
        height: 300px;
    }
}
body.top main #intro .intro-upper .inner .right__catch.is-active, body.top main #intro .intro-upper .inner1200 .right__catch.is-active {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
}
body.top main #intro .intro-upper .inner .right__catch b, body.top main #intro .intro-upper .inner1200 .right__catch b {
    font-weight: normal;
    position: relative;
    display: inline-block;
}
body.top main #intro .intro-upper .inner .right__catch b:before, body.top main #intro .intro-upper .inner1200 .right__catch b:before {
    content: "";
    position: absolute;
    background: #f3fbd8;
    width: 6px;
    height: 99%;
    right: 13px;
    top: 0;
    z-index: -1;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-upper .inner .right__catch b:before, body.top main #intro .intro-upper .inner1200 .right__catch b:before {
        width: 5px;
        right: 8px;
    }
}
body.top main #intro .intro-upper .inner .left-img, body.top main #intro .intro-upper .inner1200 .left-img {
    position: absolute;
    left: -250px;
    top: 150px;
    transition-delay: 2s;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-upper .inner .left-img, body.top main #intro .intro-upper .inner1200 .left-img {
        left: 0;
        width: 82.66666%;
        position: relative;
        top: 0;
        margin-top: 60px;
        transition-delay: 0.5s;
    }
}
body.top main #intro .intro-upper .inner .left-img__whole, body.top main #intro .intro-upper .inner1200 .left-img__whole {
    position: relative;
}
body.top main #intro .intro-upper .inner .left-img__whole .border-black, body.top main #intro .intro-upper .inner1200 .left-img__whole .border-black {
    position: absolute;
    top: -20px;
    left: 15px;
    width: calc(100% + 5px);
    height: calc(100% + 5px);
    display: block;
    border: 1px solid #30302c;
    z-index: -1;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-upper .inner .left-img__whole .border-black, body.top main #intro .intro-upper .inner1200 .left-img__whole .border-black {
        top: -10px;
        left: -1px;
        width: calc(100% + 11px);
        height: 100%;
    }
}
body.top main #intro .intro-upper .inner .left-img__whole__img, body.top main #intro .intro-upper .inner1200 .left-img__whole__img {
    position: relative;
    overflow: hidden;
}
body.top main #intro .intro-upper .inner .left-img__whole__img .border-white, body.top main #intro .intro-upper .inner1200 .left-img__whole__img .border-white {
    position: absolute;
    top: -15px;
    left: 15px;
    width: 100%;
    height: 100%;
    display: block;
    border: 1px solid #fff;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-upper .inner .left-img__whole__img .border-white, body.top main #intro .intro-upper .inner1200 .left-img__whole__img .border-white {
        top: -10px;
        left: -1px;
        width: calc(100% + 2px);
        height: 100%;
    }
}
body.top main #intro .intro-upper .inner .left-img__whole__img .catchimg, body.top main #intro .intro-upper .inner1200 .left-img__whole__img .catchimg {
    position: absolute;
    right: 20px;
    bottom: 16px;
    width: 230px;
    height: auto;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-upper .inner .left-img__whole__img .catchimg, body.top main #intro .intro-upper .inner1200 .left-img__whole__img .catchimg {
        width: 44.51612%;
        bottom: 10px;
        right: 15px;
        filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.8));
    }
}
body.top main #intro .intro-upper .inner .left-img__whole__img .bgimg, body.top main #intro .intro-upper .inner1200 .left-img__whole__img .bgimg {
    width: 750px;
}
body.top main #intro .intro-bottom {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(../images/top/sec01_bg.jpg);
    margin-top: 310px;
    position: relative;
    z-index: 0;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom {
        margin-top: 75px;
        background-image: url(../images/top/sec01_bg_sp.jpg);
        padding-bottom: 64px;
    }
}
body.top main #intro .intro-bottom .inner, body.top main #intro .intro-bottom .inner1200 {
    height: 550px;
    position: relative;
}

body.fukui main #intro .intro-bottom .inner, body.fukui main #intro .intro-bottom .inner1200 {
    height: 450px !important;
    position: relative;
}

@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner, body.top main #intro .intro-bottom .inner1200 {
        height: auto;
        padding: 0;
    }
}
body.top main #intro .intro-bottom .inner .left-img, body.top main #intro .intro-bottom .inner1200 .left-img {
    position: absolute;
    left: 0;
    top: -90px;
    transition-delay: 0.8s;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .left-img, body.top main #intro .intro-bottom .inner1200 .left-img {
        position: relative;
        top: -40px;
        *zoom: 1;
        transition-delay: 0.5s;
    }
    body.top main #intro .intro-bottom .inner .left-img:after, body.top main #intro .intro-bottom .inner1200 .left-img:after {
        content: "";
        display: table;
        clear: both;
    }
}
body.top main #intro .intro-bottom .inner .left-img__whole, body.top main #intro .intro-bottom .inner1200 .left-img__whole {
    position: relative;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .left-img__whole, body.top main #intro .intro-bottom .inner1200 .left-img__whole {
        right: 0px;
        width: 82.66666%;
        float: right;
    }
}
body.top main #intro .intro-bottom .inner .left-img__whole .border-black, body.top main #intro .intro-bottom .inner1200 .left-img__whole .border-black {
    position: absolute;
    top: -20px;
    left: 15px;
    width: calc(100% + 5px);
    height: calc(100% + 5px);
    display: block;
    border: 1px solid #30302c;
    z-index: -1;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .left-img__whole .border-black, body.top main #intro .intro-bottom .inner1200 .left-img__whole .border-black {
        top: -10px;
        left: auto;
        right: -1px;
        width: calc(100% + 11px);
        height: 100%;
    }
}
body.top main #intro .intro-bottom .inner .left-img__whole__img, body.top main #intro .intro-bottom .inner1200 .left-img__whole__img {
    position: relative;
    overflow: hidden;
}
body.top main #intro .intro-bottom .inner .left-img__whole__img .border-white, body.top main #intro .intro-bottom .inner1200 .left-img__whole__img .border-white {
    position: absolute;
    top: -15px;
    left: 15px;
    width: 100%;
    height: 100%;
    display: block;
    border: 1px solid #fff;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .left-img__whole__img .border-white, body.top main #intro .intro-bottom .inner1200 .left-img__whole__img .border-white {
        top: -10px;
        right: -1px;
        left: auto;
        width: calc(100% + 2px);
    }
}
body.top main #intro .intro-bottom .inner .left-img__whole__img .catchimg, body.top main #intro .intro-bottom .inner1200 .left-img__whole__img .catchimg {
    position: absolute;
    right: 20px;
    bottom: 16px;
    width: 230px;
    height: auto;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .left-img__whole__img .catchimg, body.top main #intro .intro-bottom .inner1200 .left-img__whole__img .catchimg {
        right: auto;
        left: 15px;
        bottom: 10px;
        width: 44.19354%;
        filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.8));
    }
}
body.top main #intro .intro-bottom .inner .left-img__whole__img .bgimg, body.top main #intro .intro-bottom .inner1200 .left-img__whole__img .bgimg {
    width: 470px;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .left-img__whole__img .bgimg, body.top main #intro .intro-bottom .inner1200 .left-img__whole__img .bgimg {
        width: auto;
    }
}
body.top main #intro .intro-bottom .inner .right-img, body.top main #intro .intro-bottom .inner1200 .right-img {
    position: absolute;
    right: -160px;
    top: -150px;
    transition-delay: 0.3s;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .right-img, body.top main #intro .intro-bottom .inner1200 .right-img {
        right: auto;
        position: relative;
        top: -3px;
        width: 82.66666%;
        transition-delay: 1s;
    }
}
body.top main #intro .intro-bottom .inner .right-img__whole, body.top main #intro .intro-bottom .inner1200 .right-img__whole {
    position: relative;
}
body.top main #intro .intro-bottom .inner .right-img__whole .border-black, body.top main #intro .intro-bottom .inner1200 .right-img__whole .border-black {
    position: absolute;
    top: -20px;
    left: 15px;
    width: calc(100% + 5px);
    height: calc(100% + 5px);
    display: block;
    border: 1px solid #30302c;
    z-index: -1;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .right-img__whole .border-black, body.top main #intro .intro-bottom .inner1200 .right-img__whole .border-black {
        width: calc(100% + 11px);
        height: 100%;
        top: -10px;
        left: -1px;
    }
}
body.top main #intro .intro-bottom .inner .right-img__whole__img, body.top main #intro .intro-bottom .inner1200 .right-img__whole__img {
    position: relative;
    overflow: hidden;
}
body.top main #intro .intro-bottom .inner .right-img__whole__img .border-white, body.top main #intro .intro-bottom .inner1200 .right-img__whole__img .border-white {
    position: absolute;
    top: -15px;
    left: 15px;
    width: 100%;
    height: 100%;
    display: block;
    border: 1px solid #fff;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .right-img__whole__img .border-white, body.top main #intro .intro-bottom .inner1200 .right-img__whole__img .border-white {
        top: -10px;
        left: -1px;
        width: calc(100% + 2px);
    }
}
body.top main #intro .intro-bottom .inner .right-img__whole__img .catchimg, body.top main #intro .intro-bottom .inner1200 .right-img__whole__img .catchimg {
    position: absolute;
    left: 20px;
    top: 16px;
    width: 310px;
    height: auto;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .right-img__whole__img .catchimg, body.top main #intro .intro-bottom .inner1200 .right-img__whole__img .catchimg {
        width: 60.48387%;
        top: auto;
        bottom: 10px;
        left: auto;
        right: 15px;
        filter: drop-shadow(1px 3px 5px rgba(0, 0, 0, 0.8));
    }
}
body.top main #intro .intro-bottom .inner .right-img__whole__img .bgimg, body.top main #intro .intro-bottom .inner1200 .right-img__whole__img .bgimg {
    width: 660px;
}
body.top main #intro .intro-bottom .inner .intro-buttons, body.top main #intro .intro-bottom .inner1200 .intro-buttons {
    position: absolute;
    bottom: 85px;
    left: 0;
    width: 100%;
    font-size: 0;
    text-align: center;
    -webkit-transform: translate(0, 100px);
    -moz-transform: translate(0, 100px);
    -ms-transform: translate(0, 100px);
    -o-transform: translate(0, 100px);
    transform: translate(0, 100px);
    transition: 1s;
}
body.top main #intro .intro-bottom .inner .intro-buttons.is-active, body.top main #intro .intro-bottom .inner1200 .intro-buttons.is-active {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .intro-buttons, body.top main #intro .intro-bottom .inner1200 .intro-buttons {
        position: relative;
        bottom: 0;
    }
}
body.top main #intro .intro-bottom .inner .intro-buttons li, body.top main #intro .intro-bottom .inner1200 .intro-buttons li {
    display: inline-block;
    width: 400px;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .intro-buttons li, body.top main #intro .intro-bottom .inner1200 .intro-buttons li {
        width: 70.66666%;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .intro-buttons li .btn, body.top main #intro .intro-bottom .inner1200 .intro-buttons li .btn {
        padding: 15px 0 13px;
        background: #30302c;
        border: none;
        margin-top: 20px;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .intro-buttons li .btn:before, body.top main #intro .intro-bottom .inner1200 .intro-buttons li .btn:before {
        left: 0;
        top: -1px;
        width: 20px;
        background: #fff;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .intro-buttons li .btn:after, body.top main #intro .intro-bottom .inner1200 .intro-buttons li .btn:after {
        width: 5px;
        height: 5px;
        right: 20px;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .intro-buttons li .btn span.ja, body.top main #intro .intro-bottom .inner1200 .intro-buttons li .btn span.ja {
        font-size: 14px;
        font-size: 1.4rem;
        color: #fff;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .intro-buttons li .btn span.en, body.top main #intro .intro-bottom .inner1200 .intro-buttons li .btn span.en {
        font-size: 10px;
        font-size: 1rem;
        margin-top: 6px;
        color: #999997;
    }
}
body.top main #intro .intro-bottom .inner .intro-buttons li:nth-child(1), body.top main #intro .intro-bottom .inner1200 .intro-buttons li:nth-child(1) {
    margin-right: 28px;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .intro-buttons li:nth-child(1), body.top main #intro .intro-bottom .inner1200 .intro-buttons li:nth-child(1) {
        margin: 20px auto 0;
    }
}
body.top main #intro .intro-bottom .inner .intro-buttons li:nth-child(2), body.top main #intro .intro-bottom .inner1200 .intro-buttons li:nth-child(2) {
    margin-left: 28px;
}
@media only screen and (max-width: 860px) {
    body.top main #intro .intro-bottom .inner .intro-buttons li:nth-child(2), body.top main #intro .intro-bottom .inner1200 .intro-buttons li:nth-child(2) {
        margin: 0 auto;
    }
}
body.top main #reasons {
    margin-top: 45px;
    padding-bottom: 100px;
    position: relative;
}
@media only screen and (max-width: 860px) {
    body.top main #reasons {
        margin-top: 25px;
        padding-bottom: 54px;
    }
}
body.top main #reasons .head-img {
    padding: 0 50px;
}
@media only screen and (max-width: 860px) {
    body.top main #reasons .head-img {
        padding: 0 20px;
    }
}
body.top main #reasons .head-img img {
    width: 100%;
}
body.top main #reasons .reasons__title {
    text-align: center;
    width: 15.6vw;
}
@media only screen and (min-width: 860px) {
    body.top main #reasons .reasons__title {
        position: absolute;
        left: 12.7vw;
        top: 16.2vw;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #reasons .reasons__title {
        width: 70.6vw;
        margin: 0 auto;
    }
}
body.top main #reasons .reasons__title h2 {
    position: relative;
    top: -32px;
    padding-top: 89px;
    background: #fff;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (min-width: 860px) {
    body.top main #reasons .reasons__title h2 {
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        width: 100%;
        text-align: left;
        padding: 4.2vw 4.7vw 0;
        height: 20.3296vw;
    }
}
body.top main #reasons .reasons__title h2:before {
    content: "";
    position: absolute;
    top: -4.20vw;
    left: 50%;
    width: 0;
    height: 0;
    -webkit-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    border-left: 7.8vw solid transparent;
    border-right: 7.8vw solid transparent;
    border-bottom: 4.2vw solid #fff;
}
@media only screen and (max-width: 860px) {
    body.top main #reasons .reasons__title h2:before {
        top: -25px;
        left: 50%;
        border-left: 35.3vw solid transparent;
        border-right: 35.3vw solid transparent;
        border-bottom: 25px solid #fff;
    }
}
@media only screen and (min-width: 860px) {
    body.top main #reasons .reasons__title h2:after {
        content: "";
        width: 3.7vw;
        height: 3.2vw;
        background: url(../images/top/reason_icon.png) center center/cover no-repeat;
        position: absolute;
        display: block;
        top: -0.2vw;
        left: 50%;
        -webkit-transform: translate(-50%, 0);
        -moz-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
        -o-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
    }
}
body.top main #reasons .reasons__title h2 small {
    font-size: 1.15vw;
}
@media only screen and (min-width: 860px) {
    body.top main #reasons .reasons__title h2 small {
        line-height: 2.5em;
        letter-spacing: .15em;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #reasons .reasons__title h2 small {
        font-size: 15px;
        font-size: 1.5rem;
        position: relative;
        font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    }
    body.top main #reasons .reasons__title h2 small:before {
        content: "";
        width: 52px;
        height: 47px;
        background: url(../images/top/reason_icon.png) center center/cover no-repeat;
        position: absolute;
        display: block;
        top: -70px;
        left: 50%;
        -webkit-transform: translate(-50%, 0);
        -moz-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
        -o-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
    }
}
body.top main #reasons .reasons__title h2 span {
    display: block;
    font-size: 2.5vw;
    font-style: oblique;
    letter-spacing: .15em;
}
@media only screen and (min-width: 860px) {
    body.top main #reasons .reasons__title h2 span {
        line-height: 1.2em;
        width: 2.7vw;
        padding-top: .4vw;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #reasons .reasons__title h2 span {
        font-size: 30px;
        font-size: 3rem;
        font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
        margin-top: 7px;
        letter-spacing: .15em;
    }
}
body.top main #reasons .reasons__title h2 span b {
    font-size: 3.5vw;
    font-weight: normal;
    letter-spacing: .1em;
}
@media only screen and (max-width: 860px) {
    body.top main #reasons .reasons__title h2 span b {
        font-size: 40px;
        font-size: 4rem;
    }
}
body.top main #reasons ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-top: 110px;
}
@media only screen and (max-width: 860px) {
    body.top main #reasons ul {
        -webkit-flex-direction: colum;
        flex-direction: colum;
        padding: 0 35px;
        margin-top: -22px;
    }
}
body.top main #reasons ul li {
    width: 28%;
}
body.top main #reasons ul li:nth-of-type(1) {
    transition-delay: 0s;
}
body.top main #reasons ul li:nth-of-type(2) {
    transition-delay: .8s;
}
body.top main #reasons ul li:nth-of-type(3) {
    transition-delay: 1.6s;
}
@media only screen and (max-width: 860px) {
    body.top main #reasons ul li {
        width: 100%;
        margin-top: 37px;
    }
}
body.top main #reasons ul li .head {
    font-family: "Noto Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    font-style: italic;
    padding-bottom: 15px;
    border-bottom: 1px solid #d9d9d9;
}
@media only screen and (max-width: 860px) {
    body.top main #reasons ul li .head {
        padding-bottom: 10px;
    }
}
body.top main #reasons ul li .head span {
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
}
@media only screen and (max-width: 860px) {
    body.top main #reasons ul li .head span {
        font-size: 15px;
        font-size: 1.5rem;
    }
}
body.top main #reasons ul li .head strong {
    font-size: 30px;
    font-size: 3rem;
    letter-spacing: 0.1em;
}
@media only screen and (max-width: 860px) {
    body.top main #reasons ul li .head strong {
        font-size: 27px;
        font-size: 2.7rem;
    }
}
body.top main #reasons ul li .catch {
    font-size: 22px;
    font-size: 2.2rem;
    letter-spacing: 0.05em;
    line-height: 1.636363636;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    margin-top: 30px;
}
@media only screen and (max-width: 860px) {
    body.top main #reasons ul li .catch {
        margin-top: 20px;
        font-size: 21px;
        font-size: 2.1rem;
        line-height: 1.38095em;
    }
}
body.top main #reasons ul li .desc {
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    line-height: 1.875;
    margin-top: 25px;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 860px) {
    body.top main #reasons ul li .desc {
        font-size: 14px;
        font-size: 1.4rem;
        margin-top: 15px;
        line-height: 1.5em;
    }
}
body.top main #reasons .morebtn {
    margin-top: 60px;
    transition-delay: 1s;
    -webkit-transform: translate(0, 100px);
    -moz-transform: translate(0, 100px);
    -ms-transform: translate(0, 100px);
    -o-transform: translate(0, 100px);
    transform: translate(0, 100px);
}
body.top main #reasons .morebtn.is-active {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
}
@media only screen and (max-width: 860px) {
    body.top main #reasons .morebtn {
        padding: 0 35px;
        margin-top: 43px;
        transition-delay: 0.5s;
    }
}
body.top main #reasons .morebtn a {
    width: 470px;
    margin: 0 auto;
    letter-spacing: 0.1em;
    font-size: 16px;
    font-size: 1.6rem;
}
@media only screen and (max-width: 860px) {
    body.top main #reasons .morebtn a {
        width: 100%;
        padding: 21px;
        font-size: 14px;
        font-size: 1.4rem;
    }
}
@media only screen and (min-width: 860px) {
    body.top main #reasons .morebtn .btn:before {
        width: 70px;
        left: -14px;
    }
}
body.top main #news {
    background: #f8faf1;
    padding-top: 70px;
    padding-bottom: 65px;
}
@media only screen and (min-width: 860px) {
    body.top main #news {
        margin: 0 50px;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #news {
        margin: 0 20px;
        padding-top: 46px;
        padding-bottom: 37px;
    }
}
body.top main #news .inner, body.top main #news .inner1200 {
    padding: 0 100px;
}
@media only screen and (max-width: 860px) {
    body.top main #news .inner, body.top main #news .inner1200 {
        padding: 0 35px;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #news .inner .title .ja, body.top main #news .inner1200 .title .ja {
        font-size: 20px;
        font-size: 2rem;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #news .inner .title .en, body.top main #news .inner1200 .title .en {
        font-size: 12px;
        font-size: 1.2rem;
        margin-top: 9px;
        font-style: italic;
        font-family: "Noto Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
    }
}
body.top main #news .inner ul, body.top main #news .inner1200 ul {
    margin-top: 45px;
    font-size: 0;
    border-bottom: 1px solid #e4e6dd;
}
@media only screen and (max-width: 860px) {
    body.top main #news .inner ul, body.top main #news .inner1200 ul {
        margin-top: 19px;
    }
}
body.top main #news .inner ul li, body.top main #news .inner1200 ul li {
    padding: 21px 0;
    border-top: 1px solid #e4e6dd;
}
@media only screen and (max-width: 860px) {
    body.top main #news .inner ul li:nth-of-type(1), body.top main #news .inner1200 ul li:nth-of-type(1) {
        border: none;
        padding: 17px 0;
    }
}
@media only screen and (min-width: 860px) {
    body.top main #news .inner ul li a, body.top main #news .inner1200 ul li a {
        transition: 0.3s;
    }
}
@media only screen and (min-width: 860px) {
    body.top main #news .inner ul li a:hover, body.top main #news .inner1200 ul li a:hover {
        opacity: 0.6;
    }
}
body.top main #news .inner ul li .date, body.top main #news .inner1200 ul li .date {
    font-size: 14px;
    font-size: 1.4rem;
    display: inline-block;
    vertical-align: middle;
}
@media only screen and (min-width: 860px) {
    body.top main #news .inner ul li .date, body.top main #news .inner1200 ul li .date {
        width: 12%;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #news .inner ul li .date, body.top main #news .inner1200 ul li .date {
        font-size: 12px;
        font-size: 1.2rem;
        width: auto;
        margin-right: 10px;
    }
}
body.top main #news .inner ul li .cate, body.top main #news .inner1200 ul li .cate {
    display: inline-block;
    vertical-align: middle;
}
@media only screen and (min-width: 860px) {
    body.top main #news .inner ul li .cate, body.top main #news .inner1200 ul li .cate {
        width: 12%;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #news .inner ul li .cate, body.top main #news .inner1200 ul li .cate {
        width: auto;
    }
}
body.top main #news .inner ul li .cate em, body.top main #news .inner1200 ul li .cate em {
    padding: 5px 10px 4px;
    font-size: 12px;
    font-size: 1.2rem;
    color: #fff;
    background: #30302c;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    font-weight: 100;
    max-width: 68px;
    text-align: center;
    min-width: 68px;
    display: block;
    height: 22px;
}
@media only screen and (max-width: 860px) {
    body.top main #news .inner ul li .cate em, body.top main #news .inner1200 ul li .cate em {
        padding: 4px 6px;
        font-size: 10px;
        font-size: 1rem;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        align-items: center;
    }
}
body.top main #news .inner ul li .post-title, body.top main #news .inner1200 ul li .post-title {
    display: inline-block;
    text-align: left;
}
@media only screen and (max-width: 860px) {
    body.top main #news .inner ul li .post-title, body.top main #news .inner1200 ul li .post-title {
        display: block;
    }
}
body.top main #news .inner ul li p, body.top main #news .inner1200 ul li p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.8;
    display: inline-block;
    vertical-align: middle;
}
@media only screen and (min-width: 860px) {
    body.top main #news .inner ul li p, body.top main #news .inner1200 ul li p {
        width: auto;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #news .inner ul li p, body.top main #news .inner1200 ul li p {
        font-size: 14px;
        font-size: 1.4rem;
        width: 100%;
        line-height: 1.5em;
        margin-top: 20px;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #news .inner .more, body.top main #news .inner1200 .more {
        text-align: center;
    }
}
body.top main #news .inner .more a, body.top main #news .inner1200 .more a {
    text-align: center;
    width: 85px;
    display: block;
    margin: 35px auto 0;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.1em;
    line-height: 2.571428571;
    border-bottom: 1px solid #30302c;
    transition: 0.3s;
}
@media only screen and (min-width: 860px) {
    body.top main #news .inner .more a:hover, body.top main #news .inner1200 .more a:hover {
        opacity: 0.6;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #news .inner .more a, body.top main #news .inner1200 .more a {
        margin: 20px auto 0;
        font-size: 12px;
        font-size: 1.2rem;
        display: inline-block;
        width: auto;
    }
}
body.top main #works {
    position: relative;
}
body.top main #works .img-row {
    min-width: 1000px;
    height: 440px;
    margin-top: 50px;
    background: url(../images/top/works-img.jpg) center center/cover no-repeat;
}
@media only screen and (max-width: 860px) {
    body.top main #works .img-row {
        padding-top: 50%;
        width: 100%;
        background: url(../images/top/works-img_sp.jpg) center center/cover no-repeat;
        min-width: 0;
        margin-top: 20px;
        height: auto;
    }
}
body.top main #works .works__content {
    opacity: 0;
    background: rgba(82, 95, 35, 0.6);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: 1s;
    cursor: pointer;
}
@media only screen and (max-width: 860px) {
    body.top main #works .works__content {
        opacity: 1;
        position: relative;
        background: none;
    }
}
body.top main #works .works__content:hover {
    opacity: 1;
}
body.top main #works .works__content .title {
    margin-top: 96px;
}
@media only screen and (max-width: 860px) {
    body.top main #works .works__content .title {
        margin-top: 44px;
    }
}
body.top main #works .works__content .title .ja {
    font-size: 40px;
    font-size: 4rem;
    color: #fff;
}
@media only screen and (max-width: 860px) {
    body.top main #works .works__content .title .ja {
        color: #30302c;
        font-size: 22px;
        font-size: 2.2rem;
    }
}
body.top main #works .works__content .title .en {
    font-size: 14px;
    font-size: 1.4rem;
    font-style: italic;
    margin-top: 15px;
    color: #fff;
}
@media only screen and (max-width: 860px) {
    body.top main #works .works__content .title .en {
        color: #30302c;
        font-size: 10px;
        font-size: 1rem;
        font-style: italic;
        margin-top: 10px;
    }
}
body.top main #works .works__content p {
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875em;
    text-align: center;
    margin-top: 38px;
    letter-spacing: .05em;
    color: #fff;
}
@media only screen and (max-width: 860px) {
    body.top main #works .works__content p {
        font-size: 14px;
        font-size: 1.4rem;
        color: #30302c;
        text-align: center;
        line-height: 1.85714em;
        color: #30302c;
        margin-top: 20px;
    }
}
body.top main #works .works__content .btn {
    width: 240px;
    margin: 42px auto 96px;
    padding: 16px;
    border: none;
}
@media only screen and (max-width: 860px) {
    body.top main #works .works__content .btn {
        width: 170px;
        margin: 30px auto 50px;
    }
}
body.top main #works .works__content .btn .ja {
    font-size: 14px;
    font-size: 1.4rem;
}
@media only screen and (max-width: 860px) {
    body.top main #works .works__content .btn .ja {
        font-size: 12px;
        font-size: 1.2rem;
    }
}
body.top main #works .works__content .btn:before {
    content: none;
}
body.top main #works .works__content .btn:after {
    right: 23px;
    top: 1px;
    width: 6px;
    height: 6px;
}
@media only screen and (max-width: 860px) {
    body.top main #works .works__content .btn:after {
        right: 11px;
        width: 5px;
        height: 5px;
    }
}
body.top main #contact {
    height: 310px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(../images/top/contact_bg.jpg);
    min-width: 1000px;
}
@media only screen and (max-width: 860px) {
    body.top main #contact {
        min-width: 0;
        background-image: url(../images/top/img05_sp.jpg);
        padding: 41px 0 37px;
        height: auto;
    }
}
body.top main #contact .inner, body.top main #contact .inner1200 {
    padding-right: 0;
}
@media only screen and (max-width: 860px) {
    body.top main #contact .inner, body.top main #contact .inner1200 {
        padding: 0 20px;
    }
}
body.top main #contact .inner .right, body.top main #contact .inner1200 .right {
    float: right;
    padding: 90px 0;
}
@media only screen and (max-width: 860px) {
    body.top main #contact .inner .right, body.top main #contact .inner1200 .right {
        float: none;
        padding: 0;
    }
}
@media only screen and (max-width: 860px) {
    body.top main #contact .inner .right .contact-title, body.top main #contact .inner1200 .right .contact-title {
        font-size: 15px;
        font-size: 1.5rem;
        color: #fff;
        display: block;
        margin: 0 auto;
        text-align: center;
        font-family: "Noto Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
        font-style: italic;
        letter-spacing: .05em;
        width: 89.28571%;
    }
}
body.top main #contact .inner .right .contact-title:before, body.top main #contact .inner1200 .right .contact-title:before {
    content: "";
    height: 1px;
    width: 32%;
    background: #fff;
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
}
@media only screen and (max-width: 320px) {
    body.top main #contact .inner .right .contact-title:before, body.top main #contact .inner1200 .right .contact-title:before {
        width: 29.5%;
    }
}
body.top main #contact .inner .right .contact-title:after, body.top main #contact .inner1200 .right .contact-title:after {
    content: "";
    height: 1px;
    width: 32%;
    background: #fff;
    display: inline-block;
    vertical-align: middle;
    margin-left: 10px;
}
@media only screen and (max-width: 320px) {
    body.top main #contact .inner .right .contact-title:after, body.top main #contact .inner1200 .right .contact-title:after {
        width: 29.5%;
    }
}
body.top main #contact .inner .right .contact-btn, body.top main #contact .inner1200 .right .contact-btn {
    position: relative;
}
@media only screen and (max-width: 860px) {
    body.top main #contact .inner .right .contact-btn, body.top main #contact .inner1200 .right .contact-btn {
        width: 89.28571%;
        background: #fff;
        margin: 25px auto;
        position: relative;
    }
}
body.top main #contact .inner .right .contact-btn:before, body.top main #contact .inner1200 .right .contact-btn:before {
    content: "";
    position: absolute;
    left: 60px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 25px;
    height: 19px;
    background-image: url(../images/common/icn_contact.png);
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 9;
}
@media only screen and (max-width: 860px) {
    body.top main #contact .inner .right .contact-btn:before, body.top main #contact .inner1200 .right .contact-btn:before {
        left: 48px;
        width: 20px;
        height: 15px;
    }
}
@media only screen and (max-width: 320px) {
    body.top main #contact .inner .right .contact-btn:before, body.top main #contact .inner1200 .right .contact-btn:before {
        left: 25px;
    }
}
body.top main #contact .inner .right .contact-btn a, body.top main #contact .inner1200 .right .contact-btn a {
    position: relative;
    display: block;
    text-align: center;
    width: 600px;
    padding: 43px 0;
    background: #fff;
}
body.top main #contact .inner .right .contact-btn a:hover, body.top main #contact .inner1200 .right .contact-btn a:hover {
    opacity: 0.9;
}
@media only screen and (max-width: 860px) {
    body.top main #contact .inner .right .contact-btn a, body.top main #contact .inner1200 .right .contact-btn a {
        width: 100%;
        font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
        padding: 27px 0;
    }
}
body.top main #contact .inner .right .contact-btn a:before, body.top main #contact .inner1200 .right .contact-btn a:before {
    content: "";
    position: absolute;
    width: calc(100% - 17px);
    height: calc(100% - 17px);
    border: 2px solid #30302c;
    left: 7px;
    top: 7px;
    z-index: 1;
}
@media only screen and (max-width: 860px) {
    body.top main #contact .inner .right .contact-btn a:before, body.top main #contact .inner1200 .right .contact-btn a:before {
        width: calc(100% - 12px);
        height: calc(100% - 12px);
        border: 1px solid #30302c;
        left: 5px;
        top: 5px;
    }
}
body.top main #contact .inner .right .contact-btn a:after, body.top main #contact .inner1200 .right .contact-btn a:after {
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    background: transparent;
    right: 30px;
    top: 0;
    bottom: 0;
    margin: auto;
    border-top: 1px solid #30302c;
    border-right: 1px solid #30302c;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}
@media only screen and (max-width: 860px) {
    body.top main #contact .inner .right .contact-btn a:after, body.top main #contact .inner1200 .right .contact-btn a:after {
        right: 22px;
        width: 6px;
        height: 6px;
        top: -1px;
    }
}
body.top main #contact .inner .right .contact-btn a span, body.top main #contact .inner1200 .right .contact-btn a span {
    display: block;
}
body.top main #contact .inner .right .contact-btn a .ja, body.top main #contact .inner1200 .right .contact-btn a .ja {
    font-size: 22px;
    font-size: 2.2rem;
    letter-spacing: 0.1em;
}
@media only screen and (max-width: 860px) {
    body.top main #contact .inner .right .contact-btn a .ja, body.top main #contact .inner1200 .right .contact-btn a .ja {
        font-size: 16px;
        font-size: 1.6rem;
        letter-spacing: 0;
        padding-left: 15px;
    }
}
body.top main #contact .inner .right .contact-btn a .en, body.top main #contact .inner1200 .right .contact-btn a .en {
    font-size: 12px;
    font-size: 1.2rem;
    font-style: italic;
    letter-spacing: 0.05em;
    margin-top: 10px;
    font-family: "Noto Serif", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
body.top main #contact .inner .left, body.top main #contact .inner1200 .left {
    float: left;
    padding: 110px 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2.142857143;
    color: #fff;
    letter-spacing: 0.05em;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}
@media only screen and (max-width: 860px) {
    body.top main #contact .inner .left, body.top main #contact .inner1200 .left {
        font-size: 12px;
        font-size: 1.2rem;
        padding: 0 3px;
        line-height: 1.66666em;
        position: relative;
        right: -10px;
    }
}
body.top main .recruit {
    margin-top: 50px;
    padding: 0 50px;
}
@media only screen and (max-width: 860px) {
    body.top main .recruit {
        margin-top: 20px;
        padding: 0 20px;
    }
}
body.top main .recruit__bg {
    background: url(../images/top/recruit_bg.jpg) center center/cover no-repeat;
    height: 590px;
    position: relative;
}
@media only screen and (max-width: 860px) {
    body.top main .recruit__bg {
        height: auto;
        padding: 150px 35px 35px;
        background: url(../images/top/img06_sp.jpg) center center/cover no-repeat;
    }
}
body.top main .recruit__bg .inner, body.top main .recruit__bg .inner1200 {
    *zoom: 1;
    width: auto;
}
body.top main .recruit__bg .inner:after, body.top main .recruit__bg .inner1200:after {
    content: "";
    display: table;
    clear: both;
}
@media only screen and (max-width: 860px) {
    body.top main .recruit__bg .inner, body.top main .recruit__bg .inner1200 {
        padding: 0;
    }
}
body.top main .recruit__bg .inner .recruitContent, body.top main .recruit__bg .inner1200 .recruitContent {
    width: 470px;
    padding: 70px 58px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 100px;
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
    transform: translate(0, -50%);
}
@media only screen and (max-width: 860px) {
    body.top main .recruit__bg .inner .recruitContent, body.top main .recruit__bg .inner1200 .recruitContent {
        width: 100%;
        top: auto;
        position: relative;
        left: auto;
        -webkit-transform: translate(0, 0);
        -moz-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        -o-transform: translate(0, 0);
        transform: translate(0, 0);
        padding: 38px 24px 0;
    }
}
body.top main .recruit__bg .inner .recruitContent__title, body.top main .recruit__bg .inner1200 .recruitContent__title {
    font-size: 28px;
    font-size: 2.8rem;
    letter-spacing: .05em;
    line-height: 1.57142em;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
@media only screen and (max-width: 860px) {
    body.top main .recruit__bg .inner .recruitContent__title, body.top main .recruit__bg .inner1200 .recruitContent__title {
        font-size: 22px;
        font-size: 2.2rem;
    }
}
body.top main .recruit__bg .inner .recruitContent__text, body.top main .recruit__bg .inner1200 .recruitContent__text {
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: .05em;
    line-height: 2em;
    margin: 25px 0 35px;
}
@media only screen and (max-width: 860px) {
    body.top main .recruit__bg .inner .recruitContent__text, body.top main .recruit__bg .inner1200 .recruitContent__text {
        letter-spacing: 0;
        margin: 22px 0 29px;
    }
}
body.top main .recruit__bg .inner .recruitContent .btn, body.top main .recruit__bg .inner1200 .recruitContent .btn {
    padding: 20px 0;
    width: 300px;
    margin: 0 auto;
}
@media only screen and (max-width: 860px) {
    body.top main .recruit__bg .inner .recruitContent .btn, body.top main .recruit__bg .inner1200 .recruitContent .btn {
        width: calc(100% + 48px);
        margin: 0 -24px;
    }
}
body.top main .recruit__bg .inner .recruitContent .btn .ja, body.top main .recruit__bg .inner1200 .recruitContent .btn .ja {
    display: inline-block;
    vertical-align: middle;
    margin-right: 15px;
}
@media only screen and (max-width: 860px) {
    body.top main .recruit__bg .inner .recruitContent .btn .ja, body.top main .recruit__bg .inner1200 .recruitContent .btn .ja {
        position: relative;
        top: -3px;
    }
}
body.top main .recruit__bg .inner .recruitContent .btn .en, body.top main .recruit__bg .inner1200 .recruitContent .btn .en {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    top: -2px;
}
body.top main .recruit__bg .inner .recruitContent .btn:after, body.top main .recruit__bg .inner1200 .recruitContent .btn:after {
    right: 24px;
}
body.top main .googlemap {
    margin: 50px 0 0;
    padding: 0 50px;
    height: 460px;
}
@media only screen and (max-width: 860px) {
    body.top main .googlemap {
        margin: 20px 0 0;
        padding: 0;
        height: 200px;
    }
}
body.top .company-desc {
    display: block !important;
}
_::-webkit-full-page-media, _:future, :root .reasons__title h2:before {
    top: -4.15vw !important;
}
@media only screen and (max-width: 860px) {
    body.works main .sec {
        padding: 20px 0 0;
    }
}
body.works main .sec .companyBox ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
@media only screen and (min-width: 860px) {
    body.works main .sec .companyBox ul.first li:nth-of-type(1) figcaption, body.works main .sec .companyBox ul.first li:nth-of-type(2) figcaption {
        height: 160px;
    }
}
body.works main .sec .companyBox ul li {
    width: 43%;
    margin: 68px 0 0 0;
}
@media only screen and (max-width: 860px) {
    body.works main .sec .companyBox ul li {
        width: 100%;
        margin: 40px 0 0;
    }
}
body.works main .sec .companyBox ul li .name {
    display: block;
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.090909091;
    letter-spacing: .1em;
    font-weight: 500;
    padding: 0 0 10px;
    position: relative;
    margin: 0 0 0 10px;
}
@media only screen and (max-width: 860px) {
    body.works main .sec .companyBox ul li .name {
        font-size: 18px;
        font-size: 1.8rem;
    }
}
@media only screen and (max-width: 320px) {
    body.works main .sec .companyBox ul li .name--exception {
        font-size: 14px;
        font-size: 1.4rem;
    }
}
body.works main .sec .companyBox ul li .name--plus {
    font-size: 18px;
    font-size: 1.8rem;
}
@media only screen and (max-width: 860px) {
    body.works main .sec .companyBox ul li .name--plus {
        font-size: 12px;
        font-size: 1.2rem;
    }
}
@media only screen and (max-width: 320px) {
    body.works main .sec .companyBox ul li .name--plus {
        font-size: 10px;
        font-size: 1rem;
    }
}
body.works main .sec .companyBox ul li .name::before {
    content: '';
    width: 103%;
    height: 15px;
    background: #f8faf1;
    position: absolute;
    bottom: 3px;
    left: -10px;
    z-index: -1;
}
body.works main .sec .companyBox ul li figure {
    padding: 24px 0 0;
}
@media only screen and (max-width: 860px) {
    body.works main .sec .companyBox ul li figure {
        padding: 18px 0 0;
    }
}
body.works main .sec .companyBox ul li figure figcaption {
    padding: 15px 0 0;
    border-bottom: 1px solid #96968c;
}
@media only screen and (min-width: 860px) {
    body.works main .sec .companyBox ul li figure figcaption {
        min-height: 138px;
    }
}
@media only screen and (max-width: 860px) {
    body.works main .sec .companyBox ul li figure figcaption {
        padding: 12px 0 10px;
        min-height: auto;
    }
}
body.works main .sec .companyBox ul li figure figcaption table tr th, body.works main .sec .companyBox ul li figure figcaption table tr td {
    padding: 5px 0;
}
body.works main .sec .companyBox ul li figure figcaption table tr th {
    font-weight: bold;
    vertical-align: text-top;
    padding-top: 10px;
    width: 90px;
}
body.works main .sec .companyBox ul li figure figcaption table tr td {
    line-height: 1.428571429;
    color: #5b5b58;
}
body.works main .sec .companyBox ul li:nth-of-type(1) {
    margin: 0;
}
@media only screen and (min-width: 860px) {
    body.works main .sec .companyBox ul li:nth-of-type(2) {
        margin: 0;
    }
}
body.works main .sec .companyBox .notice {
    color: #96968c;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.428571429;
    letter-spacing: 0;
    display: block;
    padding: 60px 0 288px;
}
@media only screen and (max-width: 860px) {
    body.works main .sec .companyBox .notice {
        line-height: 1.8;
        padding: 30px 0 60px;
    }
}
.gothic {
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}




.social_brand {
    display: flex;
    width: 100vw;
    margin-left: calc((100% - 100vw) / 2);
}


.business_LivEQuality {
    background: url(../images/business/business_LivEQuality_bg.jpg) no-repeat center center;
    background-size: cover;
    padding: 100px 50px 80px 50px;
    width: 50%;
}
.business_chitose {
    background: url(../images/business/business_chitose_bg.jpg) no-repeat center center;
    background-size: cover;
    padding: 100px 50px 80px 50px;
    width: 50%;
}
.business_LivEQuality_inner,
.business_chitose_inner{
    margin: 0 auto;
    text-align: left;
    color: #FFF;
}
.business_chitose_inner{
    margin: 0 auto;
    text-align: left;
    color: #000;
}
.business_LivEQuality_inner p,
.business_chitose_inner p {
    color: #FFF;
    font-size: 1.6rem;
    margin: 32px 0 0 0;
    line-height: 2.25;
}

.business_chitose_inner p {
    color: #FFF;
}
.business_LivEQuality h4 img {
    width: 400px;
}
.business_chitose h4 img {
    width: 300px;
}
.business_LivEQuality h5,
.business_chitose h5{
    font-size: 24px;
    color: #FFF;
    line-height: 1.6;
    margin: 48px 0 0 0;
    font-weight: 600;
}
.business_chitose h5{
    font-size: 24px;
    color: #FFF;
    line-height: 1.6;
    margin: 48px 0 0 0;
    font-weight: 600;
}
.business_LivEQuality .link_btn,
.business_chitose .link_btn{
    margin: 40px 0 0 0;
}
.business_LivEQuality .link_btn a,
.business_chitose .link_btn a{
    background: #09b592;
    display: inline-block;
    padding: 16px 24px;
    color: #FFF;
    border-radius: 2px;
}


@media screen and (max-width:668px) {
    
.social_brand {
    display: block;
    width: 100vw;
    margin-left: calc((100% - 100vw) / 2);
}
    
    .business_LivEQuality,
    .business_chitose{
        background: url(../images/business/business_LivEQuality_bg.jpg) no-repeat center center;
        background-size: cover;
        width: 100vw;
        margin-left: calc((100% - 100vw) / 2);
        padding: 15vw 20px;
        box-sizing: border-box;
    }

    .business_chitose{
        background: url(../images/business/business_chitose_bg.jpg) no-repeat center center;
        background-size: cover;
        box-sizing: border-box;
    }
    .business_LivEQuality_inner {
        width: auto;
        text-align: left;
        color: #FFF;
    }
    .business_LivEQuality_inner p,
    .business_chitose_inner p{
        color: #FFF;
        font-size: 1.2rem;
        margin: 16px 0 0 0;
        line-height: 2.25;
    }
    .business_LivEQuality_inner p {
        color: #FFF;
        font-size: 1.2rem;
        margin: 16px 0 0 0;
        line-height: 2.25;
    }
    .business_LivEQuality h4 img {
        width: 60vw;
    }
    .business_chitose h4 img {
        width: 50vw;
    }
    .business_LivEQuality h5,
    .business_chitose h5{
        font-size: 1.8rem;
        color: #FFF;
        margin: 24px 0 0 0;
        font-weight: 600;
        line-height: 1.6;
    }

    .business_chitose h5,
    .business_chitose_inner p{
        color: #fff;
    }
    .business_LivEQuality .link_btn {
        margin: 24px 0 0 0;
    }
    .business_LivEQuality .link_btn a {
        background: #09b592;
        display: inline-block;
        padding: 16px 24px;
        font-size: 1.2rem;
        color: #FFF;
        border-radius: 2px;
    }
}



.mynavi {
    text-align:center;
    padding:32px 0 0 0;
}
.pad+.mynavi {
    text-align:center;
    padding:32px 0 80px 0;
}


ul.recruit_media_banner {
    text-align:center;
    padding:32px 0 80px 0;
    display: flex;
    align-items: center;
    width:600px;
    margin: 0 auto;
}
ul.recruit_media_banner li {
   margin: 0 16px;
}



@media screen and (max-width:668px) {
ul.recruit_media_banner {
    text-align:center;
    width:100%;
    padding:0 0 20px 0;
    display: block;
}
ul.recruit_media_banner li {
    margin: 16px 0;
}
}



@media screen and (max-width:668px) {
.sec--05 {
   padding: 0 25px;
}
}





.tab{
margin: -32px 0 0 0;
}
.tab-list{
  display: flex;
    width:400px;
    margin:0px auto 32px auto;
    border-radius: 4px;
}
.tab-list-item{
  width: 200px;
    border:none;
  text-align: center;
  padding: 16px 0;
  cursor: pointer;
    color: #999;
  background-color: #fff;
}
.tab-list-item:first-child{
    border-radius: 4px 0 0 4px;
}
.tab-list-item:last-child{
    border-radius: 0 4px 4px 0;
}
.is-btn-active{
  background-color: #333;
  font-weight: bold;
    color: #FFF;
}
.tab-contents{
  display: none;
}
.is-contents-active{
  display: block;
}



@media screen and (max-width:668px) {
.tab{
margin: -16px 0 0 0;
}
.tab-list{
    width:100%;
}
.tab-list-item{
  width: 50%;
  padding: 8px 0;
  cursor: pointer;
}  

}