@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap");
body,
* {
    font-family: "Zen Maru Gothic", sans-serif;
    outline: none !important
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -moz-tap-highlight-color: rgba(0, 0, 0, 0)
}

html {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 100%;
    overflow-x: hidden
}

body {
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -ms-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-color: #fff;
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    color: #000;
    font-family: "Zen Maru Gothic", sans-serif;
    margin: 0;
    position: relative;
    width: 100%
}

button {
    border: none;
    cursor: pointer
}

ul {
    margin: 0;
    padding: 0
}

a {
    color: inherit;
    text-decoration: none
}

a:active,
a:focus {
    color: inherit;
    cursor: pointer;
    font-family: inherit;
    text-decoration: none !important
}

.hoverable a:hover {
    color: inherit;
    cursor: pointer;
    font-family: inherit;
    text-decoration: none !important;
    cursor: pointer
}

legend {
    color: #000
}

ol,
ul {
    list-style: none
}

* {
    text-decoration: none
}

caption,
th {
    text-align: left
}

sup {
    vertical-align: text-top
}

img {
    display: block;
    border: none !important
}

sub {
    vertical-align: text-bottom
}

input,
textarea,
select {
    *font-size: 100%
}

a {
    color: inherit;
    text-decoration: none
}

textarea {
    outline: none;
    resize: none
}

abbr,
acronym {
    border: 0;
    font-variant: normal
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 100%;
    font-weight: normal
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

fieldset,
img {
    border: 0
}

input,
textarea,
select {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit
}

address,
caption,
cite,
code,
dfn,
th,
var {
    font-style: normal;
    font-weight: normal
}

q:before,
q:after {
    content: ''
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block
}

html,
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
a,
blockquote,
figure {
    margin: 0;
    padding: 0
}

/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */

html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

h1 {
    font-size: 2em;
    margin: 0.67em 0
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

pre {
    font-family: monospace, monospace;
    font-size: 1em
}

a {
    background-color: transparent
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted
}

b,
strong {
    font-weight: bolder
}

code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -0.25em
}

sup {
    top: -0.5em
}

img {
    border-style: none
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    padding: 0.35em 0.75em 0.625em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    padding: 0
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto
}

[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

details {
    display: block
}

summary {
    display: list-item
}

template {
    display: none
}

[hidden] {
    display: none
}

.header-bottom {
    position: fixed !important
}

.header.clone {
    display: none !important
}

.header.initialized {
    display: block !important;
    height: 60px !important
}

.header {
    align-items: center;
    background-color: transparent;
    display: flex;
    left: 50%;
    height: 100px;
    position: fixed;
    top: 0;
    transition: .3s;
    max-width: 2800px;
    width: 100%;
    transform: translate(-50%);
    z-index: 99999
}

@media only screen and (max-width: 64em) {
    .header {
        border-radius: 0 0 40px 0;
        height: 65px;
        display: flex
    }
}

@media only screen and (max-width: 47.9375em) {
    .header {
        border-radius: 0 0 40px 0;
        height: auto;
        display: flex;
        overflow: hidden;
        position: fixed
    }
}

.header.is-active {
    background-color: #fff
}

@media only screen and (max-width: 64em) {
    .header.is-active .header-wrapper .header-contents {
        padding: 8px 5% 8px
    }
}

@media only screen and (max-width: 47.9375em) {
    .header.is-active .header-wrapper .header-contents {
        padding: 8px 5% 8px
    }
}

.header.active {
    background-color: #fff;
    border-radius: 0 0 40px 0;
    box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.05)
}

@media only screen and (max-width: 64em) {
    .header.active .header-wrapper .header-contents {
        padding: 8px 5% 8px
    }
}

@media only screen and (max-width: 47.9375em) {
    .header.active .header-wrapper .header-contents {
        padding: 8px 5% 8px
    }
}

.header.header-bottom {
    background-color: #fff
}

.header.header-bottom .header-wrapper .header-contents .logo {
    margin-left: 0;
    width: 170px
}

@media only screen and (max-width: 64em) {
    .header.header-bottom .header-wrapper .header-contents .logo {
        width: 120px
    }
}

@media only screen and (max-width: 47.9375em) {
    .header.header-bottom .header-wrapper .header-contents .logo {
        width: 140px
    }
}

.header .header-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%
}

.header .header-wrapper .poli-contact {
    position: absolute;
    top: 0;
    right: 0px;
    height: 100px;
    width: 168px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: linear-gradient(to bottom right, #FFB62D, #FF6F22);
    border-radius: 0 0 0 50px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.08);
    flex-wrap: wrap;
    padding: 10px 0 30px;
    transition: .5s
}

@media only screen and (max-width: 64em) {
    .header .header-wrapper .poli-contact {
        display: none
    }
}

