@charset "UTF-8";
@import url("//fonts.googleapis.com/css?family=EB+Garamond:400,500,600,700");
body,
html {
    width: 100%;
    color: #000;
    background-color: #fff;
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: 1px
}

body::selection,
html::selection {
    background: #000;
    color: #fff
}

body::-moz-selection,
html::-moz-selection {
    background: #000;
    color: #fff
}

body .pc,
html .pc {
    display: block
}

body .sp,
body .tb,
html .sp,
html .tb {
    display: none
}

@media only screen and (min-width:767px) and (max-width:1024px) {
    body .tb,
    html .tb {
        display: block
    }
    body .pc-tb,
    html .pc-tb {
        display: none
    }
}

@media only screen and (max-width:767px) {
    body,
    html {
        font-size: 13.5px;
        line-height: 18px;
        letter-spacing: 1px
    }
    body .pc,
    body .pc-tb,
    body .tb,
    html .pc,
    html .pc-tb,
    html .tb {
        display: none
    }
    body .sp,
    html .sp {
        display: block
    }
}

h1,
h2,
h3,
h4,
p {
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    margin: 0;
    padding: 0
}

p {
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 16.5px;
    font-weight: 300;
    line-height: 22px;
    color: #000
}

@media only screen and (max-width:767px) {
    p {
        font-size: 13.5px;
        line-height: 18px
    }
}

ul {
    list-style: none outside none
}

ul,
ul li {
    margin: 0;
    padding: 0
}

a,
img {
    outline: none
}

a {
    text-decoration: none;
    color: #000;
    -webkit-backface-visibility: "hidden";
    backface-visibility: "hidden";
    -webkit-tap-highlight-color: transparent
}

a::selection {
    background: transparent
}

a::-moz-selection {
    background: transparent
}

a.global-more {
    -webkit-backface-visibility: "hidden";
    backface-visibility: "hidden";
    -webkit-tap-highlight-color: transparent;
    display: block;
    font-family: EB Garamond, serif;
    font-size: 19px;
    line-height: 19px;
    letter-spacing: 0;
    color: #a57a44
}

a.global-more::selection {
    background: transparent
}

a.global-more::-moz-selection {
    background: transparent
}

@media only screen and (max-width:766px) {
    a.global-more {
        font-size: 17px;
        line-height: 17px
    }
}

a.global-more img {
    transition: all .2s ease-in;
    vertical-align: middle;
    margin: 0 0 0 5px
}

a.global-more:hover img {
    margin-left: 15px
}

.cf:after,
.cf:before {
    content: " ";
    display: table
}

.cf:after {
    clear: both
}

.cf {
    *zoom: 1
}

.backer-main,
.backer-news,
.backer-recruit {
    position: absolute;
    top: 347px;
    left: 120px;
    width: 65px;
    height: 40px;
    background-color: transparent;
    z-index: 1;
    -webkit-backface-visibility: "hidden";
    backface-visibility: "hidden";
    -webkit-tap-highlight-color: transparent;
    color: #a57a44;
    font-family: EB Garamond, serif;
    font-size: 18px;
    line-height: 18px;
    letter-spacing: .2px;
    cursor: pointer
}

.backer-main::selection,
.backer-news::selection,
.backer-recruit::selection {
    background: transparent
}

.backer-main::-moz-selection,
.backer-news::-moz-selection,
.backer-recruit::-moz-selection {
    background: transparent
}

@media only screen and (max-width:766px) {
    .backer-main,
    .backer-news,
    .backer-recruit {
        height: 35px
    }
}

.backer-main img.pc,
.backer-news img.pc,
.backer-recruit img.pc {
    position: absolute;
    top: 30px;
    left: 0;
    transition: all .2s ease-in
}

.backer-main img.sp,
.backer-news img.sp,
.backer-recruit img.sp {
    margin-right: 10px
}

.backer-main:hover img.pc,
.backer-news:hover img.pc,
.backer-recruit:hover img.pc {
    left: -15px
}

.backer-recruit {
    width: 85px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    .backer-main,
    .backer-news,
    .backer-recruit {
        left: 40px
    }
}

@media only screen and (max-width:766px) {
    .backer-main,
    .backer-news,
    .backer-recruit {
        position: relative;
        top: auto;
        left: 0;
        width: 150px;
        margin: 0 0 50px 20px;
        font-size: 20px
    }
    .backer-main img.sp,
    .backer-news img.sp,
    .backer-recruit img.sp {
        position: relative;
        top: 0;
        left: auto;
        display: inline-block
    }
    .backer-main span.sp,
    .backer-news span.sp,
    .backer-recruit span.sp {
        display: inline-block
    }

    .backer-recruit {
        width: 170px
    }
}

section.top {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    background-color: transparent;
    z-index: 1;
    margin-top: 110px;
    min-height: calc(100vh - 240px)
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    section.top {
        min-height: calc(100vh - 360px)
    }
}

@media only screen and (max-width:766px) {
    section.top {
        margin-top: 80px
    }
}

section.top h2 {
    position: absolute;
    top: 0;
    left: 120px;
    width: 90px;
    height: 310px;
    background-color: transparent;
    z-index: 1
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    section.top h2 {
        left: 40px
    }
}

@media only screen and (max-width:766px) {
    section.top h2 {
        position: relative;
        left: auto;
        width: calc(100% - 40px);
        height: auto;
        margin-left: 20px
    }
}

section.top h2 div {
    letter-spacing: 0
}

section.top h2 div.top_h2-en {
    position: absolute;
    top: 0;
    left: 87px;
    width: 310px;
    transform: rotate(90deg);
    transform-origin: top left;
    font-family: EB Garamond, serif;
    font-size: 57px
}

@media only screen and (max-width:766px) {
    section.top h2 div.top_h2-en {
        position: relative;
        transform: rotate(0deg);
        left: 0;
        width: 100%;
        font-size: 50px
    }
}

section.top h2 div.top_h2-jp {
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 20px;
    font-weight: 500;
    margin-top: 5px;
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: vertical-rl;
    writing-mode: vertical-rl
}

@media only screen and (max-width:766px) {
    section.top h2 div.top_h2-jp {
        font-size: 17px;
        -webkit-writing-mode: horizontal-tb;
        -moz-writing-mode: horizontal-tb;
        -ms-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb
    }
}

form p {
    display: inline-block;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 15px;
    font-weight: 600
}

form p a {
    color: #646464
}

form label {
    display: block;
    position: relative;
    margin-bottom: 15px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 18px;
    font-weight: 500
}

form input[type=submit],
form input[type=text],
form textarea {
    width: 100%;
    height: 50px;
    margin-bottom: 15px;
    background-image: linear-gradient(90deg, #ebebeb 90%, #fff);
    box-sizing: border-box;
    -webkit-appearance: none;
    border-radius: 0;
    border: 0;
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 20px;
    line-height: 50px;
    padding-left: 5px
}

form select {
    width: 100%;
    height: 50px;
    margin-bottom: 15px;
    border-radius: 0;
    border: 0;
    background-image: linear-gradient(90deg, #ebebeb 90%, #fff);
    line-height: 50px;
    padding-left: 5px
}

form input[type=submit],
form select {
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 20px
}

form input[type=submit] {
    margin-top: 50px;
    background-color: #000;
    color: #fff;
    font-weight: 600;
    letter-spacing: 2px;
    background-image: linear-gradient(90deg, #000 90%, #fff)
}

form input[type=checkbox] {
    vertical-align: top;
    margin-top: 3px;
    display: inline-block;
    width: 15px;
    height: 15px;
    margin-right: 5px
}

form textarea {
    height: 265px;
    line-height: 26px;
    padding: 5px
}

@media only screen and (max-width:766px) {
    form p {
        font-size: 10px
    }
    form label {
        font-size: 13px;
        margin-bottom: 5px
    }
    form input[type=submit],
    form input[type=text],
    form textarea {
        height: 35px;
        line-height: 35px;
        margin-bottom: 10px;
        font-size: 15px
    }
    form select {
        height: 35px;
        line-height: 35px;
        font-size: 15px
    }
    form input[type=submit] {
        margin-top: 20px;
        font-size: 15px;
        height: 45px;
        line-height: 45px
    }
    form textarea {
        height: 185px
    }
}

.browser-alert {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    z-index: 1001
}

.browser-alert div {
    position: absolute;
    top: 50%;
    left: 60px;
    width: 450px;
    height: auto;
    background-color: transparent;
    z-index: 1;
    transform: translateY(-50%);
    font-size: 12px;
    line-height: 18px
}

.browser-alert div img {
    display: block;
    margin: 0 0 40px
}

.browser-alert div a {
    color: #000;
    text-decoration: underline
}

.browser-alert div a:hover {
    color: #a57a44
}

#loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    z-index: 1000;
    overflow: hidden
}

#loader img {
    position: absolute;
    top: 45%;
    left: 50%;
    width: 237px;
    height: auto;
    background-color: transparent;
    z-index: 5;
    transform: translate(-50%, -45%);
    opacity: 0;
    -moz-opacity: 0;
    -khtml-opacity: 0;
    filter: alpha(opacity=0)
}

@media only screen and (max-width:766px) {
    #loader img {
        width: 180px
    }
}

