@charset "UTF-8";

.header:after,
.footer:after,
.footer__inner:after,
.l-grid:after,
.businessVision--01 .figure .figbody:after,
.performance__list:after {
    display: block;
    visibility: hidden;
    clear: both;
    height: 0;
    content: ''
}

@media screen and (max-width:77.5rem) {
    @media screen and (max-width:36.32812rem) {
        .u-scalable-1 {
            font-size: 1.875rem
        }
    }
}

@media screen and (min-width:77.5rem) and (min-width:36.32812rem),
screen and (max-width:77.5rem) and (min-width:36.32812rem) {
    .u-scalable-1 {
        font-size: 5.16129 vw
    }
}

@media screen and (min-width:77.5rem) {
    @media screen and (min-width:121.09375rem) {
        .u-scalable-1 {
            font-size: 6.25rem
        }
    }
}

@media screen and (max-width:77.5rem) {
    .u-scalable-2 {
        font-size: 3rem
    }
}

@media screen and (min-width:77.5rem) {
    @media screen and (max-width:96.875rem) {
        .u-scalable-2 {
            font-size: 3.87097 vw
        }
    }

    @media screen and (min-width:96.875rem) {
        .u-scalable-2 {
            font-size: 3.75rem
        }
    }
}

@media screen and (min-width:77.5rem) {
    .u-scalable-3 {
        font-size: 3rem
    }
}

.m-main {
    position: relative;
    z-index: -2
}

.massageIntro {
    margin: 0 auto 5%;
    position: relative
}

.massageIntro p img {
    vertical-align: top;
    margin-top: -120px
}

.massageIntro h2 {
    position: absolute;
    margin: 0 auto;
    left: 0;
    right: 0;
    top: 42%
}

.massageIntro h2.okamoto {
    position: absolute;
    margin: 0 auto;
    left: 0;
    right: 0;
    top: 38%
}

.message01,
.messageKeyword {
    margin: 0 auto 75pt
}

.m-lower__intro {
    display: table;
    width: 50pc;
    margin: auto;
    table-layout: fixed
}

.m-lower__title {
    margin: auto;
    color: #333;
    text-align: center;
    line-height: 1
}

.m-lower__description {
    margin-top: 40px;
    font-size: 15px;
    line-height: 2.2;
    letter-spacing: .3px;
    text-align: justify
}

@media screen and (max-width:768px) {
    .massageIntro h2 img {
        max-width: 65%;
        position: static;
        margin: 0 auto
    }

    .massageIntro p img {
        margin-top: -65px
    }

    .m-lower__intro {
        width: 100%;
        max-width: 750px
    }

    .message01 {
        margin: 0 auto 75pt
    }
}

@media screen and (max-width:414px) {
    .massageIntro {
        top: 0;
        margin: 0 0 10%
    }

    .massageIntro h2 {
        top: 37%
    }

    .massageIntro h2.president {
        top: 44%
    }

    .massageIntro p img {
        margin-top: -48px
    }

    .messageKeyword img {
        width: 100%
    }

    .message01 {
        margin: 0 auto 75pt
    }

    .m-lower__intro {
        width: 100%;
        padding: 0 3%
    }
}

@media screen and (max-width:77.5rem) {
    @media screen and (min-width:29.0625rem) {
        .u-scalable-3 {
            font-size: 3.87097 vw
        }
    }

    @media screen and (max-width:29.0625rem) {
        .u-scalable-3 {
            font-size: 1.125rem
        }
    }
}

@media screen and (min-width:77.5rem) {
    .u-scalable-4 {
        font-size: 1.375rem
    }
}

@media screen and (max-width:77.5rem) {
    @media screen and (min-width:56.36364rem) {
        .u-scalable-4 {
            font-size: 1.77419 vw
        }
    }

    @media screen and (max-width:56.36364rem) {
        .u-scalable-4 {
            font-size: 1rem
        }
    }
}

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-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: 400;
    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,
menu,
nav,
section,
summary {
    display: block
}

.breadcrumb {
    float: left;
    margin-bottom: 0;
    padding: 20px 15px 20px 0;
    background: none
}

@media screen and (max-width:320px) {
    .breadcrumb {
        width: 100%;
        float: none;
        margin-bottom: 10px;
        padding: 10px 15px 10px 16px;
        background: #f9f9f9;
        font-size: 11px
    }
}

.breadcrumb a {
    text-decoration: underline
}

.breadcrumb a:hover {
    text-decoration: none
}

.breadcrumb a i {
    margin-right: 3px
}

.breadcrumb a i:before {
    color: #4ba0b7
}

.breadcrumb>li+li:before {
    color: #333
}

.breadcrumb>.active {
    color: #333
}

.alert-danger {
    color: #c83134;
    background-color: #fff1f1;
    border-color: #fee8e8
}

.alert--lg {
    font-weight: 700;
    font-size: 17px
}

@media screen and (max-width:320px) {
    .alert--lg {
        font-size: 14px
    }
}

body.Android .drawer-text {
    margin-left: 4px
}

@media screen and (max-width:414px) {
    body.Android .indexVisual__title {
        position: absolute;
        top: -22vh;
        right: 0;
        bottom: 0;
        left: 0;
        width: 80%;
        height: 250px;
        margin: auto
    }

    body.Android .indexVisual__title img {
        width: 100%
    }

    body.Android .indexVisual__title .below {
        display: block;
        width: 85%;
        margin: 20px auto 0
    }
}

body.lang-en .indexOverview .day {
    font-size: 42px
}

@media screen and (max-width:414px) {
    body.lang-en .indexOverview .day {
        font-size: 27px;
        margin-bottom: 8px
    }
}

body.lang-en .indexOverview .place {
    width: 680px;
    margin: 0 auto 2em
}

body.lang-en .indexOverview .place dt {
    padding-right: .5em
}

@media screen and (max-width:414px) {
    body.lang-en .indexOverview .place dt {
        width: 25%;
        padding-right: 1em
    }
}

@media screen and (max-width:414px) {
    body.lang-en .indexOverview .place dd {
        width: 75%
    }
}

body.lang-en .indexArtist__list li {
    min-height: 360px
}

@media screen and (max-width:414px) {
    body.lang-en .indexArtist__list li {
        min-height: initial
    }
}

body.lang-en .essei__heading h3 {
    font-size: 29px
}

body.lang-en .essei__heading .author {
    text-align: center;
    margin-top: 10px;
    line-height: 1.2
}

body.hidden-scroll {
    overflow: hidden
}

.sl-overlay {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: #fff;
    opacity: .7;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
    display: none;
    z-index: 1006
}

.sl-wrapper {
    z-index: 1000
}

.sl-wrapper button {
    border: 0 none;
    background: transparent;
    font-size: 28px;
    padding: 0;
    cursor: pointer
}

.sl-wrapper button:hover {
    opacity: .7;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"
}

.sl-wrapper .sl-close {
    display: none;
    position: fixed;
    right: 30px;
    top: 30px;
    z-index: 1015;
    margin-top: -14px;
    margin-right: -14px;
    height: 44px;
    width: 44px;
    line-height: 44px;
    color: #eb6687;
    font-size: 30px;
    font-size: 3rem
}

.sl-wrapper .sl-counter {
    display: none;
    position: fixed;
    top: 30px;
    left: 30px;
    z-index: 1015;
    color: #eb6687;
    font-size: 10px;
    font-size: 1rem
}

.sl-wrapper .sl-navigation {
    width: 100%;
    display: none
}

.sl-wrapper .sl-navigation button {
    position: fixed;
    top: 50%;
    margin-top: -22px;
    height: 44px;
    width: 22px;
    line-height: 44px;
    text-align: center;
    display: block;
    z-index: 1015;
    color: #eb6687
}

.sl-wrapper .sl-navigation button.sl-next {
    right: 5px;
    font-size: 20px;
    font-size: 2rem
}

.sl-wrapper .sl-navigation button.sl-prev {
    left: 5px;
    font-size: 20px;
    font-size: 2rem
}

@media(min-width:35.5em) {
    .sl-wrapper .sl-navigation button {
        width: 44px
    }

    .sl-wrapper .sl-navigation button.sl-next {
        right: 10px;
        font-size: 3rem
    }

    .sl-wrapper .sl-navigation button.sl-prev {
        left: 10px;
        font-size: 3rem
    }
}

@media(min-width:50em) {
    .sl-wrapper .sl-navigation button {
        width: 44px
    }

    .sl-wrapper .sl-navigation button.sl-next {
        right: 20px;
        font-size: 3rem
    }

    .sl-wrapper .sl-navigation button.sl-prev {
        left: 20px;
        font-size: 3rem
    }
}

.sl-wrapper .sl-image {
    position: fixed;
    -ms-touch-action: none;
    touch-action: none;
    z-index: 10000
}

.sl-wrapper .sl-image img {
    margin: 0;
    padding: 0;
    display: block;
    border: 0 none
}

@media(min-width:35.5em) {
    .sl-wrapper .sl-image img {
        border: 0 none
    }
}

@media(min-width:50em) {
    .sl-wrapper .sl-image img {
        border: 0 none
    }
}

.sl-wrapper .sl-image iframe {
    background: #000;
    border: 0 none
}

@media(min-width:35.5em) {
    .sl-wrapper .sl-image iframe {
        border: 0 none
    }
}

@media(min-width:50em) {
    .sl-wrapper .sl-image iframe {
        border: 0 none
    }
}

.sl-wrapper .sl-image .sl-caption {
    display: none;
    padding: 10px;
    color: #fff;
    background: rgba(0, 0, 0, .8);
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0
}

