﻿*,
*::before,
*::after {
    box-sizing: border-box;
    padding: 0;
    margin: 0
}

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;
    word-wrap: break-word;
    overflow-wrap: break-word
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block
}

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

fieldset,
img {
    border: 0
}

address,
caption,
cite,
code,
dfn,
em,
th,
var {
    font-style: normal;
    font-weight: normal
}

li {
    list-style: none
}

caption,
th {
    text-align: left
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 100%;
    font-weight: inherit;
    letter-spacing: 0
}

q::before,
q::after {
    content: ""
}

abbr,
acronym {
    border: 0;
    font-variant: normal
}

sup {
    vertical-align: super
}

sub {
    vertical-align: text-bottom
}

input,
textarea,
select,
button {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit
}

input,
textarea,
select,
button {
    *font-size: 100%
}

input[type=radio],
input[type=checkbox] {
    vertical-align: -2px
}

input[type=submit],
input[type=reset] {
    -webkit-appearance: none
}

label {
    cursor: pointer
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
    height: auto
}

::-webkit-input-placeholder {
    color: inherit;
    opacity: .5
}

::-webkit-search-decoration,
::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

::-moz-focus-inner {
    border: 0
}

:-moz-focusring {
    outline: 1px dotted ButtonText
}

:-moz-ui-invalid {
    box-shadow: none
}

[hidden] {
    display: none
}

svg:not(:root) {
    overflow: hidden
}

table {
    text-indent: 0;
    border-color: inherit
}

details {
    display: block
}

dialog {
    background-color: inherit;
    border: solid;
    color: inherit;
    display: block;
    height: fit-content;
    left: 0;
    margin: auto;
    padding: 1em;
    position: absolute;
    right: 0;
    width: fit-content
}

dialog:not([open]) {
    display: none
}

summary {
    display: list-item
}

canvas {
    display: inline-block
}

template {
    display: none
}

audio,
video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

picture {
    display: block;
    position: relative
}

img {
    border: 0;
    vertical-align: bottom
}

@font-face {
    font-family: "Noto Sans JP";
    font-weight: 400;
    font-display: swap;
    src: local("Noto Sans JP"), url("../fonts/NotoSansJP-Regular.woff2") format("woff2")
}

@font-face {
    font-family: "Noto Sans JP";
    font-weight: 500;
    font-display: swap;
    src: local("Noto Sans JP"), url("../fonts/NotoSansJP-Medium.woff2") format("woff2")
}

@font-face {
    font-family: "Noto Sans JP";
    font-weight: 700;
    font-display: swap;
    src: local("Noto Sans JP"), url("../fonts/NotoSansJP-Bold.woff2") format("woff2")
}

@font-face {
    font-family: "Pinyon Script";
    font-weight: 400;
    font-display: swap;
    src: local("Pinyon Script"), url("../fonts/PinyonScript-Regular.woff2") format("woff2")
}

@font-face {
    font-family: "Josefin Sans";
    font-weight: 400;
    font-display: swap;
    src: local("Josefin Sans"), url("../fonts/JosefinSans-Regular.woff2") format("woff2")
}

@font-face {
    font-family: "Josefin Sans";
    font-weight: 700;
    font-display: swap;
    src: local("Josefin Sans"), url("../fonts/JosefinSans-Bold.woff2") format("woff2")
}

@font-face {
    font-family: "regina_group";
    src: url("../fonts/regina_group.ttf?nx0oay") format("truetype"), url("../fonts/regina_group.woff?nx0oay") format("woff"), url("../fonts/regina_group.svg?nx0oay#regina_group") format("svg");
    font-weight: normal;
    font-style: normal;
    font-display: block
}

header {
    width: 100%;
    height: 5rem;
    position: fixed;
    top: 0;
    transition: .2s;
    z-index: 110
}

@media screen and (min-width: 768px) {
    header {
        height: 90px
    }
}

header.bg {
    background: #fff
}

#menu {
    background: var(--clr-white);
    height: 100%;
    left: 0;
    opacity: 0;
    overflow: hidden;
    position: fixed;
    text-align: center;
    top: 0;
    transition: all .7s ease-in-out;
    visibility: hidden;
    width: 100%;
    z-index: 1100
}

#menu.open {
    opacity: 1;
    visibility: visible
}

#menu.open li:nth-child(1) {
    animation-delay: .1s
}

#menu.open li:nth-child(2) {
    animation-delay: .2s
}

#menu.open li:nth-child(3) {
    animation-delay: .3s
}

#menu.open li:nth-child(4) {
    animation-delay: .4s
}

#menu.open li:nth-child(5) {
    animation-delay: .5s
}

#menu.open li:nth-child(6) {
    animation-delay: .6s
}

#menu.open li:nth-child(7) {
    animation-delay: .7s
}

#menu.open li:nth-child(8) {
    animation-delay: .8s
}

#menu.open li:nth-child(9) {
    animation-delay: .9s
}

#menu.open li:nth-child(10) {
    animation-delay: 1s
}

#menu.open li {
    animation-duration: 1s;
    animation-fill-mode: both;
    animation-name: fadeInUp
}

#menu .main_nav {
    height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 4.5rem 1.4285714286rem 2.8571428571rem
}

@media screen and (min-width: 768px) {
    #menu .main_nav {
        max-width: 980px;
        margin: 0 auto;
        padding: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column
    }
}

#menu .main_nav a {
    font-size: 1rem;
    color: var(--clr-txt);
    text-decoration: none;
    transform: translateZ(0);
    transition: opacity .3s ease-in-out, color .3s ease-in-out
}

#menu .main_nav a:hover {
    color: var(--clr-txt-hover)
}

#menu .main_nav>ul {
    width: 100%
}

@media screen and (min-width: 768px) {
    #menu .main_nav>ul {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr;
        grid-column-gap: 60px;
        grid-row-gap: 53px;
        justify-items: stretch;
        align-items: stretch
    }
}

#menu .main_nav>ul>li {
    text-align: left;
    margin-bottom: calc((100vh - (1rem*10) - 8.0714285714rem)/9)
}

@media screen and (min-width: 768px) {
    #menu .main_nav>ul>li {
        margin-bottom: 0
    }
}

#menu .main_nav>ul>li>a {
    display: inline-block;
    position: relative;
    line-height: 1;
    letter-spacing: .2em
}

#menu .main_nav>ul>li>a::after {
    position: absolute;
    left: 10em;
    content: attr(data-jp) "";
    white-space: nowrap;
    color: #999
}

#menu .main_nav>ul>li.job_list {
    margin-bottom: 1em
}

#menu .main_nav>ul>li.job_list>ul {
    margin-left: 1em
}

@media screen and (min-width: 768px) {
    #menu .main_nav>ul>li.job_list>ul {
        position: absolute
    }
}

#menu .main_nav>ul>li.job_list>ul a {
    font-size: .5rem
}

@media screen and (min-width: 768px) {
    #menu .main_nav>ul>li:nth-child(odd) {
        padding-right: 2.8571428571rem
    }

    #menu .main_nav>ul>li:nth-child(even) {
        padding-left: 2.8571428571rem
    }

    #menu .main_nav>ul>li.home {
        grid-column: 1/3;
        padding-left: 2.8571428571rem;
        text-align: left
    }

    #menu .main_nav>ul>li.job_list {
        padding: 0
    }

    #menu .main_nav>ul>li.job_list>ul a {
        font-size: .5rem
    }
}

#menu .main_nav>div {
    margin-top: 3.5714285714rem;
    display: flex
}

@media screen and (min-width: 768px) {
    #menu .main_nav>div {
        width: 100%;
        padding-left: 40px
    }
}

#menu .main_nav>div a {
    margin-right: 1em
}

#menu .main_nav>div .logo {
    display: flex
}

#toggle_menu {
    cursor: pointer;
    border: none;
    background: rgba(0, 0, 0, 0);
    display: block;
    position: fixed;
    top: 1.2142857143rem;
    right: 1.4285714286rem;
    mix-blend-mode: difference;
    width: 2.1428571429rem;
    height: 1.4285714286rem;
    padding: 0;
    z-index: 1110
}

@media screen and (min-width: 768px) {
    #toggle_menu {
        width: 40px;
        height: 28px;
        top: 24px;
        right: 51px
    }
}

#toggle_menu span#toggle_menu_border {
    background: var(--clr-menu);
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    top: calc(50% - 1px);
    left: 0;
    right: 0;
    margin: 0 auto;
    transform-origin: 50% 50%;
    transition: background-color .2s ease-in-out, top .2s .2s ease-out, transform .2s linear;
    width: 100%
}

#toggle_menu span#toggle_menu_border:before,
#toggle_menu span#toggle_menu_border:after {
    background: var(--clr-menu);
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    transform-origin: 50% 50%;
    transition: background-color .2s ease-in-out, top .2s .2s ease-out, transform .2s linear;
    width: 100%
}

#toggle_menu span#toggle_menu_border:before {
    top: 7px
}

@media screen and (min-width: 768px) {
    #toggle_menu span#toggle_menu_border:before {
        top: 12px
    }
}

#toggle_menu span#toggle_menu_border:after {
    top: -7px
}

@media screen and (min-width: 768px) {
    #toggle_menu span#toggle_menu_border:after {
        top: -12px
    }
}

#toggle_menu span#toggle_menu_txt {
    display: block;
    text-align: center;
    position: absolute;
    bottom: -1rem;
    left: -0.025em;
    width: 100%;
    margin: 0 auto;
    font-size: .7142857143rem
}

@media screen and (min-width: 768px) {
    #toggle_menu span#toggle_menu_txt {
        left: auto;
        font-size: 12px
    }
}

#toggle_menu span#toggle_menu_txt::before {
    content: "MENU";
    color: var(--clr-menu);
    white-space: nowrap
}

#toggle_menu.active span#toggle_menu_border {
    background-color: rgba(0, 0, 0, 0);
    transition: background .2s ease-out
}

#toggle_menu.active span#toggle_menu_border:before,
#toggle_menu.active span#toggle_menu_border:after {
    transition: top .2s ease-out, transform .2s .2s ease-out
}

#toggle_menu.active span#toggle_menu_border:before {
    top: 0;
    transform: rotate3d(0, 0, 1, -45deg)
}

#toggle_menu.active span#toggle_menu_border:after {
    top: 0;
    transform: rotate3d(0, 0, 1, 45deg)
}

#toggle_menu.active span#toggle_menu_txt {
    left: -0.1em
}

@media screen and (min-width: 768px) {
    #toggle_menu.active span#toggle_menu_txt {
        left: auto
    }
}

#toggle_menu.active span#toggle_menu_txt::before {
    content: "CLOSE"
}

#header_logo {
    display: block;
    mix-blend-mode: difference;
    position: fixed;
    top: 1.4285714286rem;
    left: 1.4285714286rem;
    z-index: 100
}

@media screen and (min-width: 768px) {
    #header_logo {
        left: 50px
    }
}