footer {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    height: 130px;
    background-color: transparent;
    z-index: 2
}

footer #footer_anchor {
    position: absolute;
    top: 20px;
    left: 60px;
    width: 35px;
    height: 90px;
    background-color: transparent;
    z-index: 2;
    cursor: pointer
}

footer #footer_anchor img {
    transition: all .2s ease-in;
    position: absolute;
    top: 0;
    left: 0
}

footer #footer_anchor p {
    position: absolute;
    top: 0;
    left: 25px;
    width: 90px;
    height: 20px;
    background-color: transparent;
    z-index: 2;
    transform: rotate(90deg);
    transform-origin: top left;
    color: #a57a44;
    font-family: EB Garamond, serif;
    font-size: 15px;
    line-height: 0;
    letter-spacing: 1px
}

footer #footer_anchor:hover img {
    top: -15px
}

footer ul {
    position: absolute;
    top: auto;
    left: 260px;
    width: auto;
    height: auto;
    background-color: transparent;
    z-index: 2;
    bottom: 30px
}

footer ul li {
    display: inline-block;
    letter-spacing: 0;
    margin-right: 20px
}

footer ul li:last-child { margin-right: 0 }

footer ul li a {
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 13px;
    color: #646464
}

footer ul li span.ja {
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 13px
}

footer ul li span.en {
    font-family: EB Garamond, serif;
    font-size: 15px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    footer #footer_anchor { left: 40px }
    footer ul { left: 160px }
    footer ul li { margin-right: 10px }
    footer ul li a { font-size: 11px }
     footer ul li span.ja { font-size: 11px }
    footer ul li span.en { font-size: 13px }
}

@media only screen and (max-width:766px) {
     footer {
        height: 95px
    }
    footer #footer_anchor {
        height: 60px;
        left: 20px;
        overflow: hidden
    }
    footer #footer_anchor p {
        font-size: 11px;
        left: 20px
    }
    footer ul {
        bottom: 15px;
        left: 70px
    }
    footer ul li {
        display: block;
        line-height: 12px
    }
    footer ul li a {
        font-size: 9px;
        line-height: 55px
    }
    footer ul li span.ja {
        font-size: 9px
    }
    footer ul li span.en {
        font-size: 11px
    }
}

nav {
    position: fixed;
    top: 80px;
    left: 0;
    width: 100%;
    height: calc(100% - 80px);
    background-color: transparent;
    z-index: 100;
    opacity: 0;
    -moz-opacity: 0;
    -khtml-opacity: 0;
    filter: alpha(opacity=0);
    display: none;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch
}

@media only screen and (max-width:766px) {
    nav {
        top: 60px;
        height: calc(100% - 60px)
    }
}

nav #nav_lang {
    position: fixed;
    top: 45%;
    left: 75px;
    width: auto;
    height: auto;
    background-color: transparent;
    z-index: 1;
    opacity: 0;
    -moz-opacity: 0;
    -khtml-opacity: 0;
    filter: alpha(opacity=0);
    transform: translateY(-45%) rotate(90deg);
    transform-origin: top left;
    font-family: EB Garamond, serif;
    font-size: 18px;
    line-height: 18px;
    letter-spacing: 0;
    cursor: pointer
}

nav #nav_lang img {
    width: 50px;
    height: 1px;
    vertical-align: middle;
    margin: 0 4px 5px
}

nav #nav_lang span.g1 {
    color: #e8e8e8
}

nav #nav_lang span.g2 {
    color: #bebebe
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    nav #nav_lang {
        left: 60px
    }
}

@media only screen and (max-width:766px) {
    nav #nav_lang {
        transform: translateY(0) rotate(90deg);
        top: 165px;
        left: 38px;
        font-size: 15px;
        line-height: 15px
    }
    nav #nav_lang img {
        width: 40px
    }
}

nav img#shade-left-pc {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: transparent;
    z-index: 1;
    max-width: 1280px
}

@media only screen and (max-width:766px) {
    nav img#shade-left-pc {
        display: none
    }
}

nav img#shade-right-pc {
    position: absolute;
    top: 0;
    left: 1279px;
    width: calc(100% - 1280px);
    height: 100%;
    background-color: transparent;
    z-index: 1;
    display: none
}

@media only screen and (min-width:1280px) {
    nav img#shade-right-pc {
        display: block
    }
}

@media only screen and (max-width:766px) {
    nav img#shade-right-pc {
        display: none
    }
}

nav img#shade-sp {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: transparent;
    z-index: 1
}

@media only screen and (min-width:767px) {
    nav img#shade-sp {
        display: none
    }
}

nav ul {
    position: relative;
    top: 35px;
    left: 120px;
    width: calc(100% - 120px);
    height: auto;
    background-color: transparent;
    z-index: 1;
    opacity: 0;
    -moz-opacity: 0;
    -khtml-opacity: 0;
    filter: alpha(opacity=0)
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    nav ul {
        left: 95px
    }
}

@media only screen and (max-width:766px) {
    nav ul {
        left: 68px;
        top: 25px;
        width: calc(100% - 68px)
    }
}

nav ul li {
    margin-bottom: 25px
}

@media only screen and (max-width:766px) {
    nav ul li {
        margin-bottom: 20px
    }
}

nav ul li a {
    transition: color .2s ease-in;
    font-family: EB Garamond, serif;
    font-size: 36px;
    line-height: 28px;
    letter-spacing: 0
}

nav ul li a span {
    display: block;
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: .7px
}

@media only screen and (max-width:766px) {
    nav ul li a {
        font-size: 30px
    }
    nav ul li a span {
        font-size: 12px
    }
}

nav ul li a.active {
    color: #a57a44;
    cursor: default
}

nav ul li a:hover {
    color: #a57a44
}

.cursor {
    pointer-events: none;
    position: fixed;
    width: 25px;
    height: 25px;
    margin-top: -12px;
    margin-left: -12px;
    border-radius: 50%;
    background: rgba(0, 0, 0, .6);
    transition: transform .2s ease-in-out, background .2s ease-in-out;
    transform: translateZ(0);
    z-index: 1001;
    left: -9999px;
    display: none
}

.cursor,
.down .cursor {
    box-shadow: 0 0 0 3px rgba(0, 0, 0, .3)
}

.down .cursor {
    background: rgba(0, 0, 0, .4)
}

.down .cursor,
.hover .cursor {
    transform: scale(.7) translateZ(0)
}

.hover .cursor {
    background: rgba(165, 122, 68, .4);
    box-shadow: 0 0 0 3px #a57a44
}

@media (pointer:coarse) {
    .cursor {
        display: none
    }
}

header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 80px;
    background-color: #fff;
    z-index: 100
}

@media only screen and (max-width:766px) {
    header {
        height: 65px
    }
}

header img {
    position: absolute;
    top: 17px;
    left: 60px;
    width: 132px;
    height: auto;
    background-color: transparent;
    z-index: 1;
    -webkit-backface-visibility: "hidden";
    backface-visibility: "hidden";
    -webkit-tap-highlight-color: transparent;
    cursor: pointer
}

header img::selection {
    background: transparent
}

header img::-moz-selection {
    background: transparent
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    header img {
        left: 40px
    }
}

@media only screen and (max-width:766px) {
    header img {
        width: 111px;
        top: 12px;
        left: 20px
    }
}

header #header_menu {
    position: fixed;
    top: 33px;
    left: auto;
    width: 25px;
    height: 11px;
    background-color: transparent;
    z-index: 2;
    -webkit-backface-visibility: "hidden";
    backface-visibility: "hidden";
    -webkit-tap-highlight-color: transparent;
    right: 60px;
    cursor: pointer
}

header #header_menu::selection {
    background: transparent
}

header #header_menu::-moz-selection {
    background: transparent
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    header #header_menu {
        right: 40px
    }
}

@media only screen and (max-width:766px) {
    header #header_menu {
        top: 25px;
        right: 20px
    }
}

header #header_menu .bar,
header #header_menu .bar:after,
header #header_menu .bar:before {
    width: 25px;
    height: 1px
}

header #header_menu .bar {
    position: relative;
    transform: translateY(5px);
    background: #000;
    transition: all 0ms .3s
}

header #header_menu .bar.animate {
    background: transparent
}