.sl-wrapper .sl-image .sl-caption.pos-top {
    bottom: auto;
    top: 0
}

.sl-wrapper .sl-image .sl-caption.pos-outside {
    bottom: auto
}

.sl-wrapper .sl-image .sl-download {
    display: none;
    position: absolute;
    bottom: 5px;
    right: 5px;
    color: #eb6687;
    z-index: 1005
}

.sl-spinner {
    display: none;
    border: 5px solid #333;
    border-radius: 40px;
    height: 40px;
    left: 50%;
    margin: -20px 0 0 -20px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    position: fixed;
    top: 50%;
    width: 40px;
    z-index: 1007;
    -webkit-animation: pulsate 1s ease-out infinite;
    animation: pulsate 1s ease-out infinite
}

.sl-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow: scroll
}

@-webkit-keyframes pulsate {
    0% {
        -webkit-transform: scale(.1);
        transform: scale(.1);
        opacity: 0.0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"
    }

    50% {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
    }

    100% {
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"
    }
}

@keyframes pulsate {
    0% {
        -webkit-transform: scale(.1);
        transform: scale(.1);
        opacity: 0.0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"
    }

    50% {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
    }

    100% {
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"
    }
}

html {
    font-size: 62.5%
}

body {
    background: #fdefe2;
    color: #000;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 16px;
    line-height: 2.2
}

a {
    color: #000;
    text-decoration: underline
}

a:hover {
    text-decoration: none
}

a:hover {
    color: #606066
}

h2 {
    line-height: 1
}

p,
li,
dt,
dd {
    font-size: 14px;
    line-height: 2.2
}

small {
    font-size: 85%
}

strong {
    font-weight: 700
}

em {
    font-style: italic
}

cite {
    font-style: normal
}

label {
    cursor: pointer
}

img {
    width: 100%;
    height: auto;
}

@media screen and (max-width:320px) {
    img {
        max-width: 100%
    }
}

a[href*=javascript] {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"
}

a[href*=javascript]:hover {
    cursor: default;
    opacity: .1 !important;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"
}

.header {
    position: relative;
    height: 21px;
    padding: 30px
}

@media screen and (max-width:414px) {
    .header {
        padding: 13px 17px
    }
}

.header__logo {
    float: left;
    width: 242px
}

@media screen and (max-width:414px) {
    .header__logo {
        width: 142px
    }
}

.header__logo img {
    width: 100%
}

.header-sns {
    margin-left: 35px
}

.header-sns__list li {
    float: left;
    margin-left: 15px
}

.header-sns__list li>a {
    overflow: hidden;
    display: block;
    height: 100%;
    color: #161616;
    text-decoration: none
}

.header-sns__list li>a img {
    height: 13px
}

.gnav {
    display: block;
    position: relative;
    float: right
}

.gnav:after {
    display: block;
    visibility: hidden;
    clear: both;
    height: 0;
    content: ''
}

.gnav__list>li {
    display: inline-block;
    margin-left: 24px;
    text-align: center;
    font-weight: 700;
    vertical-align: top
}

.gnav__list>li>a {
    overflow: hidden;
    display: block;
    height: 100%;
    color: #161616;
    text-decoration: none
}

.gnav__list>li>a img {
    height: 13px
}

@media screen and (max-width:414px) {
    aside {
        overflow: hidden
    }
}

.asideMenu {
    padding: 80px 0;
    background: #FFF
}

@media only screen and (min-device-width:1024px) and (max-width:1366px) {
    .asideMenu {
        padding: 40px 0
    }
}

@media screen and (max-width:768px) {
    .asideMenu {
        padding: 40px 0
    }
}

@media screen and (max-width:414px) {
    .asideMenu {
        padding: 10%
    }
}

.asideMenu__list {
    padding: 0 90px 0 160px
}

@media only screen and (min-device-width:1024px) and (max-width:1366px) {
    .asideMenu__list {
        display: table;
        padding: 0 40px;
        text-align: center
    }
}

@media screen and (max-width:768px) {
    .asideMenu__list {
        display: table;
        padding: 0 40px;
        text-align: center
    }
}

@media only screen and (min-device-width:768px) and (max-width:1024px) and (orientation:landscape) {
    .asideMenu__list {
        padding: 0 40px
    }
}

@media screen and (max-width:414px) {
    .asideMenu__list {
        padding: 0 28px
    }
}

@media screen and (max-width:320px) {
    .asideMenu__list {
        padding: 0
    }
}

.asideMenu__list li {
    display: inline-block
}

@media screen and (max-width:414px) {
    .asideMenu__list li {
        width: 50%;
        margin-bottom: 30px;
        text-align: left
    }
}

.asideMenu__list li:first-child:before {
    content: none
}

.asideMenu__list li:last-child {
    vertical-align: top;
    margin-top: 15px;
    margin-left: 60px
}

@media screen and (max-width:768px) {
    .asideMenu__list li:last-child {
        margin: 50px auto 0;
        margin-left: 0
    }
}

@media screen and (max-width:414px) {
    .asideMenu__list li:last-child {
        width: 100%;
        margin: 0 auto
    }
}

.asideMenu__list li:last-child a {
    display: block;
    text-align: center
}

.asideMenu__list li:last-child a>img {
    display: inline-block;
    height: 53px
}

.asideMenu__list li:last-child:before {
    content: none
}

.asideMenu__list li:before {
    position: relative;
    top: 15px;
    content: '';
    display: inline-block;
    width: 1px;
    margin: 0 40px;
    height: 60px;
    background: #9fa0a0;
    -webkit-transform: rotate(40deg);
    -ms-transform: rotate(40deg);
    transform: rotate(40deg)
}

@media screen and (max-width:414px) {
    .asideMenu__list li:before {
        content: none
    }
}

.asideMenu__list li a {
    display: inline-block;
    transition: .3s
}

.asideMenu__list li a>img {
    display: inline-block;
    height: 32px
}

@media screen and (max-width:414px) {
    .asideMenu__list li a>img {
        height: 25px
    }
}

.asideMenu__list li a:hover {
    transition: .3s;
    opacity: .4;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"
}

.asidePhilosophy {
    position: relative;
    background: url(../image/aside_philosophy_bg.png) no-repeat center;
    background-size: 110%
}

@media only screen and (min-device-width:1024px) and (max-width:1366px) {
    .asidePhilosophy {
        background-size: 180%
    }
}

@media screen and (max-width:768px) {
    .asidePhilosophy {
        background-size: 230%
    }
}

@media only screen and (min-device-width:768px) and (max-width:1024px) and (orientation:landscape) {
    .asidePhilosophy {
        background-size: 170%
    }
}

@media screen and (max-width:414px) {
    .asidePhilosophy {
        background-size: 550%
    }
}

@media screen and (max-width:320px) {
    .asidePhilosophy {
        background-size: 730%
    }
}

.asidePhilosophy>a {
    position: relative;
    display: block;
    z-index: 3;
    text-decoration: none
}

.asidePhilosophy>a:hover {
    cursor: pointer
}

.asidePhilosophy>a:hover .asidePhilosophy__link {
    background: rgba(0, 0, 0, .7)
}

.asidePhilosophy__inner {
    display: table;
    padding: 45px 100px
}

@media screen and (max-width:414px) {
    .asidePhilosophy__inner {
        padding: 10%
    }
}

.asidePhilosophy dt,
.asidePhilosophy dd {
    display: table-cell;
    position: relative;
    z-index: 2;
    vertical-align: middle
}

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

    .asidePhilosophy dt,
    .asidePhilosophy dd {
        display: block
    }
}

.asidePhilosophy dt {
    width: 375px
}

@media screen and (max-width:414px) {
    .asidePhilosophy dt {
        width: 100%
    }
}

.asidePhilosophy dt img {
    display: block;
    width: 375px
}

@media screen and (max-width:414px) {
    .asidePhilosophy dt img {
        width: 100%
    }
}

.asidePhilosophy dd {
    padding: 0 10px 0 95px;
    color: #FFF;
    font-size: 13px;
    line-height: 2;
    text-align: justify
}

@media screen and (max-width:768px) {
    .asidePhilosophy dd {
        margin: 20px auto 0;
        padding: 0
    }
}

.asidePhilosophy__link {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .6);
    transition: .3s;
    z-index: 1
}

.asidePhilosophy__link:hover {
    background: rgba(0, 0, 0, .8)
}

.asidePhilosophy__link img {
    position: absolute;
    top: 0;
    right: 30px;
    bottom: 0;
    z-index: 3;
    display: inline-block;
    width: 18px;
    height: 21px;
    margin: auto
}

@media screen and (max-width:414px) {
    .asidePhilosophy__link img {
        position: absolute;
        top: 0;
        right: 5px;
        bottom: 0
    }
}

.footer {
    padding: 130px 30px 30px;
    text-align: center;
    background: #002f82
}

@media screen and (max-width:414px) {
    .footer {
        padding: 30px;
        text-align: center
    }
}

.footer__sns {
    float: right;
    margin-top: 18px;
    line-height: 1
}

@media screen and (max-width:414px) {
    .footer__sns {
        float: none;
        margin-bottom: 50px
    }
}

.footer__sns li {
    display: inline-block;
    margin-left: 10px;
    line-height: 1
}

@media screen and (max-width:414px) {
    .footer__sns li {
        margin-left: 0
    }
}

.footer__sns li img {
    height: 18px
}

.footer__sns li a {
    display: block;
    transition: .3s
}

@media screen and (max-width:414px) {
    .footer__sns li a {
        padding: 17px 22px
    }
}