.header .header-wrapper .poli-contact:hover {
    background: linear-gradient(to right, #FFB62D 0%, #FF6F22 100%)
}

.header .header-wrapper .poli-contact .icon {
    height: auto;
    width: 40px;
    display: block
}

.header .header-wrapper .poli-contact p {
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    width: 100%
}

.header .header-wrapper .header-contents {
    align-items: center;
    display: flex;
    justify-content: flex-start;
    margin: 0 auto;
    transition: .3s;
    width: 90%
}

@media only screen and (max-width: 64em) {
    .header .header-wrapper .header-contents {
        justify-content: space-between;
        padding: 8px 5% 8px;
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .header .header-wrapper .header-contents {
        padding: 8px 5% 8px;
        width: 100%
    }
}

.header .header-wrapper .header-contents .logo {
    transition: .3s;
    width: 170px
}

@media only screen and (max-width: 64em) {
    .header .header-wrapper .header-contents .logo {
        margin-top: .5%;
        width: 120px
    }
}

.header .header-wrapper .header-contents .logo:hover {
    opacity: .8
}

.header .header-wrapper .header-contents .logo .logo-text {
    display: block;
    font-size: 12px;
    margin-bottom: 5px
}

@media only screen and (max-width: 64em) {
    .header .header-wrapper .header-contents .logo .logo-text {
        font-size: 10px
    }
}

@media only screen and (max-width: 47.9375em) {
    .header .header-wrapper .header-contents .logo .logo-text {
        display: none
    }
}

.header .header-wrapper .header-contents .logo img {
    width: 100%
}

.header .header-wrapper .header-contents .header-right {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    padding: 0;
    margin-left: 70px;
    width: 70%
}

@media only screen and (max-width: 61.875em) {
    .header .header-wrapper .header-contents .header-right {
        display: none
    }
}

@media only screen and (max-width: 47.9375em) {
    .header .header-wrapper .header-contents .header-right {
        display: none
    }
}

.header .header-wrapper .header-contents .header-right .top-link {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    width: 100%
}

.header .header-wrapper .header-contents .header-right .top-link .top-link-lists {
    display: flex
}

.header .header-wrapper .header-contents .header-right .top-link .top-link-lists .top-link--item {
    color: #000;
    font-size: 14px;
    padding: 0 10px;
    position: relative;
    transition: .5s
}

.header .header-wrapper .header-contents .header-right .top-link .top-link-lists .top-link--item::before {
    color: #000;
    content: '\f0da';
    font-family: "Font Awesome 5 Free";
    font-style: normal;
    font-weight: 900;
    font-size: 15px;
    top: 1px;
    position: relative;
    margin-right: 5px
}

.header .header-wrapper .header-contents .header-right .top-link .top-link-lists .top-link--item:hover {
    color: #008332
}

.header .header-wrapper .header-contents .header-right .top-link .top-link-lists .top-link--item span {
    font-size: 12px;
    margin-left: 5px
}

.header .header-wrapper .header-contents .header-right .top-link .number {
    margin-left: 30px;
    margin-right: 30px;
    width: auto
}

.header .header-wrapper .header-contents .header-right .top-link .number p {
    display: block;
    font-size: 20px;
    font-weight: bold;
    position: relative
}

.header .header-wrapper .header-contents .header-right .top-link .number p::before {
    background-image: url("../images/common/icon_phone.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content: '';
    display: block;
    height: 18px;
    position: absolute;
    left: -20px;
    bottom: 3px;
    width: 18px
}

.header .header-wrapper .header-contents .header-right .top-link .number p span {
    display: block;
    font-size: 12px;
    font-weight: normal
}

.header .header-wrapper .header-contents .header-right .top-link .number img {
    width: 100%
}

.header .header-wrapper .header-contents .header-right .top-link .request {
    background-color: #fff;
    border: solid 1px #DD8731;
    border-radius: 15px;
    color: #DD8731;
    display: flex;
    font-size: 13px;
    font-weight: bold;
    flex-wrap: wrap;
    align-items: center;
    margin-left: 20px;
    justify-content: center;
    transition: .5s;
    height: 35px;
    width: 180px
}

.header .header-wrapper .header-contents .header-right .top-link .request:hover {
    background-color: #DD8731;
    color: #fff
}

.header .header-wrapper .header-contents .header-right .top-link .contact1 {
    background-color: #DD8731;
    border: solid 1px #DD8731;
    border-radius: 15px;
    color: #fff;
    display: flex;
    font-size: 13px;
    font-weight: bold;
    flex-wrap: wrap;
    align-items: center;
    margin-left: 20px;
    justify-content: center;
    transition: .5s;
    height: 35px;
    width: 180px
}

.header .header-wrapper .header-contents .header-right .top-link .contact1:hover {
    background-color: #fff;
    color: #DD8731
}

.header .header-wrapper .header-contents .header-right .main-nav {
    margin-top: 10px
}

@media only screen and (max-width: 64em) {
    .header .header-wrapper .header-contents .header-right .main-nav {
        display: none
    }
}

@media only screen and (max-width: 47.9375em) {
    .header .header-wrapper .header-contents .header-right .main-nav {
        display: none
    }
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists {
    display: flex;
    position: relative
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item {
    display: inline-block;
    text-align: center;
    transition: .5s
}

@media only screen and (max-width: 64em) {
    .header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item {
        width: 124px
    }
}

@media only screen and (max-width: 64em) {
    .header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item {
        width: 102px
    }
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .link-underline {
    border-bottom-width: 0;
    background-image: linear-gradient(transparent, transparent), linear-gradient(#fff, #fff);
    background-size: 0 1px;
    background-position: 0 100%;
    background-repeat: no-repeat;
    transition: background-size .3s ease-in-out
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .link-underline-black {
    background-image: linear-gradient(transparent, transparent), linear-gradient(#FF6F22, #FF6F22)
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .link-underline:hover {
    background-size: 100% 1px;
    background-position: 0 100%
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item:last-child:after {
    content: '';
    display: block;
    height: 22px;
    right: 0;
    position: absolute;
    top: 4px;
    width: 1px
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .cat-nav {
    background-color: #f5f5f5;
    -webkit-transition: all 0.25s ease-in-out;
    -khtml-transition: all 0.25s ease-in-out;
    -moz-transition: all 0.25s ease-in-out;
    -ms-transition: all 0.25s ease-in-out;
    -o-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out;
    margin: 0 auto;
    padding: 0;
    position: absolute;
    width: 100%;
    z-index: 999;
    left: 0;
    top: 36px;
    padding: 0 1000em;
    margin: 0 -1000em;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-in;
    height: unset
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .cat-nav .inner {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    width: 1130px;
    max-width: 1130px;
    position: relative;
    left: 50%;
    height: auto;
    transform: translate(-50%, -50%);
    top: 100px;
    max-width: 1130px
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .cat-nav .inner .inner-title {
    font-size: 20px;
    font-weight: bold;
    width: 130px
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .cat-nav .inner .inner-title span {
    color: #367DCE;
    display: block;
    font-size: 12px;
    font-family: 'Montserrat', sans-serif !important;
    margin-bottom: 5px
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .cat-nav .menu-list-sub {
    background-color: #f5f5f5;
    display: block;
    margin: 0 auto;
    overflow: hidden;
    padding: 30px 0 30px;
    position: relative;
    left: 50%;
    height: auto;
    transform: translate(-55%, -50%);
    top: 100px;
    max-width: 1000px;
    width: 1000px
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .cat-nav .menu-list-sub .menu-list-sub--item {
    cursor: default;
    display: block;
    float: left;
    margin-right: 24px;
    transition: .5s;
    width: 15%
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .cat-nav .menu-list-sub .menu-list-sub--item:hover {
    transition: .5s
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .cat-nav .menu-list-sub .menu-list-sub--item:hover a span {
    color: #367DCE
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .cat-nav .menu-list-sub .menu-list-sub--item a {
    margin: 0;
    height: 70px;
    padding: 0;
    border-bottom: solid 1px #C7C7C7;
    font-weight: normal;
    transition: .5s
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .cat-nav .menu-list-sub .menu-list-sub--item a::before {
    display: none
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .cat-nav .menu-list-sub .menu-list-sub--item a::after {
    color: #367DCE;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Font Awesome\ 5 Free';
    font-weight: 900;
    font-size: 10px;
    content: "\f061";
    position: absolute;
    right: 0px;
    top: 50%;
    transition: all 0.2s ease-in-out;
    transform: translate(-50%, -50%)
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .cat-nav .menu-list-sub .menu-list-sub--item a figure {
    display: block;
    height: 131px;
    overflow: hidden;
    width: 238px
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .cat-nav .menu-list-sub .menu-list-sub--item a figure img {
    display: block;
    height: 100%;
    transition: 1s;
    width: 100%
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .cat-nav .menu-list-sub .menu-list-sub--item a figure img:hover {
    transform: scale(1.5)
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item .cat-nav .menu-list-sub .menu-list-sub--item a span {
    color: #000;
    display: block;
    font-size: 14px;
    font-weight: 400;
    line-height: 70px;
    margin-top: 0px;
    text-align: center;
    transition: .5s
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item:hover .cat-nav {
    display: block;
    max-height: 1000px;
    transition: max-height 0.3s ease-in-out
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item.event .dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
    z-index: 1
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item.event .dropdown-content:hover {
    background-color: #ddd;
    color: black
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item:hover .link-underline {
    background-size: 100% 1px;
    background-position: 0 100%
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item:hover a::after {
    -webkit-transform: rotate(180deg);
    transform: translate(-50%, -50%) rotate(180deg)
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item:hover a .jp {
    color: #FF6F22
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item a {
    color: #000;
    display: block;
    padding: 0px 12px 13px;
    position: relative
}

@media only screen and (max-width: 64em) {
    .header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item a {
        height: auto
    }
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item a:before {
    content: '';
    display: block;
    height: 22px;
    left: 0;
    position: absolute;
    top: -1px;
    width: .8px
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item a::after {
    color: #367DCE;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Font Awesome\ 5 Free';
    font-weight: 900;
    font-size: 10px;
    content: "\f107";
    position: absolute;
    right: 10px;
    top: 25%;
    transition: all 0.2s ease-in-out;
    transform: translate(-50%, -50%);
    display: none
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item a .eng {
    display: block;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px;
    font-weight: bold;
    line-height: 100%;
    margin-top: 28px
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item a .jp {
    color: #333;
    display: block;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .05em;
    margin-top: 5px
}

.header .header-wrapper .header-contents .header-right .main-nav .nav-lists .nav-lists--item a:hover .cat-nav {
    transition: margin-top 0.5s ease
}

.header .header-wrapper .header-contents .right-sp {
    display: flex;
    justify-content: flex-end
}

.header .header-wrapper .header-contents .right-sp .contact1 {
    background-color: #DD8731;
    border: solid 1px #DD8731;
    color: #fff;
    display: none;
    font-size: 12px;
    font-weight: bold;
    flex-wrap: wrap;
    align-items: center;
    margin-left: 20px;
    justify-content: center;
    transition: .5s;
    height: 50px;
    width: 130px
}

@media only screen and (max-width: 64em) {
    .header .header-wrapper .header-contents .right-sp .contact1 {
        display: none;
        height: 60px
    }
}

@media only screen and (max-width: 47.9375em) {
    .header .header-wrapper .header-contents .right-sp .contact1 {
        display: none;
        height: 50px
    }
}

.header .header-wrapper .header-contents .right-sp .contact1:hover {
    background-color: #fff;
    color: #DD8731
}

.header .header-wrapper .header-contents .contact-container {
    display: none;
    flex-wrap: wrap;
    height: 60px;
    width: 140px
}

@media only screen and (max-width: 47.9375em) {
    .header .header-wrapper .header-contents .contact-container {
        display: flex
    }
}

.header .header-wrapper .header-contents .contact-container .contact--item {
    background-color: #ca4c96;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding: 5px 0 5px;
    width: 50%
}

.header .header-wrapper .header-contents .contact-container .contact--item:nth-child(2) {
    border-left: solid 1px #fff
}

.header .header-wrapper .header-contents .contact-container .contact--item:nth-child(2) .icon {
    height: auto;
    width: 18px
}

.header .header-wrapper .header-contents .contact-container .contact--item .cover {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 25px
}

.header .header-wrapper .header-contents .contact-container .contact--item .cover svg {
    height: 25px;
    width: 25px
}

.header .header-wrapper .header-contents .contact-container .contact--item .icon {
    height: auto;
    width: 28px
}

.header .header-wrapper .header-contents .contact-container .contact--item span {
    color: #fff;
    font-size: 10px;
    margin: 0px 0 0;
    text-align: center;
    width: 100%
}

.header .header-wrapper .header-contents .menu-top {
    align-items: center;
    display: flex;
    justify-content: space-between
}

@media only screen and (max-width: 64em) {
    .header .header-wrapper .header-contents .menu-top {
        display: block
    }
}

@media only screen and (max-width: 46.875em) {
    .header .header-wrapper .header-contents .menu-top {
        display: none
    }
}

.header .header-wrapper .header-contents .menu-top .header-nav a {
    color: #333333;
    font-size: 14px;
    font-weight: bold;
    margin-right: 40px;
    padding-bottom: 3px;
    position: relative
}

@media only screen and (max-width: 61.25em) {
    .header .header-wrapper .header-contents .menu-top .header-nav a {
        font-size: 12px;
        margin-right: 20px
    }
}

.header .header-wrapper .header-contents .menu-top .header-nav a:last-child {
    margin-right: 0
}

.header .header-wrapper .header-contents .menu-top .header-nav a:last-child::after {
    display: none
}

.header .header-wrapper .header-contents .menu-top .header-nav a:hover {
    border-bottom: 2px solid #333333
}

.header .header-wrapper .header-contents .menu-top .header-nav a::after {
    border-right: solid 2px #333333;
    content: "";
    height: 10px;
    position: absolute;
    right: -25px;
    top: 50%;
    transform: translate(-50%, -50%);
    height: 14px;
    width: 1px
}

@media only screen and (max-width: 61.25em) {
    .header .header-wrapper .header-contents .menu-top .header-nav a::after {
        right: -12px
    }
}

.header .header-wrapper .header-contents .menu-top .contact-btn {
    border-bottom: 5px solid #C3B60A;
    align-items: center;
    border-radius: 10px;
    background-color: #FFF540;
    display: inline-flex;
    font-size: 18px;
    font-weight: bold;
    justify-content: center;
    height: 55px;
    transition: .3s;
    width: 200px
}

.header .header-wrapper .header-contents .menu-top .contact-btn:hover {
    opacity: .8
}

.header .header-wrapper .header-contents .menu-top .contact-btn:after {
    background-image: url("../images/common/icon-header-contact.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content: '';
    display: block;
    height: 20px;
    margin-left: 19px;
    width: 20px
}

.header .header-wrapper .header-contents .mobile-menu {
    display: none
}

@media only screen and (max-width: 64em) {
    .header .header-wrapper .header-contents .mobile-menu {
        display: flex
    }
}

@media only screen and (max-width: 46.875em) {
    .header .header-wrapper .header-contents .mobile-menu {
        display: flex
    }
}

.header .header-wrapper .header-contents .mobile-menu .request {
    background-color: #FFF540;
    color: #222;
    display: inline-flex;
    font-size: 14px;
    font-weight: bold;
    height: 58px;
    justify-content: center;
    line-height: 58px;
    text-align: center;
    width: 87px
}

.header .header-wrapper .header-contents .mobile-menu .hamburger {
    border: 2px solid #FF6F22;
    border-radius: 50%;
    height: 50px;
    padding: 0;
    width: 50px
}

@media only screen and (max-width: 64em) {
    .header .header-wrapper .header-contents .mobile-menu .hamburger {
        height: 40px;
        width: 40px
    }
}

@media only screen and (max-width: 46.875em) {
    .header .header-wrapper .header-contents .mobile-menu .hamburger {
        height: 56px;
        width: 56px
    }
}

.header .header-wrapper .header-contents .mobile-menu .hamburger:hover {
    opacity: 1
}

.header .header-wrapper .header-contents .mobile-menu .hamburger-box {
    top: 5px;
    width: 20px
}

.header .header-wrapper .header-contents .mobile-menu .hamburger-inner,
.header .header-wrapper .header-contents .mobile-menu .hamburger-inner:after,
.header .header-wrapper .header-contents .mobile-menu .hamburger-inner:before {
    background-color: #FF6F22;
    border-radius: 0px;
    height: 2px;
    margin: 0 auto;
    width: 20px
}

.header .header-wrapper .header-contents .mobile-menu .text {
    color: #FF6F22;
    display: block;
    font-size: 10px;
    margin: 2px 0 0
}

.header-bottom {
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1)
}

body,
html {
    color: #222;
    overflow-x: hidden;
    line-height: 2;
    max-width: 2800px;
    margin: 0 auto
}

body.is-active,
html.is-active {
    overflow-y: hidden
}

.is-top {
    margin-top: 0 !important
}

.wrapper {
    display: block;
    margin: 0 auto;
    padding: 0;
    width: 1200px
}

@media only screen and (max-width: 64em) {
    .wrapper {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .wrapper {
        width: 100%
    }
}

.title {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 60px;
    font-weight: bold;
    line-height: 1.5;
    margin-bottom: 10px;
    text-align: center;
    color: #222
}

@media only screen and (max-width: 64em) {
    .title {
        font-size: 40px;
        margin-bottom: 20px
    }
}

@media only screen and (max-width: 47.9375em) {
    .title {
        font-size: 32px;
        margin-bottom: 20px;
        letter-spacing: 2px;
        line-height: 1.6
    }
}

.title span {
    color: #FF6F22
}

.title.white {
    color: #fff
}

.title.black {
    color: #222 !important
}

.title.title-bottom {
    color: #fff;
    font-family: "Montserrat";
    font-size: 80px;
    line-height: 1.2;
    margin-bottom: 10px;
    text-align: left
}

@media only screen and (max-width: 47.9375em) {
    .title.title-bottom {
        font-size: 40px
    }
}

.title.title-bottom em {
    font-family: "Montserrat";
    font-style: normal !important
}

@media only screen and (max-width: 47.9375em) {
    .title.title-bottom em {
        display: block;
        font-family: inherit
    }
}

.title.orange {
    color: #FF6F22
}

.subtitle {
    font-family: "Montserrat";
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 10px;
    text-align: center
}

@media only screen and (max-width: 64em) {
    .subtitle {
        margin-bottom: 0px
    }
}

@media only screen and (max-width: 47.9375em) {
    .subtitle {
        font-size: 18px;
        margin-bottom: 0px
    }
}

.subtitle.bottom-subtitle {
    font-size: 200px;
    font-weight: bold;
    opacity: 0.1 !important
}

@media only screen and (max-width: 64em) {
    .subtitle.bottom-subtitle {
        font-size: 130px
    }
}

@media only screen and (max-width: 47.9375em) {
    .subtitle.bottom-subtitle {
        font-size: 100px
    }
}

.subtitle.white {
    color: #fff
}

.subtitle.orange {
    color: #FF6F22
}

.sub-label {
    margin-top: 0px
}

@media only screen and (max-width: 47.9375em) {
    .sub-label {
        margin-top: 0px
    }
}

.sub-label span {
    background-color: #fff;
    border-radius: 8px;
    color: #FF6F22;
    font-size: 32px;
    font-weight: bold;
    padding: 18px 23px
}

@media only screen and (max-width: 47.9375em) {
    .sub-label span {
        font-size: 20px;
        padding: 9px 12px
    }
}

.sub-label.black span {
    color: #222
}

.desc {
    color: #222;
    font-size: 18px;
    font-weight: 500;
    margin: 0 auto 40px;
    text-align: left;
    max-width: 800px
}

@media only screen and (max-width: 64em) {
    .desc {
        line-height: 2em;
        margin-bottom: 20px
    }
}

@media only screen and (max-width: 47.9375em) {
    .desc {
        font-size: 16px;
        margin-bottom: 20px;
        max-width: 100%
    }
}

.desc:last-child {
    margin-bottom: 0
}

.desc .hl {
    background-color: #222;
    color: #fff;
    display: block;
    padding: 0 0 0 10px;
    margin-bottom: 10px
}

@media only screen and (max-width: 47.9375em) {
    .desc .hl {
        padding: 0 0 0 5px;
        margin-bottom: 5px
    }
}

.desc .hl:last-child {
    margin-bottom: 0
}

@media only screen and (max-width: 47.9375em) {
    .desc .nlsp {
        display: block
    }
}

.btn-top {
    align-items: center;
    background-color: #fff;
    border: 1px solid #FF6F22;
    border-radius: 35px;
    display: inline-flex;
    font-size: 18px;
    font-weight: 500;
    justify-content: center;
    margin: 0 auto;
    padding: 14px 30px;
    transition: .5s
}

.btn-top:before {
    background-image: url("../images/common/icon_arrow.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 32px 32px;
    border: 1px solid #FF6F22;
    border-radius: 50%;
    content: '';
    display: block;
    width: 32px;
    height: 32px;
    margin-right: 8px
}

.btn-top:hover {
    background-color: #FF6F22;
    color: #fff
}

.btn-top:hover:before {
    border: 1px solid #fff;
    border-radius: 50%
}

.btn {
    align-items: center;
    background-color: #DD8731;
    border: solid 1px #DD8731;
    border-radius: 40px;
    color: #fff;
    cursor: pointer;
    display: flex;
    font-size: 16px;
    font-weight: 700;
    height: 70px;
    justify-content: center;
    margin: 0 auto;
    position: relative;
    text-align: center;
    transition: .3s
}

.btn:hover {
    background-color: #fff;
    color: #DD8731
}

#back-to-top {
    align-items: center;
    background-color: #fff;
    border: 2px solid #FF6F22;
    border-radius: 50%;
    bottom: 50px;
    color: #FF6F22;
    display: flex !important;
    font-size: 0;
    justify-content: center;
    height: 90px;
    position: fixed;
    right: 75px;
    transition: .3s;
    width: 90px;
    z-index: 99;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2)
}

@media only screen and (max-width: 64em) {
    #back-to-top {
        display: none !important;
        height: 60px;
        width: 60px;
        right: 2.5%;
        bottom: 75px
    }
}

@media only screen and (max-width: 47.9375em) {
    #back-to-top {
        border: 1px solid #fff;
        bottom: 75px;
        height: 45px;
        right: 2.5%;
        width: 45px
    }
}

#back-to-top:hover {
    background-color: #FF6F22;
    color: #fff
}

#back-to-top::after {
    content: '\f102';
    font-family: "Font Awesome 5 Free";
    font-size: 36px;
    font-weight: 600
}

@media only screen and (max-width: 47.9375em) {
    #back-to-top::after {
        font-size: 18px
    }
}

.inquiry {
    background-color: #FF6F22;
    background-image: url("../images/common/inquiry-bg.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 160px 0 0 0;
    display: block;
    padding: 120px 48px 120px;
    position: relative
}

@media only screen and (max-width: 47.9375em) {
    .inquiry {
        border-radius: 60px 0 0 0;
        align-items: flex-end;
        padding: 60px 24px 60px
    }
}

.inquiry .inquiry-contents {
    position: relative;
    width: 1030px;
    margin: 0 auto
}

@media only screen and (max-width: 64em) {
    .inquiry .inquiry-contents {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .inquiry .inquiry-contents {
        width: 100%
    }
}

.inquiry .inquiry-contents .title span {
    color: #fff
}

@media only screen and (max-width: 47.9375em) {
    .inquiry .inquiry-contents .title span {
        display: block
    }
}

.inquiry .inquiry-contents .inquiry-links {
    display: flex;
    justify-content: space-between;
    gap: 150px;
    margin-top: 100px
}

@media only screen and (max-width: 64em) {
    .inquiry .inquiry-contents .inquiry-links {
        gap: 84px
    }
}

@media only screen and (max-width: 47.9375em) {
    .inquiry .inquiry-contents .inquiry-links {
        gap: 50px;
        margin-top: 50px;
        flex-direction: column
    }
}

.inquiry .inquiry-contents .inquiry-links .inquiry-link {
    align-items: center;
    background-color: #fff;
    border-radius: 90px 90px 4px 90px;
    display: flex;
    justify-content: center;
    width: 50%
}

@media only screen and (max-width: 47.9375em) {
    .inquiry .inquiry-contents .inquiry-links .inquiry-link {
        border-radius: 40px 40px 4px 40px;
        width: 100%
    }
}

.inquiry .inquiry-contents .inquiry-links .inquiry-link a {
    color: #222;
    display: flex;
    gap: 35px;
    flex-direction: column;
    padding: 85px 68px 55px;
    transition: .3s;
    padding: 50px 30px
}

@media only screen and (max-width: 47.9375em) {
    .inquiry .inquiry-contents .inquiry-links .inquiry-link a {
        gap: 15px;
        padding: 25px 25px
    }
}

.inquiry .inquiry-contents .inquiry-links .inquiry-link a:hover {
    opacity: .8
}

.inquiry .inquiry-contents .inquiry-links .inquiry-link a .inquiry-link-img {
    margin: 0 auto;
    width: 126px
}

@media only screen and (max-width: 47.9375em) {
    .inquiry .inquiry-contents .inquiry-links .inquiry-link a .inquiry-link-img {
        width: 60px
    }
}

.inquiry .inquiry-contents .inquiry-links .inquiry-link a .inquiry-link-img img {
    width: 100%
}

.inquiry .inquiry-contents .inquiry-links .inquiry-link a .inquiry-link-info .inquiry-link-title {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 10px;
    text-align: center
}

.inquiry .inquiry-contents .inquiry-links .inquiry-link a .inquiry-link-info .inquiry-link-desc {
    font-size: 16px;
    font-weight: 500;
    text-align: center
}

.pager-wrapper {
    align-items: center;
    display: flex;
    justify-content: center;
    margin: 0 auto
}

.pager-wrapper .pagination {
    align-items: center;
    display: flex;
    justify-content: flex-start;
    gap: 10px
}

.pager-wrapper .pagination .page-numbers {
    align-items: center;
    border: 1px solid #DCD9DC;
    border-radius: 50%;
    color: #2B2D31;
    display: flex;
    font-size: 18px;
    height: 40px;
    justify-content: center;
    transition: .3s;
    width: 40px
}

@media only screen and (max-width: 47.9375em) {
    .pager-wrapper .pagination .page-numbers {
        font-size: 10px;
        height: 20px;
        width: 20px;
        gap: 5px
    }
}

.pager-wrapper .pagination .page-numbers:hover {
    border: 2px solid #FF6F22;
    background-color: #FF6F22;
    color: #fff
}

.pager-wrapper .pagination .page-numbers.current {
    background-color: #FF6F22;
    color: #fff
}

.pager-wrapper .pagination .page-numbers.dots {
    border: 0
}

.pager-wrapper .pagination .page-numbers.dots:hover {
    background-color: transparent;
    color: #2B2D31;
    border: 0
}

.pager-wrapper .pagination .page-numbers.next,
.pager-wrapper .pagination .page-numbers.prev {
    border: 1px solid #DCD9DC
}

.pager-wrapper .pagination .page-numbers.next:hover,
.pager-wrapper .pagination .page-numbers.prev:hover {
    background-color: #FF6F22;
    color: #fff
}

#sticky-btn {
    background: linear-gradient(to bottom right, #FFB62D, #FF6F22);
    border-radius: 24px 24px 3px 24px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.08);
    align-items: center;
    bottom: 20px;
    display: none !important;
    height: 80px;
    justify-content: center;
    position: fixed;
    right: 20px;
    transition: .5s;
    width: 80px;
    z-index: 9999
}

@media only screen and (max-width: 64em) {
    #sticky-btn {
        display: flex !important
    }
}

#sticky-btn img {
    height: 40px;
    width: 36px
}

@keyframes slidein {
    from {
        position: fixed;
        top: -50px;
        opacity: 0
    }
    to {
        position: fixed;
        top: 0;
        opacity: 1
    }
}

@keyframes slideout {
    from {
        position: fixed;
        top: 0;
        opacity: 1
    }
    to {
        position: fixed;
        top: -50px;
        opacity: 0
    }
}

.header.clone.initialized {
    -webkit-animation: slideout .3s forwards;
    animation: slideout .3s forwards
}

@media only screen and (max-width: 47.9375em) {
    .header.clone.initialized {
        display: none !important
    }
}

body.sticky .header.clone {
    -webkit-animation: slidein .3s forwards;
    animation: slidein .3s forwards
}

@media only screen and (max-width: 47.9375em) {
    body.sticky .header.clone {
        display: none !important
    }
}

.header.clone.initialized .logo-link {
    display: none !important
}

.header.clone.initialized .top-link {
    display: none !important
}

.header.clone.initialized .logo {
    width: 190px !important
}

@keyframes marquee {
    0% {
        transform: translateX(0%)
    }
    100% {
        transform: translateX(-50%)
    }
}

.breadcrumbs {
    padding: 50px 50px 30px
}

@media only screen and (max-width: 64em) {
    .breadcrumbs {
        padding: 0 0 20px
    }
}

.breadcrumbs .breadcrumbs-item {
    color: #fff;
    display: inline-flex;
    font-size: 16px;
    font-weight: 500
}

.breadcrumbs .breadcrumbs-item:after {
    content: '/';
    display: inline-flex;
    padding: 0 3px 0 5px
}

.breadcrumbs .breadcrumbs-item:last-child:after {
    display: none
}

.breadcrumbs .breadcrumbs-item a:hover {
    opacity: .8
}

#banner {
    position: relative;
    z-index: 100
}

#banner::after {
    background-image: url("../images/fader.png");
    background-position: bottom center;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    content: '';
    display: none;
    height: 110px;
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    z-index: 2
}

@media only screen and (max-width: 47.9375em) {
    #banner::after {
        display: none
    }
}

#banner .banner-wrapper .banner-contents {
    align-items: center;
    display: flex;
    position: relative
}

@media only screen and (max-width: 47.9375em) {
    #banner .banner-wrapper .banner-contents {
        align-items: flex-end
    }
}

#banner .banner-wrapper .banner-contents .main-mv {
    width: 100%
}

#banner .banner-wrapper .banner-contents .main-mv img {
    width: 100%
}

#banner .banner-wrapper .banner-contents .main-mv img.pc {
    display: block
}

@media only screen and (max-width: 47.9375em) {
    #banner .banner-wrapper .banner-contents .main-mv img.pc {
        display: none
    }
}

#banner .banner-wrapper .banner-contents .main-mv img.sp {
    display: none
}

@media only screen and (max-width: 47.9375em) {
    #banner .banner-wrapper .banner-contents .main-mv img.sp {
        display: block
    }
}

#banner .banner-wrapper .banner-contents .banner-info {
    left: 4.5%;
    position: absolute;
    transform: translate(0, -50%);
    top: 60%;
    z-index: 50
}

@media only screen and (max-width: 47.9375em) {
    #banner .banner-wrapper .banner-contents .banner-info {
        left: 50%;
        top: 105%;
        width: 90%;
        transform: translate(-50%, -50%)
    }
}

#banner .banner-wrapper .banner-contents .banner-info p {
    color: #111111;
    font-size: 18px;
    line-height: 1.8;
    font-family: "Zen Maru Gothic", sans-serif;
    font-weight: 500
}

@media only screen and (max-width: 64em) {
    #banner .banner-wrapper .banner-contents .banner-info p {
        font-size: 12px
    }
}

@media only screen and (max-width: 47.9375em) {
    #banner .banner-wrapper .banner-contents .banner-info p {
        top: 68%;
        font-size: 17px;
        margin-bottom: 10px;
        left: 5vw
    }
}

@media only screen and (max-width: 47.9375em) {
    #banner .banner-wrapper .banner-contents .banner-info p span.nlsp {
        display: block
    }
}

#banner .banner-wrapper .banner-contents .banner-info p strong {
    display: block;
    font-size: 60px;
    font-weight: 700;
    margin-bottom: 40px;
    font-family: "Zen Maru Gothic", sans-serif;
    line-height: 1.2;
    color: #222222
}

@media only screen and (max-width: 64em) {
    #banner .banner-wrapper .banner-contents .banner-info p strong {
        font-size: 30px;
        margin-bottom: 20px
    }
}

@media only screen and (max-width: 47.9375em) {
    #banner .banner-wrapper .banner-contents .banner-info p strong {
        font-size: 34px;
        margin-bottom: 15px
    }
}

#banner .banner-wrapper .banner-contents .banner-info p strong span.orange {
    color: #FF6F22
}

#banner .banner-wrapper .banner-contents .banner-info .banner-date {
    align-items: center;
    background: linear-gradient(to right, #FFB62D, #FF6F22);
    border-radius: 70px;
    display: flex;
    height: 74px;
    margin-top: 70px;
    padding: 20px 40px 20px 55px;
    width: 605px;
    transition: .5s
}

@media only screen and (max-width: 64em) {
    #banner .banner-wrapper .banner-contents .banner-info .banner-date {
        margin-top: 35px;
        padding: 20px
    }
}

@media only screen and (max-width: 47.9375em) {
    #banner .banner-wrapper .banner-contents .banner-info .banner-date {
        border-radius: 20px;
        height: auto;
        flex-direction: column;
        margin-top: 50px;
        padding: 20px;
        width: 100%
    }
}

#banner .banner-wrapper .banner-contents .banner-info .banner-date:hover {
    background: linear-gradient(to bottom right, #FFB62D, #FF6F22)
}

#banner .banner-wrapper .banner-contents .banner-info .banner-date .date {
    border-right: 1px solid #fff;
    color: #fff;
    font-family: "Montserrat";
    font-size: 16px;
    font-weight: 500;
    padding: 10px 15px 10px 0
}

@media only screen and (max-width: 64em) {
    #banner .banner-wrapper .banner-contents .banner-info .banner-date .date {
        font-size: 14px
    }
}

@media only screen and (max-width: 47.9375em) {
    #banner .banner-wrapper .banner-contents .banner-info .banner-date .date {
        font-size: 14px;
        border-bottom: 1px solid #fff;
        border-right: 0;
        padding: 0 0 10px;
        width: 100%
    }
}

#banner .banner-wrapper .banner-contents .banner-info .banner-date .text {
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;
    padding-left: 16px
}

@media only screen and (max-width: 47.9375em) {
    #banner .banner-wrapper .banner-contents .banner-info .banner-date .text {
        padding-top: 10px;
        padding-left: 0;
        font-size: 14px
    }
}

.modal {
    background-color: #FF6F22;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%;
    display: none;
    height: 100vh;
    left: 0;
    transition: .3s;
    position: fixed;
    top: 0;
    overflow: scroll;
    padding-bottom: 50px;
    width: 100vw;
    z-index: 950
}

.modal.is-active {
    display: block
}

.modal .hamburger {
    height: 50px;
    padding: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 50px
}

.modal .hamburger-inner,
.modal .hamburger-inner:after,
.modal .hamburger-inner:before {
    background-color: #fff !important
}

.modal .logo {
    display: block;
    margin: 120px auto 0px;
    width: 225px
}

.modal .logo img {
    display: block;
    width: 100%
}

.modal .logo img.img-pc {
    display: block
}

@media only screen and (max-width: 64em) {
    .modal .logo img.img-pc {
        display: none
    }
}

@media only screen and (max-width: 47.9375em) {
    .modal .logo img.img-pc {
        display: none
    }
}

.modal .logo img.img-sp {
    display: none
}

@media only screen and (max-width: 64em) {
    .modal .logo img.img-sp {
        display: block
    }
}

@media only screen and (max-width: 47.9375em) {
    .modal .logo img.img-sp {
        display: block
    }
}

.modal .menu-lists .menu-lists--item {
    text-align: center;
    margin-bottom: 20px;
    padding-bottom: 3px
}

.modal .menu-lists .menu-lists--item a {
    border-bottom: 1px solid #fff;
    color: #fff;
    font-size: 20px
}

.modal .nav-accordion {
    display: flex;
    flex-direction: column;
    gap: 30px 0;
    width: 100%;
    max-width: 100%;
    margin: 0px auto 0px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px
}

@media only screen and (max-width: 64em) {
    .modal .nav-accordion {
        width: 95%
    }
}

@media only screen and (max-width: 47.9375em) {
    .modal .nav-accordion {
        width: 100%
    }
}

.modal .nav-accordion li {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 0px;
    position: relative;
    width: 100%
}

.modal .nav-accordion li.open .link::after {
    content: "\f106";
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    position: absolute;
    right: 0px;
    top: 50%;
    transform: translate(-50%, -50%);
    font-family: "Font Awesome 5 Free";
    font-weight: 900 !important
}

.modal .nav-accordion li ul {
    background-color: #fff;
    align-items: center;
    display: none;
    flex-direction: column;
    justify-content: center;
    transition: .3s;
    width: 100%
}

.modal .nav-accordion li ul li:last-child {
    border-bottom: none
}

.modal .nav-accordion li ul li .link {
    font-size: .875rem
}

.modal .nav-accordion li ul li a {
    padding: 20px 0 21px !important
}

.modal .nav-accordion li .acc-btn {
    background-color: #367DCE;
    border: 0;
    font-size: 0;
    outline: 0;
    position: absolute;
    right: 5%;
    top: 10px;
    -webkit-appearance: none;
    height: 20px;
    width: 20px;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

.modal .nav-accordion li .acc-btn.active::after {
    content: "\f068"
}

.modal .nav-accordion li .acc-btn::after {
    content: "\f067";
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    font-family: "Font Awesome 5 Free";
    font-weight: 900 !important;
    position: relative;
    top: 0px
}

.modal .nav-accordion .link {
    background-color: transparent;
    cursor: pointer;
    display: inline;
    padding: 24px 0 23px;
    color: #222;
    font-size: 14px;
    font-weight: 700;
    position: relative;
    -webkit-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    text-align: left;
    width: 90%;
    margin: 0 auto;
    letter-spacing: .03em
}

@media only screen and (max-width: 64em) {
    .modal .nav-accordion .link {
        color: #fff;
        font-family: "Montserrat";
        font-size: 24px;
        font-weight: bold;
        line-height: 1.5;
        text-align: center;
        padding: 0
    }
}

@media only screen and (max-width: 47.9375em) {
    .modal .nav-accordion .link {
        color: #fff;
        font-family: "Montserrat";
        font-size: 24px;
        font-weight: bold;
        line-height: 1.5;
        text-align: center;
        padding: 0
    }
}

.modal .nav-accordion .link.last-link {
    border-bottom: none
}

.modal .nav-accordion .ham-accordion.active {
    border-bottom: none
}

.modal .nav-accordion .ham-accordion.active::after {
    content: "\f068"
}

.modal .nav-accordion .ham-accordion:after {
    background-color: #367DCE;
    border-radius: 100%;
    content: '\2b';
    color: #fff;
    font-weight: bold;
    font-size: 10px;
    position: absolute;
    right: 0px;
    top: 50%;
    transform: translate(-50%, -50%);
    font-family: "Font Awesome 5 Free";
    font-weight: 900 !important;
    height: 20px;
    width: 20px;
    display: flex;
    justify-content: center;
    align-items: center
}

.modal .nav-accordion .submenu {
    display: none;
    position: relative;
    justify-content: flex-end;
    padding: 0 0 20px
}

.modal .nav-accordion .submenu .sub-link {
    color: #fff;
    display: block;
    font-size: 14px;
    line-height: 1.8;
    padding: 15px 100px 15px 10px
}

@media only screen and (max-width: 47.9375em) {
    .modal .nav-accordion .submenu .sub-link {
        padding: 5px 30px 5px 10px
    }
}

.modal .nav-accordion .submenu .sub-link.pad-link {
    margin-left: 12px;
    border-left: solid 1px #bdbdbd
}

.modal .nav-accordion .submenu .d-block {
    background-color: #fff;
    color: #1e1e1e;
    display: flex;
    font-size: 12px;
    align-items: center;
    justify-content: center;
    padding: 1px 10px 3px;
    margin: 15px 0 15px 12px;
    width: 70px
}

.modal .nav-accordion .submenu .d-block.d-block2 {
    margin: 30px 0 15px 12px
}

.modal .nav-accordion .submenu .p-block {
    background-color: #fff;
    color: #ca4c96;
    display: flex;
    font-size: 12px;
    align-items: center;
    justify-content: center;
    padding: 1px 10px 3px;
    margin: 15px 0 10px 12px;
    width: 70px
}

.modal .nav-accordion .submenu .btn-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end
}

.modal .nav-accordion .submenu .btn-wrapper .btn {
    background-color: #fff;
    border: solid 1px #cb4d97;
    border-radius: 0.3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    height: 38px;
    padding: 8px 23px;
    position: relative;
    margin: 30px 100px 30px 0;
    transition: .5s;
    width: 250px
}

@media only screen and (max-width: 64em) {
    .modal .nav-accordion .submenu .btn-wrapper .btn {
        padding: 8px 10px
    }
}

@media only screen and (max-width: 47.9375em) {
    .modal .nav-accordion .submenu .btn-wrapper .btn {
        padding: 8px 23px
    }
}

.modal .nav-accordion .submenu .btn-wrapper .btn:hover {
    background-color: #cb4d97
}

.modal .nav-accordion .submenu .btn-wrapper .btn:hover p {
    color: #fff
}

.modal .nav-accordion .submenu .btn-wrapper .btn:hover p::after {
    border: solid #fff;
    border-width: 0 3px 3px 0;
    content: "";
    display: inline-block;
    padding: 3px;
    position: relative;
    top: 50%;
    margin-left: .5rem;
    transform: translate(0%, -20%) rotate(-45deg);
    text-align: center
}

.modal .nav-accordion .submenu .btn-wrapper .btn p {
    color: #cb4d97;
    font-size: 14px;
    font-weight: 600;
    padding-right: .25rem;
    position: relative
}

@media only screen and (max-width: 64em) {
    .modal .nav-accordion .submenu .btn-wrapper .btn p {
        font-size: 16px
    }
}

@media only screen and (max-width: 47.9375em) {
    .modal .nav-accordion .submenu .btn-wrapper .btn p {
        font-size: 16px
    }
}

.modal .nav-accordion .submenu .btn-wrapper .btn p:after {
    border: solid #cb4d97;
    border-width: 0 3px 3px 0;
    content: "";
    display: inline-block;
    padding: 3px;
    position: relative;
    top: 50%;
    margin-left: .5rem;
    transform: translate(0%, -20%) rotate(-45deg)
}

.modal .request {
    background-color: #fff;
    border: solid 1px #DD8731;
    border-radius: 15px;
    color: #DD8731;
    display: flex;
    font-size: 15px;
    flex-wrap: wrap;
    align-items: center;
    margin: 20px auto 0;
    justify-content: center;
    transition: .5s;
    height: 45px;
    width: 245px
}

.modal .request:hover {
    background-color: #DD8731;
    color: #fff
}

.modal .contact1 {
    background-color: #DD8731;
    border: solid 1px #fff;
    border-radius: 15px;
    color: #fff;
    display: flex;
    font-size: 15px;
    flex-wrap: wrap;
    align-items: center;
    margin: 20px auto 0;
    justify-content: center;
    transition: .5s;
    height: 45px;
    width: 245px
}

.modal .contact1:hover {
    background-color: #DD8731;
    color: #fff
}

.modal .social-container {
    background-color: #fff;
    border-radius: 9px;
    display: block;
    padding: 10px 0 20px;
    margin: 20px auto 0;
    width: 95%
}

.modal .social-container .s-title {
    display: block;
    font-size: 16px;
    text-align: center;
    margin: 0 auto 8px
}

.modal .social-container .s-lists {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto 12px;
    justify-content: space-between;
    width: 175px
}

.modal .social-container .s-lists .s-lists--item {
    width: 19%
}

.modal .social-container .s-lists .s-lists--item img {
    width: 100%
}

.modal .social-container .number {
    display: block;
    margin: 0 auto;
    width: max-content
}

.modal .social-container .number p {
    display: block;
    font-size: 20px;
    font-weight: bold;
    position: relative
}

.modal .social-container .number p::before {
    background-image: url("../images/common/icon_phone.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content: '';
    display: block;
    height: 18px;
    position: absolute;
    left: -20px;
    bottom: 3px;
    width: 18px
}

.modal .social-container .number p span {
    display: block;
    font-size: 12px;
    font-weight: normal;
    margin-bottom: 5px;
    text-align: center
}

.modal .social-container .number img {
    width: 100%
}

.modal .line-link {
    display: block;
    margin: 30px auto 50px;
    width: 50%
}

.modal .line-link img {
    width: 100%
}

.contact {
    background-color: #fff;
    padding: 65px 0 120px
}

@media only screen and (max-width: 64em) {
    .contact {
        padding: 65px 30px 120px
    }
}

@media only screen and (max-width: 47.9375em) {
    .contact {
        padding: 30px 0 60px
    }
}

@media only screen and (max-width: 47.9375em) {
    .contact .contact-contents {
        padding: 0 5%
    }
}

.contact .contact-contents .subtitle {
    margin-bottom: 20px
}

.contact .contact-contents .contact-info {
    background-image: url("../images/bg_contact.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 19px;
    display: block;
    padding: 67px 87px 56px
}

@media only screen and (max-width: 47.9375em) {
    .contact .contact-contents .contact-info {
        border: 3px solid #000;
        padding: 35px 0 40px
    }
}

.contact .contact-contents .contact-info .contact-details {
    display: block
}

.contact .contact-contents .contact-info .contact-details .contact-title {
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 100px;
    line-height: 36px;
    text-align: left
}

@media only screen and (max-width: 47.9375em) {
    .contact .contact-contents .contact-info .contact-details .contact-title {
        font-size: 14px;
        margin-bottom: 15px
    }
}

.contact .contact-contents .contact-info .contact-details .btn-contact {
    background-color: #DD8731;
    color: #fff;
    align-items: center;
    border-radius: 11px;
    display: flex;
    font-size: 24px;
    font-weight: 700;
    height: 75px;
    justify-content: center;
    width: 315px;
    margin: 0 auto;
    position: relative;
    text-align: center;
    transition: .3s
}

@media only screen and (max-width: 47.9375em) {
    .contact .contact-contents .contact-info .contact-details .btn-contact {
        height: 60px;
        font-size: 14px;
        width: 225px
    }
}

.contact .contact-contents .contact-info .contact-details .btn-contact:hover {
    background-color: #fff;
    color: #DD8731
}

#footer {
    background-image: url("../images/common/bg_footer.png");
    background-position: center bottom;
    background-size: 1150px 352px;
    background-color: #121212;
    background-repeat: no-repeat;
    padding: 70px 48px 55px
}

@media only screen and (max-width: 47.9375em) {
    #footer {
        background-size: 700px 213px;
        padding: 35px 24px 30px
    }
}

#footer .footer-wrapper .footer-contents {
    position: relative
}

#footer .footer-wrapper .footer-contents:before {
    content: '';
    display: block;
    width: 1150px
}