header #header_menu .bar:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 5px;
    background: #000;
    transition: bottom .3s cubic-bezier(.23, 1, .32, 1) .3s, transform .3s cubic-bezier(.23, 1, .32, 1)
}

header #header_menu .bar:after {
    content: "";
    position: absolute;
    left: 0;
    top: 5px;
    background: #000;
    transition: top .3s cubic-bezier(.23, 1, .32, 1) .3s, transform .3s cubic-bezier(.23, 1, .32, 1)
}

header #header_menu .bar.animate:after {
    top: 0;
    transform: rotate(45deg);
    transition: top .3s cubic-bezier(.23, 1, .32, 1), transform .3s cubic-bezier(.23, 1, .32, 1) .3s
}

header #header_menu .bar.animate:before {
    bottom: 0;
    transform: rotate(-45deg);
    transition: bottom .3s cubic-bezier(.23, 1, .32, 1), transform .3s cubic-bezier(.23, 1, .32, 1) .3s
}

#main section#main_top {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: transparent;
    z-index: 1;
    min-height: 800px
}

@media only screen and (max-width:766px) {
    #main section#main_top {
        min-height: auto
    }
}

#main section#main_top h1 {
    position: absolute;
    top: 110px;
    left: 115px;
    width: 790px;
    height: auto;
    background-color: transparent;
    z-index: 2;
    font-family: EB Garamond, serif;
    font-size: 80px;
    line-height: 75px;
    letter-spacing: .3px;
    color: #000
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_top h1 {
        left: 40px;
        font-size: 65px;
        line-height: 60px;
        width: 700px
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #main section#main_top h1 {
        left: 60px
    }
}

@media only screen and (max-width:766px) {
    #main section#main_top h1 {
        top: 80px;
        left: 20px;
        width: auto;
        font-size: 47px;
        line-height: 47px
    }
}

#main section#main_top img {
    position: absolute;
    top: 300px;
    left: 0;
    width: auto;
    height: calc(100vh - 300px);
    background-color: transparent;
    z-index: 1
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_top img {
        top: 250px;
        height: auto;
        width: calc(100vw - 400px)
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #main section#main_top img {
        height: calc(100vh - 350px)
    }
}

@media only screen and (max-width:766px) {
    #main section#main_top img {
        width: calc(100vw - 130px);
        height: auto
    }
}

#main aside#main_top-aside {
    position: absolute;
    top: 120px;
    left: auto;
    width: auto;
    height: 915px;
    background-color: transparent;
    z-index: 5;
    right: 60px;
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: 3px;
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: vertical-rl;
    writing-mode: vertical-rl
}

@media only screen and (min-width:767px) and (max-width:1024px) {
    #main aside#main_top-aside {
        font-size: 20px;
        line-height: 25px;
        height: 740px
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main aside#main_top-aside {
        right: 40px
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #main aside#main_top-aside {
        right: 60px
    }
}

@media only screen and (max-width:766px) {
    #main aside#main_top-aside {
        top: 80px;
        right: 20px;
        font-size: 16px;
        line-height: 25px;
        letter-spacing: 2px
    }
}

#main section#main_values h2,
#main section#main_who h2 {
    margin: 5px 0 20px;
    font-family: EB Garamond, serif;
    font-size: 57px;
    line-height: 30px;
    letter-spacing: .02px
}

#main section#main_values h2 span,
#main section#main_who h2 span {
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-weight: 500;
    font-size: 20px;
    line-height: 45px;
    letter-spacing: .7px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_values h2,
    #main section#main_who h2 {
        font-size: 50px;
        line-height: 30px
    }
    #main section#main_values h2 span,
    #main section#main_who h2 span {
        font-size: 17px
    }
}

@media only screen and (max-width:766px) {
    #main section#main_values h2,
    #main section#main_who h2 {
        font-size: 50px;
        line-height: 30px
    }
    #main section#main_values h2 span,
    #main section#main_who h2 span {
        font-size: 17px
    }
}

#main section#main_values a.global-more,
#main section#main_who a.global-more {
    width: 130px;
    margin-top: 15px
}

#main section#main_values {
    position: absolute;
    top: 360px;
    left: auto;
    width: 510px;
    height: auto;
    background-color: transparent;
    z-index: 2
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_values {
        width: 60%;
        margin: 0 0 0 40px
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #main section#main_values {
        width: 400px;
        margin: 0
    }
}

@media only screen and (max-width:766px) {
    #main section#main_values {
        width: calc(100% - 40px);
        margin: 60px 0 0 20px
    }
}

#main section#main_values div {
    position: relative;
    width: 100%;
    height: 330px;
    overflow: hidden
}

@media only screen and (max-width:766px) {
    #main section#main_values div {
        height: 350px
    }
}

#main section#main_values div img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 2
}

#main section#main_values div p {
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-weight: 400;
    font-size: 18px;
    line-height: 36px
}

#main section#main_values div p,
#main section#main_values div p.h2 {
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif
}

#main section#main_values div p.h2 {
    margin-bottom: 15px;
    font-weight: 500;
    font-size: 29px;
    line-height: 29px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_values div p {
        font-size: 17px;
        line-height: 30px
    }
    #main section#main_values div p.h2 {
        font-size: 25px
    }
}

@media only screen and (max-width:766px) {
    #main section#main_values div p {
        font-size: 17px;
        line-height: 30px
    }
    #main section#main_values div p.h2 {
        font-size: 25px
    }
}

#main section#main_who {
    position: relative;
    top: auto;
    left: auto;
    width: 490px;
    height: auto;
    background-color: transparent;
    z-index: 2;
    transition: opacity 1.6s ease-out;
    opacity: 0;
    -moz-opacity: 0;
    -khtml-opacity: 0;
    filter: alpha(opacity=0);
    margin: 190px 0 0 115px;
    float: left
}

#main section#main_who.open {
    opacity: 1;
    -moz-opacity: 1;
    -khtml-opacity: 1;
    filter: alpha(opacity=100)
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_who {
        opacity: 1;
        -moz-opacity: 1;
        -khtml-opacity: 1;
        filter: alpha(opacity=100);
        margin-left: 40px;
        width: 330px
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #main section#main_who {
        opacity: 1;
        -moz-opacity: 1;
        -khtml-opacity: 1;
        filter: alpha(opacity=100);
        margin-left: 60px
    }
}

@media only screen and (max-width:766px) {
    #main section#main_who {
        float: none;
        width: calc(100% - 90px);
        margin: 60px 0 0 70px
    }
}

#main section#main_who div {
    position: relative;
    width: 100%;
    height: 370px;
    overflow: hidden
}

#main section#main_who div img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 2
}

#main section#main_who div p {
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-weight: 400;
    font-size: 17px;
    line-height: 24px
}

#main section#main_who div p span {
    font-size: 20px;
    line-height: 0
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_who div p {
        font-size: 15px
    }
    #main section#main_who div p span {
        font-size: 17px
    }
}

@media only screen and (max-width:766px) {
    #main section#main_who div p {
        font-size: 15px
    }
    #main section#main_who div p span {
        font-size: 17px
    }
}

#main section#main_what {
    position: relative;
    top: auto;
    left: auto;
    width: calc(100% - 865px);
    height: auto;
    background-color: transparent;
    z-index: 2;
    transition: opacity 1.6s ease-out;
    opacity: 0;
    -moz-opacity: 0;
    -khtml-opacity: 0;
    filter: alpha(opacity=0);
    margin: 90px 260px 0 0;
    float: right
}

#main section#main_what.open {
    opacity: 1;
    -moz-opacity: 1;
    -khtml-opacity: 1;
    filter: alpha(opacity=100)
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_what {
        opacity: 1;
        -moz-opacity: 1;
        -khtml-opacity: 1;
        filter: alpha(opacity=100);
        width: calc(100% - 390px);
        margin: 90px 20px 0 0
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #main section#main_what {
        opacity: 1;
        -moz-opacity: 1;
        -khtml-opacity: 1;
        filter: alpha(opacity=100);
        margin: 90px 60px 0 0;
        width: calc(100% - 610px)
    }
}

@media only screen and (max-width:766px) {
    #main section#main_what {
        float: none;
        margin: 95px 0 0 50px;
        width: calc(100% - 50px)
    }
}

#main section#main_what #main_what_title {
    position: absolute;
    width: 75px;
    height: 300px
}

@media only screen and (max-width:766px) {
    #main section#main_what #main_what_title {
        width: 65px
    }
}

#main section#main_what #main_what_title h2 {
    position: absolute;
    top: -30px;
    left: 40px;
    width: 300px;
    transform: rotate(90deg);
    transform-origin: bottom left;
    font-family: EB Garamond, serif;
    font-size: 57px;
    line-height: 30px;
    letter-spacing: .02px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_what #main_what_title h2 {
        font-size: 50px;
        line-height: 30px
    }
}