#header_logo_img {
    display: block;
    margin: 0 auto;
    width: 10rem;
    height: auto;
    aspect-ratio: 140/27;
    overflow: hidden;
    text-indent: -999px;
    white-space: nowrap;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNDAiIGhlaWdodD0iMjciIHZpZXdCb3g9IjAgMCAxNDAgMjciPjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEzNS40MzIgMjkuNDY0KSI+PGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEzNS40MzIgLTI5LjQ2NCkiPjxwYXRoIGQ9Ik0yNjcuMTYsMjAuNDEzaC0uMzIydi43NDdjMCwuMTA3LjA1NC4xMDcuMDU0LjEwN2gtLjMyM2MuMDU0LDAsLjA1NC0uMDUzLjA1NC0uMTA3di0uOEgyNjYuM1YyMC4yaC45MTRabS45MTQuODU0aDBjLjA1NCwwLC4wNTQtLjA1My4wNTQtLjEwN3YtLjY5NGwtLjMyMi44NTRoMGwtLjMyMi0uODU0di43NDdoLS4xNjFjLjA1NCwwLC4wNTQsMCwuMDU0LS4xMDdsLjEwNy0uODU0aC4yMTVsLjI2OS42OTQuMjY5LS42OTRoLjI2OWMtLjA1NCwwLS4wNTQuMDUzLS4wNTQuMTA3bC4xMDcuOGgtLjI2OVoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMjguNTU3IC0xNC4wMTMpIiBmaWxsPSIjNjY2Ii8+PHBhdGggZD0iTTg3LjksMzIuNDE4bC0yLjc0MS00LjA1NUg4NC4zNXYzLjJsLjUzNy42OTR2LjEwN0g4Mi4ydi0uMTA3bC41MzctLjY0VjI0LjA0MUw4Mi4yLDIzLjR2LS4xMDdoMi41OGMuNDg0LDAsMy42NTUtLjI2NywzLjY1NSwyLjQ1NWEyLjUxMSwyLjUxMSwwLDAsMS0xLjc3NCwyLjI5NWwyLjQxOSwzLjQ2OGExLjc3NSwxLjc3NSwwLDAsMCwxLjE4Mi43NDd2LjE2Wm0tMy4wMS04LjQ4NEg4NC4zNXYzLjc4OWguMjE1YzEuNTU5LDAsMi4yNTctLjgsMi4yNTctMS45MjFhMS43NTQsMS43NTQsMCwwLDAtLjUxNi0xLjM1NSwxLjc4MSwxLjc4MSwwLDAsMC0xLjM2NS0uNTEyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDIuODMyIC0xNS41KSIgZmlsbD0iIzY2NiIvPjxwYXRoIGQ9Ik0xMDQuNCwzMi4zMjVIOTguNjU0di0uMTA3bC40ODQtLjY0VjIzLjg5NGwtLjUzNy0uNTg3VjIzLjJoNS45MTJsLjEwNywxLjAxNC0xLjY2Ni0uMjY3aC0yLjJ2My40MTVIMTAyLjJsLjgwNi0uMzc0djEuNDk0bC0uODA2LS4zNzRIMTAwLjc1djIuNzc1YzAsLjY0LjIxNS43NDcuODYuNzQ3aDEuMjlhNi4wNTIsNi4wNTIsMCwwLDAsMS45ODktLjU4N1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC01MC40NjggLTE1LjQ1OSkiIGZpbGw9IiM2NjYiLz48cGF0aCBkPSJNMTE5LjkyMywyOC41NTZ2My4yNTVhNy45LDcuOSwwLDAsMS0zLjE3MS41MzRBNC44MSw0LjgxLDAsMCwxLDExMS43LDI3LjZjMC0yLjcyMSwxLjU1OS00LjcsNS4xMDYtNC43YTE3LjUzNCwxNy41MzQsMCwwLDEsMi4zNjUuMjEzaDBsLjU5MSwxLjY1NC0uMjY5LjE2YTMuMzQ0LDMuMzQ0LDAsMCwwLTIuNjg3LTEuMTIxYy0xLjk4OSwwLTMuMjc4LDEuNi0zLjI3OCwzLjc4OXMxLjQ1MSwzLjk0OSwzLjIyNSwzLjk0OWE0LjQ5MSw0LjQ5MSwwLDAsMCwxLjYxMi0uMjEzVjI4LjY2M2wtLjY0NS0uNTg3di0uMTA3aDIuNzQxdi4xMDdaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNTYuNTc2IC0xNS4zMTgpIiBmaWxsPSIjNjY2Ii8+PHBhdGggZD0iTTEzMC42LDMyLjMyNXYtLjEwN2wuNTkxLS42NFYyNGwtLjU5MS0uNjRWMjMuMmgyLjc5NXYuMTZsLS42NDUuNjR2Ny41NzdsLjY0NS42NHYuMTA3WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTY1LjM2MyAtMTUuNDU5KSIgZmlsbD0iIzY2NiIvPjxwYXRoIGQ9Ik0yMTQuNCwzMi4zMjV2LS4xMDdsLjU5MS0uNjRWMjRsLS41OTEtLjY0VjIzLjJoMi43OTV2LjE2bC0uNjQ1LjY0djcuNTc3bC42NDUuNjR2LjEwN1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMDQuMzkgLTE1LjQ1OSkiIGZpbGw9IiM2NjYiLz48cGF0aCBkPSJNMjQzLjIsMzIuMzI1di0uMTA3bC41OTEtLjY0VjI0bC0uNTkxLS42NFYyMy4yaDIuNzQxdi4xNmwtLjU5MS42NHY3LjU3N2wuNTkxLjY0di4xMDdaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTE3Ljg3MiAtMTUuNDU5KSIgZmlsbD0iIzY2NiIvPjxwYXRoIGQ9Ik0xNDcuNSwyMy43ODd2OC41OTFoLS45NjdsLTYuMzQyLTcuNDE3djYuNjdsLjY0NS41ODd2LjEwN2gtMi4ydi0uMTA3bC42NDUtLjU4N1YyNC4xNmE1LjY0LDUuNjQsMCwwLDAtMS4wNzUtLjh2LS4xMDdoMy4xMTdsNS4yNjcsNi41MVYyMy43ODdsLS42NDUtLjQ4VjIzLjJoMi4ydi4xMDdaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNjguOTI1IC0xNS40NTkpIiBmaWxsPSIjNjY2Ii8+PHBhdGggZD0iTTIzMS44MjIsMjMuNzg3djguNTkxSDIzMC44TDIyNC41MTIsMjQuOHY2LjgzbC42NDUuNTg3di4xNkgyMjIuOXYtLjE2bC42NDUtLjU4N1YyNC4zNzRMMjIyLjksMjMuMzZWMjMuMmgyLjYzM2w1LjI2Nyw2LjUxVjIzLjc4N2wtLjY0NS0uNDI3VjIzLjJoMi4yNTd2LjE2WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEwOC40ODIgLTE1LjQ1OSkiIGZpbGw9IiM2NjYiLz48cGF0aCBkPSJNMTY0LjA4MSwzMi4zMjV2LS4xMDdsLjM3Ni0uNDgtLjk2Ny0yLjRoLTMuMjI1bC0uODYsMi40LjM3Ni40OHYuMTA3SDE1Ny45di0uMTA3bC42NDUtLjUzNCwyLjc0MS03LjczNy0uMzIyLS42NFYyMy4yaDEuODgxbDMuNDkzLDguNDMxLjcuNTg3di4xMDdabS0yLjMxMS03LjM2NC0xLjIzNiwzLjUyMmgyLjY4N1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC03OC4xIC0xNS40NTkpIiBmaWxsPSIjNjY2Ii8+PHBhdGggZD0iTTE4OC4yMzIsMzIuMTI1aDBhMTMuMzY1LDEzLjM2NSwwLDAsMS0yLjUyNi4zMmMtMy41NDcsMC01LjEwNi0yLjQtNS4xMDYtNC43LDAtMy4wOTUsMi4zNjUtNC43NDksNS4xMDYtNC43NDlhMTUuNjQxLDE1LjY0MSwwLDAsMSwyLjIuMTZsLjU5MSwxLjcwOC0uMjE1LjEwN2EyLjk2NSwyLjk2NSwwLDAsMC0yLjU4LTEuMTIxYy0yLjE1LDAtMy4yNzgsMS43NjEtMy4yNzgsMy44NDJzLjg2LDMuODQyLDMuMzg2LDMuODQyYTMuMTg3LDMuMTg3LDAsMCwwLDIuNzQxLTEuMzg3bC4yNjkuMTA3WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTg4LjY3MSAtMTUuMzY2KSIgZmlsbD0iIzY2NiIvPjxwYXRoIGQ9Ik0yNTguNDMyLDMyLjEyNWgwYTEzLjM2NSwxMy4zNjUsMCwwLDEtMi41MjYuMzJjLTMuNTQ3LDAtNS4xMDYtMi40LTUuMTA2LTQuNywwLTMuMDk1LDIuMzY1LTQuNzQ5LDUuMTA2LTQuNzQ5YTE1LjY0MSwxNS42NDEsMCwwLDEsMi4yLjE2bC41OTEsMS43MDgtLjIxNS4xMDdhMi45NjUsMi45NjUsMCwwLDAtMi41OC0xLjEyMWMtMi4xNSwwLTMuMjc4LDEuNzYxLTMuMjc4LDMuODQycy44NiwzLjg0MiwzLjM4NiwzLjg0MmEzLjE4NywzLjE4NywwLDAsMCwyLjc0MS0xLjM4N2wuMjY5LjEwN1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMjEuMzg4IC0xNS4zNjYpIiBmaWxsPSIjNjY2Ii8+PHBhdGggZD0iTTIwNS4xMTEsMzIuMzcxaC02LjU1N3YtLjEwN2wuNTkxLS42OTRWMjMuOTk0bC0uNjQ1LS41ODdWMjMuM2gyLjg0OHYuMTA3bC0uNTkxLjU4N3Y2LjkzN2MwLC40OC4yMTUuNTg3LjcuNTg3aDEuNjEyYTcuNzgxLDcuNzgxLDAsMCwwLDIuNTgtLjc0N1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC05Ny4wMDUgLTE1LjUwNikiIGZpbGw9IiM2NjYiLz48cGF0aCBkPSJNMTQ4LjQ2Miw1Mi4zMjFoLTIuNTI2djEuOTIxbC4zMjIuMzc0SDE0NC43bC4zMjItLjM3NFY0OS45NzRMMTQ0LjcsNDkuNmgxLjU1OWwtLjMyMi4zNzR2MS44NjhoMi41MjZtMCwwVjUwLjAyN2wtLjMyMi0uMzc0SDE0OS43bC0uMzIyLjM3NFY1NC4zbC4zMjIuMzc0SDE0OC4xNGwuMzIyLS4zNzRWNTIuMzIxIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNzEuOTM3IC0yNy45MDYpIiBmaWxsPSIjNjY2Ii8+PHBhdGggZD0iTTE1OC42MzUsNTQuNzYzYTIuNzQ4LDIuNzQ4LDAsMCwxLTIuNjc3LTEuMjUyLDIuNzA1LDIuNzA1LDAsMCwxLC4wMjktMi45MzgsMi43NDksMi43NDksMCwwLDEsMi43LTEuMiwyLjcsMi43LDAsMCwxLDEuOTIuOCwyLjY1OCwyLjY1OCwwLDAsMSwuNzY3LDEuOTIxLDIuNTUyLDIuNTUyLDAsMCwxLS43NzEsMS45NDEsMi41OSwyLjU5LDAsMCwxLTEuOTcuNzI3bS4wNTQtNC45NjNhMi4wNTQsMi4wNTQsMCwwLDAtMS44MjcsMi4yOTUsMiwyLDAsMCwwLDEuODI3LDIuMjQxYy45NjcsMCwxLjgyNy0uODU0LDEuODI3LTIuMzQ4cy0uODYtMi4yNDEtMS44MjctMi4yNDEiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC03Ni45ODggLTI3Ljc4NikiIGZpbGw9IiM2NjYiLz48cGF0aCBkPSJNMTcyLjk4Myw1NC43MjN2LS4wNTNsLjMyMi0uMzc0LS40My0zLjg0Mi0xLjcyLDQuMzc2SDE3MS4xbC0xLjcyLTQuMzIyLS40MywzLjc4OS4zMjIuMzc0di4wNTNIMTY4LjJ2LS4wNTNsLjMyMi0uMzc0LjQ4NC00LjI2OS0uMjY5LS4zNzRWNDkuNmgxLjIzNmwxLjQsMy41MjIsMS40LTMuNTIySDE3NHYuMDUzbC0uMjY5LjUzNC40Myw0LjEwOS4zNzYuMzc0di4wNTNaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtODIuODg3IC0yNy45MDYpIiBmaWxsPSIjNjY2Ii8+PHBhdGggZD0iTTE4Ni44ODMsNTQuNzIzdi0uMDUzbC4zMjItLjM3NC0uNDMtMy44NDItMS43Miw0LjM3NkgxODVsLTEuNzItNC4zMjItLjQzLDMuNzg5LjMyMi4zNzR2LjA1M0gxODIuMXYtLjA1M2wuMzIyLS4zNzQuNDg0LTQuMjY5LS4yNjktLjM3NFY0OS42aDEuMjM2bDEuNCwzLjUyMiwxLjQtMy41MjJIMTg3Ljl2LjA1M2wtLjI2OS41MzQuNDMsNC4xMDkuMzc2LjM3NHYuMDUzWiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTg5LjM2MiAtMjcuOTA2KSIgZmlsbD0iIzY2NiIvPjxwYXRoIGQ9Ik0xOTkuMzc4LDU0Ljc2OWgtMy4yMjVsLjI2OS0uMzc0VjUwLjAybC0uMzIyLS4zMmgzLjMzMnYuNTg3bC0uOTE0LS4xNmgtMS4yMzZ2MS45MjFoLjgwNmwuNDMtLjIxM3YuODU0bC0uNDMtLjIxM2gtLjgwNnYxLjU0N2MwLC4zNzQuMTA4LjQyNy40ODQuNDI3aC43YTMuNCwzLjQsMCwwLDAsMS4xMjktLjMyWiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTk1Ljg3IC0yNy45NTIpIiBmaWxsPSIjNjY2Ii8+PHBhdGggZD0iTTMzLjYwOCwzOS4wODhhMjMuMzg5LDIzLjM4OSwwLDAsMSwzLjcwOC04LjhBMjMuNDc4LDIzLjQ3OCwwLDAsMSwzMy42MDgsMjMuNCwyMy40NzgsMjMuNDc4LDAsMCwxLDI5LjksMzAuMjg0YTIzLjMzNiwyMy4zMzYsMCwwLDEsMy43MDgsOC44bTEuODgxLTguNzUxYTI0Ljg1NywyNC44NTcsMCwwLDAtMS44ODEsMy41NzUsMjQuOCwyNC44LDAsMCwwLTEuODgxLTMuNTc1LDI0Ljg4NCwyNC44ODQsMCwwLDAsMS44ODEtMy4wOTUsMjUuMDQ2LDI1LjA0NiwwLDAsMCwxLjg4MSwzLjA5NSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTE4LjM5OSAtMTUuNjg2KSIgZmlsbD0iIzY2NiIvPjxwYXRoIGQ9Ik00NS4xOTQsNDIuNGEzNC40MzksMzQuNDM5LDAsMCwxLDcuNDcxLTE0LjNBMjIuMzU2LDIyLjM1NiwwLDAsMCwzOC4xLDQ0LjcsMjMuNzY3LDIzLjc2NywwLDAsMSw0NS4xNDEsNDIuNE00NS4zLDM0LjQ1YTIxLjI0MiwyMS4yNDIsMCwwLDEsMi4zNjUtMi4wMjgsMzUuOTM2LDM1LjkzNiwwLDAsMC0zLjcwOCw4LjY0NCwyNS4zNSwyNS4zNSwwLDAsMC0zLjQ5My45NjFBMjAuNjg2LDIwLjY4NiwwLDAsMSw0NS4zLDM0LjQ1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjIuMTkyIC0xNy44NzgpIiBmaWxsPSIjNjY2Ii8+PHBhdGggZD0iTTM1LjM3OCwxMi42MDlsMS44MjctLjY5NC0xLjgyNy0uNzQ3TDM0LjY4LDguNWwtLjc1MiwyLjY2OC0xLjgyNy43NDcsMS44MjcuNjk0Ljc1MiwyLjY2OFoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xOS40MTYgLTguNSkiIGZpbGw9IiM2NjYiLz48cGF0aCBkPSJNMTkuNjI2LDIwLjNsMS40LS41ODctMS40LS41MzRMMTkuMDM1LDE3LjEsMTguNSwxOS4xODFsLTEuNC41MzQsMS40LjU4Ny41MzcsMi4wMjhaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTIuNDc4IC0xMi41NikiIGZpbGw9IiM2NjYiLz48cGF0aCBkPSJNMTQuMywzNy4yNzhhMzQuMTQyLDM0LjE0MiwwLDAsMSwxLjcyLDUuMDY5LDIzLjcxMywyMy43MTMsMCwwLDEsNy4wNDEsMi4yOTUsMjIuMDQ1LDIyLjA0NSwwLDAsMC02LjEyNy0xMS4yNTlBMjIuMzgsMjIuMzgsMCwwLDAsOC41LDI4LjFhMzQuMzgzLDM0LjM4MywwLDAsMSw1LjgsOS4xNzhtNi40NDksNC43NDlhMjUuMTg3LDI1LjE4NywwLDAsMC0zLjQ5My0uOTZBMzUuODQ3LDM1Ljg0NywwLDAsMCwxNS43LDM2LjY5MWEzNS44NjQsMzUuODY0LDAsMCwwLTIuMTUtNC4yNjksMjEuMjM3LDIxLjIzNywwLDAsMSwyLjMxMSwyLjAyOCwyMC42ODYsMjAuNjg2LDAsMCwxLDQuODkxLDcuNjMxIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtOC41IC0xNy44NzgpIiBmaWxsPSIjNjY2Ii8+PHBhdGggZD0iTTUxLjI4OSwyMi4zMjlsLjUzNy0yLjAyOCwxLjQtLjU4Ny0xLjQtLjUzNEw1MS4yODksMTcuMWwtLjUzNywyLjA4MS0xLjQ1MS41MzQsMS40NTEuNTg3WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTI3LjM3MiAtMTIuNTYpIiBmaWxsPSIjNjY2Ii8+PHBhdGggZD0iTTEwLjIsNDIuODY5YTIzLjczOCwyMy43MzgsMCwwLDEsNC42NzYsMi43NzUsMzIuNjY2LDMyLjY2NiwwLDAsMC0xLjE4Mi0zLjJBMzMsMzMsMCwwLDAsMTEuMjc1LDM3LjhhMjMuNDkxLDIzLjQ5MSwwLDAsMS0xLjAyMSw1LjEyM20xLjYxMi0yLjA4MS45NjcsMi4wMjguMTA3LjMyLTEuNDUxLS44cS4yMTUtLjc0Ny4zNzYtMS41NDciIHRyYW5zZm9ybT0idHJhbnNsYXRlKC05LjI4NiAtMjIuNDAyKSIgZmlsbD0iIzY2NiIvPjxwYXRoIGQ9Ik01NC44LDQ1LjZhMjMuNzM3LDIzLjczNywwLDAsMSw0LjY3Ni0yLjc3NUEyMy41NDMsMjMuNTQzLDAsMCwxLDU4LjQ1NSwzNy43YTMyLjkxNywzMi45MTcsMCwwLDAtMy42LDcuOW0yLjEtMi44MjhxLjQzLTEuMDE0Ljk2Ny0yLjAyOC4xNjEuOC4zNzYsMS41NDdsLTEuNDUxLjguMTA3LS4zMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTMwLjA2NCAtMjIuMzU2KSIgZmlsbD0iIzY2NiIvPjwvZz48L2c+PC9zdmc+")
}