.footer__sns li a:hover {
    transition: .3s;
    opacity: .4;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"
}

.footer__logo {
    width: 242px;
    line-height: 1
}

@media screen and (max-width:414px) {
    .footer__logo {
        width: 80%;
        margin: auto
    }
}

.footer__logo>a img {
    width: 100%
}

.footer__copyright {
    display: block;
    width: 210px;
    text-align: center;
    line-height: 1
}

@media screen and (max-width:414px) {
    .footer__copyright {
        width: 80%;
        margin: auto;
        padding: 20px 0;
        font-size: 8px
    }
}

.footer__copyright a {
    display: block;
    color: #161616;
    text-decoration: none
}

.footer__copyright a:hover {
    text-decoration: underline
}

.footer__copyright a:hover {
    color: #4ba0b7
}

.footer__copyright a img {
    width: 100%
}

.footer__copyright span {
    text-transform: uppercase
}

.l-row-eq-height {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.l-contents {
    width: 1200px;
    margin: 0 auto
}

.l-contents:after {
    display: block;
    visibility: hidden;
    clear: both;
    height: 0;
    content: ''
}

@media only screen and (min-device-width:1024px) and (max-width:1366px) {
    .l-contents {
        width: 100%
    }
}

@media screen and (max-width:768px) {
    .l-contents {
        width: 100%
    }
}

@media only screen and (min-device-width:768px) and (max-width:1024px) and (orientation:landscape) {
    .l-contents {
        width: 1024px
    }
}

@media screen and (max-width:414px) {
    .l-contents {
        padding: 0 3%
    }
}

@media only screen and (min-device-width:1024px) and (max-width:1366px) {
    .l-main {
        overflow: hidden;
        width: 1024px;
        margin: auto
    }
}

@media screen and (max-width:414px) {
    .l-main {
        overflow: hidden;
        width: 100%
    }
}

.l-inner {
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding: 20px 10px
}

@media screen and (max-width:768px) {
    .l-inner {
        width: 100%;
        padding: 6%
    }
}

@media screen and (max-width:320px) {
    .l-inner {
        padding: 3%
    }
}

.l-btn-wrap {
    padding: 4%
}

.l-btn-wrap--cta {
    padding: 2% 4%
}

.l-grid>li {
    float: left
}

.l-grid>li:first-child {
    margin-left: 0 !important
}

.l-right {
    float: right
}

.l-right--pc {
    float: right
}

@media screen and (max-width:320px) {
    .l-right--pc {
        float: none
    }
}

.l-right--sp {
    float: none
}

@media screen and (max-width:320px) {
    .l-right--sp {
        float: right
    }
}

.l-left {
    float: left
}

.l-left--pc {
    float: left
}

@media screen and (max-width:320px) {
    .l-left--pc {
        float: none
    }
}

.l-left--sp {
    float: none
}

@media screen and (max-width:320px) {
    .l-left--sp {
        float: left
    }
}

.c-line-clamp-1 {
    position: relative;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1
}

.c-line-clamp-2 {
    position: relative;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

.c-line-clamp-3 {
    position: relative;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3
}

.c-line-clamp-4 {
    position: relative;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4
}

.c-line-clamp-5 {
    position: relative;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5
}

.c-noLink {
    color: #333;
    text-decoration: none
}

.c-noLink:hover,
.c-noLink:focus {
    text-decoration: none
}

.c-background--gray {
    background-color: #fafafa
}

.c-background--green {
    background-color: #fdefe2
}

.c-headline__title {
    position: relative;
    margin-bottom: .6em;
    padding-bottom: .3em;
    font-weight: 600;
    letter-spacing: -.05em;
    font-size: 56.8px
}

@media screen and (max-width:414px) {
    .c-headline__title {
        margin-bottom: .8em;
        padding-bottom: .6em;
        font-size: 32px
    }
}

.c-headline__title:after {
    position: absolute;
    bottom: 0;
    left: 0;
    content: "";
    width: 75px;
    height: 3px;
    background-color: transparent
}

.c-headline__title--white:after {
    background-color: white
}

.c-headline__title--main:after {
    background-color: #fdefe2
}

.c-headline__title--sub:after {
    background-color: #FFF
}

.c-lower__heading {
    width: 42px;
    margin: 85px auto
}

.c-lower__heading img {
    width: 100%
}

@media screen and (max-width:414px) {
    .c-lower__heading {
        padding: 23px 0 15px
    }
}

.c-lower__intro {
    display: table;
    width: 660px;
    margin: auto;
    table-layout: fixed
}

@media screen and (max-width:414px) {
    .c-lower__intro {
        width: 100%;
        padding: 0 3%
    }
}

.c-lower__title {
    margin: auto;
    color: #333;
    text-align: center;
    line-height: 1
}

@media screen and (max-width:414px) {
    .c-lower__title--center {
        position: relative;
        width: 100%
    }

    .c-lower__title--center img {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 50%;
        width: 120%;
        max-width: 120%;
        margin-left: -60%
    }
}

@media screen and (max-width:414px) {
    .c-lower__title img {
        width: 120%;
        max-width: 120%
    }
}

.c-lower__title .small {
    display: block;
    margin-left: -43px;
    color: #FFF;
    font-size: 12px
}

@media screen and (max-width:414px) {
    .c-lower__title .small {
        margin-left: -27px
    }
}

.c-lower__description {
    margin-top: 40px;
    font-size: 16px;
    line-height: 2.2;
    letter-spacing: .3px;
    text-align: justify
}

.c-lower__inner {
    padding: 30px 100px
}

@media screen and (max-width:414px) {
    .c-lower__inner {
        padding: 6%
    }
}

@media screen and (max-width:320px) {
    .c-lower__inner {
        padding: 3%
    }
}

.btn {
    display: inline-block;
    position: relative;
    padding: 10px 25px;
    text-align: center;
    cursor: pointer;
    white-space: initial;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.3;
    text-decoration: none;
    transition: .2s
}

.btn:hover,
.btn:focus {
    text-decoration: none
}

.btn.focus,
.btn:focus,
.btn:hover {
    text-decoration: none;
    cursor: pointer
}

.btn:active,
.btn.active {
    box-shadow: none
}

.btn img:hover {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
}

.btn-lg {
    padding: 20px 16px
}

.m-btn-arrow {
    text-align: left;
    padding-left: 2em;
    padding-right: 3.5em
}

.m-btn-arrow:after {
    position: absolute;
    right: .8em;
    padding-left: .6em;
    border-left: 1px solid transparent;
    content: "\f061";
    font-family: FontAwesome;
    transition: .3s
}

.m-btn-arrow:hover:after {
    right: .6em
}

.m-btn-primary {
    border: 3px solid #fdefe2;
    color: #fdefe2
}

.m-btn-primary:after {
    border-color: #fdefe2;
    color: #fdefe2
}

.m-btn-primary:hover,
.m-btn-primary:focus,
.m-btn-primary:active {
    background-color: #fdefe2;
    color: white
}

.m-btn-primary:hover:after,
.m-btn-primary:focus:after,
.m-btn-primary:active:after {
    border-color: white;
    color: white
}

.m-btn-white {
    border: 3px solid white;
    color: white
}

.m-btn-white:after {
    border-color: white;
    color: white
}

.m-btn-white:hover {
    background-color: white;
    color: #fdefe2
}

.m-btn-white:hover:after {
    border-color: #fdefe2;
    color: #fdefe2
}

.m-btn-langSwitch {
    padding: .5em 1.2em;
    border-radius: 3px;
    border: 4px solid rgba(255, 255, 255, .7);
    color: #161616;
    text-align: center;
    text-decoration: none;
    transition: all .3s ease-in
}

.m-btn-langSwitch:hover,
.m-btn-langSwitch:focus {
    text-decoration: none
}

.m-btn-langSwitch:hover,
.m-btn-langSwitch:focus,
.m-btn-langSwitch:active {
    border: 4px solid rgba(255, 255, 255, .7);
    background: #FFF;
    color: #fdefe2
}

.m-btn-langSwitch--nav {
    background: white
}

.m-btn-langSwitch--visual {
    display: block;
    padding: .5em 2.2em;
    background: #38e783;
    font-size: 15px
}

.m-btn-langSwitch--visual:after {
    display: inline-block;
    content: '\f101';
    padding-left: 10px;
    font-family: FontAwesome;
    font-size: 13px
}

.m-btn-langSwitch--visual i {
    padding-left: 10px
}

label {
    cursor: pointer
}

input[type=text] {
    -webkit-appearance: none
}

/*! ADD */
.m-table {
    width: 100%;
    margin-top: 1px
}

.m-table th,
.m-table td {
    padding: 10px;
    text-align: center
}

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

    .m-table th,
    .m-table td {
        padding: 7px 6px
    }
}

.m-table thead {
    background: #337ab7;
    border-bottom: 2px solid yellow
}

.m-table thead th {
    color: yellow;
    font-weight: 700;
    font-size: 18px
}

@media screen and (max-width:320px) {
    .m-table thead th {
        font-size: 15px
    }

    @media only screen and (max-width:360px) {
        .m-table thead th {
            font-size: 12px
        }
    }
}

.m-table tbody {
    font-size: 16px
}

.m-table tbody .detail {
    width: 110px;
    padding: 6px 5px 12px
}

.m-table tbody tr.even {
    background: #ffffea
}

.m-table tbody td {
    border-bottom: 2px solid yellow
}

.is-inline {
    display: inline
}

.is-inline-block {
    display: inline-block
}

.is-block {
    display: block
}

.is-overhidden {
    overflow: hidden
}

.is-tableCell--pc {
    display: table-cell !important
}

@media screen and (max-width:320px) {
    .is-tableCell--pc {
        display: none !important
    }
}

.is-anchor {
    position: relative;
    top: 80px
}

@media screen and (max-width:414px) {
    .is-anchor {
        top: 160px
    }
}

.is-anchor--interview {
    position: relative;
    top: -84px
}

@media screen and (max-width:414px) {
    .is-anchor--interview {
        top: -54px
    }
}

.is-fixedNav {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999
}

.is-visible--sp {
    display: none !important
}

@media screen and (max-width:414px) {
    .is-visible--sp {
        display: block !important
    }
}

.is-visible--sp5only {
    display: none !important
}

@media only screen and (max-width:360px) {
    .is-visible--sp5only {
        display: block !important
    }
}

.is-hidden--sp {
    display: block !important
}

@media screen and (max-width:414px) {
    .is-hidden--sp {
        display: none !important
    }
}

.is-fixed-bar {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999
}

.is-not--allowed:hover {
    cursor: not-allowed !important
}

.is-not--allowed:hover img {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
}

@media screen and (max-width:414px) {
    .is-colon--sp {
        display: none !important
    }
}

.is-opacity--on {
    opacity: 1 !important;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
}

.u-color {
    color: #161616 !important
}

.u-subColor {
    color: #FFF !important
}

.u-accentColor {
    color: #198ee9 !important
}

.u-linkColor {
    color: #4ba0b7 !important
}

.u-bg {
    background-color: #fdefe2 !important
}

.u-subBg {
    background-color: #f6f6f6 !important
}

.u-accentBg {
    background-color: #e64673 !important
}

.u-dangerColor {
    color: #c83134 !important
}

.u-whiteColor {
    color: white
}

.u-blackColor {
    color: #333
}

.u-accentColor {
    color: #198ee9
}

.u-text--bold {
    font-weight: 700
}

.u-text-red {
    color: #d50000
}

.u-text-green {
    color: #23941e
}

.u-text-greenLight {
    color: #21b7b6
}

.u-text-blue {
    color: #4081b7
}

.u-text-brown {
    color: #b78940
}

.u-text-lime {
    color: #b8bd2b
}

.u-text-orange {
    color: #f3813b
}

.text-blue {
    color: #198ee9
}

.u-marker--yellow {
    background: linear-gradient(transparent 50%, #198ee9 50%)
}

.u-fs10 {
    font-size: 10px
}

.u-fs11 {
    font-size: 11px
}

.u-fs12 {
    font-size: 12px
}

.u-fs13 {
    font-size: 13px
}

.u-fs14 {
    font-size: 14px
}

.u-fs15 {
    font-size: 15px
}

.u-fs16 {
    font-size: 16px
}

.u-fs17 {
    font-size: 17px
}

.u-fs18 {
    font-size: 18px
}

.u-fs19 {
    font-size: 19px
}

.u-fs20 {
    font-size: 20px
}

.u-fs21 {
    font-size: 21px
}

.u-fs22 {
    font-size: 22px
}

.u-fs23 {
    font-size: 23px
}

.u-fs24 {
    font-size: 24px
}

.u-fs25 {
    font-size: 25px
}

.u-fs26 {
    font-size: 26px
}

.u-fs27 {
    font-size: 27px
}

.u-fs28 {
    font-size: 28px
}

.u-fs29 {
    font-size: 29px
}

.u-fs30 {
    font-size: 30px
}

.u-fs31 {
    font-size: 31px
}

.u-fs32 {
    font-size: 32px
}

.u-fs33 {
    font-size: 33px
}

.u-fs34 {
    font-size: 34px
}

.u-fs35 {
    font-size: 35px
}

.u-fs36 {
    font-size: 36px
}

.u-fs37 {
    font-size: 37px
}

.u-fs38 {
    font-size: 38px
}

.u-fs39 {
    font-size: 39px
}

.u-fs40 {
    font-size: 40px
}

.u-m10 {
    margin: 10px
}

.u-m11 {
    margin: 11px
}

.u-m12 {
    margin: 12px
}

.u-m13 {
    margin: 13px
}

.u-m14 {
    margin: 14px
}

.u-m15 {
    margin: 15px
}

.u-m16 {
    margin: 16px
}

.u-m17 {
    margin: 17px
}

.u-m18 {
    margin: 18px
}

.u-m19 {
    margin: 19px
}

.u-m20 {
    margin: 20px
}

.u-m21 {
    margin: 21px
}

.u-m22 {
    margin: 22px
}

.u-m23 {
    margin: 23px
}

.u-m24 {
    margin: 24px
}

.u-m25 {
    margin: 25px
}

.u-m26 {
    margin: 26px
}

.u-m27 {
    margin: 27px
}

.u-m28 {
    margin: 28px
}

.u-m29 {
    margin: 29px
}

.u-m30 {
    margin: 30px
}

.u-m31 {
    margin: 31px
}

.u-m32 {
    margin: 32px
}

.u-m33 {
    margin: 33px
}

.u-m34 {
    margin: 34px
}

.u-m35 {
    margin: 35px
}

.u-m36 {
    margin: 36px
}

.u-m37 {
    margin: 37px
}

.u-m38 {
    margin: 38px
}

.u-m39 {
    margin: 39px
}

.u-m40 {
    margin: 40px
}

.u-mt10 {
    margin-top: 10px
}

.u-mt11 {
    margin-top: 11px
}

.u-mt12 {
    margin-top: 12px
}

.u-mt13 {
    margin-top: 13px
}

.u-mt14 {
    margin-top: 14px
}

.u-mt15 {
    margin-top: 15px
}

.u-mt16 {
    margin-top: 16px
}

.u-mt17 {
    margin-top: 17px
}

.u-mt18 {
    margin-top: 18px
}

.u-mt19 {
    margin-top: 19px
}

.u-mt20 {
    margin-top: 20px
}

.u-mt21 {
    margin-top: 21px
}

.u-mt22 {
    margin-top: 22px
}

.u-mt23 {
    margin-top: 23px
}

.u-mt24 {
    margin-top: 24px
}

.u-mt25 {
    margin-top: 25px
}

.u-mt26 {
    margin-top: 26px
}

.u-mt27 {
    margin-top: 27px
}

.u-mt28 {
    margin-top: 28px
}

.u-mt29 {
    margin-top: 29px
}

.u-mt30 {
    margin-top: 30px
}

.u-mt31 {
    margin-top: 31px
}

.u-mt32 {
    margin-top: 32px
}

.u-mt33 {
    margin-top: 33px
}

.u-mt34 {
    margin-top: 34px
}

.u-mt35 {
    margin-top: 35px
}

.u-mt36 {
    margin-top: 36px
}

.u-mt37 {
    margin-top: 37px
}

.u-mt38 {
    margin-top: 38px
}

.u-mt39 {
    margin-top: 39px
}

.u-mt40 {
    margin-top: 40px
}

.u-mr10 {
    margin-right: 10px
}

.u-mr11 {
    margin-right: 11px
}

.u-mr12 {
    margin-right: 12px
}

.u-mr13 {
    margin-right: 13px
}

.u-mr14 {
    margin-right: 14px
}

.u-mr15 {
    margin-right: 15px
}

.u-mr16 {
    margin-right: 16px
}

.u-mr17 {
    margin-right: 17px
}

.u-mr18 {
    margin-right: 18px
}

.u-mr19 {
    margin-right: 19px
}

.u-mr20 {
    margin-right: 20px
}

.u-mr21 {
    margin-right: 21px
}

.u-mr22 {
    margin-right: 22px
}

.u-mr23 {
    margin-right: 23px
}

.u-mr24 {
    margin-right: 24px
}

.u-mr25 {
    margin-right: 25px
}

.u-mr26 {
    margin-right: 26px
}

.u-mr27 {
    margin-right: 27px
}

.u-mr28 {
    margin-right: 28px
}

.u-mr29 {
    margin-right: 29px
}

.u-mr30 {
    margin-right: 30px
}

.u-mr31 {
    margin-right: 31px
}

.u-mr32 {
    margin-right: 32px
}

.u-mr33 {
    margin-right: 33px
}

.u-mr34 {
    margin-right: 34px
}

.u-mr35 {
    margin-right: 35px
}

.u-mr36 {
    margin-right: 36px
}

.u-mr37 {
    margin-right: 37px
}

.u-mr38 {
    margin-right: 38px
}

.u-mr39 {
    margin-right: 39px
}

.u-mr40 {
    margin-right: 40px
}

.u-mb10 {
    margin-bottom: 10px
}

.u-mb11 {
    margin-bottom: 11px
}

.u-mb12 {
    margin-bottom: 12px
}

.u-mb13 {
    margin-bottom: 13px
}

.u-mb14 {
    margin-bottom: 14px
}

.u-mb15 {
    margin-bottom: 15px
}

.u-mb16 {
    margin-bottom: 16px
}

.u-mb17 {
    margin-bottom: 17px
}

.u-mb18 {
    margin-bottom: 18px
}

.u-mb19 {
    margin-bottom: 19px
}

.u-mb20 {
    margin-bottom: 20px
}

.u-mb21 {
    margin-bottom: 21px
}

.u-mb22 {
    margin-bottom: 22px
}

.u-mb23 {
    margin-bottom: 23px
}

.u-mb24 {
    margin-bottom: 24px
}

.u-mb25 {
    margin-bottom: 25px
}

.u-mb26 {
    margin-bottom: 26px
}

.u-mb27 {
    margin-bottom: 27px
}

.u-mb28 {
    margin-bottom: 28px
}

.u-mb29 {
    margin-bottom: 29px
}

.u-mb30 {
    margin-bottom: 30px
}

.u-mb31 {
    margin-bottom: 31px
}

.u-mb32 {
    margin-bottom: 32px
}

.u-mb33 {
    margin-bottom: 33px
}

.u-mb34 {
    margin-bottom: 34px
}

.u-mb35 {
    margin-bottom: 35px
}

.u-mb36 {
    margin-bottom: 36px
}

.u-mb37 {
    margin-bottom: 37px
}

.u-mb38 {
    margin-bottom: 38px
}

.u-mb39 {
    margin-bottom: 39px
}

.u-mb40 {
    margin-bottom: 40px
}

.u-ml10 {
    margin-left: 10px
}

.u-ml11 {
    margin-left: 11px
}

.u-ml12 {
    margin-left: 12px
}

.u-ml13 {
    margin-left: 13px
}

.u-ml14 {
    margin-left: 14px
}

.u-ml15 {
    margin-left: 15px
}

.u-ml16 {
    margin-left: 16px
}

.u-ml17 {
    margin-left: 17px
}

.u-ml18 {
    margin-left: 18px
}

.u-ml19 {
    margin-left: 19px
}

.u-ml20 {
    margin-left: 20px
}

.u-ml21 {
    margin-left: 21px
}

.u-ml22 {
    margin-left: 22px
}

.u-ml23 {
    margin-left: 23px
}

.u-ml24 {
    margin-left: 24px
}

.u-ml25 {
    margin-left: 25px
}

.u-ml26 {
    margin-left: 26px
}

.u-ml27 {
    margin-left: 27px
}

.u-ml28 {
    margin-left: 28px
}

.u-ml29 {
    margin-left: 29px
}

.u-ml30 {
    margin-left: 30px
}

.u-ml31 {
    margin-left: 31px
}

.u-ml32 {
    margin-left: 32px
}

.u-ml33 {
    margin-left: 33px
}

.u-ml34 {
    margin-left: 34px
}

.u-ml35 {
    margin-left: 35px
}

.u-ml36 {
    margin-left: 36px
}

.u-ml37 {
    margin-left: 37px
}

.u-ml38 {
    margin-left: 38px
}

.u-ml39 {
    margin-left: 39px
}

.u-ml40 {
    margin-left: 40px
}

.u-p10 {
    padding: 10px
}

.u-p11 {
    padding: 11px
}

.u-p12 {
    padding: 12px
}

.u-p13 {
    padding: 13px
}

.u-p14 {
    padding: 14px
}

.u-p15 {
    padding: 15px
}

.u-p16 {
    padding: 16px
}

.u-p17 {
    padding: 17px
}

.u-p18 {
    padding: 18px
}

.u-p19 {
    padding: 19px
}

.u-p20 {
    padding: 20px
}

.u-p21 {
    padding: 21px
}

.u-p22 {
    padding: 22px
}

.u-p23 {
    padding: 23px
}

.u-p24 {
    padding: 24px
}

.u-p25 {
    padding: 25px
}

.u-p26 {
    padding: 26px
}

.u-p27 {
    padding: 27px
}

.u-p28 {
    padding: 28px
}

.u-p29 {
    padding: 29px
}

.u-p30 {
    padding: 30px
}

.u-p31 {
    padding: 31px
}

.u-p32 {
    padding: 32px
}

.u-p33 {
    padding: 33px
}

.u-p34 {
    padding: 34px
}

.u-p35 {
    padding: 35px
}

.u-p36 {
    padding: 36px
}

.u-p37 {
    padding: 37px
}

.u-p38 {
    padding: 38px
}

.u-p39 {
    padding: 39px
}

.u-p40 {
    padding: 40px
}

.u-pt10 {
    padding-top: 10px
}

.u-pt11 {
    padding-top: 11px
}

.u-pt12 {
    padding-top: 12px
}

.u-pt13 {
    padding-top: 13px
}

.u-pt14 {
    padding-top: 14px
}

.u-pt15 {
    padding-top: 15px
}

.u-pt16 {
    padding-top: 16px
}

.u-pt17 {
    padding-top: 17px
}

.u-pt18 {
    padding-top: 18px
}

.u-pt19 {
    padding-top: 19px
}

.u-pt20 {
    padding-top: 20px
}

.u-pt21 {
    padding-top: 21px
}

.u-pt22 {
    padding-top: 22px
}

.u-pt23 {
    padding-top: 23px
}

.u-pt24 {
    padding-top: 24px
}

.u-pt25 {
    padding-top: 25px
}

.u-pt26 {
    padding-top: 26px
}

.u-pt27 {
    padding-top: 27px
}

.u-pt28 {
    padding-top: 28px
}

.u-pt29 {
    padding-top: 29px
}

.u-pt30 {
    padding-top: 30px
}

.u-pt31 {
    padding-top: 31px
}

.u-pt32 {
    padding-top: 32px
}

.u-pt33 {
    padding-top: 33px
}

.u-pt34 {
    padding-top: 34px
}

.u-pt35 {
    padding-top: 35px
}

.u-pt36 {
    padding-top: 36px
}

.u-pt37 {
    padding-top: 37px
}

.u-pt38 {
    padding-top: 38px
}

.u-pt39 {
    padding-top: 39px
}

.u-pt40 {
    padding-top: 40px
}

.u-pr10 {
    padding-right: 10px
}

.u-pr11 {
    padding-right: 11px
}

.u-pr12 {
    padding-right: 12px
}

.u-pr13 {
    padding-right: 13px
}

.u-pr14 {
    padding-right: 14px
}

.u-pr15 {
    padding-right: 15px
}

.u-pr16 {
    padding-right: 16px
}

.u-pr17 {
    padding-right: 17px
}

.u-pr18 {
    padding-right: 18px
}

.u-pr19 {
    padding-right: 19px
}

.u-pr20 {
    padding-right: 20px
}

.u-pr21 {
    padding-right: 21px
}

.u-pr22 {
    padding-right: 22px
}

.u-pr23 {
    padding-right: 23px
}

.u-pr24 {
    padding-right: 24px
}

.u-pr25 {
    padding-right: 25px
}

.u-pr26 {
    padding-right: 26px
}

.u-pr27 {
    padding-right: 27px
}

.u-pr28 {
    padding-right: 28px
}

.u-pr29 {
    padding-right: 29px
}

.u-pr30 {
    padding-right: 30px
}

.u-pr31 {
    padding-right: 31px
}

.u-pr32 {
    padding-right: 32px
}

.u-pr33 {
    padding-right: 33px
}

.u-pr34 {
    padding-right: 34px
}

.u-pr35 {
    padding-right: 35px
}

.u-pr36 {
    padding-right: 36px
}

.u-pr37 {
    padding-right: 37px
}

.u-pr38 {
    padding-right: 38px
}

.u-pr39 {
    padding-right: 39px
}

.u-pr40 {
    padding-right: 40px
}

.u-pb10 {
    padding-bottom: 10px
}

.u-pb11 {
    padding-bottom: 11px
}

.u-pb12 {
    padding-bottom: 12px
}

.u-pb13 {
    padding-bottom: 13px
}

.u-pb14 {
    padding-bottom: 14px
}

.u-pb15 {
    padding-bottom: 15px
}

.u-pb16 {
    padding-bottom: 16px
}

.u-pb17 {
    padding-bottom: 17px
}

.u-pb18 {
    padding-bottom: 18px
}

.u-pb19 {
    padding-bottom: 19px
}

.u-pb20 {
    padding-bottom: 20px
}

.u-pb21 {
    padding-bottom: 21px
}

.u-pb22 {
    padding-bottom: 22px
}

.u-pb23 {
    padding-bottom: 23px
}

.u-pb24 {
    padding-bottom: 24px
}

.u-pb25 {
    padding-bottom: 25px
}

.u-pb26 {
    padding-bottom: 26px
}

.u-pb27 {
    padding-bottom: 27px
}

.u-pb28 {
    padding-bottom: 28px
}

.u-pb29 {
    padding-bottom: 29px
}

.u-pb30 {
    padding-bottom: 30px
}

.u-pb31 {
    padding-bottom: 31px
}

.u-pb32 {
    padding-bottom: 32px
}

.u-pb33 {
    padding-bottom: 33px
}

.u-pb34 {
    padding-bottom: 34px
}

.u-pb35 {
    padding-bottom: 35px
}

.u-pb36 {
    padding-bottom: 36px
}

.u-pb37 {
    padding-bottom: 37px
}

.u-pb38 {
    padding-bottom: 38px
}

.u-pb39 {
    padding-bottom: 39px
}

.u-pb40 {
    padding-bottom: 40px
}

.u-pl10 {
    padding-left: 10px
}

.u-pl11 {
    padding-left: 11px
}

.u-pl12 {
    padding-left: 12px
}

.u-pl13 {
    padding-left: 13px
}

.u-pl14 {
    padding-left: 14px
}

.u-pl15 {
    padding-left: 15px
}

.u-pl16 {
    padding-left: 16px
}

.u-pl17 {
    padding-left: 17px
}

.u-pl18 {
    padding-left: 18px
}

.u-pl19 {
    padding-left: 19px
}

.u-pl20 {
    padding-left: 20px
}

.u-pl21 {
    padding-left: 21px
}

.u-pl22 {
    padding-left: 22px
}

.u-pl23 {
    padding-left: 23px
}

.u-pl24 {
    padding-left: 24px
}

.u-pl25 {
    padding-left: 25px
}

.u-pl26 {
    padding-left: 26px
}

.u-pl27 {
    padding-left: 27px
}

.u-pl28 {
    padding-left: 28px
}

.u-pl29 {
    padding-left: 29px
}

.u-pl30 {
    padding-left: 30px
}

.u-pl31 {
    padding-left: 31px
}

.u-pl32 {
    padding-left: 32px
}

.u-pl33 {
    padding-left: 33px
}

.u-pl34 {
    padding-left: 34px
}

.u-pl35 {
    padding-left: 35px
}

.u-pl36 {
    padding-left: 36px
}

.u-pl37 {
    padding-left: 37px
}

.u-pl38 {
    padding-left: 38px
}

.u-pl39 {
    padding-left: 39px
}

.u-pl40 {
    padding-left: 40px
}

.u-w10p {
    width: 10% !important
}

.u-w20p {
    width: 20% !important
}

.u-w30p {
    width: 30% !important
}

.u-w40p {
    width: 40% !important
}

.u-w50p {
    width: 50% !important
}

.u-w60p {
    width: 60% !important
}

.u-w70p {
    width: 70% !important
}

.u-w80p {
    width: 80% !important
}

.u-w90p {
    width: 90% !important
}

.u-w100p {
    width: 100% !important
}

.hero {
    position: relative;
    height: inherit;
    background: #fdefe2 url(../image/index_visual_bg.png) no-repeat;
    background-position: center -20px;
    background-size: cover
}

@media screen and (min-width:1460px) and (max-width:1599px) {
    .hero {
        background-position: center -20px;
        background-size: cover
    }
}

@media screen and (min-height:760px) and (max-width:1599px) {
    .hero {
        background-position: center -20px;
        background-size: cover
    }
}

@media screen and (min-height:1160px) and (min-width:1600px) {
    .hero {
        background-position: center -20px;
        background-size: cover
    }
}

@media screen and (min-height:1160px) and (min-width:2300px) {
    .hero {
        background-position: center -20px;
        background-size: 90%
    }
}

@media screen and (max-width:768px) {
    .hero {
        background-position: center 160px;
        background-size: 140%
    }
}

@media screen and (max-width:414px) {
    .hero {
        background: url(../images/index_visual_bg_sp.png) no-repeat;
        background-position: center center;
        background-size: 64%
    }
}

.hero__scroll {
    position: absolute;
    bottom: 10vh;
    left: 50px;
    margin: auto;
    text-align: center
}

@media screen and (max-width:414px) {
    .hero__scroll {
        position: absolute;
        right: 0;
        bottom: 2vh;
        left: 3vh
    }
}

.hero__langSwitch {
    position: absolute;
    top: 10vh;
    right: 10vh;
    bottom: 0;
    height: 40px;
    background: rgba(253, 239, 226, .6)
}

@media screen and (min-width:1920px) {
    .hero__langSwitch {
        position: absolute;
        top: 10vh;
        right: 28%;
        bottom: 0
    }
}

@media screen and (max-width:414px) {
    .hero__langSwitch {
        position: absolute;
        top: 10px;
        right: 10px;
        bottom: 0
    }
}

@media screen and (max-width:414px) {
    .hero__title {
        position: absolute;
        top: -20vh;
        right: 0;
        bottom: 0;
        left: 0;
        width: 85%;
        height: 250px;
        margin: auto
    }

    .hero__title img {
        width: 100%
    }

    .hero__title .below {
        display: block;
        width: 80%;
        margin: 20px auto 0
    }
}

.indexScrollDown {
    position: fixed;
    bottom: -20px;
    left: 10px
}

.indexScrollDown a {
    display: block;
    width: 55px;
    color: #161616;
    text-decoration: none
}

.indexScrollDown a:hover,
.indexScrollDown a:focus {
    text-decoration: none
}

.indexScrollDown a img {
    width: 100%
}

.indexIntro__inner {
    padding: 0 160px
}

@media screen and (max-width:768px) {
    .indexIntro__inner {
        padding: 0 70px
    }
}

@media screen and (max-width:414px) {
    .indexIntro__inner {
        padding: 3% 3% 0
    }
}

.indexIntro__txt {
    margin-bottom: 100px
}

@media screen and (max-width:414px) {
    .indexIntro__txt {
        margin-bottom: 50px
    }
}

.indexIntro__txt>img {
    width: 100%
}

@media screen and (max-width:414px) {
    .indexIntro__txt>img {
        width: 110%;
        max-width: 110%
    }
}

.wantedIntro {
    margin: 0 auto 80px
}

.wantedIntro__img {
    width: 742px;
    margin: 40px auto 0
}

@media screen and (max-width:414px) {
    .wantedIntro__img {
        padding: 0 3%
    }
}

.wantedIntro .c-lower__heading {
    width: 74px
}

.businessIntro {
    margin: 0 auto 80px
}

.businessIntro__img {
    width: 742px;
    margin: 40px auto 0
}

.businessVision {
    position: relative
}

@media screen and (max-width:768px) {
    .businessVision {
        overflow: hidden
    }
}

.businessVision__title {
    margin: 0 auto
}

.businessVision__description {
    width: 680px;
    margin: 80px auto 0
}

@media screen and (max-width:414px) {
    .businessVision__description {
        width: 100%;
        padding: 0 3%;
        text-align: justify
    }
}

.businessVision--01 .heading {
    width: 184px
}

.businessVision--01 .figure {
    display: table;
    height: 200px;
    margin: 40px auto 0;
    padding-left: 80px;
}

@media screen and (max-width:768px) {
    .businessVision--01 .figure {
        padding-left: 0
    }
}

@media screen and (max-width:414px) {
    .businessVision--01 .figure {
        display: none
    }
}

.businessVision--01 .figure .figcaption {
    display: table-cell;
    width: 170px;
    vertical-align: middle
}

.businessVision--01 .figure .figcaption h3 {
    font-size: 15px
}

.businessVision--01 .figure .figcaption p {
    font-size: 12px;
    line-height: 1.3
}

.businessVision--01 .figure .figbody {
    display: table-cell;
    padding-left: 105px;
    vertical-align: middle;
    background: url(../image/business_vision_01_figure_bg.png) no-repeat 15px center;
    background-size: 100px 177px
}

.businessVision--01 .figure .figbody dt {
    float: left;
    width: 150px;
    padding: 24px 18px;
    font-size: 15px;
    clear: both
}

.businessVision--01 .figure .figbody dd {
    float: left;
    width: 340px;
    padding: 23px 0 0;
    font-size: 12px;
    line-height: 1.3
}

@media screen and (max-width:768px) {
    .businessVision--01 .figure .figbody dd {
        width: 260px
    }
}

.businessVision--01 .figure--sp {
    width: 220px;
    margin: 40px auto 20px
}

.businessVision--02 {
    padding-top: 210px
}

@media screen and (max-width:768px) {
    .businessVision--02 {
        padding-top: 110px
    }
}

.businessVision--02 .heading {
    width: 151px
}

.businessVision--02 .figure {
    display: table;
    margin: 10px auto 0
}

.businessVision--02 .figure .client,
.businessVision--02 .figure .director {
    width: 266px
}

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

    .businessVision--02 .figure .client,
    .businessVision--02 .figure .director {
        width: 206px
    }
}

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

    .businessVision--02 .figure .client,
    .businessVision--02 .figure .director {
        width: 190px
    }
}