@media only screen and (max-width:766px) {
    #main section#main_what #main_what_title h2 {
        left: 35px;
        font-size: 50px;
        line-height: 30px
    }
}

#main section#main_what #main_what_title p {
    position: absolute;
    left: 0;
    top: 0;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-weight: 500;
    font-size: 20px;
    line-height: 20px;
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: vertical-rl;
    writing-mode: vertical-rl
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_what #main_what_title p {
        font-size: 17px
    }
}

@media only screen and (max-width:766px) {
    #main section#main_what #main_what_title p {
        left: 2px;
        font-size: 17px
    }
}

#main section#main_what #main_what_img {
    position: relative;
    margin-left: 95px
}

@media only screen and (max-width:766px) {
    #main section#main_what #main_what_img {
        margin-left: 80px
    }
}

#main section#main_what #main_what_img img#main_what_img-shade {
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%;
    min-width: 359px;
    min-height: 540px;
    max-width: 631px;
    max-height: 950px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_what #main_what_img img#main_what_img-shade {
        min-width: auto;
        min-height: auto;
        max-width: auto;
        max-height: auto
    }
}

@media only screen and (max-width:766px) {
    #main section#main_what #main_what_img img#main_what_img-shade {
        min-width: auto;
        min-height: auto;
        max-width: auto;
        max-height: auto
    }
}

#main section#main_what #main_what_img img#main_what_img-hotel {
    width: 100%;
    height: auto;
    min-width: 359px;
    min-height: 540px;
    max-width: 631px;
    max-height: 950px;
    z-index: 1
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_what #main_what_img img#main_what_img-hotel {
        min-width: auto;
        min-height: auto;
        max-width: auto;
        max-height: auto
    }
}

@media only screen and (max-width:766px) {
    #main section#main_what #main_what_img img#main_what_img-hotel {
        min-width: auto;
        min-height: auto;
        max-width: auto;
        max-height: auto
    }
}

#main section#main_what a {
    margin: 15px 0 0 95px
}

#main section#main_work {
    position: relative;
    top: auto;
    left: auto;
    width: calc(100% - 170px);
    height: auto;
    background-color: transparent;
    z-index: 2;
    transition: opacity 1.6s ease-out;
    opacity: 0;
    -moz-opacity: 0;
    -khtml-opacity: 0;
    filter: alpha(opacity=0);
    margin: 130px 0 0 170px
}

#main section#main_work.open {
    opacity: 1;
    -moz-opacity: 1;
    -khtml-opacity: 1;
    filter: alpha(opacity=100)
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_work {
        width: calc(100% - 60px);
        margin: 90px 0 0 60px
    }
}

@media only screen and (max-width:766px) {
    #main section#main_work {
        margin: 90px 0 0 20px;
        width: calc(100% - 20px);
        height: 380px
    }
}

#main section#main_work #main_work_title {
    position: absolute;
    width: 75px;
    height: 300px;
    z-index: 3
}

@media only screen and (max-width:766px) {
    #main section#main_work #main_work_title {
        width: 65px
    }
}

#main section#main_work #main_work_title h2 {
    position: absolute;
    top: -30px;
    left: 40px;
    width: 330px;
    transform: rotate(90deg);
    transform-origin: bottom left;
    font-family: EB Garamond, serif;
    font-size: 57px;
    line-height: 30px;
    letter-spacing: .02px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_work #main_work_title h2 {
        font-size: 50px;
        line-height: 30px
    }
}

@media only screen and (max-width:766px) {
    #main section#main_work #main_work_title h2 {
        left: 35px;
        font-size: 50px;
        line-height: 30px
    }
}

#main section#main_work #main_work_title p {
    position: absolute;
    left: 0;
    top: 0;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-weight: 500;
    font-size: 20px;
    line-height: 20px;
    letter-spacing: .7px;
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: vertical-rl;
    writing-mode: vertical-rl
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_work #main_work_title p {
        font-size: 17px
    }
}

@media only screen and (max-width:766px) {
    #main section#main_work #main_work_title p {
        left: 2px;
        font-size: 17px
    }
}

#main section#main_work #main_work_cloud {
    position: relative;
    width: 100%;
    height: auto;
    overflow: hidden
}

#main section#main_work #main_work_cloud img#main_work_cloud-shade {
    position: absolute;
    width: 520px;
    height: calc(100% - 30px);
    pointer-events: none;
    z-index: 2
}

@media only screen and (max-width:766px) {
    #main section#main_work #main_work_cloud img#main_work_cloud-shade {
        height: 100%
    }
}

#main section#main_work #main_work_cloud div {
    width: calc(100% + 120px);
    height: auto;
    text-align: left;
    overflow: hidden;
    font-family: EB Garamond, serif;
    font-size: 39px;
    line-height: 40px;
    letter-spacing: .02px;
    opacity: .35;
    -moz-opacity: .35;
    -khtml-opacity: .35;
    filter: alpha(opacity=35)
}

#main section#main_work #main_work_cloud div span {
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 25px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-weight: 600;
    color: #969696;
    margin: 0 10px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main section#main_work #main_work_cloud div {
        height: 309px
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #main section#main_work #main_work_cloud div {
        height: 309px
    }
}

@media only screen and (max-width:766px) {
    #main section#main_work #main_work_cloud div {
        height: 375px;
        overflow: hidden;
        font-size: 34px;
        line-height: 33px
    }
    #main section#main_work #main_work_cloud div span {
        font-size: 20px
    }
}

#main section#main_work #main_work_cloud a {
    margin: 22px 0 0 95px;
    z-index: 4
}

@media only screen and (max-width:766px) {
    #main section#main_work #main_work_cloud a {
        position: absolute;
        top: 315px;
        margin: 0
    }
    #main section#main_work #main_work_cloud a img {
        margin-left: 0
    }
}

#main #main_news,
#main #main_reach {
    transition: opacity 1.6s ease-out;
    opacity: 0;
    -moz-opacity: 0;
    -khtml-opacity: 0;
    filter: alpha(opacity=0)
}

#main #main_news.open,
#main #main_reach.open {
    opacity: 1;
    -moz-opacity: 1;
    -khtml-opacity: 1;
    filter: alpha(opacity=100)
}

#main #main_news a h2,
#main #main_reach a h2 {
    font-family: EB Garamond, serif;
    font-size: 57px;
    line-height: 30px;
    letter-spacing: .02px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main #main_news a h2,
    #main #main_reach a h2 {
        font-size: 50px;
        line-height: 30px
    }
}

@media only screen and (max-width:766px) {
    #main #main_news a h2,
    #main #main_reach a h2 {
        left: 35px;
        font-size: 50px;
        line-height: 30px
    }
}

#main #main_news a p,
#main #main_reach a p {
    margin: 15px 0 5px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-weight: 500;
    font-size: 20px;
    line-height: 20px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main #main_news a p,
    #main #main_reach a p {
        font-size: 17px
    }
}

@media only screen and (max-width:766px) {
    #main #main_news a p,
    #main #main_reach a p {
        left: 2px;
        font-size: 17px
    }
}

#main #main_news a img,
#main #main_reach a img {
    transition: all .2s ease-in
}

#main #main_news a:hover img,
#main #main_reach a:hover img {
    margin-left: 15px
}

#main #main_news {
    position: relative;
    width: 280px;
    height: 120px;
    margin: 140px 0 0 380px;
    float: left
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main #main_news {
        margin-left: 60px
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #main #main_news {
        margin-left: 60px
    }
}

@media only screen and (max-width:766px) {
    #main #main_news {
        float: none;
        margin: 80px 0 0 20px
    }
}

#main #main_reach {
    position: relative;
    width: 250px;
    height: 120px;
    margin: 190px 0 40px 160px;
    float: left
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #main #main_reach {
        margin-left: 60px
    }
}

@media only screen and (max-width:766px) {
    #main #main_reach {
        float: none;
        margin: 60px 0 40px 70px
    }
}

#concept section.top .top_txt {
    position: relative;
    top: auto;
    left: auto;
    width: 750px;
    height: auto;
    background-color: transparent;
    z-index: 1;
    margin: 0 0 0 265px;
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #concept section.top .top_txt {
        margin-left: 160px;
        width: calc(100% - 200px)
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #concept section.top .top_txt {
        width: calc(100% - 325px)
    }
}

@media only screen and (max-width:766px) {
    #concept section.top .top_txt {
        width: calc(100% - 40px);
        margin-left: 20px
    }
}

#concept section.top .top_txt h3 {
    margin-bottom: 30px;
    font-size: 28px;
    font-weight: 500;
    line-height: 28px
}

#concept section.top .top_txt p {
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-size: 20px;
    line-height: 34px;
    text-align: justify
}