@media screen and (min-width: 768px) {
    #header_logo_img {
        width: 200px
    }
}

#header_btn {
    opacity: 0;
    width: 100%;
    padding: 0 6vw 4vh;
    position: fixed;
    left: 0;
    bottom: 0;
    transition: .2s;
    z-index: 20
}

@media screen and (min-width: 768px) {
    #header_btn {
        display: none
    }
}

#header_btn.active {
    opacity: 1
}

html,
body {
    font-family: "Josefin Sans", "Noto Sans JP", sans-serif;
    color: var(--clr-txt);
    font-size: 14px;
    font-size: clamp(14px, 3.733vw, 28px);
    font-weight: 400;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    border: none;
    overscroll-behavior: none;
    scroll-behavior: smooth
}

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

    html,
    body {
        font-size: 14px
    }
}

body {
    min-height: 100%;
    margin-top: 4.5rem;
    background: #fff;
    --clr-white: #FFF;
    --clr-txt: #323232;
    --clr-link: #2A7EC5;
    --clr-hover: #2FA7E6;
    --clr-txt-hover: #6CABE0;
    --clr-em: #467AAE;
    --clr-bg: #E2EAF2;
    --clr-footer: #41474A;
    --clr-black: #062340;
    --clr-menu: #666
}

body#front,
body#interview {
    margin-top: 0
}

@media screen and (min-width: 768px) {
    body {
        margin-top: 95px
    }
}

a {
    color: var(--clr-txt);
    font-size: .9285714286rem;
    text-decoration: none;
    cursor: pointer;
    transition: all .3s ease-in-out;
    display: inline-block;
    position: relative;
    word-break: break-all
}

a:not(.btn) {
    color: var(--clr-link);
    text-decoration: underline;
    transition: color .3s ease-in-out
}

a:not(.btn):hover {
    text-decoration: none;
    color: var(--clr-txt-hover)
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 500;
    line-height: 1.2666;
    vertical-align: middle;
    letter-spacing: .2em
}

h2 {
    color: var(--clr-em);
    font-size: 1.4285714286rem;
    margin-bottom: 2.5rem
}

h1[data-jp],
h2[data-jp],
h3[data-jp] {
    position: relative;
    display: block;
    color: var(--clr-txt);
    text-align: center;
    line-height: 1;
    margin: 0;
    padding: 0;
    font-family: "Noto Sans JP", sans-serif
}

h1[data-jp]>span,
h2[data-jp]>span,
h3[data-jp]>span {
    visibility: hidden;
    font-family: "Pinyon Script", cursive;
    position: relative;
    display: block;
    font-size: 5.5714285714rem;
    color: var(--clr-bg);
    margin: 0 auto;
    letter-spacing: 0
}

h1[data-jp]::after,
h2[data-jp]::after,
h3[data-jp]::after {
    content: attr(data-jp) "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.4285714286rem;
    font-weight: 700
}

h1[data-jp].border,
h2[data-jp].border,
h3[data-jp].border {
    display: inline-block;
    margin-bottom: 3.5714285714rem;
    min-width: 7.1428571429rem
}

h1[data-jp].border>span,
h2[data-jp].border>span,
h3[data-jp].border>span {
    font-size: 2.2857142857rem;
    color: var(--clr-txt)
}

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

    h1[data-jp].border>span,
    h2[data-jp].border>span,
    h3[data-jp].border>span {
        font-size: 64px;
        height: 64px
    }
}

h1[data-jp].border::after,
h2[data-jp].border::after,
h3[data-jp].border::after {
    position: relative;
    display: inline-block;
    font-size: 1.0714285714rem;
    padding: .4285714286rem 0 .6428571429rem
}

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

    h1[data-jp].border::after,
    h2[data-jp].border::after,
    h3[data-jp].border::after {
        padding: 16px 0 18px;
        font-size: 16px
    }
}

h1[data-jp].border::before,
h2[data-jp].border::before,
h3[data-jp].border::before {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    content: "";
    width: 7.1428571429rem;
    height: 1px;
    background: var(--clr-footer)
}

p {
    line-height: 2;
    letter-spacing: .1em;
    vertical-align: middle;
    font-size: .9285714286rem;
    font-family: "Noto Sans JP", sans-serif
}

.left {
    text-align: left !important
}

.right {
    text-align: right !important
}

.center {
    text-align: center !important
}

picture {
    max-width: 100%
}

picture img {
    width: 100%;
    height: auto;
    transition: all .5s ease-in-out
}