.businessVision--02 .figure .director {
    position: relative;
    margin-left: -114px
}

@media screen and (max-width:414px) {
    .businessVision--02 .figure .director {
        margin-left: -89px
    }
}

.businessVision--02 .figure dt,
.businessVision--02 .figure dd {
    display: table-cell;
    vertical-align: middle
}

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

    .businessVision--02 .figure dt,
    .businessVision--02 .figure dd {
        display: block
    }
}

.businessVision--02 .figure dt {
    position: relative;
    width: 440px
}

@media screen and (max-width:414px) {
    .businessVision--02 .figure dt {
        display: table;
        margin: auto;
        width: auto
    }
}

.businessVision--02 .figure dd {
    width: 241px
}

@media screen and (max-width:414px) {
    .businessVision--02 .figure dd {
        width: 60%;
        margin: auto
    }
}

.businessVision--03 {
    padding-top: 210px
}

@media screen and (max-width:768px) {
    .businessVision--03 {
        padding-top: 110px
    }
}

.businessVision--03 .heading {
    width: 213px
}

.performance {
    width: 1200px;
    margin: 75px auto
}

@media only screen and (min-device-width:1024px) and (max-width:1366px) {
    .performance {
        width: 100%
    }
}

@media screen and (max-width:768px) {
    .performance {
        width: 100%
    }
}