#concept section.top .top_txt div {
    margin: 45px 0;
    text-align: right;
    font-size: 17px;
    letter-spacing: .01px;
    line-height: 28px
}

#concept section.top .top_txt div span {
    font-weight: 600
}

@media only screen and (max-width:766px) {
    #concept section.top .top_txt h3 {
        margin: 37px 0 30px;
        font-size: 25px;
        line-height: 25px
    }
    #concept section.top .top_txt p {
        font-size: 17px;
        line-height: 30px
    }
    #concept section.top .top_txt div {
        margin: 45px 0;
        text-align: right;
        font-size: 15px;
        line-height: 25px
    }
}

#project section.top .top_txt {
    position: relative;
    top: auto;
    left: auto;
    width: calc(100% - 265px);
    height: auto;
    background-color: transparent;
    z-index: 1;
    margin: 0 0 0 265px;
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #project section.top .top_txt {
        margin-left: 160px;
        width: calc(100% - 160px)
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #project section.top .top_txt {
        width: calc(100% - 265px)
    }
}

@media only screen and (max-width:766px) {
    #project section.top .top_txt {
        width: calc(100% - 20px);
        margin: 60px 0 0 20px
    }
}

#project section.top .top_txt ul li {
    margin-bottom: 60px
}

#project section.top .top_txt ul li div.project_top_txt-l {
    display: inline-block;
    width: 485px;
    height: auto;
    float: left;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 20px;
    text-align: justify
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #project section.top .top_txt ul li div.project_top_txt-l {
        width: 50%
    }
}

@media only screen and (max-width:766px) {
    #project section.top .top_txt ul li div.project_top_txt-l {
        width: 50%;
        font-size: 12px
    }
}

#project section.top .top_txt ul li div.project_top_txt-l img.project_top_txt-logo {
    margin-bottom: 30px
}

@media only screen and (max-width:766px) {
    #project section.top .top_txt ul li div.project_top_txt-l img.project_top_txt-logo {
        width: 100px;
        height: auto
    }
}

#project section.top .top_txt ul li div.project_top_txt-l h3 {
    margin-bottom: 20px;
    font-weight: 500
}

@media only screen and (max-width:766px) {
    #project section.top .top_txt ul li div.project_top_txt-l h3 {
        font-weight: 600
    }
}

#project section.top .top_txt ul li div.project_top_txt-l p {
    margin-right: 40px;
    line-height: 26px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #project section.top .top_txt ul li div.project_top_txt-l p {
        margin-right: 20px
    }
}

@media only screen and (max-width:766px) {
    #project section.top .top_txt ul li div.project_top_txt-l p {
        margin-right: 10px;
        line-height: 22px
    }
}

#project section.top .top_txt ul li div.project_top_txt-l a {
    width: 130px;
    margin-top: 15px
}

@media only screen and (max-width:766px) {
    #project section.top .top_txt ul li div.project_top_txt-l a {
        margin-top: 20px
    }
}

#project section.top .top_txt ul li div.project_top_txt-r {
    display: inline-block;
    float: right;
    width: calc(100% - 485px);
    height: 310px
}

#project section.top .top_txt ul li div.project_top_txt-r img {
    position: relative;
    float: right;
    height: 100%
}

#project section.top .top_txt ul li div.project_top_txt-r img.pc {
    width: 330px
}

#project section.top .top_txt ul li div.project_top_txt-r img.sp {
    width: 100%
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #project section.top .top_txt ul li div.project_top_txt-r {
        width: calc(50% - 10px)
    }
}

@media only screen and (max-width:766px) {
    #project section.top .top_txt ul li div.project_top_txt-r {
        width: calc(50% - 10px);
        height: 300px
    }
}

#project section.top .top_txt ul li div#bspk-hotel {
    background: url(../images/project/bspk-hotel-pc.jpg);
    -ms-background-size: cover;
    background-size: cover;
    background-position: 50% 80%;
    background-repeat: no-repeat
}

@media only screen and (max-width:766px) {
    #project section.top .top_txt ul li div#bspk-hotel {
        background: url(../images/project/bspk-hotel-sp.jpg);
        -ms-background-size: cover;
        background-size: cover;
        background-position: 50% 0;
        background-repeat: no-repeat
    }
}

#project section.top .top_txt ul li div#nest1-hotel {
    background: url(../images/project/nest1-hotel-pc.jpg);
    -ms-background-size: cover;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat
}

@media only screen and (max-width:766px) {
    #project section.top .top_txt ul li div#nest1-hotel {
        background: url(../images/project/nest1-hotel-sp.jpg);
        -ms-background-size: cover;
        background-size: cover;
        background-position: 50% 50%;
        background-repeat: no-repeat
    }
}

#project section.top .top_txt ul li div#nest2-hotel {
    background: url(../images/project/nest2-hotel-pc.jpg);
    -ms-background-size: cover;
    background-size: cover;
    background-position: 50% 100%;
    background-repeat: no-repeat
}

@media only screen and (max-width:766px) {
    #project section.top .top_txt ul li div#nest2-hotel {
        background: url(../images/project/nest2-hotel-sp.jpg);
        -ms-background-size: cover;
        background-size: cover;
        background-position: 50% 100%;
        background-repeat: no-repeat
    }
}

#project section.top .top_txt h4 {
    margin-bottom: 60px;
    font-family: EB Garamond, serif;
    font-size: 30px;
    line-height: 30px
}

@media only screen and (max-width:766px) {
    #project section.top .top_txt h4 {
        font-size: 25px
    }
}

#company section.top .top_txt {
    position: relative;
    top: auto;
    left: auto;
    width: calc(100% - 265px);
    height: auto;
    background-color: transparent;
    z-index: 1;
    margin: 0 0 0 265px;
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #company section.top .top_txt {
        margin: 0 0 60px 160px;
        width: calc(100% - 160px)
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #company section.top .top_txt {
        width: calc(100% - 265px)
    }
}

@media only screen and (max-width:766px) {
    #company section.top .top_txt {
        width: calc(100% - 20px);
        margin: 45px 0 0 20px
    }
}

#company section.top .top_txt h3 {
    margin: 15px 0 55px;
    font-family: EB Garamond, serif;
    font-size: 45px;
    line-height: 0
}

@media only screen and (max-width:766px) {
    #company section.top .top_txt h3 {
        position: absolute;
        transform: rotate(90deg);
        transform-origin: top left;
        margin: 0 0 0 20px;
        font-size: 40px
    }
}

#company section.top .top_txt p {
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 17px;
    line-height: 25px;
    font-weight: 400
}

#company section.top .top_txt p span {
    display: block;
    font-size: 20px
}

@media only screen and (max-width:766px) {
    #company section.top .top_txt p {
        margin-left: 50px;
        width: calc(100% - 70px);
        font-size: 15px;
        line-height: 22px
    }
    #company section.top .top_txt p span {
        font-size: 17px
    }
}

#company section.top .top_txt .top_txt_l {
    position: relative;
    width: 415px;
    height: auto;
    float: left
}

@media only screen and (min-width:767px) and (max-width:1024px) {
    #company section.top .top_txt .top_txt_l {
        float: none;
        width: 100%
    }
}

@media only screen and (max-width:766px) {
    #company section.top .top_txt .top_txt_l {
        float: none;
        width: 100%
    }
}

#company section.top .top_txt .top_txt_r {
    position: relative;
    float: right;
    width: calc(100% - 415px)
}

@media only screen and (min-width:767px) and (max-width:1024px) {
    #company section.top .top_txt .top_txt_r {
        float: none;
        width: 100%;
        margin-top: 60px
    }
}

@media only screen and (max-width:766px) {
    #company section.top .top_txt .top_txt_r {
        float: none;
        width: 100%;
        margin: 57px 0
    }
}

#company section.top .top_txt .top_txt_r img.pc {
    width: 100%;
    height: auto
}

@media only screen and (max-width:767px) {
    #company section.top .top_txt .top_txt_r img.pc {
        display: none
    }
}

#company section.top .top_txt .top_txt_r img.sp {
    margin-left: 50px;
    width: calc(100% - 50px);
    height: auto
}

@media only screen and (min-width:766px) {
    #company section.top .top_txt .top_txt_r img.sp {
        display: none
    }
}

#company section.top .top_txt .top_txt_r img.pc-shade {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    width: 400px;
    height: 100%
}

@media only screen and (max-width:767px) {
    #company section.top .top_txt .top_txt_r img.pc-shade {
        display: none
    }
}

#company section.top .top_txt .top_txt_r img.sp-shade {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    width: 50%;
    height: 100%
}

@media only screen and (min-width:766px) {
    #company section.top .top_txt .top_txt_r img.sp-shade {
        display: none
    }
}

