@charset 'UTF-8';
/*
SCSS SMACSS BEM
*/
/* Tools */
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
@import url('https://fonts.googleapis.com/css2?family=Muli&display=swap');
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
{
    font: inherit;
    font-size: 100%;

    margin: 0;
    padding: 0;

    vertical-align: baseline; 

    border: 0;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
main
{
    display: block;
}

body
{
    line-height: 1;
}

ol,
ul
{
    list-style: none;
}

blockquote,
q
{
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after
{
    content: '';
    content: none;
}

table
{
    border-spacing: 0; 
    border-collapse: collapse;
}

.bold
{
    font-weight: bold;
}

.text-align-center
{
    text-align: center;
}

.text-align-right
{
    text-align: right;
}

.clearfix:before,
.clearfix:after
{
    display: table; 

    content: '';
}

.clearfix:after
{
    clear: both;
}

.clear
{
    clear: both;
}

/* show only  SP/PC
-------------------------------*/
.hidden-lgview
{
    display: none !important;
}

.hidden-smview
{
    display: block !important;
}

@media screen and (max-width: 767px)
{
    .hidden-lgview
    {
        display: block !important;
    }
    .hidden-smview
    {
        display: none !important;
    }
}

/* font
-------------------------------*/
.bold
{
    font-weight: bold;
}

/* margin
-------------------------------*/
/* padding
-------------------------------*/
/*
  MAIN:general
--------------------------------------------- */
html
{
    font-size: 62.5%;
}

body
{
    font-family: '游ゴシック', YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-size: 1.6em;

    min-width: 980px;
    margin: 0 auto;

    vertical-align: top;
    word-wrap: break-word;

    color: #000;
    background: #fff;

    line-break: strict;
    -webkit-font-smoothing: antialiased;
    font-feature-settings: 'palt';
}

@media screen and (max-width: 767px)
{
    body
    {
        font-size: 1.4em;

        min-width: 100%;
    }
}

*,
*:before,
*:after
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

a
{
    color: #000;
}

a:hover
{
    text-decoration: underline;
}

img
{
    width: auto;
    max-width: 100%;
    height: auto;

    vertical-align: bottom;

    border: 0;
}

@media screen and (max-width: 767px)
{
    img
    {
        width: 100%;
        height: auto;
    }
}

input[type=submit]
{
    cursor: pointer;
}

@-ms-viewport
{
    width: auto !important;
}

:root
{
    -ms-overflow-style: scrollbar;
}

@font-face
{
    font-family: 'Muli', sans-serif;
}

body.fixed
{
    position: fixed;

    width: 100%;
}

/* Layout */
.l-header
{
    position: relative;

    width: 100%;
    height: 76px;
    margin: 0 auto;
}

.l-main
{
    position: relative; 

    padding-top: 77px;
}

.l-content
{
    width: 980px;
    margin: 0 auto;
    padding: 0 20px;
}

.l-content-inner
{
    width: 860px;
    margin: 0 auto;
}

.l-section
{
    margin-bottom: 90px;
}

.l-footer
{
    position: relative;

    width: 980px;
    height: 76px;
    margin: 0 auto; 
    padding: 0 20px;
}

@media screen and (max-width: 767px)
{
    .l-header
    {
        width: 100%;
        height: 61px;
    }
    .l-main
    {
        position: relative; 

        padding-top: 61px;
    }
    .l-content
    {
        width: 100%;
        margin: 0 auto;
        padding: 0 15px;
    }
    .l-content-inner
    {
        width: 100%;
        margin: 0 auto;
    }
    .l-section
    {
        margin-bottom: calc(100 / 750 * 100vw);
    }
    .l-footer
    {
        position: relative;

        width: 100%;
        height: 76px;
        margin: 0 auto; 
        padding: 0 15px;
    }
}

/* Module */
.header
{
    position: fixed;
    z-index: 9998; 
    top: 0;
    left: 0;

    width: 100%;

    border-bottom: 1px solid #f5f5f5;
    background-color: #fff;
}
.header__inner
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.header__logo
{
    width: 300px; 
    margin: 29px 20px 0;
}

@media screen and (max-width: 767px)
{
    .header__logo
    {
        width: 200px; 
        margin: 23px calc(30 / 750 * 100vw) 0;
    }
}

.utility__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 15px; 
    margin-right: 90px;
}

.utility__item
{
    margin-left: 10px;
}
.utility__item:first-of-type
{
    margin-left: 0;
}

.utility__link
{
    font-size: 1.4rem;
    font-weight: bold;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    height: 45px;
    padding: 0 19px;

    -webkit-transition: all .5s;
            transition: all .5s; 
    text-align: center;
    text-decoration: none;

    color: #7e6f54;
    border: 1px solid #7e6f54;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.utility__link:hover
{
    text-decoration: none;

    color: #fff; 
    border: 1px solid #e5002c;
    background-color: #e5002c;
}
.utility__link:hover::after
{
    display: inline-block;

    width: 6px;
    height: 9px;
    margin-left: 14px; 

    content: '';

    background: url('/recruit/resources/img/common/icon_arrow_white_s.png') 0 0 no-repeat;
    background-size: contain;
}
.utility__link::after
{
    display: inline-block;

    width: 6px;
    height: 9px;
    margin-left: 14px; 

    content: '';

    background: url('/recruit/resources/img/common/icon_arrow_red_s.png') 0 0 no-repeat;
    background-size: contain;
}

.nav-button__wrap
{
    position: absolute;
    z-index: 99999;
    top: 15px;
    right: 20px;

    width: 50px;
    height: 50px;
    padding: 11px;

    cursor: pointer;
}
.nav-button__wrap:hover
{
    opacity: .8;
}

.nav-button,
.nav-button span
{
    display: inline-block;

    -webkit-transition: all .3s;
            transition: all .3s;
}

.nav-button
{
    position: relative; 

    width: 30px;
    height: 23px;
}

.nav-button span
{
    position: absolute;
    left: 0;

    width: 100%;
    height: 3px;

    background-color: #111;
}

.nav-button span:nth-of-type(1)
{
    top: 0;
}

.nav-button span:nth-of-type(2)
{
    top: 10px;
}

.nav-button span:nth-of-type(3)
{
    bottom: 0;
}

.active .nav-button span:nth-of-type(1)
{
    -webkit-transform: translateY(10px) rotate(-47deg);
        -ms-transform: translateY(10px) rotate(-47deg);
            transform: translateY(10px) rotate(-47deg);
}

.active .nav-button span:nth-of-type(2)
{
    opacity: 0;
}

.active .nav-button span:nth-of-type(3)
{
    -webkit-transform: translateY(-10px) rotate(45deg);
        -ms-transform: translateY(-10px) rotate(45deg);
            transform: translateY(-10px) rotate(45deg);
}

.nav-button__wrap--close
{
    position: absolute;
    top: 25px;
    right: 33px;

    cursor: pointer;
}

@media screen and (max-width: 767px)
{
    .nav-button__wrap
    {
        position: absolute;
        top: 17px;
        right: 15px;

        width: 30px;
        height: 25px;
        padding: 0;
    }
    .nav-button__wrap:hover
    {
        opacity: 1;
    }
    .nav-button,
    .nav-button span
    {
        -webkit-transition: none;
                transition: none;
    }
    .nav-button
    {
        position: relative; 

        width: 30px;
        height: 25px;
    }
    .nav-button span:nth-of-type(1)
    {
        top: 0;
    }
    .nav-button span:nth-of-type(2)
    {
        top: 11px;
    }
    .nav-button span:nth-of-type(3)
    {
        bottom: 0;
    }
    .active .nav-button span:nth-of-type(1)
    {
        -webkit-transform: translateY(11px) rotate(-47deg);
            -ms-transform: translateY(11px) rotate(-47deg);
                transform: translateY(11px) rotate(-47deg);
    }
    .active .nav-button span:nth-of-type(2)
    {
        opacity: 0;
    }
    .active .nav-button span:nth-of-type(3)
    {
        -webkit-transform: translateY(-11px) rotate(45deg);
            -ms-transform: translateY(-11px) rotate(45deg);
                transform: translateY(-11px) rotate(45deg);
    }
    .nav-button__wrap--close
    {
        position: absolute;
        top: 17px;
        right: 15px;

        cursor: pointer;
    }
}

.global-navigation__wrapper
{
    position: absolute;
    z-index: 9998;
    top: 0;
    right: 0;

    overflow-x: auto;

    width: 550px;
    height: 100vh;

    -webkit-transition: all .3s ease-in-out;
            transition: all .3s ease-in-out;
    -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
            transform: translateX(100%); 

    background: rgba(255, 255, 255, .98);
}

.global-navigation__list
{
    margin-bottom: 20px;
    padding: 50px 40px 0;
}

.global-navigation__item
{
    padding-top: 20px;
    padding-bottom: 5px; 

    border-bottom: 1px solid #ccc;
}

.global-navigation-first
{
    font-family: 'Muli', sans-serif;
    font-size: 2.4rem;

    margin-bottom: 14px; 

    letter-spacing: .08em;
}
.global-navigation-first::after
{
    display: block;

    width: 20px;
    height: 2px;
    margin-top: 13px; 

    content: '';

    background-color: #e5002c;
}

.global-navigation-second
{
    margin-left: 16px;
}
.global-navigation-second__item
{
    margin-bottom: 20px;
}

.global-navigation__link
{
    display: block;

    -webkit-transition: color .6s;
            transition: color .6s; 
    text-decoration: none;
}
.global-navigation__link::after
{
    display: inline-block;

    width: 6px;
    height: 9px;
    margin-left: 7px; 

    content: '';

    background: url('/recruit/resources/img/common/icon_arrow_red_s.png') 0 0 no-repeat;
    background-size: cover;
}
.global-navigation__link:hover
{
    -webkit-transition: color .4s;
            transition: color .4s; 
    text-decoration: none;

    color: #e5002c;
}

.global-navigation__soon
{
    color: #9d9d9d;
}
.global-navigation__soon:after
{
    font-size: 1.2rem;
    font-weight: bold;

    display: inline-block;

    margin-left: 8px;

    content: 'coming soon';
    vertical-align: top; 

    color: #e5002c;
}

.global-navigation__blank
{
    display: block; 

    text-decoration: none;
}
.global-navigation__blank::after
{
    display: inline-block;

    width: 10px;
    height: 10px;
    margin-left: 7px; 

    content: '';

    background: url('/recruit/resources/img/common/icon_blank.png') 0 0 no-repeat;
    background-size: cover;
}
.global-navigation__blank:hover
{
    -webkit-transition: color .4s;
            transition: color .4s; 
    text-decoration: none;

    color: #e5002c;
}

.essential__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 50px; 
    padding: 0 40px;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.essential__item
{
    width: calc((100% - 10px) / 2); 
    margin-bottom: 10px;
}

.essential__link
{
    font-size: 1.4rem;
    font-weight: bold;

    position: relative; 

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    height: 58px;
    padding: 0 19px;

    -webkit-transition: all .5s;
            transition: all .5s;
    text-align: center;
    text-decoration: none;

    color: #7e6f54;
    border: 1px solid #7e6f54;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.essential__link:hover
{
    text-decoration: none;

    color: #fff; 
    border: 1px solid #e5002c;
    background-color: #e5002c;
}
.essential__link:hover::after
{
    position: absolute;
    top: 20px; 
    right: 14px;

    display: inline-block;

    width: 10px;
    height: 17px;

    content: '';

    background: url('/recruit/resources/img/common/icon_arrow_white_s.png') 0 0 no-repeat;
    background-size: contain;
}
.essential__link::after
{
    position: absolute;
    top: 20px; 
    right: 14px;

    display: inline-block;

    width: 10px;
    height: 17px;

    content: '';

    background: url('/recruit/resources/img/common/icon_arrow_red_s.png') 0 0 no-repeat;
    background-size: contain;
}

@media screen and (max-width: 767px)
{
    .global-navigation__wrapper
    {
        position: absolute;
        top: 0;
        right: 0;

        overflow-x: auto;

        width: 100%;
        height: 100vh;

        -webkit-transform: translateX(100%);
            -ms-transform: translateX(100%);
                transform: translateX(100%); 

        background: rgba(255, 255, 255, .98);
    }
    .global-navigation__list
    {
        margin-bottom: calc(40 / 750 * 100vw);
        padding: 60px 15px 0;
    }
    .global-navigation__item
    {
        padding-top: calc(36 / 750 * 100vw);
        padding-bottom: 5px;
    }
    .global-navigation-first
    {
        font-size: 2rem;

        margin-bottom: calc(30 / 750 * 100vw);
    }
    .global-navigation-second
    {
        margin-left: calc(30 / 750 * 100vw);
    }
    .global-navigation-second__item
    {
        margin-bottom: calc(36 / 750 * 100vw);
    }
    .global-navigation__link
    {
        -webkit-transition: none;
                transition: none; 
        text-decoration: none;
    }
    .global-navigation__link::after
    {
        display: inline-block;

        width: 4px;
        height: 8px;
        margin-left: 7px; 

        content: '';

        background: url('/recruit/resources/img/common/icon_arrow_red_s.png') 0 0 no-repeat;
        background-size: contain;
    }
    .global-navigation__link:hover
    {
        -webkit-transition: none;
                transition: none; 

        opacity: 1;
    }
    .global-navigation__blank
    {
        -webkit-transition: opacity .8s;
                transition: opacity .8s; 
        text-decoration: none;
    }
    .global-navigation__blank:hover
    {
        -webkit-transition: none;
                transition: none; 
        text-decoration: none;

        opacity: 1;
    }
    .essential__list
    {
        margin-bottom: 80px; 
        padding: 0 15px;
    }
    .essential__item
    {
        width: calc((100% - 15px) / 2); 
        margin-bottom: 10px;
    }
    .essential__link
    {
        position: relative; 

        height: 58px;
        padding: 0 19px;

        -webkit-transition: all .5s;
                transition: all .5s;
        text-decoration: none;
    }
    .essential__link:hover
    {
        text-decoration: none;

        color: #fff; 
        border: 1px solid #e5002c;
        background-color: #e5002c;
    }
    .essential__link:hover::after
    {
        position: absolute;
        top: 20px; 
        right: 14px;

        display: inline-block;

        width: 10px;
        height: 17px;

        content: '';

        background: url('/recruit/resources/img/common/icon_arrow_white_s.png') 0 0 no-repeat;
        background-size: contain;
    }
    .essential__link::after
    {
        position: absolute;
        top: 20px; 
        right: 14px;

        display: inline-block;

        width: 10px;
        height: 17px;

        content: '';

        background: url('/recruit/resources/img/common/icon_arrow_red_s.png') 0 0 no-repeat;
        background-size: contain;
    }
}

.is-open
{
    display: block;

    -webkit-transition: all .3s;
            transition: all .3s;
    -webkit-transform: translateX(0px);
        -ms-transform: translateX(0px);
            transform: translateX(0px); 

    background: rgba(255, 255, 255, .98);
}

/*
  bg
--------------------------------------------- */
.bg--top
{
    z-index: 0;

    background: url('/recruit/resources/img/top/bg_top_all.png') 0 -20px no-repeat;
    background-size: 100%;
}

@media screen and (max-width: 767px)
{
    .bg--top
    {
        z-index: 0;

        background: url('/recruit/resources/img/top/bg_top_all_sp.png') 0 0 no-repeat;
        background-size: 100%;
    }
}

.bg--about
{
    z-index: 0; 

    background: url('/recruit/resources/img/about/bg_about.png') 50% 0 no-repeat;
}

@media screen and (max-width: 767px)
{
    .bg--about
    {
        z-index: 0;

        background: url('/recruit/resources/img/about/bg_about_sp.png') 0 0 no-repeat;
        background-size: 100%;
    }
}

.bg--message
{
    z-index: 0; 

    background: url('/recruit/resources/img/message/bg_message.png') 50% 0 no-repeat;
}

@media screen and (max-width: 767px)
{
    .bg--message
    {
        z-index: 0;

        background: url('/recruit/resources/img/message/bg_message_sp.png') 0 0 no-repeat;
        background-size: 100%;
    }
}

.section-news
{
    position: relative;
}
.section-news::after
{
    position: absolute;
    z-index: -1; 
    top: -30px;
    right: calc(180 / 1440 * 100vw);

    display: inline-block;

    width: calc(329 / 1440 * 100vw);
    height: calc(435 / 1440 * 100vw);

    content: '';

    background: url('/recruit/resources/img/top/bg_rectangle_02.png') 0 0 no-repeat;
    background-size: cover;
}

.line-01
{
    position: absolute;
    z-index: -1;
    top: -30px; 
    right: 0;

    width: 135px;
    height: 539px;

    background: url('/recruit/resources/img/top/red_line.png') 0 0 no-repeat;
}

.line-02
{
    position: absolute;
    z-index: -1;
    top: calc(240 / 1440 * 100vw); 
    left: 0;

    width: 135px;
    height: 539px;

    background: url('/recruit/resources/img/top/red_line.png') 0 0 no-repeat;
}

.line-03
{
    position: absolute;
    z-index: -1;
    top: calc(800 / 1440 * 100vw); 
    right: 0;

    width: 135px;
    height: 539px;

    background: url('/recruit/resources/img/top/red_line.png') 0 0 no-repeat;
}

.section-movie
{
    position: relative;
}
.section-movie::after
{
    position: absolute;
    z-index: -2; 
    top: -90px;
    left: calc(74 / 1440 * 100vw);

    display: inline-block;

    width: calc(329 / 1440 * 100vw);
    height: calc(435 / 1440 * 100vw);

    content: '';

    background: url('/recruit/resources/img/top/bg_rectangle_02.png') 0 0 no-repeat;
    background-size: cover;
}

.parts-reveal:after
{
    -webkit-transition: -webkit-clip-path .6s ease-out;
            transition: -webkit-clip-path .6s ease-out;
            transition:         clip-path .6s ease-out;
            transition:         clip-path .6s ease-out, -webkit-clip-path .6s ease-out;
    -webkit-transition-delay: .5s;
            transition-delay: .5s; 

    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
}

.active::after
{
    -webkit-clip-path: inset(0) !important;
            clip-path: inset(0) !important;
}

.line-reveal
{
    -webkit-transition: -webkit-clip-path .6s ease-out;
            transition: -webkit-clip-path .6s ease-out;
            transition:         clip-path .6s ease-out;
            transition:         clip-path .6s ease-out, -webkit-clip-path .6s ease-out;
    -webkit-transition-delay: .5s;
            transition-delay: .5s; 

    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
}

.line-active
{
    -webkit-clip-path: inset(0) !important;
            clip-path: inset(0) !important;
}

@media screen and (max-width: 767px)
{
    .section-news::after
    {
        content: none;
    }
    .line-01
    {
        background: none;
    }
    .line-02
    {
        background: none;
    }
    .line-03
    {
        background: none;
    }
    .section-movie::after
    {
        content: none;
    }
}

/*
heading
*/
.heading-lv1
{
    position: relative;

    height: 220px;
    margin-bottom: 40px; 

    background-repeat: no-repeat;
}
.heading-lv1--about::after
{
    position: absolute;
    top: 0; 
    right: 0;

    width: 646px;
    height: 220px;

    content: '';

    background: url('/recruit/resources/img/about/bg_heading1.png') 0 0 no-repeat;
}
.heading-lv1--training::after
{
    position: absolute;
    top: 0; 
    right: 0;

    width: 646px;
    height: 220px;

    content: '';

    background: url('/recruit/resources/img/training/bg_heading1.png') 0 0 no-repeat;
}
.heading-lv1--careerplans::after
{
    position: absolute;
    top: 0; 
    right: 0;

    width: 646px;
    height: 220px;

    content: '';

    background: url('/recruit/resources/img/careerplans/bg_heading1.png') 0 0 no-repeat;
}
.heading-lv1--message::after
{
    position: absolute;
    top: 0; 
    right: 0;

    width: 646px;
    height: 220px;

    content: '';

    background: url('/recruit/resources/img/message/bg_heading1.png') 0 0 no-repeat;
}
.heading-lv1__inner
{
    position: relative; 

    display: block;

    width: 980px;
    margin: 0 auto;
    padding: 90px 0 0 20px;
}
.heading-lv1__text
{
    width: calc(500 / 1440 * 100vw);
}
.heading-lv1__text--full
{
    width: 100%;
}
.heading-lv1__eng
{
    font-family: 'Muli', sans-serif;
    font-size: 4.8rem;

    display: inline-block; 

    margin-right: 20px;

    letter-spacing: .05em;

    color: #e5002c;
}
.heading-lv1__jp
{
    font-size: 2rem;
    font-weight: bold;

    display: inline-block;

    margin-top: 12px; 

    color: #111;
}

@media screen and (max-width: 767px)
{
    .heading-lv1
    {
        height: 120px;
        margin-bottom: calc(30 / 750 * 100vw); 

        background-repeat: no-repeat;
    }
    .heading-lv1--about::after
    {
        position: absolute;
        top: 0;
        right: 0;

        width: 152px;
        height: 120px;

        content: '';

        background: url('/recruit/resources/img/about/bg_heading1_sp.png') 0 0 no-repeat;
        background-size: cover;
    }
    .heading-lv1--training::after
    {
        position: absolute;
        top: 0;
        right: 0;

        width: 152px;
        height: 120px;

        content: '';

        background: url('/recruit/resources/img/training/bg_heading1_sp.png') 0 0 no-repeat;
        background-size: cover;
    }
    .heading-lv1--careerplans::after
    {
        position: absolute;
        top: 0;
        right: 0;

        width: 152px;
        height: 120px;

        content: '';

        background: url('/recruit/resources/img/careerplans/bg_heading1_sp.png') 0 0 no-repeat;
        background-size: cover;
    }
    .heading-lv1--message::after
    {
        position: absolute;
        top: 0;
        right: 0;

        width: 152px;
        height: 120px;

        content: '';

        background: url('/recruit/resources/img/message/bg_heading1_sp.png') 0 0 no-repeat;
        background-size: cover;
    }
    .heading-lv1__inner
    {
        width: 100%;
        padding: 30px 0 0 15px;
    }
    .heading-lv1__text
    {
        width: calc(430 / 750 * 100vw);
    }
    .heading-lv1__eng
    {
        font-size: 3.6rem;

        display: block;
        display: inline; 

        margin-right: 0;

        letter-spacing: .04em;
    }
    .heading-lv1__eng--small
    {
        font-size: 3rem;
    }
    .heading-lv1__jp
    {
        font-size: 1.4rem;

        display: block;

        margin-top: 12px;
    }
}

.heading-lv2
{
    font-size: 3.2rem;
    font-weight: bold;
    line-height: 1.6;

    margin-bottom: 30px;
}
.heading-lv2::after
{
    display: block;

    width: 40px;
    height: 3px;
    margin-top: 20px; 

    content: '';

    background-color: #e5002c;
}

@media screen and (max-width: 767px)
{
    .heading-lv2
    {
        font-size: 2.4rem;

        margin-bottom: calc(50 / 750 * 100vw);
    }
    .heading-lv2::after
    {
        width: 30px;
        height: 2px;
        margin-top: 20px;
        margin-bottom: calc(40 / 750 * 100vw); 

        content: '';
    }
}

.heading-lv3
{
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.6;

    margin-bottom: 30px;
}

@media screen and (max-width: 767px)
{
    .heading-lv3
    {
        font-size: 1.8rem;

        width: 100%;
        margin-bottom: calc(50 / 750 * 100vw);
    }
}

.heading-lv2-top
{
    margin-bottom: 38px;
}
.heading-lv2-top__eng
{
    font-family: 'Muli', sans-serif;
    font-size: 8rem;

    display: block;

    margin-bottom: 28px; 

    letter-spacing: .05em;

    color: #e5002c;
}
.heading-lv2-top__ja
{
    font-size: 3.2rem;
    font-weight: bold;

    display: block;

    margin-bottom: 25px; 

    letter-spacing: .04em;
}
.heading-lv2-top::after
{
    display: block;

    width: 50px;
    height: 4px;

    content: '';

    background-color: #e5002c;
}

@media screen and (max-width: 767px)
{
    .heading-lv2-top
    {
        margin-bottom: calc(50 / 750 * 100vw);
    }
    .heading-lv2-top__eng
    {
        font-size: 4.6rem;

        margin-bottom: calc(35 / 750 * 100vw);
    }
    .heading-lv2-top__ja
    {
        font-size: 1.8rem;

        margin-bottom: calc(40 / 750 * 100vw);
    }
    .heading-lv2-top::after
    {
        width: 30px;
        height: 3px; 

        content: '';
    }
}

.bread-crumb
{
    position: absolute;
    top: 23px;
    left: 20px;
}
.bread-crumb__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.bread-crumb__item
{
    font-size: 1.2rem; 

    margin-left: 10px;
}
.bread-crumb__item a
{
    text-decoration: none;
}
.bread-crumb__item:before
{
    font-size: 1.2rem;

    display: inline-block;

    margin-right: 10px; 

    content: '>';
}
.bread-crumb__item:first-of-type
{
    margin-left: 0;
}
.bread-crumb__item:first-of-type:before
{
    content: none;
}

@media screen and (max-width: 767px)
{
    .bread-crumb
    {
        position: relative;
        top: inherit;
        left: inherit;

        margin-top: calc(100 / 750 * 100vw);
        padding: calc(30 / 750 * 100vw); 

        border-top: 1px solid #e6e6e6;
        background: #fff;
    }
    .bread-crumb__item
    {
        font-size: 1.2rem;
    }
    .bread-crumb__item:first-of-type
    {
        margin-left: 0;
    }
}

/*
  slick style
--------------------------------------------- */
.kv
{
    position: relative; 

    min-width: 980px;
}
.kv__parts--left
{
    position: absolute;
    z-index: 2; 
    top: 0;
    left: 0;

    width: calc(126 / 1440 * 100vw);
}
.kv__parts--right
{
    position: absolute;
    z-index: 2; 
    right: 0;
    bottom: 0;

    width: calc(51 / 1440 * 100vw);
}
.kv__bg
{
    position: absolute;
    top: 0;
    left: calc(135 / 1440 * 100vw);

    width: calc(550 / 1440 * 100vw);

    -webkit-transition: -webkit-clip-path .5s ease-out;
            transition: -webkit-clip-path .5s ease-out;
            transition:         clip-path .5s ease-out;
            transition:         clip-path .5s ease-out, -webkit-clip-path .5s ease-out;
    -webkit-transition-delay: .5s;
            transition-delay: .5s; 

    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
}
.kv__ttl
{
    position: absolute;
    top: calc(156 / 1440 * 100vw);
    left: calc(278 / 1440 * 100vw);

    width: calc(292 / 1440 * 100vw);

    -webkit-transition: -webkit-clip-path .6s ease-out;
            transition: -webkit-clip-path .6s ease-out;
            transition:         clip-path .6s ease-out;
            transition:         clip-path .6s ease-out, -webkit-clip-path .6s ease-out;
    -webkit-transition-delay: 1s;
            transition-delay: 1s; 

    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
}

@media screen and (max-width: 767px)
{
    .kv
    {
        min-width: 100%;
    }
    .kv__parts--left
    {
        width: calc(40 / 750 * 100vw);
    }
    .kv__parts--right
    {
        width: calc(100 / 750 * 100vw);
    }
    .kv__bg
    {
        position: absolute;
        z-index: 3; 
        top: inherit;
        right: 0;
        bottom: calc((96 / 750 * 100vw) * -1);
        left: inherit;

        width: calc(686 / 750 * 100vw);

        -webkit-transition: -webkit-clip-path .5s ease-out;
                transition: -webkit-clip-path .5s ease-out;
                transition:         clip-path .5s ease-out;
                transition:         clip-path .5s ease-out, -webkit-clip-path .5s ease-out;
        -webkit-transition-delay: 1.5s;
                transition-delay: 1.5s;

        -webkit-clip-path: inset(0 0 0 100%);
                clip-path: inset(0 0 0 100%);
    }
    .kv__ttl
    {
        position: absolute;
        z-index: 3; 
        top: inherit;
        right: calc(60 / 750 * 100vw);
        bottom: calc((50 / 750 * 100vw) * -1);
        left: inherit;

        width: calc(534 / 750 * 100vw);

        -webkit-transition: -webkit-clip-path .5s ease-out;
                transition: -webkit-clip-path .5s ease-out;
                transition:         clip-path .5s ease-out;
                transition:         clip-path .5s ease-out, -webkit-clip-path .5s ease-out;
        -webkit-transition-delay: 2.5s;
                transition-delay: 2.5s;

        -webkit-clip-path: inset(0 0 0 100%);
                clip-path: inset(0 0 0 100%);
        filter: none;
    }
}

.lead-copy
{
    width: calc(540 / 1440 * 100vw);
    margin: calc(25 / 1440 * 100vw) 0 calc(200 / 1440 * 100vw) calc(630 / 1440 * 100vw); 

    -webkit-transition: -webkit-clip-path 1.5s;
            transition: -webkit-clip-path 1.5s;
            transition:         clip-path 1.5s;
            transition:         clip-path 1.5s, -webkit-clip-path 1.5s;
    -webkit-transition-delay: 2s;
            transition-delay: 2s;

    -webkit-clip-path: inset(0 100% 0 0);
            clip-path: inset(0 100% 0 0);
}

@media screen and (max-width: 767px)
{
    .lead-copy
    {
        width: calc(524 / 750 * 100vw);
        margin: calc(190 / 750 * 100vw) auto calc(110 / 750 * 100vw) auto; 

        -webkit-transition: none;
                transition: none;
        -webkit-transition-delay: none;
                transition-delay: none;

        -webkit-clip-path: inset(0);
                clip-path: inset(0);
    }
}

.line-lead
{
    position: absolute;
    z-index: -1;
    top: calc(580 / 1440 * 100vw);
    right: calc(140 / 1440 * 100vw);

    width: 1px;
    height: calc(165 / 1440 * 100vw);

    -webkit-transition: -webkit-clip-path .6s;
            transition: -webkit-clip-path .6s;
            transition:         clip-path .6s;
            transition:         clip-path .6s, -webkit-clip-path .6s;
    -webkit-transition-delay: 3.5s;
            transition-delay: 3.5s; 
    -webkit-transform: rotate(15deg);
        -ms-transform: rotate(15deg);
            transform: rotate(15deg);

    background-color: #e5002c;

    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
}

.is-bg-active
{
    opacity: 1; 

    -webkit-clip-path: inset(0);
            clip-path: inset(0);
    filter: blur(0);
}

/*
  slick style
--------------------------------------------- */
.slick
{
    position: relative;

    overflow: hidden;
}

.slick .item
{
    overflow: hidden;
}

.slick .slide-image
{
    -webkit-transition: all 12s 0s;
            transition: all 12s 0s; 
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
}

.slick .slick-current .slide-image
{
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
}

.load
{
    -webkit-transition: all 5s ease 0s;
            transition: all 5s ease 0s; 
    -webkit-transform: scale(1.1) !important;
        -ms-transform: scale(1.1) !important;
            transform: scale(1.1) !important;
}

/*
  news
--------------------------------------------- */
.news
{
    margin-bottom: 180px;
}
.news__link
{
    text-decoration: none;
}
.news__link:hover
{
    text-decoration: none;
}
.news__link:hover .news__detail
{
    color: #e5002c;
}
.news__link:after
{
    display: inline-block;

    width: 6px;
    height: 10px;

    content: '';

    background: url('/recruit/resources/img/common/icon_arrow_red_s.png') 0 0 no-repeat;
    background-size: contain;
}
.news__item
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 30px;
}
.news__item:first-of-type
{
    margin-top: 0;
}
.news__date
{
    font-size: 1.4rem;

    margin-right: 25px; 
    padding-left: 37px;
}
.news__cat
{
    font-size: 1rem;

    display: inline-block;

    width: 100px;
    height: 17px;
    margin-right: 30px; 
    padding: 3px;

    text-align: center;

    border: 1px solid #999;
}

@media screen and (max-width: 767px)
{
    .news
    {
        margin-bottom: calc(220 / 750 * 100vw);
    }
    .news__link
    {
        text-decoration: none;
    }
    .news__link:hover
    {
        text-decoration: none;
    }
    .news__link:hover .news__detail
    {
        color: #e5002c;
    }
    .news__link:after
    {
        display: inline-block;

        width: 4px;
        height: 8px;

        content: '';

        background: url('/recruit/resources/img/common/icon_arrow_red_s.png') 0 0 no-repeat;
        background-size: contain;
    }
    .news__item
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-top: calc(37 / 750 * 100vw); 

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
    .news__item:first-of-type
    {
        margin-top: 0;
    }
    .news__date
    {
        font-size: 1.2rem;

        margin-right: calc(30 / 750 * 100vw); 
        padding-left: 0;
    }
    .news__cat
    {
        font-size: 1rem;

        width: calc(200 / 750 * 100vw);
        height: calc(34 / 750 * 100vw);
        margin-right: 0; 
        padding: 3px;
    }
    .news__detail
    {
        display: block;

        width: 100%;
        margin-top: calc(25 / 750 * 100vw);
    }
}

/*
  movie panel
--------------------------------------------- */
.movie-panel
{
    position: relative;

    margin-top: 80px;
}
.movie-panel:first-of-type
{
    margin-top: 0;
}
.movie-panel__link
{
    display: block;
}
.movie-panel__link:hover
{
    -webkit-transition-duration: .4s;
            transition-duration: .4s;
}
.movie-panel__link:hover .movie-panel__pic img
{
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);

    opacity: .8;
}
.movie-panel__link:hover .movie-panel__textlink
{
    -webkit-transition: opacity .4s;
            transition: opacity .4s; 

    opacity: .8;
}
.movie-panel__pic
{
    position: relative; 

    display: block;
    overflow: hidden;

    width: 620px;
    height: 349px;
}
.movie-panel__pic--right
{
    margin-left: 320px;
}
.movie-panel__pic img
{
    -webkit-transition-duration: .4s;
            transition-duration: .4s;
}
.movie-panel__pic:after
{
    position: absolute;
    top: 50%;
    left: 50%;

    display: inline-block;

    width: 94px;
    height: 94px;

    content: '';
    -webkit-transform: translateY(-50%) translateX(-50%);
        -ms-transform: translateY(-50%) translateX(-50%);
            transform: translateY(-50%) translateX(-50%); 

    background: url('/recruit/resources/img/common/icon_play.png') 0 0 no-repeat;
    background-size: cover;
}
.movie-panel__detail
{
    position: absolute;
    top: 55px;
    right: 0;

    width: 397px;
    height: 240px;

    background: url('/recruit/resources/img/top/movie_panel_bg.png') 0 0 no-repeat;
    background-size: contain;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.movie-panel__detail--right
{
    right: inherit;
    left: 0;
}
.movie-panel__ttl
{
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.4; 

    display: block;

    width: 340px;
    padding-top: 95px;
    padding-left: 70px;

    text-align: center;

    color: #fff;
}
.movie-panel__ttl--twoline
{
    padding-top: 70px;
}
.movie-panel__textlink
{
    display: block;

    margin-top: 60px;
    padding-right: 90px;

    text-align: right;
    text-decoration: underline; 

    color: #fff;
}
.movie-panel__textlink:after
{
    display: inline-block;

    width: 6px;
    height: 6px;
    margin-left: 10px; 

    content: '';

    background: url('/recruit/resources/img/common/icon_arrow_white_s.png') 0 0 no-repeat;
    background-size: contain;
}

@media screen and (max-width: 767px)
{
    .movie-panel
    {
        margin-top: calc(180 / 750 * 100vw);
    }
    .movie-panel__link:hover
    {
        -webkit-transition-duration: none;
                transition-duration: none;
    }
    .movie-panel__link:hover .movie-panel__pic img
    {
        -webkit-transform: scale(1);
            -ms-transform: scale(1);
                transform: scale(1);

        opacity: 1;
    }
    .movie-panel__link:hover .movie-panel__textlink
    {
        -webkit-transition: none;
                transition: none; 

        opacity: 1;
    }
    .movie-panel__pic
    {
        display: block; 

        width: 100%;
        height: inherit;
    }
    .movie-panel__pic--right
    {
        margin-left: 0;
    }
    .movie-panel__pic img
    {
        -webkit-transition-duration: .4s;
                transition-duration: .4s;
    }
    .movie-panel__pic:after
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: inline-block;

        width: calc(100 / 750 * 100vw);
        height: calc(100 / 750 * 100vw);

        content: '';
        -webkit-transform: translateY(-50%) translateX(-50%);
            -ms-transform: translateY(-50%) translateX(-50%);
                transform: translateY(-50%) translateX(-50%); 

        background: url('/recruit/resources/img/common/icon_play.png') 0 0 no-repeat;
        background-size: cover;
    }
    .movie-panel__detail
    {
        position: absolute;
        top: inherit;
        right: -15px;
        bottom: calc((110 / 750 * 100vw) * -1);
        left: inherit;

        width: calc(642 / 750 * 100vw);
        height: calc(185 / 750 * 100vw);

        background: url('/recruit/resources/img/top/movie_panel_bg_sp.png') 0 0 no-repeat;
        background-size: cover;

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .movie-panel__detail--right
    {
        position: absolute;
        top: inherit;
        right: inherit;
        bottom: calc((110 / 750 * 100vw) * -1);
        left: -15px;

        width: calc(661 / 750 * 100vw);
        height: calc(185 / 750 * 100vw);

        background: url('/recruit/resources/img/top/movie_panel_bg_sp2.png') 0 0 no-repeat;
        background-size: cover;

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .movie-panel__ttl
    {
        font-size: 2.2rem;
        line-height: 1.4; 

        width: calc(620 / 750 * 100vw);
        padding-top: calc(40 / 750 * 100vw);
        padding-left: calc(40 / 750 * 100vw);
    }
    .movie-panel__ttl--twoline
    {
        padding-top: calc(40 / 750 * 100vw);
    }
    .movie-panel__textlink
    {
        margin-top: calc(30 / 750 * 100vw);
        padding-right: calc(20 / 750 * 100vw); 

        text-align: right;
    }
    .movie-panel__textlink--gutter-right
    {
        padding-right: calc(80 / 750 * 100vw);
    }
    .movie-panel__textlink:after
    {
        display: inline-block;

        width: 6px;
        height: 6px;
        margin-left: 10px; 

        content: '';

        background: url('/recruit/resources/img/common/icon_arrow_white_s.png') 0 0 no-repeat;
        background-size: contain;
    }
}

.l-content p
{
    line-height: 1.6;

    margin-bottom: 30px;
}

@media screen and (max-width: 767px)
{
    .l-content p
    {
        line-height: 1.8;

        margin-bottom: calc(50 / 750 * 100vw);
        padding-left: 20px;
    }
}

p.signature
{
    text-align: right;
}

@media screen and (max-width: 767px)
{
    p.signature
    {
        text-align: right;
    }
    p.signature img
    {
        width: calc(206 / 750 * 100vw);
    }
}

.media-width710
{
    width: 710px;
    margin: 0 auto;
    margin-bottom: 30px;
}

.media-width810 {
    width: 810px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
}


@media screen and (max-width: 767px)
{
    .media-width710
    {
        width: 100%;
        margin-bottom: calc(60 / 750 * 100vw);
    }
  .media-width810 {
   width: 100%;
 margin-bottom: calc(60 / 750 * 100vw);
}  
}



.media
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.media--right .media__thumbnail
{
    width: calc((100% - 20px) / 2); 

    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0;
}
.media--left .media__thumbnail
{
    width: calc((100% - 20px) / 2); 

    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
}
.media--right .media__text
{
    width: calc((100% - 20px) / 2); 
    padding: 0 20px 0 0;
}
.media--left .media__text
{
    width: calc((100% - 20px) / 2); 
    padding: 0 0 0 20px;
}

@media screen and (max-width: 767px)
{
    .media
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
            flex-direction: column; 

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
    .media--right .media__thumbnail
    {
        width: 100%;
        margin-bottom: calc(60 / 750 * 100vw); 

        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
        order: 0;
    }
    .media--left .media__thumbnail
    {
        width: 100%;
        margin-bottom: calc(60 / 750 * 100vw); 

        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }
    .media--right .media__text
    {
        width: 100%; 
        padding: 0;
    }
    .media--left .media__text
    {
        width: 100%; 
        padding: 0;
    }
}

.media--full
{
    margin-bottom: calc(60 / 750 * 100vw);
}

/*
  column
--------------------------------------------- */
.column
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 30px;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.column--01 .column__unit
{
    width: 100%;
}
.column--02 .column__unit
{
    width: calc((100% - 20px) / 2);

    background: red;
}
.column--03 .column__unit
{
    width: calc((100% - 20px * 2) / 3);

    background: red;
}
.column--04 .column__unit
{
    width: calc((100% - 20px * 3) / 4);

    background: red;
}

/*
  button-horizontal
--------------------------------------------- */
.button-horizontal
{
    margin-bottom: 30px;
}
.button-horizontal--gutter-bottom-wide
{
    margin-bottom: 60px;
}
.button-horizontal__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.button-horizontal__list--01 .button-horizontal__item
{
    width: 100%;
}
.button-horizontal__list--02 .button-horizontal__item
{
    width: calc((100% - 20px) / 2);
}
.button-horizontal__list--03 .button-horizontal__item
{
    width: calc((100% - 20px * 2) / 3);
}
.button-horizontal__list--04 .button-horizontal__item
{
    width: calc((100% - 20px * 3) / 4);
}

@media screen and (max-width: 767px)
{
    .button-horizontal
    {
        width: calc(630 / 750 * 100vw); 
        margin: 0 auto calc(60 / 750 * 100vw);
    }
    .button-horizontal--gutter-bottom-wide
    {
        margin: 0 auto calc(80 / 750 * 100vw);
    }
    .button-horizontal__list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
    .button-horizontal__list--01 .button-horizontal__item
    {
        width: 100%;
    }
    .button-horizontal__list--02 .button-horizontal__item
    {
        width: 100%;
    }
    .button-horizontal__list--03 .button-horizontal__item
    {
        width: 100%;
    }
    .button-horizontal__list--04 .button-horizontal__item
    {
        width: 100%;
    }
    .button-horizontal__item
    {
        margin-top: calc(30 / 750 * 100vw);
    }
    .button-horizontal__item:first-of-type
    {
        margin-top: 0;
    }
}

/*
  buttons
--------------------------------------------- */
.button-basic
{
    font-size: 1.8rem;
    font-weight: bold;

    position: relative;

    display: block;

    width: 100%;
    padding: 15px 10px;

    -webkit-transition: all .5s;
            transition: all .5s; 
    text-align: center;
    text-decoration: none;

    border: 1px solid #7e6f54;
}
.button-basic::after
{
    position: absolute;
    top: 20px;
    right: 14px; 

    display: inline-block;

    width: 4px;
    height: 8px;

    content: '';

    background: url('/recruit/resources/img/common/icon_arrow_red_s.png') 0 0 no-repeat;
    background-size: contain;
}
.button-basic:hover
{
    text-decoration: none;

    color: #fff; 
    border: 1px solid #e5002c;
    background: #e5002c;
}
.button-basic:hover::after
{
    position: absolute;
    top: 20px;
    right: 14px; 

    display: inline-block;

    width: 4px;
    height: 8px;

    content: '';

    background: url('/recruit/resources/img/common/icon_arrow_white_s.png') 0 0 no-repeat;
    background-size: contain;
}
.button-basic--anchor::after
{
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
}
.button-basic--blank::after
{
    position: absolute;
    top: 18px;
    right: 14px; 

    display: inline-block;

    width: 10px;
    height: 10px;

    content: '';

    background: url('/recruit/resources/img/common/icon_blank.png') 0 0 no-repeat;
    background-size: contain;
}
.button-basic--blank:hover
{
    text-decoration: none;

    color: #fff; 
    border: 1px solid #e5002c;
    background: #e5002c;
}
.button-basic--blank:hover::after
{
    position: absolute;
    top: 18px;
    right: 14px; 

    display: inline-block;

    width: 10px;
    height: 10px;

    content: '';

    background: url('/recruit/resources/img/common/icon_blank_white.png') 0 0 no-repeat;
    background-size: contain;
}

@media screen and (max-width: 767px)
{
    .button-basic
    {
        font-size: 1.6rem;

        padding: calc(30 / 750 * 100vw) calc(10 / 750 * 100vw);

        -webkit-transition: none;
                transition: none;
    }
    .button-basic::after
    {
        position: absolute;
        top: calc(36 / 750 * 100vw);
        right: calc(30 / 750 * 100vw); 

        display: inline-block;

        width: 4px;
        height: 8px;

        content: '';

        background: url('/recruit/resources/img/common/icon_arrow_red_s.png') 0 0 no-repeat;
        background-size: contain;
    }
    .button-basic:hover
    {
        text-decoration: none;

        color: #111; 
        border: 1px solid #7e6f54;
        background: none;
    }
    .button-basic:hover::after
    {
        position: absolute;
        top: calc(36 / 750 * 100vw);
        right: calc(30 / 750 * 100vw); 

        display: inline-block;

        width: 4px;
        height: 8px;

        content: '';

        background: url('/recruit/resources/img/common/icon_arrow_red_s.png') 0 0 no-repeat;
        background-size: contain;
    }
    .button-basic--blank::after
    {
        position: absolute;
        top: calc(36 / 750 * 100vw);
        right: calc(30 / 750 * 100vw); 

        display: inline-block;

        width: 10px;
        height: 10px;

        content: '';

        background: url('/recruit/resources/img/common/icon_blank.png') 0 0 no-repeat;
        background-size: contain;
    }
    .button-basic--blank:hover
    {
        text-decoration: none;
    }
    .button-basic--blank:hover::after
    {
        position: absolute;
        top: calc(36 / 750 * 100vw);
        right: calc(30 / 750 * 100vw); 

        display: inline-block;

        width: 10px;
        height: 10px;

        content: '';

        background: url('/recruit/resources/img/common/icon_blank.png') 0 0 no-repeat;
        background-size: contain;
    }
}

.button-entry
{
    font-size: 2rem;
    font-weight: bold;

    position: relative;

    display: block;

    width: 420px;
    margin: 0 auto; 
    padding: 16px 18px;

    -webkit-transition: all .5s;
            transition: all .5s;
    text-align: center;
    text-decoration: none;

    color: #fff;
    background: #7e6f54;
}
.button-entry::after
{
    position: absolute;
    top: 18px;
    right: 18px; 

    display: inline-block;

    width: 11px;
    height: 18px;

    content: '';

    background: url('/recruit/resources/img/common/icon_arrow_white_s.png') 0 0 no-repeat;
}
.button-entry:hover
{
    text-decoration: none;

    opacity: .8;
    color: #fff;
}

@media screen and (max-width: 767px)
{
    .button-entry
    {
        font-size: 1.8rem;

        width: calc(630 / 750 * 100vw);
        padding: calc(30 / 750 * 100vw) calc(30 / 750 * 100vw);

        -webkit-transition: none;
                transition: none;

        background: #7e6f54;
    }
    .button-entry::after
    {
        position: absolute;
        top: calc(34 / 750 * 100vw);
        right: calc(30 / 750 * 100vw);

        display: inline-block;

        width: 9px;
        height: 16px;

        content: '';

        background: url('/recruit/resources/img/common/icon_arrow_white_s.png') 0 0 no-repeat;
        background-size: contain;
    }
    .button-entry:hover
    {
        opacity: 1;
        color: #fff;
    }
}

/* new */
.button-entry-new
{
    width: 100%;
    margin-top: 7rem;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.button-entry-new__ul:first-child
{
    width: 44.5%;
    margin:auto 0 auto 3.9rem;
}

.button-entry-new__ul
{
    width: 44.5%;
    margin:auto 3.9rem 0 auto;
}

.button-entry-new__ul li:first-child
{
    border-left: 3px solid #000;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.3;
    padding-left: 1rem;
    margin-bottom: 1rem;
}

.button-entry-new__li
{
    font-size: 1.6rem;
    font-weight: bold;
    position: relative;
    display: block;
    width: 100%;
    margin: 0 auto; 
    padding: 15px 18px;
    -webkit-transition: all .5s;
            transition: all .5s;
    text-align: center;
    text-decoration: none;
    color: #fff;
    background: #7e6f54;
}

.button-entry-new__ul:first-child .button-entry-new__li
{
    //background: #909090;
}

.button-entry-new__li::after
{
    position: absolute;
    top: 15px;
    right: 18px; 
    display: inline-block;
    width: 11px;
    height: 15px;
    content: '';
    background: url('/recruit/resources/img/common/icon_arrow_white_s.png') 0 0 no-repeat;
    background-size: contain;
}

.button-entry-new__li:hover {
    text-decoration: none;
    opacity: .8;
    color: #fff;
}

@media screen and (max-width: 767px)
{
    .button-entry-new {
    margin-top: 5rem;
    display: block;    
    }
    
    .button-entry-new__ul {
    width: 100%;
    }
    
    .button-entry-new__ul:first-child {
    width: 100%;
    margin:auto 0;
    }
    
    .button-entry-new__ul:last-child {
    width: 100%;
    margin:-1rem auto 0;
    }
    
    .button-entry-new__ul li:first-child {
    font-size: 1.6rem;
    }

    
    
    .button-entry-new__li
    {
        font-size: 1.8rem;

        width: calc(630 / 750 * 100vw);
        padding: calc(30 / 750 * 100vw) calc(30 / 750 * 100vw);

        -webkit-transition: none;
                transition: none;

        background: #7e6f54;
    }
    .button-entry-new__li::after
    {
        position: absolute;
        top: calc(34 / 750 * 100vw);
        right: calc(30 / 750 * 100vw);

        display: inline-block;

        width: 9px;
        height: 16px;

        content: '';

        background: url('/recruit/resources/img/common/icon_arrow_white_s.png') 0 0 no-repeat;
        background-size: contain;
    }
    .button-entry-new__li:hover
    {
        opacity: 1;
        color: #fff;
    }
}

.button-basic--disable
{
    font-size: 1.8rem;
    font-weight: bold; 

    position: relative;

    display: block;

    width: 100%;
    padding: 15px 10px;

    text-align: center;
    text-decoration: none;

    color: #a0a0a0;
    border: 1px solid #a0a0a0;
}
.button-basic--disable::before
{
    position: absolute;
    top: 30px;
    right: 14px;

    display: inline-block;

    width: 4px;
    height: 8px;

    content: '';

    opacity: .4; 
    background: url('/recruit/resources/img/common/icon_arrow_red_s.png') 0 0 no-repeat;
    background-size: contain;
}
.button-basic--disable::after
{
    font-size: 1.2rem;

    position: relative;
    z-index: 2;

    display: block;

    margin-top: 10px; 

    content: 'coming soon';

    opacity: 1;
    color: #e5002c;
}

@media screen and (max-width: 767px)
{
    .button-basic--disable
    {
        font-size: 1.6rem;
    }
    .button-basic--disable::before
    {
        position: absolute;
        top: 30px;
        right: 14px;

        display: inline-block;

        width: 4px;
        height: 8px;

        content: '';

        opacity: .4; 
        background: url('/recruit/resources/img/common/icon_arrow_red_s.png') 0 0 no-repeat;
        background-size: contain;
    }
    .button-basic--disable::after
    {
        font-size: 1.2rem;
    }
}

.link-blank::after
{
    display: inline-block;

    width: 10px;
    height: 10px;
    margin-left: 15px; 

    content: '';

    background: url('/recruit/resources/img/common/icon_blank.png') 0 0 no-repeat;
    background-size: contain;
}

.carousel__wrapper
{
    padding: 37px 70px 27px;

    border: 1px solid #e6e6e6;
    background: #fff;
}

.carousel__ttl-area
{
    margin-bottom: 20px; 

    text-align: center;
}

.carousel__number
{
    font-family: 'Muli', sans-serif;
    font-size: 1.8rem;
    font-weight: bold;

    display: inline-block;

    color: #7e6f54;
}

.carousel__ttl
{
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.8; 

    display: inline-block;

    margin-left: 15px;

    color: #7e6f54;
}

.carousel__detail
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.carousel__pic
{
    width: 300px;
}

.carousel__text
{
    font-size: 1.4rem;
    line-height: 1.6; 

    margin-left: 28px;

    -webkit-box-flex: 1;
    -ms-flex: 1;
        flex: 1;
}
.carousel__text p:last-of-type
{
    margin-bottom: 0;
}

@media screen and (max-width: 767px)
{
    .carousel__wrapper
    {
        padding: calc(75 / 750 * 100vw) calc(40 / 750 * 100vw) calc(60 / 750 * 100vw);
    }
    .carousel__ttl-area
    {
        margin-bottom: calc(50 / 750 * 100vw); 

        text-align: center;
    }
    .carousel__number
    {
        font-size: 1.8rem;
    }
    .carousel__ttl
    {
        font-size: 2.2rem;

        margin-left: 15px;
    }
    .carousel__detail
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
            flex-direction: column; 

        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
    .carousel__pic
    {
        width: calc(480 / 750 * 100vw);
        margin: 0 auto calc(40 / 750 * 100vw);
    }
    .carousel__text
    {
        font-size: 1.4rem;
        line-height: 1.6; 

        margin-left: 0;

        -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    }
    .carousel__text p:last-of-type
    {
        margin-bottom: 0;
    }
}

.defenition-list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    border-top: 1px solid #ccc; 

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.defenition-list__dt
{
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.6;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 220px;
    padding: 30px 20px;

    color: #e5002c;
    border-bottom: 1px solid #ccc; 

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.defenition-list__dd
{
    line-height: 1.8;

    width: calc(100% - 220px);
    padding: 30px 20px;

    border-bottom: 1px solid #ccc;
}
.defenition-list__dd p:last-of-type
{
    margin-bottom: 0;
}

@media screen and (max-width: 767px)
{
    .defenition-list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
            flex-direction: column; 

        border-top: none;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
    .defenition-list__dt
    {
        font-size: 1.6rem;

        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        width: 100%;
        padding: 0 0 calc(20 / 750 * 100vw);

        border-bottom: none; 

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .defenition-list__dd
    {
        line-height: 1.8;

        width: 100%;
        margin-bottom: calc(40 / 750 * 100vw); 
        padding: 0 0 calc(40 / 750 * 100vw) 20px;

        border-bottom: 1px solid #ccc;
    }
}

.tab-navigation
{
    width: 860px;
    margin: 0 auto 60px;
}
.tab-navigation__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.tab-navigation__item
{
    width: 420px; 

    text-align: center;
}
.tab-navigation__current
{
    font-size: 1.4rem;
    font-weight: bold; 

    position: relative;

    display: block;

    padding: 12px;

    border-bottom: 2px solid #e5002c;
    background: #fef2f4;
}
.tab-navigation__current:after
{
    position: absolute;
    bottom: -8px;
    left: calc((100% - 6px) / 2); 

    display: inline-block;

    width: 12px;
    height: 6px;

    content: '';

    background: url('/recruit/resources/img/common/arrow_down_red.png') 0 0 no-repeat;
    background-size: contain;
}
.tab-navigation__link
{
    font-size: 1.4rem;
    font-weight: bold;

    display: block;

    padding: 12px;

    -webkit-transition: background .7s;
            transition: background .7s; 
    text-decoration: none;

    border-bottom: 2px solid #7e6f54;
    background: #fff;
}
.tab-navigation__link:hover
{
    text-decoration: none;

    border-bottom: 2px solid #e5002c; 
    background: #fef2f4;
}

@media screen and (max-width: 767px)
{
    .tab-navigation
    {
        width: 100%;
        margin: 0 auto calc(85 / 750 * 100vw); 
        padding: 0 15px;
    }
    .tab-navigation__list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    .tab-navigation__item
    {
        width: calc(330 / 750 * 100vw); 

        text-align: center;
    }
    .tab-navigation__current
    {
        font-size: 1rem; 

        padding: 8px;
    }
    .tab-navigation__current:after
    {
        position: absolute;
        bottom: -8px;
        left: calc((100% - 6px) / 2); 

        display: inline-block;

        width: 12px;
        height: 6px;

        content: '';

        background: url('/recruit/resources/img/common/arrow_down_red.png') 0 0 no-repeat;
        background-size: contain;
    }
    .tab-navigation__link
    {
        font-size: 1rem; 

        padding: 8px;
    }
    .tab-navigation__link:hover
    {
        border-bottom: 2px solid #7e6f54; 
        background: #fff;
    }
}

.faq-list__dt
{
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.8;

    position: relative; 

    margin: 40px 0 0 0;
    padding: 0 40px 30px 80px;
}
.faq-list__dt:before
{
    position: absolute;
    top: 5px;
    left: 0; 

    display: inline-block;

    width: 29px;
    height: 21px;
    margin-right: 16px;
    margin-left: 40px;

    content: '';
    vertical-align: middle;

    background: url('/recruit/resources/img/faq/icon_question.png') 0 0 no-repeat;
    background-size: contain;
}

.faq-list__dd
{
    line-height: 1.8;

    position: relative; 

    padding: 0 40px 30px 80px;

    border-bottom: 1px solid #ccc;
}
.faq-list__dd:before
{
    position: absolute;
    top: 5px;
    left: 0; 

    display: inline-block;

    width: 29px;
    height: 21px;
    margin-right: 16px;
    margin-left: 40px;

    content: '';
    vertical-align: middle;

    background: url('/recruit/resources/img/faq/icon_answer.svg') 0 0 no-repeat;
    background-size: contain;
}

@media screen and (max-width: 767px)
{
    .faq-list__dt
    {
        font-size: 1.6rem; 

        margin: calc(40 / 750 * 100vw) 0 0 0;
        padding: 0 0 calc(36 / 750 * 100vw) calc(60 / 750 * 100vw);
    }
    .faq-list__dt:before
    {
        position: absolute;
        top: 5px;
        left: 0; 

        display: inline-block;

        width: calc(41 / 750 * 100vw);
        height: calc(30 / 750 * 100vw);
        margin-right: 10px;
        margin-left: 0;

        content: '';
        vertical-align: middle;

        background: url('/recruit/resources/img/faq/icon_question.png') 0 0 no-repeat;
        background-size: contain;
    }
    .faq-list__dd
    {
        line-height: 1.8;

        position: relative; 

        padding: 0 0 calc(36 / 750 * 100vw) calc(60 / 750 * 100vw);

        border-bottom: 1px solid #ccc;
    }
    .faq-list__dd:before
    {
        position: absolute;
        top: 5px;
        left: 0; 

        display: inline-block;

        width: calc(41 / 750 * 100vw);
        height: calc(30 / 750 * 100vw);
        margin-right: 10px;
        margin-left: 0;

        content: '';
        vertical-align: middle;

        background: url('/recruit/resources/img/faq/icon_answer.svg') 0 0 no-repeat;
        background-size: contain;
    }
}

.entry-list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 40px; 

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.entry-list__dt
{
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.6;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 220px;
    padding: 30px 20px;

    border-bottom: 1px solid #ccc;
}
.entry-list__dd
{
    line-height: 1.8;

    width: calc(100% - 220px);
    padding: 30px 20px;

    border-bottom: 1px solid #ccc;
}
.entry-list__dd p
{
    line-height: 1.8;
}
.entry-list__dd p:last-of-type
{
    margin-bottom: 0;
}
.entry-list__dd ul
{
    margin-left: 25px; 

    list-style-type: disc;
}
.entry-list__dd ul li
{
    line-height: 2;
}
.entry-list__ttl
{
    font-weight: bold;

    margin-bottom: 13px;
}

@media screen and (max-width: 767px)
{
    .entry-list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
            flex-direction: column;

        margin-bottom: calc(60 / 750 * 100vw); 

        border-top: none;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
    .entry-list__dt
    {
        font-size: 1.6rem;

        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        width: 100%;
        padding: 0 0 calc(20 / 750 * 100vw);

        border-bottom: none; 

        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .entry-list__dd
    {
        line-height: 1.8;

        width: 100%;
        margin-bottom: calc(40 / 750 * 100vw); 
        padding: 0 0 calc(40 / 750 * 100vw) 20px;

        border-bottom: 1px solid #ccc;
    }
    .entry-list__dd:last-of-type
    {
        margin-bottom: 0;
    }
    .entry-list__dd p
    {
        line-height: 1.8;

        padding-left: 0;
    }
    .entry-list__dd p:last-of-type
    {
        margin-bottom: 0;
    }
    .entry-list__dd ul
    {
        margin-left: calc(30 / 750 * 100vw); 

        list-style-type: disc;
    }
    .entry-list__dd ul li
    {
        line-height: 2;
    }
}

/*
  tab切り替え
--------------------------------------------- */
.tab-change
{
    width: 860px;
    margin: 0 auto 60px;
}
.tab-change__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.tab-change__item
{
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.5; 

    display: block;

    margin-left: 20px;
    padding: 12px;

    cursor: pointer;
    -webkit-transition: background .7s;
            transition: background .7s;
    text-align: center;
    text-decoration: none;

    border-bottom: 2px solid #7e6f54;
    background: #fff;

    -webkit-box-flex: 1;
    -ms-flex: 1;
        flex: 1;
}
.tab-change__item:first-of-type
{
    margin-left: 0;
}
.tab-change__item:hover
{
    text-decoration: none;

    border-bottom: 2px solid #e5002c; 
    background: #fef2f4;
}
.tab-change__item--active
{
    font-size: 1.4rem;
    font-weight: bold; 

    position: relative;

    display: block;

    padding: 12px;

    border-bottom: 2px solid #e5002c;
    background: #fef2f4;
}
.tab-change__item--active:after
{
    position: absolute;
    bottom: -8px;
    left: calc((100% - 6px) / 2); 

    display: inline-block;

    width: 12px;
    height: 6px;

    content: '';

    background: url('/recruit/resources/img/common/arrow_down_red.png') 0 0 no-repeat;
    background-size: contain;
}

@media screen and (max-width: 767px)
{
    .tab-change
    {
        width: 100%;
        margin: 0 auto calc(85 / 750 * 100vw); 
        padding: 0;
    }
    .tab-change__list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .tab-change__item
    {
        margin-left: 15px;
    }
    .tab-change__item:first-of-type
    {
        margin-left: 0;
    }
    .tab-change__item:hover
    {
        text-decoration: none;

        border-bottom: 2px solid #e5002c; 
        background: #fef2f4;
    }
    .tab-change__item--active
    {
        padding: 12px;
    }
    .tab-change__item--active:after
    {
        position: absolute;
        bottom: -8px;
        left: calc((100% - 6px) / 2); 

        display: inline-block;

        width: 12px;
        height: 6px;

        content: '';

        background: url('/recruit/resources/img/common/arrow_down_red.png') 0 0 no-repeat;
        background-size: contain;
    }
}

.panel
{
    display: none;
}

.panel-2
{
    display: none;
}

.panel.is-show
{
    display: block;
}

.panel-2.is-show
{
    display: block;
}

.entry
{
    width: 100%; 
    height: 346px;
    margin-top: 120px;

    background: url('/recruit/resources/img/common/bg_entry.png') 0 0 no-repeat;
    background-size: cover;
}
.entry__ttl
{
    font-family: 'Muli', sans-serif;
    font-size: 4rem;

    margin: 0 0 36px 0;
    padding-top: 56px;

    text-align: center;
    letter-spacing: .05em; 

    color: #fff;
}
.entry__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 860px;
    margin: 0 auto; 

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.entry__item:nth-child(1)
{
    margin-bottom: 20px;
}
.entry__item:nth-child(2)
{
    margin-bottom: 20px;
}
.entry__link
{
    font-size: 1.8rem;
    font-weight: bold;

    position: relative;

    display: block;

    width: 420px;
    padding: 12px 3px;

    -webkit-transition: background .5s;
            transition: background .5s; 
    text-align: center;
    text-decoration: none;

    color: #fff;
    border: 2px solid #fff;
}
.entry__link:after
{
    position: absolute;
    top: 17px;
    right: 15px;

    display: inline-block;

    width: 4px;
    height: 8px;

    content: '';

    background: url('/recruit/resources/img/common/icon_arrow_white_s.png') 0 0 no-repeat;
    background-size: contain;
}
.entry__link:hover
{
    text-decoration: none; 

    color: #e5002c;
    background: #fff;
}
.entry__link:hover:after
{
    display: inline-block;

    width: 4px;
    height: 8px;

    content: '';

    background: url('/recruit/resources/img/common/icon_arrow_red_s.png') 0 0 no-repeat;
    background-size: contain;
}

@media screen and (max-width: 767px)
{
    .entry
    {
        height: inherit;
        margin-top: 0;
        padding-bottom: calc(75 / 750 * 100vw);

        background: url('/recruit/resources/img/common/bg_entry_sp.png') center center no-repeat;
        background-size: cover;
    }
    .entry__ttl
    {
        font-size: 2.4rem;

        margin: 0 0 calc(40 / 750 * 100vw) 0; 
        padding-top: calc(50 / 750 * 100vw);
    }
    .entry__list
    {
        display: block;

        width: 100%;
    }
    .entry__item
    {
        margin-top: calc(30 / 750 * 100vw);
    }
    .entry__item__item:nth-child(1)
    {
        margin-bottom: 0;
    }
    .entry__item__item:nth-child(2)
    {
        margin-bottom: 0;
    }
    .entry__link
    {
        font-size: 1.6rem;
        font-weight: bold;

        width: calc(630 / 750 * 100vw);
        margin: 0 auto; 
        padding: calc(27 / 750 * 100vw) 0;

        -webkit-transition: none;
                transition: none;

        border: 1px solid #fff;
    }
    .entry__link:after
    {
        position: absolute;
        top: calc(33 / 750 * 100vw);
        right: calc(27 / 750 * 100vw);

        width: 5px;
        height: 8px;

        background: url('/recruit/resources/img/common/icon_arrow_white_s.png') 0 0 no-repeat;
        background-size: cover;
    }
    .entry__link:hover
    {
        text-decoration: none; 

        color: #fff;
        background: none;
    }
    .entry__link:hover:after
    {
        position: absolute;
        top: calc(33 / 750 * 100vw);
        right: calc(27 / 750 * 100vw);

        width: 5px;
        height: 8px;

        background: url('/recruit/resources/img/common/icon_arrow_white_s.png') 0 0 no-repeat;
        background-size: cover;
    }
    body#home .entry
    {
        margin-top: calc(250 / 750 * 100vw);
    }
}

/*
  slick style
--------------------------------------------- */
.footer
{
    height: 100px; 

    background: #111;
}

.footer__utility
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding-top: 20px; 

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.footer__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.footer__item
{
    margin-left: 30px;
}
.footer__item:first-of-type
{
    margin-left: 0;
}

.footer__link
{
    font-size: 1.4rem;

    -webkit-transition: opacity .5s;
            transition: opacity .5s; 
    text-decoration: none;

    color: #ccc;
}
.footer__link:after
{
    display: inline-block;

    width: 10px;
    height: 10px;
    margin-left: 10px; 

    content: '';

    background: url('/recruit/resources/img/common/icon_blank_ccc.png') 0 0 no-repeat;
    background-size: contain;
}
.footer__link:hover
{
    -webkit-transition: color .5s;
            transition: color .5s; 
    text-decoration: none;

    color: #7a7a7a;
}

.sns
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.sns__ttl
{
    font-size: 1.2rem;

    margin-right: 15px; 
    padding-top: 8px;

    color: #ccc;
}
.sns__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.sns__item
{
    width: 30px; 
    margin-left: 20px;
}
.sns__item:first-of-type
{
    margin-left: 0;
}
.sns__item:hover
{
    -webkit-transition: opacity .5s;
            transition: opacity .5s; 

    opacity: .8;
}

.cr
{
    font-size: 1.2rem;

    padding-top: 20px; 

    text-align: right;

    color: #4b4948;
}

@media screen and (max-width: 767px)
{
    .footer
    {
        height: 155px;
    }
    .footer__utility
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
            flex-direction: column;

        padding-top: calc(40 / 750 * 100vw); 

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .footer__list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .footer__item
    {
        margin-left: calc(60 / 750 * 100vw);
    }
    .footer__item:first-of-type
    {
        margin-left: 0;
    }
    .footer__link
    {
        -webkit-transition: none;
                transition: none; 
        text-decoration: none;
    }
    .footer__link:after
    {
        display: inline-block;

        width: 10px;
        height: 10px;
        margin-left: 5px; 

        content: '';

        background: url('/recruit/resources/img/common/icon_blank_ccc.png') 0 0 no-repeat;
        background-size: contain;
    }
    .footer__link:hover
    {
        -webkit-transition: none;
                transition: none; 
        text-decoration: none;

        color: #ccc;
    }
    .sns
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .sns__ttl
    {
        font-size: 1.2rem;

        margin-right: 15px; 
        padding-top: calc(50 / 750 * 100vw);
    }
    .sns__list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-top: calc(40 / 750 * 100vw);

        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .sns__item
    {
        width: 30px; 
        margin-left: 20px;
    }
    .sns__item:first-of-type
    {
        margin-left: 0;
    }
    .sns__item:hover
    {
        -webkit-transition: none;
                transition: none; 

        opacity: 1;
    }
    .cr
    {
        padding-top: 18px; 

        text-align: center;
    }
}