@media screen and (max-width:414px) {
    .performance {
        width: 100%;
        margin: 75px auto 0
    }
}

.performance__list li {
    float: left;
    width: 50%;
    height: 400px
}

@media only screen and (min-device-width:1024px) and (max-width:1366px) {
    .performance__list li {
        height: 340px
    }
}

@media screen and (max-width:768px) {
    .performance__list li {
        height: 256px
    }
}

@media screen and (max-width:414px) {
    .performance__list li {
        width: 100%;
        height: initial
    }
}

.performance__list li a {
    display: block
}

.performanceFigure {
    overflow: hidden;
    position: relative;
    background: #fdefe2
}

.performanceFigure:hover .figcaption {
    position: absolute;
    right: 0;
    bottom: 30px;
    left: 0
}

.performanceFigure:hover img {
    margin: auto
}

.performanceFigure .figcaption {
    display: inline-block;
    position: absolute;
    right: 0;
    bottom: 30px;
    left: -920px;
    z-index: 2;
    transition: .3s
}

@media screen and (max-width:768px) {
    .performanceFigure .figcaption {
        position: absolute;
        right: 0;
        bottom: 30px;
        left: 0
    }
}

@media only screen and (min-device-width:768px) and (max-width:1024px) and (orientation:landscape) {
    .performanceFigure .figcaption {
        position: absolute;
        right: 0;
        bottom: 30px;
        left: 0
    }
}