#company section.top .top_txt .top_txt_r a {
    margin-top: 20px
}

@media only screen and (max-width:767px) {
    #company section.top .top_txt .top_txt_r a {
        margin: 25px 0 0 50px
    }
}

#contact section.top .top_txt {
    position: relative;
    top: auto;
    left: auto;
    width: 750px;
    height: auto;
    background-color: transparent;
    z-index: 1;
    margin: 0 0 0 265px
}


@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #contact section.top .top_txt {
        margin-left: 160px;
        width: calc(100% - 160px)
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #contact section.top .top_txt {
        width: calc(100% - 325px)
    }
}

@media only screen and (max-width:766px) {
    #contact section.top .top_txt {
        width: calc(100% - 20px);
        margin-left: 0
    }
}

#contact section.top .top_txt form {
    margin-bottom: 60px
}



@media only screen and (max-width:766px) {
    #contact section.top .top_txt form {
        margin: 40px 0 60px 20px;
        width: calc(100% - 20px)
    }
}



#news section.top .top_txt {
    position: relative;
    top: auto;
    left: auto;
    width: 750px;
    height: auto;
    background-color: transparent;
    z-index: 1;
    margin: 0 0 0 265px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #news section.top .top_txt {
        margin: 0 0 60px 140px;
        width: calc(100% - 140px)
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #news section.top .top_txt {
        width: calc(100% - 265px)
    }
}

@media only screen and (max-width:766px) {
    #news section.top .top_txt {
        width: 100%;
        margin: 45px 0 60px
    }
}

#news section.top .top_txt #top_txt_news_large {
    margin-bottom: 50px;
    width: 100%
}

#news section.top .top_txt #top_txt_news_large div {
    position: relative;
    display: block;
    margin-bottom: 15px;
    width: 100%;
    height: 380px;
    -ms-background-size: cover;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat
}

#news section.top .top_txt #top_txt_news_large div img {
    width: 330px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0
}

@media only screen and (max-width:766px) {
    #news section.top .top_txt #top_txt_news_large div {
        margin-left: 20px;
        width: calc(100% - 20px);
        height: 230px
    }
}

#news section.top .top_txt #top_txt_news_large h2 {
    margin-bottom: 20px;
    position: relative;
    left: auto;
    width: auto;
    height: auto;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 36px;
    letter-spacing: 0
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #news section.top .top_txt #top_txt_news_large h2 {
        margin-right: 20px
    }
}

@media only screen and (max-width:766px) {
    #news section.top .top_txt #top_txt_news_large h2 {
        font-size: 15px;
        line-height: 22px;
        margin: 0 20px 10px
    }
}

#news section.top .top_txt #top_txt_news_large span {
    font-family: EB Garamond, serif;
    font-size: 24px;
    color: #646464;
    line-height: 32px;
    letter-spacing: 0
}

@media only screen and (max-width:766px) {
    #news section.top .top_txt #top_txt_news_large span {
        font-size: 15px;
        line-height: 20px;
        margin: 0 20px
    }
}

@media only screen and (max-width:766px) {
    #news section.top .top_txt #top_txt_news_large a {
        margin-left: 20px
    }
}

#news section.top .top_txt .top_txt_news_small {
    margin-top: 30px;
    width: 100%
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #news section.top .top_txt .top_txt_news_small {
        width: calc(100% - 40px)
    }
}

@media only screen and (max-width:766px) {
    #news section.top .top_txt .top_txt_news_small {
        width: calc(100% - 20px)
    }
}

#news section.top .top_txt .top_txt_news_small .top_txt_news_small-img {
    position: relative;
    display: inline-block;
    width: 280px;
    height: 185px;
    margin-right: 25px;
    float: left;
    -ms-background-size: cover;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat
}

#news section.top .top_txt .top_txt_news_small .top_txt_news_small-img img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0
}

@media only screen and (max-width:766px) {
    #news section.top .top_txt .top_txt_news_small .top_txt_news_small-img {
        width: calc(50% - 15px);
        height: 115px;
        margin-right: 15px
    }
}

#news section.top .top_txt .top_txt_news_small .top_txt_news_small_txt {
    display: inline-block;
    width: calc(100% - 305px)
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #news section.top .top_txt .top_txt_news_small .top_txt_news_small_txt {
        width: calc(100% - 325px)
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #news section.top .top_txt .top_txt_news_small .top_txt_news_small_txt {
        width: calc(100% - 365px)
    }
}

#news section.top .top_txt .top_txt_news_small .top_txt_news_small_txt h3 {
    margin-bottom: 15px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 28px;
    letter-spacing: 0
}

@media only screen and (max-width:766px) {
    #news section.top .top_txt .top_txt_news_small .top_txt_news_small_txt h3 {
        font-size: 12px;
        line-height: 17px
    }
}

#news section.top .top_txt .top_txt_news_small .top_txt_news_small_txt span {
    font-family: EB Garamond, serif;
    font-size: 22px;
    color: #646464;
    line-height: 28px;
    letter-spacing: 0
}

@media only screen and (max-width:766px) {
    #news section.top .top_txt .top_txt_news_small .top_txt_news_small_txt span {
        font-size: 14px;
        line-height: 17px
    }
}

@media only screen and (max-width:766px) {
    #news section.top .top_txt .top_txt_news_small .top_txt_news_small_txt {
        width: 50%
    }
}

#news section.top .top_txt .wp-pagenavi {
    position: relative;
    width: 100%;
    margin: 70px 0 40px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #news section.top .top_txt .wp-pagenavi {
        width: calc(100% - 40px)
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #news section.top .top_txt .wp-pagenavi {
        width: calc(100% - 60px)
    }
}

@media only screen and (max-width:766px) {
    #news section.top .top_txt .wp-pagenavi {
        width: calc(100% - 40px);
        margin: 40px 0 0 20px
    }
}

#news section.top .top_txt .wp-pagenavi a {
    font-family: EB Garamond, serif;
    font-size: 19px;
    font-weight: 600;
    transition: opacity .2s ease-in;
    opacity: 1;
    -moz-opacity: 1;
    -khtml-opacity: 1;
    filter: alpha(opacity=100)
}

#news section.top .top_txt .wp-pagenavi a:hover {
    opacity: .7;
    -moz-opacity: .7;
    -khtml-opacity: .7;
    filter: alpha(opacity=70)
}

@media only screen and (max-width:766px) {
    #news section.top .top_txt .wp-pagenavi a {
        font-size: 14px
    }
}

#news section.top .top_txt .wp-pagenavi a.previouspostslink img {
    margin-right: 5px;
    vertical-align: middle
}

#news section.top .top_txt .wp-pagenavi a.nextpostslink {
    float: right
}

#news section.top .top_txt .wp-pagenavi a.nextpostslink img {
    margin-left: 5px;
    vertical-align: middle
}

#news section.top .top_txt .wp-pagenavi span.pages {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    font-family: EB Garamond, serif;
    font-size: 19px;
    font-weight: 600
}

@media only screen and (max-width:766px) {
    #news section.top .top_txt .wp-pagenavi span.pages {
        font-size: 14px
    }
}

#news-article section.top .top_txt {
    position: relative;
    top: auto;
    left: auto;
    width: 750px;
    height: auto;
    background-color: transparent;
    z-index: 1;
    margin: 0 0 40px 265px;
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #news-article section.top .top_txt {
        margin: 0 0 60px 160px;
        width: calc(100% - 160px)
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #news-article section.top .top_txt {
        width: calc(100% - 265px)
    }
}

@media only screen and (max-width:766px) {
    #news-article section.top .top_txt {
        width: 100%;
        margin: 45px 0 60px
    }
}

#news-article section.top .top_txt #top_txt_news_large {
    margin-bottom: 50px;
    width: 100%
}

#news-article section.top .top_txt #top_txt_news_large div {
    position: relative;
    display: block;
    margin-bottom: 15px;
    width: 100%;
    height: 380px;
    -ms-background-size: cover;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat
}

#news-article section.top .top_txt #top_txt_news_large div img {
    width: 330px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0
}

@media only screen and (max-width:766px) {
    #news-article section.top .top_txt #top_txt_news_large div {
        margin-left: 20px;
        width: calc(100% - 20px);
        height: 230px
    }
}

#news-article section.top .top_txt #top_txt_news_large h2 {
    margin-bottom: 20px;
    position: relative;
    left: auto;
    width: auto;
    height: auto;
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 36px;
    letter-spacing: 0
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #news-article section.top .top_txt #top_txt_news_large h2 {
        margin-right: 20px
    }
}

@media only screen and (max-width:766px) {
    #news-article section.top .top_txt #top_txt_news_large h2 {
        font-size: 20px;
        line-height: 26px;
        margin: 0 20px 30px
    }
}