i {
    font-family: "regina_group" !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.icon_regina:before {
    content: "";
    color: #a37b51
}

.icon_homme:before {
    content: ""
}

.icon_etoile:before {
    content: "";
    color: #d2982a
}

.icon_official:before {
    content: ""
}

.icon_arr_r:before {
    content: ""
}

.icon_arr_rb:before {
    content: ""
}

.icon_arr_d:before {
    content: ""
}

.icon_plus:before {
    content: ""
}

.icon_minus:before {
    content: ""
}

.sp {
    display: block !important
}

@media screen and (min-width: 768px) {
    .sp {
        display: none !important
    }
}

.pc {
    display: none !important
}

@media screen and (min-width: 768px) {
    .pc {
        display: block !important
    }
}

.eng {
    font-family: "Pinyon Script", cursive;
    letter-spacing: 0
}

.dropdown+* {
    display: none
}

.job_list>ul {
    font-size: .7142857143rem;
    padding-top: 1em
}

.job_list>ul a {
    padding-left: 2em;
    text-indent: -2em;
    margin-bottom: 1em
}

.job_list>ul a::before {
    content: "∟";
    margin-right: .5em
}

a.btn {
    font-family: "Noto Sans JP", sans-serif;
    width: 18.5714285714rem;
    display: block;
    border: 1px solid var(--clr-link);
    background: rgba(0, 0, 0, 0);
    color: var(--clr-link);
    margin: 0 auto;
    padding: 1.5rem 1.4285714286rem 1.5rem;
    position: relative;
    letter-spacing: .1em;
    line-height: 1;
    font-size: 1rem;
    text-align: center;
    transition: background .5s ease-in-out, border .5s ease-in-out
}

a.btn>span.txt {
    margin-right: 3.4285714286rem
}

a.btn>span.arrow {
    position: absolute;
    display: inline-block;
    width: 3.4285714286rem;
    margin-left: -2em;
    transition: all .4s ease-in-out
}

a.btn>span.arrow::before {
    display: inline-block;
    content: "";
    width: 100%;
    height: 1px;
    margin: 0 auto .2em;
    background: var(--clr-link)
}

a.btn>span.arrow::after {
    content: "";
    position: absolute;
    height: 1px;
    margin: auto 0;
    background: var(--clr-link);
    bottom: .28em;
    right: .1em;
    width: .5em;
    transform: rotate(-140deg) translateX(-0.5em) translateY(0.45em);
    transform-origin: left bottom
}

a.btn:hover {
    color: var(--clr-white);
    background: var(--clr-hover);
    border: 1px solid var(--clr-hover)
}

a.btn:hover>span.arrow {
    width: 4.2857142857rem
}

a.btn:hover>span.arrow::before,
a.btn:hover>span.arrow::after {
    background: var(--clr-white)
}

a.btn.white {
    border: 1px solid var(--clr-white);
    color: var(--clr-white)
}

a.btn.white>span.arrow::before,
a.btn.white>span.arrow::after {
    background: var(--clr-white)
}

a.btn.white:hover {
    background: rgba(0, 0, 0, 0)
}

a.btn.bg {
    border: none;
    background: var(--clr-link);
    color: var(--clr-white)
}

a.btn.bg.white {
    background: var(--clr-white);
    color: var(--clr-link)
}

a.btn.bg.white>span.arrow::before,
a.btn.bg.white>span.arrow::after {
    background: var(--clr-link)
}

a.btn.bg.white:hover {
    background: var(--clr-white)
}

a.btn.bg>span.arrow::before,
a.btn.bg>span.arrow::after {
    background: var(--clr-white)
}

a.btn.bg:hover {
    background: var(--clr-hover)
}

a.btn.more {
    font-family: "Josefin Sans", "Noto Sans JP", sans-serif
}

@media screen and (min-width: 768px) {
    a.btn.more {
        width: 300px
    }
}

a.btn.more>span.arrow::after {
    bottom: .45em
}

a.btn.trans {
    border: none;
    padding: 1.3571428571rem 1.1428571429rem 1rem;
    background: rgba(39, 68, 91, .8);
    color: var(--clr-white);
    font-size: .8571428571rem
}

a.btn.trans>span.arrow::before,
a.btn.trans>span.arrow::after {
    background: var(--clr-white)
}

a.btn.big {
    width: 100%;
    font-size: 1.1428571429rem;
    padding-top: 1.8571428571rem;
    padding-bottom: 1.8571428571rem
}

@media screen and (min-width: 768px) {
    a.btn.big {
        width: 500px;
        padding-top: 40px;
        padding-bottom: 40px
    }
}

a.btn.big>span.arrow {
    width: 4.2857142857rem
}

a.btn.big:hover>span.arrow {
    width: 5.1428571429rem
}

a.btn.recruit {
    width: 100%;
    border-radius: 3em;
    box-shadow: 2px 2px 6px rgba(0, 0, 0, .16);
    border: none;
    background: var(--clr-link);
    color: var(--clr-white);
    font-size: 1.2857142857rem
}

@media screen and (min-width: 768px) {
    a.btn.recruit {
        width: 500px
    }
}

a.btn.recruit>span.arrow::before,
a.btn.recruit>span.arrow::after {
    background: var(--clr-white)
}

a.btn.recruit:hover {
    background: var(--clr-hover)
}

a.btn.round {
    border-radius: 3em
}

a.btn.disabled {
    pointer-events: none;
    border-color: #ccc;
    background: #ededed;
    color: var(--clr-txt)
}

a.btn.side {
    position: absolute;
    right: 0;
    bottom: -1.4em;
    opacity: .8;
    width: 50%
}

@media screen and (min-width: 768px) {
    a.btn.side {
        position: relative;
        right: auto
    }
}

a.btn.side>span {
    margin-left: -1em
}

a.btn.side>span.txt {
    margin-right: 1.7142857143rem
}

a.btn.side>span.arrow {
    width: 1.7142857143rem
}

a.btn.side:hover>span.arrow {
    width: 2.1428571429rem
}

a.btn.under {
    background: var(--clr-black);
    color: var(--clr-white);
    width: 100%;
    text-align: left
}

a.btn.under>span.txt {
    margin-left: 0;
    font-size: 1.1428571429rem
}

a.btn.under::after {
    font-family: "regina_group" !important;
    content: "";
    font-size: .8em;
    position: absolute;
    top: 52%;
    transform: translateY(-50%);
    right: 1.7142857143rem
}

a.btn.under:hover {
    background: var(--clr-link)
}

section {
    width: 100%;
    position: relative;
    overflow-x: hidden
}

section:first-of-type {
    padding-top: 1.7142857143rem
}

section>h1[data-jp] {
    margin-bottom: 4.5714285714rem
}

section .inner {
    margin: 0 auto;
    padding: 3.1428571429rem 1.4285714286rem
}

@media screen and (min-width: 960px) {
    section .inner {
        padding: 60px 0
    }
}

section .inner.np {
    padding-left: 0;
    padding-right: 0
}

section>.inner {
    max-width: 980px;
    width: 100%
}

section>.inner.pbn {
    padding-top: 1rem;
    padding-bottom: 0
}

section dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 1rem
}

section dl dt,
section dl dd {
    width: 100%;
    line-height: 1.8
}

@media screen and (min-width: 768px) {
    section dl dt {
        width: 7em;
        font-size: 14px
    }

    section dl dd {
        font-size: 16px;
        width: calc(100% - 7em)
    }
}

section .em {
    font-weight: 700
}

section .picef {
    opacity: .3
}

#recruit_ttl {
    position: absolute;
    top: 1.7142857143rem;
    left: 1.4285714286rem;
    display: block;
    margin-bottom: 0;
    line-height: 1;
    letter-spacing: .1em;
    z-index: 10
}

@media screen and (min-width: 768px) {
    #recruit_ttl {
        left: 50px
    }
}

#recruit_ttl>span {
    visibility: hidden;
    writing-mode: vertical-rl;
    color: #666;
    font-weight: 400;
    white-space: nowrap;
    font-size: 1.7142857143rem;
    line-height: 1;
    display: inline-block;
    margin: 0
}

@media screen and (min-width: 768px) {
    #recruit_ttl>span {
        font-size: 45px
    }
}

#notice .bnr {
    margin-top: 2.8571428571rem
}

.notice_box {
    width: 100%;
    border: 2px solid var(--clr-link);
    padding: 1.4285714286rem
}

.notice_box .ttl {
    font-size: 1.0714285714rem;
    font-weight: 700;
    margin-bottom: .5em
}

@media screen and (min-width: 768px) {
    .notice_box .list li {
        display: flex;
        justify-content: center;
        align-items: center
    }
}

.notice_box .list li::before {
    content: "NEW";
    color: var(--clr-link);
    font-size: .7857142857rem;
    font-weight: 700;
    letter-spacing: .1em;
    display: block;
    margin-bottom: .2em
}

@media screen and (min-width: 768px) {
    .notice_box .list li::before {
        margin: 0 1em 0 0;
        font-size: 1.1428571429rem
    }
}

.notice_box .list li:not(:last-of-type) {
    margin-bottom: 1em
}

.notice_box .list li a {
    font-size: 1.0714285714rem;
    line-height: 1.6;
    text-decoration-line: underline
}

.notice_box .list li.close::before {
    content: "CLOSE";
    color: #b4b4b4
}

.notice_box .list li.close a {
    color: #b4b4b4
}

.txtef {
    opacity: 0
}

.css-fade {
    animation-name: fade-in3;
    animation-duration: .3s;
    animation-timing-function: ease-out;
    animation-delay: .1s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: forwards
}

@keyframes fade-in3 {
    0% {
        opacity: 0;
        transform: translate3d(0, 50px, 0)
    }

    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0)
    }
}

.fade_txt {
    animation-name: txt-fade-in;
    animation-duration: .4s;
    animation-timing-function: ease-out;
    animation-delay: 0s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: forwards
}

@keyframes txt-fade-in {
    0% {
        filter: blur(10px);
        opacity: 0
    }

    100% {
        filter: blur(0px);
        opacity: 1
    }
}

.timeline {
    margin: 2.1428571429rem 0 0 0;
    padding: 0;
    list-style: none;
    position: relative
}

.timeline>li {
    position: relative;
    padding: 2rem 1rem
}

.timeline>li::before {
    content: "";
    position: absolute;
    z-index: 5;
    top: 0;
    bottom: 0;
    width: 1px;
    background: var(--clr-txt);
    left: 30%;
    margin-left: -1px;
    height: 0px;
    transition: .2s ease-out
}

@media screen and (min-width: 768px) {
    .timeline>li:nth-child(1)::before {
        transition-delay: .2s
    }

    .timeline>li:nth-child(2)::before {
        transition-delay: .4s
    }

    .timeline>li:nth-child(3)::before {
        transition-delay: .6s
    }

    .timeline>li:nth-child(4)::before {
        transition-delay: .8s
    }

    .timeline>li:nth-child(5)::before {
        transition-delay: 1s
    }

    .timeline>li:nth-child(6)::before {
        transition-delay: 1.2s
    }

    .timeline>li:nth-child(7)::before {
        transition-delay: 1.4s
    }

    .timeline>li:nth-child(8)::before {
        transition-delay: 1.6s
    }

    .timeline>li:nth-child(9)::before {
        transition-delay: 1.8s
    }

    .timeline>li:nth-child(10)::before {
        transition-delay: 2s
    }
}

.timeline>li.active:not(:last-child)::before {
    height: 100%
}

.timeline>li:nth-child(even) {
    background: #f7f7f7
}

.timeline>li:first-child {
    padding-top: 0
}

.timeline>li:first-child .time {
    top: -0.1em;
    font-size: 2rem
}

.timeline>li:first-child .tm {
    top: 0
}

.timeline>li .time {
    display: block;
    text-align: right;
    width: 25%;
    padding: 0;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 1rem;
    font-family: "Pinyon Script", cursive;
    line-height: 1
}

.timeline>li .work {
    margin: 0 0 0 35%;
    position: relative;
    padding-left: 1em
}

.timeline>li .work h3 {
    color: var(--clr-txt);
    text-align: left;
    padding: 0;
    margin-bottom: 0;
    font-size: 1.2857142857rem;
    line-height: 1
}

.timeline>li .work h3+p {
    margin-top: 1em;
    margin-bottom: 0
}

.timeline>li .tm {
    width: 12px;
    height: 12px;
    line-height: 24px;
    position: absolute;
    background: var(--clr-txt);
    border-radius: 50%;
    text-align: center;
    left: 30%;
    top: 2rem;
    margin: 0 0 0 -6px
}

@media screen and (min-width: 768px) {
    .schedule_timeline {
        display: flex;
        justify-content: space-around
    }
}

.schedule_timeline .timeline {
    margin: 0;
    padding: 0;
    list-style: none;
    position: relative
}

@media screen and (min-width: 768px) {
    .schedule_timeline .timeline {
        width: 400px
    }
}

.schedule_timeline .timeline>li {
    position: relative;
    padding: 0 0 1.9rem;
    background-color: rgba(0, 0, 0, 0)
}

@media screen and (min-width: 768px) {
    .schedule_timeline .timeline>li {
        padding-bottom: 54px
    }
}

.schedule_timeline .timeline>li::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    width: 1px;
    background: var(--clr-link);
    left: 30%;
    margin-left: -1px
}

.schedule_timeline .timeline>li .time {
    width: 20%;
    padding: 0;
    position: absolute;
    top: -0.2em;
    font-size: 1.2rem;
    font-weight: 700;
    font-family: "Noto Sans JP", sans-serif
}

@media screen and (min-width: 768px) {
    .schedule_timeline .timeline>li .time {
        font-size: 24px;
        top: -0.25em
    }
}

.schedule_timeline .timeline>li .work {
    position: relative;
    padding-left: 0
}

@media screen and (min-width: 768px) {
    .schedule_timeline .timeline>li .work {
        padding-left: 1em
    }
}

.schedule_timeline .timeline>li .work span {
    color: var(--clr-txt);
    text-align: left;
    font-weight: 400;
    font-size: .8571428571rem;
    line-height: 1.4;
    padding: 0;
    margin-bottom: 0
}

@media screen and (min-width: 768px) {
    .schedule_timeline .timeline>li .work span {
        font-size: 16px;
        top: -0.2em;
        line-height: 1
    }
}

.schedule_timeline .timeline>li .tm {
    width: 10px;
    height: 10px;
    line-height: 20px;
    background: var(--clr-link);
    top: 0
}

.schedule_timeline .timeline:first-child>li:last-child::before {
    height: 0
}

.schedule_timeline .timeline:first-child>li.active:last-child::before {
    height: 100%
}

@media screen and (min-width: 768px) {
    .schedule_timeline .timeline:first-child>li.active:last-child::before {
        height: 0
    }
}

.education_timeline {
    margin-bottom: 4.2857142857rem
}

.education_timeline:last-child {
    margin-bottom: 0
}

@media screen and (min-width: 768px) {
    .education_timeline .timeline {
        margin: 0
    }
}

.education_timeline .timeline>li {
    margin: 7.1428571429rem 0 0;
    padding: 0 2.1428571429rem 2.2857142857rem
}

@media screen and (min-width: 768px) {
    .education_timeline .timeline>li {
        margin: 0;
        padding: 4rem 2rem
    }
}

.education_timeline .timeline>li::before {
    height: 0;
    left: 2.2857142857rem
}

@media screen and (min-width: 768px) {
    .education_timeline .timeline>li::before {
        left: 40%;
        top: 4rem
    }
}

.education_timeline .timeline>li:last-child::before {
    height: 0
}