@media only screen and (max-width: 47.9375em) {
    #footer .footer-wrapper .footer-contents:before {
        width: 100%
    }
}

#footer .footer-wrapper .footer-contents .nav-footer {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
    margin: 0 auto;
    width: 1150px
}

@media only screen and (max-width: 64em) {
    #footer .footer-wrapper .footer-contents .nav-footer {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    #footer .footer-wrapper .footer-contents .nav-footer {
        width: 100%
    }
}

#footer .footer-wrapper .footer-contents .nav-footer .logo {
    width: 240px
}

#footer .footer-wrapper .footer-contents .nav-footer .logo img {
    width: 100%
}

#footer .footer-wrapper .footer-contents .nav-footer .main-link {
    color: #AFAFAF;
    font-size: 22px;
    font-weight: bold;
    margin-top: 30px
}

#footer .footer-wrapper .footer-contents .nav-footer .nav-footer-lists {
    align-items: center;
    justify-content: flex-start;
    gap: 32px;
    display: flex;
    margin-top: 20px
}

@media only screen and (max-width: 64em) {
    #footer .footer-wrapper .footer-contents .nav-footer .nav-footer-lists {
        flex-wrap: wrap;
        gap: 10px 32px
    }
}

@media only screen and (max-width: 47.9375em) {
    #footer .footer-wrapper .footer-contents .nav-footer .nav-footer-lists {
        align-items: flex-start;
        flex-direction: column;
        gap: 24px
    }
}

#footer .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav--item {
    display: flex;
    color: #fff;
    font-size: 14px;
    line-height: 175%;
    border-bottom-width: 0;
    background-image: linear-gradient(transparent, transparent), linear-gradient(#121212, #121212);
    background-size: 0 1px;
    background-position: 0 100%;
    background-repeat: no-repeat;
    transition: background-size .3s ease-in-out;
    padding: 0 0 13px
}

@media only screen and (max-width: 47.9375em) {
    #footer .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav--item {
        padding: 0 0 10px
    }
}

#footer .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav--item:hover {
    color: #FF6F22;
    background-image: linear-gradient(transparent, transparent), linear-gradient(#FF6F22, #FF6F22);
    background-size: 100% 1px;
    background-position: 0 100%
}

@media only screen and (max-width: 47.9375em) {
    #footer .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav--item:hover {
        background-image: linear-gradient(transparent, transparent), linear-gradient(#121212, #121212)
    }
}

#footer .footer-wrapper .footer-contents .nav-footer .nav-footer-lists img {
    height: 62px
}

#footer .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav-btn {
    align-items: center;
    border: 1px solid #fff;
    border-radius: 20px;
    color: #fff;
    display: inline-flex;
    font-size: 14px;
    height: 38px;
    justify-content: center;
    padding: 8px 24px 10px;
    transition: .5s
}

@media only screen and (max-width: 47.9375em) {
    #footer .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav-btn {
        display: inline-flex
    }
}

@media only screen and (max-width: 47.9375em) {
    #footer .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav-btn:nth-child(1) {
        width: 140px
    }
}

@media only screen and (max-width: 47.9375em) {
    #footer .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav-btn:nth-child(2) {
        width: 180px
    }
}

#footer .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav-btn:after {
    background-image: url("../images/common/link.png");
    background-position: center;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    content: '';
    display: inline-block;
    height: 14px;
    width: 14px;
    margin-left: 8px
}

#footer .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav-btn:hover {
    background-color: #FF6F22;
    border: 1px solid #FF6F22
}

#footer .footer-wrapper .footer-contents .copyright {
    color: #fff;
    display: block;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.8;
    width: 100%;
    margin: 200px auto 0;
    text-align: center
}

@media only screen and (max-width: 47.9375em) {
    #footer .footer-wrapper .footer-contents .copyright {
        margin: 80px auto 0
    }
}

@media only screen and (max-width: 47.9375em) {
    #footer .footer-wrapper .footer-contents .copyright span {
        display: block
    }
}

.contact2 {
    background-color: #fff;
    padding: 65px 0 120px
}

@media only screen and (max-width: 64em) {
    .contact2 {
        padding: 65px 30px 120px;
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .contact2 {
        padding: 50px 0 50px
    }
}

@media only screen and (max-width: 47.9375em) {
    .contact2 .contact-contents {
        padding: 0 5%
    }
}

.contact2 .contact-contents .subtitle {
    margin-bottom: 20px
}

.contact2 .contact-contents .contact-info {
    background-image: url("../images/index2/bg_contact.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 19px;
    display: block;
    padding: 67px 87px 56px
}

@media only screen and (max-width: 47.9375em) {
    .contact2 .contact-contents .contact-info {
        padding: 40px 30px 30px
    }
}

.contact2 .contact-contents .contact-info .contact-details {
    display: block
}

.contact2 .contact-contents .contact-info .contact-details .contact-title {
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 100px;
    line-height: 36px;
    text-align: left
}

@media only screen and (max-width: 47.9375em) {
    .contact2 .contact-contents .contact-info .contact-details .contact-title {
        font-size: 15px;
        line-height: 28px;
        margin-bottom: 15px;
        text-align: center
    }
}

.contact2 .contact-contents .contact-info .contact-details .btn-contact {
    background-color: #DD8731;
    color: #fff;
    align-items: center;
    border-radius: 11px;
    display: flex;
    font-size: 24px;
    font-weight: 700;
    height: 75px;
    justify-content: center;
    width: 315px;
    margin: 0 auto;
    position: relative;
    text-align: center;
    transition: .3s
}

@media only screen and (max-width: 47.9375em) {
    .contact2 .contact-contents .contact-info .contact-details .btn-contact {
        height: 60px;
        font-size: 14px;
        width: 225px
    }
}

.contact2 .contact-contents .contact-info .contact-details .btn-contact:hover {
    background-color: #fff;
    color: #DD8731
}

#footer2 {
    background-color: #367DCE;
    padding: 70px 0 55px
}

@media only screen and (max-width: 64em) {
    #footer2 {
        padding: 70px 15px 55px
    }
}

@media only screen and (max-width: 47.9375em) {
    #footer2 {
        padding: 35px 0 40px
    }
}

@media only screen and (max-width: 47.9375em) {
    #footer2 .footer-wrapper .footer-contents {
        padding: 0 40px
    }
}

#footer2 .footer-wrapper .footer-contents .nav-footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
    width: 1050px
}

@media only screen and (max-width: 64em) {
    #footer2 .footer-wrapper .footer-contents .nav-footer {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    #footer2 .footer-wrapper .footer-contents .nav-footer {
        width: 100%
    }
}

#footer2 .footer-wrapper .footer-contents .nav-footer .nav-footer-lists {
    width: 23.5%
}

@media only screen and (max-width: 47.9375em) {
    #footer2 .footer-wrapper .footer-contents .nav-footer .nav-footer-lists {
        width: 100%
    }
}

#footer2 .footer-wrapper .footer-contents .nav-footer .nav-footer-lists:nth-child(n+2) {
    padding-top: 25px
}

#footer2 .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav--item-title {
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    line-height: 175%
}

#footer2 .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav--item {
    display: flex;
    color: #fff;
    font-size: 14px;
    line-height: 175%;
    transition: .5s;
    width: 100%
}

@media only screen and (max-width: 64em) {
    #footer2 .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav--item {
        font-size: 13px
    }
}

@media only screen and (max-width: 47.9375em) {
    #footer2 .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav--item {
        font-size: 14px
    }
}

#footer2 .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav--item .img-footer {
    display: block;
    width: 240px !important
}

#footer2 .footer-wrapper .footer-contents .nav-footer .nav-footer-lists .nav--item:hover {
    color: #DD8731;
    opacity: .5
}

#footer2 .footer-wrapper .footer-contents .copyright {
    color: #fff;
    display: block;
    font-size: 12px;
    font-weight: bold;
    width: 100%;
    margin: 80px auto 0;
    text-align: center
}

@media only screen and (max-width: 47.9375em) {
    #footer2 .footer-wrapper .footer-contents .copyright {
        margin: 40px auto 0
    }
}

.page-top .mission {
    background-color: #fff;
    display: block;
    padding: 80px 48px 120px;
    position: relative;
    z-index: 10
}

@media only screen and (max-width: 47.9375em) {
    .page-top .mission {
        align-items: flex-end;
        padding: 120px 24px 60px
    }
}

.page-top .mission .mission-contents {
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    width: 1050px;
    margin: 0 auto
}