.performanceFigure .figcaption h3,
.performanceFigure .figcaption p {
    display: table;
    padding: 0 10px;
    background: #111;
    color: #FFF;
    font-size: 12px;
    line-height: 1.7
}

.performanceFigure .figcaption h3 {
    margin-bottom: 5px
}

.performanceFigure img {
    width: 600px
}

@media screen and (max-width:414px) {
    .performanceFigure img {
        width: 100%;
        height: initial;
        vertical-align: top
    }
}

.businessInvestment {
    margin: 120px auto
}

.businessInvestment__intro {
    width: 260px;
    margin: 75px auto 0
}

.businessInvestment__title {
    float: right;
    display: inline-block;
    width: 23px;
    margin-right: 13px
}

.businessInvestment__description {
    float: left;
    position: relative;
    right: 10px;
    margin-right: 10px;
    -webkit-writing-mode: tb-rl;
    writing-mode: tb-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -o-writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    font-size: 14px;
    line-height: 1.9
}

.businessInvestment__img {
    width: 260px;
    margin: 20px auto 0
}

.cultureIntro {
    margin: 0 auto 140px
}

.cultureIntro__img {
    width: 742px;
    margin: 40px auto 0
}

@media screen and (max-width:414px) {
    .cultureIntro__title {
        position: relative;
        width: 100%
    }
}