.education_timeline .timeline>li.active:not(:last-child)::before {
    height: calc(100% + 7.1428571429rem)
}

@media screen and (min-width: 768px) {
    .education_timeline .timeline>li.active:not(:last-child)::before {
        height: 100%
    }
}

.education_timeline .timeline>li .time {
    position: absolute;
    top: -7.1428571429rem;
    left: 0;
    right: 0;
    line-height: 1;
    width: 100%;
    margin: 0 auto;
    padding: 1em 0 2em;
    text-align: center;
    display: block;
    color: var(--clr-txt);
    font-size: 2.2857142857rem;
    font-weight: 400;
    z-index: 0
}

@media screen and (min-width: 768px) {
    .education_timeline .timeline>li .time {
        display: block;
        text-align: right;
        width: calc(40% - 3rem);
        height: auto;
        padding: 0;
        position: absolute;
        top: 40px;
        left: 0;
        height: auto;
        right: auto;
        font-size: 40px
    }
}

.education_timeline .timeline>li .time span {
    font-size: 3.4285714286rem
}

.education_timeline .timeline>li .tm {
    top: 0;
    left: 2.2857142857rem
}

@media screen and (min-width: 768px) {
    .education_timeline .timeline>li .tm {
        left: 40%;
        top: 4rem
    }
}

.education_timeline .timeline>li .work {
    margin: 0 0 0 2rem;
    position: relative;
    padding-left: 0
}

@media screen and (min-width: 768px) {
    .education_timeline .timeline>li .work {
        margin: 0 0 0 calc(40% + 3rem);
        width: 410px
    }
}

@media screen and (min-width: 768px) {
    .education_timeline .timeline>li .work h3 {
        font-size: 24px
    }
}

.education_timeline .timeline>li .work h3>span::before {
    content: "｜";
    margin: 0 .2em;
    line-height: 1
}

.education_timeline .timeline>li .work h3+p {
    text-align: left
}

.education_timeline .timeline>li:nth-child(even) .time {
    background: #f7f7f7
}

.education_timeline .timeline.rv>li {
    background: #f7f7f7
}

.education_timeline .timeline.rv>li:nth-child(even) {
    background: var(--clr-white)
}

.education_timeline .timeline.rv>li:nth-child(even) .time {
    background: var(--clr-white)
}

.education_timeline .timeline.rv>li .time {
    background: #f7f7f7
}

section[id^=recruit-] {
    padding-bottom: 4.2857142857rem
}

#recruit_message_body {
    position: relative;
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap
}

#recruit_message_body>picture {
    width: 100%;
    max-height: 380px;
    overflow: hidden
}

@media screen and (min-width: 768px) {
    #recruit_message_body>picture {
        width: 50%;
        max-height: 630px;
        overflow: hidden;
        position: absolute;
        left: 0;
        top: 0;
        z-index: -1
    }
}

#recruit_message_body>picture img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

#recruit_message_body>div {
    width: 100%;
    padding: 2.8571428571rem 0 0
}

@media screen and (min-width: 768px) {
    #recruit_message_body>div {
        /* width: 52% */
    }
}

#recruit_message_body h2 {
    display: inline-block;
    color: var(--clr-txt);
    font-size: 1.4285714286rem;
    text-align: left;
    line-height: 1.4;
    background: #e2eaf2
}

@media screen and (min-width: 768px) {
    #recruit_message_body h2 {
        font-size: 24px
    }
}

#recruit_message_body p {
    margin-bottom: 2em;
    font-size: 1rem;
    line-height: 2
}

@media screen and (min-width: 768px) {
    #recruit_message_body p {
        font-size: 16px
    }
}

#recruit_message_body .name {
    text-align: right;
    font-weight: 700;
    font-size: 1.1em;
    margin-bottom: 1em
}

#recruit_message_body .sign {
    text-align: right;
    margin: 0
}

#recruit_message_body .sign picture img {
    max-width: 310px;
    margin: 0
}

#recruit-interview .selector {
    display: block
}

@media screen and (min-width: 768px) {
    #recruit-interview .selector {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        grid-template-rows: 1fr 1fr;
        grid-column-gap: 0px;
        grid-row-gap: 0px;
        justify-items: stretch;
        align-items: stretch
    }
}

#recruit-interview .selector>a {
    margin-bottom: 3.5714285714rem;
    position: relative;
    width: 100%;
    aspect-ratio: 5/3;
    display: block;
    overflow: hidden;
    opacity: .3
}

@media screen and (min-width: 768px) {
    #recruit-interview .selector>a {
        aspect-ratio: 163/125;
        margin-bottom: 40px
    }
}

#recruit-interview .selector>a::before {
    display: block;
    content: "";
    background: rgba(155, 155, 155, .2);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5
}

#recruit-interview .selector>a>picture {
    width: 100%;
    height: 100%
}

#recruit-interview .selector>a>picture img {
    position: absolute;
    top: -8px;
    left: -8px;
    width: calc(100% + 16px);
    height: calc(100% + 16px);
    object-fit: cover;
    transition-property: transform;
    transition-timing-function: ease-out;
    transition-duration: .3s
}

#recruit-interview .selector>a>h3 {
    position: absolute;
    z-index: 5;
    bottom: 5.7142857143rem;
    left: 1.4285714286rem;
    line-height: 1;
    font-size: 2.2857142857rem;
    letter-spacing: .1em;
    color: var(--clr-white);
    transition: transform .1s ease-out
}

@media screen and (min-width: 768px) {
    #recruit-interview .selector>a>h3 {
        font-size: 40px;
        letter-spacing: .1em
    }
}

#recruit-interview .selector>a>p {
    position: absolute;
    z-index: 5;
    bottom: 1.1428571429rem;
    left: 0;
    padding: 1rem 1.4285714286rem .9rem;
    font-size: 1rem;
    font-weight: 400;
    background: rgba(79, 170, 217, .5);
    color: var(--clr-white);
    line-height: 1.4
}

#recruit-interview .selector>a:hover>picture::after {
    background: rgba(0, 0, 0, .1);
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 100%;
    display: block
}

#recruit-interview .selector>a:hover>picture img {
    transform: scale(1.05, 1.05);
    filter: blur(4px)
}

#recruit-interview .crosstalk {
    margin: 0 1.4285714286rem;
    padding: 1.4285714286rem;
    position: relative;
    width: calc(100% - 2.8571428571rem);
    aspect-ratio: 337/178;
    display: flex;
    justify-content: center;
    align-items: center;
    background: url("../img/recruit/interview_crosstalk_bg.png");
    background-repeat: no-repeat;
    background-size: cover
}

@media screen and (min-width: 768px) {
    #recruit-interview .crosstalk {
        justify-content: flex-start;
        align-items: flex-end;
        margin: 0;
        padding: 30px;
        aspect-ratio: 98/25;
        width: 100%;
        background-image: url("../img/recruit/interview_crosstalk_bg_pc.png")
    }

    #recruit-interview .crosstalk>div {
        width: 66.6666666667%
    }

    #recruit-interview .crosstalk a.btn.side {
        width: 240px;
        margin-left: 54px;
        bottom: 0
    }
}

#recruit-interview .crosstalk h2 {
    text-align: left;
    color: var(--clr-white);
    margin: 0 0 1em;
    font-size: 1.1428571429rem;
    font-weight: 700
}

#recruit-interview .crosstalk p {
    text-align: left;
    color: var(--clr-white);
    margin: 0
}

#interview-detail {
    margin: 0;
    padding-top: 0
}

#interview-detail #recruit_ttl {
    margin-top: 4.5rem
}

#interview-detail #recruit_ttl>span {
    color: var(--clr-white)
}

@media screen and (min-width: 768px) {
    #interview-detail #recruit_ttl>span {
        font-size: 40px
    }
}

#interview-detail #fv {
    position: relative
}

#interview-detail #fv picture img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

@media screen and (min-width: 768px) {
    #interview-detail #fv picture img {
        height: 700px
    }
}

#interview-detail #fv>div {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    padding: .5em 1.4285714286rem;
    background: rgba(14, 98, 142, .4)
}

#interview-detail #fv>div .inner {
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center
}

@media screen and (min-width: 768px) {
    #interview-detail #fv>div .inner {
        margin: 0 auto;
        max-width: 960px;
        align-items: flex-start
    }
}

#interview-detail #fv>div .inner h1 {
    color: var(--clr-white);
    font-size: 3.2142857143rem
}

#interview-detail #fv>div .inner div {
    display: flex;
    color: var(--clr-white)
}

#interview-detail #fv>div .inner div>span {
    font-size: 2.6428571429rem;
    letter-spacing: .1em;
    margin-right: .5em
}

#interview-detail #fv>div .inner div>p {
    line-height: 1.4;
    text-align: right
}

#interview-detail .interview {
    width: 100%;
    padding-bottom: 0
}

@media screen and (min-width: 768px) {
    #interview-detail .interview {
        max-width: 100%
    }
}

#interview-detail .interview .box {
    position: relative;
    margin-bottom: 2.8571428571rem
}

#interview-detail .interview .box .q {
    position: relative;
    display: block;
    width: 100%;
    padding-bottom: 1.4285714286rem;
    margin-bottom: 1.7142857143rem;
    font-size: 1.2857142857rem;
    font-weight: 700;
    line-height: 1.4
}

@media screen and (min-width: 768px) {
    #interview-detail .interview .box .q {
        font-size: 24px
    }
}

#interview-detail .interview .box .q::after {
    position: absolute;
    bottom: 0;
    left: 0;
    content: "";
    display: block;
    width: 14.2857142857rem;
    height: 1px;
    background: #2a7ec5
}

#interview-detail .interview .box .a {
    display: block;
    width: 100%;
    margin-bottom: 2.8571428571rem
}

@media screen and (min-width: 768px) {
    #interview-detail .interview .box .a {
        font-size: 16px
    }
}

@media screen and (min-width: 768px) {
    #interview-detail .interview .box {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        margin: 0 auto 80px
    }

    #interview-detail .interview .box .txt {
        padding-left: calc(50% - 490px);
        padding-right: 40px;
        width: calc(100% - 600px)
    }

    #interview-detail .interview .box picture {
        display: block
    }

    #interview-detail .interview .box picture img {
        width: 600px;
        height: 420px;
        object-fit: cover
    }

    #interview-detail .interview .box:nth-child(even) {
        flex-direction: row-reverse
    }

    #interview-detail .interview .box:nth-child(even) .txt {
        padding-right: calc(50% - 490px);
        padding-left: 40px
    }
}

#interview-detail #like h2 {
    position: relative;
    padding: 1.1428571429rem 1em .5714285714rem;
    text-align: center;
    background: #7faceb;
    font-size: 1.2857142857rem;
    color: var(--clr-white)
}

@media screen and (min-width: 768px) {
    #interview-detail #like h2 {
        font-size: 30px
    }
}

#interview-detail #like h2::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -7px;
    border-style: solid;
    border-width: 13px 7px 0 7px;
    border-color: #7faceb rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0)
}

@media screen and (min-width: 768px) {
    #interview-detail #like h2::before {
        margin-left: -10px;
        border-width: 20px 10px 0 10px
    }
}

#interview-detail #like h2>span {
    color: #fff852
}

#interview-detail #like .inner {
    padding-top: 0
}

#interview-detail #like .inner p {
    position: relative;
    padding: 1em 1em .5em 1em;
    font-size: 1.7142857143rem;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: .07em
}

@media screen and (min-width: 768px) {
    #interview-detail #like .inner p {
        text-align: center;
        font-size: 40px
    }
}

#interview-detail #like .inner p::before,
#interview-detail #like .inner p::after {
    content: "";
    width: 5.4285714286rem;
    height: 5.6428571429rem;
    position: absolute;
    display: inline-block
}

#interview-detail #like .inner p::before {
    border-left: solid 1px #7faceb;
    border-top: solid 1px #7faceb;
    top: 0;
    left: 0
}

#interview-detail #like .inner p::after {
    border-right: solid 1px #7faceb;
    border-bottom: solid 1px #7faceb;
    bottom: 0;
    right: 0
}

#interview-detail #like .inner p b {
    background: linear-gradient(transparent 40%, #FFF852 40%)
}

#other_interview .inner {
    text-align: center
}

#other_interview .inner h2 {
    font-weight: bold;
    font-size: 1.2857142857rem;
    letter-spacing: .1em;
    margin-bottom: 2.1428571429rem;
    color: var(--clr-txt)
}

#other_interview .inner>div {
    position: relative;
    z-index: 0;
    width: calc(100% + 1.4285714286rem);
    overflow-x: auto
}

#other_interview .inner>div>div {
    width: calc(((100vw/3) + 1.1428571429rem)*5);
    display: flex;
    justify-items: flex-start;
    align-items: flex-start
}