@media only screen and (max-width: 64em) {
    .page-top .mission .mission-contents {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .mission .mission-contents {
        margin-top: 120px;
        width: 100%
    }
}

.page-top .mission .mission-contents .mission-cover img {
    width: 100%
}

.page-top .mission .mission-contents .mission-cover img.pc {
    display: block
}

@media only screen and (max-width: 47.9375em) {
    .page-top .mission .mission-contents .mission-cover img.pc {
        display: none
    }
}

.page-top .mission .mission-contents .mission-cover img.sp {
    display: none
}

@media only screen and (max-width: 47.9375em) {
    .page-top .mission .mission-contents .mission-cover img.sp {
        display: block
    }
}

.page-top .mission .mission-contents .mission-details {
    width: 100%
}

@media only screen and (max-width: 47.9375em) {
    .page-top .mission .mission-contents .mission-details {
        padding: 0 0
    }
}

.page-top .mission .mission-contents .mission-details .title {
    font-size: 56px;
    line-height: 1.5;
    margin-bottom: 20px
}

@media only screen and (max-width: 64em) {
    .page-top .mission .mission-contents .mission-details .title {
        font-size: 44px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .mission .mission-contents .mission-details .title {
        margin-bottom: 10px;
        letter-spacing: 0;
        font-size: 36px
    }
}

.page-top .mission .mission-contents .mission-details .mission-title {
    font-size: 48px;
    font-weight: 700;
    letter-spacing: 5px;
    line-height: 1.5;
    margin-bottom: 20px;
    margin-top: 100px;
    text-align: center
}

@media only screen and (max-width: 64em) {
    .page-top .mission .mission-contents .mission-details .mission-title {
        font-size: 42px;
        margin-bottom: 20px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .mission .mission-contents .mission-details .mission-title {
        font-size: 28px;
        line-height: 1.5;
        margin-bottom: 25px;
        margin-top: 50px;
        text-align: center
    }
}

.page-top .mission .mission-contents .mission-details .mission-title span {
    color: #DD8731
}

@media only screen and (max-width: 47.9375em) {
    .page-top .mission .mission-contents .mission-details .mission-title span {
        display: block
    }
}

.page-top .mission .mission-contents .mission-details .mission-title span.nlsp {
    color: #222
}

@media only screen and (max-width: 47.9375em) {
    .page-top .mission .mission-contents .mission-details .mission-title span.nlsp {
        color: #222;
        display: block
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .mission .mission-contents .mission-details .mission-title br {
        display: none
    }
}

.page-top .mission .mission-contents .mission-details .mission-title2 {
    display: block;
    font-size: 40px;
    font-weight: 700;
    letter-spacing: 5px;
    margin-top: 35px;
    margin-bottom: 20px;
    text-align: center
}

@media only screen and (max-width: 64em) {
    .page-top .mission .mission-contents .mission-details .mission-title2 {
        font-size: 32px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .mission .mission-contents .mission-details .mission-title2 {
        display: none;
        font-size: 35px;
        margin-bottom: 20px;
        text-align: center
    }
}

.page-top .mission .mission-contents .mission-details .mission-title2 span {
    color: #FF6F22
}

@media only screen and (max-width: 47.9375em) {
    .page-top .mission .mission-contents .mission-details .mission-title2 span {
        display: block
    }
}

.page-top .mission .mission-contents .mission-details .desc {
    text-align: left;
    position: relative
}

.page-top .mission .mission-contents .mission-details .desc.wbg::before {
    background-image: url("../images/bg_polimill.png");
    background-position: center;
    background-size: 100%;
    content: '';
    display: block;
    height: 306px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 1000px
}

.page-top .mission .mission-contents .mission-details .desc.center {
    text-align: center
}

.page-top .mission .mission-contents .cover {
    display: block;
    margin: 50px auto 80px;
    width: 80%
}

@media only screen and (max-width: 47.9375em) {
    .page-top .mission .mission-contents .cover {
        margin: 40px auto 60px;
        width: 100%
    }
}

.page-top .mission .mission-contents .cover img {
    width: 100%
}

.page-top .services {
    background-color: #FF6F22;
    border-radius: 160px 0 0 0;
    display: block;
    padding: 160px 0px 270px;
    position: relative;
    overflow: hidden
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services {
        border-radius: 80px 0 0 0;
        padding: 80px 0 135px 0
    }
}

.page-top .services::before,
.page-top .services::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url("../images/common/services-bg.jpg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 700px 307px;
    width: 700px;
    height: 307px;
    z-index: 1
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services::before,
    .page-top .services::after {
        background-size: 100% auto;
        height: 167px;
        width: 100%
    }
}

.page-top .services::before {
    top: 0;
    left: 0
}

.page-top .services::after {
    top: auto;
    left: auto;
    bottom: 0;
    right: 0;
    rotate: 180deg
}

.page-top .services .services-contents {
    margin: 0 auto;
    position: relative;
    width: 1232px;
    z-index: 2
}

@media only screen and (max-width: 64em) {
    .page-top .services .services-contents {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-contents {
        width: 100%
    }
}

.page-top .services .services-contents .subtitle,
.page-top .services .services-contents .title {
    text-align: left
}

@media only screen and (max-width: 64em) {
    .page-top .services .services-contents .subtitle,
    .page-top .services .services-contents .title {
        margin-left: 5%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-contents .subtitle,
    .page-top .services .services-contents .title {
        margin-left: auto;
        text-align: center
    }
}

.page-top .services .services-contents .subtitle span,
.page-top .services .services-contents .title span {
    color: #fff
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-contents .subtitle span,
    .page-top .services .services-contents .title span {
        display: block
    }
}

.page-top .services .services-contents .services-info-wrap .services-info {
    align-items: flex-start;
    margin-top: 50px;
    display: flex;
    position: relative
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-contents .services-info-wrap .services-info {
        flex-direction: column-reverse
    }
}

.page-top .services .services-contents .services-info-wrap .services-info:nth-child(2) {
    flex-direction: row-reverse;
    margin-top: 150px
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-contents .services-info-wrap .services-info:nth-child(2) {
        margin-top: 50px
    }
}

.page-top .services .services-contents .services-info-wrap .services-info:nth-child(2) .services-text {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-top-left-radius: 80px;
    border-bottom-left-radius: 80px;
    padding: 80px 0px 80px 270px
}

@media only screen and (max-width: 64em) {
    .page-top .services .services-contents .services-info-wrap .services-info:nth-child(2) .services-text {
        padding: 80px 95px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-contents .services-info-wrap .services-info:nth-child(2) .services-text {
        border-top-left-radius: 40px;
        border-bottom-left-radius: 40px;
        padding: 60px 20px;
        flex-direction: column
    }
}

.page-top .services .services-contents .services-info-wrap .services-info:nth-child(2) .services-text::before {
    left: auto;
    right: -100%
}

.page-top .services .services-contents .services-info-wrap .services-info:nth-child(2) .services-cover {
    left: 0%;
    right: auto
}

.page-top .services .services-contents .services-info-wrap .services-info:nth-child(2) .btn-top {
    border: none;
    background: #A4DBC2;
    background: linear-gradient(90deg, #a4dbc2 0%, #4b819e 100%) !important;
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    margin: 0;
    transition: .5s
}

.page-top .services .services-contents .services-info-wrap .services-info:nth-child(2) .btn-top:hover {
    background: linear-gradient(180deg, #a4dbc2 0%, #4b819e 100%) !important
}

.page-top .services .services-contents .services-info-wrap .services-info:nth-child(2) .btn-top::before {
    background-image: url("../images/common/icon_arrow_green.png") !important;
    border: 0;
    color: #596B84
}

.page-top .services .services-contents .services-info-wrap .services-info .services-text {
    border-top-right-radius: 80px;
    border-bottom-right-radius: 80px;
    align-items: flex-start;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 20px;
    padding: 80px 270px 80px 0;
    position: relative;
    width: 70%
}

@media only screen and (max-width: 64em) {
    .page-top .services .services-contents .services-info-wrap .services-info .services-text {
        align-items: center;
        padding: 80px 95px;
        width: 95%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-contents .services-info-wrap .services-info .services-text {
        border-top-right-radius: 40px;
        border-bottom-right-radius: 40px;
        padding: 60px 20px;
        width: 95%
    }
}

.page-top .services .services-contents .services-info-wrap .services-info .services-text:before {
    background-color: #fff;
    content: "";
    display: block;
    height: 100%;
    left: -100%;
    position: absolute;
    top: 0;
    width: 100%
}

.page-top .services .services-contents .services-info-wrap .services-info .services-text .services-logo {
    margin-bottom: 20px;
    width: 420px
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-contents .services-info-wrap .services-info .services-text .services-logo {
        width: 90%
    }
}

.page-top .services .services-contents .services-info-wrap .services-info .services-text .services-logo img {
    width: 100%
}

.page-top .services .services-contents .services-info-wrap .services-info .services-text .services-title {
    font-size: 22px;
    font-weight: bold
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-contents .services-info-wrap .services-info .services-text .services-title {
        font-size: 18px
    }
}

.page-top .services .services-contents .services-info-wrap .services-info .services-text .services-cover-sp {
    display: none
}

@media only screen and (max-width: 64em) {
    .page-top .services .services-contents .services-info-wrap .services-info .services-text .services-cover-sp {
        width: 400px;
        display: block
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-contents .services-info-wrap .services-info .services-text .services-cover-sp {
        display: block;
        width: 100%
    }
}

.page-top .services .services-contents .services-info-wrap .services-info .services-text .services-cover-sp img {
    width: 100%
}

.page-top .services .services-contents .services-info-wrap .services-info .services-text .services-desc {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 20px
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-contents .services-info-wrap .services-info .services-text .services-desc {
        font-size: 14px;
        margin-bottom: 10px
    }
}

.page-top .services .services-contents .services-info-wrap .services-info .services-text .btn-top {
    border: none;
    background: #69788E;
    background: linear-gradient(90deg, #69788e 0%, #03244c 100%);
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    margin: 0;
    transition: .5s;
    width: 366px
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-contents .services-info-wrap .services-info .services-text .btn-top {
        margin: 0 auto;
        width: 90%
    }
}

.page-top .services .services-contents .services-info-wrap .services-info .services-text .btn-top:hover {
    background: linear-gradient(180deg, #69788e 0%, #03244c 100%)
}

.page-top .services .services-contents .services-info-wrap .services-info .services-text .btn-top::before {
    background-image: url("../images/common/icon_arrow_blue.png");
    border: 0;
    color: #596B84
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-contents .services-info-wrap .services-info .services-text .btn-top span {
        display: none
    }
}

.page-top .services .services-contents .services-info-wrap .services-info .services-cover {
    box-shadow: 0px 4px 24px 0px rgba(0, 0, 0, 0.25);
    border-radius: 88px;
    position: relative;
    right: 0%;
    top: -50px;
    width: 512px;
    position: absolute
}

@media only screen and (max-width: 64em) {
    .page-top .services .services-contents .services-info-wrap .services-info .services-cover {
        display: none
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-contents .services-info-wrap .services-info .services-cover {
        display: none
    }
}

.page-top .services .services-contents .services-info-wrap .services-info .services-cover img {
    width: 100%
}

.page-top .services .services-companies {
    margin-top: 80px;
    position: relative;
    z-index: 2
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-companies {
        margin-top: 40px
    }
}

.page-top .services .services-companies .companies-title {
    color: #fff;
    font-size: 22px;
    font-weight: 500;
    text-align: center
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-companies .companies-title {
        font-size: 18px
    }
}

.page-top .services .services-companies .carousel {
    width: 100%;
    overflow: hidden;
    position: relative
}

.page-top .services .services-companies .carousel-track {
    display: flex;
    transition: transform 0.5s ease
}

.page-top .services .services-companies .carousel-item {
    flex: 0 0 auto;
    padding: 0 20px
}

.page-top .services .services-companies .carousel-item img {
    max-height: 60px;
    display: block
}

.page-top .services .services-companies .company-lists {
    margin: 40px auto 0;
    width: 100%
}

@media only screen and (max-width: 64em) {
    .page-top .services .services-companies .company-lists {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-companies .company-lists {
        width: 100%
    }
}

.page-top .services .services-companies .company-lists figure {
    margin: 0 15px;
    width: 135px
}

.page-top .services .services-companies .company-lists figure img {
    width: 100%
}

.page-top .services .services-companies .companies-lists {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin: 40px auto 0;
    animation: marquee 20s linear infinite;
    width: 1430px
}

@media only screen and (max-width: 64em) {
    .page-top .services .services-companies .companies-lists {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-companies .companies-lists {
        gap: 15px;
        width: 400px
    }
}

.page-top .services .services-companies .companies-lists .companies-lists--item .companies-cover {
    width: 136px
}

@media only screen and (max-width: 47.9375em) {
    .page-top .services .services-companies .companies-lists .companies-lists--item .companies-cover {
        width: 90px
    }
}

.page-top .services .services-companies .companies-lists .companies-lists--item .companies-cover img {
    width: 100%
}

.page-top .about {
    background-color: #fff;
    display: block;
    padding: 120px 48px 120px;
    position: relative
}

@media only screen and (max-width: 47.9375em) {
    .page-top .about {
        padding: 60px 24px
    }
}

.page-top .about .about-contents {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
    width: 1200px
}

@media only screen and (max-width: 64em) {
    .page-top .about .about-contents {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .about .about-contents {
        width: 100%
    }
}

.page-top .about .about-contents .about-info {
    display: grid;
    gap: 80px;
    grid-template-columns: 520px 1fr;
    margin: 80px auto 0
}

@media only screen and (max-width: 64em) {
    .page-top .about .about-contents .about-info {
        display: flex;
        flex-direction: column;
        gap: 56px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .about .about-contents .about-info {
        display: flex;
        gap: 40px;
        flex-direction: column;
        margin: 0px auto;
        width: 100%
    }
}

.page-top .about .about-contents .about-info .about-cover {
    width: 100%
}

.page-top .about .about-contents .about-info .about-cover img {
    width: 100%
}

.page-top .about .about-contents .about-info .about-details {
    display: flex;
    flex-direction: column;
    gap: 50px
}

.page-top .about .about-contents .about-info .about-details .about-detail .subtitle {
    font-weight: 600;
    text-align: left;
    line-height: 1;
    margin-bottom: 10px
}

.page-top .about .about-contents .about-info .about-details .about-detail .title {
    font-size: 24px;
    font-weight: bold;
    text-align: left;
    letter-spacing: 0;
    line-height: 1.5;
    margin-bottom: 10px
}

.page-top .about .about-contents .about-info .about-details .about-detail .title span {
    color: #222;
    display: inline
}

@media only screen and (max-width: 47.9375em) {
    .page-top .about .about-contents .about-info .about-details .about-detail .title span {
        display: block
    }
}

.page-top .about .about-contents .about-info .about-details .about-detail .desc {
    font-size: 14px
}

@media only screen and (max-width: 47.9375em) {
    .page-top .about .about-contents .about-info .about-details .about-detail .desc {
        font-size: 16px
    }
}

.page-top .about .about-contents .about-info .about-details .btn-top {
    margin: 0;
    width: 232px
}

@media only screen and (max-width: 47.9375em) {
    .page-top .about .about-contents .about-info .about-details .btn-top {
        margin: 0 auto
    }
}

.page-top .news {
    background-color: #EFF0F9;
    border-radius: 160px 0 0 0;
    display: block;
    padding: 120px 48px 120px;
    position: relative;
    overflow: hidden
}

@media only screen and (max-width: 47.9375em) {
    .page-top .news {
        border-radius: 80px 0 0 0;
        padding: 60px 24px 60px
    }
}

.page-top .news::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url("../images/common/inquiry-bg2.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 0.25;
    z-index: 0
}

.page-top .news .news-contents {
    align-items: center;
    display: flex;
    justify-content: space-between;
    gap: 80px;
    position: relative;
    width: 1040px;
    margin: 0 auto
}

@media only screen and (max-width: 64em) {
    .page-top .news .news-contents {
        flex-direction: column;
        gap: 56px;
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .news .news-contents {
        gap: 40px;
        flex-direction: column;
        width: 100%
    }
}

.page-top .news .news-contents .btn-top.spOnly {
    display: none
}

@media only screen and (max-width: 47.9375em) {
    .page-top .news .news-contents .btn-top.spOnly {
        display: flex
    }
}

.page-top .news .news-contents .news-left {
    width: 260px
}

@media only screen and (max-width: 64em) {
    .page-top .news .news-contents .news-left {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .news .news-contents .news-left {
        width: 100%
    }
}

.page-top .news .news-contents .news-left .subtitle {
    text-align: left
}

@media only screen and (max-width: 64em) {
    .page-top .news .news-contents .news-left .subtitle {
        text-align: center
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .news .news-contents .news-left .subtitle {
        text-align: center
    }
}

.page-top .news .news-contents .news-left .title {
    text-align: left
}

@media only screen and (max-width: 64em) {
    .page-top .news .news-contents .news-left .title {
        text-align: center
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .news .news-contents .news-left .title {
        text-align: center
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .news .news-contents .news-left .btn-top {
        display: none
    }
}

.page-top .news .news-contents .news-right {
    width: 60%
}

@media only screen and (max-width: 64em) {
    .page-top .news .news-contents .news-right {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-top .news .news-contents .news-right {
        width: 100%
    }
}

.page-top .news .news-contents .news-right .news-info {
    border-bottom: 1px solid #C7C3C8
}

.page-top .news .news-contents .news-right .news-info:last-child {
    border-bottom: 1px solid transparent
}

.page-top .news .news-contents .news-right .news-info a {
    align-items: center;
    display: flex;
    justify-content: flex-start;
    gap: 55px;
    padding: 24px 0;
    border-bottom-width: 0;
    background-image: linear-gradient(transparent, transparent), linear-gradient(#C7C3C8, #C7C3C8);
    background-size: 0 1px;
    background-position: 0 100%;
    background-repeat: no-repeat;
    transition: background-size .3s ease-in-out
}

@media only screen and (max-width: 47.9375em) {
    .page-top .news .news-contents .news-right .news-info a {
        gap: 0px;
        flex-direction: column
    }
}

.page-top .news .news-contents .news-right .news-info a:hover {
    background-image: linear-gradient(transparent, transparent), linear-gradient(#FF6F22, #FF6F22);
    background-size: 100% 2px;
    background-position: 0 100%;
    opacity: .8
}

.page-top .news .news-contents .news-right .news-info a .news-date {
    font-family: "Montserrat";
    font-size: 18px;
    font-weight: 600
}

@media only screen and (max-width: 47.9375em) {
    .page-top .news .news-contents .news-right .news-info a .news-date {
        display: none
    }
}

.page-top .news .news-contents .news-right .news-info a .news-info-wrap {
    display: flex;
    flex-direction: column;
    gap: 15px
}

.page-top .news .news-contents .news-right .news-info a .news-info-wrap .news-notice-wrap {
    display: inline-flex;
    gap: 10px
}

@media only screen and (max-width: 47.9375em) {
    .page-top .news .news-contents .news-right .news-info a .news-info-wrap .news-notice-wrap {
        align-items: center
    }
}

.page-top .news .news-contents .news-right .news-info a .news-info-wrap .news-notice-wrap .news-date {
    display: none
}

@media only screen and (max-width: 47.9375em) {
    .page-top .news .news-contents .news-right .news-info a .news-info-wrap .news-notice-wrap .news-date {
        font-family: "Montserrat";
        display: block
    }
}

.page-top .news .news-contents .news-right .news-info a .news-info-wrap .news-notice-wrap .news-notice {
    background-color: #FF6F22 !important;
    border-radius: 11px;
    color: #fff;
    display: inline-flex;
    font-size: 16px;
    font-weight: 500;
    padding: 10px 14px
}

@media only screen and (max-width: 47.9375em) {
    .page-top .news .news-contents .news-right .news-info a .news-info-wrap .news-notice-wrap .news-notice {
        font-size: 14px;
        padding: 5px 8px;
        border-radius: 6px
    }
}

.page-top .news .news-contents .news-right .news-info a .news-info-wrap .news-notice-wrap .news-notice.news-release {
    background-color: #576BD5 !important
}

.page-top .news .news-contents .news-right .news-info a .news-info-wrap .news-title {
    font-size: 18px;
    font-weight: 500;
    padding-right: 60px
}

@media only screen and (max-width: 47.9375em) {
    .page-top .news .news-contents .news-right .news-info a .news-info-wrap .news-title {
        padding-right: 0;
        font-size: 16px
    }
}

.page-top .news .news-contents .news-right .news-info a figure {
    position: absolute;
    right: 0
}

@media only screen and (max-width: 47.9375em) {
    .page-top .news .news-contents .news-right .news-info a figure {
        display: none
    }
}

.page-top .recruit {
    background-color: #fff;
    display: block;
    padding: 120px 0 120px;
    position: relative
}

@media only screen and (max-width: 47.9375em) {
    .page-top .recruit {
        padding: 60px 24px
    }
}

.page-top .recruit .recruit-contents {
    display: flex;
    flex-direction: column;
    justify-content: center
}

.page-top .recruit .recruit-contents .desc {
    margin: 0 auto 55px
}

@media only screen and (max-width: 47.9375em) {
    .page-top .recruit .recruit-contents .desc {
        margin: 0 auto 25px
    }
}

.page-top .recruit .recruit-contents .gallery-wrap {
    margin: 60px auto 0;
    width: 100%
}

@media only screen and (max-width: 47.9375em) {
    .page-top .recruit .recruit-contents .gallery-wrap {
        width: 100%
    }
}

.page-top .recruit .recruit-contents .gallery-wrap .recruit-gallery .slick-list {
    margin: 0 -15px
}

.page-top .recruit .recruit-contents .gallery-wrap .recruit-gallery .slick-slide>div {
    padding: 0 15px
}

.page-top .recruit .recruit-contents .gallery-wrap .recruit-gallery .slick-slide:nth-child(even) {
    margin-top: 50px
}

.page-top .recruit .recruit-contents .gallery-wrap .recruit-gallery .recruit-img {
    border-radius: 60px;
    overflow: hidden
}

@media only screen and (max-width: 47.9375em) {
    .page-top .recruit .recruit-contents .gallery-wrap .recruit-gallery .recruit-img {
        border-radius: 30px
    }
}

.page-top .recruit .recruit-contents .gallery-wrap .recruit-gallery .recruit-img img {
    height: 100%;
    object-fit: cover;
    width: 100%
}

.page-privacy .privacy {
    padding: 120px 48px 150px
}

@media only screen and (max-width: 64em) {
    .page-privacy .privacy {
        padding: 150px 48px 60px
    }
}

@media only screen and (max-width: 46.0625em) {
    .page-privacy .privacy {
        padding: 120px 24px 60px
    }
}

.page-privacy .privacy .privacy-contents {
    display: block;
    margin: 0 auto;
    /* max-width: 1000px */
}

@media only screen and (max-width: 64em) {
    .page-privacy .privacy .privacy-contents {
        max-width: 100%
    }
}

.page-privacy .privacy .privacy-contents .privacy-desc {
    font-size: 18px;
    line-height: 44px
}

.page-privacy .privacy .privacy-contents .privacy-lists {
    margin-top: 50px
}

.page-privacy .privacy .privacy-contents .privacy-lists .privacy-lists--item {
    margin-bottom: 50px
}

.page-privacy .privacy .privacy-contents .privacy-lists .privacy-lists--item h3 {
    color: #1a1a1a;
    font-size: 26px;
    font-weight: 700;
    line-height: 48px;
    margin-bottom: 20px
}

.page-privacy .privacy .privacy-contents .privacy-lists .privacy-lists--item p {
    font-size: 16px;
    line-height: 28px
}

.page-privacy .privacy .privacy-contents .privacy-lists .privacy-lists--item p+p {
    margin-top: 50px
}

.page-news .news {
    padding: 0
}

.page-news .news .news-contents {
    background-color: #FF6F22;
    display: block;
    padding: 120px 48px 70px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center
}

@media only screen and (max-width: 64em) {
    .page-news .news .news-contents {
        padding: 150px 48px 70px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-news .news .news-contents {
        padding: 120px 24px 30px
    }
}

.page-news .news .news-contents .desc {
    font-weight: 600;
    margin: 0 auto 55px;
    width: 560px
}

.page-news .news .news-contents .news-hdr {
    align-items: center;
    display: flex;
    justify-content: center;
    position: relative
}

.page-news .news .news-contents .news-hdr .title {
    position: absolute;
    font-size: 60px;
    margin: 20px 0 0
}

@media only screen and (max-width: 47.9375em) {
    .page-news .news .news-contents .news-hdr .title {
        font-size: 43px;
        margin: 0
    }
}

.page-news .post {
    background-color: #fff;
    border-radius: 160px 0 0 0;
    display: block;
    padding: 120px 48px 120px;
    position: relative;
    overflow: hidden
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post {
        border-radius: 80px 0 0 0;
        padding: 50px 24px 50px
    }
}

.page-news .post::before {
    content: "";
    position: absolute;
    inset: 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 0.25;
    z-index: 0
}

.page-news .post .post-contents {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 80px;
    position: relative;
    width: 1040px;
    margin: 0 auto
}

@media only screen and (max-width: 64em) {
    .page-news .post .post-contents {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents {
        gap: 20px;
        flex-direction: column;
        width: 100%
    }
}

.page-news .post .post-contents .btn-top.spOnly {
    display: none
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .btn-top.spOnly {
        display: flex
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-left {
        width: 100%
    }
}

.page-news .post .post-contents .news-left .subtitle {
    text-align: left
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-left .subtitle {
        text-align: center
    }
}

.page-news .post .post-contents .news-left .title {
    text-align: left
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-left .title {
        text-align: center
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-left .btn-top {
        display: none
    }
}

.page-news .post .post-contents .news-left .news-main-ttl {
    align-items: center;
    color: #222;
    display: flex;
    font-size: 42px;
    font-weight: bold;
    margin-bottom: 50px
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-left .news-main-ttl {
        font-size: 21px;
        margin-bottom: 25px
    }
}

.page-news .post .post-contents .news-left .news-main-ttl::before {
    background-color: #FF6F22;
    border-radius: 50%;
    content: '';
    display: inline-block;
    height: 16px;
    margin-right: 24px;
    width: 16px
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-left .news-main-ttl::before {
        height: 8px;
        margin-right: 12px;
        width: 8px
    }
}

.page-news .post .post-contents .news-left .category-lists {
    display: flex;
    gap: 25px
}

.page-news .post .post-contents .news-left .category-lists li a {
    align-items: center;
    border: 1px solid #AEAEAE;
    border-radius: 15px;
    color: #222;
    display: flex;
    font-size: 20px;
    font-weight: bold;
    height: 50px;
    justify-content: center;
    padding: 13px 30px 15px;
    transition: .5s
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-left .category-lists li a {
        border-radius: 8px;
        font-size: 16px;
        padding: 6.5px 15px 7.5px
    }
}

.page-news .post .post-contents .news-left .category-lists li a:hover {
    background-color: #EAECF3;
    border: 1px solid transparent
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-right {
        width: 100%
    }
}

.page-news .post .post-contents .news-right .news-info {
    border-bottom: 1px solid #C7C3C8
}

.page-news .post .post-contents .news-right .news-info a {
    align-items: center;
    display: flex;
    justify-content: center;
    gap: 40px;
    padding: 24px 0;
    transition: .5s
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-right .news-info a {
        gap: 0px;
        flex-direction: column
    }
}

.page-news .post .post-contents .news-right .news-info a:hover {
    opacity: .8
}

.page-news .post .post-contents .news-right .news-info a:hover .news-title {
    text-decoration: underline
}

.page-news .post .post-contents .news-right .news-info a:last-child {
    border-bottom: none
}

.page-news .post .post-contents .news-right .news-info a .news-cover {
    height: 225px;
    overflow: hidden;
    width: 400px
}

@media only screen and (max-width: 64em) {
    .page-news .post .post-contents .news-right .news-info a .news-cover {
        height: auto;
        width: 200px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-right .news-info a .news-cover {
        height: 200px;
        margin-bottom: 20px;
        width: 100%
    }
}

.page-news .post .post-contents .news-right .news-info a .news-cover img {
    height: 100%;
    object-fit: cover;
    width: 100%
}

.page-news .post .post-contents .news-right .news-info a .news-date {
    font-size: 18px;
    font-weight: 600
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-right .news-info a .news-date {
        display: none
    }
}

.page-news .post .post-contents .news-right .news-info a .news-info-wrap {
    display: flex;
    flex-direction: column;
    gap: 15px;
    width: 400px
}

@media only screen and (max-width: 64em) {
    .page-news .post .post-contents .news-right .news-info a .news-info-wrap {
        width: 52%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-right .news-info a .news-info-wrap {
        width: 100%
    }
}

.page-news .post .post-contents .news-right .news-info a .news-info-wrap .news-notice-wrap {
    display: inline-flex;
    gap: 10px
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-right .news-info a .news-info-wrap .news-notice-wrap {
        align-items: center
    }
}

.page-news .post .post-contents .news-right .news-info a .news-info-wrap .news-notice-wrap .news-date {
    display: none
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-right .news-info a .news-info-wrap .news-notice-wrap .news-date {
        display: block
    }
}

.page-news .post .post-contents .news-right .news-info a .news-info-wrap .news-notice-wrap .news-notice {
    background-color: #FF6F22 !important;
    border-radius: 11px;
    color: #fff;
    display: inline-flex;
    font-size: 14px;
    font-weight: 600;
    padding: 10px 12px
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-right .news-info a .news-info-wrap .news-notice-wrap .news-notice {
        border-radius: 6px;
        font-weight: 500;
        padding: 5px 8px
    }
}

.page-news .post .post-contents .news-right .news-info a .news-info-wrap .news-notice-wrap .news-notice.news-release {
    background-color: #576BD5 !important
}

.page-news .post .post-contents .news-right .news-info a .news-info-wrap .news-title {
    line-height: 1.5
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .news-right .news-info a .news-arrow {
        display: none
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .posts {
        margin-bottom: 25px
    }
}

.page-news .post .post-contents .posts .post-info {
    align-items: center;
    display: flex;
    gap: 30px;
    justify-content: flex-start
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .posts .post-info {
        gap: 15px
    }
}

.page-news .post .post-contents .posts .post-info .post-date {
    font-size: 18px;
    font-weight: bold
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .posts .post-info .post-date {
        font-size: 16px
    }
}

.page-news .post .post-contents .posts .post-info .post-cat {
    background-color: #FF6F22;
    border-radius: 15px;
    align-items: center;
    color: #fff;
    display: flex;
    font-size: 16px;
    justify-content: center;
    padding: 12px 14px
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .posts .post-info .post-cat {
        font-size: 12px;
        padding: 6px 7px
    }
}

.page-news .post .post-contents .posts .post-title {
    color: #222;
    font-size: 42px;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 40px
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .posts .post-title {
        font-size: 32px;
        line-height: 1.4;
        margin-bottom: 20px
    }
}

.page-news .post .post-contents .posts .post-cover {
    width: 100%;
    margin-bottom: 40px;
    overflow: hidden
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .posts .post-cover {
        border-radius: 30px;
        height: 250px;
        margin-bottom: 20px
    }
}

.page-news .post .post-contents .posts .post-cover.interview-cover {
    height: auto
}

.page-news .post .post-contents .posts .post-cover img {
    height: 100%;
    object-fit: cover;
    width: 100%
}

.page-news .post .post-contents .posts .post-content h2 {
    border-left: 15px solid #FF6F22;
    font-size: 36px;
    font-weight: bold;
    margin: 45px 0;
    padding-left: 10px
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .posts .post-content h2 {
        border-left: 8px solid #FF6F22;
        font-size: 26px;
        margin: 25px 0;
        padding-left: 5px;
        line-height: 1.5
    }
}

.page-news .post .post-contents .posts .post-content p {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.8
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .posts .post-content p {
        font-size: 16px
    }
}

.page-news .post .post-contents .posts .post-content p+p {
    margin-top: 50px
}

@media only screen and (max-width: 47.9375em) {
    .page-news .post .post-contents .posts .post-content p+p {
        margin-top: 25px
    }
}

.page-news .post .post-contents .posts .post-content a {
    color: #0747B6;
    text-decoration: underline
}

.page-news .post .post-contents .posts .post-content a:hover {
    text-decoration: none
}

.page-news .post .post-contents .posts .post-content img {
    margin: 25px 0;
    max-width: 100%
}

.page-news .post .post-contents .posts .post-content ul {
    list-style-type: disc;
    margin: 20px 0 20px 20px
}

.page-news .post .post-contents .posts .post-content ul li {
    font-weight: bold;
    padding: 6px 0
}

.page-recruit .recruit {
    background-color: #FF872B
}

.page-recruit .recruit .recruit-contents {
    background-color: #FF6F22;
    border-radius: 0 0 160px 0;
    display: block;
    padding: 120px 0 120px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center
}

@media only screen and (max-width: 64em) {
    .page-recruit .recruit .recruit-contents {
        padding: 150px 48px 120px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .recruit .recruit-contents {
        border-radius: 0 0 60px 0;
        padding: 120px 24px 60px
    }
}

.page-recruit .recruit .recruit-contents .desc {
    font-weight: 600;
    margin: 0 auto 55px;
    width: 560px
}

.page-recruit .recruit .recruit-contents .recruit-hdr {
    align-items: center;
    display: flex;
    justify-content: center;
    flex-direction: column;
    position: relative
}

.page-recruit .recruit .recruit-contents .recruit-hdr .title {
    position: absolute;
    font-size: 60px;
    margin: 20px 0 0
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .recruit .recruit-contents .recruit-hdr .title {
        font-size: 43px;
        margin: 0
    }
}

.page-recruit .recruit .recruit-contents .gallery-wrap {
    margin: 60px auto 0;
    width: 100%
}

@media only screen and (max-width: 64em) {
    .page-recruit .recruit .recruit-contents .gallery-wrap {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .recruit .recruit-contents .gallery-wrap {
        width: 100%
    }
}

.page-recruit .recruit .recruit-contents .gallery-wrap .recruit-gallery .slick-list {
    margin: 0 -15px
}

.page-recruit .recruit .recruit-contents .gallery-wrap .recruit-gallery .slick-slide>div {
    padding: 0 15px
}

.page-recruit .recruit .recruit-contents .gallery-wrap .recruit-gallery .recruit-img {
    border-radius: 25px;
    overflow: hidden
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .recruit .recruit-contents .gallery-wrap .recruit-gallery .recruit-img {
        height: 200px
    }
}

.page-recruit .recruit .recruit-contents .gallery-wrap .recruit-gallery .recruit-img img {
    height: 100%;
    object-fit: cover;
    width: 100%
}

.page-recruit .recruit .recruit-contents .recruit-title {
    align-items: center;
    background-color: #fff;
    border-radius: 90px 90px 4px 90px;
    color: #FF6F22;
    display: flex;
    font-size: 62px;
    font-weight: bold;
    line-height: 1.5;
    justify-content: center;
    margin: 100px auto 0;
    padding: 78px 75px;
    position: relative;
    width: 1232px;
    box-shadow: 0px 3px 23px 0px rgba(181, 63, 0, 0.2)
}

@media only screen and (max-width: 64em) {
    .page-recruit .recruit .recruit-contents .recruit-title {
        border-radius: 40px 40px 4px 40px;
        font-size: 36px;
        margin: 50px auto 0;
        padding: 50px 20px;
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .recruit .recruit-contents .recruit-title {
        border-radius: 40px 40px 4px 40px;
        font-size: 28px;
        margin: 50px auto 0;
        padding: 50px 20px;
        width: 100%
    }
}

.page-recruit .recruit .recruit-contents .recruit-title .label-title {
    color: #fff;
    font-size: 38px;
    font-weight: bold;
    position: absolute;
    top: -80px;
    text-align: center
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .recruit .recruit-contents .recruit-title .label-title {
        font-size: 30px;
        line-height: 1.1
    }
}

.page-recruit .recruit .recruit-contents .recruit-desc {
    color: #fff;
    font-size: 32px;
    font-weight: 500;
    line-height: 2;
    margin: 80px auto 0;
    width: 960px
}

@media only screen and (max-width: 64em) {
    .page-recruit .recruit .recruit-contents .recruit-desc {
        font-size: 28px;
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .recruit .recruit-contents .recruit-desc {
        font-size: 18px;
        margin: 20px auto 0;
        width: 100%
    }
}

.page-recruit .reasons {
    background-color: #FF9D3C
}

.page-recruit .reasons .reasons-contents {
    background-color: #FF872B;
    border-radius: 0 0 160px 0;
    display: block;
    padding: 120px 48px 120px
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .reasons .reasons-contents {
        border-radius: 0 0 60px 0;
        padding: 60px 24px
    }
}

.page-recruit .reasons .reasons-contents .reasons-contents-wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
    width: 1232px
}

@media only screen and (max-width: 64em) {
    .page-recruit .reasons .reasons-contents .reasons-contents-wrap {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .reasons .reasons-contents .reasons-contents-wrap {
        width: 100%
    }
}

.page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists {
    gap: 22px;
    margin-top: 80px
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists {
        gap: 16px;
        margin-top: 40px
    }
}

.page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists.pcOnly {
    display: flex
}

@media only screen and (max-width: 64em) {
    .page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists.pcOnly {
        display: none
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists.pcOnly {
        display: none
    }
}

.page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists.spOnly {
    display: none
}

@media only screen and (max-width: 64em) {
    .page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists.spOnly {
        display: block
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists.spOnly {
        display: block
    }
}

.page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .slick-slide {
    padding-left: 1.3%
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .slick-slide {
        padding-left: 30px
    }
}

.page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item {
    height: 900px;
    background-color: #fff;
    border-radius: 80px 80px 8px 80px
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item {
        height: 820px;
        border-radius: 40px 40px 4px 40px
    }
}

.page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-title {
    align-items: center;
    display: flex;
    justify-content: center;
    position: relative
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-title {
        padding: 14px 0 14px
    }
}

.page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-title span {
    color: #FF6F22;
    font-family: "Montserrat";
    font-size: 120px;
    font-weight: bold;
    opacity: 0.20
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-title span {
        line-height: 1.5;
        font-size: 80px
    }
}

.page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-title h3 {
    color: #222;
    font-size: 28px;
    line-height: 1.3;
    font-weight: bold;
    margin-top: 42px;
    position: absolute;
    text-align: center
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-title h3 {
        font-size: 18px;
        margin-top: 10px
    }
}

.page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-cover {
    height: 280px;
    overflow: hidden;
    width: 100%
}

.page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-cover img {
    height: 100%;
    object-fit: cover;
    width: 100%
}

.page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-desc {
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
    padding: 40px 48px 80px
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-desc {
        font-size: 16px;
        line-height: 1.8;
        padding: 20px 20px 20px
    }
}

.page-recruit .team-voices .team-voices-contents {
    background-color: #FF9D3C;
    border-radius: 0 0 160px 0;
    display: block;
    padding: 120px 48px 120px
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .team-voices .team-voices-contents {
        border-radius: 0 0 60px 0;
        padding: 60px 24px
    }
}

.page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap {
    display: flex;
    justify-content: center;
    gap: 128px;
    margin: 0 auto;
    width: 1232px
}

@media only screen and (max-width: 64em) {
    .page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap {
        flex-direction: column;
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap {
        flex-direction: column;
        gap: 40px;
        width: 100%
    }
}

.page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-hdr {
    width: 30%
}

@media only screen and (max-width: 64em) {
    .page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-hdr {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-hdr {
        width: 100%
    }
}

.page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists {
    display: flex;
    flex-direction: column;
    gap: 40px;
    width: 800px
}

@media only screen and (max-width: 64em) {
    .page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists {
        gap: 20px;
        width: 100%
    }
}

.page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item {
    border: 4px solid #fff;
    border-radius: 45px;
    position: relative;
    overflow: hidden;
    transition: .3s
}

.page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item:hover {
    opacity: .8
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item {
        border: 2px solid #fff;
        border-radius: 20px
    }
}

.page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-cover img {
    height: 100%;
    object-fit: cover;
    width: 100%
}

.page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-title {
    position: absolute;
    top: 20px;
    left: 20px
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-title {
        left: 10px;
        top: 10px
    }
}

.page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-title span {
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 80px;
    font-weight: bold;
    line-height: 1
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-title span {
        font-size: 40px
    }
}

.page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-title h3 {
    color: #fff;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 20px;
    font-weight: bold
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-title h3 {
        font-size: 10px
    }
}

.page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 0 20px
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info {
        padding: 0 10px
    }
}

.page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info:after {
    background-image: url("../images/common/icon-arrow-orange.png");
    background-position: center;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    content: '';
    display: block;
    height: 100px;
    width: 100px;
    position: absolute;
    right: 20px;
    top: 0
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info:after {
        height: 30px;
        width: 30px;
        top: 6%
    }
}

.page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info .voice-title {
    border-radius: 50px 50px 0 50px;
    align-items: center;
    background-color: #fff;
    color: #222;
    display: flex;
    font-size: 30px;
    font-weight: bold;
    padding: 0 50px;
    height: 100px;
    width: 588px
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info .voice-title {
        height: 40px;
        width: 82%;
        font-size: 12px;
        padding: 0 10px
    }
}

.page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info .voice-title span {
    color: #FF6F22
}

.page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info .voice-tags {
    display: flex;
    margin: 20px 0 30px;
    gap: 8px
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info .voice-tags {
        margin: 10px 0 15px;
        flex-wrap: wrap;
        gap: 4px
    }
}

.page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info .voice-tags li {
    align-items: center;
    background-color: #222;
    border-radius: 20px;
    color: #fff;
    display: flex;
    font-size: 16px;
    font-weight: bold;
    height: 35px;
    justify-content: center;
    padding: 0 25px
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info .voice-tags li {
        font-size: 8px;
        height: 20px;
        padding: 0 10px
    }
}

.page-recruit .career .career-contents {
    display: block;
    padding: 120px 48px 120px
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .career .career-contents {
        padding: 60px 24px
    }
}

.page-recruit .career .career-contents .career-contents-wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
    width: 960px
}

@media only screen and (max-width: 64em) {
    .page-recruit .career .career-contents .career-contents-wrap {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .career .career-contents .career-contents-wrap {
        width: 100%
    }
}

.page-recruit .career .career-contents .career-lists {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    margin-top: 64px
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .career .career-contents .career-lists {
        gap: 12px;
        margin-top: 30px
    }
}

.page-recruit .career .career-contents .career-lists .career-lists--item a {
    border: 1px solid #222;
    border-radius: 300px;
    display: flex;
    padding: 20px 30px;
    font-size: 20px;
    line-height: 1;
    font-weight: bold;
    transition: .5s
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .career .career-contents .career-lists .career-lists--item a {
        border-radius: 50px;
        padding: 10px 15px;
        font-size: 16px
    }
}

.page-recruit .career .career-contents .career-lists .career-lists--item a.active {
    background-color: #FF6F22;
    border: 1px solid #FF6F22;
    color: #fff
}

.page-recruit .career .career-contents .career-lists .career-lists--item a:hover {
    background-color: #FF6F22;
    border: 1px solid #FF6F22;
    color: #fff
}

.page-recruit .career .career-contents .career-infos .career-details {
    display: none
}

.page-recruit .career .career-contents .career-infos .career-details.active {
    display: block
}

.page-recruit .career .career-contents .career-infos .career-details .career-info {
    align-items: flex-start;
    border-bottom: 1px solid #DEDEDE;
    display: flex;
    justify-content: space-between;
    padding: 40px 0
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .career .career-contents .career-infos .career-details .career-info {
        flex-direction: column
    }
}

.page-recruit .career .career-contents .career-infos .career-details .career-info:nth-child(2) {
    border-bottom: 0
}

.page-recruit .career .career-contents .career-infos .career-details .career-info .career-title {
    align-items: center;
    display: flex;
    font-size: 22px;
    font-weight: bold;
    justify-content: stretch;
    padding: 25px 0
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .career .career-contents .career-infos .career-details .career-info .career-title {
        font-size: 18px
    }
}

.page-recruit .career .career-contents .career-infos .career-details .career-info .career-title:before {
    align-items: center;
    background-color: #FF6F22;
    border-radius: 8px;
    content: '';
    display: inline-flex;
    height: auto;
    margin-right: 25px;
    padding: 25px 0 25px;
    width: 11px
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .career .career-contents .career-infos .career-details .career-info .career-title:before {
        margin-right: 15px
    }
}

.page-recruit .career .career-contents .career-infos .career-details .career-info .career-desc {
    color: #222;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
    width: 800px
}

@media only screen and (max-width: 64em) {
    .page-recruit .career .career-contents .career-infos .career-details .career-info .career-desc {
        width: 75%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .career .career-contents .career-infos .career-details .career-info .career-desc {
        font-size: 16px;
        width: 100%
    }
}

.page-recruit .career .career-contents .career-infos .career-details .btn-top {
    background: #FFB62D;
    background: linear-gradient(90deg, #ffb62d 0%, #ff6f22 100%);
    border: 0;
    border-radius: 50px;
    color: #fff;
    display: flex;
    font-size: 22px;
    font-weight: bold;
    height: 100px;
    margin: 40px auto 0;
    transition: .5s;
    width: 400px
}

@media only screen and (max-width: 47.9375em) {
    .page-recruit .career .career-contents .career-infos .career-details .btn-top {
        height: 60px;
        margin: 20px auto 0;
        border-radius: 30px;
        width: 80%
    }
}

.page-recruit .career .career-contents .career-infos .career-details .btn-top:hover {
    background: linear-gradient(180deg, #ffb62d 0%, #ff6f22 100%)
}

.page-recruit .career .career-contents .career-infos .career-details .btn-top:before {
    border: 0;
    background-image: url("../images/common/icon-arrow-white.png")
}

.page-service .service {
    background-color: #FF6F22
}

.page-service .service .service-contents {
    border-radius: 0 0 160px 0;
    display: block;
    padding: 120px 48px 270px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-bottom: -150px
}

@media only screen and (max-width: 64em) {
    .page-service .service .service-contents {
        padding: 150px 48px 270px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service .service-contents {
        margin-bottom: -75px;
        padding: 120px 24px 150px;
        width: 100%
    }
}

.page-service .service .service-contents .desc {
    font-weight: 600;
    margin: 0 auto 55px;
    width: 560px
}

.page-service .service .service-contents .service-hdr {
    align-items: center;
    display: flex;
    justify-content: center;
    position: relative
}

.page-service .service .service-contents .service-hdr .title {
    position: absolute;
    font-size: 60px;
    margin: 20px 0 0
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service .service-contents .service-hdr .title {
        font-size: 43px;
        margin: 0
    }
}

.page-service .service .service-contents .services-info-wrap {
    margin: 50px auto 0;
    width: 1232px
}

@media only screen and (max-width: 64em) {
    .page-service .service .service-contents .services-info-wrap {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service .service-contents .services-info-wrap {
        margin: 0 auto;
        width: 100%
    }
}

.page-service .service .service-contents .services-info-wrap .services-info {
    align-items: flex-start;
    margin-top: 50px;
    display: flex;
    position: relative
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service .service-contents .services-info-wrap .services-info {
        flex-direction: column-reverse
    }
}

.page-service .service .service-contents .services-info-wrap .services-info:nth-child(2) {
    flex-direction: row-reverse;
    margin-top: 150px
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service .service-contents .services-info-wrap .services-info:nth-child(2) {
        margin-top: 50px
    }
}

.page-service .service .service-contents .services-info-wrap .services-info:nth-child(2) .services-text {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-top-left-radius: 80px;
    border-bottom-left-radius: 80px;
    padding: 80px 0px 80px 270px
}

@media only screen and (max-width: 64em) {
    .page-service .service .service-contents .services-info-wrap .services-info:nth-child(2) .services-text {
        padding: 80px 0px 80px 40px;
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service .service-contents .services-info-wrap .services-info:nth-child(2) .services-text {
        border-top-left-radius: 40px;
        border-bottom-left-radius: 40px;
        padding: 60px 0px 60px 20px;
        flex-direction: column
    }
}

.page-service .service .service-contents .services-info-wrap .services-info:nth-child(2) .services-text::before {
    left: auto;
    right: -100%
}

.page-service .service .service-contents .services-info-wrap .services-info:nth-child(2) .services-cover {
    left: 0%;
    right: auto
}

.page-service .service .service-contents .services-info-wrap .services-info:nth-child(2) .btn-top {
    border: none;
    background: #A4DBC2;
    background: linear-gradient(90deg, #a4dbc2 0%, #4b819e 100%) !important;
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    margin: 0;
    transition: .5s
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service .service-contents .services-info-wrap .services-info:nth-child(2) .btn-top {
        margin: 0 auto;
        width: 90%
    }
}

.page-service .service .service-contents .services-info-wrap .services-info:nth-child(2) .btn-top:hover {
    background: linear-gradient(180deg, #a4dbc2 0%, #4b819e 100%) !important
}

.page-service .service .service-contents .services-info-wrap .services-info:nth-child(2) .btn-top::before {
    background-image: url("../images/common/icon_arrow_green.png") !important;
    border: 0;
    color: #596B84
}

.page-service .service .service-contents .services-info-wrap .services-info .services-text {
    border-top-right-radius: 80px;
    border-bottom-right-radius: 80px;
    align-items: flex-start;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 20px;
    padding: 80px 270px 80px 0;
    position: relative;
    width: 70%
}

@media only screen and (max-width: 64em) {
    .page-service .service .service-contents .services-info-wrap .services-info .services-text {
        align-items: center;
        padding: 80px 40px 80px 0;
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service .service-contents .services-info-wrap .services-info .services-text {
        align-items: flex-start;
        border-top-right-radius: 40px;
        border-bottom-right-radius: 40px;
        padding: 60px 20px 60px 0px;
        width: 100%
    }
}

.page-service .service .service-contents .services-info-wrap .services-info .services-text:before {
    background-color: #fff;
    content: "";
    display: block;
    height: 100%;
    left: -100%;
    position: absolute;
    top: 0;
    width: 100%
}

.page-service .service .service-contents .services-info-wrap .services-info .services-text .services-logo {
    margin-bottom: 20px;
    width: 420px
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service .service-contents .services-info-wrap .services-info .services-text .services-logo {
        width: 90%
    }
}

.page-service .service .service-contents .services-info-wrap .services-info .services-text .services-logo img {
    width: 100%
}

.page-service .service .service-contents .services-info-wrap .services-info .services-text .services-title {
    font-size: 22px;
    font-weight: bold;
    line-height: 1.8
}

.page-service .service .service-contents .services-info-wrap .services-info .services-text .services-cover-sp {
    display: none
}

@media only screen and (max-width: 64em) {
    .page-service .service .service-contents .services-info-wrap .services-info .services-text .services-cover-sp {
        display: block;
        width: 400px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service .service-contents .services-info-wrap .services-info .services-text .services-cover-sp {
        display: block;
        width: 100%
    }
}

.page-service .service .service-contents .services-info-wrap .services-info .services-text .services-cover-sp img {
    width: 100%
}

.page-service .service .service-contents .services-info-wrap .services-info .services-text .services-desc {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.8;
    margin-bottom: 20px
}

.page-service .service .service-contents .services-info-wrap .services-info .services-text .btn-top {
    border: none;
    background: #69788E;
    background: linear-gradient(90deg, #69788e 0%, #03244c 100%);
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    margin: 0;
    transition: .5s;
    width: 366px
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service .service-contents .services-info-wrap .services-info .services-text .btn-top {
        margin: 0 auto;
        width: 90%
    }
}

.page-service .service .service-contents .services-info-wrap .services-info .services-text .btn-top:hover {
    background: linear-gradient(180deg, #69788e 0%, #03244c 100%)
}

.page-service .service .service-contents .services-info-wrap .services-info .services-text .btn-top::before {
    background-image: url("../images/common/icon_arrow_blue.png");
    border: 0;
    color: #596B84
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service .service-contents .services-info-wrap .services-info .services-text .btn-top span {
        display: none
    }
}

.page-service .service .service-contents .services-info-wrap .services-info .services-cover {
    box-shadow: 0px 4px 24px 0px rgba(0, 0, 0, 0.25);
    border-radius: 88px;
    position: relative;
    right: 0%;
    top: -50px;
    width: 512px;
    position: absolute
}

@media only screen and (max-width: 64em) {
    .page-service .service .service-contents .services-info-wrap .services-info .services-cover {
        display: none
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service .service-contents .services-info-wrap .services-info .services-cover {
        display: none
    }
}

.page-service .service .service-contents .services-info-wrap .services-info .services-cover img {
    width: 100%
}

.page-service .reasons {
    background-color: #FF9D3C
}

.page-service .reasons .reasons-contents {
    background-color: #FF872B;
    border-radius: 0 0 160px 0;
    display: block;
    padding: 120px 48px 120px
}

@media only screen and (max-width: 46.0625em) {
    .page-service .reasons .reasons-contents {
        padding: 120px 24px 120px
    }
}

.page-service .reasons .reasons-contents .reasons-contents-wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
    width: 1232px
}

@media only screen and (max-width: 64em) {
    .page-service .reasons .reasons-contents .reasons-contents-wrap {
        width: 100%
    }
}

.page-service .reasons .reasons-contents .reasons-contents-wrap .reasons-lists {
    display: flex;
    gap: 22px;
    margin-top: 80px
}

.page-service .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item {
    background-color: #fff;
    border-radius: 80px 80px 8px 80px;
    width: 33%
}

.page-service .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-title {
    align-items: center;
    display: flex;
    justify-content: center;
    position: relative;
    padding: 28px 0 38px
}

.page-service .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-title span {
    color: #FF6F22;
    font-family: "Montserrat";
    font-size: 120px;
    font-weight: bold;
    opacity: 0.20
}

.page-service .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-title h3 {
    color: #222;
    font-size: 32px;
    line-height: 1.3;
    font-weight: bold;
    margin-top: 42px;
    position: absolute;
    text-align: center
}

.page-service .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-cover {
    width: 100%
}

.page-service .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-cover img {
    width: 100%
}

.page-service .reasons .reasons-contents .reasons-contents-wrap .reasons-lists .reasons-lists--item .lists-desc {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    padding: 30px 38px 80px
}

.page-service .team-voices .team-voices-contents {
    background-color: #FF9D3C;
    border-radius: 0 0 160px 0;
    display: block;
    padding: 120px 48px 120px
}

@media only screen and (max-width: 46.0625em) {
    .page-service .team-voices .team-voices-contents {
        padding: 120px 24px 120px
    }
}

.page-service .team-voices .team-voices-contents .team-voices-contents-wrap {
    display: flex;
    justify-content: center;
    gap: 128px;
    margin: 0 auto;
    width: 1232px
}

@media only screen and (max-width: 64em) {
    .page-service .team-voices .team-voices-contents .team-voices-contents-wrap {
        width: 100%
    }
}

.page-service .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-hdr {
    width: 30%
}

.page-service .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists {
    display: flex;
    flex-direction: column;
    gap: 80px;
    width: 800px
}

@media only screen and (max-width: 64em) {
    .page-service .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists {
        width: 100%
    }
}

.page-service .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item {
    border: 4px solid #fff;
    border-radius: 45px;
    position: relative;
    overflow: hidden;
    transition: .3s
}

.page-service .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item:hover {
    opacity: .8
}

.page-service .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-cover img {
    height: 100%;
    object-fit: cover;
    width: 100%
}

.page-service .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-title {
    position: absolute;
    top: 20px;
    left: 20px
}

.page-service .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-title span {
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 80px;
    font-weight: bold
}

.page-service .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-title h3 {
    color: #fff;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 20px;
    font-weight: bold
}

.page-service .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 0 20px
}

.page-service .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info:after {
    background-image: url("../images/common/icon-arrow-orange.png");
    background-position: center;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    content: '';
    display: block;
    height: 100px;
    width: 100px;
    position: absolute;
    right: 20px;
    top: 0
}

.page-service .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info .voice-title {
    border-radius: 50px 50px 0 50px;
    align-items: center;
    background-color: #fff;
    color: #222;
    display: flex;
    font-size: 30px;
    font-weight: bold;
    padding: 0 50px;
    height: 100px;
    width: 588px
}

.page-service .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info .voice-title span {
    color: #FF6F22
}

.page-service .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info .voice-tags {
    display: flex;
    margin: 20px 0 30px;
    gap: 8px
}

.page-service .team-voices .team-voices-contents .team-voices-contents-wrap .team-voices-lists .team-voices-lists--item .lists-info .voice-tags li {
    align-items: center;
    background-color: #222;
    border-radius: 20px;
    color: #fff;
    display: flex;
    font-size: 16px;
    font-weight: bold;
    height: 35px;
    justify-content: center;
    padding: 0 25px
}

.page-service .career .career-contents {
    display: block;
    padding: 120px 48px 120px
}

@media only screen and (max-width: 46.0625em) {
    .page-service .career .career-contents {
        padding: 120px 24px 120px
    }
}

.page-service .career .career-contents .career-contents-wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
    width: 1232px
}

@media only screen and (max-width: 64em) {
    .page-service .career .career-contents .career-contents-wrap {
        width: 100%
    }
}

.page-service .career .career-contents .career-lists {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    margin-top: 64px
}

.page-service .career .career-contents .career-lists .career-lists--item a {
    border: 1px solid #222;
    border-radius: 40px;
    display: flex;
    padding: 20px 30px;
    font-size: 24px;
    font-weight: bold;
    transition: .5s
}

.page-service .career .career-contents .career-lists .career-lists--item a:hover {
    background-color: #FF6F22;
    border: 1px solid #FF6F22;
    color: #fff
}

.page-service .career .career-contents .career-infos .career-info {
    align-items: flex-start;
    border-bottom: 1px solid #DEDEDE;
    display: flex;
    justify-content: space-between;
    padding: 40px 0
}

.page-service .career .career-contents .career-infos .career-info .career-title {
    align-items: center;
    display: flex;
    font-size: 20px;
    font-weight: bold;
    justify-content: stretch;
    padding: 25px 0
}

.page-service .career .career-contents .career-infos .career-info .career-title:before {
    align-items: center;
    background-color: #FF6F22;
    border-radius: 8px;
    content: '';
    display: inline-flex;
    height: auto;
    margin-right: 25px;
    padding: 25px 0 25px;
    width: 11px
}

.page-service .career .career-contents .career-infos .career-info .career-desc {
    color: #222;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
    width: 800px
}

.page-service .career .career-contents .career-infos .btn-top {
    background: #FFB62D;
    background: linear-gradient(90deg, #ffb62d 0%, #ff6f22 100%);
    border: 0;
    border-radius: 50px;
    color: #fff;
    display: flex;
    height: 100px;
    margin: 40px auto 0;
    transition: .5s;
    width: 400px
}

@media only screen and (max-width: 47.9375em) {
    .page-service .career .career-contents .career-infos .btn-top {
        margin: 0 auto;
        width: 90%
    }
}

.page-service .career .career-contents .career-infos .btn-top:hover {
    background: linear-gradient(180deg, #ffb62d 0%, #ff6f22 100%)
}

.page-service .career .career-contents .career-infos .btn-top:before {
    border: 0;
    background-image: url("../images/common/icon-arrow-white.png")
}

.page-service .service-intro .service-intro-contents {
    background-color: #FF6F22;
    display: block;
    padding: 120px 48px 70px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center
}

@media only screen and (max-width: 64em) {
    .page-service .service-intro .service-intro-contents {
        padding: 150px 48px 70px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-intro .service-intro-contents {
        padding: 120px 24px 30px
    }
}

.page-service .service-intro .service-intro-contents .service-intro-hdr {
    align-items: center;
    display: flex;
    justify-content: center;
    position: relative
}

.page-service .service-intro .service-intro-contents .service-intro-hdr .title {
    position: absolute;
    font-size: 60px;
    margin: 20px 0 0
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-intro .service-intro-contents .service-intro-hdr .title {
        font-size: 32px;
        margin: 0
    }
}

.page-service .service-info {
    display: block;
    padding: 100px 48px 120px
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info {
        padding: 50px 24px 60px
    }
}

.page-service .service-info .service-info-contents {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
    width: 1150px
}

@media only screen and (max-width: 64em) {
    .page-service .service-info .service-info-contents {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents {
        width: 100%
    }
}

.page-service .service-info .service-info-contents .service-info-contents-wrap {
    align-items: center;
    display: flex;
    background-color: #F3F3F3;
    border-radius: 22px;
    gap: 50px;
    justify-content: space-between;
    margin-bottom: 60px;
    padding: 100px 50px 70px;
    width: 100%
}

@media only screen and (max-width: 64em) {
    .page-service .service-info .service-info-contents .service-info-contents-wrap {
        flex-direction: column
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-info-contents-wrap {
        flex-direction: column;
        border-radius: 10px;
        gap: 20px;
        margin-bottom: 30px;
        padding: 50px 25px 35px
    }
}

.page-service .service-info .service-info-contents .service-info-contents-wrap .service-cover {
    width: 50%
}

@media only screen and (max-width: 64em) {
    .page-service .service-info .service-info-contents .service-info-contents-wrap .service-cover {
        width: 400px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-info-contents-wrap .service-cover {
        width: 100%
    }
}

.page-service .service-info .service-info-contents .service-info-contents-wrap .service-cover img {
    width: 100%
}

.page-service .service-info .service-info-contents .service-info-contents-wrap .service-details {
    display: flex;
    flex-direction: column;
    gap: 25px;
    width: 50%
}

@media only screen and (max-width: 64em) {
    .page-service .service-info .service-info-contents .service-info-contents-wrap .service-details {
        align-items: center;
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-info-contents-wrap .service-details {
        align-items: flex-start;
        width: 100%
    }
}

.page-service .service-info .service-info-contents .service-info-contents-wrap .service-details h3 {
    font-size: 30px;
    font-weight: bold;
    line-height: 1.6
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-info-contents-wrap .service-details h3 {
        font-size: 19px
    }
}

.page-service .service-info .service-info-contents .service-info-contents-wrap .service-details .service-logo {
    width: 420px
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-info-contents-wrap .service-details .service-logo {
        width: 80%
    }
}

.page-service .service-info .service-info-contents .service-info-contents-wrap .service-details .service-logo img {
    width: 100%
}

.page-service .service-info .service-info-contents .service-info-contents-wrap .service-details .service-labels {
    display: flex;
    justify-content: space-between;
    gap: 17px
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-info-contents-wrap .service-details .service-labels {
        gap: 8px
    }
}

.page-service .service-info .service-info-contents .service-info-contents-wrap .service-details .service-labels.label-qommons .service-label {
    background-color: #5B8F9F
}

.page-service .service-info .service-info-contents .service-info-contents-wrap .service-details .service-labels .service-label {
    align-items: center;
    background-color: #03244C;
    border-radius: 22px;
    color: #fff;
    display: flex;
    justify-content: center;
    font-size: 22px;
    padding: 17px 25px;
    width: 50%
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-info-contents-wrap .service-details .service-labels .service-label {
        padding: 8px 12px
    }
}

.page-service .service-info .service-info-contents .service-info-contents-wrap .service-details .service-labels .service-label p {
    font-size: 22px;
    font-weight: bold;
    line-height: 1.4;
    text-align: center
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-info-contents-wrap .service-details .service-labels .service-label p {
        font-size: 18px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-info-contents-wrap .service-details .service-labels .service-label p span {
        display: block
    }
}

.page-service .service-info .service-info-contents .service-info-contents-wrap .service-details .service-labels .service-label p strong {
    font-size: 34px;
    margin-right: 5px;
    line-height: 1
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-info-contents-wrap .service-details .service-labels .service-label p strong {
        font-size: 21px
    }
}

.page-service .service-info .service-info-contents .service-info-contents-wrap .service-details .service-labels .service-label p .small {
    display: block;
    font-size: 12px
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-info-contents-wrap .service-details .service-labels .service-label p br {
        display: none
    }
}

.page-service .service-info .service-info-contents .service-info-contents-wrap .service-details p {
    font-size: 16px;
    font-weight: 500;
    line-height: 2
}

.page-service .service-info .service-info-contents .service-txt {
    padding: 0 55px
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-txt {
        padding: 0;
        width: 100%
    }
}

.page-service .service-info .service-info-contents .service-txt .service-txt-logo {
    width: 354px
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-txt .service-txt-logo {
        margin: 0 auto;
        width: 80%
    }
}

.page-service .service-info .service-info-contents .service-txt .service-txt-logo img {
    width: 100%
}

.page-service .service-info .service-info-contents .service-txt .desc {
    line-height: 2;
    max-width: 100%;
    padding: 33px 35px 0
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-txt .desc {
        padding: 30px 20px 0
    }
}

.page-service .service-info .service-info-contents .service-txt .service-sns-wrap {
    align-items: flex-end;
    display: flex;
    margin-top: 50px
}

@media only screen and (max-width: 64em) {
    .page-service .service-info .service-info-contents .service-txt .service-sns-wrap {
        align-items: center;
        flex-direction: column
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-txt .service-sns-wrap {
        flex-direction: column;
        gap: 20px;
        margin-top: 30px
    }
}

.page-service .service-info .service-info-contents .service-txt .service-sns-wrap .btn-surfvote {
    border: none;
    background: #69788E;
    background: linear-gradient(90deg, #69788e 0%, #03244c 100%);
    color: #fff;
    height: 64px;
    margin: 0 30px
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-txt .service-sns-wrap .btn-surfvote {
        margin: 0 auto;
        width: 90%
    }
}

.page-service .service-info .service-info-contents .service-txt .service-sns-wrap .btn-surfvote:hover {
    opacity: .8
}

.page-service .service-info .service-info-contents .service-txt .service-sns-wrap .btn-surfvote::before {
    background-image: url("../images/common/icon_arrow_blue.png");
    border: 0;
    color: #596B84
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-txt .service-sns-wrap .btn-surfvote span {
        display: none
    }
}

.page-service .service-info .service-info-contents .service-txt .service-sns-wrap .btn-qommons {
    border: none;
    background: #A4DBC2;
    background: linear-gradient(90deg, #a4dbc2 0%, #4b819e 100%) !important;
    color: #fff;
    height: 64px;
    margin: 0 30px
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-txt .service-sns-wrap .btn-qommons {
        margin: 0 auto;
        width: 90%
    }
}

.page-service .service-info .service-info-contents .service-txt .service-sns-wrap .btn-qommons:hover {
    opacity: .8
}

.page-service .service-info .service-info-contents .service-txt .service-sns-wrap .btn-qommons::before {
    background-image: url("../images/common/icon_arrow_green.png") !important;
    border: 0;
    color: #596B84
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-txt .service-sns-wrap .btn-qommons span {
        display: none
    }
}

.page-service .service-info .service-info-contents .service-txt .service-sns-wrap .service-sns {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 12px
}

.page-service .service-info .service-info-contents .service-txt .service-sns-wrap .service-sns .service-sns-label {
    color: #111C6E;
    font-size: 14px;
    font-weight: bold
}

.page-service .service-info .service-info-contents .service-txt .service-sns-wrap .service-sns .service-sns-info {
    align-items: center;
    display: flex;
    gap: 20px
}

.page-service .service-info .service-info-contents .service-txt .service-sns-wrap .service-sns .service-sns-info .service-sns--item {
    transition: .5s
}

.page-service .service-info .service-info-contents .service-txt .service-sns-wrap .service-sns .service-sns-info .service-sns--item:last-child img {
    width: 32px
}

.page-service .service-info .service-info-contents .service-txt .service-sns-wrap .service-sns .service-sns-info .service-sns--item:hover {
    opacity: .8
}

.page-service .service-info .service-info-contents .service-txt .service-sns-wrap .service-sns .service-sns-info .service-sns--item img {
    width: 40px
}

.page-service .service-info .service-info-contents .service-txt .service-lists {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 70px;
    justify-content: center;
    margin: 100px auto 86px
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-txt .service-lists {
        gap: 35px;
        margin: 50px auto 40px
    }
}

.page-service .service-info .service-info-contents .service-txt .service-lists .service-lists--item {
    align-items: center;
    display: flex;
    gap: 60px;
    justify-content: center
}

@media only screen and (max-width: 64em) {
    .page-service .service-info .service-info-contents .service-txt .service-lists .service-lists--item {
        flex-direction: column
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-txt .service-lists .service-lists--item {
        flex-direction: column;
        gap: 15px
    }
}

.page-service .service-info .service-info-contents .service-txt .service-lists .service-lists--item .service-lists--cover {
    background-color: #D9D9D9;
    border-radius: 17px;
    width: 497px
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-txt .service-lists .service-lists--item .service-lists--cover {
        height: 200px;
        width: 100%
    }
}

.page-service .service-info .service-info-contents .service-txt .service-lists .service-lists--item .service-lists--cover img {
    height: 100%;
    object-fit: cover;
    width: 100%
}

.page-service .service-info .service-info-contents .service-txt .service-lists .service-lists--item .service-lists--details {
    width: 50%
}

@media only screen and (max-width: 64em) {
    .page-service .service-info .service-info-contents .service-txt .service-lists .service-lists--item .service-lists--details {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-txt .service-lists .service-lists--item .service-lists--details {
        width: 100%
    }
}

.page-service .service-info .service-info-contents .service-txt .service-lists .service-lists--item .service-lists--details h3 {
    font-size: 26px;
    font-weight: bold;
    line-height: 1.8
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-txt .service-lists .service-lists--item .service-lists--details h3 {
        font-size: 22px
    }
}

.page-service .service-info .service-info-contents .service-txt .service-lists .service-lists--item .service-lists--details p {
    font-size: 16px;
    line-height: 2;
    margin-top: 35px;
    padding: 0
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-txt .service-lists .service-lists--item .service-lists--details p {
        margin-top: 20px
    }
}

.page-service .service-info .service-info-contents .service-txt .service-btn {
    align-items: center;
    display: flex;
    margin: 0 auto;
    width: 366px
}

@media only screen and (max-width: 47.9375em) {
    .page-service .service-info .service-info-contents .service-txt .service-btn {
        width: 100%
    }
}

.page-company .company-title {
    background-color: #fff;
    border-radius: 90px 90px 4px 90px;
    color: #FF6F22;
    font-size: 60px;
    font-weight: bold;
    line-height: 1.5;
    margin: 100px auto 0;
    text-align: center;
    padding: 25px 0;
    width: 1232px;
    box-shadow: 0px 3px 23px 0px rgba(181, 63, 0, 0.2)
}

@media only screen and (max-width: 64em) {
    .page-company .company-title {
        border-radius: 45px 45px 2px 45px;
        font-size: 30px;
        margin: 50px auto 0;
        padding: 22px 24px;
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-company .company-title {
        border-radius: 45px 45px 2px 45px;
        font-size: 30px;
        margin: 50px auto 0;
        padding: 22px 24px;
        width: 100%
    }
}

.page-company .company {
    background-color: #FF872B
}

.page-company .company .company-contents {
    background-color: #FF6F22;
    border-radius: 0 0 160px 0;
    display: block;
    padding: 120px 48px 120px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center
}

@media only screen and (max-width: 64em) {
    .page-company .company .company-contents {
        padding: 150px 48px 120px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-company .company .company-contents {
        border-radius: 0 0 60px 0;
        padding: 120px 24px 60px
    }
}

.page-company .company .company-contents .desc {
    font-weight: 600;
    margin: 0 auto 55px;
    width: 560px
}

.page-company .company .company-contents .company-hdr {
    align-items: center;
    display: flex;
    justify-content: center;
    position: relative
}

@media only screen and (max-width: 47.9375em) {
    .page-company .company .company-contents .company-hdr .bottom-subtitle {
        font-size: 75px
    }
}

.page-company .company .company-contents .company-hdr .title {
    position: absolute;
    font-size: 60px;
    margin: 20px 0 0
}

@media only screen and (max-width: 47.9375em) {
    .page-company .company .company-contents .company-hdr .title {
        font-size: 43px;
        margin: 0
    }
}

.page-company .company .company-contents .company-infos {
    display: flex;
    flex-direction: column;
    gap: 100px;
    margin: 90px auto 0;
    width: 1070px
}

@media only screen and (max-width: 64em) {
    .page-company .company .company-contents .company-infos {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-company .company .company-contents .company-infos {
        gap: 50px;
        margin: 45px auto 0;
        width: 100%
    }
}

.page-company .company .company-contents .company-infos .company-info {
    background-color: #fff;
    border-radius: 80px 80px 8px 80px;
    padding: 50px 70px 90px
}

@media only screen and (max-width: 47.9375em) {
    .page-company .company .company-contents .company-infos .company-info {
        border-radius: 40px 40px 4px 40px;
        padding: 25px 20px 45px
    }
}

.page-company .company .company-contents .company-infos .company-info .company-info-cover {
    margin: 0 auto;
    width: 706px
}

@media only screen and (max-width: 64em) {
    .page-company .company .company-contents .company-infos .company-info .company-info-cover {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-company .company .company-contents .company-infos .company-info .company-info-cover {
        width: 100%
    }
}

.page-company .company .company-contents .company-infos .company-info .company-info-cover img {
    border-radius: 23px;
    width: 100%
}

@media only screen and (max-width: 47.9375em) {
    .page-company .company .company-contents .company-infos .company-info .company-info-cover img {
        border-radius: 12px
    }
}

.page-company .company .company-contents .company-infos .company-info .company-info-title-wrap {
    align-items: flex-end;
    display: flex;
    flex-direction: column;
    gap: 20px;
    justify-content: center;
    margin: 50px auto 0px
}

@media only screen and (max-width: 47.9375em) {
    .page-company .company .company-contents .company-infos .company-info .company-info-title-wrap {
        align-items: flex-start;
        gap: 10px;
        margin: 15px auto 10px
    }
}

.page-company .company .company-contents .company-infos .company-info .company-info-title-wrap .company-info-title {
    align-items: center;
    color: #222;
    display: flex;
    font-size: 24px;
    font-weight: bold;
    line-height: 1.8
}

@media only screen and (max-width: 47.9375em) {
    .page-company .company .company-contents .company-infos .company-info .company-info-title-wrap .company-info-title {
        align-items: flex-start;
        flex-direction: column;
        font-size: 16px;
        justify-content: flex-start
    }
}

.page-company .company .company-contents .company-infos .company-info .company-info-desc {
    color: #222;
    font-size: 18px;
    font-weight: 500;
    line-height: 2;
    margin-top: 50px
}

@media only screen and (max-width: 47.9375em) {
    .page-company .company .company-contents .company-infos .company-info .company-info-desc {
        font-size: 16px;
        margin-top: 20
    }
}

.page-company .member .member-contents {
    background-color: #FF872B;
    border-radius: 0 0 160px 0;
    display: block;
    padding: 120px 48px 120px
}

@media only screen and (max-width: 47.9375em) {
    .page-company .member .member-contents {
        border-radius: 0 0 60px 0;
        padding: 50px 24px 80px
    }
}

.page-company .member .member-contents .member-contents-wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
    width: 1232px
}

@media only screen and (max-width: 64em) {
    .page-company .member .member-contents .member-contents-wrap {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-company .member .member-contents .member-contents-wrap {
        width: 100%
    }
}

.page-company .member .member-contents .member-contents-wrap .member-lists {
    display: flex;
    flex-wrap: wrap;
    gap: 60px 21px;
    margin-top: 80px
}

@media only screen and (max-width: 47.9375em) {
    .page-company .member .member-contents .member-contents-wrap .member-lists {
        gap: 35px;
        margin-top: 40px
    }
}

.page-company .member .member-contents .member-contents-wrap .member-lists .member-lists--item {
    cursor: pointer;
    transition: .5s;
    width: 31%
}

@media only screen and (max-width: 47.9375em) {
    .page-company .member .member-contents .member-contents-wrap .member-lists .member-lists--item {
        width: 100%
    }
}

.page-company .member .member-contents .member-contents-wrap .member-lists .member-lists--item:hover {
    opacity: .8
}

.page-company .member .member-contents .member-contents-wrap .member-lists .member-lists--item .member-cover {
    width: 100%
}

.page-company .member .member-contents .member-contents-wrap .member-lists .member-lists--item .member-cover img {
    border-radius: 13px;
    width: 100%
}

.page-company .member .member-contents .member-contents-wrap .member-lists .member-lists--item .member-details {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 20px 0 0
}

@media only screen and (max-width: 47.9375em) {
    .page-company .member .member-contents .member-contents-wrap .member-lists .member-lists--item .member-details {
        padding: 5px 0 0
    }
}

.page-company .member .member-contents .member-contents-wrap .member-lists .member-lists--item .member-details span {
    color: #fff;
    font-family: "Montserrat";
    font-size: 20px;
    font-weight: bold;
    line-height: 1.2
}

.page-company .member .member-contents .member-contents-wrap .member-lists .member-lists--item .member-details h3 {
    color: #fff;
    font-size: 20px;
    line-height: 1.3;
    font-weight: bold;
    margin-top: 15px
}

@media only screen and (max-width: 47.9375em) {
    .page-company .member .member-contents .member-contents-wrap .member-lists .member-lists--item .member-details h3 {
        margin-top: 0px
    }
}

.page-company .member .member-contents .member-contents-wrap .member-lists .member-lists--item .member-desc {
    display: none
}

.page-company .career .career-contents {
    display: block;
    padding: 120px 48px 120px
}

@media only screen and (max-width: 47.9375em) {
    .page-company .career .career-contents {
        padding: 50px 24px 80px
    }
}

.page-company .career .career-contents .career-contents-wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
    width: 960px
}

@media only screen and (max-width: 64em) {
    .page-company .career .career-contents .career-contents-wrap {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-company .career .career-contents .career-contents-wrap {
        width: 100%
    }
}

.page-company .career .career-contents .career-hdr {
    align-items: flex-end;
    display: flex
}

@media only screen and (max-width: 47.9375em) {
    .page-company .career .career-contents .career-hdr {
        align-items: flex-start;
        flex-direction: column
    }
}

.page-company .career .career-contents .career-hdr .title {
    margin-bottom: 0
}

.page-company .career .career-contents .career-hdr .sub-label span {
    font-family: "Montserrat";
    font-size: 34px;
    font-weight: bold
}

.page-company .career .career-contents .career-infos {
    margin-top: 100px
}

@media only screen and (max-width: 47.9375em) {
    .page-company .career .career-contents .career-infos {
        margin-top: 30px
    }
}

.page-company .career .career-contents .career-infos .career-info {
    align-items: flex-start;
    border-bottom: 1px solid #DEDEDE;
    display: flex;
    justify-content: space-between;
    padding: 40px 0
}

@media only screen and (max-width: 47.9375em) {
    .page-company .career .career-contents .career-infos .career-info {
        flex-direction: column;
        padding: 20px 0
    }
}

.page-company .career .career-contents .career-infos .career-info .career-title {
    align-items: center;
    color: #222;
    display: flex;
    font-size: 20px;
    font-weight: bold;
    justify-content: stretch
}

@media only screen and (max-width: 47.9375em) {
    .page-company .career .career-contents .career-infos .career-info .career-title {
        font-size: 18px
    }
}

.page-company .career .career-contents .career-infos .career-info .career-title:before {
    align-items: center;
    background-color: #FF6F22;
    border-radius: 8px;
    content: '';
    display: inline-flex;
    height: auto;
    margin-right: 25px;
    padding: 25px 0 25px;
    width: 11px
}

@media only screen and (max-width: 47.9375em) {
    .page-company .career .career-contents .career-infos .career-info .career-title:before {
        margin-right: 15px
    }
}

.page-company .career .career-contents .career-infos .career-info .career-details {
    margin-top: 10px;
    width: 800px
}

@media only screen and (max-width: 64em) {
    .page-company .career .career-contents .career-infos .career-info .career-details {
        width: 75%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-company .career .career-contents .career-infos .career-info .career-details {
        width: 100%
    }
}

.page-company .career .career-contents .career-infos .career-info .career-details .career-desc {
    color: #222;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5
}

.page-company .career .career-contents .career-infos .career-info .career-details .map {
    background-color: #D9D9D9;
    height: 367px;
    margin-top: 30px;
    width: 682px
}

@media only screen and (max-width: 64em) {
    .page-company .career .career-contents .career-infos .career-info .career-details .map {
        height: 300px;
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-company .career .career-contents .career-infos .career-info .career-details .map {
        height: 200px;
        width: 100%
    }
}

.page-company .career .career-contents .career-infos .career-info .career-details .map iframe {
    height: 100%;
    width: 100%
}

.modal-member {
    display: flex;
    position: fixed;
    inset: 0;
    z-index: 999999;
    background: rgba(0, 0, 0, 0.8);
    justify-content: center;
    align-items: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity 1s ease
}

.modal-member.is-active {
    opacity: 1;
    pointer-events: auto
}

.modal-member.is-active .modal-close {
    display: flex
}

.modal-member .modal-content {
    background: #ededed;
    max-width: 800px;
    width: 90%;
    border-radius: 8px;
    padding: 30px 50px;
    display: flex;
    flex-direction: column
}

@media only screen and (max-width: 47.9375em) {
    .modal-member .modal-content {
        border-radius: 4px;
        padding: 15px 20px
    }
}

.modal-member .modal-content .modal-inner {
    display: flex;
    gap: 30px;
    align-items: center
}

@media only screen and (max-width: 47.9375em) {
    .modal-member .modal-content .modal-inner {
        gap: 15px;
        flex-direction: column
    }
}

.modal-member .modal-content .modal-inner figure {
    flex-basis: 30%
}

.modal-member .modal-content .modal-inner figure img {
    width: 100%
}

@media only screen and (max-width: 47.9375em) {
    .modal-member .modal-content .modal-inner figure img {
        margin: 0 auto;
        height: 280px;
        width: auto
    }
}

.modal-member .modal-content .modal-inner .modal-text {
    flex: 1
}

.modal-member .modal-content .modal-inner .modal-text h2 {
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 0.5rem
}

@media only screen and (max-width: 47.9375em) {
    .modal-member .modal-content .modal-inner .modal-text h2 {
        font-size: 1.5rem
    }
}

.modal-member .modal-content .modal-inner .modal-text h4 {
    font-size: 1.1rem;
    margin-bottom: 1rem;
    font-weight: normal;
    color: #666
}

@media only screen and (max-width: 47.9375em) {
    .modal-member .modal-content .modal-inner .modal-text h4 {
        font-size: 1rem
    }
}

.modal-member .modal-content .modal-inner .modal-text p {
    line-height: 1.6;
    color: #444
}

@media only screen and (max-width: 47.9375em) {
    .modal-member .modal-content .modal-inner .modal-text p {
        font-size: .8rem
    }
}

.modal-member .modal-close {
    align-items: center;
    background-color: transparent;
    border-radius: 50%;
    color: #fff;
    display: none;
    align-self: flex-end;
    font-size: 24px;
    cursor: pointer;
    position: absolute;
    justify-content: center;
    top: 50px;
    right: 100px;
    width: 50px;
    height: 50px;
    transition: .5s
}

@media only screen and (max-width: 47.9375em) {
    .modal-member .modal-close {
        background-color: rgba(255, 255, 255, 0.5);
        top: 4%;
        right: 2.5%
    }
}

.modal-member .modal-close:hover {
    color: #222;
    background-color: #fff
}

.page-contact .contact {
    padding: 0
}

.page-contact .contact .contact-contents {
    background-color: #FF6F22;
    display: block;
    padding: 120px 48px 70px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center
}

@media only screen and (max-width: 64em) {
    .page-contact .contact .contact-contents {
        padding: 150px 48px 70px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .contact .contact-contents {
        padding: 120px 24px 30px
    }
}

.page-contact .contact .contact-contents .desc {
    font-weight: 600;
    margin: 0 auto 55px;
    width: 560px
}

.page-contact .contact .contact-contents .contact-hdr {
    align-items: center;
    display: flex;
    justify-content: center;
    position: relative
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .contact .contact-contents .contact-hdr .bottom-subtitle {
        font-size: 90px
    }
}

.page-contact .contact .contact-contents .contact-hdr .title {
    position: absolute;
    font-size: 60px;
    margin: 20px 0 0
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .contact .contact-contents .contact-hdr .title {
        font-size: 43px;
        margin: 0 auto 10px
    }
}

.page-contact .contact .contact-contents .subtitle {
    margin-bottom: 10px
}

.page-contact .form .form-contents {
    display: block;
    padding: 100px 48px 120px
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .form .form-contents {
        padding: 50px 24px 50px
    }
}

.page-contact .form .form-contents .form-contents-wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
    width: 1130px
}

@media only screen and (max-width: 64em) {
    .page-contact .form .form-contents .form-contents-wrap {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .form .form-contents .form-contents-wrap {
        width: 100%
    }
}

.page-contact .form .form-contents .form-contents-wrap .title {
    font-size: 48px
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .form .form-contents .form-contents-wrap .title {
        font-size: 32px
    }
}

.page-contact .form .form-contents .form-contents-wrap .desc {
    text-align: center;
    max-width: 100%
}

.page-contact .form .form-contents .form-contents-wrap .desc.thank-you-desc {
    display: block;
    margin: 80px auto 100px !important
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .form .form-contents .form-contents-wrap .desc.thank-you-desc {
        margin: 40px auto 50px !important
    }
}

.page-contact .form .form-contents .form-contents-wrap form {
    margin: 0 auto;
    width: 900px
}

@media only screen and (max-width: 64.1875em) {
    .page-contact .form .form-contents .form-contents-wrap form {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .form .form-contents .form-contents-wrap form {
        width: 100%
    }
}

.page-contact .form .form-contents .form-contents-wrap table {
    margin: 0 auto;
    width: 900px
}

@media only screen and (max-width: 64.1875em) {
    .page-contact .form .form-contents .form-contents-wrap table {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .form .form-contents .form-contents-wrap table {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .form .form-contents .form-contents-wrap table tr {
        display: flex;
        flex-direction: column;
        gap: 10px;
        margin-bottom: 20px
    }
}

.page-contact .form .form-contents .form-contents-wrap table tr:last-child th {
    vertical-align: top
}

.page-contact .form .form-contents .form-contents-wrap table tr th {
    font-size: 18px;
    font-weight: bold;
    padding: 20px 0
}

@media only screen and (max-width: 64em) {
    .page-contact .form .form-contents .form-contents-wrap table tr th {
        width: 30%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .form .form-contents .form-contents-wrap table tr th {
        padding: 0;
        width: 100%
    }
}

.page-contact .form .form-contents .form-contents-wrap table tr th span {
    color: #C80000;
    font-size: 12px
}

.page-contact .form .form-contents .form-contents-wrap table tr td {
    padding: 20px 0;
    width: 700px
}

@media only screen and (max-width: 64em) {
    .page-contact .form .form-contents .form-contents-wrap table tr td {
        width: 70%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .form .form-contents .form-contents-wrap table tr td {
        padding: 0;
        width: 100%
    }
}

.page-contact .form .form-contents .form-contents-wrap table tr td input,
.page-contact .form .form-contents .form-contents-wrap table tr td textarea {
    border-radius: 4px;
    border: 1px solid #A7A7A7;
    padding: 20px;
    width: 100%
}

.page-contact .form .form-contents .form-contents-wrap table tr td textarea {
    height: 350px
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .form .form-contents .form-contents-wrap table tr td textarea {
        height: 200px
    }
}

.page-contact .form .form-contents .form-contents-wrap table tr td .select-wrap {
    position: relative;
    width: 40%
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .form .form-contents .form-contents-wrap table tr td .select-wrap {
        width: 75%
    }
}

.page-contact .form .form-contents .form-contents-wrap table tr td .select-wrap::after {
    content: "";
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    width: 6px;
    height: 6px;
    border-right: 3px solid #e74c3c;
    border-bottom: 3px solid #e74c3c;
    pointer-events: none
}

.page-contact .form .form-contents .form-contents-wrap table tr td select {
    color: #222;
    border-radius: 4px;
    border: 1px solid #A7A7A7;
    padding: 10px;
    -webkit-appearance: none;
    outline: 0;
    width: 100%
}

.page-contact .form .form-contents .form-contents-wrap .agreement,
.page-contact .form .form-contents .form-contents-wrap .contact-agreement {
    align-items: center;
    font-weight: bold;
    display: flex;
    font-size: 18px;
    justify-content: center;
    text-align: center
}

.page-contact .form .form-contents .form-contents-wrap .agreement a,
.page-contact .form .form-contents .form-contents-wrap .contact-agreement a {
    color: #1192F0;
    text-decoration: underline
}

.page-contact .form .form-contents .form-contents-wrap .agreement a:hover,
.page-contact .form .form-contents .form-contents-wrap .contact-agreement a:hover {
    text-decoration: none
}

.page-contact .form .form-contents .form-contents-wrap .btn-wrapper .btn-top {
    background: #FFB62D;
    background: linear-gradient(90deg, #ffb62d 0%, #ff6f22 100%);
    border: 0;
    border-radius: 50px;
    color: #fff;
    cursor: pointer;
    display: flex;
    height: 100px;
    margin: 100px auto 0;
    width: 400px
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .form .form-contents .form-contents-wrap .btn-wrapper .btn-top {
        height: 65px;
        margin: 50px auto 0;
        width: 60%
    }
}

.page-contact .form .form-contents .form-contents-wrap .btn-wrapper .btn-top:hover {
    opacity: .8
}

.page-contact .form .form-contents .form-contents-wrap .btn-wrapper .btn-top:before {
    border: 0;
    background-image: url("../images/common/icon-arrow-white.png")
}

.page-contact .form .form-contents .form-contents-wrap .wpforms-submit {
    align-items: center;
    background: #FFB62D;
    background: linear-gradient(90deg, #ffb62d 0%, #ff6f22 100%);
    border: 0;
    border-radius: 50px;
    color: #fff;
    cursor: pointer;
    display: flex;
    font-size: 21px;
    justify-content: center;
    height: 100px;
    margin: 100px auto 0;
    width: 400px
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .form .form-contents .form-contents-wrap .wpforms-submit {
        height: 65px;
        margin: 50px auto 0;
        width: 60%
    }
}

.page-contact .form .form-contents .form-contents-wrap .wpforms-submit:hover {
    opacity: .8
}

.page-contact .form .form-contents .form-contents-wrap .wpforms-submit:before {
    border: 0;
    background-image: url("../images/common/icon-arrow-white.png")
}

.page-contact .form .form-contents .form-contents-wrap .thank-you-btn {
    padding: 14px 100px
}

@media only screen and (max-width: 47.9375em) {
    .page-contact .form .form-contents .form-contents-wrap .thank-you-btn {
        padding: 14px 25px
    }
}

.page-about .about {
    background-color: #FF872B
}

.page-about .about .about-contents {
    background-color: #FF6F22;
    border-radius: 0 0 160px 0;
    display: block;
    padding: 120px 48px 120px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center
}

@media only screen and (max-width: 64em) {
    .page-about .about .about-contents {
        padding: 150px 48px 120px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-about .about .about-contents {
        border-radius: 0 0 60px 0;
        padding: 120px 24px 60px
    }
}

.page-about .about .about-contents .desc {
    font-weight: 600;
    margin: 0 auto 55px;
    width: 560px
}

.page-about .about .about-contents .about-hdr {
    align-items: center;
    display: flex;
    justify-content: center;
    position: relative
}

.page-about .about .about-contents .about-hdr .title {
    position: absolute;
    font-size: 60px;
    margin: 20px 0 0
}

@media only screen and (max-width: 47.9375em) {
    .page-about .about .about-contents .about-hdr .title {
        font-size: 43px;
        margin: 0;
        white-space: nowrap
    }
}

.page-about .about .about-contents .about-desc {
    color: #fff;
    font-size: 32px;
    font-weight: 500;
    line-height: 2;
    margin: 80px auto 0;
    width: 960px
}

@media only screen and (max-width: 64em) {
    .page-about .about .about-contents .about-desc {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-about .about .about-contents .about-desc {
        font-size: 18px;
        margin: 20px auto 0;
        width: 100%
    }
}

.page-about .about-sec .about-sec--content {
    border-radius: 0 0 160px 0;
    padding: 100px 48px 180px
}

@media only screen and (max-width: 47.9375em) {
    .page-about .about-sec .about-sec--content {
        border-radius: 0 0 60px 0;
        padding: 50px 24px 60px
    }
}

.page-about .about-sec .about-sec--content .about-wrapper {
    margin: 0 auto;
    width: 960px
}

@media only screen and (max-width: 64em) {
    .page-about .about-sec .about-sec--content .about-wrapper {
        width: 100%
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-about .about-sec .about-sec--content .about-wrapper {
        width: 100%
    }
}

.page-about .about-sec .about-sec--content .about-wrapper .about-ttl {
    color: #fff;
    font-family: 'Montserrat';
    font-size: 70px;
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 1.5
}

@media only screen and (max-width: 47.9375em) {
    .page-about .about-sec .about-sec--content .about-wrapper .about-ttl {
        font-size: 30px;
        margin-bottom: 10px
    }
}

.page-about .about-sec .about-sec--content .about-wrapper .about-sub-ttl {
    border-radius: 8px;
    align-items: center;
    background-color: #fff;
    color: #FF872B;
    display: inline-flex;
    font-size: 26px;
    font-weight: bold;
    margin-bottom: 60px;
    padding: 10px 20px
}

@media only screen and (max-width: 47.9375em) {
    .page-about .about-sec .about-sec--content .about-wrapper .about-sub-ttl {
        border-radius: 4px;
        font-size: 16px;
        margin-bottom: 30px;
        padding: 10px 15px
    }
}

.page-about .about-sec .about-sec--content .about-wrapper .about-bubble {
    background-color: #fff;
    border-radius: 90px 90px 4px 90px;
    color: #FF6F22;
    font-size: 35px;
    font-weight: bold;
    line-height: 2;
    padding: 50px 0px;
    text-align: center
}

@media only screen and (max-width: 64em) {
    .page-about .about-sec .about-sec--content .about-wrapper .about-bubble {
        font-size: 28px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-about .about-sec .about-sec--content .about-wrapper .about-bubble {
        border-radius: 40px 40px 2px 40px;
        font-size: 18px;
        line-height: 1.6;
        padding: 30px 40px
    }
}

.page-about .about-sec .about-sec--content .about-wrapper .about-bubble span {
    display: block
}

@media only screen and (max-width: 47.9375em) {
    .page-about .about-sec .about-sec--content .about-wrapper .about-bubble span {
        display: inline
    }
}

.page-about .about-sec .about-sec--content .about-wrapper .about-desc {
    color: #fff;
    font-size: 30px;
    line-height: 1.8;
    margin-top: 60px
}

@media only screen and (max-width: 47.9375em) {
    .page-about .about-sec .about-sec--content .about-wrapper .about-desc {
        font-size: 15px;
        line-height: 1.6;
        margin-top: 30px
    }
}

.page-about .about-sec.mission {
    background-color: #FF9D3C
}

.page-about .about-sec.mission .about-sec--content {
    background-color: #FF872B
}

.page-about .about-sec.mission .about-sec--content .about-wrapper .about-bubble {
    font-size: 60px
}

@media only screen and (max-width: 64em) {
    .page-about .about-sec.mission .about-sec--content .about-wrapper .about-bubble {
        font-size: 42px
    }
}

@media only screen and (max-width: 47.9375em) {
    .page-about .about-sec.mission .about-sec--content .about-wrapper .about-bubble {
        font-size: 30px
    }
}

.page-about .about-sec.vision {
    background-color: #fff
}

.page-about .about-sec.vision .about-sec--content {
    background-color: #FF9D3C
}

.page-about .about-sec.value .about-sec--content {
    background-color: #fff
}

.page-about .about-sec.value .about-sec--content .about-wrapper .about-ttl {
    color: #FF872B
}

.page-about .about-sec.value .about-sec--content .about-wrapper .about-sub-ttl {
    background-color: #FF872B;
    color: #fff
}

.page-about .about-sec.value .about-sec--content .about-wrapper .about-bubble {
    background-color: #FF872B;
    color: #fff
}

.page-privacy {

}

.page-privacy .privacy {
  background-color: #FF6F22;
}

.page-privacy .privacy .privacy-contents .privacy-hdr {
  align-items: center;
  display: flex;
  justify-content: center;
  position: relative
}

.page-privacy .privacy .privacy-contents .privacy-hdr .title {
    position: absolute;
    font-size: 60px;
    margin: 20px 0 0
}

@media only screen and (max-width: 47.9375em) {
    .page-privacy .privacy .privacy-contents .privacy-hdr .title{
        font-size: 28px;
        margin: 0;
        white-space: nowrap
    }
}

@media only screen and (max-width: 47.9375em) {
  .page-privacy .privacy .privacy-contents .privacy-hdr .subtitle.bottom-subtitle {
    font-size: 75px;
  }
}

.page-privacy .privacy-sec {
  padding: 120px 0 200px;
}

@media only screen and (max-width: 47.9375em) {
  .page-privacy .privacy-sec {
    padding: 60px 0 100px;
  }
}

.page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper {
  margin: 0 auto;
  width: 1010px;
}

@media only screen and (max-width: 47.9375em) {
  .page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper {
  width: 90%;
  }
}

.page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper p {
  font-size: 18px;
  line-height: 2;
  margin-bottom: 40px;
}

@media only screen and (max-width: 47.9375em) {
  .page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper p {
    font-size: 16px;
    margin-bottom: 20px;
  }
}

.page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper p strong {
  /* display: block; */
}

.page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper h2 {
  border-left: 15px solid #FF6F22;
  font-size: 36px;
  font-weight: bold;
  line-height: 1.3;
  padding-left: 15px;
  margin-bottom: 50px;
}

@media only screen and (max-width: 47.9375em) {
  .page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper h2 {
    border-left: 6px solid #FF6F22;
    font-size: 24px;
    padding-left: 7px;
    margin-bottom: 25px;
  }
}


.page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper h3 {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.6;
  margin-bottom: 30px;
}

@media only screen and (max-width: 47.9375em) {
  .page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper h3 {
    font-size: 18px;
    margin-bottom: 15px;
  }
}

.page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper h4 {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
  margin-bottom: 30px;
}

@media only screen and (max-width: 47.9375em) {
  .page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper h4 {
    font-size: 16px;
    margin-bottom: 15px;
  }
}

.page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper ul {
  position: relative;
  
}

.page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper ul li {
  font-size: 18px;
  line-height: 2;
  padding-left: 30px;
  margin-bottom: 30px;
  position: relative;
}

@media only screen and (max-width: 47.9375em) {
  .page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper ul li {
    font-size: 14px;
    padding-left: 15px;
    margin-bottom: 15px;
  }
}

.page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper ul li::before {
  background-color: #FF6F22;
  border-radius: 50%;
  content: '';
  display: block;
  height: 17px;
  width: 17px;
  left: 0;
  position: absolute;
  top: 0.6em;
}

@media only screen and (max-width: 47.9375em) {
  .page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper ul li::before {
    height: 9px;
    width: 9px;
    top: 0.9em;
  }
}

.page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper table {
  margin-bottom: 50px;
  width: 100%; 
}

@media only screen and (max-width: 47.9375em) {
  .page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper table {
    margin-bottom: 25px;
  }
}

.page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper table tr th, .page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper table tr td {
  padding: 20px;
}

@media only screen and (max-width: 47.9375em) {
  .page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper table tr th, .page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper table tr td {
    padding: 10px;
  }
}

.page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper table tr th {
  border: 1px solid #111;
  background-color: #ff6f22;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  line-height: 2;
  text-align: center;
}

@media only screen and (max-width: 47.9375em) {
  .page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper table tr th {
    font-size: 16px;
  }
}

.page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper table tr td {
  border-bottom: 1px solid #111;
  border-left: 1px solid #111;
  font-size: 18px;
  line-height: 2;
}

@media only screen and (max-width: 47.9375em) {
  .page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper table tr td {
    font-size: 14px;
  }
}

.page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper table tr td:first-child {
  font-weight: bold;
  width: 250px;
}

@media only screen and (max-width: 47.9375em) {
  .page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper table tr td:first-child {
    width: 120px;
  }
}


.page-privacy .privacy-sec .privacy-sec--content .privacy-wrapper table tr td:last-child {
  border-right: 1px solid #111;
}