#news-article section.top .top_txt #top_txt_news_large span {
    font-family: EB Garamond, serif;
    font-size: 24px;
    color: #646464;
    line-height: 32px;
    letter-spacing: 0
}

@media only screen and (max-width:766px) {
    #news-article section.top .top_txt #top_txt_news_large span {
        font-size: 15px;
        line-height: 25px;
        margin: 0 20px
    }
}

#news-article section.top .top_txt #top_txt_news_large p {
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 20px;
    line-height: 34px;
    text-align: justify
}

#news-article section.top .top_txt #top_txt_news_large p a {
    transition: color .2s ease-in
}

#news-article section.top .top_txt #top_txt_news_large p a:hover {
    color: #a57a44
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #news-article section.top .top_txt #top_txt_news_large p {
        margin-right: 60px
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #news-article section.top .top_txt #top_txt_news_large p {
        margin-right: 40px
    }
}

@media only screen and (max-width:766px) {
    #news-article section.top .top_txt #top_txt_news_large p {
        margin: 0 20px;
        font-size: 17px;
        line-height: 30px
    }
}

#news-article section.top .top_txt #top_txt_news_next {
    width: 100%
}

#news-article section.top .top_txt #top_txt_news_next h3 {
    margin-bottom: 40px;
    font-family: EB Garamond, serif;
    font-size: 35px;
    line-height: 17px
}

@media only screen and (max-width:766px) {
    #news-article section.top .top_txt #top_txt_news_next h3 {
        margin: 0 20px 15px;
        font-size: 20px;
        line-height: 35px
    }
}

#news-article section.top .top_txt #top_txt_news_next #top_txt_news_next-img {
    position: relative;
    display: inline-block;
    width: 285px;
    height: 185px;
    float: left;
    -ms-background-size: cover;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat
}

#news-article section.top .top_txt #top_txt_news_next #top_txt_news_next-img img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0
}

@media only screen and (max-width:766px) {
    #news-article section.top .top_txt #top_txt_news_next #top_txt_news_next-img {
        width: calc(50% - 10px);
        height: 115px
    }
}

#news-article section.top .top_txt #top_txt_news_next #top_txt_news_next-txt {
    display: inline-block;
    float: left;
    width: calc(100% - 305px);
    margin-left: 20px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #news-article section.top .top_txt #top_txt_news_next #top_txt_news_next-txt {
        width: calc(100% - 375px)
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #news-article section.top .top_txt #top_txt_news_next #top_txt_news_next-txt {
        width: calc(100% - 325px)
    }
}

@media only screen and (max-width:766px) {
    #news-article section.top .top_txt #top_txt_news_next #top_txt_news_next-txt {
        width: calc(50% - 20px);
        margin-left: 15px
    }
}

#news-article section.top .top_txt #top_txt_news_next #top_txt_news_next-txt span {
    display: block;
    margin-bottom: 10px;
    font-family: EB Garamond, serif;
    font-size: 22px;
    line-height: 28px;
    color: #646464
}

@media only screen and (max-width:766px) {
    #news-article section.top .top_txt #top_txt_news_next #top_txt_news_next-txt span {
        font-size: 14px;
        line-height: 17px
    }
}

#news-article section.top .top_txt #top_txt_news_next #top_txt_news_next-txt h4 {
    margin-bottom: 20px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 20px;
    line-height: 28px
}

@media only screen and (max-width:766px) {
    #news-article section.top .top_txt #top_txt_news_next #top_txt_news_next-txt h4 {
        font-size: 13px;
        line-height: 17px
    }
}

#recruit section.top .top_txt {
    position: relative;
    top: auto;
    left: auto;
    width: calc(100% - 265px);
    height: auto;
    background-color: transparent;
    z-index: 1;
    margin: 0 0 0 265px;
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #recruit section.top .top_txt {
        margin-left: 160px;
        width: calc(100% - 180px)
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #recruit section.top .top_txt {
        width: calc(100% - 265px)
    }
}

@media only screen and (max-width:766px) {
    #recruit section.top .top_txt {
        width: 100%;
        margin-left: 0
    }
}

#recruit section.top .top_txt h3 {
    margin-bottom: 30px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 28px;
    font-weight: 500;
    line-height: 28px
}

#recruit section.top .top_txt p {
    width: 750px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-size: 20px;
    line-height: 34px;
    text-align: justify
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #recruit section.top .top_txt p {
        width: calc(100% - 20px)
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #recruit section.top .top_txt p {
        width: calc(100% - 60px)
    }
}

@media only screen and (max-width:766px) {
    #recruit section.top .top_txt p {
        width: 100%
    }
}

@media only screen and (max-width:766px) {
    #recruit section.top .top_txt h3 {
        margin: 37px 0 30px;
        font-size: 25px;
        line-height: 25px
    }
    #recruit section.top .top_txt p {
        font-size: 17px;
        line-height: 30px
    }
}

#recruit section.top .top_txt div.top_txt-1 {
    margin-bottom: 65px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #recruit section.top .top_txt div.top_txt-1 {
        margin-bottom: 80px
    }
}

#recruit section.top .top_txt div.top_txt-2 h4 {
    margin: 120px 0 55px;
    font-family: EB Garamond, serif;
    font-size: 45px;
    line-height: 45px
}

#recruit section.top .top_txt div.top_txt-2 p {
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 28px
}

#recruit section.top .top_txt div.top_txt-2 p span {
    display: block;
    font-weight: 400
}

#recruit section.top .top_txt div.top_txt-2 a {
    margin: 5px 0 55px
}

#recruit section.top .top_txt div.top_txt-3 {
    position: relative;
    width: 100%;
    overflow: hidden;
    margin-bottom: 40px;
    margin-top: 110px
}

#recruit section.top .top_txt div.top_txt-3 h5 {
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 20px
}

@media only screen and (max-width:766px) {
    #recruit section.top .top_txt div.top_txt-1 {
        margin: 0 0 90px 20px;
        width: calc(100% - 40px)
    }
    #recruit section.top .top_txt div.top_txt-2 h4 {
        position: absolute;
        transform: rotate(90deg);
        transform-origin: top left;
        margin: 0 0 0 40px;
        font-size: 40px;
        line-height: 0
    }
    #recruit section.top .top_txt div.top_txt-2 p {
        margin-left: 70px;
        font-size: 17px;
        line-height: 26px;
        width: calc(100% - 90px)
    }
    #recruit section.top .top_txt div.top_txt-2 a {
        margin: 5px 0 30px 70px
    }

    #recruit section.top .top_txt div.top_txt-3 {
        margin-top: 80px;
    }
    #recruit section.top .top_txt div.top_txt-3 h5 {
        font-size: 17px;
        width: calc(100% - 40px);
        margin-left: 20px
    }
}

#recruit section.top .top_txt div.top_txt-3 div {
    position: relative;
    width: calc(100% + 150px);
    text-align: left;
    text-justify: inter-word;
    overflow: hidden;
    font-family: EB Garamond, serif;
    font-size: 39px;
    line-height: 40px;
    letter-spacing: .02px
}

#recruit section.top .top_txt div.top_txt-3 div span {
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 28px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-weight: 600;
    color: #969696;
    margin: 0 10px
}

#recruit section.top .top_txt div.top_txt-3 div img {
    position: absolute;
    top: 0;
    right: 0;
    width: 600px;
    height: 800px
}

@media only screen and (max-width:766px) {
    #recruit section.top .top_txt div.top_txt-3 div img {
        width: 100%
    }

    #recruit section.top .top_txt div.top_txt-3 div {
        width: calc(100% + 200px);
        font-size: 34px;
        line-height: 33px
    }

    #recruit section.top .top_txt div.top_txt-3 div span {
        font-size: 20px
    }
}

#recruit-article section.top .top_txt {
    position: relative;
    top: auto;
    left: auto;
    width: 750px;
    height: auto;
    background-color: transparent;
    z-index: 1;
    margin: 0 0 0 265px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #recruit-article section.top .top_txt {
        margin-left: 160px;
        width: calc(100% - 180px)
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #recruit-article section.top .top_txt {
        width: calc(100% - 325px)
    }
}

@media only screen and (max-width:766px) {
    #recruit-article section.top .top_txt {
        width: 100%;
        margin-left: 0
    }
}

#recruit-article section.top .top_txt div.top_txt-1 {
    margin-bottom: 65px
}