@media screen and (min-width: 768px) {
    #other_interview .inner>div>div {
        width: 100%;
        justify-content: center
    }
}

#other_interview .inner>div>div>a {
    display: block;
    width: 33.3333333333vw;
    color: var(--clr-txt);
    margin-right: 1.1428571429rem;
    text-decoration: none
}

@media screen and (min-width: 768px) {
    #other_interview .inner>div>div>a {
        width: 176px
    }
}

#other_interview .inner>div>div>a:last-child {
    margin-right: 1.4285714286rem
}

#other_interview .inner>div>div>a>picture img {
    height: 33.3333333333vw;
    border-radius: 50%;
    object-fit: cover
}

@media screen and (min-width: 768px) {
    #other_interview .inner>div>div>a>picture img {
        height: 176px
    }
}

#other_interview .inner>div>div>a p {
    line-height: 1.8;
    margin-top: 1em;
    text-align: center;
    font-size: .8em
}

@media screen and (min-width: 768px) {
    #other_interview .inner>div>div>a p {
        font-size: 14px
    }
}

#schedule {
    background: #d1deed;
    overflow: hidden
}

#schedule .inner {
    padding-top: 0
}

#schedule h2[data-jp] {
    margin-bottom: 2.1428571429rem
}

@media screen and (min-width: 768px) {
    #schedule h2[data-jp]>span {
        top: -0.2em;
        font-size: 178px
    }

    #schedule h2[data-jp]::after {
        font-size: 32px
    }
}

#recruit-cross-talk #fv {
    position: relative;
    display: flex;
    justify-content: flex-end
}

#recruit-cross-talk #fv>picture {
    width: calc(100% - 4.2857142857rem)
}

@media screen and (min-width: 768px) {
    #recruit-cross-talk #fv>picture {
        width: calc(50vw + 300px);
        height: 380px
    }

    #recruit-cross-talk #fv>picture img {
        height: 100%;
        object-fit: cover
    }
}

#recruit-cross-talk p[class^=crosstalk_member_] {
    position: relative;
    display: flex;
    width: 100%;
    margin-bottom: .7142857143rem;
    font-size: .9285714286rem
}

@media screen and (min-width: 768px) {
    #recruit-cross-talk p[class^=crosstalk_member_] {
        font-size: 1rem
    }
}

#recruit-cross-talk p[class^=crosstalk_member_] b {
    color: #069ee2;
    font-weight: 700
}

#recruit-cross-talk p[class^=crosstalk_member_]>span {
    position: relative;
    display: block;
    width: 82%;
    margin-left: 1.4285714286rem;
    background: #ccc;
    border-radius: 13px;
    padding: 1rem
}

@media screen and (min-width: 768px) {
    #recruit-cross-talk p[class^=crosstalk_member_]>span {
        padding: 26px 28px 20px;
        width: calc(100% - 80px)
    }
}

#recruit-cross-talk p[class^=crosstalk_member_]>span::before {
    content: "";
    display: block;
    position: absolute;
    top: 36px;
    left: -13px;
    border-style: solid;
    border-width: 7px 13px 7px 0;
    border-color: rgba(0, 0, 0, 0) #ccc rgba(0, 0, 0, 0) rgba(0, 0, 0, 0)
}

#recruit-cross-talk p[class^=crosstalk_member_]::before {
    content: "";
    display: block;
    width: 18%;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: left top 13px
}

@media screen and (min-width: 768px) {
    #recruit-cross-talk p[class^=crosstalk_member_]::before {
        width: 80px
    }
}

#recruit-cross-talk p.crosstalk_member_yh>span {
    background: #ecf1fa
}

#recruit-cross-talk p.crosstalk_member_yh>span::before {
    border-color: rgba(0, 0, 0, 0) #ecf1fa rgba(0, 0, 0, 0) rgba(0, 0, 0, 0)
}

#recruit-cross-talk p.crosstalk_member_yh::before {
    background-image: url("../img/recruit/crosstalk_yh@2x.png")
}

#recruit-cross-talk p.crosstalk_member_ca>span {
    background: #fdf3e8
}

#recruit-cross-talk p.crosstalk_member_ca>span::before {
    border-color: rgba(0, 0, 0, 0) #fdf3e8 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0)
}

#recruit-cross-talk p.crosstalk_member_ca::before {
    background-image: url("../img/recruit/crosstalk_ca@2x.png")
}

#recruit-cross-talk p.crosstalk_member_ri>span {
    background: #ededed
}

#recruit-cross-talk p.crosstalk_member_ri>span::before {
    border-color: rgba(0, 0, 0, 0) #ededed rgba(0, 0, 0, 0) rgba(0, 0, 0, 0)
}

#recruit-cross-talk p.crosstalk_member_ri::before {
    background-image: url("../img/recruit/crosstalk_ri@2x.png")
}

#recruit-cross-talk h3 {
    color: var(--clr-txt);
    text-align: left;
    line-height: 1.8;
    font-size: 1.1428571429rem;
    font-weight: 700;
    margin-bottom: 2em
}

#recruit-cross-talk h3::before {
    content: "―――"
}

#recruit-cross-talk h3:not(:first-of-type) {
    margin-top: 2.6428571429rem
}

#recruit-cross-talk .crosstalk {
    max-width: 760px
}

#recruit-cross-talk .crosstalk picture.left_stretch {
    margin-top: 2.1428571429rem;
    margin-left: -1.4285714286rem
}

@media screen and (min-width: 768px) {
    #recruit-cross-talk .crosstalk picture.left_stretch {
        position: relative;
        left: calc(-50vw + 380px);
        display: block;
        margin-left: 0;
        max-width: 100vw;
        width: calc(50vw + 300px);
        height: 380px
    }

    #recruit-cross-talk .crosstalk picture.left_stretch img {
        height: 100%;
        object-fit: cover
    }
}

#crosstalk_member_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 3em 0
}

@media screen and (min-width: 768px) {
    #crosstalk_member_list {
        width: 640px;
        margin: 82px auto 110px
    }
}

#crosstalk_member_list>div {
    width: calc(33.3333333333% - 1em)
}

@media screen and (min-width: 768px) {
    #crosstalk_member_list>div {
        width: 160px
    }
}

#crosstalk_member_list>div>picture {
    margin-bottom: 1em
}

#crosstalk_member_list>div>p {
    margin: 0;
    text-align: center;
    line-height: 1.8
}

#recruit-benefits {
    padding-bottom: 0
}

#recruit-benefits .bg {
    background: #d1deed
}

@media screen and (min-width: 768px) {
    #recruit-benefits .bg .inner {
        margin: 0 auto;
        max-width: 980px
    }
}

#recruit-benefits>.inner {
    padding-left: 2.8571428571rem;
    padding-right: 2.8571428571rem
}

@media screen and (min-width: 768px) {
    #recruit-benefits>.inner {
        max-width: 490px
    }
}

#benefit {
    display: flex;
    flex-wrap: wrap
}

#benefit .benefit_box {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column
}

@media screen and (min-width: 768px) {
    #benefit .benefit_box {
        width: 50%
    }
}

#benefit .benefit_box>div {
    width: 100%;
    background: var(--clr-white);
    border-top: 1px #ccc solid;
    border-left: 1px #ccc solid;
    border-right: 1px #ccc solid;
    padding: 1.5rem 1rem
}

@media screen and (min-width: 768px) {
    #benefit .benefit_box>div {
        padding: 32px
    }
}

#benefit .benefit_box>div:last-child {
    border-bottom: 1px #ccc solid
}

#benefit .benefit_box>div>h3 {
    color: var(--clr-txt);
    font-size: 1.4285714286rem;
    text-align: left;
    margin-bottom: 1.1428571429rem;
    display: flex;
    align-items: center;
    line-height: 1
}

#benefit .benefit_box>div>h3>svg {
    margin-right: 1em;
    width: 64px;
    height: 50px
}

@media screen and (min-width: 768px) {
    #benefit .benefit_box:not(:first-child) {
        margin-top: 3rem
    }
}

#benefit .benefit_box:not(:first-child)>div:first-child {
    border-top: 0
}

@media screen and (min-width: 768px) {
    #benefit .benefit_box:not(:first-child) {
        border-top: 1px #ccc solid
    }
}

#education_link {
    background: url("../img/recruit/benefits_education_bg.png");
    background-repeat: no-repeat;
    background-size: cover;
    padding: 0;
    position: relative
}

@media screen and (min-width: 768px) {
    #education_link {
        background-image: url("../img/recruit/benefits_education_bg_pc.png")
    }
}

#education_link::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    background-color: rgba(71, 34, 12, .3);
    z-index: 0
}

#education_link .inner {
    position: relative;
    z-index: 1;
    padding: 4.8571428571rem 1.4285714286rem;
    text-align: center
}

#education_link .inner h2 {
    color: var(--clr-white);
    font-size: 1.4285714286rem
}

#recruit-faq h2 {
    text-align: center
}

#recruit-faq .accordion {
    width: 100%
}

#recruit-faq .accordion:first-of-type {
    border-top: #779fc7 1px solid
}

#recruit-faq .accordion>.cont {
    display: none;
    padding: 1.7142857143rem 1.4285714286rem;
    background: var(--clr-white);
    line-height: 1.4;
    border-bottom: #779fc7 1px solid
}

#recruit-faq .accordion>.cont>p {
    margin: 0
}

@media screen and (min-width: 768px) {
    #recruit-faq .accordion>.cont>p {
        font-size: 14px
    }
}

#recruit-faq .accordion .ttl {
    cursor: pointer;
    position: relative;
    padding: 1.4285714286rem;
    font-weight: 700;
    border-bottom: #779fc7 1px solid;
    background: #e4eef8;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap
}

#recruit-faq .accordion .ttl::before,
#recruit-faq .accordion .ttl::after {
    content: "";
    display: block;
    position: absolute;
    font-size: 1.4285714286rem;
    font-weight: 400;
    line-height: 1.4;
    color: #467aae;
    transform-origin: 50% 50%;
    transition: all .25s ease-out
}

#recruit-faq .accordion .ttl::before {
    top: 1.4285714286rem;
    content: "Q"
}

#recruit-faq .accordion .ttl::after {
    font-size: 1.1428571429rem;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    font-family: "regina_group" !important;
    content: ""
}

#recruit-faq .accordion .ttl.active:after {
    transform: rotate(-180deg) translateY(50%);
    content: ""
}

#recruit-faq .accordion .ttl p {
    width: 100%;
    padding: 0 1.8571428571rem 0 2.5rem;
    line-height: 1.4;
    margin-bottom: 0;
    font-size: 1rem
}

@media screen and (min-width: 768px) {
    #recruit-faq .accordion .ttl p {
        font-size: 16px
    }
}

#recruit-education .inner:first-of-type {
    padding-left: 2.8571428571rem;
    padding-right: 2.8571428571rem
}

@media screen and (min-width: 768px) {
    #recruit-education .inner>p {
        text-align: center
    }
}

@media screen and (min-width: 768px) {
    #recruit-education .pc_order {
        display: flex;
        flex-direction: column
    }
}

#recruit-education .pc_order h2 {
    line-height: 1;
    margin-bottom: 2.2857142857rem;
    font-size: 1.4285714286rem
}

@media screen and (min-width: 768px) {
    #recruit-education .pc_order h2 {
        font-size: 24px;
        margin-bottom: 45px
    }
}

#recruit-education .pc_order picture {
    position: relative;
    margin-bottom: 3rem
}

@media screen and (min-width: 768px) {
    #recruit-education .pc_order picture {
        order: -1;
        left: calc(-50vw + 490px - 237px);
        right: auto;
        max-width: 100vw;
        width: calc(50vw + 490px);
        height: 345px;
        margin-bottom: 82px
    }

    #recruit-education .pc_order picture img {
        height: 100%;
        object-fit: cover
    }
}

@media screen and (min-width: 768px) {
    #recruit-education .pc_order:first-of-type picture {
        left: auto;
        right: -237px
    }
}

#recruit-education .education_timeline_ttl {
    margin-bottom: 0
}

#recruit-education .education_timeline_ttl+.education_timeline {
    padding-top: .1rem
}

#recruit_clinic_menu {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap
}

@media screen and (min-width: 768px) {
    #recruit_clinic_menu {
        justify-content: center
    }
}

#recruit_clinic_menu>a {
    margin: 0 0 1rem;
    border: none
}

@media screen and (min-width: 768px) {
    #recruit_clinic_menu>a {
        width: 233px;
        max-width: 100%
    }

    #recruit_clinic_menu>a:not(:last-child) {
        margin-right: 16px
    }
}

.recruit_clinic_list_ttl {
    position: relative;
    border-bottom: dashed 1px var(--clr-em);
    text-align: left;
    padding: 4.5rem 1em .5em;
    margin-top: -4.5rem;
    margin-bottom: 2.2857142857rem;
    color: var(--clr-em);
    font-size: 1.1428571429rem
}