@media screen and (max-width:768px) {
    .cultureKeyword .l-contents {
        padding: 0 100px
    }
}

@media screen and (max-width:414px) {
    .cultureKeyword .l-contents {
        padding: 0
    }
}

@media screen and (max-width:414px) {
    .cultureKeyword .l-row-eq-height {
        padding: 0 3%
    }
}

.cultureKeyword__item {
    margin-bottom: 100px
}

@media screen and (max-width:414px) {
    .cultureKeyword__item {
        margin: 0 -15px 100px
    }
}

.keywordFigure h3 {
    min-height: 160px
}

.keywordFigure p {
    margin: 20px auto 0;
    font-size: 14px;
    line-height: 1.8;
    text-align: justify
}

.keywordFigure__img {
    position: relative;
    height: 300px
}

.keywordFigure__img img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto
}

.keywordFigure__img.box--01 {
    height: 280px
}

.keywordFigure small {
    display: block;
    margin: 10px auto;
    color: #727171;
    font-size: 11px;
    line-height: 1.8
}

.drawer-trigger {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 37px;
    margin: 8px 0;
    background: transparent;
    transition: all .4s;
    box-sizing: border-box;
    -webkit-appearance: none;
    border-radius: 0;
    border: none;
    border-image-width: 0
}

.drawer-trigger span {
    display: inline-block;
    position: absolute;
    right: 0;
    left: 0;
    width: 60%;
    height: 3px;
    margin: auto;
    background-color: #161616;
    border-radius: 6px;
    transition: all .4s;
    box-sizing: border-box
}

.drawer-trigger span:nth-of-type(1) {
    top: 4px
}

.drawer-trigger span:nth-of-type(2) {
    top: 11px
}

.drawer-trigger span:nth-of-type(3) {
    top: 18px
}

.drawer-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(20px) rotate(-45deg);
    -ms-transform: translateY(20px) rotate(-45deg);
    transform: translateY(20px) rotate(-45deg);
    top: -11px
}

.drawer-trigger.active span:nth-of-type(2) {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"
}

.drawer-trigger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-20px) rotate(45deg);
    -ms-transform: translateY(-20px) rotate(45deg);
    transform: translateY(-20px) rotate(45deg);
    top: 28px
}

.drawer-text {
    padding-top: 24px;
    font-weight: 700;
    font-size: 8px;
    color: #161616;
    letter-spacing: .6px;
    margin-left: -3px
}

button {
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    background: transparent
}

.globalnav_btn {
    position: fixed;
    top: 10px;
    right: 10px;
    z-index: 999
}

.spnav {
    overflow: hidden;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 998;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    visibility: hidden;
    transition: all .2s cubic-bezier(.7, .165, .035, 1)
}

.spnav_list {
    display: table;
    width: 100%;
    padding: 3% 10% 7%;
    vertical-align: top;
    text-align: center
}

@media screen and (max-width:320px) {
    .spnav_list {
        padding: 3% 10% 0
    }
}

.spnav_list>li {
    float: none;
    width: auto;
    transition: all .4s cubic-bezier(.7, .165, .035, 1);
    -ms-transform: scale(.8, .8);
    -webkit-transform: scale(.8, .8);
    transform: scale(.8, .8);
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"
}

.spnav_list>li>a {
    display: block;
    padding: 13px 0;
    background-image: none;
    height: auto;
    text-decoration: none;
    color: #000;
    line-height: 1;
    letter-spacing: 5px;
    text-transform: uppercase;
    vertical-align: middle
}

.spnav_list>li>a img {
    height: 32px
}

.spnav_list>li:first-child {
    margin-bottom: 40px
}

@media screen and (max-width:320px) {
    .spnav_list>li:first-child {
        margin-bottom: 30px
    }
}

.spnav_list>li:first-child img {
    height: 16px
}

.spnav_list>li:last-child {
    margin-bottom: 0
}

.spnav_list>li:last-child img {
    height: 45px
}

.spnav_list--sns {
    display: table;
    margin: auto
}

.spnav_list--sns li {
    display: inline-block
}

.spnav_list--sns li a {
    display: block;
    padding: 25px
}

.spnav_list--sns i>img {
    height: 20px
}

.spnav_inner {
    display: table;
    width: 100%;
    height: 100%
}

.spnav-show .spnav {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    visibility: visible
}

.spnav .spnav_list li:nth-child(1) {
    transition-delay: .05s
}

.spnav .spnav_list li:nth-child(2) {
    transition-delay: .1s
}

.spnav .spnav_list li:nth-child(3) {
    transition-delay: .15s
}

.spnav .spnav_list li:nth-child(4) {
    transition-delay: .2s
}

.spnav .spnav_list li:nth-child(5) {
    transition-delay: .25s
}

.spnav .spnav_list li:nth-child(6) {
    transition-delay: .3s
}

.spnav .spnav_list li:nth-child(7) {
    transition-delay: .35s
}

.spnav .spnav_list li:nth-child(8) {
    transition-delay: .4s
}

.spnav .spnav_list li.border {
    position: relative;
    margin-top: 15px
}

.spnav-show .spnav .spnav_list li {
    -ms-transform: scale(1, 1);
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
}

.spnav-show .spnav .spnav_list li a {
    font-weight: 700
}

.landscape .spnav-show .spnav .spnav_list li a {
    padding: 1% 0
}

.overlay {
    background-color: rgba(255, 255, 255, .98);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 101;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transition: all 1s cubic-bezier(.7, .165, .035, 1);
    visibility: hidden
}

.spnav-show .overlay {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    visibility: visible
}

.sidebar {
    background: #f08623
}

@media screen and (max-width:414px) {
    .sidebar--lower {
        padding-top: 57px
    }
}

@media screen and (max-width:414px) {
    .sidebar__head {
        width: 100%;
        height: 56px;
        background: #fdefe2;
        border-bottom: 1px solid rgba(255, 255, 255, .6)
    }
}

@media screen and (max-width:414px) {
    .sidebar__logo {
        display: block;
        width: 120px;
        margin: auto;
        padding: 12px 0 0
    }
}

.sidebar__logo img {
    width: 100%
}

.sidebar__title {
    padding: 4px 14px 3px;
    background: #eb6687;
    color: #fdefe2;
    font-weight: 700;
    font-size: 16px
}

.sidebar__icon {
    position: relative;
    top: 2px;
    display: inline-block;
    width: 12px;
    margin-right: 4px
}

.sidebar__list {
    background: #fdefe2
}

.sidebar__list i {
    display: inline-block;
    margin-right: 3px;
    padding: 3px;
    border-radius: 2px;
    border: 1px solid #FFF;
    color: #FFF;
    opacity: .8;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"
}

.sidebar__list i:before {
    display: inline-block;
    width: 13px;
    text-align: center
}

.sidebar__list li {
    position: relative;
    border-bottom: 1px solid rgba(255, 255, 255, .8)
}

.sidebar__list li:last-child {
    border-bottom: 0
}

.sidebar__list li:after {
    font-family: FontAwesome;
    content: "\f105";
    position: absolute;
    top: 50%;
    right: 10px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #FFF;
    font-weight: 700
}

.sidebar__list li a {
    display: block;
    padding: 6% 4%;
    font-weight: 700;
    color: #FFF;
    text-decoration: none
}

.p-hover-border a {
    position: relative;
    transition: all .3s
}

.p-hover-border a:before {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background: #333;
    content: "";
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transition: all .3s
}

.p-hover-border a:before {
    top: 0;
    -webkit-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    transform: translateY(-10px)
}