#recruit-article section.top .top_txt div.top_txt-1 h3,
#recruit-article section.top .top_txt div.top_txt-conf h3,
#recruit-article section.top .top_txt div.top_txt-end h3,
#contact section.top .top_txt div.top_txt-conf h3,
#contact section.top .top_txt div.top_txt-end h3 {
    margin-bottom: 30px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 28px;
    font-weight: 600;
    line-height: 28px
}
#recruit-article section.top .top_txt div.top_txt-end h3,
#contact section.top .top_txt div.top_txt-end h3 {
    text-align: center;
    margin-bottom: 30px;
    color: #a67b44;
}
#recruit-article section.top .top_txt div.top_txt-1 h3 span,
#recruit-article section.top .top_txt div.top_txt-conf h3 span,
#contact section.top .top_txt div.top_txt-conf h3 span {
    margin-top: 10px;
    display: block;
    font-size: 20px;
}

#recruit-article section.top .top_txt div.top_txt-1 p {
    width: 750px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 20px;
    line-height: 34px;
    text-align: justify;
    margin-bottom: 34px
}
#recruit-article section.top .top_txt div.top_txt-1 p strong,
#recruit-article section.top .top_txt div.top_txt-1 p b {
    font-weight: 600;
}

#recruit-article section.top .top_txt div.top_txt-conf div,
#recruit-article section.top .top_txt div.top_txt-end p,
#contact section.top .top_txt div.top_txt-conf div,
#contact section.top .top_txt div.top_txt-end p  {
    width: 750px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 18px;
    line-height: 26px;
    color: #787878;
}
#recruit-article section.top .top_txt div.top_txt-conf div span,
#contact section.top .top_txt div.top_txt-conf div span {
    display: block;
    margin-top: 30px;
    font-weight: 600;
    color: #000;
}

#recruit-article section.top .top_txt div.top_txt-end p,
#contact section.top .top_txt div.top_txt-end p {
    margin-bottom: 50px;
    font-size: 20px;
    font-weight: 600;
    line-height: 30px;
    color: #000;
}
#recruit-article section.top .top_txt form a.back,
#recruit-article section.top .top_txt form button,
#recruit-article section.top .top_txt div.top_txt-end a.back,
#contact section.top .top_txt form a.back,
#contact section.top .top_txt form button,
#contact section.top .top_txt div.top_txt-end a.back {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    margin-top: 12px;
    width: 200px; height: 60px;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 60px;
    text-align: center;
    border: 1px solid #b4b4b4;
    color: #fff;
    background-color: #b4b4b4
}
#recruit-article section.top .top_txt div.top_txt-end a,
#contact section.top .top_txt div.top_txt-end a { font-size: 20px; }

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #recruit-article section.top .top_txt div.top_txt-1 p,
    #recruit-article section.top .top_txt div.top_txt-conf p,
    #recruit-article section.top .top_txt div.top_txt-end p,
    #contact section.top .top_txt div.top_txt-conf p,
    #contact section.top .top_txt div.top_txt-end p {
        width: calc(100% - 20px)
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #recruit-article section.top .top_txt div.top_txt-1 p,
    #recruit-article section.top .top_txt div.top_txt-conf p,
    #recruit-article section.top .top_txt div.top_txt-end p,
    #contact section.top .top_txt div.top_txt-conf p,
    #contact section.top .top_txt div.top_txt-end p {
        width: calc(100% - 60px)
    }
}

@media only screen and (max-width:766px) {
    #recruit-article section.top .top_txt div.top_txt-1 p {
        width: 100%;
        font-size: 15px;
        line-height: 20px
    }
}

#recruit-article section.top .top_txt div.top_txt-1 b {
    font-weight: 600
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #recruit-article section.top .top_txt div.top_txt-1 {
        margin-bottom: 80px
    }
}

@media only screen and (max-width:766px) {
    #recruit-article section.top .top_txt div.top_txt-1,
    #recruit-article section.top .top_txt div.top_txt-conf,
    #recruit-article section.top .top_txt div.top_txt-end,
    #contact section.top .top_txt div.top_txt-conf,
    #contact section.top .top_txt div.top_txt-end {
        margin: 0 0 60px 20px;
        width: calc(100% - 40px)
    }
    #recruit-article section.top .top_txt div.top_txt-1 h3,
    #recruit-article section.top .top_txt div.top_txt-conf h3,
    #recruit-article section.top .top_txt div.top_txt-end h3,
    #contact section.top .top_txt div.top_txt-conf h3,
    #contact section.top .top_txt div.top_txt-end h3 {
        margin: 37px 0 30px;
        font-size: 25px;
        line-height: 34px
    }
    #recruit-article section.top .top_txt div.top_txt-conf,
    #contact section.top .top_txt div.top_txt-conf {
        margin-bottom: 50px;

    }
    #recruit-article section.top .top_txt div.top_txt-conf h3 span,
    #contact section.top .top_txt div.top_txt-conf h3 span {
        font-size: 15px;
    }

    #recruit-article section.top .top_txt div.top_txt-1 p {
        font-size: 17px;
        line-height: 30px;
        margin-bottom: 30px;
    }
    #recruit-article section.top .top_txt div.top_txt-conf div,
    #contact section.top .top_txt div.top_txt-conf div  {
        font-size: 12px;
        line-height: 20px
    }
    #recruit-article section.top .top_txt div.top_txt-conf div span,
    #contact section.top .top_txt div.top_txt-conf div span {
        margin-top: 15px;
    }
    #contact section.top .top_txt div.top_txt-conf .mw_wp_form_confirm,
    #contact section.top .top_txt div.top_txt-conf .mw_wp_form_confirm form > div {
        width: 100%;
    }

    #recruit-article section.top .top_txt form {
        margin: 0 0 60px 20px;
        width: calc(100% - 40px)
    }

    #recruit-article section.top .top_txt div.top_txt-conf div.mw_wp_form_preview {
        width: 100%;
    }
     #recruit-article section.top .top_txt div.top_txt-conf div.mw_wp_form_preview form div {
        width: 100%;
    }
    #recruit-article section.top .top_txt .mw_wp_form_preview form {
        margin: 0 0 60px 0;
        width: 100%;
    }
    #recruit-article section.top .top_txt .mw_wp_form_preview form input[type=submit] {
        width: 100%
    }


    #recruit-article section.top .top_txt div.top_txt-end p,
    #contact section.top .top_txt div.top_txt-end p {
        width: 100%;
        font-size: 15px;
        line-height: 22px;
        margin-bottom: 40px; 
    }
    #recruit-article section.top .top_txt form a.back,
    #recruit-article section.top .top_txt form button,
    #recruit-article section.top .top_txt div.top_txt-end a.back,
    #contact section.top .top_txt form a.back,
    #contact section.top .top_txt form button,
    #contact section.top .top_txt div.top_txt-end a.back  {
        margin-top: 12px;
        width: 175px; height: 45px;
        font-size: 15px;
        line-height: 45px;
    }
    #contact section.top .top_txt .mw_wp_form_confirm form {
        margin-left: 0;
    }
}


#privacy section.top h2 .top_h2-en {
    left: 92px
}

@media only screen and (max-width:766px) {
    #privacy section.top h2 .top_h2-en {
        left: 0
    }
}

@media only screen and (max-width:766px) {
    #privacy section.top h2 .top_h2-jp {
        margin-top: 11px
    }
}

#privacy section.top .top_txt {
    position: relative;
    top: auto;
    left: auto;
    width: 750px;
    height: auto;
    background-color: transparent;
    z-index: 1;
    margin: 0 0 0 265px
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:portrait) {
    #privacy section.top .top_txt {
        margin-left: 140px;
        width: calc(100% - 180px)
    }
}

@media only screen and (min-width:767px) and (max-width:1024px) and (orientation:landscape) {
    #privacy section.top .top_txt {
        width: calc(100% - 325px)
    }
}

@media only screen and (max-width:766px) {
    #privacy section.top .top_txt {
        width: calc(100% - 40px);
        margin: 50px 0 50px 20px
    }
}

#privacy section.top .top_txt p {
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-family: ヒラギノ明朝 ProN W3, Hiragino Mincho ProN, 游明朝, YuMincho, ＭＳ\ Ｐ明朝, ＭＳ\ 明朝, serif;
    font-size: 17px;
    line-height: 34px;
    text-align: justify
}

#privacy section.top .top_txt p b {
    font-weight: 600
}

@media only screen and (max-width:766px) {
    #privacy section.top .top_txt p {
        font-size: 12px;
        line-height: 20px
    }
}

#news-article section.top .top_txt #top_txt_news_large p {
    margin-bottom: 30px;
}

#news-article section.top .top_txt #top_txt_news_large p span {
    display: block;
    font-family: EB Garamond, serif;
    color: #000;
    font-size: 22px;
    line-height: 26px;
    text-align: left;
}
#recruit-article section.top .top_txt div.top_txt-1 p span { font-family: EB Garamond, serif; text-align: left; }

@media only screen and (max-width: 766px){
    #news-article section.top .top_txt #top_txt_news_large p span {
        font-size: 17px;
        line-height: 22px;
        margin: 0;
    }
}