@media screen and (min-width: 768px) {
    .recruit_clinic_list_ttl {
        padding-top: 95px;
        margin-top: -95px
    }
}

.recruit_clinic_list_ttl::before {
    content: "";
    display: block;
    background: var(--clr-em);
    width: 3px;
    height: 1em;
    position: absolute;
    left: 0
}

.recruit_clinic_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 3.1428571429rem
}

.recruit_clinic_list>div {
    width: 100%;
    margin-bottom: 1.1428571429rem;
    padding-top: 4.5rem;
    margin-top: -4.5rem
}

@media screen and (min-width: 768px) {
    .recruit_clinic_list>div {
        width: calc(50% - 12px);
        margin-bottom: 24px;
        padding-top: 95px;
        margin-top: -95px
    }
}

.recruit_clinic_list>div>div.body {
    width: 100%;
    padding: 2rem 1rem;
    border-right: 1px solid #779fc7;
    border-left: 1px solid #779fc7;
    border-bottom: 1px solid #779fc7;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
    grid-column-gap: 1.1428571429rem;
    justify-items: stretch;
    align-items: stretch
}

.recruit_clinic_list>div>div.body>div {
    text-align: center
}

.recruit_clinic_list>div>div.body>div:nth-last-of-type(n+3) {
    margin-bottom: 1.5rem
}

.recruit_clinic_list>div>div.body>div>span {
    font-weight: 700;
    display: block;
    margin-bottom: .7857142857rem;
    font-size: .9285714286rem
}

.recruit_clinic_list>div>div.body>div>a.btn {
    width: 100%;
    position: relative;
    z-index: 5;
    padding: 1em .5em;
    font-size: .8571428571rem;
    border-radius: 3em
}

.recruit_clinic_list>div>div.body>div>a.btn>span.txt {
    margin-right: 1em
}

.recruit_clinic_list>div>div.body>div>a.btn::after {
    font-family: "regina_group" !important;
    content: "";
    position: absolute;
    top: 52%;
    transform: translateY(-50%);
    margin-left: -0.5em;
    font-size: .5714285714rem
}

.recruit_clinic_list>div>div.body>div>a.btn.disabled>span.txt {
    margin-right: .5em
}

.apply_clinic_header {
    position: relative;
    display: block;
    padding: 1rem;
    background: #779fc7;
    width: 100%;
    color: var(--clr-white);
    font-size: 1.1428571429rem
}

.apply_clinic_header h4 {
    line-height: 1
}

#careers_ttl {
    display: flex;
    justify-content: center;
    background: var(--clr-em);
    color: var(--clr-white);
    padding: .5714285714rem 1em;
    font-size: 1.1428571429rem;
    letter-spacing: .2em;
    width: 100%
}

@media screen and (min-width: 768px) {
    #careers_ttl {
        font-size: 20px
    }
}

#careers_box {
    display: block;
    width: 100%
}

#careers_box dl {
    position: relative;
    margin: 0;
    padding: 2.2857142857rem 0 0;
    letter-spacing: .2em
}

#careers_box dl:not(:last-child) {
    padding-bottom: 2.2857142857rem;
    border-bottom: #d1deeb 1px solid
}

#careers_box dl dt {
    display: block;
    width: 100%;
    margin-bottom: 1rem;
    text-align: center;
    font-weight: 700
}

@media screen and (min-width: 768px) {
    #careers_box dl dt {
        font-size: 18px
    }
}

#careers_box dl dd {
    display: block;
    width: 100%;
    position: relative;
    padding: 1.4285714286rem 1.1428571429rem;
    background: #d0e4fa;
    font-size: .9285714286rem
}

@media screen and (min-width: 768px) {
    #careers_box dl dd {
        padding: 25px 40px;
        font-size: 16px
    }

    #careers_box dl dd p {
        font-size: 16px
    }
}

#careers_box dl dd::before {
    content: "";
    position: absolute;
    top: -14px;
    left: 50%;
    margin-left: -5px;
    border-style: solid;
    border-width: 0 5px 15px 5px;
    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #d0e4fa rgba(0, 0, 0, 0)
}

@media screen and (min-width: 768px) {
    #careers_box dl dd::before {
        margin-left: -10px;
        border-width: 0 10px 20px 10px
    }
}

#careers_box dl.address dd {
    text-align: center;
    background: rgba(0, 0, 0, 0);
    padding: 0
}

#careers_box dl.address dd::before {
    display: none
}

@media screen and (min-width: 768px) {
    #careers_box ul {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        grid-template-rows: 1fr;
        grid-column-gap: 48px;
        grid-row-gap: 0px;
        justify-items: stretch;
        align-items: stretch
    }
}

#careers_box ul li::before {
    content: "・"
}

#flow {
    background: #e4eef8
}

#flow h2 {
    font-size: 1.4285714286rem;
    color: var(--clr-txt);
    font-weight: 700;
    text-align: center
}

#recruit_careers_flow {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 3.9285714286rem
}

#recruit_careers_flow>div {
    border: 1px solid var(--clr-link);
    background: var(--clr-white);
    padding: 1rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    line-height: 1;
    height: 11rem
}

@media screen and (min-width: 768px) {
    #recruit_careers_flow>div {
        width: 106px;
        height: 320px;
        padding: 60px 0
    }

    #recruit_careers_flow>div p {
        font-size: 20px;
        letter-spacing: .8em
    }

    #recruit_careers_flow>div span {
        font-size: 32px;
        font-weight: 400
    }
}

#recruit_careers_flow>div span {
    color: var(--clr-link);
    font-size: 1.15rem;
    margin-bottom: 1rem;
    font-weight: 700
}

#recruit_careers_flow>div p {
    writing-mode: vertical-rl;
    line-height: 1;
    box-sizing: border-box;
    letter-spacing: .5em;
    font-weight: 700;
    font-size: 1.05rem;
    padding-right: .5em
}

span.flowarrow {
    position: relative
}

span.flowarrow::before {
    display: inline-block;
    content: "";
    width: 2.5em;
    height: 2px;
    margin: 0 auto .2em;
    background: var(--clr-link)
}

@media screen and (min-width: 768px) {
    span.flowarrow::before {
        width: 80px
    }
}

span.flowarrow::after {
    content: "";
    position: absolute;
    height: 2px;
    margin: auto 0;
    background: var(--clr-link);
    top: .3em;
    right: .18em;
    width: .5em;
    transform: rotate(-140deg) translateX(-0.5em) translateY(0.45em);
    transform-origin: left bottom
}

#recruit_careers_interview_list h2 {
    font-size: 1.4285714286rem;
    color: var(--clr-txt);
    font-weight: 700;
    text-align: center
}

#recruit_careers_interview>a {
    border: solid #ccc 1px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    height: 7.1428571429rem;
    margin-bottom: 1rem;
    text-decoration: none
}

@media screen and (min-width: 768px) {
    #recruit_careers_interview>a {
        width: 480px;
        height: 142px;
        margin-right: 1rem
    }

    #recruit_careers_interview>a:nth-child(2n) {
        margin-right: 0
    }

    #recruit_careers_interview>a>picture {
        width: 190px
    }

    #recruit_careers_interview>a>p {
        width: calc(100% - 190px)
    }
}

#recruit_careers_interview>a:last-child {
    margin-bottom: 0
}

#recruit_careers_interview>a>picture {
    width: 35%;
    height: 100%
}

#recruit_careers_interview>a>picture img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

#recruit_careers_interview>a>p {
    width: 65%;
    padding: 0 0 0 2rem;
    color: var(--clr-txt);
    font-size: .8571428571rem;
    font-weight: 700;
    margin: 0
}

@media screen and (min-width: 768px) {
    #recruit_careers_interview>a>p {
        font-size: 16px
    }
}

#recruit_careers_interview>a>span.arrow {
    position: absolute;
    display: inline-block;
    width: 2.6428571429rem;
    right: 1.4285714286rem;
    transition: all .4s ease-in-out
}

@media screen and (min-width: 768px) {
    #recruit_careers_interview>a>span.arrow {
        width: 50px;
        right: 55px
    }
}

#recruit_careers_interview>a>span.arrow::before {
    display: inline-block;
    content: "";
    width: 100%;
    height: 1px;
    margin: 0 auto .2em;
    background: var(--clr-txt)
}

#recruit_careers_interview>a>span.arrow::after {
    content: "";
    position: absolute;
    height: 1px;
    margin: auto 0;
    background: var(--clr-txt);
    bottom: .44em;
    right: .1em;
    width: .5em;
    transform: rotate(-140deg) translateX(-0.5em) translateY(0.45em);
    transform-origin: left bottom
}

#recruit_careers_interview>a:hover>span.arrow {
    width: 3.3571428571rem;
    right: .5rem
}

@media screen and (min-width: 768px) {
    #recruit_careers_interview>a:hover>span.arrow {
        width: 80px;
        right: 20px
    }
}

@media screen and (min-width: 768px) {
    #recruit_careers_interview {
        display: flex;
        justify-content: center
    }
}

#footer {
    background: var(--clr-footer);
    padding: 4.2857142857rem 1.4285714286rem 7.1428571429rem;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    position: relative;
    overflow-x: hidden
}

@media screen and (min-width: 768px) {
    #footer {
        padding-top: 24px
    }
}

#footer a:not(.btn) {
    text-decoration: none;
    color: var(--clr-white);
    font-size: 1rem
}

#footer>ul {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    grid-column-gap: 4.5714285714rem;
    grid-row-gap: 4rem;
    justify-items: stretch;
    align-items: stretch
}

@media screen and (min-width: 768px) {
    #footer>ul {
        max-width: 980px;
        margin: 0 auto;
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        grid-template-columns: auto;
        grid-column-gap: 0px;
        grid-row-gap: 0px
    }
}

@media screen and (min-width: 768px) {
    #footer>ul>li {
        margin-bottom: 1em
    }

    #footer>ul>li:not(:last-of-type) {
        padding-right: 43px !important
    }
}

#footer>ul>li:nth-child(odd) {
    padding-right: 2.8571428571rem
}

@media screen and (min-width: 768px) {
    #footer>ul>li:nth-child(odd) {
        padding: 0
    }
}

#footer>ul>li:nth-child(even) {
    padding-left: 2.8571428571rem
}

@media screen and (min-width: 768px) {
    #footer>ul>li:nth-child(even) {
        padding: 0
    }
}

#footer>ul>li.home {
    grid-column: 1/3;
    padding: 0;
    text-align: center
}

@media screen and (min-width: 768px) {
    #footer>ul>li.home {
        grid-column: 1;
        text-align: left
    }
}

#footer>ul>li.job_list {
    padding: 0
}

@media screen and (min-width: 960px) {
    #footer>ul>li.job_list>ul {
        position: absolute
    }
}

#footer>ul>li.job_list>ul a {
    font-size: .5rem
}

#footer_logo {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    flex-wrap: wrap;
    margin-top: 2.1428571429rem;
    width: 100%
}

@media screen and (min-width: 768px) {
    #footer_logo {
        margin: 38px auto 0;
        width: 265px;
        display: grid;
        grid-template-columns: 85px 1fr;
        grid-template-rows: 1fr;
        grid-column-gap: 26px;
        grid-row-gap: 0px;
        justify-items: stretch;
        align-items: stretch
    }
}

#footer_logo .logo {
    margin-top: 1rem
}

#footer_logo .logo i {
    color: var(--clr-white);
    font-size: 2.1428571429rem
}

@media screen and (min-width: 768px) {
    #footer_logo .logo i {
        font-size: 26px
    }
}

#footer_logo .logo i.icon_regina {
    margin: 0 2rem
}

@media screen and (min-width: 768px) {
    #footer_logo .logo i.icon_regina {
        margin: 0 .5em 0 0
    }
}

#footer_logo .logo i.icon_etoile {
    margin: 0
}