.p-hover-border a:hover:before {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.show-in {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateY(15px);
    -ms-transform: translateY(15px);
    transform: translateY(15px);
    transition: opacity 2s cubic-bezier(.19, 1, .22, 1), -webkit-transform 2s cubic-bezier(.19, 1, .22, 1);
    transition: opacity 2s cubic-bezier(.19, 1, .22, 1), transform 2s cubic-bezier(.19, 1, .22, 1);
    transition: opacity 2s cubic-bezier(.19, 1, .22, 1), -webkit-transform 2s cubic-bezier(.19, 1, .22, 1), -webkit-transform 2s cubic-bezier(.19, 1, .22, 1);
    transition: opacity 2s cubic-bezier(.19, 1, .22, 1), transform 2s cubic-bezier(.19, 1, .22, 1), -webkit-transform 2s cubic-bezier(.19, 1, .22, 1)
}

.show-in.is-show {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.is-animate {
    -webkit-animation: fill_animate .7s ease-out;
    animation: fill_animate .7s ease-out;
    -webkit-animation-delay: .1s;
    animation-delay: .1s
}

@-webkit-keyframes stroke_animate {
    0% {
        stroke-dashoffset: 50
    }

    50% {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
    }

    100% {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        stroke-dashoffset: 0
    }
}

@keyframes stroke_animate {
    0% {
        stroke-dashoffset: 50
    }

    50% {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
    }

    100% {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        stroke-dashoffset: 0
    }
}

@-webkit-keyframes fill_animate {
    0% {
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"
    }

    100% {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
    }
}

@keyframes fill_animate {
    0% {
        opacity: 0;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"
    }

    100% {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
    }
}

.indexScrollDown {
    transition: opacity 2s cubic-bezier(.19, 1, .22, 1), -webkit-transform 2s cubic-bezier(.19, 1, .22, 1);
    transition: opacity 2s cubic-bezier(.19, 1, .22, 1), transform 2s cubic-bezier(.19, 1, .22, 1);
    transition: opacity 2s cubic-bezier(.19, 1, .22, 1), -webkit-transform 2s cubic-bezier(.19, 1, .22, 1), -webkit-transform 2s cubic-bezier(.19, 1, .22, 1);
    transition: opacity 2s cubic-bezier(.19, 1, .22, 1), transform 2s cubic-bezier(.19, 1, .22, 1), -webkit-transform 2s cubic-bezier(.19, 1, .22, 1)
}

.indexScrollDown.is-scroll {
    -webkit-transform: translate(-60px, 60px);
    -ms-transform: translate(-60px, 60px);
    transform: translate(-60px, 60px);
    transition: opacity 2s cubic-bezier(.19, 1, .22, 1), -webkit-transform 2s cubic-bezier(.19, 1, .22, 1);
    transition: opacity 2s cubic-bezier(.19, 1, .22, 1), transform 2s cubic-bezier(.19, 1, .22, 1);
    transition: opacity 2s cubic-bezier(.19, 1, .22, 1), -webkit-transform 2s cubic-bezier(.19, 1, .22, 1), -webkit-transform 2s cubic-bezier(.19, 1, .22, 1);
    transition: opacity 2s cubic-bezier(.19, 1, .22, 1), transform 2s cubic-bezier(.19, 1, .22, 1), -webkit-transform 2s cubic-bezier(.19, 1, .22, 1)
}

.dropWaveBox {
    position: relative;
    z-index: -1;
    width: 1024px;
    margin: auto
}

@media screen and (max-width:768px) {
    .dropWaveBox {
        width: 100%
    }
}

.waveWrap--1 {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 58px;
    margin: auto
}

@media screen and (max-width:414px) {
    .waveWrap--1 {
        position: absolute;
        top: -350px;
        right: 0;
        bottom: 0;
        left: 0
    }
}

.waveWrap--2 {
    position: absolute;
    top: -755px;
    right: 0;
    left: 0
}

@media screen and (max-width:414px) {
    .waveWrap--2 {
        position: absolute;
        top: -880px;
        right: 0;
        bottom: 0;
        left: 0
    }
}

.drop {
    display: block;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    width: 58px;
    position: absolute;
    top: -600px;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    z-index: -1
}

.wave--1 {
    position: relative;
    width: 1024px;
    height: 1024px;
    margin: auto
}

@media screen and (max-width:768px) {
    .wave--1 {
        width: 768px
    }
}

@media screen and (max-width:414px) {
    .wave--1 {
        width: 100%
    }
}

.wave--2 {
    position: absolute;
    top: 0;
    right: 0;
    width: 860px;
    height: 860px;
    margin: auto
}

@media screen and (max-width:768px) {
    .wave--2 {
        width: 668px
    }
}

.wave--3 {
    position: relative;
    top: -420px;
    left: -340px;
    width: 500px;
    height: 500px;
    margin: auto
}

@media screen and (max-width:414px) {
    .wave--3 {
        left: -140px
    }
}

.wave--4 {
    position: relative;
    top: -260px;
    left: -250px;
    width: 500px;
    height: 500px;
    margin: auto
}

@media screen and (max-width:414px) {
    .wave--4 {
        top: -60px;
        left: -40px
    }
}

.circle--1 {
    z-index: 9999;
    border-radius: 50%;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    position: absolute;
    top: 50%;
    right: 0;
    bottom: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%)
}

.circle--1.signal1 {
    border: 8px solid #FFF;
    width: 1600px;
    height: 1600px;
    margin-top: -800px;
    margin-left: -800px
}

.circle--1.signal2 {
    border: 3px solid #FFF;
    width: 1200px;
    height: 1200px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    margin-top: -600px;
    margin-left: -600px
}

.circle--1.signal3 {
    border: 12px solid #FFF;
    width: 700px;
    height: 700px;
    margin-top: -350px;
    margin-left: -350px
}

.circle--1.signal4 {
    border: 2px solid #FFF;
    width: 500px;
    height: 500px;
    margin-top: -250px;
    margin-left: -250px
}

.circle--1.signal5 {
    border: 2px solid #FFF;
    width: 200px;
    height: 200px;
    margin-top: -100px;
    margin-left: -100px
}

.circle--1.signal6 {
    border: 5px solid #FFF;
    width: 100px;
    height: 100px;
    margin-top: -50px;
    margin-left: -50px
}

.circle--2 {
    z-index: 9999;
    border-radius: 50%;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    position: absolute;
    top: 40%;
    right: 0;
    bottom: 0;
    left: 70%;
    -webkit-transform: translate(-50%, -50%)
}

.circle--2.signal1 {
    border: 6px solid #FFF;
    width: 1400px;
    height: 1400px;
    margin-top: -700px;
    margin-left: -700px
}

.circle--2.signal2 {
    border: 3px solid #FFF;
    width: 1000px;
    height: 1000px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    margin-top: -500px;
    margin-left: -500px
}

.circle--2.signal3 {
    border: 8px solid #FFF;
    width: 500px;
    height: 500px;
    margin-top: -250px;
    margin-left: -250px
}

.circle--2.signal4 {
    border: 2px solid #FFF;
    width: 350px;
    height: 350px;
    margin-top: -175px;
    margin-left: -175px
}

.circle--2.signal5 {
    border: 1px solid #FFF;
    width: 200px;
    height: 200px;
    margin-top: -100px;
    margin-left: -100px
}

.circle--2.signal6 {
    border: 5px solid #FFF;
    width: 70px;
    height: 70px;
    margin-top: -35px;
    margin-left: -35px
}

.circle--3 {
    z-index: 9999;
    border-radius: 50%;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    position: absolute;
    top: 90%;
    right: 0;
    bottom: 0;
    left: 30%;
    -webkit-transform: translate(-50%, -50%)
}

.circle--3.signal1 {
    border: 6px solid #FFF;
    width: 900px;
    height: 900px;
    margin-top: -450px;
    margin-left: -450px
}

.circle--3.signal2 {
    border: 3px solid #FFF;
    width: 700px;
    height: 700px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    margin-top: -350px;
    margin-left: -350px
}

.circle--3.signal3 {
    border: 8px solid #FFF;
    width: 300px;
    height: 300px;
    margin-top: -150px;
    margin-left: -150px
}

.circle--3.signal4 {
    border: 2px solid #FFF;
    width: 150px;
    height: 150px;
    margin-top: -75px;
    margin-left: -75px
}

.circle--3.signal5 {
    border: 1px solid #FFF;
    width: 200px;
    height: 200px;
    margin-top: -100px;
    margin-left: -100px
}

.circle--3.signal6 {
    border: 5px solid #FFF;
    width: 70px;
    height: 70px;
    margin-top: -35px;
    margin-left: -35px
}

.circle--4 {
    z-index: 9999;
    border-radius: 50%;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    position: absolute;
    top: 90%;
    right: 0;
    bottom: 0;
    left: 30%;
    -webkit-transform: translate(-50%, -50%)
}

.circle--4.signal1 {
    border: 6px solid #FFF;
    width: 500px;
    height: 500px;
    margin-top: -250px;
    margin-left: -250px
}

.circle--4.signal2 {
    border: 3px solid #FFF;
    width: 350px;
    height: 350px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    margin-top: -175px;
    margin-left: -175px
}

.circle--4.signal3 {
    border: 8px solid #FFF;
    width: 150px;
    height: 150px;
    margin-top: -75px;
    margin-left: -75px
}

.circle--4.signal4 {
    border: 2px solid #FFF;
    width: 80px;
    height: 80px;
    margin-top: -40px;
    margin-left: -40px
}

.circle--4.signal5 {
    border: 1px solid #FFF;
    width: 40px;
    height: 40px;
    margin-top: -20px;
    margin-left: -20px
}

.circle--4.signal6 {
    border: 5px solid #FFF;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    margin-left: -10px
}
#main .hp.fadeInUp.clearfix.pubPd{
    color: #000
}
.busLeft.pubPd{
    color: #000
}
#main .more{
    color: #000
}
.banTip{
    color: #fff
}