#footer_logo_img {
    display: block;
    margin: 0 auto 1rem;
    width: 5.5714285714rem;
    height: auto;
    aspect-ratio: 26/19;
    overflow: hidden;
    text-indent: -999px;
    white-space: nowrap;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2277.5%22%20height%3D%2256.496%22%20viewBox%3D%220%200%2077.5%2056.496%22%3E%3Cg%20transform%3D%22translate(0%2040.35)%22%3E%3Cpath%20d%3D%22M198.8%2C172.488l-.02%2C0c0-.037-.012-.044-.151-.044h-.075v.626c0%2C.065.023.078.055.08v.021h-.259v-.021c.04%2C0%2C.054-.022.054-.077v-.629h-.095c-.117%2C0-.134.011-.136.041l-.019.006-.029-.122h.7Zm.721.68v-.021c.039%2C0%2C.049-.03.043-.071l-.059-.548-.256.656h-.013l-.261-.653-.058.562a.045.045%2C0%2C0%2C0%2C.044.054v.021h-.173v-.02c.034-.005.049-.016.054-.074l.068-.642a.04.04%2C0%2C0%2C0-.036-.046v-.021h.194l.214.535.209-.535h.2v.021c-.028%2C0-.049.023-.043.075l.071.629a.055.055%2C0%2C0%2C0%2C.057.057v.021Z%22%20transform%3D%22translate(-122.277%20-172.366)%22%20fill%3D%22%23fff%22%2F%3E%3Cg%20transform%3D%22translate(0%201.094)%22%3E%3Cpath%20d%3D%22M97.733%2C181.095l-2.11-3.125a4.407%2C4.407%2C0%2C0%2C1-.613.02v2.494L95.4%2C181v.094H93.39V181l.392-.489v-5.886l-.4-.489v-.093H95.34c.359%2C0%2C2.823-.218%2C2.823%2C1.9A1.943%2C1.943%2C0%2C0%2C1%2C96.8%2C177.7l1.86%2C2.737a1.373%2C1.373%2C0%2C0%2C0%2C.894.558v.1Zm-2.28-6.551H95.01v2.936h.18c1.18%2C0%2C1.718-.632%2C1.718-1.491a1.375%2C1.375%2C0%2C0%2C0-1.454-1.444%22%20transform%3D%22translate(-93.381%20-173.92)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M107.159%2C181.1h-4.4V181l.355-.489v-5.933l-.411-.441v-.095h4.549l.075.789-1.26-.222H104.36v2.624h1.1l.6-.3v1.17l-.612-.306h-1.1v2.161c0%2C.51.151.566.652.566H106a4.612%2C4.612%2C0%2C0%2C0%2C1.505-.453Z%22%20transform%3D%22translate(-95.951%20-173.923)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M116.5%2C178.242v2.525a6.029%2C6.029%2C0%2C0%2C1-2.416.406%2C3.657%2C3.657%2C0%2C1%2C1%2C.028-7.3%2C13.383%2C13.383%2C0%2C0%2C1%2C1.825.16h0l.448%2C1.294-.186.1a2.559%2C2.559%2C0%2C0%2C0-2.064-.879c-1.534%2C0-2.51%2C1.236-2.51%2C2.93%2C0%2C1.914%2C1.106%2C3.03%2C2.492%2C3.03a3.434%2C3.434%2C0%2C0%2C0%2C1.231-.183v-2.07l-.479-.458v-.095h2.1v.095Z%22%20transform%3D%22translate(-98.019%20-173.876)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M120.95%2C181.1V181l.453-.489v-5.885l-.453-.489v-.094h2.133v.094l-.481.517v5.829l.481.517v.094Z%22%20transform%3D%22translate(-100.986%20-173.923)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M168.634%2C181.1V181l.453-.489v-5.885l-.453-.489v-.094h2.133v.094l-.482.517v5.829l.482.517v.094Z%22%20transform%3D%22translate(-114.141%20-173.923)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M185%2C181.1V181l.453-.489v-5.885L185%2C174.14v-.094h2.133v.094l-.482.517v5.829l.482.517v.094Z%22%20transform%3D%22translate(-118.658%20-173.923)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M132.39%2C174.461V181.1h-.753l-4.851-5.721v5.158l.5.469v.094H125.56V181l.482-.451v-5.784a4.359%2C4.359%2C0%2C0%2C0-.827-.627v-.095H127.6l4.041%2C5.019V174.5l-.5-.359v-.095h1.7v.095Z%22%20transform%3D%22translate(-102.163%20-173.923)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M180.3%2C174.461V181.1h-.753l-4.851-5.85v5.286l.5.47v.094h-1.726V181l.482-.451v-5.628l-.473-.783v-.095h2.026l4.041%2C5.018V174.5l-.5-.358v-.095h1.7v.095Z%22%20transform%3D%22translate(-115.479%20-173.923)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M141.2%2C181.1V181l.285-.38-.74-1.864h-2.456l-.665%2C1.872.28.372%2C0%2C.094h-1.45l0-.094.482-.4%2C2.112-5.963-.255-.5%2C0-.094h1.459l2.69%2C6.51.536.447%2C0%2C.094Zm-1.787-5.686-.955%2C2.7h2.076Z%22%20transform%3D%22translate(-105.264%20-173.923)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M155.252%2C180.947h0a10.211%2C10.211%2C0%2C0%2C1-1.952.233%2C3.649%2C3.649%2C0%2C1%2C1-.028-7.278%2C11.864%2C11.864%2C0%2C0%2C1%2C1.693.135l.459%2C1.309-.17.093a2.273%2C2.273%2C0%2C0%2C0-1.987-.879c-1.639%2C0-2.526%2C1.346-2.526%2C2.985%2C0%2C1.346.65%2C2.976%2C2.609%2C2.976a2.472%2C2.472%2C0%2C0%2C0%2C2.116-1.081l.2.078Z%22%20transform%3D%22translate(-108.825%20-173.883)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M195.162%2C180.947h0a10.2%2C10.2%2C0%2C0%2C1-1.951.233%2C3.649%2C3.649%2C0%2C1%2C1-.028-7.278%2C11.848%2C11.848%2C0%2C0%2C1%2C1.692.135l.459%2C1.309-.169.093a2.274%2C2.274%2C0%2C0%2C0-1.987-.879c-1.639%2C0-2.526%2C1.346-2.526%2C2.985%2C0%2C1.346.65%2C2.976%2C2.609%2C2.976a2.471%2C2.471%2C0%2C0%2C0%2C2.115-1.081l.2.078Z%22%20transform%3D%22translate(-119.836%20-173.883)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M164.663%2C181.1h-5.025V181l.444-.548V174.6l-.5-.458v-.095h2.17v.095l-.444.44v5.4c0%2C.377.18.462.548.462h1.25a5.935%2C5.935%2C0%2C0%2C0%2C1.983-.561Z%22%20transform%3D%22translate(-111.644%20-173.923)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M131.847%2C191.163h-1.921v1.5l.26.29v.053h-1.21v-.053l.254-.275v-3.309l-.259-.275v-.053h1.21v.053l-.255.29v1.439h1.921m0%2C0v-1.439l-.254-.29v-.053H132.8v.053l-.259.275v3.309l.254.275v.053h-1.21v-.053l.26-.29v-1.5%22%20transform%3D%22translate(-103.2%20-178.058)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M137.582%2C193.072a2.083%2C2.083%2C0%2C1%2C1%2C.043-4.165A2.047%2C2.047%2C0%2C0%2C1%2C139.7%2C191a2%2C2%2C0%2C0%2C1-2.122%2C2.069m.028-3.833a1.8%2C1.8%2C0%2C0%2C0-.006%2C3.522%2C1.624%2C1.624%2C0%2C0%2C0%2C1.4-1.8%2C1.6%2C1.6%2C0%2C0%2C0-1.389-1.727%22%20transform%3D%22translate(-104.995%20-178.02)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M146%2C193.009v-.053l.236-.276-.326-2.961-1.316%2C3.37h-.027l-1.336-3.348-.311%2C2.939.225.276v.053h-.817v-.053l.258-.277.358-3.32-.192-.26v-.053h.929l1.093%2C2.727%2C1.056-2.727h.945v.053l-.212.4.358%2C3.183.283.276v.053Z%22%20transform%3D%22translate(-106.884%20-178.058)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M153.907%2C193.009v-.053l.236-.276-.326-2.961-1.316%2C3.37h-.027l-1.337-3.348-.31%2C2.939.226.276v.053h-.817v-.053l.258-.277.358-3.32-.192-.26v-.053h.929l1.093%2C2.727%2C1.055-2.727h.945v.053l-.213.4.358%2C3.183.283.276v.053Z%22%20transform%3D%22translate(-109.065%20-178.058)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M160.706%2C193.009h-2.473v-.054l.2-.275v-3.335l-.231-.248v-.053h2.557l.042.443-.708-.125h-.96v1.475h.621l.338-.167v.657l-.344-.172h-.616v1.215c0%2C.286.085.318.367.318h.554a2.592%2C2.592%2C0%2C0%2C0%2C.846-.254Z%22%20transform%3D%22translate(-111.263%20-178.058)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate(18.337)%22%3E%3Cpath%20d%3D%22M160.8%2C131.7l.746-2.791%2C1.9-.746-1.9-.746-.746-2.791-.745%2C2.791-1.9.746%2C1.9.746Z%22%20transform%3D%22translate(-128.582%20-118.376)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M144.362%2C125.205l.971-3.634%2C2.479-.971-2.479-.971L144.362%2C116l-.971%2C3.634-2.478.971%2C2.478.971Z%22%20transform%3D%22translate(-123.83%20-115.995)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M128.536%2C131.7l.746-2.791%2C1.9-.746-1.9-.746-.746-2.791-.746%2C2.791-1.9.746%2C1.9.746Z%22%20transform%3D%22translate(-119.687%20-118.376)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M159.812%2C141.463a48.963%2C48.963%2C0%2C0%2C0-5%2C11.748%2C33.985%2C33.985%2C0%2C0%2C0-4.743%2C1.325%2C28.082%2C28.082%2C0%2C0%2C1%2C6.587-10.342%2C28.589%2C28.589%2C0%2C0%2C1%2C3.156-2.731m6.746-5.871a30.289%2C30.289%2C0%2C0%2C0-19.607%2C22.529%2C31.867%2C31.867%2C0%2C0%2C1%2C9.508-3.13%2C46.821%2C46.821%2C0%2C0%2C1%2C10.1-19.4%22%20transform%3D%22translate(-125.495%20-121.398)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M143.764%2C136.12a34.017%2C34.017%2C0%2C0%2C0%2C2.526%2C4.172%2C33.837%2C33.837%2C0%2C0%2C0-2.526%2C4.861%2C33.837%2C33.837%2C0%2C0%2C0-2.526-4.861%2C34.017%2C34.017%2C0%2C0%2C0%2C2.526-4.172m0-5.263a31.888%2C31.888%2C0%2C0%2C1-5.021%2C9.365%2C31.825%2C31.825%2C0%2C0%2C1%2C5.021%2C11.931%2C31.825%2C31.825%2C0%2C0%2C1%2C5.021-11.931%2C31.888%2C31.888%2C0%2C0%2C1-5.021-9.365%22%20transform%3D%22translate(-123.232%20-120.093)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M167.739%2C149.311q.226%2C1.061.519%2C2.1-1%2C.494-1.966%2C1.055.087-.214.177-.427.585-1.383%2C1.269-2.732m.759-4.115a44.84%2C44.84%2C0%2C0%2C0-4.873%2C10.692%2C32%2C32%2C0%2C0%2C1%2C6.278-3.739A32.225%2C32.225%2C0%2C0%2C1%2C168.5%2C145.2%22%20transform%3D%22translate(-130.092%20-124.046)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M124.075%2C141.463a28.667%2C28.667%2C0%2C0%2C1%2C3.156%2C2.731%2C28.062%2C28.062%2C0%2C0%2C1%2C6.587%2C10.342%2C33.93%2C33.93%2C0%2C0%2C0-4.743-1.325%2C48.921%2C48.921%2C0%2C0%2C0-5-11.748m-6.747-5.871a46.833%2C46.833%2C0%2C0%2C1%2C10.1%2C19.4%2C31.862%2C31.862%2C0%2C0%2C1%2C9.507%2C3.13%2C30.288%2C30.288%2C0%2C0%2C0-19.607-22.529%22%20transform%3D%22translate(-117.328%20-121.398)%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M121.22%2C149.311q.683%2C1.346%2C1.27%2C2.732.09.213.178.427-.966-.561-1.966-1.055.292-1.042.519-2.1m-.759-4.115a32.094%2C32.094%2C0%2C0%2C1-1.405%2C6.953%2C31.987%2C31.987%2C0%2C0%2C1%2C6.279%2C3.739%2C44.81%2C44.81%2C0%2C0%2C0-4.874-10.692%22%20transform%3D%22translate(-117.804%20-124.046)%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")
}

@media screen and (min-width: 768px) {
    #footer_logo_img {
        grid-row: 1/3;
        margin: 0 auto
    }
}

#footer_copy {
    width: 100%;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 3.7142857143rem
}

#footer_copy small {
    color: var(--clr-white)
}

#footer_link {
    background: url("../img/recruit/footer_bg.png");
    background-repeat: no-repeat;
    background-size: cover
}

#footer_link .inner {
    text-align: center
}

#footer_link p {
    color: var(--clr-em);
    margin-bottom: 1em;
    font-size: 1.1428571429rem;
    font-weight: 700;
    line-height: 1.4
}