@import"css2.css";

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    font-style: normal;
    font-weight: normal;
    vertical-align: baseline;
    background: rgba(0, 0, 0, 0)
}

html {
    overflow-y: scroll
}

body {
    line-height: 1
}

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

ol,
ul,
nav ul {
    list-style: none
}

blockquote,
q {
    quotes: none
}

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

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: rgba(0, 0, 0, 0)
}

ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none
}

mark {
    background-color: none;
    color: inherit;
    font-style: inherit;
    font-weight: inherit
}

del {
    text-decoration: line-through
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help
}

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

caption,
th {
    text-align: left
}

hr {
    display: block;
    width: 100%;
    height: 1px;
    border: 0;
    margin: 1em 0;
    padding: 0;
    background: #000
}

input,
textarea,
select {
    vertical-align: middle;
    margin: 0;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

p {
    letter-spacing: 0
}

a {
    text-decoration: none;
    color: inherit
}

a:focus {
    outline: none
}

html {
    -webkit-text-size-adjust: none;
    font-size: 62.5%
}

@media screen and (max-width: 1280px) {
    html {
        font-size: .5208333333vw
    }
}

@media screen and (max-width: 1280px)and (max-width: 768px) {
    html {
        font-size: 62.5%
    }
}

body {
    width: 100%;
    height: 100%;
    background: #f9f9fe;
    font-family: "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    line-height: 2.5;
    -webkit-text-size-adjust: none;
    color: #0c0e13;
    position: relative;
    letter-spacing: 0;
    font-size: 1.8rem;
    -ms-overflow-style: none;
    scrollbar-width: none
}

@media screen and (min-width: 769px) {
    body {
        font-size: 0.9375vw
    }
}

@media screen and (max-width: 768px) {
    body {
        font-size: 3.8461538462vw
    }
}

body::-webkit-scrollbar {
    display: none
}

@media all and (-ms-high-contrast: none) {
    body {
        font-family: Verdana, Meiryo, sans-serif
    }
}

.clearfix:after {
    visibility: hidden;
    display: block;
    content: " ";
    clear: both;
    height: 0
}

* html .clearfix,
*:first-child+html .clearfix {
    zoom: 1
}

a {
    color: #0c0e13
}

a:hover {
    text-decoration: none
}

p::-moz-selection,
span::-moz-selection,
strong::-moz-selection,
em::-moz-selection,
li::-moz-selection,
dt::-moz-selection,
td::-moz-selection,
th::-moz-selection,
small::-moz-selection,
mark::-moz-selection,
br::-moz-selection,
img::-moz-selection,
h1::-moz-selection,
h2::-moz-selection,
h3::-moz-selection,
h4::-moz-selection,
h5::-moz-selection,
h6::-moz-selection,
a::-moz-selection {
    background: rgba(230, 0, 18, .3)
}

p::selection,
span::selection,
strong::selection,
em::selection,
li::selection,
dt::selection,
td::selection,
th::selection,
small::selection,
mark::selection,
br::selection,
img::selection,
h1::selection,
h2::selection,
h3::selection,
h4::selection,
h5::selection,
h6::selection,
a::selection {
    background: rgba(230, 0, 18, .3)
}

p {
    letter-spacing: inherit
}

p a {
    color: #0c0e13;
    text-decoration: underline;
    display: inline
}

p a:hover {
    text-decoration: none
}

img {
    max-width: 100%;
    vertical-align: top;
    height: auto
}

em {
    font-style: normal
}

.tb_invisible,
.sp_disp,
.pc_disp {
    font-weight: inherit;
    letter-spacing: inherit
}

@media screen and (min-width: 769px) {
    .sp_br {
        display: none
    }

    .sp_disp {
        display: none !important;
    }

    a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
        text-decoration: none
    }

    .pc_inline {
        display: inline
    }
}

@media screen and (max-width: 768px) {
    .pc_br {
        display: none
    }

    .pc_disp {
        display: none !important
    }

    .sp_inline {
        display: inline
    }
}

@media screen and (max-width: 1024px) {
    .tb_invisible {
        display: none
    }
}

.main {
    width: 100%;
    box-sizing: border-box;
    overflow-x: hidden
}

.container,
.contents,
body.wp-editor {
    margin: 0 auto;
    clear: both;
    box-sizing: border-box;
    position: relative;
    z-index: 0;
    width: 1280px;
    padding: 0px 40px
}

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

    .container,
    .contents,
    body.wp-editor {
        width: 66.6666666667vw;
        padding: 0vw 2.0833333333vw
    }
}

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

    .container,
    .contents,
    body.wp-editor {
        width: 100%;
        padding: 0vw 6.1538461538vw
    }
}

.sentence {
    text-align: center;
    width: 100%;
    box-sizing: border-box;
    padding: 40px 40px;
    font-size: 1.6rem;
    line-height: 32px
}

@media screen and (min-width: 769px) {
    .sentence {
        padding: 2.0833333333vw 2.0833333333vw;
        font-size: 0.8333333333vw;
        line-height: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .sentence {
        padding: 6.1538461538vw 4.1025641026vw;
        font-size: 3.5897435897vw;
        line-height: 7.1794871795vw;
        text-align: left
    }
}

.center {
    text-align: center
}

@media screen and (min-width: 769px) {
    .center_pc {
        text-align: center
    }
}

@media screen and (max-width: 768px) {
    .center_sp {
        text-align: center
    }
}

.underline {
    text-decoration: underline
}

.underline:hover {
    text-decoration: none
}

.em {
    font-weight: inherit;
    letter-spacing: inherit;
    color: #0c0e13
}

@keyframes scroll-hint-appear {
    0% {
        transform: translateX(40px);
        opacity: 0
    }

    10% {
        opacity: 1
    }

    50%,
    100% {
        transform: translateX(-40px);
        opacity: 0
    }
}

.scroll-hint.is-right-scrollable {
    background: linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0))
}

.scroll-hint.is-right-scrollable.is-left-scrollable {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0)), linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0))
}

.scroll-hint.is-left-scrollable {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0))
}

.scroll-hint-icon {
    position: absolute;
    top: calc(50% - 25px);
    left: calc(50% - 60px);
    box-sizing: border-box;
    width: 120px;
    height: 80px;
    border-radius: 5px;
    transition: opacity .3s;
    opacity: 0;
    background: rgba(0, 0, 0, .7);
    text-align: center;
    padding: 20px 10px 10px 10px
}

.scroll-hint-icon-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    max-height: 100%;
    pointer-events: none
}

.scroll-hint-text {
    font-size: 10px;
    color: #fff;
    margin-top: 5px
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
    opacity: .8
}

.scroll-hint-icon:before {
    display: inline-block;
    width: 40px;
    height: 40px;
    color: #fff;
    vertical-align: middle;
    text-align: center;
    content: "";
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=)
}

.scroll-hint-icon:after {
    content: "";
    width: 34px;
    height: 14px;
    display: block;
    position: absolute;
    top: 10px;
    left: 50%;
    margin-left: -20px;
    background-repeat: no-repeat;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==);
    opacity: 0;
    transition-delay: 2.4s
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
    opacity: 1
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
    animation: scroll-hint-appear 1.2s linear;
    animation-iteration-count: 2
}

.scroll-hint-icon-white {
    background-color: #fff;
    box-shadow: 0 4px 5px rgba(0, 0, 0, .4)
}

.scroll-hint-icon-white:before {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=)
}

.scroll-hint-icon-white:after {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==)
}

.scroll-hint-icon-white .scroll-hint-text {
    color: #000
}

@font-face {
    font-family: "swiper-icons";
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #007aff
}

.swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1
}

.swiper-vertical>.swiper-wrapper {
    -ms-flex-direction: column;
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: -ms-flexbox;
    display: flex;
    transition-property: transform;
    box-sizing: content-box
}

.swiper-android .swiper-slide,
.swiper-wrapper {
    transform: translate3d(0px, 0, 0)
}

.swiper-pointer-events {
    -ms-touch-action: pan-y;
    touch-action: pan-y
}

.swiper-pointer-events.swiper-vertical {
    -ms-touch-action: pan-x;
    touch-action: pan-x
}

.swiper-slide {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    -ms-flex-align: start;
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-3d,
.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px
}

.swiper-3d .swiper-wrapper,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-cube-shadow {
    transform-style: preserve-3d
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, .15)
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-horizontal.swiper-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory
}

.swiper-vertical.swiper-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: y mandatory;
    scroll-snap-type: y mandatory
}

.swiper-centered>.swiper-wrapper::before {
    content: "";
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-order: 9999;
    order: 9999
}

.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    -webkit-margin-start: var(--swiper-centered-offset-before);
    margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-horizontal>.swiper-wrapper: :before {
    height: 100%;
    width: var(--swiper-centered-offset-after)
}

.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    -webkit-margin-before: var(--swiper-centered-offset-before);
    margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-vertical>.swiper-wrapper: :before {
    width: 100%;
    height: var(--swiper-centered-offset-after)
}

.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always
}

.breadcrumb {
    transition: -webkit-clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0)
}

.done .breadcrumb,
.loaded .breadcrumb {
    -webkit-clip-path: inset(0 0% 0 0);
    clip-path: inset(0 0% 0 0)
}

.main_visual_figure {
    transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) .8s, -webkit-clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) .6s;
    transition: clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) .6s, opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) .8s;
    transition: clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) .6s, opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) .8s, -webkit-clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) .6s;
    opacity: 0;
    -webkit-clip-path: inset(0 0 100% 0);
    clip-path: inset(0 0 100% 0)
}

.loaded .main_visual_figure {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
    opacity: 1
}

.product_archive_list_item_link img,
.product_archive_tax_item_link img,
.header_gnav_list_child_list_item_link img {
    transition: transform .6s cubic-bezier(0.32, 0.95, 0.6, 1)
}

.product_archive_list_item_link:hover img,
.product_archive_tax_item_link:hover img,
.header_gnav_list_child_list_item_link:hover img {
    -ms-transform: scale(1.1);
    transform: scale(1.1)
}

.breadcrumb_list_item_link>span,
.footer_nav_list_item_parent_link>span,
.footer_nav_list_item_parent a>span {
    animation: TEXT-MASK-OVER .3s cubic-bezier(0.23, 1, 0.32, 1) 0s forwards;
    background-color: rgba(0, 0, 0, 0);
    background-image: linear-gradient(to right, #7A8192 50%, #74748f 0);
    background-position: 200% 0;
    background-size: 200% 100%;
    -webkit-text-fill-color: rgba(0, 0, 0, 0);
    -webkit-background-clip: text
}

.breadcrumb_list_item_link:hover>span,
.footer_nav_list_item_parent_link:hover>span,
.footer_nav_list_item_parent a:hover>span {
    animation: TEXT-MASK .3s cubic-bezier(0.23, 1, 0.32, 1) 0s forwards
}

.breadcrumb_list_item_link>span {
    animation: TEXT-MASK-OVER .3s cubic-bezier(0.23, 1, 0.32, 1) 0s forwards;
    background-color: rgba(0, 0, 0, 0);
    background-image: linear-gradient(to right, #7A8192 50%, #74748f 0);
    background-position: 200% 0;
    background-size: 200% 100%;
    -webkit-text-fill-color: rgba(0, 0, 0, 0);
    -webkit-background-clip: text
}

.breadcrumb_list_item_link:hover>span {
    animation: TEXT-MASK .3s cubic-bezier(0.23, 1, 0.32, 1) 0s forwards
}

.footer_privacy_link>span,
.footer_nav_list_item_link>span,
.footer_nav_list_child_item_link>span {
    animation: TEXT-MASK-OVER .3s cubic-bezier(0.23, 1, 0.32, 1) 0s forwards;
    background-color: rgba(0, 0, 0, 0);
    background-image: linear-gradient(to right, #000 50%, rgba(0, 0, 0, .7) 0);
    background-position: 200% 0;
    background-size: 200% 100%;
    -webkit-text-fill-color: rgba(0, 0, 0, 0);
    -webkit-background-clip: text
}

.footer_privacy_link:hover>span,
.footer_nav_list_item_link:hover>span,
.footer_nav_list_child_item_link:hover>span {
    animation: TEXT-MASK .3s cubic-bezier(0.23, 1, 0.32, 1) 0s forwards
}

@keyframes Humberger_bar_z {
    0% {
        width: 14.358974359vw;
        height: 1.0256410256vw;
        top: 0;
        margin-top: 0;
        right: 50%;
        margin-right: -7.1794871795vw;
        border-radius: 7.1794871795vw;
        transform: rotate(0deg)
    }

    20% {
        width: 14.358974359vw;
        height: 1.0256410256vw;
        top: 0;
        margin-top: 0;
        right: 50%;
        margin-right: -7.1794871795vw;
        border-radius: 7.1794871795vw;
        transform: rotate(-3deg)
    }

    40% {
        top: 0
    }

    60% {
        width: 1.0256410256vw;
        height: 1.0256410256vw;
        top: 30%;
        margin-top: 0;
        right: 50%;
        margin-left: -.5128205128vw;
        border-radius: 50%;
        transform: rotate(-25deg)
    }

    80% {
        width: 14.8717948718vw;
        height: 1.0256410256vw;
        top: 50%;
        right: 50%;
        margin-top: -.5128205128vw;
        margin-right: -7.4358974359vw;
        border-radius: 7.1794871795vw;
        transform: rotate(-15deg)
    }

    90% {
        transform: rotate(-30deg)
    }

    100% {
        width: 14.8717948718vw;
        height: 1.0256410256vw;
        top: 50%;
        right: 50%;
        margin-top: -.5128205128vw;
        margin-right: -7.4358974359vw;
        border-radius: 7.1794871795vw;
        transform: rotate(-25deg)
    }
}

@keyframes Humberger_bar_y {
    0% {
        width: 14.358974359vw;
        height: 1.0256410256vw;
        bottom: 0;
        margin-bottom: 0;
        right: 50%;
        margin-right: -7.1794871795vw;
        border-radius: 7.1794871795vw;
        transform: rotate(0deg)
    }

    20% {
        width: 14.358974359vw;
        height: 1.0256410256vw;
        bottom: 0;
        margin-bottom: 0;
        right: 50%;
        margin-right: -7.1794871795vw;
        border-radius: 7.1794871795vw;
        transform: rotate(3deg)
    }

    40% {
        bottom: 0
    }

    60% {
        width: 1.0256410256vw;
        height: 1.0256410256vw;
        bottom: 30%;
        margin-bottom: 0;
        right: 50%;
        margin-right: -.5128205128vw;
        border-radius: 50%;
        transform: rotate(25deg)
    }

    80% {
        width: 14.8717948718vw;
        height: 1.0256410256vw;
        bottom: 50%;
        margin-bottom: -.5128205128vw;
        margin-right: -7.4358974359vw;
        right: 50%;
        border-radius: 7.1794871795vw;
        transform: rotate(35deg)
    }

    90% {
        transform: rotate(20deg)
    }

    100% {
        width: 14.8717948718vw;
        height: 1.0256410256vw;
        bottom: 50%;
        margin-bottom: -.5128205128vw;
        margin-right: -7.4358974359vw;
        right: 50%;
        border-radius: 7.1794871795vw;
        transform: rotate(25deg)
    }
}

@keyframes Humberger_bar_z_rev {
    0% {
        width: 14.8717948718vw;
        height: 1.0256410256vw;
        top: 50%;
        right: 50%;
        margin-top: -.5128205128vw;
        margin-right: -7.4358974359vw;
        border-radius: 7.1794871795vw;
        transform: rotate(-25deg)
    }

    20% {
        width: 14.8717948718vw;
        height: 1.0256410256vw;
        top: 50%;
        right: 50%;
        margin-top: -.5128205128vw;
        margin-right: -7.4358974359vw;
        border-radius: 7.1794871795vw;
        transform: rotate(-15deg)
    }

    45% {
        top: 0
    }

    55% {
        width: 1.0256410256vw;
        height: 1.0256410256vw;
        top: 30%;
        margin-top: 0;
        right: 50%;
        margin-left: -.5128205128vw;
        border-radius: 50%;
        transform: rotate(-25deg)
    }

    80% {
        width: 14.358974359vw;
        height: 1.0256410256vw;
        top: 0;
        margin-top: 0;
        right: 50%;
        margin-right: -7.1794871795vw;
        border-radius: 7.1794871795vw;
        transform: rotate(-3deg)
    }

    100% {
        width: 14.358974359vw;
        height: 1.0256410256vw;
        top: 0;
        margin-top: 0;
        right: 50%;
        margin-right: -7.1794871795vw;
        border-radius: 7.1794871795vw;
        transform: rotate(0deg)
    }
}

@keyframes Humberger_bar_y_rev {
    0% {
        width: 14.8717948718vw;
        height: 1.0256410256vw;
        bottom: 50%;
        right: 50%;
        margin-bottom: -.5128205128vw;
        margin-right: -7.4358974359vw;
        border-radius: 7.1794871795vw;
        transform: rotate(25deg)
    }

    20% {
        width: 14.8717948718vw;
        height: 1.0256410256vw;
        bottom: 50%;
        right: 50%;
        margin-bottom: -.5128205128vw;
        margin-right: -7.4358974359vw;
        border-radius: 7.1794871795vw;
        transform: rotate(35deg)
    }

    45% {
        bottom: 0
    }

    55% {
        width: 1.0256410256vw;
        height: 1.0256410256vw;
        bottom: 30%;
        margin-bottom: 0;
        right: 50%;
        margin-right: -.5128205128vw;
        border-radius: 50%;
        transform: rotate(25deg)
    }

    80% {
        width: 14.358974359vw;
        height: 1.0256410256vw;
        bottom: 0;
        margin-bottom: 0;
        right: 50%;
        margin-right: -7.1794871795vw;
        border-radius: 7.1794871795vw;
        transform: rotate(3deg)
    }

    100% {
        width: 14.358974359vw;
        height: 1.0256410256vw;
        bottom: 0;
        margin-bottom: 0;
        right: 50%;
        margin-right: -7.1794871795vw;
        border-radius: 7.1794871795vw;
        transform: rotate(0deg)
    }
}

@keyframes Humberger_bg {
    0% {
        border-radius: 0 50% 50% 0;
        transform: translate(-200%, 0%)
    }

    20% {
        border-radius: 0 50% 50% 0
    }

    40% {
        border-radius: 0 50% 50% 0
    }

    100% {
        border-radius: 0 50% 50% 0;
        transform: translate(50%, 0%)
    }
}

@keyframes Humberger_bg_rev {
    0% {
        border-radius: 0 0 0 0;
        transform: translate(50%, 0%)
    }

    20% {
        border-radius: 50% 0 0 50%
    }

    40% {
        border-radius: 50% 0 0 50%
    }

    100% {
        border-radius: 50% 0 0 50%;
        transform: translate(100%, 0%)
    }
}

@keyframes TEXT-MASK {
    0% {
        background-position: 200% 0
    }

    100% {
        background-position: 100% 0
    }
}

@keyframes TEXT-MASK-OVER {
    0% {
        background-position: 100% 0
    }

    100% {
        background-position: 0 0
    }
}

@keyframes TEXT-MASK-BACK {
    0% {
        background-position: 0 0
    }

    100% {
        background-position: 100% 0
    }
}

@keyframes TEXT-MASK-OVER-BACK {
    0% {
        background-position: -100% 0
    }

    100% {
        background-position: 0 0
    }
}

@keyframes TEXT-MASK-OVER-SLUSH {
    0% {
        background-position: 100% 0
    }

    30% {
        background-position: 100% 0
    }

    100% {
        background-position: 0 0
    }
}

@keyframes TEXT-MASK-OVER-LOOP {
    0% {
        background-position: 100% 0
    }

    40% {
        background-position: -100% 0
    }

    100% {
        background-position: 0 0
    }
}

@keyframes COPY-SLIDE-OUT {
    0% {
        transform-origin: bottom;
        opacity: 1;
        transform: translateY(0px) scaleY(1)
    }

    30% {
        transform-origin: bottom;
        opacity: 1;
        transform: translateY(0px) scaleY(1.2)
    }

    100% {
        transform-origin: bottom;
        opacity: 0;
        transform: translateY(-50px) scaleY(1.2)
    }
}

@keyframes COPY-SLIDE-IN {
    0% {
        -webkit-clip-path: inset(0% 100% 0% 0%);
        clip-path: inset(0% 100% 0% 0%)
    }

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

@keyframes Dot-Rotation {
    0% {
        transform: rotate(40deg);
        opacity: 0
    }

    100% {
        transform: rotate(0deg);
        opacity: 1
    }
}

@keyframes Dot-Rotation-Rev {
    0% {
        transform: rotate(0deg);
        opacity: 1
    }

    100% {
        transform: rotate(-40deg);
        opacity: 0
    }
}

.cursor {
    display: block;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    will-change: transform;
    pointer-events: none;
    z-index: 1002;
    background: #0c0e13;
    border-radius: 50%;
    transition: transform cubic-bezier(0.25, 0.46, 0.45, 0.94) .2s, opacity linear .4s, width linear .4s, height linear .4s
}

.cursor.active_swipe {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: none;
    opacity: 1;
    width: 120px;
    height: 120px;
    margin-top: -60px;
    margin-left: -60px
}

@media screen and (min-width: 769px) {
    .cursor.active_swipe {
        width: 6.25vw;
        height: 6.25vw;
        margin-top: -3.125vw;
        margin-left: -3.125vw
    }
}

.cursor.active_swipe:before {
    content: "swipe";
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    color: #fff;
    font-size: 1.6rem;
    line-height: 16px
}

@media screen and (min-width: 769px) {
    .cursor.active_swipe:before {
        font-size: 0.8333333333vw;
        line-height: 0.8333333333vw
    }
}

.cursor.active_swipe:after {
    content: "";
    background-image: url("../image/arw.png");
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -4px;
    margin-left: -104.5px;
    width: 209px;
    height: 9px;
    background-size: 209px 9px
}

@media screen and (min-width: 769px) {
    .cursor.active_swipe:after {
        margin-top: -0.2083333333vw;
        margin-left: -5.4427083333vw;
        width: 10.8854166667vw;
        height: 0.46875vw;
        background-size: 10.8854166667vw 0.46875vw
    }
}

.btn {
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.btn_link {
    overflow: hidden;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    position: relative;
    z-index: 0;
    color: #0c0e13;
    letter-spacing: 0;
    width: 100%;
    height: 100%;
    border: 1px solid #e4e4e9;
    padding: 20px 56px 20px 62px;
    border-radius: 28px
}

@media screen and (min-width: 769px) {
    .btn_link {
        padding: 1.0416666667vw 2.9166666667vw 1.0416666667vw 3.2291666667vw;
        border-radius: 1.4583333333vw
    }
}

@media screen and (max-width: 768px) {
    .btn_link {
        padding: 5.1282051282vw 14.358974359vw 5.1282051282vw 15.8974358974vw;
        border-radius: 7.1794871795vw
    }
}

.btn_link_txt {
    color: inherit;
    position: relative;
    z-index: 1;
    font-weight: bold;
    transition: color .4s cubic-bezier(0.25, 0.46, 0.45, 0.94) .1s;
    font-size: 1.6rem;
    line-height: 16px
}

@media screen and (min-width: 769px) {
    .btn_link_txt {
        font-size: 0.8333333333vw;
        line-height: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .btn_link_txt {
        font-size: 3.5897435897vw;
        line-height: 4.1025641026vw
    }
}

.btn_link:hover .btn_link_txt {
    color: #fff
}

.white .btn_link {
    color: #fff;
    border-color: #fff
}

.white .btn_link:before {
    background: #fff
}

.white .btn_link:hover .btn_link_txt {
    color: #0c0e13
}

.white_bg .btn_link {
    color: #0c0e13;
    background: #fff;
    border-color: #fff
}

.white_bg .btn_link:before {
    background: #0c0e13
}

.btn:before,
.btn_link:before {
    content: "";
    border-radius: 50%;
    position: absolute;
    top: 50%;
    background: #0c0e13;
    transition: transform .6s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity .6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    pointer-events: none;
    width: 6px;
    height: 6px;
    margin-top: -3px;
    left: 24px
}

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

    .btn:before,
    .btn_link:before {
        width: 0.3125vw;
        height: 0.3125vw;
        margin-top: -0.15625vw;
        left: 1.25vw
    }
}

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

    .btn:before,
    .btn_link:before {
        width: 1.5384615385vw;
        height: 1.5384615385vw;
        margin-top: -.7692307692vw;
        left: 6.1538461538vw
    }
}

.btn:before {
    transition: transform .4s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity .4s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.btn.white:before {
    background: #fff
}

.btn:hover:before {
    -ms-transform: scale(20);
    transform: scale(20)
}

.btn_link:hover:before {
    -ms-transform: scale(80);
    transform: scale(80)
}

.btn_link:hover:before {
    -ms-transform: scale(80);
    transform: scale(80)
}

.short .btn_link:hover:before {
    -ms-transform: scale(60);
    transform: scale(60)
}

.medium .btn_link:hover:before {
    -ms-transform: scale(82);
    transform: scale(82)
}

.long .btn_link:hover:before {
    -ms-transform: scale(108);
    transform: scale(108)
}

.btn:hover:before {
    opacity: 0
}

.btn_round {
    position: relative;
    margin: 0 auto;
    width: 320px;
    height: 72px
}

@media screen and (min-width: 769px) {
    .btn_round {
        width: 16.6666666667vw;
        height: 3.75vw
    }
}

@media screen and (max-width: 768px) {
    .btn_round {
        width: 82.0512820513vw;
        height: 14.358974359vw;
        overflow: hidden
    }
}

.btn_round:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    border-radius: 50%;
    box-sizing: border-box;
    background: #fff;
    opacity: .2;
    -ms-transform: scale(0);
    transform: scale(0);
    width: 320px;
    height: 320px;
    margin-top: -160px;
    margin-left: -160px
}

@media screen and (min-width: 769px) {
    .btn_round:before {
        width: 16.6666666667vw;
        height: 16.6666666667vw;
        margin-top: -8.3333333333vw;
        margin-left: -8.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .btn_round:before {
        content: none
    }
}

@media screen and (min-width: 769px) {
    .btn_round:hover:before {
        opacity: 0;
        -ms-transform: scale(1);
        transform: scale(1);
        transition: transform .6s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity .6s cubic-bezier(0.25, 0.46, 0.45, 0.94)
    }
}

.btn_round_link {
    width: 100%;
    height: 100%;
    background: #74748f;
    color: #fff;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    z-index: 0;
    overflow: hidden;
    box-sizing: border-box;
    transition: background-color .6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    padding: 16px 64px;
    border-radius: 36px
}

@media screen and (min-width: 769px) {
    .btn_round_link {
        padding: 0.8333333333vw 3.3333333333vw;
        border-radius: 1.875vw
    }
}

@media screen and (max-width: 768px) {
    .btn_round_link {
        width: 100%;
        box-sizing: border-box;
        border-radius: 9.2307692308vw;
        -ms-flex-flow: column;
        flex-flow: column;
        padding: 4.1025641026vw
    }
}

.btn_round_link_txt {
    font-weight: bold;
    position: relative;
    z-index: 0;
    color: #fff;
    font-size: 1.6rem;
    line-height: 24px
}

.navy .btn_round_link .btn_round_link_txt {
    color: #74748f;
}

@media screen and (min-width: 769px) {
    .btn_round_link_txt {
        font-size: 0.8333333333vw;
        line-height: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .btn_round_link_txt {
        font-size: 3.8461538462vw;
        line-height: 6.1538461538vw
    }
}

.btn_round_link:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    border-radius: 50%;
    box-sizing: border-box;
    opacity: .2;
    -ms-transform: scale(0);
    transform: scale(0);
    width: 320px;
    height: 320px;
    margin-top: -160px;
    margin-left: -160px
}

@media screen and (min-width: 769px) {
    .btn_round_link:before {
        width: 16.6666666667vw;
        height: 16.6666666667vw;
        margin-top: -8.3333333333vw;
        margin-left: -8.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .btn_round_link:before {
        content: none
    }
}

@media screen and (min-width: 769px) {
    .btn_round_link:hover:before {
        transition: transform .6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        -ms-transform: scale(1);
        transform: scale(1)
    }

    .btn_round_link:hover,
    .btn_round_link:before {
        background-color: #8b8baa
    }
}

.navy .btn_round_link {
    background: #fff;
}

.navy .btn_round_link:hover,
.navy .btn_round_link:before {
    background-color: #394b58
}

.btn_circle {
    position: relative;
    width: 56px;
    height: 56px
}

@media screen and (min-width: 769px) {
    .btn_circle {
        width: 2.9166666667vw;
        height: 2.9166666667vw
    }
}

@media screen and (max-width: 768px) {
    .btn_circle {
        width: 10.2564102564vw;
        height: 10.2564102564vw
    }
}

.btn_circle:before,
.btn_circle:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 50%;
    background: #0c0e13;
    width: 4px;
    height: 4px;
    margin-top: -2px;
    margin-left: -2px
}

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

    .btn_circle:before,
    .btn_circle:after {
        width: 0.2083333333vw;
        height: 0.2083333333vw;
        margin-top: -0.1041666667vw;
        margin-left: -0.1041666667vw
    }
}

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

    .btn_circle:before,
    .btn_circle:after {
        width: 1.0256410256vw;
        height: 1.0256410256vw;
        margin-top: -.5128205128vw;
        margin-left: -.5128205128vw
    }
}

.btn_circle_wrap:hover .ico_circle {
    -ms-transform: scale(1.066);
    transform: scale(1.066)
}

.btn_circle_wrap:hover .ico_circle circle {
    opacity: 1;
    stroke: #3d3f48;
    stroke-dashoffset: 760;
    stroke-width: 1px
}

@media screen and (max-width: 768px) {
    .btn_circle_wrap:hover .ico_circle circle {
        stroke-dashoffset: 389.7435897436vw
    }
}

.btn_circle_wrap:hover .btn_circle:before {
    -ms-transform: scale(20);
    transform: scale(20);
    opacity: 0;
    transition: transform .5s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity .5s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.btn_circle .ico_circle {
    width: 100%;
    height: 100%;
    transition: transform .6s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.btn_circle .ico_circle circle {
    transition: opacity .6s cubic-bezier(0.25, 0.46, 0.45, 0.94), stroke-dashoffset .6s cubic-bezier(0.25, 0.46, 0.45, 0.94), stroke .6s cubic-bezier(0.25, 0.46, 0.45, 0.94), stroke-width .6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    stroke-dashoffset: 0;
    stroke-dasharray: 380;
    opacity: 1;
    stroke: #e4e4e9;
    stroke-width: 2px
}

.btn_wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center
}

.mail {
    background: #fff;
    width: 400px;
    height: 112px
}

@media screen and (min-width: 769px) {
    .mail {
        width: 20.8333333333vw;
        height: 5.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .mail {
        width: 164.1025641026vw;
        height: 28.7179487179vw
    }
}

.mail_link {
    color: #141c46
}

.mail_link .btn_link_txt {
    animation: TEXT-MASK-OVER .3s cubic-bezier(0.23, 1, 0.32, 1) 0s forwards;
    background-color: rgba(0, 0, 0, 0);
    background-image: linear-gradient(to right, #141C46 50%, #ffffff 0);
    background-position: 200% 0;
    background-size: 200% 100%;
    -webkit-text-fill-color: rgba(0, 0, 0, 0);
    -webkit-background-clip: text
}

.mail_link:hover .btn_link_txt {
    animation: TEXT-MASK .3s cubic-bezier(0.23, 1, 0.32, 1) .1s forwards
}

.mail_link .ico_mail {
    width: 48px;
    height: 48px;
    margin-right: 8px
}

@media screen and (min-width: 769px) {
    .mail_link .ico_mail {
        width: 2.5vw;
        height: 2.5vw;
        margin-right: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .mail_link .ico_mail {
        width: 10.2564102564vw;
        height: 10.2564102564vw;
        margin-right: 2.0512820513vw
    }
}

.mail_link .ico_mail path {
    fill: #141c46;
    transition: fill .6s cubic-bezier(0.32, 0.95, 0.6, 1) .01s
}

.mail_link:hover .ico_mail path {
    fill: #fff
}

.mail_link_txt {
    font-size: 3.2rem;
    line-height: 48px
}

@media screen and (min-width: 769px) {
    .mail_link_txt {
        font-size: 1.6666666667vw;
        line-height: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .mail_link_txt {
        font-size: 8.2051282051vw;
        line-height: 12.3076923077vw
    }
}

.mail_link_txt_way {
    font-weight: inherit
}

.mail_link:after {
    background: #141c46
}

.studio .mail_link:after {
    background: #74748f
}

.academy .mail_link:after {
    background: #74748f
}

.sns_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center
}

.sns_list_item {
    width: 40px;
    height: 40px;
    margin-right: 32px
}

@media screen and (min-width: 769px) {
    .sns_list_item {
        width: 2.0833333333vw;
        height: 2.0833333333vw;
        margin-right: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .sns_list_item {
        width: 10.2564102564vw;
        height: 10.2564102564vw;
        margin-right: 8.2051282051vw
    }
}

.sns_list_item:last-child {
    margin-right: 0
}

.sns_list_item_link {
    display: block;
    width: 100%;
    height: 100%
}

.figure_circle {
    border-radius: 50%;
    overflow: hidden;
    width: 560px;
    height: 560px
}

@media screen and (min-width: 769px) {
    .figure_circle {
        width: 29.1666666667vw;
        height: 29.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .figure_circle {
        width: 82.0512820513vw;
        height: 82.0512820513vw
    }
}

.box_card {
    display: block;
    box-sizing: border-box;
    width: 336px;
    margin: 0px 24px 40px 0px
}

@media screen and (min-width: 769px) {
    .box_card {
        width: 17.5vw;
        margin: 0vw 1.25vw 2.0833333333vw 0vw
    }
}

@media screen and (max-width: 768px) {
    .box_card {
        width: 67.6923076923vw;
        margin: 0vw 6.1538461538vw 8.2051282051vw 0vw
    }
}

.box_card_meta {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.box_card_meta .time {
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-size: 1.6rem;
    line-height: 24px;
    margin-right: 24px
}

@media screen and (min-width: 769px) {
    .box_card_meta .time {
        font-size: 0.8333333333vw;
        line-height: 1.25vw;
        margin-right: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .box_card_meta .time {
        font-size: 3.5897435897vw;
        line-height: 4.1025641026vw;
        margin-right: 4.1025641026vw
    }
}

.box_card_meta .tag {
    font-size: 1.6rem;
    line-height: 24px
}

@media screen and (min-width: 769px) {
    .box_card_meta .tag {
        font-size: 0.8333333333vw;
        line-height: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .box_card_meta .tag {
        font-size: 3.5897435897vw;
        line-height: 4.1025641026vw
    }
}

.box_card_data {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
    flex-flow: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    box-sizing: border-box
}

.box_card_desc {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
    flex-flow: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    position: relative;
    -ms-flex-order: -1;
    order: -1;
    margin-bottom: 24px;
    height: 48px
}

@media screen and (min-width: 769px) {
    .box_card_desc {
        margin-bottom: 1.25vw;
        height: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .box_card_desc {
        margin-bottom: 4.1025641026vw;
        height: auto
    }
}

.box_card_desc_ttl {
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 24px
}

@media screen and (min-width: 769px) {
    .box_card_desc_ttl {
        font-size: 0.8333333333vw;
        line-height: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .box_card_desc_ttl {
        font-size: 3.8461538462vw;
        line-height: 6.1538461538vw
    }
}

.box_card_thumb {
    -ms-flex-order: -1;
    order: -1;
    overflow: hidden;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    width: 336px;
    height: 336px;
    margin-bottom: 24px
}

@media screen and (min-width: 769px) {
    .box_card_thumb {
        width: 17.5vw;
        height: 17.5vw;
        margin-bottom: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .box_card_thumb {
        width: 67.6923076923vw;
        height: auto;
        margin-bottom: 4.1025641026vw
    }
}

.box_card_thumb_img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform .6s cubic-bezier(0.32, 0.95, 0.6, 1)
}

.box_card .btn {
    height: 40px;
    margin: 20px 0px 0px
}

@media screen and (min-width: 769px) {
    .box_card .btn {
        height: 2.0833333333vw;
        margin: 1.0416666667vw 0vw 0vw
    }
}

@media screen and (max-width: 768px) {
    .box_card .btn {
        width: 100%;
        height: 10.2564102564vw;
        margin: 5.1282051282vw 0vw 0vw
    }
}

.box_card .btn_link {
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0px 16px
}

@media screen and (min-width: 769px) {
    .box_card .btn_link {
        padding: 0vw 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .box_card .btn_link {
        padding: 0vw 4.1025641026vw
    }
}

.box_card .btn_link_txt {
    font-size: 1.3rem;
    line-height: 22px
}

@media screen and (min-width: 769px) {
    .box_card .btn_link_txt {
        font-size: 0.6770833333vw;
        line-height: 1.1458333333vw
    }
}

@media screen and (max-width: 768px) {
    .box_card .btn_link_txt {
        font-size: 3.3333333333vw;
        line-height: 5.641025641vw
    }
}

.box_card .btn_link_txt:before,
.box_card .btn_link_txt:after {
    right: 12px
}

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

    .box_card .btn_link_txt:before,
    .box_card .btn_link_txt:after {
        right: 0.625vw
    }
}

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

    .box_card .btn_link_txt:before,
    .box_card .btn_link_txt:after {
        right: 3.0769230769vw
    }
}

.box_card_link {
    height: 100%;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
    flex-flow: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    transition: filter .6s cubic-bezier(0.32, 0.95, 0.6, 1);
    width: 336px
}

@media screen and (min-width: 769px) {
    .box_card_link {
        width: 17.5vw
    }
}

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

.box_card_link:hover .box_card_thumb_img {
    -ms-transform: scale(1.1);
    transform: scale(1.1)
}

.headline {
    margin-bottom: 100px
}

@media screen and (min-width: 769px) {
    .headline {
        margin-bottom: 5.2083333333vw
    }
}

@media screen and (max-width: 768px) {
    .headline {
        margin-bottom: 7.1794871795vw
    }
}

.headline_jp {
    color: #0c0e13;
    font-weight: 300;
    position: relative;
    font-size: 1.8rem;
    line-height: 18px;
    padding-left: 28px;
    margin-bottom: 24px
}

@media screen and (min-width: 769px) {
    .headline_jp {
        font-size: 0.9375vw;
        line-height: 0.9375vw;
        padding-left: 1.4583333333vw;
        margin-bottom: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .headline_jp {
        font-size: 3.0769230769vw;
        line-height: 4.1025641026vw;
        padding-left: 4.1025641026vw;
        margin-bottom: 4.1025641026vw
    }
}

.headline_jp:before {
    content: "";
    border-radius: 50%;
    background: #74748f;
    position: absolute;
    left: 0;
    width: 12px;
    height: 12px;
    top: 4px
}

@media screen and (min-width: 769px) {
    .headline_jp:before {
        width: 0.625vw;
        height: 0.625vw;
        top: 0.2083333333vw
    }
}

@media screen and (max-width: 768px) {
    .headline_jp:before {
        width: 2.0512820513vw;
        height: 2.0512820513vw;
        top: 1.0256410256vw
    }
}

.headline_en {
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    color: #74748f;
    font-size: 8rem;
    line-height: 80px
}

@media screen and (min-width: 769px) {
    .headline_en {
        font-size: 4.1666666667vw;
        line-height: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .headline_en {
        font-size: 9.2307692308vw;
        line-height: 8.2051282051vw
    }
}

.headline_en ._txt {
    padding-bottom: 20px
}

@media screen and (min-width: 769px) {
    .headline_en ._txt {
        padding-bottom: 1.0416666667vw
    }
}

@media screen and (max-width: 768px) {
    .headline_en ._txt {
        padding-bottom: 5.1282051282vw
    }
}

.sec_ttl {
    width: 100%;
    text-align: center;
    font-weight: 500;
    font-size: 3.6rem;
    line-height: 56px;
    margin-bottom: 80px
}

@media screen and (min-width: 769px) {
    .sec_ttl {
        font-size: 1.875vw;
        line-height: 2.9166666667vw;
        margin-bottom: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .sec_ttl {
        font-size: 5.641025641vw;
        line-height: 10.2564102564vw;
        margin-bottom: 8.2051282051vw
    }
}

.sec_ttl_sub {
    width: 100%;
    text-align: center;
    font-weight: 500;
    font-size: 3.2rem;
    line-height: 48px;
    margin-bottom: 40px
}

@media screen and (min-width: 769px) {
    .sec_ttl_sub {
        font-size: 1.6666666667vw;
        line-height: 2.5vw;
        margin-bottom: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .sec_ttl_sub {
        font-size: 5.1282051282vw;
        line-height: 8.2051282051vw;
        margin-bottom: 4.1025641026vw
    }
}

.sec_ttl_en {
    color: #fff;
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    white-space: nowrap;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    font-size: 40rem;
    line-height: 400px
}

@media screen and (min-width: 769px) {
    .sec_ttl_en {
        font-size: 20.8333333333vw;
        line-height: 20.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .sec_ttl_en {
        font-size: 24.6153846154vw;
        line-height: 24.6153846154vw;
        left: 0
    }
}

.ttl_basic,
.contents_intro h2,
.contents h2,
body.wp-editor h2 {
    width: 100%;
    position: relative;
    letter-spacing: 0;
    font-weight: 500;
    font-size: 3.6rem;
    line-height: 56px;
    margin-top: 80px;
    margin-bottom: 48px;
    padding-top: 32px
}

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

    .ttl_basic,
    .contents_intro h2,
    .contents h2,
    body.wp-editor h2 {
        font-size: 1.875vw;
        line-height: 2.9166666667vw;
        margin-top: 4.1666666667vw;
        margin-bottom: 2.5vw;
        padding-top: 1.6666666667vw
    }
}

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

    .ttl_basic,
    .contents_intro h2,
    .contents h2,
    body.wp-editor h2 {
        font-size: 5.641025641vw;
        line-height: 10.2564102564vw;
        margin-top: 14.358974359vw;
        margin-bottom: 8.2051282051vw;
        padding-top: 6.1538461538vw
    }
}

.ttl_basic:before,
.contents_intro h2:before,
.contents h2:before,
body.wp-editor h2:before,
.ttl_basic:after,
.contents_intro h2:after,
.contents h2:after,
body.wp-editor h2:after {
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    top: 0;
    left: 0
}

.ttl_basic:before,
.contents_intro h2:before,
.contents h2:before,
body.wp-editor h2:before {
    width: 100%;
    background: #e4e4e9
}

.ttl_basic:after,
.contents_intro h2:after,
.contents h2:after,
body.wp-editor h2:after {
    background: #74748f;
    width: 96px
}

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

    .ttl_basic:after,
    .contents_intro h2:after,
    .contents h2:after,
    body.wp-editor h2:after {
        width: 5vw
    }
}

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

    .ttl_basic:after,
    .contents_intro h2:after,
    .contents h2:after,
    body.wp-editor h2:after {
        width: 16.4102564103vw
    }
}

.ttl_underline {
    width: 100%;
    position: relative;
    letter-spacing: 0;
    border-bottom: 1px solid #e4e4e9;
    font-size: 2.8rem;
    line-height: 44px;
    padding-bottom: 32px;
    margin-top: 80px;
    margin-bottom: 48px
}

@media screen and (min-width: 769px) {
    .ttl_underline {
        font-size: 1.4583333333vw;
        line-height: 2.2916666667vw;
        padding-bottom: 1.6666666667vw;
        margin-top: 4.1666666667vw;
        margin-bottom: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .ttl_underline {
        font-size: 6.1538461538vw;
        line-height: 9.2307692308vw;
        padding-bottom: 8.2051282051vw;
        margin-top: 16.4102564103vw;
        margin-bottom: 12.3076923077vw
    }
}

.ttl_frame,
.contents h3,
body.wp-editor h3 {
    width: 100%;
    position: relative;
    box-sizing: border-box;
    letter-spacing: 0;
    font-weight: 500;
    font-size: 3.2rem;
    line-height: 48px;
    margin-top: 80px;
    margin-bottom: 48px
}

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

    .ttl_frame,
    .contents h3,
    body.wp-editor h3 {
        font-size: 1.6666666667vw;
        line-height: 2.5vw;
        margin-top: 4.1666666667vw;
        margin-bottom: 2.5vw
    }
}

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

    .ttl_frame,
    .contents h3,
    body.wp-editor h3 {
        font-size: 5.1282051282vw;
        line-height: 8.2051282051vw;
        margin-top: 16.4102564103vw;
        margin-bottom: 8.2051282051vw
    }
}

.ttl_beta,
.contents h4,
body.wp-editor h4 {
    width: 100%;
    position: relative;
    box-sizing: border-box;
    letter-spacing: 0;
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 40px;
    margin-top: 64px;
    margin-bottom: 32px
}

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

    .ttl_beta,
    .contents h4,
    body.wp-editor h4 {
        font-size: 1.25vw;
        line-height: 2.0833333333vw;
        margin-top: 3.3333333333vw;
        margin-bottom: 1.6666666667vw
    }
}

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

    .ttl_beta,
    .contents h4,
    body.wp-editor h4 {
        font-size: 4.6153846154vw;
        line-height: 7.1794871795vw;
        margin-top: 16.4102564103vw;
        margin-bottom: 8.2051282051vw
    }
}

.ttl_bar,
.contents h5,
body.wp-editor h5 {
    position: relative;
    letter-spacing: 0;
    font-weight: 500;
    font-size: 2rem;
    line-height: 32px;
    margin-top: 64px;
    margin-bottom: 32px
}

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

    .ttl_bar,
    .contents h5,
    body.wp-editor h5 {
        font-size: 1.0416666667vw;
        line-height: 1.6666666667vw;
        margin-top: 3.3333333333vw;
        margin-bottom: 1.6666666667vw
    }
}

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

    .ttl_bar,
    .contents h5,
    body.wp-editor h5 {
        font-size: 4.1025641026vw;
        line-height: 6.1538461538vw;
        margin-top: 16.4102564103vw;
        margin-bottom: 8.2051282051vw
    }
}

.ttl_bold,
.contents h6,
body.wp-editor h6 {
    width: 100%;
    position: relative;
    letter-spacing: 0;
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 24px;
    margin-top: 64px;
    margin-bottom: 32px
}

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

    .ttl_bold,
    .contents h6,
    body.wp-editor h6 {
        font-size: 0.9375vw;
        line-height: 1.25vw;
        margin-top: 3.3333333333vw;
        margin-bottom: 1.6666666667vw
    }
}

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

    .ttl_bold,
    .contents h6,
    body.wp-editor h6 {
        font-size: 3.8461538462vw;
        line-height: 5.1282051282vw;
        margin-top: 16.4102564103vw;
        margin-bottom: 8.2051282051vw
    }
}

.ttl_sec {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-flow: column;
    flex-flow: column;
    margin: 0 auto;
    max-width: 1200px;
    margin-bottom: 64px
}

@media screen and (min-width: 769px) {
    .ttl_sec {
        max-width: 62.5vw;
        margin-bottom: 3.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .ttl_sec {
        width: 100%;
        max-width: 100%;
        margin: 0 auto 6.1538461538vw
    }
}

.ttl_sec_ja {
    letter-spacing: 0;
    font-weight: 500;
    font-family: "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    color: #74748f;
    font-size: 1.8rem;
    line-height: 32px;
    margin-bottom: 28px
}

@media screen and (min-width: 769px) {
    .ttl_sec_ja {
        font-size: 0.9375vw;
        line-height: 1.6666666667vw;
        margin-bottom: 1.4583333333vw
    }
}

@media screen and (max-width: 768px) {
    .ttl_sec_ja {
        font-size: 3.5897435897vw;
        line-height: 6.1538461538vw;
        margin-bottom: 4.1025641026vw
    }
}

.ttl_sec_en {
    letter-spacing: 0;
    font-weight: 500;
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    color: #74748f;
    font-size: 1.8rem;
    line-height: 18px;
    margin-bottom: 24px
}

@media screen and (min-width: 769px) {
    .ttl_sec_en {
        font-size: 0.9375vw;
        line-height: 0.9375vw;
        margin-bottom: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .ttl_sec_en {
        font-size: 3.5897435897vw;
        line-height: 3.5897435897vw;
        margin-bottom: 4.1025641026vw
    }
}

.ttl_sec_headline,
.content_headline {
    letter-spacing: 0;
    font-weight: 400;
    font-family: "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-size: 4.8rem;
    line-height: 72px
}

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

    .ttl_sec_headline,
    .content_headline {
        font-size: 2.5vw;
        line-height: 3.75vw
    }
}

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

    .ttl_sec_headline,
    .content_headline {
        font-size: 7.1794871795vw;
        line-height: 10.2564102564vw
    }
}

.ttl_sec_sub_ja {
    letter-spacing: 0;
    font-weight: 500;
    font-family: "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    color: #74748f;
    font-size: 1.6rem;
    line-height: 29px;
    margin-bottom: 25px
}

@media screen and (min-width: 769px) {
    .ttl_sec_sub_ja {
        font-size: 0.8333333333vw;
        line-height: 1.5104166667vw;
        margin-bottom: 1.3020833333vw
    }
}

@media screen and (max-width: 768px) {
    .ttl_sec_sub_ja {
        font-size: 3.5897435897vw;
        line-height: 6.1538461538vw;
        margin-bottom: 4.1025641026vw
    }
}

.ttl_sec_sub_en {
    letter-spacing: 0;
    font-weight: 500;
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    color: #74748f;
    font-size: 1.6rem;
    line-height: 16px;
    margin-bottom: 24px
}

@media screen and (min-width: 769px) {
    .ttl_sec_sub_en {
        font-size: 0.8333333333vw;
        line-height: 0.8333333333vw;
        margin-bottom: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .ttl_sec_sub_en {
        font-size: 3.5897435897vw;
        line-height: 3.5897435897vw;
        margin-bottom: 4.1025641026vw
    }
}

.ttl_sec_sub_headline {
    letter-spacing: 0;
    font-weight: 400;
    font-family: "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-size: 4rem;
    line-height: 56px
}

@media screen and (min-width: 769px) {
    .ttl_sec_sub_headline {
        font-size: 2.0833333333vw;
        line-height: 2.9166666667vw
    }
}

@media screen and (max-width: 768px) {
    .ttl_sec_sub_headline {
        font-size: 6.1538461538vw;
        line-height: 8.2051282051vw
    }
}

.ttl_sec_wen {
    -ms-flex-order: -1;
    order: -1;
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    position: relative;
    color: #e4e4e9;
    white-space: nowrap;
    letter-spacing: 0;
    font-size: 16rem;
    line-height: 160px;
    margin-bottom: 16px
}

@media screen and (min-width: 769px) {
    .ttl_sec_wen {
        font-size: 8.3333333333vw;
        line-height: 8.3333333333vw;
        margin-bottom: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .ttl_sec_wen {
        font-size: 14.358974359vw;
        line-height: 14.358974359vw;
        margin-bottom: 4.1025641026vw;
        padding-left: 0
    }
}

.content_headline {
    margin-bottom: 64px
}

@media screen and (min-width: 769px) {
    .content_headline {
        margin-bottom: 3.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .content_headline {
        margin-bottom: 8.2051282051vw
    }
}

.ttl_ico,
.ttl_logo,
.ttl_reccomend {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-left: 24px;
    margin-bottom: 24px
}

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

    .ttl_ico,
    .ttl_logo,
    .ttl_reccomend {
        padding-left: 1.25vw;
        margin-bottom: 1.25vw
    }
}

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

    .ttl_ico,
    .ttl_logo,
    .ttl_reccomend {
        padding-left: 0;
        margin-bottom: 6.1538461538vw
    }
}

.ttl_ico_txt,
.ttl_logo_txt,
.ttl_reccomend_txt {
    font-weight: bold;
    letter-spacing: 0;
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-size: 2.4rem;
    line-height: 40px
}

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

    .ttl_ico_txt,
    .ttl_logo_txt,
    .ttl_reccomend_txt {
        font-size: 1.25vw;
        line-height: 2.0833333333vw
    }
}

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

    .ttl_ico_txt,
    .ttl_logo_txt,
    .ttl_reccomend_txt {
        width: 78.7179487179vw;
        font-size: 4.6153846154vw;
        line-height: 6.1538461538vw
    }
}

.ttl_ico_img,
.ttl_logo_img,
.ttl_reccomend_img {
    -ms-flex-order: -1;
    order: -1;
    margin-right: 8px
}

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

    .ttl_ico_img,
    .ttl_logo_img,
    .ttl_reccomend_img {
        margin-right: 0.4166666667vw
    }
}

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

    .ttl_ico_img,
    .ttl_logo_img,
    .ttl_reccomend_img {
        margin-right: 2.0512820513vw
    }
}

.ttl_ico_img svg,
.ttl_logo_img svg,
.ttl_reccomend_img svg {
    display: block
}

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

    .ttl_ico_img svg,
    .ttl_logo_img svg,
    .ttl_reccomend_img svg {
        width: 5.1282051282vw;
        height: 5.1282051282vw
    }
}

.ttl_ico_img svg path,
.ttl_logo_img svg path,
.ttl_reccomend_img svg path {
    fill: #74748f
}

.studio .ttl_ico_img svg path,
.studio .ttl_logo_img svg path,
.studio .ttl_reccomend_img svg path {
    fill: #74748f
}

.academy .ttl_ico_img svg path,
.academy .ttl_logo_img svg path,
.academy .ttl_reccomend_img svg path {
    fill: #74748f
}

.ttl {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-flow: column;
    flex-flow: column;
    margin: 0 auto;
    width: 100%;
    position: relative;
    z-index: 0;
    margin-bottom: 64px;
    padding: 104px 0px
}

@media screen and (min-width: 769px) {
    .ttl {
        margin-bottom: 3.3333333333vw;
        padding: 5.4166666667vw 0vw
    }
}

@media screen and (max-width: 768px) {
    .ttl {
        margin-bottom: 12.3076923077vw;
        padding: 8.2051282051vw 0vw
    }
}

.ttl_ja {
    font-weight: 400;
    letter-spacing: .1em;
    position: relative;
    z-index: 1;
    font-size: 2.4rem;
    line-height: 32px
}

@media screen and (min-width: 769px) {
    .ttl_ja {
        font-size: 1.25vw;
        line-height: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .ttl_ja {
        font-size: 5.1282051282vw;
        line-height: 8.2051282051vw
    }
}

.ttl_en {
    -ms-flex-order: -1;
    order: -1;
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-weight: 400;
    position: absolute;
    letter-spacing: .1em;
    color: #74748f;
    top: 0;
    z-index: 0;
    white-space: nowrap;
    font-size: 24rem;
    line-height: 240px
}

@media screen and (min-width: 769px) {
    .ttl_en {
        font-size: 12.5vw;
        line-height: 12.5vw
    }
}

@media screen and (max-width: 768px) {
    .ttl_en {
        font-size: 24.6153846154vw;
        line-height: 24.6153846154vw;
        letter-spacing: 0
    }
}

.ttl_frame:first-child,
.contents h3:first-child,
body.wp-editor h3:first-child,
.ttl_underline:first-child,
.ttl_beta:first-child,
.contents h4:first-child,
body.wp-editor h4:first-child,
.ttl_bar:first-child,
.contents h5:first-child,
body.wp-editor h5:first-child,
.ttl_bold:first-child,
.contents h6:first-child,
body.wp-editor h6:first-child,
.ttl_sec:first-child {
    margin-top: 0
}

.transition_figure {
    opacity: 0;
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center
}

.breadcrumb {
    width: 100%;
    box-sizing: border-box;
    margin-top: 44px
}

@media screen and (min-width: 769px) {
    .breadcrumb {
        margin-top: 2.2916666667vw
    }
}

@media screen and (max-width: 768px) {
    .breadcrumb {
        margin-top: 0;
        -ms-flex-order: -1;
        order: -1
    }
}

.breadcrumb_list {
    width: 100%;
    box-sizing: border-box;
    margin: 0 auto;
    line-height: 1;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.breadcrumb_list_item {
    position: relative;
    color: #0c0e13
}

.breadcrumb_list_item:not(:last-child) {
    margin-right: 96px
}

@media screen and (min-width: 769px) {
    .breadcrumb_list_item:not(:last-child) {
        margin-right: 5vw
    }
}

@media screen and (max-width: 768px) {
    .breadcrumb_list_item:not(:last-child) {
        margin-right: 10.2564102564vw
    }
}

.breadcrumb_list_item:not(:last-child):after {
    content: "";
    background: #e4e4e9;
    position: absolute;
    display: block;
    top: 50%;
    width: 64px;
    height: 1px;
    right: -80px
}

@media screen and (min-width: 769px) {
    .breadcrumb_list_item:not(:last-child):after {
        width: 3.3333333333vw;
        height: 0.0520833333vw;
        right: -4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .breadcrumb_list_item:not(:last-child):after {
        width: 6.1538461538vw;
        height: .2564102564vw;
        right: -8.2051282051vw
    }
}

.breadcrumb_list_item_link {
    color: #7a8192;
    position: relative
}

.breadcrumb_list_item_txt {
    color: inherit;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    display: block;
    max-width: 400px;
    font-size: 1.6rem;
    line-height: 20px
}

@media screen and (min-width: 769px) {
    .breadcrumb_list_item_txt {
        max-width: 20.8333333333vw;
        font-size: 0.8333333333vw;
        line-height: 1.0416666667vw
    }
}

@media screen and (max-width: 768px) {
    .breadcrumb_list_item_txt {
        max-width: 30.7692307692vw;
        font-size: 2.5641025641vw;
        line-height: 3.0769230769vw
    }
}

.pager {
    width: 100%;
    box-sizing: border-box
}

.pager_list {
    width: 100%;
    position: relative;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto;
    margin-top: 96px
}

@media screen and (min-width: 769px) {
    .pager_list {
        margin-top: 5vw
    }
}

@media screen and (max-width: 768px) {
    .pager_list {
        margin-top: 14.358974359vw
    }
}

.pager_list_num>a.page-num {
    width: 48px;
    height: 48px;
    margin: 0px 4px;
    line-height: 2.2564102564vw;
}

@media screen and (min-width: 769px) {
    .pager_list_num>a.page-num {
        width: 2.5vw;
        height: 2.5vw;
        margin: 0vw 0.2083333333vw
    }
}

@media screen and (max-width: 768px) {
    .pager_list_num>a.page-num {
        width: 10.2564102564vw;
        height: 10.2564102564vw;
        margin: 2.0512820513vw 1.0256410256vw 0vw;
        line-height: 10.2564102564vw !important;
    }
}

.pager_list_num span,
.pager_list_num a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    box-sizing: border-box;
    color: #0c0e13;
    transition: color .4s cubic-bezier(0.23, 1, 0.32, 1);
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    letter-spacing: 0;
    position: relative;
    overflow: hidden;
    z-index: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    font-size: 1.6rem;
    line-height: 24px
}

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

    .pager_list_num span,
    .pager_list_num a {
        font-size: 0.8333333333vw;
        line-height: 1.25vw
    }
}

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

    .pager_list_num span,
    .pager_list_num a {
        font-size: 3.5897435897vw;
        line-height: 3.5897435897vw
    }
}

.pager_list_num span:before,
.pager_list_num a:before {
    content: "";
    width: 0;
    height: 0;
    background: #fff;
    position: absolute;
    bottom: 50%;
    left: 50%;
    transition: width .4s cubic-bezier(0.23, 1, 0.32, 1), height .4s cubic-bezier(0.23, 1, 0.32, 1), bottom .4s cubic-bezier(0.23, 1, 0.32, 1), left .4s cubic-bezier(0.23, 1, 0.32, 1), background .4s cubic-bezier(0.23, 1, 0.32, 1);
    z-index: -1;
    border-radius: 50%
}

.pager_list_num a:hover {
    color: #fff
}

.pager_list_num a:hover:before {
    width: 100%;
    height: 100%;
    left: 0;
    bottom: 0;
    background: #74748f
}

.pager_list_num .current,
.pager_list_num>a.page-num-current {
    color: #fff;
    background: #74748f
}

.pager_list_num>a.page-num-current {
    display: inline-block;
    text-align: center;
    line-height: 2.5vw;
}

.pager_list_num>a.page-num {
    display: inline-block;
    text-align: center;
    line-height: 2.5vw;
}

.pager_list_num .current:before {
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    left: 0;
    bottom: 0;
    background: none;
    border-radius: 40px
}

@media screen and (min-width: 769px) {
    .pager_list_num .current:before {
        border-radius: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .pager_list_num .current:before {
        border-radius: 10.2564102564vw
    }
}

.pager_list_num:first-child {
    margin-left: 0
}

.pager_list_num:last-child {
    margin-right: 0
}

.pagenation {
    width: 100%;
    margin: 0 auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 680px;
    padding: 96px 0px 0px
}

@media screen and (min-width: 769px) {
    .pagenation {
        max-width: 35.4166666667vw;
        padding: 5vw 0vw 0vw
    }
}

@media screen and (max-width: 768px) {
    .pagenation {
        width: 100%;
        max-width: 100%;
        position: relative;
        padding: 16.4102564103vw 0vw 0vw;
        -ms-flex-pack: center;
        justify-content: center
    }
}

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

    .pagenation .prev,
    .pagenation .next {
        position: absolute;
        top: 16.4102564103vw;
        margin-top: 0
    }

    .pagenation .prev {
        left: 6.1538461538vw
    }

    .pagenation .next {
        right: 6.1538461538vw
    }

    .pagenation .list {
        margin: 0 auto;
        top: 18.4615384615vw
    }
}

.pagenation .prev,
.pagenation .next,
.pager .prev,
.pager .next {
    width: 120px;
    height: 56px
}

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

    .pagenation .prev,
    .pagenation .next,
    .pager .prev,
    .pager .next {
        width: 6.25vw;
        height: 2.9166666667vw
    }
}

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

    .pagenation .prev,
    .pagenation .next,
    .pager .prev,
    .pager .next {
        width: 10.2564102564vw;
        height: 10.2564102564vw;
        margin-top: 2.0512820513vw
    }
}

.pagenation .prev_link,
.pagenation .next_link,
.pager .prev_link,
.pager .next_link {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center
}

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

    .pagenation .prev_link,
    .pagenation .next_link,
    .pager .prev_link,
    .pager .next_link {
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
        display: block;
        width: 100%;
        height: 100%
    }
}

.pagenation .prev_link_txt,
.pagenation .next_link_txt,
.pager .prev_link_txt,
.pager .next_link_txt {
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    letter-spacing: .1em;
    font-size: 1.4rem;
    line-height: 20px
}

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

    .pagenation .prev_link_txt,
    .pagenation .next_link_txt,
    .pager .prev_link_txt,
    .pager .next_link_txt {
        font-size: 0.7291666667vw;
        line-height: 1.0416666667vw
    }
}

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

    .pagenation .prev_link_txt,
    .pagenation .next_link_txt,
    .pager .prev_link_txt,
    .pager .next_link_txt {
        display: none
    }
}

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

    .pagenation .prev_link .btn_circle,
    .pagenation .next_link .btn_circle,
    .pager .prev_link .btn_circle,
    .pager .next_link .btn_circle {
        display: none
    }
}

.pagenation .prev,
.pager .prev {
    margin-right: 120px
}

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

    .pagenation .prev,
    .pager .prev {
        margin-right: 6.25vw
    }
}

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

    .pagenation .prev,
    .pager .prev {
        margin-right: 2.0512820513vw
    }
}

.pagenation .prev_link,
.pager .prev_link {
    -ms-flex-pack: start;
    justify-content: flex-start
}

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

    .pagenation .prev_link,
    .pager .prev_link {
        background-image: url("../image/prev.svg")
    }
}

.pagenation .prev_link_txt,
.pager .prev_link_txt {
    margin-left: 16px
}

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

    .pagenation .prev_link_txt,
    .pager .prev_link_txt {
        margin-left: 0.8333333333vw
    }
}

.pagenation .next,
.pager .next {
    margin-left: 120px
}

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

    .pagenation .next,
    .pager .next {
        margin-left: 6.25vw
    }
}

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

    .pagenation .next,
    .pager .next {
        margin-left: 2.0512820513vw
    }
}

.pagenation .next_link,
.pager .next_link {
    -ms-flex-pack: end;
    justify-content: flex-end
}

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

    .pagenation .next_link,
    .pager .next_link {
        background-image: url("../image/next.svg")
    }
}

.pagenation .next_link_txt,
.pager .next_link_txt {
    margin-right: 16px
}

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

    .pagenation .next_link_txt,
    .pager .next_link_txt {
        margin-right: 0.8333333333vw
    }
}

.sec,
.contents_wrap,
.lo_sec,
.lo_half_figure_right_inner,
.lo_half_figure_left_inner {
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
    margin-bottom: 264px
}

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

    .sec,
    .contents_wrap,
    .lo_sec,
    .lo_half_figure_right_inner,
    .lo_half_figure_left_inner {
        margin-bottom: 13.75vw
    }
}

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

    .sec,
    .contents_wrap,
    .lo_sec,
    .lo_half_figure_right_inner,
    .lo_half_figure_left_inner {
        margin-bottom: 30.7692307692vw
    }
}

.sec_inner,
.lo_sec_inner {
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
    max-width: 1280px;
    padding: 0px 40px
}

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

    .sec_inner,
    .lo_sec_inner {
        max-width: 66.6666666667vw;
        padding: 0vw 2.0833333333vw
    }
}

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

    .sec_inner,
    .lo_sec_inner {
        max-width: 100%;
        padding: 0vw 6.1538461538vw
    }
}

.lo_half_figure_left {
    position: relative;
    z-index: 0
}

@media screen and (max-width: 768px) {
    .lo_half_figure_left {
        padding: 0;
        background: #74748f
    }
}

.lo_half_figure_left_inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start
}

@media screen and (max-width: 768px) {
    .lo_half_figure_left_inner {
        padding: 0;
        -ms-flex-flow: column;
        flex-flow: column
    }
}

.lo_half_figure_left_info {
    position: relative;
    box-sizing: border-box;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    z-index: 0;
    width: 385px;
    padding: 120px 0px;
    margin-top: 240px
}

@media screen and (min-width: 769px) {
    .lo_half_figure_left_info {
        width: 20.0520833333vw;
        padding: 6.25vw 0vw;
        margin-top: 12.5vw
    }
}

@media screen and (max-width: 1280px) {
    .lo_half_figure_left_info {
        margin-top: 0
    }
}

@media screen and (max-width: 768px) {
    .lo_half_figure_left_info {
        width: 100%;
        padding: 10.7692307692vw 5.1282051282vw 16.4102564103vw;
        margin-top: 0
    }
}

.lo_half_figure_left_info:before {
    content: "";
    width: 100vw;
    height: 100%;
    position: absolute;
    top: 0;
    background: #74748f;
    z-index: -1
}

.lo_half_figure_left_info .btn {
    width: 100%
}

.lo_half_figure_left_desc {
    font-size: 1.4rem;
    line-height: 28px
}

@media screen and (min-width: 769px) {
    .lo_half_figure_left_desc {
        font-size: 0.7291666667vw;
        line-height: 1.4583333333vw
    }
}

@media screen and (max-width: 768px) {
    .lo_half_figure_left_desc {
        font-size: 3.5897435897vw;
        line-height: 7.1794871795vw
    }
}

.lo_half_figure_left_desc:before {
    content: "";
    width: 100%
}

.lo_half_figure_left_figure {
    position: relative;
    z-index: 1;
    width: 730px;
    height: 700px
}

@media screen and (min-width: 769px) {
    .lo_half_figure_left_figure {
        width: 38.0208333333vw;
        height: 36.4583333333vw
    }
}

@media screen and (max-width: 1280px) {
    .lo_half_figure_left_figure {
        height: 30.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .lo_half_figure_left_figure {
        width: 100%;
        height: auto;
        -ms-flex-order: -1;
        order: -1
    }
}

.lo_half_figure_left_figure_img {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 54.6875vw;
    max-width: 1050px
}

@media screen and (max-width: 1280px) {
    .lo_half_figure_left_figure_img {
        width: 45.625vw
    }
}

@media screen and (max-width: 768px) {
    .lo_half_figure_left_figure_img {
        position: relative;
        width: 100%;
        max-width: none
    }
}

.lo_half_figure_left_info {
    margin-left: 252px
}

@media screen and (min-width: 769px) {
    .lo_half_figure_left_info {
        margin-left: 13.125vw
    }
}

@media screen and (max-width: 768px) {
    .lo_half_figure_left_info {
        margin-left: 0
    }
}

.lo_half_figure_left_info:before {
    right: calc((100vw - 1200px)*-0.5)
}

@media screen and (max-width: 1280px) {
    .lo_half_figure_left_info:before {
        right: calc((100vw - 75vw)*-0.5)
    }
}

@media screen and (max-width: 768px) {
    .lo_half_figure_left_info:before {
        right: calc((100vw - 83.3333333333vw)*-0.5)
    }
}

.lo_half_figure_left_figure {
    -ms-flex-order: -1;
    order: -1
}

.lo_half_figure_left_figure_img {
    left: auto;
    right: 0
}

.lo_half_figure_right {
    position: relative;
    z-index: 0
}

@media screen and (max-width: 768px) {
    .lo_half_figure_right {
        padding: 0;
        background: #74748f
    }
}

.lo_half_figure_right_inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start
}

@media screen and (max-width: 768px) {
    .lo_half_figure_right_inner {
        padding: 0;
        -ms-flex-flow: column;
        flex-flow: column
    }
}

.lo_half_figure_right_info {
    position: relative;
    box-sizing: border-box;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    z-index: 0;
    width: 385px;
    padding: 120px 0px;
    margin-top: 240px
}

@media screen and (min-width: 769px) {
    .lo_half_figure_right_info {
        width: 20.0520833333vw;
        padding: 6.25vw 0vw;
        margin-top: 12.5vw
    }
}

@media screen and (max-width: 1280px) {
    .lo_half_figure_right_info {
        margin-top: 0
    }
}

@media screen and (max-width: 768px) {
    .lo_half_figure_right_info {
        width: 100%;
        padding: 10.7692307692vw 5.1282051282vw 16.4102564103vw;
        margin-top: 0
    }
}

.lo_half_figure_right_info:before {
    content: "";
    width: 100vw;
    height: 100%;
    position: absolute;
    top: 0;
    background: #74748f;
    z-index: -1
}

.lo_half_figure_right_info .btn {
    width: 100%
}

.lo_half_figure_right_desc {
    font-size: 1.4rem;
    line-height: 28px
}

@media screen and (min-width: 769px) {
    .lo_half_figure_right_desc {
        font-size: 0.7291666667vw;
        line-height: 1.4583333333vw
    }
}

@media screen and (max-width: 768px) {
    .lo_half_figure_right_desc {
        font-size: 3.5897435897vw;
        line-height: 7.1794871795vw
    }
}

.lo_half_figure_right_desc:before {
    content: "";
    width: 100%
}

.lo_half_figure_right_figure {
    position: relative;
    z-index: 1;
    width: 730px;
    height: 700px
}

@media screen and (min-width: 769px) {
    .lo_half_figure_right_figure {
        width: 38.0208333333vw;
        height: 36.4583333333vw
    }
}

@media screen and (max-width: 1280px) {
    .lo_half_figure_right_figure {
        height: 30.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .lo_half_figure_right_figure {
        width: 100%;
        height: auto;
        -ms-flex-order: -1;
        order: -1
    }
}

.lo_half_figure_right_figure_img {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 54.6875vw;
    max-width: 1050px
}

@media screen and (max-width: 1280px) {
    .lo_half_figure_right_figure_img {
        width: 45.625vw
    }
}

@media screen and (max-width: 768px) {
    .lo_half_figure_right_figure_img {
        position: relative;
        width: 100%;
        max-width: none
    }
}

.lo_half_figure_right_info {
    margin-right: 126px
}

@media screen and (min-width: 769px) {
    .lo_half_figure_right_info {
        margin-right: 6.5625vw
    }
}

@media screen and (max-width: 768px) {
    .lo_half_figure_right_info {
        margin-right: 0
    }
}

.lo_half_figure_right_info:before {
    left: calc((100vw - 1200px)*-0.5)
}

@media screen and (max-width: 1280px) {
    .lo_half_figure_right_info:before {
        left: calc((100vw - 75vw)*-0.5)
    }
}

@media screen and (max-width: 768px) {
    .lo_half_figure_right_info:before {
        left: calc((100vw - 83.3333333333vw)*-0.5)
    }
}

.contents_wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media screen and (max-width: 768px) {
    .contents_wrap {
        width: 100%;
        padding: 0
    }
}

.contents_main {
    width: 840px
}

@media screen and (min-width: 769px) {
    .contents_main {
        width: 43.75vw
    }
}

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

.contents_main .contents,
.contents_main body.wp-editor {
    width: 100%;
    padding: 0;
    margin: 0;
    box-sizing: border-box
}

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

    .contents_main .contents,
    .contents_main body.wp-editor {
        padding: 0vw 9.2307692308vw
    }
}

.contents_inner {
    width: 100%;
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 1280px;
    padding: 0px 40px
}

@media screen and (min-width: 769px) {
    .contents_inner {
        max-width: 66.6666666667vw;
        padding: 0vw 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .contents_inner {
        max-width: 100%;
        padding: 0vw 6.1538461538vw
    }
}

.contents_inner .contents,
.contents_inner body.wp-editor {
    width: 100%;
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    /* border-bottom: 1px solid #e4e4e9; */
    padding-bottom: 120px
}

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

    .contents_inner .contents,
    .contents_inner body.wp-editor {
        padding-bottom: 6.25vw
    }
}

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

    .contents_inner .contents,
    .contents_inner body.wp-editor {
        padding-bottom: 16.4102564103vw
    }
}

.contents_side {
    width: 282px
}

@media screen and (min-width: 769px) {
    .contents_side {
        width: 14.6875vw
    }
}

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

.contents_head {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-flow: column;
    flex-flow: column;
    border-bottom: 1px solid #e4e4e9
}

.header {
    width: 100vw;
    position: fixed;
    z-index: 101;
    transition: transform 1.2s cubic-bezier(0.32, 0.95, 0.6, 1), background-color 1.2s cubic-bezier(0.32, 0.95, 0.6, 1), border-bottom 1.2s cubic-bezier(0.32, 0.95, 0.6, 1);
    display: -ms-flexbox;
    display: flex;
    box-sizing: border-box;
    padding: 0;
    border-bottom: 1px solid #e4e4e9;
    -ms-flex-pack: end;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    padding: 32px 0px;
    background: #fff;
}

@media screen and (min-width: 769px) {
    .header {
        padding: 1.6666666667vw 0vw
    }
}

@media screen and (max-width: 768px) {
    .header {
        padding: 0;
        -ms-flex-flow: column;
        flex-flow: column;
        border-bottom: 0
    }
}

.header.negative,
.header.open {
    border-bottom-color: #fff
}

.header_logo {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    opacity: 1;
    z-index: 10;
    transition: transform 1.2s cubic-bezier(0.32, 0.95, 0.6, 1), opacity 1.2s cubic-bezier(0.32, 0.95, 0.6, 1);
    -ms-transform-origin: left center;
    transform-origin: left center;
    /* position: absolute; */
    /* top: 50%; */
    width: 218px;
    /* height: 48px; */
    left: 80px;
    padding-left: 60px;
}

@media screen and (min-width: 769px) {
    .header_logo {
        width: 11.3541666667vw;
        height: 2.5vw;
        /* left: 4.1666666667vw; */
        padding-left: 4.1666666667vw;
    }
}

@media screen and (max-width: 768px) {
    .header_logo {
        width: 100%;
        height: 18.4615384615vw;
        top: 0;
        margin-top: 0;
        left: 0;
        padding: 0;
        position: relative;
        border-bottom: 1px solid #fff;
        -ms-transform-origin: left top;
        transform-origin: left top;
        transition: transform 1.2s cubic-bezier(0.32, 0.95, 0.6, 1) 0s, opacity 1.2s cubic-bezier(0.32, 0.95, 0.6, 1) .2s
    }
}

.header_logo_link {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 100%
}

@media screen and (max-width: 768px) {
    .header_logo_link {
        width: 37.4358974359vw;
        height: 8.2051282051vw;
        position: absolute;
        top: 5.1282051282vw;
        left: 5.1282051282vw
    }
}

.header_logo_link picture,
.header_logo_link svg,
.header_logo_link img {
    max-width: none;
    width: auto;
    height: 100%;
    display: block
}

.header_logo .ico_logo circle,
.header_logo .ico_logo path {
    fill: #74748f;
    transition: fill .6s cubic-bezier(0.32, 0.95, 0.6, 1)
}

.negative .header_logo .ico_logo circle,
.negative .header_logo .ico_logo path {
    fill: #fff
}

.open .header_logo .ico_logo circle,
.open .header_logo .ico_logo path {
    fill: #74748f
}

.scrolled .header_logo {
    -ms-transform: scale(0.75);
    transform: scale(0.75)
}

@media screen and (max-width: 768px) {
    .scrolled .header_logo {
        opacity: 0;
        pointer-events: none
    }
}

.loading .scrolled .header_logo {
    -ms-transform: scale(1);
    transform: scale(1)
}

.header_content {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: center;
    align-items: center
}

@media screen and (max-width: 768px) {
    .header_content {
        width: 100%;
        height: 100vh;
        height: calc(var(--vh, 1vh)*100);
        height: 100dvh;
        position: absolute;
        top: 0;
        left: 0;
        overflow-y: scroll;
        -ms-flex-flow: column;
        flex-flow: column;
        -ms-flex-pack: center;
        justify-content: center;
        padding-top: 28.7179487179vw;
        box-sizing: border-box;
        opacity: 0;
        visibility: hidden
    }
}

.header_gnav {
    width: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    position: relative;
    -ms-transform: translateY(0);
    transform: translateY(0);
    transition: transform .6s cubic-bezier(0.32, 0.95, 0.6, 1);
    height: 56px;
    margin-right: 48px
}

@media screen and (min-width: 769px) {
    .header_gnav {
        height: 2.9166666667vw;
        margin-right: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .header_gnav {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
        width: 100%;
        height: auto;
        padding: 12.3076923077vw 0vw 10.2564102564vw;
        position: relative;
        color: #0c0e13;
        margin-right: 0;
        box-sizing: border-box;
        transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s, transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1s;
        z-index: 9
    }
}

.header_gnav_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
    align-items: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media screen and (max-width: 768px) {
    .header_gnav_list {
        width: 100%;
        box-sizing: border-box;
        margin: 0 auto;
        border-radius: 0;
        padding: 0vw 6.1538461538vw;
        background: none;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: start;
        align-items: flex-start
    }
}

.header_gnav_list_item {
    margin: 0px 20px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_item {
        margin: 0vw 1.0416666667vw
    }
}

@media screen and (max-width: 768px) {
    .header_gnav_list_item {
        width: 100%;
        box-sizing: border-box;
        margin: 0;
        overflow: hidden;
        position: relative
    }
}

.header_gnav_list_item:first-child {
    margin-left: 0
}

.header_gnav_list_item:last-child {
    margin-right: 0
}

@media screen and (max-width: 768px) {
    .header_gnav_list_item:last-child .header_gnav_list_item_link {
        border-bottom: 1px solid #e4e4e9
    }
}

.header_gnav_list_item_link {
    line-height: 1;
    font-weight: bold;
    position: relative;
    transition: background-color .6s cubic-bezier(0.32, 0.95, 0.6, 1), color .6s cubic-bezier(0.32, 0.95, 0.6, 1);
    box-sizing: border-box;
    color: #0c0e13;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    font-size: 1.6rem;
    line-height: 24px;
    padding: 14px 4px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_item_link {
        font-size: 0.8333333333vw;
        line-height: 1.25vw;
        padding: 0.7291666667vw 0.2083333333vw
    }
}

@media screen and (max-width: 768px) {
    .header_gnav_list_item_link {
        font-weight: 600;
        -ms-flex-pack: justify;
        justify-content: space-between;
        font-size: 3.8461538462vw;
        line-height: 5.641025641vw;
        padding: 6.1538461538vw 0vw;
        height: auto;
        text-align: left;
        border-top: 1px solid #e4e4e9
    }
}

@media screen and (min-width: 769px) {
    .negative .header_gnav_list_item_link {
        color: #fff
    }
}

@media screen and (max-width: 768px) {
    .parent .header_gnav_list_item_link {
        padding-bottom: 4.1025641026vw
    }

    .parent .header_gnav_list_item_link:before,
    .parent .header_gnav_list_item_link:after {
        content: "";
        position: absolute;
        right: 0;
        top: 8.7179487179vw;
        width: 3.5897435897vw;
        height: 1px;
        background: #74748f;
        transition: transform .6s cubic-bezier(0.25, 0.46, 0.45, 0.94)
    }

    .parent .header_gnav_list_item_link:after {
        -ms-transform: rotate(90deg);
        transform: rotate(90deg)
    }
}

.parent .header_gnav_list_item_link.open:before {
    -ms-transform: rotate(90deg) scale(0);
    transform: rotate(90deg) scale(0)
}

.parent .header_gnav_list_item_link.open:after {
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.header_gnav_list_item_link_txt {
    letter-spacing: inherit;
    font-weight: inherit;
    color: #74748f;
}

.header_gnav_list_item_link .dot {
    position: absolute;
    top: 0;
    left: 50%;
    border-radius: 50%;
    pointer-events: none;
    opacity: 0;
    animation: Dot-Rotation-Rev .6s cubic-bezier(0.32, 0.95, 0.6, 1) forwards;
    width: 200px;
    height: 200px;
    margin-left: -100px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_item_link .dot {
        width: 10.4166666667vw;
        height: 10.4166666667vw;
        margin-left: -5.2083333333vw
    }
}

.header_gnav_list_item_link .dot:before {
    content: "";
    position: absolute;
    background: #74748f;
    top: 0;
    left: 50%;
    transition: top .6s cubic-bezier(0.32, 0.95, 0.6, 1), height .6s cubic-bezier(0.32, 0.95, 0.6, 1), opacity .6s cubic-bezier(0.32, 0.95, 0.6, 1);
    width: 6px;
    height: 6px;
    margin-left: -3px;
    border-radius: 3px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_item_link .dot:before {
        width: 0.3125vw;
        height: 0.3125vw;
        margin-left: -0.15625vw;
        border-radius: 0.15625vw
    }
}

@media screen and (max-width: 768px) {
    .header_gnav_list_item_link .dot:before {
        width: 1.5384615385vw;
        height: 1.5384615385vw;
        margin-left: -.7692307692vw;
        border-radius: .7692307692vw
    }
}

@media screen and (min-width: 769px) {
    .header_gnav_list_item_link:hover .dot {
        animation: Dot-Rotation .6s cubic-bezier(0.32, 0.95, 0.6, 1) forwards
    }
}

.header_gnav_list_child {
    position: absolute;
    left: 50%;
    visibility: hidden;
    opacity: 0;
    width: 1200px;
    margin-left: -600px;
    top: 50px;
    padding-top: 14px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_child {
        width: 62.5vw;
        margin-left: -31.25vw;
        top: 2.6041666667vw;
        padding-top: 0.7291666667vw
    }
}

@media screen and (min-width: 769px) {
    .header_gnav_list_child {
        pointer-events: none
    }

    .header_gnav_list_child.open {
        pointer-events: auto
    }
}

@media screen and (max-width: 768px) {
    .header_gnav_list_child {
        width: 100%;
        height: 0;
        margin-left: 0;
        position: relative;
        top: 0;
        left: 0;
        padding: 0
    }

    .header_gnav_list_child.open {
        padding: 0vw 0vw 6.1538461538vw
    }
}

.header_gnav_list_child_content {
    background: #fff;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    width: 100%;
    min-height: 400px;
    padding: 64px 64px 96px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_child_content {
        min-height: 20.8333333333vw;
        padding: 3.3333333333vw 3.3333333333vw 5vw
    }
}

@media screen and (max-width: 768px) {
    .header_gnav_list_child_content {
        padding: 0;
        min-height: auto
    }
}

.header_gnav_list_child_ttl {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
    flex-flow: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 446px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_child_ttl {
        width: 23.2291666667vw
    }
}

@media screen and (max-width: 768px) {
    .header_gnav_list_child_ttl {
        display: none
    }
}

.header_gnav_list_child_ttl_jp {
    position: relative;
    display: block;
    font-size: 1.4rem;
    line-height: 14px;
    margin-bottom: 16px;
    padding-left: 14px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_child_ttl_jp {
        font-size: 0.7291666667vw;
        line-height: 0.7291666667vw;
        margin-bottom: 0.8333333333vw;
        padding-left: 0.7291666667vw
    }
}

.header_gnav_list_child_ttl_jp:before {
    content: "";
    display: block;
    border-radius: 50%;
    background: #74748f;
    top: 50%;
    left: 0;
    position: absolute;
    width: 6px;
    height: 6px;
    margin-top: -3px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_child_ttl_jp:before {
        width: 0.3125vw;
        height: 0.3125vw;
        margin-top: -0.15625vw
    }
}

.header_gnav_list_child_ttl_en {
    display: block;
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-size: 3.6rem;
    line-height: 36px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_child_ttl_en {
        font-size: 1.875vw;
        line-height: 1.875vw
    }
}

.header_gnav_list_child_list {
    border-left: 1px solid #e4e4e9;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-left: 48px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_child_list {
        padding-left: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .header_gnav_list_child_list {
        border-left: 0;
        padding-left: 6.1538461538vw;
        -ms-flex-flow: column;
        flex-flow: column
    }
}

.header_gnav_list_child_list_item {
    width: 200px;
    margin-right: 32px;
    margin-bottom: 32px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_child_list_item {
        width: 10.4166666667vw;
        margin-right: 1.6666666667vw;
        margin-bottom: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .header_gnav_list_child_list_item {
        width: 100%;
        margin-right: 0;
        margin-bottom: 2.0512820513vw
    }
}

.header_gnav_list_child_list_item:last-child {
    margin-right: 0
}

@media screen and (max-width: 768px) {
    .header_gnav_list_child_list_item:last-child {
        margin-bottom: 0
    }
}

.header_gnav_list_child_list_item_link {
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 24px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_child_list_item_link {
        font-size: 0.8333333333vw;
        line-height: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .header_gnav_list_child_list_item_link {
        font-size: 3.5897435897vw;
        line-height: 6.1538461538vw;
        color: #0c0e13;
        text-align: left
    }
}

.header_gnav_list_child_list_item_txt {
    letter-spacing: inherit;
    font-weight: inherit;
    text-align: left
}

.header_gnav_list_child_list_item_img {
    background: #7a8192;
    overflow: hidden;
    width: 200px;
    height: 200px;
    margin-bottom: 16px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_child_list_item_img {
        width: 10.4166666667vw;
        height: 10.4166666667vw;
        margin-bottom: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .header_gnav_list_child_list_item_img {
        display: none
    }
}

.header_gnav_list_child_list_item_img img {
    display: block
}

.header_gnav_list_child .btn {
    position: absolute;
    top: 178px;
    left: 64px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_child .btn {
        top: 9.2708333333vw;
        left: 3.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .header_gnav_list_child .btn {
        display: none
    }
}

.header_gnav_list_product .header_gnav_list_child_list_item {
    width: 160px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_product .header_gnav_list_child_list_item {
        width: 8.3333333333vw
    }
}

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

.header_gnav_list_product .header_gnav_list_child_list_item_link {
    font-size: 1.4rem;
    line-height: 18px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_product .header_gnav_list_child_list_item_link {
        font-size: 0.7291666667vw;
        line-height: 0.9375vw
    }
}

@media screen and (max-width: 768px) {
    .header_gnav_list_product .header_gnav_list_child_list_item_link {
        font-size: 3.5897435897vw;
        line-height: 6.1538461538vw
    }
}

.header_gnav_list_product .header_gnav_list_child_list_item_img {
    width: 160px;
    height: 90px;
    margin-bottom: 8px
}

@media screen and (min-width: 769px) {
    .header_gnav_list_product .header_gnav_list_child_list_item_img {
        width: 8.3333333333vw;
        height: 4.6875vw;
        margin-bottom: 0.4166666667vw
    }
}

.header_gnav_filter {
    position: fixed;
    width: 100%;
    height: 100%;
    background: #0c0e13;
    opacity: 0;
    top: 0;
    left: 0;
    z-index: 5;
    pointer-events: none
}

.header_gnav_filter.open {
    transition: .6s cubic-bezier(0.32, 0.95, 0.6, 1)
}

@media screen and (max-width: 768px) {
    .header_gnav_filter {
        display: none
    }
}

.header_touchpoint {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
    flex-flow: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: end;
    align-items: flex-end
}

@media screen and (max-width: 768px) {
    .header_touchpoint {
        width: 100%;
        -ms-flex-flow: column;
        flex-flow: column;
        -ms-flex-align: start;
        align-items: flex-start;
        top: auto;
        bottom: 0;
        box-sizing: border-box;
        padding: 0vw 6.1538461538vw
    }
}

.header_touchpoint_cta {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    padding-right: 80px
}

@media screen and (min-width: 769px) {
    .header_touchpoint_cta {
        padding-right: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .header_touchpoint_cta {
        width: 100%;
        padding-right: 0;
        -ms-flex-flow: column;
        flex-flow: column;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: center;
        margin-bottom: 10.2564102564vw
    }
}

.header_touchpoint_cta_btn {
    position: relative;
    margin-right: 16px
}

@media screen and (min-width: 769px) {
    .header_touchpoint_cta_btn {
        margin-right: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .header_touchpoint_cta_btn {
        width: 100%;
        margin-right: 0;
        margin-bottom: 4.1025641026vw;
        overflow: hidden
    }
}

.header_touchpoint_cta_btn:last-child {
    margin-right: 0
}

@media screen and (max-width: 768px) {
    .header_touchpoint_cta_btn:last-child {
        margin-bottom: 0
    }
}

.header_touchpoint_cta_btn_catalog {
    background: #2c3943
}

.header_touchpoint_cta_btn_contact {
    background: #74748f
}

.header_touchpoint_cta_btn:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    border-radius: 50%;
    box-sizing: border-box;
    background: #fff;
    opacity: .2;
    -ms-transform: scale(0);
    transform: scale(0);
    width: 320px;
    height: 320px;
    margin-top: -160px;
    margin-left: -160px
}

@media screen and (min-width: 769px) {
    .header_touchpoint_cta_btn:before {
        width: 16.6666666667vw;
        height: 16.6666666667vw;
        margin-top: -8.3333333333vw;
        margin-left: -8.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .header_touchpoint_cta_btn:before {
        content: none
    }
}

@media screen and (min-width: 769px) {
    .header_touchpoint_cta_btn:hover:before {
        opacity: 0;
        -ms-transform: scale(1);
        transform: scale(1);
        transition: transform .6s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity .6s cubic-bezier(0.25, 0.46, 0.45, 0.94)
    }
}

.header_touchpoint_cta_link {
    color: #fff;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    z-index: 0;
    overflow: hidden;
    transition: background-color .6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    padding: 16px 64px;
    border-radius: 28px
}

@media screen and (min-width: 769px) {
    .header_touchpoint_cta_link {
        padding: 0.8333333333vw 3.3333333333vw;
        border-radius: 1.4583333333vw
    }
}

@media screen and (max-width: 768px) {
    .header_touchpoint_cta_link {
        width: 100%;
        box-sizing: border-box;
        border-radius: 9.2307692308vw;
        -ms-flex-flow: column;
        flex-flow: column;
        padding: 4.1025641026vw
    }
}

.header_touchpoint_cta_link_txt {
    font-weight: bold;
    position: relative;
    z-index: 0;
    color: #fff;
    font-size: 1.6rem;
    line-height: 24px
}

@media screen and (min-width: 769px) {
    .header_touchpoint_cta_link_txt {
        font-size: 0.8333333333vw;
        line-height: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .header_touchpoint_cta_link_txt {
        font-size: 3.8461538462vw;
        line-height: 6.1538461538vw
    }
}

.header_touchpoint_cta_link:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    border-radius: 50%;
    box-sizing: border-box;
    opacity: .2;
    -ms-transform: scale(0);
    transform: scale(0);
    width: 320px;
    height: 320px;
    margin-top: -160px;
    margin-left: -160px
}

@media screen and (min-width: 769px) {
    .header_touchpoint_cta_link:before {
        width: 16.6666666667vw;
        height: 16.6666666667vw;
        margin-top: -8.3333333333vw;
        margin-left: -8.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .header_touchpoint_cta_link:before {
        content: none
    }
}

@media screen and (min-width: 769px) {
    .header_touchpoint_cta_link:hover:before {
        transition: transform .6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        -ms-transform: scale(1);
        transform: scale(1)
    }

    .header_touchpoint_cta_link.header_touchpoint_cta_btn_catalog:hover,
    .header_touchpoint_cta_link.header_touchpoint_cta_btn_catalog:before {
        background-color: #394b58
    }

    .header_touchpoint_cta_link.header_touchpoint_cta_btn_contact:hover,
    .header_touchpoint_cta_link.header_touchpoint_cta_btn_contact:before {
        background-color: #8b8baa;
    }
}

.header_copyright {
    display: none
}

@media screen and (max-width: 768px) {
    .header_copyright {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: center;
        font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
        font-size: 2.5641025641vw;
        line-height: 5.1282051282vw;
        letter-spacing: .1em;
        overflow: hidden
    }

    .header_copyright_txt {
        font-size: inherit;
        line-height: inherit;
        letter-spacing: inherit
    }
}

.hum {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    box-sizing: border-box;
    border-radius: 50%;
    position: fixed;
    cursor: pointer;
    -ms-flex-order: 1;
    order: 1;
    z-index: 105
}

@media screen and (max-width: 768px) {
    .hum {
        width: 14.358974359vw;
        height: 14.358974359vw;
        top: 2.0512820513vw;
        right: 5.1282051282vw
    }
}

.hum_circle {
    display: block;
    position: absolute
}

@media screen and (max-width: 768px) {
    .hum_circle {
        width: 14.358974359vw;
        height: 14.358974359vw;
        top: -.2564102564vw;
        right: -.2564102564vw
    }
}

.hum_circle .ico_circle {
    width: 100%;
    height: 100%
}

.hum_circle .ico_circle circle {
    transition: opacity .6s cubic-bezier(0.25, 0.46, 0.45, 0.94), stroke-dashoffset .6s cubic-bezier(0.25, 0.46, 0.45, 0.94), stroke 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    stroke: #000;
    opacity: .5
}

.negative .hum_circle .ico_circle circle {
    stroke: #000;
}

.open .hum_circle .ico_circle circle {
    stroke: #000;
}

.hum_circle.shadow {
    transition: transform .6s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.hum_circle.shadow .ico_circle circle {
    stroke-dashoffset: 420px;
    stroke-dasharray: 420px
}

@media screen and (min-width: 769px) {
    .hum_circle.shadow .ico_circle circle {
        stroke-dashoffset: 21.875vw;
        stroke-dasharray: 21.875vw
    }
}

@media screen and (max-width: 768px) {
    .hum_circle.shadow .ico_circle circle {
        stroke-dashoffset: 107.6923076923vw;
        stroke-dasharray: 107.6923076923vw
    }
}

.hum_bar {
    position: absolute;
    top: 50%;
    right: 50%
}

@media screen and (max-width: 768px) {
    .hum_bar {
        width: 6.1538461538vw;
        height: 1.7948717949vw;
        margin-top: -1.0256410256vw;
        margin-right: -3.3333333333vw
    }
}

.hum_bar_u,
.hum_bar_b {
    position: absolute;
    width: 100%;
    right: 0;
    transition: transform .6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    height: 1px
}

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

    .hum_bar_u,
    .hum_bar_b {
        height: 0.0520833333vw
    }
}

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

    .hum_bar_u,
    .hum_bar_b {
        height: .2564102564vw
    }
}

.hum_bar_u .ico_border,
.hum_bar_b .ico_border {
    width: 100%;
    height: 100%;
    display: block
}

.hum_bar_u .ico_border path,
.hum_bar_b .ico_border path {
    stroke: #0c0e13;
    transition: opacity .6s cubic-bezier(0.25, 0.46, 0.45, 0.94), stroke-dashoffset .6s cubic-bezier(0.25, 0.46, 0.45, 0.94), stroke 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    stroke-dashoffset: 0;
    stroke-dasharray: 24px
}

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

    .hum_bar_u .ico_border path,
    .hum_bar_b .ico_border path {
        stroke-dasharray: 1.25vw
    }
}

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

    .hum_bar_u .ico_border path,
    .hum_bar_b .ico_border path {
        stroke-dasharray: 6.1538461538vw
    }
}

.negative .hum_bar_u .ico_border path,
.negative .hum_bar_b .ico_border path {
    stroke: #000;
}

.open .hum_bar_u .ico_border path,
.open .hum_bar_b .ico_border path {
    stroke: #0c0e13
}

.hum_bar_u {
    top: 0
}

.hum_bar_b {
    bottom: 0
}

.hum_bar_b .ico_border path {
    transition-delay: .1s
}

.hum_bg {
    content: "";
    display: block;
    position: fixed;
    background: #fff;
    z-index: 2;
    will-change: transform, clip-path;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    -ms-transform-origin: center center;
    transform-origin: center center;
    visibility: hidden;
    opacity: 0
}

.hum_bg_filter {
    z-index: -1;
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background: #0c0e13;
    opacity: 1;
    top: 0;
    left: 0
}

@media screen and (max-width: 768px) {
    .hum_bg_filter {
        opacity: .8
    }
}

.hum_bg_square {
    position: absolute;
    z-index: 0;
    top: 50%;
    left: 50%;
    width: 1920px;
    height: 1080px;
    margin-top: -540px;
    margin-left: -960px
}

@media screen and (min-width: 769px) {
    .hum_bg_square {
        width: 100vw;
        height: 56.25vw;
        margin-top: -28.125vw;
        margin-left: -50vw
    }
}

@media screen and (max-width: 768px) {
    .hum_bg_square {
        width: 100vw;
        height: 216.4102564103vw;
        margin-top: -108.2051282051vw;
        margin-left: -50vw
    }
}

.hum_bg_square_img {
    width: 1920px;
    height: 1080px
}

@media screen and (min-width: 769px) {
    .hum_bg_square_img {
        width: 100vw;
        height: 56.25vw
    }
}

@media screen and (max-width: 768px) {
    .hum_bg_square_img {
        width: 100vw;
        height: 216.4102564103vw
    }
}

.hum_bg_arch {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    width: 520px;
    height: 800px;
    margin-top: -400px;
    margin-left: -260px
}

@media screen and (min-width: 769px) {
    .hum_bg_arch {
        width: 27.0833333333vw;
        height: 41.6666666667vw;
        margin-top: -20.8333333333vw;
        margin-left: -13.5416666667vw
    }
}

@media screen and (max-width: 768px) {
    .hum_bg_arch {
        display: none
    }
}

.hum_bg_arch_img {
    width: 520px;
    height: 800px
}

@media screen and (min-width: 769px) {
    .hum_bg_arch_img {
        width: 27.0833333333vw;
        height: 41.6666666667vw
    }
}

.hum_menu {
    z-index: 1
}

.hum_menu svg {
    width: 14.358974359vw;
    height: 4.1025641026vw;
    display: block;
    transition: 1.2s cubic-bezier(0.32, 0.95, 0.6, 1)
}

.hum_menu svg path {
    fill: #fff;
    fill-opacity: 1;
    stroke: #fff;
    stroke-width: 0;
    stroke-dasharray: 54;
    stroke-dashoffset: 0;
    transition: fill .6s cubic-bezier(0.32, 0.95, 0.6, 1) 1.8s, fill-opacity 1.2s cubic-bezier(0.32, 0.95, 0.6, 1) 1.8s, stroke-width .6s cubic-bezier(0.32, 0.95, 0.6, 1) 1.8s, stroke-dashoffset .6s cubic-bezier(0.32, 0.95, 0.6, 1) 1s
}

@media screen and (min-width: 769px) {
    .hum:hover .hum_circle circle {
        opacity: .3;
        stroke: #e4e4e9
    }

    .hum:hover .hum_circle.shadow {
        -ms-transform: rotate(135deg);
        transform: rotate(135deg)
    }

    .hum:hover .hum_circle.shadow circle {
        stroke: #fff;
        stroke-dashoffset: 0;
        opacity: 1
    }

    .hum:hover .hum_bar path {
        stroke: #fff;
        stroke-dashoffset: -48px
    }
}

@media screen and (min-width: 769px)and (min-width: 769px) {
    .hum:hover .hum_bar path {
        stroke-dashoffset: -2.5vw
    }
}

.open .hum_bar_u path,
.open .hum_bar_b path {
    stroke: #0c0e13
}

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

    .open .hum_bar_u path,
    .open .hum_bar_b path {
        stroke-dashoffset: -12.3076923077vw
    }
}

.open .hum_bar_u {
    top: 50%;
    -ms-transform: translateY(-1px) rotate(30deg);
    transform: translateY(-1px) rotate(30deg)
}

.open .hum_bar_b {
    bottom: 50%;
    -ms-transform: translateY(1px) rotate(-30deg);
    transform: translateY(1px) rotate(-30deg)
}

.close .hum_bar_u path,
.close .hum_bar_b path {
    stroke: #0c0e13;
    stroke-dashoffset: 0px
}

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

    .close .hum_bar_u path,
    .close .hum_bar_b path {
        stroke-dashoffset: 0vw
    }
}

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

    .close .hum_bar_u path,
    .close .hum_bar_b path {
        stroke-dashoffset: 0vw
    }
}

@media screen and (max-width: 768px) {
    .is-fixed {
        height: 100%;
        overflow: hidden
    }
}

.footer {
    width: 100%;
    background: #efefef;
    color: #fff;
    position: relative;
    z-index: 0;
    padding: 120px 0px 110px
}

@media screen and (min-width: 769px) {
    .footer {
        padding: 6.25vw 0vw 5.7291666667vw
    }
}

@media screen and (max-width: 768px) {
    .footer {
        padding: 20.5128205128vw 0vw
    }
}

.footer a {
    color: inherit;
    text-decoration: none
}

.footer_inner {
    margin: 0 auto;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 1280px;
    padding: 0px 40px
}

@media screen and (min-width: 769px) {
    .footer_inner {
        width: 66.6666666667vw;
        padding: 0vw 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .footer_inner {
        width: 100%;
        padding: 0vw 6.1538461538vw;
        -ms-flex-flow: column;
        flex-flow: column
    }
}

.footer_top {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-bottom: 1px solid rgba(122, 129, 146, .3);
    position: relative;
    padding-bottom: 62px
}

@media screen and (min-width: 769px) {
    .footer_top {
        padding-bottom: 3.2291666667vw
    }
}

@media screen and (max-width: 768px) {
    .footer_top {
        -ms-flex-flow: column;
        flex-flow: column;
        padding-bottom: 0;
        margin-bottom: 0;
        border-bottom: 0
    }
}

.footer_bottom {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: end;
    align-items: flex-end;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative;
    padding-top: 132px
}

@media screen and (min-width: 769px) {
    .footer_bottom {
        padding-top: 6.875vw
    }
}

.footer_touchpoint {
    box-sizing: border-box;
    position: relative;
    width: 332px;
    padding-right: 40px
}

@media screen and (min-width: 769px) {
    .footer_touchpoint {
        width: 19.291667vw;
        padding-right: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .footer_touchpoint {
        width: 100%;
        margin-right: 0;
        border-top: 1px solid rgba(122, 129, 146, .3);
        padding-top: 16.4102564103vw
    }
}

.footer_logo {
    box-sizing: border-box;
    width: 219px;
    margin-bottom: 18px
}

@media screen and (min-width: 769px) {
    .footer_logo {
        width: 11.40625vw;
        margin-bottom: 0.9375vw
    }
}

@media screen and (max-width: 768px) {
    .footer_logo {
        width: 39.4871794872vw;
        margin-bottom: 6.6666666667vw;
        text-align: center;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: start;
        align-items: flex-start
    }
}

.footer_logo_link {
    text-align: center;
    display: block;
    width: 100%;
    max-width: 130px;
}

.footer_logo_link img,
.footer_logo_link svg {
    width: 100%;
    height: auto
}

.footer_company_name {
    letter-spacing: 0;
    font-weight: 700;
    font-size: 1.6rem;
    line-height: 28px;
    margin-bottom: 24px;
    color: #000;
}

@media screen and (min-width: 769px) {
    .footer_company_name {
        font-size: 0.8333333333vw;
        line-height: 1.4583333333vw;
        margin-bottom: 0.25vw;
    }
}

@media screen and (max-width: 768px) {
    .footer_company_name {
        font-size: 4.1025641026vw;
        line-height: 7.1794871795vw;
        margin-bottom: 4.1025641026vw
    }
}

.footer_company_access,
.footer_company_address {
    letter-spacing: 0;
    font-size: 1.6rem;
    line-height: 32px;
    margin-bottom: 32px;
    color: #000;
}

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

    .footer_company_access,
    .footer_company_address {
        font-size: 0.8333333333vw;
        line-height: 1.6666666667vw;
        margin-bottom: 1.6666666667vw
    }
}

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

    .footer_company_access,
    .footer_company_address {
        font-size: 3.3333333333vw;
        line-height: 7.1794871795vw;
        margin-bottom: 7.1794871795vw
    }
}

.footer_company_access:last-child,
.footer_company_address:last-child {
    margin-bottom: 0
}

.footer_company_address_line {
    display: block;
    margin-bottom: 8px
}

@media screen and (min-width: 769px) {
    .footer_company_address_line {
        margin-bottom: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .footer_company_address_line {
        margin-bottom: 2.0512820513vw
    }
}

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

.footer_company a {
    text-decoration: underline
}

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

.footer_nav {
    box-sizing: border-box;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 868px;
    padding-left: 40px
}

@media screen and (min-width: 769px) {
    .footer_nav {
        width: 43.208333vw;
        padding-left: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .footer_nav {
        width: 100%;
        margin-bottom: 8.2051282051vw;
        padding-left: 0;
        -ms-flex-order: -1;
        order: -1
    }
}

.footer_nav_list {
    width: 200px;
    margin-left: 64px
}

@media screen and (min-width: 769px) {
    .footer_nav_list {
        width: 10.4166666667vw;
        margin-left: 3.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .footer_nav_list {
        width: 100%;
        margin-left: 0;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

.footer_nav_list_item {
    width: 100%;
    border-top: 1px solid rgba(122, 129, 146, .3);
    padding-top: 20px;
    margin-bottom: 38px
}

@media screen and (min-width: 769px) {
    .footer_nav_list_item {
        padding-top: 1.0416666667vw;
        margin-bottom: 1.9791666667vw
    }
}

@media screen and (max-width: 768px) {
    .footer_nav_list_item {
        width: 50%;
        box-sizing: border-box;
        padding-top: 0;
        margin-bottom: 1.7948717949vw;
        border-top: 0
    }

    .footer_nav_list_item:nth-child(odd) {
        padding-right: 3.0769230769vw
    }

    .footer_nav_list_item:nth-child(even) {
        padding-left: 3.0769230769vw
    }
}

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

@media screen and (max-width: 768px) {
    .footer_nav_list_item:last-child {
        margin-bottom: 1.7948717949vw
    }
}

.footer_nav_list_item_link {
    position: relative;
    letter-spacing: 0;
    font-weight: 700;
    font-size: 1.6rem;
    line-height: 24px
}

@media screen and (min-width: 769px) {
    .footer_nav_list_item_link {
        font-size: 0.8333333333vw;
        line-height: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .footer_nav_list_item_link {
        font-size: 3.5897435897vw;
        line-height: 5.1282051282vw;
        border-top: 1px solid #e4e4e9;
        padding: 6.1538461538vw 0vw;
        display: block
    }
}

.footer_nav_list_item_txt {
    letter-spacing: inherit;
    font-weight: inherit;
    font-size: inherit;
    line-height: inherit;
}

.footer_nav_list_child {
    margin-top: 14px;
    padding-bottom: 10px
}

@media screen and (min-width: 769px) {
    .footer_nav_list_child {
        margin-top: 0.7291666667vw;
        padding-bottom: 0.5208333333vw
    }
}

@media screen and (max-width: 768px) {
    .footer_nav_list_child {
        margin-top: 0;
        margin-bottom: 6.1538461538vw
    }
}

.footer_nav_list_child_item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-bottom: 8px
}

@media screen and (min-width: 769px) {
    .footer_nav_list_child_item {
        margin-bottom: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .footer_nav_list_child_item {
        margin-bottom: 2.0512820513vw
    }
}

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

.footer_nav_list_child_item_link {
    position: relative;
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 24px
}

@media screen and (min-width: 769px) {
    .footer_nav_list_child_item_link {
        font-size: 0.7291666667vw;
        line-height: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .footer_nav_list_child_item_link {
        font-size: 3.3333333333vw;
        line-height: 6.1538461538vw
    }
}

.footer_nav_list_child_item_txt {
    letter-spacing: inherit;
    font-size: inherit;
    line-height: inherit;
    font-weight: inherit
}

.footer_nav .ico_arw {
    width: 16px;
    height: 16px
}

@media screen and (min-width: 769px) {
    .footer_nav .ico_arw {
        width: 0.8333333333vw;
        height: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .footer_nav .ico_arw {
        width: 4.1025641026vw;
        height: 4.1025641026vw;
        margin-right: 1.0256410256vw
    }
}

.footer_privacy {
    width: 100%;
    letter-spacing: 0;
    font-size: 1.4rem;
    line-height: 28px;
    margin-top: 60px
}

@media screen and (min-width: 769px) {
    .footer_privacy {
        font-size: 0.7291666667vw;
        line-height: 1.4583333333vw;
        margin-top: 3.125vw
    }
}

@media screen and (max-width: 768px) {
    .footer_privacy {
        font-size: 3.0769230769vw;
        line-height: 6.1538461538vw;
        margin-top: 10.2564102564vw;
        margin-bottom: 6.1538461538vw
    }
}

.footer_privacy_link {
    position: relative
}

.footer_privacy_link_txt {
    font-size: inherit;
    line-height: inherit
}

.footer_pagetop {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 50%;
    cursor: pointer;
    position: absolute;
    box-sizing: border-box;
    bottom: 0;
    width: 96px;
    height: 96px;
    right: 48px
}

@media screen and (min-width: 769px) {
    .footer_pagetop {
        width: 5vw;
        height: 5vw;
        right: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .footer_pagetop {
        width: 24.6153846154vw;
        height: 24.6153846154vw;
        border-width: .2564102564vw;
        position: absolute;
        right: 6.1538461538vw;
        bottom: 5.641025641vw
    }
}

.footer_pagetop_link {
    width: 100%;
    height: 100%;
    padding: 0;
    border-radius: 50%;
    top: 0px;
    right: 0px
}

@media screen and (min-width: 769px) {
    .footer_pagetop_link {
        top: 0vw;
        right: 0vw
    }
}

@media screen and (max-width: 768px) {
    .footer_pagetop_link {
        top: 0;
        right: 0
    }
}

.footer_pagetop_link .ico_circle {
    width: 100%;
    height: 100%;
    transition: transform .6s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.footer_pagetop_link .ico_circle circle {
    transition: opacity .6s cubic-bezier(0.25, 0.46, 0.45, 0.94), stroke-dashoffset .6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    stroke-dashoffset: 0;
    stroke-dasharray: 380;
    stroke: #e4e4e9
}

.footer_pagetop_link .ico_arw {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 50%;
    width: 16px;
    height: 16px;
    margin-right: -8px;
    margin-top: -8px
}

@media screen and (min-width: 769px) {
    .footer_pagetop_link .ico_arw {
        width: 0.8333333333vw;
        height: 0.8333333333vw;
        margin-right: -0.4166666667vw;
        margin-top: -0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .footer_pagetop_link .ico_arw {
        width: 4.1025641026vw;
        height: 4.1025641026vw;
        margin-right: -2.0512820513vw;
        margin-top: -2.0512820513vw
    }
}

.footer_pagetop_link .ico_arw path {
    stroke: #000;
}

.footer_pagetop_link:hover .ico_circle {
    -ms-transform: scale(1.066);
    transform: scale(1.066)
}

.footer_pagetop_link:hover .ico_circle circle {
    opacity: 1;
    stroke-dashoffset: 760
}

@media screen and (max-width: 768px) {
    .footer_pagetop_link:hover .ico_circle circle {
        stroke-dashoffset: 389.7435897436vw
    }
}

.footer_pagetop_link:hover .ico_arw {
    -ms-transform: scaleX(1.06);
    transform: scaleX(1.06)
}

.footer_pagetop_link:hover .ico_arw path {
    stroke-dashoffset: -160px
}

@media screen and (min-width: 769px) {
    .footer_pagetop_link:hover .ico_arw path {
        stroke-dashoffset: -8.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .footer_pagetop_link:hover .ico_arw path {
        stroke-dashoffset: -41.0256410256vw
    }
}

.footer_copyright {
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-weight: 400;
    letter-spacing: .1em;
    text-align: right;
    font-size: 1.1rem;
    line-height: 20px;
    padding-bottom: 10px;
    color: #000;
}

@media screen and (min-width: 769px) {
    .footer_copyright {
        font-size: 0.5729166667vw;
        line-height: 1.0416666667vw;
        padding-bottom: 0.5208333333vw
    }
}

@media screen and (max-width: 768px) {
    .footer_copyright {
        text-align: left;
        width: 100%;
        font-size: 2.5641025641vw;
        line-height: 2.5641025641vw
    }
}

.footer_offer {
    width: 100%;
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    overflow: hidden;
    color: #fff;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    height: 878px;
    margin-bottom: 124px;
}

@media screen and (min-width: 769px) {
    .footer_offer {
        height: 45.7291666667vw;
        margin-bottom: 6.75vw;
    }
}

@media screen and (max-width: 768px) {
    .footer_offer {
        height: auto;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-bottom: 30.7692307692vw
    }
}

.footer_offer_figure {
    position: absolute;
    top: 0;
    z-index: -1;
    overflow: hidden;
    height: 100%;
    transition: transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    width: 1560px;
    height: 878px
}

@media screen and (min-width: 769px) {
    .footer_offer_figure {
        width: 81.25vw;
        height: 45.7291666667vw
    }
}

@media screen and (max-width: 768px) {
    .footer_offer_figure {
        position: absolute;
        width: 93.8461538462vw;
        height: 105.1282051282vw
    }
}

.footer_offer_catalog .footer_offer_figure {
    left: 0;
    -webkit-clip-path: inset(0 50% 0 0);
    clip-path: inset(0 50% 0 0)
}

@media screen and (max-width: 768px) {
    .footer_offer_catalog .footer_offer_figure {
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0)
    }
}

.footer_offer_contact .footer_offer_figure {
    right: 0;
    -webkit-clip-path: inset(0 0 0 50%);
    clip-path: inset(0 0 0 50%)
}

@media screen and (max-width: 768px) {
    .footer_offer_contact .footer_offer_figure {
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0)
    }
}

.footer_offer_figure_img {
    background: rgba(122, 129, 146, .3);
    max-width: none;
    position: absolute;
    top: 0;
    opacity: 0;
    -ms-transform: scale(1.1);
    transform: scale(1.1);
    transition: transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) .2s, opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) .2s;
    height: 100%;
    width: 1560px
}

@media screen and (min-width: 769px) {
    .footer_offer_figure_img {
        width: 81.25vw
    }
}

@media screen and (max-width: 768px) {
    .footer_offer_figure_img {
        width: 93.8461538462vw
    }
}

.footer_offer_catalog .footer_offer_figure_img {
    left: 0
}

.footer_offer_contact .footer_offer_figure_img {
    right: 0
}

.is-active .footer_offer_figure_img {
    opacity: 1;
    -ms-transform: scale(1);
    transform: scale(1)
}

.footer_offer_inner {
    z-index: 0;
    box-sizing: border-box;
    position: relative;
    width: 780px;
    height: 878px
}

@media screen and (min-width: 769px) {
    .footer_offer_inner {
        width: 40.625vw;
        height: 45.7291666667vw
    }
}

@media screen and (max-width: 768px) {
    .footer_offer_inner {
        width: 93.8461538462vw;
        height: 105.1282051282vw
    }
}

.footer_offer_inner .headline {
    position: absolute;
    width: 588px;
    top: 92px
}

@media screen and (min-width: 769px) {
    .footer_offer_inner .headline {
        width: 30.625vw;
        top: 4.7916666667vw
    }
}

@media screen and (max-width: 768px) {
    .footer_offer_inner .headline {
        position: relative;
        width: 100%;
        top: 0;
        right: auto
    }
}

.footer_offer_inner .headline_jp {
    color: #fff;
    font-size: 1.6rem;
    line-height: 16px;
    margin-bottom: 24px
}

@media screen and (min-width: 769px) {
    .footer_offer_inner .headline_jp {
        font-size: 0.8333333333vw;
        line-height: 0.8333333333vw;
        margin-bottom: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .footer_offer_inner .headline_jp {
        font-size: 3.0769230769vw;
        line-height: 4.1025641026vw;
        margin-bottom: 4.1025641026vw
    }
}

.footer_offer_inner .headline_en {
    color: #fff;
    font-size: 5.6rem;
    line-height: 56px
}

@media screen and (min-width: 769px) {
    .footer_offer_inner .headline_en {
        font-size: 2.9166666667vw;
        line-height: 2.9166666667vw
    }
}

@media screen and (max-width: 768px) {
    .footer_offer_inner .headline_en {
        font-size: 9.2307692308vw;
        line-height: 8.2051282051vw
    }
}

.footer_offer_inner .btn_round_wrap {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    bottom: 80px
}

@media screen and (min-width: 769px) {
    .footer_offer_inner .btn_round_wrap {
        bottom: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .footer_offer_inner .btn_round_wrap {
        bottom: 10.2564102564vw
    }
}

.footer_offer_inner.footer_offer_catalog .headline {
    left: 96px
}

@media screen and (min-width: 769px) {
    .footer_offer_inner.footer_offer_catalog .headline {
        left: 5vw
    }
}

@media screen and (max-width: 768px) {
    .footer_offer_inner.footer_offer_catalog .headline {
        left: 0
    }
}

.footer_offer_inner.footer_offer_catalog .btn_round_wrap {
    left: 0
}

.footer_offer_inner.footer_offer_contact .headline {
    right: 96px
}

@media screen and (min-width: 769px) {
    .footer_offer_inner.footer_offer_contact .headline {
        right: 5vw
    }
}

@media screen and (max-width: 768px) {
    .footer_offer_inner.footer_offer_contact .headline {
        left: 0;
        right: auto
    }
}

.footer_offer_inner.footer_offer_contact .btn_round_wrap {
    right: 0
}

.footer_offer_link {
    display: block;
    box-sizing: border-box;
    height: 100%;
    position: relative;
    z-index: 0;
    width: 780px;
    padding: 92px 96px 80px
}

@media screen and (min-width: 769px) {
    .footer_offer_link {
        width: 40.625vw;
        padding: 4.7916666667vw 5vw 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .footer_offer_link {
        width: 100%;
        padding: 16.4102564103vw 5.8974358974vw 10.2564102564vw
    }
}

.footer_offer_link:before {
    content: "";
    width: 0;
    height: 100%;
    position: absolute;
    top: 0;
    opacity: 0;
    transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.footer_offer_catalog .footer_offer_link:before {
    right: 0;
    border-right: solid #fff;
    border-right-width: 1px
}

@media screen and (min-width: 769px) {
    .footer_offer_catalog .footer_offer_link:before {
        border-right-width: 0.0520833333vw
    }
}

.footer_offer_contact .footer_offer_link:before {
    left: 0;
    border-left: solid #fff;
    border-left-width: 1px
}

@media screen and (min-width: 769px) {
    .footer_offer_contact .footer_offer_link:before {
        border-left-width: 0.0520833333vw
    }
}

@media screen and (max-width: 768px) {
    .footer_offer_link:before {
        content: none
    }
}

.footer_offer_link:hover:before {
    opacity: 1
}

.footer_offer_link:hover+.footer_offer_figure .footer_offer_figure_img {
    transition-delay: 0s;
    -ms-transform: scale(1.2);
    transform: scale(1.2)
}

.footer_offer_mirror {
    position: absolute;
    top: 0;
    width: 50%;
    height: 100%;
    opacity: .5
}

.footer_offer_catalog .footer_offer_mirror {
    right: 0
}

.footer_offer_contact .footer_offer_mirror {
    left: 0
}

.footer_offer_mirror .btn_round_link {
    background: none;
    border: 1px solid #fff;
    white-space: nowrap
}

@media screen and (max-width: 768px) {
    .footer_offer_mirror {
        display: none
    }
}

.opening {
    display: block;
    position: relative;
    width: 100vw;
    height: 100vh;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    z-index: 1000;
    background: #000
}

@media screen and (max-width: 768px) {
    .opening {
        z-index: 0
    }
}

.opening_logo {
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 auto;
    width: 1136px
}

@media screen and (min-width: 769px) {
    .opening_logo {
        width: 59.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .opening_logo {
        width: 100%;
        height: 8.2051282051vw;
        -ms-flex-flow: row;
        flex-flow: row;
        -ms-flex-pack: center;
        justify-content: center;
        top: 50%;
        margin-top: -55.8974358974vw;
        position: absolute
    }
}

.opening_logo .ico_logo {
    height: auto;
    width: 300px
}

@media screen and (min-width: 769px) {
    .opening_logo .ico_logo {
        width: 15.625vw
    }
}

@media screen and (max-width: 768px) {
    .opening_logo .ico_logo {
        width: 51.2820512821vw
    }
}

.opening_logo path {
    fill: #0c0e13
}

.opening_figure {
    position: absolute;
    overflow: hidden;
    top: 50%;
    right: 50%;
    will-change: transform, width, height, margin, border-radius;
    width: 520px;
    height: 800px;
    border-radius: 260px 260px 0px 0px;
    margin-top: -400px;
    margin-right: -570px
}

@media screen and (min-width: 769px) {
    .opening_figure {
        width: 27.0833333333vw;
        height: 41.6666666667vw;
        border-radius: 13.5416666667vw 13.5416666667vw 0vw 0vw;
        margin-top: -20.8333333333vw;
        margin-right: -29.6875vw
    }
}

@media screen and (max-width: 768px) {
    .opening_figure {
        width: 66.6666666667vw;
        height: 102.5641025641vw;
        margin-top: -23.0769230769vw;
        margin-right: -33.3333333333vw;
        border-radius: 33.3333333333vw 33.3333333333vw 0vw 0vw
    }
}

.opening_figure_img {
    position: absolute;
    max-width: none;
    top: 50%;
    right: 50%;
    will-change: transform, width, height, margin;
    width: 2660px;
    height: 1774px;
    margin-top: -887px;
    margin-right: -610px
}

@media screen and (min-width: 769px) {
    .opening_figure_img {
        width: 138.5416666667vw;
        height: 92.3958333333vw;
        margin-top: -46.1979166667vw;
        margin-right: -31.7708333333vw
    }
}

@media screen and (max-width: 768px) {
    .opening_figure_img {
        width: 393.8461538462vw;
        height: 262.5641025641vw;
        margin-top: -131.2820512821vw;
        margin-right: -87.1794871795vw
    }
}

.mv {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
    flex-flow: column;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    margin: 0 auto;
    box-sizing: border-box;
    width: 1680px;
    margin-top: 280px;
    margin-bottom: 96px;
    padding: 0px 40px
}

@media screen and (min-width: 769px) {
    .mv {
        width: 87.5vw;
        margin-top: 14.5833333333vw;
        margin-bottom: 5vw;
        padding: 0vw 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .mv {
        width: 100%;
        margin-top: 22.5641025641vw;
        margin-bottom: 11.2820512821vw;
        padding: 0vw 6.1538461538vw
    }
}

.main_ttl {
    width: 100%
}

@media screen and (max-width: 768px) {
    .main_ttl {
        margin-top: 24.6153846154vw
    }
}

.main_ttl_jp {
    color: #0c0e13;
    font-weight: 300;
    position: relative;
    font-size: 2rem;
    line-height: 18px;
    padding-left: 28px;
    margin-bottom: 24px
}

@media screen and (min-width: 769px) {
    .main_ttl_jp {
        font-size: 1.0416666667vw;
        line-height: 0.9375vw;
        padding-left: 1.4583333333vw;
        margin-bottom: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .main_ttl_jp {
        font-size: 3.5897435897vw;
        line-height: 4.1025641026vw;
        padding-left: 4.1025641026vw;
        margin-bottom: 4.1025641026vw
    }
}

.main_ttl_jp:before {
    content: "";
    border-radius: 50%;
    background: #74748f;
    position: absolute;
    left: 0;
    width: 12px;
    height: 12px;
    top: 4px
}

@media screen and (min-width: 769px) {
    .main_ttl_jp:before {
        width: 0.625vw;
        height: 0.625vw;
        top: 0.2083333333vw
    }
}

@media screen and (max-width: 768px) {
    .main_ttl_jp:before {
        width: 2.0512820513vw;
        height: 2.0512820513vw;
        top: 1.0256410256vw
    }
}

.main_ttl_en {
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    color: #0c0e13;
    position: relative;
    font-size: 9.6rem;
    line-height: 96px
}

@media screen and (min-width: 769px) {
    .main_ttl_en {
        font-size: 5vw;
        line-height: 5vw
    }
}

@media screen and (max-width: 768px) {
    .main_ttl_en {
        font-size: 10.2564102564vw;
        line-height: 10.2564102564vw
    }
}

.main_ttl_en ._txt {
    padding-bottom: 20px
}

@media screen and (min-width: 769px) {
    .main_ttl_en ._txt {
        padding-bottom: 1.0416666667vw
    }
}

@media screen and (max-width: 768px) {
    .main_ttl_en ._txt {
        padding-bottom: 1.5384615385vw
    }
}

.main_visual {
    overflow: hidden;
    margin: 0 auto;
    width: 100%;
    margin-bottom: 120px
}

@media screen and (min-width: 769px) {
    .main_visual {
        margin-bottom: 6.25vw
    }
}

@media screen and (max-width: 768px) {
    .main_visual {
        margin-bottom: 16.4102564103vw
    }
}

.main_visual_figure {
    margin: 0 auto;
    -webkit-mask-image: url("../image/mask.png");
    mask-image: url("../image/mask.png");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 83.3% 100%;
    mask-size: 83.3% 100%;
    -webkit-mask-position: 50% 100%;
    mask-position: 50% 100%;
    width: 1920px;
    height: 800px
}

@media screen and (min-width: 769px) {
    .main_visual_figure {
        width: 100vw;
        height: 41.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .main_visual_figure {
        -webkit-mask-size: 75.2% 100%;
        mask-size: 75.2% 100%;
        width: 100vw;
        height: 65.641025641vw
    }
}

.main_visual_figure_img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

._txt._s {
    min-width: 28px
}

@media screen and (min-width: 769px) {
    ._txt._s {
        min-width: 1.4583333333vw
    }
}

@media screen and (max-width: 768px) {
    ._txt._s {
        min-width: 5.1282051282vw
    }
}

.kv {
    width: 100%;
    margin: 0 auto;
    position: relative;
    box-sizing: border-box;
    color: #fff;
    background: #7a8192;
    z-index: 0;
    overflow: hidden;
    height: 100vh;
    min-height: 1080px
}

@media screen and (min-width: 769px) {
    .kv {
        min-height: 56.25vw
    }
}

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

/*.kv:after {
    content: "";
    position: absolute;
    background: #141c46;
    opacity: .4;
    z-index: 1;
    width: 100%;
    height: 100%
}*/

.kv_headline {
    width: calc(100% - 160px);
    position: absolute;
    z-index: 2;
    left: 120px;
    bottom: 38px
}

@media screen and (min-width: 769px) {
    .kv_headline {
        left: 6.25vw;
        bottom: 1.9791666667vw
    }
}

@media screen and (max-width: 1280px) {
    .kv_headline {
        width: calc(100% - 10vw)
    }
}

@media screen and (max-width: 768px) {
    .kv_headline {
        width: calc(100% - 12.3076923077vw);
        left: 6.1538461538vw;
        bottom: 14.358974359vw
    }
}

.kv_headline_ttl {
    color: #fff;
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-size: 16rem;
    line-height: 160px
}

@media screen and (min-width: 769px) {
    .kv_headline_ttl {
        font-size: 8.3333333333vw;
        line-height: 8.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .kv_headline_ttl {
        font-size: 12.3076923077vw;
        line-height: 12.3076923077vw
    }
}

.kv_headline_desc {
    color: #74748f;
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0);
    display: inline-block;
    position: relative;
    transition: -webkit-clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2.2s;
    transition: clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2.2s;
    transition: clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2.2s, -webkit-clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2.2s;
    font-size: 2.6rem;
    line-height: 42px;
    margin-left: 16px;
    top: -32px
}

@media screen and (min-width: 769px) {
    .kv_headline_desc {
        font-size: 1.3541666667vw;
        line-height: 2.1875vw;
        margin-left: 0.8333333333vw;
        top: -1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .kv_headline_desc {
        font-size: 3.5897435897vw;
        line-height: 6.1538461538vw;
        margin-left: 0;
        top: -11.5384615385vw;
        transition: -webkit-clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2.6s;
        transition: clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2.6s;
        transition: clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2.6s, -webkit-clip-path 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2.6s
    }
}

.loaded .kv_headline_desc {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0)
}

.kv_figure {
    position: absolute;
    z-index: 0;
    opacity: 0;
    width: 100%;
    height: 100%;
    transition: opacity 4.2s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0s, transform 4s cubic-bezier(0.25, 0.46, 0.45, 0.94) .2s
}

.loaded .kv_figure {
    opacity: 1;
    -ms-transform: scale(1.1);
    transform: scale(1.1)
}

.kv_figure_img {
    -o-object-fit: cover;
    object-fit: cover;
    display: block;
    width: 100%;
    height: 100%
}

._line {
    position: relative
}

@media screen and (max-width: 768px) {
    ._line {
        display: block
    }
}

._line ._txt {
    padding-bottom: 24px;
    color: #74748f;
}

@media screen and (min-width: 769px) {
    ._line ._txt {
        padding-bottom: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    ._line ._txt {
        padding-bottom: 6.1538461538vw
    }
}

._line:nth-child(1) ._txt:nth-child(1) {
    transition-delay: 1.43s
}

._line:nth-child(1) ._txt:nth-child(2) {
    transition-delay: 1.46s
}

._line:nth-child(1) ._txt:nth-child(3) {
    transition-delay: 1.49s
}

._line:nth-child(1) ._txt:nth-child(4) {
    transition-delay: 1.52s
}

._line:nth-child(1) ._txt:nth-child(5) {
    transition-delay: 1.55s
}

._line:nth-child(1) ._txt:nth-child(6) {
    transition-delay: 1.58s
}

._line:nth-child(1) ._txt:nth-child(7) {
    transition-delay: 1.61s
}

._line:nth-child(1) ._txt:nth-child(8) {
    transition-delay: 1.64s
}

@media screen and (max-width: 768px) {
    ._line:nth-child(2) {
        top: -6.4102564103vw
    }
}

._line:nth-child(2) ._txt:nth-child(1) {
    transition-delay: 1.53s
}

._line:nth-child(2) ._txt:nth-child(2) {
    transition-delay: 1.56s
}

._line:nth-child(2) ._txt:nth-child(3) {
    transition-delay: 1.59s
}

._line:last-child {
    top: -20px
}

@media screen and (min-width: 769px) {
    ._line:last-child {
        top: -1.0416666667vw
    }
}

@media screen and (max-width: 768px) {
    ._line:last-child {
        top: -12.3076923077vw
    }
}

._line:last-child ._txt:nth-child(1) {
    transition-delay: 1.53s
}

@media screen and (max-width: 768px) {
    ._line:last-child ._txt:nth-child(1) {
        transition-delay: 1.93s
    }
}

._line:last-child ._txt:nth-child(2) {
    transition-delay: 1.56s
}

@media screen and (max-width: 768px) {
    ._line:last-child ._txt:nth-child(2) {
        transition-delay: 1.96s
    }
}

._line:last-child ._txt:nth-child(3) {
    transition-delay: 1.59s
}

@media screen and (max-width: 768px) {
    ._line:last-child ._txt:nth-child(3) {
        transition-delay: 1.99s
    }
}

._line:last-child ._txt:nth-child(4) {
    transition-delay: 1.62s
}

@media screen and (max-width: 768px) {
    ._line:last-child ._txt:nth-child(4) {
        transition-delay: 2.02s
    }
}

._line:last-child ._txt:nth-child(5) {
    transition-delay: 1.65s
}

@media screen and (max-width: 768px) {
    ._line:last-child ._txt:nth-child(5) {
        transition-delay: 2.05s
    }
}

._line:last-child ._txt:nth-child(6) {
    transition-delay: 1.68s
}

@media screen and (max-width: 768px) {
    ._line:last-child ._txt:nth-child(6) {
        transition-delay: 2.08s
    }
}

._line:last-child ._txt:nth-child(7) {
    transition-delay: 1.71s
}

@media screen and (max-width: 768px) {
    ._line:last-child ._txt:nth-child(7) {
        transition-delay: 2.11s
    }
}

::-moz-placeholder {
    color: #bcbcbc
}

:-ms-input-placeholder {
    color: #bcbcbc
}

::placeholder {
    color: #bcbcbc
}

.form {
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
    max-width: 1280px;
    padding: 0px 40px;
    margin-bottom: 264px
}

@media screen and (min-width: 769px) {
    .form {
        max-width: 66.6666666667vw;
        padding: 0vw 2.0833333333vw;
        margin-bottom: 13.75vw
    }
}

@media screen and (max-width: 768px) {
    .form {
        padding: 0vw 6.1538461538vw 6.1538461538vw;
        margin-bottom: 30.7692307692vw
    }
}

.form_desc {
    padding-bottom: 96px
}

@media screen and (min-width: 769px) {
    .form_desc {
        padding-bottom: 5vw
    }
}

@media screen and (max-width: 768px) {
    .form_desc {
        padding-bottom: 16.4102564103vw
    }
}

.form_desc p {
    text-align: center;
    font-size: 1.8rem;
    line-height: 32px
}

@media screen and (min-width: 769px) {
    .form_desc p {
        font-size: 0.9375vw;
        line-height: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .form_desc p {
        text-align: left;
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw
    }
}

.form_area {
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
    position: relative;
    border-top: 1px solid #e4e4e9
}

.form_list {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    border-bottom: 1px solid #e4e4e9;
    box-sizing: border-box;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative;
    padding: 40px 0px
}

@media screen and (min-width: 769px) {
    .form_list {
        padding: 2.0833333333vw 0vw
    }
}

@media screen and (max-width: 768px) {
    .form_list {
        padding: 8.2051282051vw 0vw
    }
}

.form_list_ttl {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    width: 266px;
    min-height: 64px;
    margin-right: 40px
}

@media screen and (min-width: 769px) {
    .form_list_ttl {
        width: 13.8541666667vw;
        min-height: 3.3333333333vw;
        margin-right: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .form_list_ttl {
        width: 100%;
        min-height: auto;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin-bottom: 4.1025641026vw
    }
}

.form_list_box .form_list_ttl,
.confirmation .form_list_ttl {
    height: auto
}

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

    .form_list_box .form_list_ttl,
    .confirmation .form_list_ttl {
        margin-bottom: 4.1025641026vw
    }
}

.form_list_ttl_txt {
    font-weight: 500;
    display: block;
    width: 222px;
    font-size: 1.8rem;
    line-height: 32px
}

@media screen and (min-width: 769px) {
    .form_list_ttl_txt {
        width: 11.5625vw;
        font-size: 0.9375vw;
        line-height: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .form_list_ttl_txt {
        width: auto;
        font-size: 4.1025641026vw;
        line-height: 6.1538461538vw
    }
}

.form_list_ttl_txt small {
    font-weight: bold;
    font-size: 1.4rem;
    line-height: 32px
}

@media screen and (min-width: 769px) {
    .form_list_ttl_txt small {
        font-size: 0.7291666667vw;
        line-height: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .form_list_ttl_txt small {
        font-size: 3.5897435897vw;
        line-height: 6.1538461538vw
    }
}

.form_list_ttl_must {
    color: #74748f;
    border: 1px solid #74748f;
    text-align: center;
    font-weight: bold;
    white-space: nowrap;
    padding: 4px 8px;
    font-size: 1.4rem;
    line-height: 20px;
    border-radius: 4px
}

@media screen and (min-width: 769px) {
    .form_list_ttl_must {
        padding: 0.2083333333vw 0.4166666667vw;
        font-size: 0.7291666667vw;
        line-height: 1.0416666667vw;
        border-radius: 0.2083333333vw
    }
}

@media screen and (max-width: 768px) {
    .form_list_ttl_must {
        box-sizing: border-box;
        text-align: center;
        width: 10.2564102564vw;
        padding: .5128205128vw 2.0512820513vw;
        font-size: 3.0769230769vw;
        line-height: 5.1282051282vw;
        border-radius: 1.0256410256vw
    }
}

.form_list_cnt {
    width: 894px;
    font-size: 1.8rem;
    line-height: 32px;
    margin-top: 1%;
}

@media screen and (min-width: 769px) {
    .form_list_cnt {
        width: 46.5625vw;
        font-size: 0.9375vw;
        line-height: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .form_list_cnt {
        width: 100%;
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw
    }
}

.form_list_cnt.short {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center
}

@media screen and (max-width: 768px) {
    .form_list_cnt.short {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

.form_list_cnt.short .short_list {
    margin-right: 20px
}

@media screen and (min-width: 769px) {
    .form_list_cnt.short .short_list {
        margin-right: 1.0416666667vw
    }
}

@media screen and (max-width: 768px) {
    .form_list_cnt.short .short_list {
        width: 35.8974358974vw;
        margin-right: 5.1282051282vw
    }
}

.form_list_cnt.short .short_list:last-child {
    margin-right: 0
}

.form_list_cnt_ipt {
    font-size: inherit;
    box-sizing: border-box;
    border: 1px solid #e4e4e9;
    background: #fff;
    font-family: "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    width: 894px;
    height: 64px;
    font-size: 1.8rem;
    line-height: 32px;
    padding: 16px
}

@media screen and (min-width: 769px) {
    .form_list_cnt_ipt {
        width: 46.5625vw;
        height: 3.3333333333vw;
        font-size: 0.9375vw;
        line-height: 1.6666666667vw;
        padding: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .form_list_cnt_ipt {
        width: 100%;
        height: 12.8205128205vw;
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw;
        padding: 2.5641025641vw 4.1025641026vw
    }
}

.short .form_list_cnt_ipt {
    width: 240px
}

@media screen and (min-width: 769px) {
    .short .form_list_cnt_ipt {
        width: 12.5vw
    }
}

@media screen and (max-width: 768px) {
    .short .form_list_cnt_ipt {
        width: 100%;
        margin-bottom: 4.1025641026vw
    }

    .short .form_list_cnt_ipt:last-child {
        margin-bottom: 0
    }
}

.form_list_cnt_txtarea {
    border: 1px solid #e4e4e9;
    background: #fff;
    box-sizing: border-box;
    letter-spacing: 0;
    font-family: "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    width: 894px;
    height: 256px;
    padding: 16px;
    font-size: 1.8rem;
    line-height: 32px
}

@media screen and (min-width: 769px) {
    .form_list_cnt_txtarea {
        width: 46.5625vw;
        height: 13.3333333333vw;
        padding: 0.8333333333vw;
        font-size: 0.9375vw;
        line-height: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .form_list_cnt_txtarea {
        width: 100%;
        height: 44.1025641026vw;
        padding: 2.5641025641vw 4.1025641026vw;
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw
    }
}

.form_list_cnt_select {
    display: block;
    position: relative;
    width: 894px;
    height: 64px;
    padding: 16px;
    font-size: 1.8rem;
    line-height: 32px
}

@media screen and (min-width: 769px) {
    .form_list_cnt_select {
        width: 46.5625vw;
        height: 3.3333333333vw;
        padding: 0.8333333333vw;
        font-size: 0.9375vw;
        line-height: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .form_list_cnt_select {
        width: 100%;
        height: 12.8205128205vw;
        padding: 2.5641025641vw 4.1025641026vw;
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw
    }
}

.form_list_cnt_select_wrap {
    position: relative
}

.form_list_cnt_select_wrap:after {
    content: "";
    position: absolute;
    top: 50%;
    border-left: 1px solid #0c0e13;
    border-bottom: 1px solid #0c0e13;
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    width: 8px;
    height: 8px;
    right: 28px;
    margin-top: -4px
}

@media screen and (min-width: 769px) {
    .form_list_cnt_select_wrap:after {
        width: 0.4166666667vw;
        height: 0.4166666667vw;
        right: 1.4583333333vw;
        margin-top: -0.2083333333vw
    }
}

@media screen and (max-width: 768px) {
    .form_list_cnt_select_wrap:after {
        width: 2.0512820513vw;
        height: 2.0512820513vw;
        right: 5.641025641vw;
        margin-top: -1.0256410256vw
    }
}

.confirmation .form_list_cnt_select_wrap:after {
    content: none
}

.form_list_cnt_select .form_select {
    display: block;
    width: 100%;
    height: 100%
}

.form_list_cnt_select .form_select * {
    position: relative;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    border-color: inherit
}

.form_list_cnt_select .form_select ul {
    list-style: none;
    padding: 0
}

.form_list_cnt_select .form_select input {
    color: inherit;
    font: inherit;
    margin: 0;
    background: rgba(0, 0, 0, 0);
    outline: none;
    border: none;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: none
}

.form_list_cnt_select .form_select li::before {
    display: none
}

.form_list_cnt_select .form_select_box {
    width: 100%;
    cursor: pointer;
    background: #f9f9fe
}

.form_list_cnt_select .form_select_box_expand {
    width: 0;
    height: 64px;
    position: absolute;
    top: 0;
    right: 0
}

.form_list_cnt_select .form_select_box_expand:checked+.form_select_box_close_label {
    display: block
}

.form_list_cnt_select .form_select_box_expand:checked+.form_select_box_close_label+.form_select_box_options .form_select_box_label {
    height: 64px
}

.form_list_cnt_select .form_select_box_expand:checked+.form_select_box_close_label+.form_select_box_options .form_select_box_label:hover {
    background-color: #e4e4e9
}

.form_list_cnt_select .form_select_box_expand:checked+.form_select_box_close_label+.form_select_box_options+.form_select_box_expand_label::after {
    -ms-transform: translate(-50%, -50%) rotate(180deg) scaleX(-1) scaleY(1.75);
    transform: translate(-50%, -50%) rotate(180deg) scaleX(-1) scaleY(1.75)
}

.form_list_cnt_select .form_select_box_expand_label {
    display: block;
    width: 100%;
    height: 64px;
    position: absolute;
    top: 0;
    left: 0;
    cursor: pointer
}

.form_list_cnt_select .form_select_box_expand_label::after {
    position: absolute;
    top: 1.2em;
    right: .5em;
    width: 0;
    height: 0;
    padding: 0;
    content: "";
    pointer-events: none;
    border-top: 6px solid #e4e4e9;
    border-right: 6px solid rgba(0, 0, 0, 0);
    border-left: 6px solid rgba(0, 0, 0, 0);
    -ms-transform: translate(-50%, -50%) rotate(0deg) scaleY(1.75);
    transform: translate(-50%, -50%) rotate(0deg) scaleY(1.75);
    transition: all 250ms cubic-bezier(0.4, 0.25, 0.3, 1);
    z-index: 2
}

.form_list_cnt_select .form_select_box_expand_label:hover::after {
    opacity: 1
}

.form_list_cnt_select .form_select_box_close {
    display: none
}

.form_list_cnt_select .form_select_box_close_label {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    display: none
}

.form_list_cnt_select .form_select_box_items {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    border: 1px solid #e4e4e9;
    padding-top: 64px;
    z-index: 1
}

.form_list_cnt_select .form_select_box_input {
    display: none
}

.form_list_cnt_select .form_select_box_input:checked+.form_select_box_label {
    height: 64px;
    margin-top: -64px
}

.form_list_cnt_select .form_select_box_label {
    transition: all 250ms cubic-bezier(0.4, 0.25, 0.3, 1);
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    height: 0;
    overflow: hidden;
    background-color: #fff;
    cursor: pointer;
    padding: 0px 16px
}

@media screen and (min-width: 769px) {
    .form_list_cnt_select .form_select_box_label {
        padding: 0vw 0.8333333333vw
    }
}

.form_list_cnt_select .form_select_box_placeholder {
    height: 64px;
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0);
    color: #bcbcbc
}

.form_list_cnt .vertical-item {
    display: block
}

@media screen and (max-width: 768px) {
    .form_list_cnt .vertical-item>label {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
        margin-bottom: 3.0769230769vw
    }

    .form_list_cnt .vertical-item>label .mwform-radio-field-text {
        line-height: 1.6;
        letter-spacing: 0
    }
}

.form_list_cnt .note {
    display: block;
    letter-spacing: 0;
    font-size: 1.2rem;
    line-height: 24px;
    margin-top: 8px
}

@media screen and (min-width: 769px) {
    .form_list_cnt .note {
        font-size: 0.625vw;
        line-height: 1.25vw;
        margin-top: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .form_list_cnt .note {
        font-size: 3.0769230769vw;
        line-height: 4.1025641026vw;
        margin-top: 4.1025641026vw
    }
}

.form_list_cnt .other {
    margin-top: 8px
}

@media screen and (min-width: 769px) {
    .form_list_cnt .other {
        margin-top: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .form_list_cnt .other {
        margin-top: 2.0512820513vw
    }
}

.form_list_desc {
    font-size: 1.3rem;
    line-height: 24px;
    padding: 8px 0px 20px
}

@media screen and (min-width: 769px) {
    .form_list_desc {
        font-size: 0.6770833333vw;
        line-height: 1.25vw;
        padding: 0.4166666667vw 0vw 1.0416666667vw
    }
}

@media screen and (max-width: 768px) {
    .form_list_desc {
        padding: 1.2820512821vw 0vw 2.5641025641vw;
        font-size: 3.3333333333vw;
        line-height: 6.1538461538vw
    }
}

.mw_wp_form_confirm .form_list_desc {
    display: none
}

.mwform-radio-field label,
.mwform-checkbox-field label {
    position: relative;
    padding-left: 20px
}

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

    .mwform-radio-field label,
    .mwform-checkbox-field label {
        padding-left: 1.0416666667vw
    }
}

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

    .mwform-radio-field label,
    .mwform-checkbox-field label {
        padding-left: 4.6153846154vw
    }
}

.mwform-radio-field label .mwform-radio-field-text::before,
.mwform-radio-field label .mwform-radio-field-text::after,
.mwform-checkbox-field label .mwform-radio-field-text::before,
.mwform-checkbox-field label .mwform-radio-field-text::after {
    border-radius: 50%
}

.mwform-radio-field label .mwform-radio-field-text::before,
.mwform-radio-field label .mwform-radio-field-text::after,
.mwform-radio-field label .mwform-checkbox-field-text::before,
.mwform-radio-field label .mwform-checkbox-field-text::after,
.mwform-checkbox-field label .mwform-radio-field-text::before,
.mwform-checkbox-field label .mwform-radio-field-text::after,
.mwform-checkbox-field label .mwform-checkbox-field-text::before,
.mwform-checkbox-field label .mwform-checkbox-field-text::after {
    content: "";
    position: absolute;
    top: 50%;
    box-sizing: border-box
}

.mwform-radio-field label .mwform-radio-field-text::before,
.mwform-radio-field label .mwform-checkbox-field-text::before,
.mwform-checkbox-field label .mwform-radio-field-text::before,
.mwform-checkbox-field label .mwform-checkbox-field-text::before {
    background: #fff;
    border: 1px solid #3d3f48;
    left: 0;
    transition: border-color .6s cubic-bezier(0.32, 0.95, 0.6, 1);
    width: 20px;
    height: 20px;
    margin-top: -10px
}

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

    .mwform-radio-field label .mwform-radio-field-text::before,
    .mwform-radio-field label .mwform-checkbox-field-text::before,
    .mwform-checkbox-field label .mwform-radio-field-text::before,
    .mwform-checkbox-field label .mwform-checkbox-field-text::before {
        width: 1.0416666667vw;
        height: 1.0416666667vw;
        margin-top: -0.5208333333vw
    }
}

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

    .mwform-radio-field label .mwform-radio-field-text::before,
    .mwform-radio-field label .mwform-checkbox-field-text::before,
    .mwform-checkbox-field label .mwform-radio-field-text::before,
    .mwform-checkbox-field label .mwform-checkbox-field-text::before {
        width: 4.1025641026vw;
        height: 4.1025641026vw;
        margin-top: 1.2820512821vw;
        top: 0
    }
}

.mwform-radio-field label .mwform-radio-field-text::after,
.mwform-radio-field label .mwform-checkbox-field-text::after,
.mwform-checkbox-field label .mwform-radio-field-text::after,
.mwform-checkbox-field label .mwform-checkbox-field-text::after {
    transition: background .6s cubic-bezier(0.32, 0.95, 0.6, 1);
    width: 12px;
    height: 12px;
    margin-top: -6px;
    left: 4px
}

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

    .mwform-radio-field label .mwform-radio-field-text::after,
    .mwform-radio-field label .mwform-checkbox-field-text::after,
    .mwform-checkbox-field label .mwform-radio-field-text::after,
    .mwform-checkbox-field label .mwform-checkbox-field-text::after {
        width: 0.625vw;
        height: 0.625vw;
        margin-top: -0.3125vw;
        left: 0.2083333333vw
    }
}

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

    .mwform-radio-field label .mwform-radio-field-text::after,
    .mwform-radio-field label .mwform-checkbox-field-text::after,
    .mwform-checkbox-field label .mwform-radio-field-text::after,
    .mwform-checkbox-field label .mwform-checkbox-field-text::after {
        width: 2.5641025641vw;
        height: 2.5641025641vw;
        margin-top: -1.0256410256vw;
        left: .7692307692vw
    }
}

.mwform-radio-field input:checked+.mwform-radio-field-text::before,
.mwform-radio-field input:checked+.mwform-checkbox-field-text::before,
.mwform-checkbox-field input:checked+.mwform-radio-field-text::before,
.mwform-checkbox-field input:checked+.mwform-checkbox-field-text::before {
    border-color: #74748f
}

.mwform-radio-field input:checked+.mwform-radio-field-text::after,
.mwform-radio-field input:checked+.mwform-checkbox-field-text::after,
.mwform-checkbox-field input:checked+.mwform-radio-field-text::after,
.mwform-checkbox-field input:checked+.mwform-checkbox-field-text::after {
    background: #74748f
}

input[type=submit] {
    outline: 0;
    width: 100%;
    height: 100%;
    border: 0;
    letter-spacing: .1em;
    cursor: pointer;
    background: none;
    color: #0c0e13;
    font-weight: bold;
    opacity: 1;
    transition: background-color .4s;
    font-family: "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-size: 1.6rem;
    line-height: 32px
}

@media screen and (min-width: 769px) {
    input[type=submit] {
        font-size: 0.8333333333vw;
        line-height: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    input[type=submit] {
        font-size: 3.5897435897vw;
        line-height: 6.1538461538vw
    }
}

input[type=submit]:disabled {
    cursor: no-drop;
    background: #f9f9fe;
    color: rgba(122, 129, 146, .3);
    -webkit-text-fill-color: rgba(122, 129, 146, .3);
    z-index: 1
}

.error_message {
    color: #74748f;
    font-weight: bold;
    margin: 50px auto;
    margin: 50px auto
}

@media screen and (min-width: 769px) {
    .error_message {
        margin: 2.6041666667vw auto
    }
}

.error_field .form_list_cnt_ipt,
.error_field .form_list_cnt_txtarea,
.error_field .form_list_cnt_select .form_select_box_items,
.error_field .form_list_cnt_set_label::before,
.error_field .mwform-radio-field label .mwform-radio-field-text::before,
.error_field .mwform-radio-field label .mwform-checkbox-field-text::before,
.error_field .mwform-checkbox-field label .mwform-radio-field-text::before,
.error_field .mwform-checkbox-field label .mwform-checkbox-field-text::before {
    border: 2px solid #74748f
}

.error_field_msg,
.error_field .error,
.mw_wp_form .error_field .error {
    color: #74748f;
    font-weight: bold;
    padding-top: .2em
}

.more_area {
    text-align: center
}

.more_area .btn {
    margin-left: auto;
    margin-right: auto
}

.contents h1,
body.wp-editor h1 {
    position: relative;
    letter-spacing: 0;
    font-weight: 500;
    font-size: 4.4rem;
    line-height: 64px;
    margin-bottom: 64px
}

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

    .contents h1,
    body.wp-editor h1 {
        font-size: 2.2916666667vw;
        line-height: 3.3333333333vw;
        margin-bottom: 3.3333333333vw
    }
}

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

    .contents h1,
    body.wp-editor h1 {
        font-size: 6.1538461538vw;
        line-height: 9.2307692308vw;
        margin-bottom: 8.2051282051vw;
        box-sizing: border-box
    }
}

.contents h1:first-child,
body.wp-editor h1:first-child,
.contents h2:first-child,
body.wp-editor h2:first-child,
.contents h3:first-child,
body.wp-editor h3:first-child,
.contents h4:first-child,
body.wp-editor h4:first-child,
.contents h5:first-child,
body.wp-editor h5:first-child,
.contents h6:first-child,
body.wp-editor h6:first-child {
    margin-top: 0
}

.contents p,
body.wp-editor p,
.contents li,
body.wp-editor li,
.contents th,
body.wp-editor th,
.contents td,
body.wp-editor td,
.contents blockquote,
body.wp-editor blockquote,
.contents q,
body.wp-editor q {
    letter-spacing: 0;
    font-size: 1.8rem;
    line-height: 40px
}

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

    .contents p,
    body.wp-editor p,
    .contents li,
    body.wp-editor li,
    .contents th,
    body.wp-editor th,
    .contents td,
    body.wp-editor td,
    .contents blockquote,
    body.wp-editor blockquote,
    .contents q,
    body.wp-editor q {
        font-size: 0.9375vw;
        line-height: 2.0833333333vw
    }
}

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

    .contents p,
    body.wp-editor p,
    .contents li,
    body.wp-editor li,
    .contents th,
    body.wp-editor th,
    .contents td,
    body.wp-editor td,
    .contents blockquote,
    body.wp-editor blockquote,
    .contents q,
    body.wp-editor q {
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw
    }
}

.contents p a,
body.wp-editor p a,
.contents li a,
body.wp-editor li a,
.contents th a,
body.wp-editor th a,
.contents td a,
body.wp-editor td a,
.contents blockquote a,
body.wp-editor blockquote a,
.contents q a,
body.wp-editor q a {
    color: #74748f;
    text-decoration: underline
}

.contents p a:hover,
body.wp-editor p a:hover,
.contents li a:hover,
body.wp-editor li a:hover,
.contents th a:hover,
body.wp-editor th a:hover,
.contents td a:hover,
body.wp-editor td a:hover,
.contents blockquote a:hover,
body.wp-editor blockquote a:hover,
.contents q a:hover,
body.wp-editor q a:hover {
    text-decoration: none
}

.contents p a[target=_blank],
body.wp-editor p a[target=_blank],
.contents li a[target=_blank],
body.wp-editor li a[target=_blank],
.contents th a[target=_blank],
body.wp-editor th a[target=_blank],
.contents td a[target=_blank],
body.wp-editor td a[target=_blank],
.contents blockquote a[target=_blank],
body.wp-editor blockquote a[target=_blank],
.contents q a[target=_blank],
body.wp-editor q a[target=_blank] {
    position: relative;
    padding-right: 1.5em
}

.contents p a[target=_blank]:after,
body.wp-editor p a[target=_blank]:after,
.contents li a[target=_blank]:after,
body.wp-editor li a[target=_blank]:after,
.contents th a[target=_blank]:after,
body.wp-editor th a[target=_blank]:after,
.contents td a[target=_blank]:after,
body.wp-editor td a[target=_blank]:after,
.contents blockquote a[target=_blank]:after,
body.wp-editor blockquote a[target=_blank]:after,
.contents q a[target=_blank]:after,
body.wp-editor q a[target=_blank]:after {
    content: "Ã¢â€ â€™";
    -ms-transform: rotate(-45deg) translate(0, -50%);
    transform: rotate(-45deg) translate(0, -50%);
    -ms-transform-origin: center center;
    transform-origin: center center;
    position: absolute;
    color: inherit;
    top: 50%;
    right: 0;
    width: 1em;
    height: 1em;
    font-size: 1em;
    line-height: 1em
}

.contents p:last-child,
body.wp-editor p:last-child,
.contents li:last-child,
body.wp-editor li:last-child,
.contents th:last-child,
body.wp-editor th:last-child,
.contents td:last-child,
body.wp-editor td:last-child,
.contents blockquote:last-child,
body.wp-editor blockquote:last-child,
.contents q:last-child,
body.wp-editor q:last-child {
    margin-bottom: 0
}

.contents p:not(:last-child),
body.wp-editor p:not(:last-child),
.contents ul:not(:last-child),
body.wp-editor ul:not(:last-child),
.contents ol:not(:last-child),
body.wp-editor ol:not(:last-child),
.contents table:not(:last-child),
body.wp-editor table:not(:last-child),
.contents blockquote:not(:last-child),
body.wp-editor blockquote:not(:last-child),
.contents q:not(:last-child),
body.wp-editor q:not(:last-child) {
    margin-bottom: 16px
}

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

    .contents p:not(:last-child),
    body.wp-editor p:not(:last-child),
    .contents ul:not(:last-child),
    body.wp-editor ul:not(:last-child),
    .contents ol:not(:last-child),
    body.wp-editor ol:not(:last-child),
    .contents table:not(:last-child),
    body.wp-editor table:not(:last-child),
    .contents blockquote:not(:last-child),
    body.wp-editor blockquote:not(:last-child),
    .contents q:not(:last-child),
    body.wp-editor q:not(:last-child) {
        margin-bottom: 0.8333333333vw
    }
}

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

    .contents p:not(:last-child),
    body.wp-editor p:not(:last-child),
    .contents ul:not(:last-child),
    body.wp-editor ul:not(:last-child),
    .contents ol:not(:last-child),
    body.wp-editor ol:not(:last-child),
    .contents table:not(:last-child),
    body.wp-editor table:not(:last-child),
    .contents blockquote:not(:last-child),
    body.wp-editor blockquote:not(:last-child),
    .contents q:not(:last-child),
    body.wp-editor q:not(:last-child) {
        margin-bottom: 4.1025641026vw
    }
}

.contents li,
body.wp-editor li {
    position: relative;
    padding-left: 28px;
    font-size: 1.8rem;
    line-height: 32px
}

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

    .contents li,
    body.wp-editor li {
        padding-left: 1.4583333333vw;
        font-size: 0.9375vw;
        line-height: 1.6666666667vw
    }
}

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

    .contents li,
    body.wp-editor li {
        padding-left: 6.1538461538vw;
        font-size: 3.8461538462vw;
        line-height: 6.1538461538vw
    }
}

.contents li:not(:last-child),
body.wp-editor li:not(:last-child) {
    margin-bottom: 16px
}

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

    .contents li:not(:last-child),
    body.wp-editor li:not(:last-child) {
        margin-bottom: 0.8333333333vw
    }
}

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

    .contents li:not(:last-child),
    body.wp-editor li:not(:last-child) {
        margin-bottom: 4.1025641026vw
    }
}

.contents li>ul,
body.wp-editor li>ul,
.contents li>ol,
body.wp-editor li>ol {
    padding-top: 0
}

.contents ul,
body.wp-editor ul {
    padding: 24px 16px
}

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

    .contents ul,
    body.wp-editor ul {
        padding: 1.25vw 0.8333333333vw
    }
}

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

    .contents ul,
    body.wp-editor ul {
        padding: 6.1538461538vw 2.0512820513vw
    }
}

.contents ul>li:before,
body.wp-editor ul>li:before {
    content: "";
    background: #74748f;
    border-radius: 50%;
    position: absolute;
    left: 0;
    width: 8px;
    height: 8px;
    top: 12px;
    left: 0px
}

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

    .contents ul>li:before,
    body.wp-editor ul>li:before {
        width: 0.4166666667vw;
        height: 0.4166666667vw;
        top: 0.625vw;
        left: 0vw
    }
}

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

    .contents ul>li:before,
    body.wp-editor ul>li:before {
        width: 2.0512820513vw;
        height: 2.0512820513vw;
        top: 2.3076923077vw;
        left: 0vw
    }
}

.contents ol,
body.wp-editor ol {
    counter-reset: number;
    padding: 24px 16px
}

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

    .contents ol,
    body.wp-editor ol {
        padding: 1.25vw 0.8333333333vw
    }
}

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

    .contents ol,
    body.wp-editor ol {
        padding: 6.1538461538vw 2.0512820513vw
    }
}

.contents ol>li,
body.wp-editor ol>li {
    counter-increment: number
}

.contents ol>li:before,
body.wp-editor ol>li:before {
    content: counter(number);
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    position: absolute;
    left: 0;
    letter-spacing: 0;
    color: #74748f;
    top: 4px;
    left: 0px;
    font-size: 1.8rem;
    line-height: 24px
}

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

    .contents ol>li:before,
    body.wp-editor ol>li:before {
        top: 0.2083333333vw;
        left: 0vw;
        font-size: 0.9375vw;
        line-height: 1.25vw
    }
}

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

    .contents ol>li:before,
    body.wp-editor ol>li:before {
        top: 1.0256410256vw;
        left: 0vw;
        font-size: 3.8461538462vw;
        line-height: 3.8461538462vw
    }
}

.contents ul ul,
body.wp-editor ul ul,
.contents ul ol,
body.wp-editor ul ol,
.contents ol ul,
body.wp-editor ol ul,
.contents ol ol,
body.wp-editor ol ol {
    margin-top: 16px;
    margin-bottom: 16px
}

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

    .contents ul ul,
    body.wp-editor ul ul,
    .contents ul ol,
    body.wp-editor ul ol,
    .contents ol ul,
    body.wp-editor ol ul,
    .contents ol ol,
    body.wp-editor ol ol {
        margin-top: 0.8333333333vw;
        margin-bottom: 0.8333333333vw
    }
}

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

    .contents ul ul,
    body.wp-editor ul ul,
    .contents ul ol,
    body.wp-editor ul ol,
    .contents ol ul,
    body.wp-editor ol ul,
    .contents ol ol,
    body.wp-editor ol ol {
        margin-top: 4.1025641026vw;
        margin-bottom: 4.1025641026vw
    }
}

.contents .table,
body.wp-editor .table {
    width: 100%
}

.contents .table_row,
body.wp-editor .table_row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-flow: nowrap;
    flex-flow: nowrap
}

.contents .table_column,
body.wp-editor .table_column {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    border: 1px solid #e4e4e9;
    box-sizing: border-box;
    padding: 4px 4px
}

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

    .contents .table_column,
    body.wp-editor .table_column {
        padding: 0.2083333333vw 0.2083333333vw
    }
}

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

    .contents .table_column,
    body.wp-editor .table_column {
        padding: 1.0256410256vw 1.0256410256vw
    }
}

.contents table,
body.wp-editor table {
    width: 100%;
    min-width: 100%;
    height: 100%;
    border-top: solid 1px #e4e4e9;
    border-left: solid 1px #e4e4e9;
    font-family: system-ui, "Hiragino Sans", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    position: relative
}

.contents table thead,
body.wp-editor table thead {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1
}

.contents table th,
body.wp-editor table th,
.contents table td,
body.wp-editor table td {
    font-family: system-ui, "Hiragino Sans", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    white-space: nowrap
}

.contents table th,
body.wp-editor table th {
    font-weight: bold;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    background: #7a8192;
    color: #fff;
    vertical-align: middle;
    font-size: 1.4rem;
    line-height: 18px;
    padding: 8px 16px
}

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

    .contents table th,
    body.wp-editor table th {
        font-size: 0.7291666667vw;
        line-height: 0.9375vw;
        padding: 0.4166666667vw 0.8333333333vw
    }
}

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

    .contents table th,
    body.wp-editor table th {
        font-size: 3.3333333333vw;
        line-height: 5.641025641vw;
        padding: 2.0512820513vw 1.5384615385vw
    }
}

.contents table td,
body.wp-editor table td {
    border-right: 1px solid #e4e4e9;
    border-bottom: 1px solid #e4e4e9;
    font-size: 1.4rem;
    line-height: 16px;
    padding: 8px 16px
}

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

    .contents table td,
    body.wp-editor table td {
        font-size: 0.7291666667vw;
        line-height: 0.8333333333vw;
        padding: 0.4166666667vw 0.8333333333vw
    }
}

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

    .contents table td,
    body.wp-editor table td {
        font-size: 3.3333333333vw;
        line-height: 4.1025641026vw;
        padding: 2.0512820513vw 1.5384615385vw
    }
}

.contents .table_wrap,
body.wp-editor .table_wrap {
    width: 100%;
    position: relative;
    overflow: scroll;
    box-sizing: border-box;
    margin-bottom: 32px;
    max-height: 400px
}

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

    .contents .table_wrap,
    body.wp-editor .table_wrap {
        margin-bottom: 1.6666666667vw;
        max-height: 20.8333333333vw
    }
}

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

    .contents .table_wrap,
    body.wp-editor .table_wrap {
        margin-bottom: 8.2051282051vw;
        max-height: 102.5641025641vw
    }
}

.contents .table_wrap .scroll-hint-icon,
body.wp-editor .table_wrap .scroll-hint-icon {
    left: calc(50% - 80px);
    width: 160px;
    height: 100px;
    padding: 30px 10px 10px 10px;
    top: 150px
}

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

    .contents .table_wrap .scroll-hint-icon,
    body.wp-editor .table_wrap .scroll-hint-icon {
        top: 7.8125vw
    }
}

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

    .contents .table_wrap .scroll-hint-icon,
    body.wp-editor .table_wrap .scroll-hint-icon {
        top: 38.4615384615vw
    }
}

.contents .table_wrap .scroll-hint-icon-wrap:after,
body.wp-editor .table_wrap .scroll-hint-icon-wrap:after {
    top: 14px
}

.contents .table_wrap .scroll-hint-icon-white .scroll-hint-text,
body.wp-editor .table_wrap .scroll-hint-icon-white .scroll-hint-text {
    font-family: "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    color: #0c0e13;
    font-weight: bold
}

.contents strong,
body.wp-editor strong {
    font-weight: bold
}

.contents blockquote,
body.wp-editor blockquote,
.contents q,
body.wp-editor q,
.contents .quote,
body.wp-editor .quote {
    position: relative;
    display: inline-block;
    color: #74748f;
    font-weight: bold;
    padding: 40px 24px 32px 40px
}

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

    .contents blockquote,
    body.wp-editor blockquote,
    .contents q,
    body.wp-editor q,
    .contents .quote,
    body.wp-editor .quote {
        padding: 2.0833333333vw 1.25vw 1.6666666667vw 2.0833333333vw
    }
}

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

    .contents blockquote,
    body.wp-editor blockquote,
    .contents q,
    body.wp-editor q,
    .contents .quote,
    body.wp-editor .quote {
        padding: 10.2564102564vw 4.1025641026vw 4.1025641026vw 4.1025641026vw
    }
}

.contents blockquote:before,
body.wp-editor blockquote:before,
.contents q:before,
body.wp-editor q:before,
.contents .quote:before,
body.wp-editor .quote:before {
    content: "";
    position: absolute;
    background-image: url("../image/quote_l.svg");
    background-size: contain;
    width: 24px;
    height: 24px;
    top: 16px;
    left: 16px
}

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

    .contents blockquote:before,
    body.wp-editor blockquote:before,
    .contents q:before,
    body.wp-editor q:before,
    .contents .quote:before,
    body.wp-editor .quote:before {
        width: 1.25vw;
        height: 1.25vw;
        top: 0.8333333333vw;
        left: 0.8333333333vw
    }
}

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

    .contents blockquote:before,
    body.wp-editor blockquote:before,
    .contents q:before,
    body.wp-editor q:before,
    .contents .quote:before,
    body.wp-editor .quote:before {
        width: 6.1538461538vw;
        height: 6.1538461538vw;
        top: 2.0512820513vw;
        left: 2.0512820513vw
    }
}

.contents blockquote>p,
body.wp-editor blockquote>p,
.contents q>p,
body.wp-editor q>p,
.contents .quote>p,
body.wp-editor .quote>p {
    color: #7a8192;
    font-family: "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-size: 1.6rem;
    line-height: 32px;
    margin-bottom: 12px
}

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

    .contents blockquote>p,
    body.wp-editor blockquote>p,
    .contents q>p,
    body.wp-editor q>p,
    .contents .quote>p,
    body.wp-editor .quote>p {
        font-size: 0.8333333333vw;
        line-height: 1.6666666667vw;
        margin-bottom: 0.625vw
    }
}

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

    .contents blockquote>p,
    body.wp-editor blockquote>p,
    .contents q>p,
    body.wp-editor q>p,
    .contents .quote>p,
    body.wp-editor .quote>p {
        font-size: 3.8461538462vw;
        line-height: 6.1538461538vw;
        margin-bottom: 4.1025641026vw
    }
}

.contents blockquote>p:last-child,
body.wp-editor blockquote>p:last-child,
.contents q>p:last-child,
body.wp-editor q>p:last-child,
.contents .quote>p:last-child,
body.wp-editor .quote>p:last-child {
    margin-bottom: 0
}

.contents blockquote .quote_from,
body.wp-editor blockquote .quote_from,
.contents q .quote_from,
body.wp-editor q .quote_from,
.contents .quote .quote_from,
body.wp-editor .quote .quote_from {
    font-family: "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    color: #74748f;
    font-size: 1.2rem;
    line-height: 18px
}

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

    .contents blockquote .quote_from,
    body.wp-editor blockquote .quote_from,
    .contents q .quote_from,
    body.wp-editor q .quote_from,
    .contents .quote .quote_from,
    body.wp-editor .quote .quote_from {
        font-size: 0.625vw;
        line-height: 0.9375vw
    }
}

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

    .contents blockquote .quote_from,
    body.wp-editor blockquote .quote_from,
    .contents q .quote_from,
    body.wp-editor q .quote_from,
    .contents .quote .quote_from,
    body.wp-editor .quote .quote_from {
        font-size: 3.0769230769vw;
        line-height: 4.6153846154vw
    }
}

.contents .wp-caption,
body.wp-editor .wp-caption {
    max-width: 100%;
    margin-bottom: 48px
}

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

    .contents .wp-caption,
    body.wp-editor .wp-caption {
        margin-bottom: 2.5vw
    }
}

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

    .contents .wp-caption,
    body.wp-editor .wp-caption {
        margin-bottom: 10.2564102564vw
    }
}

.contents .wp-caption img,
body.wp-editor .wp-caption img {
    margin-bottom: 16px
}

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

    .contents .wp-caption img,
    body.wp-editor .wp-caption img {
        margin-bottom: 0.8333333333vw
    }
}

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

    .contents .wp-caption img,
    body.wp-editor .wp-caption img {
        margin-bottom: 4.1025641026vw
    }
}

.contents .wp-caption-text,
body.wp-editor .wp-caption-text {
    color: #e4e4e9;
    font-size: 1.4rem;
    line-height: 24px
}

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

    .contents .wp-caption-text,
    body.wp-editor .wp-caption-text {
        font-size: 0.7291666667vw;
        line-height: 1.25vw
    }
}

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

    .contents .wp-caption-text,
    body.wp-editor .wp-caption-text {
        font-size: 3.5897435897vw;
        line-height: 6.1538461538vw
    }
}

.contents_ttl {
    position: relative;
    padding-bottom: 64px
}

@media screen and (min-width: 769px) {
    .contents_ttl {
        padding-bottom: 3.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .contents_ttl {
        padding-bottom: 8.2051282051vw
    }
}

.contents_ttl p {
    text-align: center;
    font-size: 1.8rem;
    line-height: 40px
}

@media screen and (min-width: 769px) {
    .contents_ttl p {
        font-size: 0.9375vw;
        line-height: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .contents_ttl p {
        font-size: 4.1025641026vw;
        line-height: 9.2307692308vw
    }
}

.contents #toc_container,
body.wp-editor #toc_container {
    margin-bottom: 80px
}

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

    .contents #toc_container,
    body.wp-editor #toc_container {
        margin-bottom: 4.1666666667vw
    }
}

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

    .contents #toc_container,
    body.wp-editor #toc_container {
        margin-bottom: 16.4102564103vw
    }
}

.contents #toc_container+h1,
body.wp-editor #toc_container+h1,
.contents #toc_container+h2,
body.wp-editor #toc_container+h2,
.contents #toc_container+h3,
body.wp-editor #toc_container+h3,
.contents #toc_container+h4,
body.wp-editor #toc_container+h4,
.contents #toc_container+h5,
body.wp-editor #toc_container+h5,
.contents #toc_container+h6,
body.wp-editor #toc_container+h6,
.contents #toc_container+p,
body.wp-editor #toc_container+p,
.contents #toc_container+ul,
body.wp-editor #toc_container+ul,
.contents #toc_container+ol,
body.wp-editor #toc_container+ol,
.contents #toc_container+table,
body.wp-editor #toc_container+table,
.contents #toc_container+blockquote,
body.wp-editor #toc_container+blockquote,
.contents #toc_container+q,
body.wp-editor #toc_container+q {
    margin-top: 0px
}

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

    .contents #toc_container+h1,
    body.wp-editor #toc_container+h1,
    .contents #toc_container+h2,
    body.wp-editor #toc_container+h2,
    .contents #toc_container+h3,
    body.wp-editor #toc_container+h3,
    .contents #toc_container+h4,
    body.wp-editor #toc_container+h4,
    .contents #toc_container+h5,
    body.wp-editor #toc_container+h5,
    .contents #toc_container+h6,
    body.wp-editor #toc_container+h6,
    .contents #toc_container+p,
    body.wp-editor #toc_container+p,
    .contents #toc_container+ul,
    body.wp-editor #toc_container+ul,
    .contents #toc_container+ol,
    body.wp-editor #toc_container+ol,
    .contents #toc_container+table,
    body.wp-editor #toc_container+table,
    .contents #toc_container+blockquote,
    body.wp-editor #toc_container+blockquote,
    .contents #toc_container+q,
    body.wp-editor #toc_container+q {
        margin-top: 0vw
    }
}

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

    .contents #toc_container+h1,
    body.wp-editor #toc_container+h1,
    .contents #toc_container+h2,
    body.wp-editor #toc_container+h2,
    .contents #toc_container+h3,
    body.wp-editor #toc_container+h3,
    .contents #toc_container+h4,
    body.wp-editor #toc_container+h4,
    .contents #toc_container+h5,
    body.wp-editor #toc_container+h5,
    .contents #toc_container+h6,
    body.wp-editor #toc_container+h6,
    .contents #toc_container+p,
    body.wp-editor #toc_container+p,
    .contents #toc_container+ul,
    body.wp-editor #toc_container+ul,
    .contents #toc_container+ol,
    body.wp-editor #toc_container+ol,
    .contents #toc_container+table,
    body.wp-editor #toc_container+table,
    .contents #toc_container+blockquote,
    body.wp-editor #toc_container+blockquote,
    .contents #toc_container+q,
    body.wp-editor #toc_container+q {
        margin-top: 0
    }
}

.contents .contents_post,
body.wp-editor .contents_post {
    width: 100%;
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 792px;
    padding: 96px 40px 0px
}

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

    .contents .contents_post,
    body.wp-editor .contents_post {
        max-width: 41.25vw;
        padding: 5vw 2.0833333333vw 0vw
    }
}

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

    .contents .contents_post,
    body.wp-editor .contents_post {
        max-width: 100%;
        padding: 12.3076923077vw 0vw 0vw
    }
}

.contents .contents_post .insert_list,
body.wp-editor .contents_post .insert_list {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #e4e4e9;
    margin-bottom: 48px
}

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

    .contents .contents_post .insert_list,
    body.wp-editor .contents_post .insert_list {
        margin-bottom: 2.5vw
    }
}

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

    .contents .contents_post .insert_list,
    body.wp-editor .contents_post .insert_list {
        margin-bottom: 8.2051282051vw
    }
}

.contents .contents_post .insert_list_info,
body.wp-editor .contents_post .insert_list_info {
    width: auto
}

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

    .contents .contents_post .insert_list_info,
    body.wp-editor .contents_post .insert_list_info {
        box-sizing: border-box;
        width: 100%
    }
}

.contents .contents_post .insert_list_thumb,
body.wp-editor .contents_post .insert_list_thumb {
    -ms-flex-order: -1;
    order: -1;
    overflow: hidden;
    box-sizing: border-box;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    background: #74748f;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 184px;
    height: 184px;
    margin-right: 24px
}

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

    .contents .contents_post .insert_list_thumb,
    body.wp-editor .contents_post .insert_list_thumb {
        width: 9.5833333333vw;
        height: 9.5833333333vw;
        margin-right: 1.25vw
    }
}

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

    .contents .contents_post .insert_list_thumb,
    body.wp-editor .contents_post .insert_list_thumb {
        width: 69.4871794872vw;
        height: 69.4871794872vw;
        margin-right: 0;
        margin-bottom: 4.1025641026vw
    }
}

.contents .contents_post .insert_list_thumb img,
body.wp-editor .contents_post .insert_list_thumb img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform .6s cubic-bezier(0.32, 0.95, 0.6, 1)
}

.contents .contents_post .insert_list_link,
body.wp-editor .contents_post .insert_list_link {
    transition: background-color .6s cubic-bezier(0.32, 0.95, 0.6, 1);
    box-sizing: border-box;
    position: relative;
    padding: 24px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

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

    .contents .contents_post .insert_list_link,
    body.wp-editor .contents_post .insert_list_link {
        padding: 1.25vw
    }
}

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

    .contents .contents_post .insert_list_link,
    body.wp-editor .contents_post .insert_list_link {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-align: start;
        align-items: flex-start;
        padding: 4.1025641026vw
    }
}

.contents .contents_post .insert_list_link:hover,
body.wp-editor .contents_post .insert_list_link:hover {
    background: #fff
}

.contents .contents_post .insert_list_link:hover .insert_list_thumb img,
body.wp-editor .contents_post .insert_list_link:hover .insert_list_thumb img {
    -ms-transform: scale(1.08);
    transform: scale(1.08)
}

.contents .contents_post .insert_list_ttl,
body.wp-editor .contents_post .insert_list_ttl {
    width: 100%;
    font-family: "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 24px;
    margin-bottom: 16px
}

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

    .contents .contents_post .insert_list_ttl,
    body.wp-editor .contents_post .insert_list_ttl {
        font-size: 0.8333333333vw;
        line-height: 1.25vw;
        margin-bottom: 0.8333333333vw
    }
}

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

    .contents .contents_post .insert_list_ttl,
    body.wp-editor .contents_post .insert_list_ttl {
        font-size: 3.8461538462vw;
        line-height: 6.1538461538vw;
        margin-bottom: 2.0512820513vw
    }
}

.contents .contents_post .insert_list_excerpt,
body.wp-editor .contents_post .insert_list_excerpt {
    width: 100%;
    transition: .6s cubic-bezier(0.32, 0.95, 0.6, 1);
    font-size: 1.4rem;
    line-height: 24px
}

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

    .contents .contents_post .insert_list_excerpt,
    body.wp-editor .contents_post .insert_list_excerpt {
        font-size: 0.7291666667vw;
        line-height: 1.25vw
    }
}

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

    .contents .contents_post .insert_list_excerpt,
    body.wp-editor .contents_post .insert_list_excerpt {
        font-size: 3.3333333333vw;
        line-height: 5.1282051282vw
    }

    .contents .contents_post .insert_list_excerpt br,
    body.wp-editor .contents_post .insert_list_excerpt br {
        display: none
    }
}

.contents .contents_post .insert_product_list .insert_list_thumb,
body.wp-editor .contents_post .insert_product_list .insert_list_thumb {
    width: 136px;
    height: 136px
}

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

    .contents .contents_post .insert_product_list .insert_list_thumb,
    body.wp-editor .contents_post .insert_product_list .insert_list_thumb {
        width: 7.0833333333vw;
        height: 7.0833333333vw
    }
}

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

    .contents .contents_post .insert_product_list .insert_list_thumb,
    body.wp-editor .contents_post .insert_product_list .insert_list_thumb {
        width: 20.5128205128vw;
        height: 20.5128205128vw
    }
}

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

    .contents .contents_post .insert_product_list .insert_list_ttl,
    body.wp-editor .contents_post .insert_product_list .insert_list_ttl {
        width: calc(100% - 32.8205128205vw);
        height: 20.5128205128vw;
        position: absolute;
        top: 4.1025641026vw;
        right: 4.1025641026vw;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: center;
        align-items: center
    }
}

.contents .contents_post .insert_card,
body.wp-editor .contents_post .insert_card {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 40px
}

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

    .contents .contents_post .insert_card,
    body.wp-editor .contents_post .insert_card {
        margin-bottom: 2.0833333333vw
    }
}

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

    .contents .contents_post .insert_card,
    body.wp-editor .contents_post .insert_card {
        margin-bottom: 8.2051282051vw
    }
}

.contents .contents_post .insert_card_item,
body.wp-editor .contents_post .insert_card_item {
    box-sizing: border-box;
    border: 1px solid #e4e4e9;
    width: 356px
}

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

    .contents .contents_post .insert_card_item,
    body.wp-editor .contents_post .insert_card_item {
        width: 18.5416666667vw
    }
}

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

    .contents .contents_post .insert_card_item,
    body.wp-editor .contents_post .insert_card_item {
        width: 41.0256410256vw
    }
}

.contents .contents_post .insert_card_item_link,
body.wp-editor .contents_post .insert_card_item_link {
    transition: .6s cubic-bezier(0.32, 0.95, 0.6, 1);
    height: 100%;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 16px
}

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

    .contents .contents_post .insert_card_item_link,
    body.wp-editor .contents_post .insert_card_item_link {
        padding: 0.8333333333vw
    }
}

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

    .contents .contents_post .insert_card_item_link,
    body.wp-editor .contents_post .insert_card_item_link {
        padding: 3.0769230769vw
    }
}

.contents .contents_post .insert_card_item_link:hover,
body.wp-editor .contents_post .insert_card_item_link:hover {
    background: #fff
}

.contents .contents_post .insert_card_item_link:hover .insert_card_excerpt,
body.wp-editor .contents_post .insert_card_item_link:hover .insert_card_excerpt {
    background: #fff
}

.contents .contents_post .insert_card_item_link:hover .insert_card_excerpt:before,
body.wp-editor .contents_post .insert_card_item_link:hover .insert_card_excerpt:before {
    background-position: 100% 0;
    background-size: 200% 100%
}

.contents .contents_post .insert_card_item_link:hover .insert_card_thumb img,
body.wp-editor .contents_post .insert_card_item_link:hover .insert_card_thumb img {
    -ms-transform: scale(1.08);
    transform: scale(1.08)
}

.contents .contents_post .insert_card_thumb,
body.wp-editor .contents_post .insert_card_thumb {
    -ms-flex-order: -1;
    order: -1;
    overflow: hidden;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    width: 324px;
    height: 182px;
    margin-bottom: 12px
}

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

    .contents .contents_post .insert_card_thumb,
    body.wp-editor .contents_post .insert_card_thumb {
        width: 16.875vw;
        height: 9.4791666667vw;
        margin-bottom: 0.625vw
    }
}

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

    .contents .contents_post .insert_card_thumb,
    body.wp-editor .contents_post .insert_card_thumb {
        width: 34.8717948718vw;
        height: 19.4871794872vw;
        margin-bottom: 1.5384615385vw
    }
}

.contents .contents_post .insert_card_thumb img,
body.wp-editor .contents_post .insert_card_thumb img {
    display: block;
    width: 100%;
    height: auto;
    transition: .6s cubic-bezier(0.32, 0.95, 0.6, 1)
}

.contents .contents_post .insert_card_ttl,
body.wp-editor .contents_post .insert_card_ttl {
    width: 100%;
    font-family: "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 28px;
    margin-bottom: 8px
}

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

    .contents .contents_post .insert_card_ttl,
    body.wp-editor .contents_post .insert_card_ttl {
        font-size: 0.8333333333vw;
        line-height: 1.4583333333vw;
        margin-bottom: 0.4166666667vw
    }
}

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

    .contents .contents_post .insert_card_ttl,
    body.wp-editor .contents_post .insert_card_ttl {
        font-size: 3.5897435897vw;
        line-height: 6.1538461538vw;
        margin-bottom: 1.5384615385vw
    }
}

.contents .contents_post .insert_card_excerpt,
body.wp-editor .contents_post .insert_card_excerpt {
    width: 100%;
    font-size: 1.4rem;
    position: relative;
    line-height: 1.714285714;
    max-height: calc(1.714285714em * 3);
    overflow: hidden;
    background: #fff
}

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

    .contents .contents_post .insert_card_excerpt,
    body.wp-editor .contents_post .insert_card_excerpt {
        font-size: 0.7291666667vw
    }
}

.contents .contents_post .insert_card_excerpt_txt,
body.wp-editor .contents_post .insert_card_excerpt_txt {
    font-weight: inherit;
    margin-right: 1em
}

.contents .contents_post .insert_card_excerpt:before,
body.wp-editor .contents_post .insert_card_excerpt:before {
    content: "Ã¢â‚¬Â¦";
    bottom: 0;
    right: 0;
    position: absolute;
    color: #000;
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 30%);
    padding-left: 1em;
    transition: .6s cubic-bezier(0.32, 0.95, 0.6, 1)
}

.contents .contents_post .insert_card_excerpt:after,
body.wp-editor .contents_post .insert_card_excerpt:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    background: #fff
}

.contents .contents_post .insert_card_excerpt:before,
body.wp-editor .contents_post .insert_card_excerpt:before {
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 15%, rgb(255, 255, 255) 50%, rgba(243, 246, 252, 0) 51%, rgb(243, 246, 252) 80%, rgb(243, 246, 252) 100%);
    background-position: 200% 0;
    background-size: 200% 100%
}

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

    .contents .contents_post .insert_card_excerpt,
    body.wp-editor .contents_post .insert_card_excerpt {
        font-size: 2.5641025641vw;
        line-height: 3.5897435897vw;
        position: relative;
        line-height: 1.4;
        max-height: calc(1.4em * 2);
        overflow: hidden;
        background: #fff
    }

    .contents .contents_post .insert_card_excerpt_txt,
    body.wp-editor .contents_post .insert_card_excerpt_txt {
        font-weight: inherit;
        margin-right: 1em
    }

    .contents .contents_post .insert_card_excerpt:before,
    body.wp-editor .contents_post .insert_card_excerpt:before {
        content: "Ã¢â‚¬Â¦";
        bottom: 0;
        right: 0;
        position: absolute;
        color: #000;
        background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 30%);
        padding-left: 1em;
        transition: .6s cubic-bezier(0.32, 0.95, 0.6, 1)
    }

    .contents .contents_post .insert_card_excerpt:after,
    body.wp-editor .contents_post .insert_card_excerpt:after {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        background: #fff
    }

    .contents .contents_post .insert_card_excerpt br,
    body.wp-editor .contents_post .insert_card_excerpt br {
        display: none
    }
}

.contents .contents_post .purchase,
body.wp-editor .contents_post .purchase {
    width: 100%;
    background: #fff;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-flow: column;
    flex-flow: column;
    box-sizing: border-box;
    padding: 32px;
    margin-bottom: 48px
}

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

    .contents .contents_post .purchase,
    body.wp-editor .contents_post .purchase {
        padding: 1.6666666667vw;
        margin-bottom: 2.5vw
    }
}

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

    .contents .contents_post .purchase,
    body.wp-editor .contents_post .purchase {
        width: 100vw;
        -ms-transform: translateX(-9.2307692308vw);
        transform: translateX(-9.2307692308vw);
        padding: 8.2051282051vw 9.2307692308vw;
        margin-bottom: 8.2051282051vw
    }
}

.contents .contents_post .purchase_ttl,
body.wp-editor .contents_post .purchase_ttl {
    font-family: "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-weight: 300;
    font-size: 2rem;
    line-height: 28px;
    margin-bottom: 16px
}

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

    .contents .contents_post .purchase_ttl,
    body.wp-editor .contents_post .purchase_ttl {
        font-size: 1.0416666667vw;
        line-height: 1.4583333333vw;
        margin-bottom: 0.8333333333vw
    }
}

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

    .contents .contents_post .purchase_ttl,
    body.wp-editor .contents_post .purchase_ttl {
        font-size: 4.1025641026vw;
        line-height: 6.1538461538vw;
        margin-bottom: 4.1025641026vw
    }
}

.contents .contents_post .purchase .btn_round_link,
body.wp-editor .contents_post .purchase .btn_round_link {
    background: #e4e4e9;
    color: #fff
}

.contents .contents_post .purchase .btn_round_link .btn_round_link_txt,
body.wp-editor .contents_post .purchase .btn_round_link .btn_round_link_txt {
    animation: TEXT-MASK-OVER .3s cubic-bezier(0.23, 1, 0.32, 1) 0s forwards;
    background-color: rgba(0, 0, 0, 0);
    background-image: linear-gradient(to right, #ffffff 50%, #74748f 0);
    background-position: 200% 0;
    background-size: 200% 100%;
    -webkit-text-fill-color: rgba(0, 0, 0, 0);
    -webkit-background-clip: text
}

.contents .contents_post .purchase .btn_round_link:hover .btn_round_link_txt,
body.wp-editor .contents_post .purchase .btn_round_link:hover .btn_round_link_txt {
    animation: TEXT-MASK .3s cubic-bezier(0.23, 1, 0.32, 1) .1s forwards
}

.contents .contents_post .purchase .btn_round_link .ico_arw path,
body.wp-editor .contents_post .purchase .btn_round_link .ico_arw path {
    stroke: #fff;
    transition: stroke .6s cubic-bezier(0.32, 0.95, 0.6, 1)
}

.contents .contents_post .purchase .btn_round_link .ico_ec path,
body.wp-editor .contents_post .purchase .btn_round_link .ico_ec path {
    stroke: #fff;
    transition: stroke .6s cubic-bezier(0.32, 0.95, 0.6, 1)
}

.contents .contents_post .purchase .btn_round_link:hover .ico_arw path,
body.wp-editor .contents_post .purchase .btn_round_link:hover .ico_arw path {
    stroke: #74748f
}

.contents .contents_post .purchase .btn_round_link:hover .ico_ec path,
body.wp-editor .contents_post .purchase .btn_round_link:hover .ico_ec path {
    stroke: #74748f
}

.contents .contents_post .article_index,
body.wp-editor .contents_post .article_index,
.contents .contents_post .no_bullets,
body.wp-editor .contents_post .no_bullets {
    width: 100%;
    border: 1px solid #e4e4e9;
    box-sizing: border-box;
    padding: 32px
}

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

    .contents .contents_post .article_index,
    body.wp-editor .contents_post .article_index,
    .contents .contents_post .no_bullets,
    body.wp-editor .contents_post .no_bullets {
        padding: 1.6666666667vw
    }
}

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

    .contents .contents_post .article_index,
    body.wp-editor .contents_post .article_index,
    .contents .contents_post .no_bullets,
    body.wp-editor .contents_post .no_bullets {
        padding: 4.1025641026vw
    }
}

.contents .contents_post .article_index .toc_title,
body.wp-editor .contents_post .article_index .toc_title,
.contents .contents_post .no_bullets .toc_title,
body.wp-editor .contents_post .no_bullets .toc_title {
    letter-spacing: .05em;
    font-family: "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-size: 2.4rem;
    line-height: 24px;
    margin-bottom: 24px
}

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

    .contents .contents_post .article_index .toc_title,
    body.wp-editor .contents_post .article_index .toc_title,
    .contents .contents_post .no_bullets .toc_title,
    body.wp-editor .contents_post .no_bullets .toc_title {
        font-size: 1.25vw;
        line-height: 1.25vw;
        margin-bottom: 1.25vw
    }
}

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

    .contents .contents_post .article_index .toc_title,
    body.wp-editor .contents_post .article_index .toc_title,
    .contents .contents_post .no_bullets .toc_title,
    body.wp-editor .contents_post .no_bullets .toc_title {
        font-size: 4.6153846154vw;
        line-height: 6.1538461538vw;
        margin-bottom: 4.1025641026vw
    }
}

.contents .contents_post .article_index .toc_list li:before,
body.wp-editor .contents_post .article_index .toc_list li:before,
.contents .contents_post .no_bullets .toc_list li:before,
body.wp-editor .contents_post .no_bullets .toc_list li:before {
    content: none
}

.contents .contents_post .article_index .toc_list li a,
body.wp-editor .contents_post .article_index .toc_list li a,
.contents .contents_post .no_bullets .toc_list li a,
body.wp-editor .contents_post .no_bullets .toc_list li a {
    text-decoration: none;
    color: #0c0e13;
    font-size: 1.6rem;
    line-height: 28px
}

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

    .contents .contents_post .article_index .toc_list li a,
    body.wp-editor .contents_post .article_index .toc_list li a,
    .contents .contents_post .no_bullets .toc_list li a,
    body.wp-editor .contents_post .no_bullets .toc_list li a {
        font-size: 0.8333333333vw;
        line-height: 1.4583333333vw
    }
}

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

    .contents .contents_post .article_index .toc_list li a,
    body.wp-editor .contents_post .article_index .toc_list li a,
    .contents .contents_post .no_bullets .toc_list li a,
    body.wp-editor .contents_post .no_bullets .toc_list li a {
        font-size: 3.8461538462vw;
        line-height: 6.1538461538vw
    }
}

.contents .contents_post .article_index .toc_list li a:hover,
body.wp-editor .contents_post .article_index .toc_list li a:hover,
.contents .contents_post .no_bullets .toc_list li a:hover,
body.wp-editor .contents_post .no_bullets .toc_list li a:hover {
    text-decoration: underline
}

.contents .contents_post .article_index .toc_list>li,
body.wp-editor .contents_post .article_index .toc_list>li,
.contents .contents_post .no_bullets .toc_list>li,
body.wp-editor .contents_post .no_bullets .toc_list>li {
    padding-left: 0;
    border-bottom: 1px solid #fff;
    padding-bottom: 20px;
    margin-bottom: 20px
}

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

    .contents .contents_post .article_index .toc_list>li,
    body.wp-editor .contents_post .article_index .toc_list>li,
    .contents .contents_post .no_bullets .toc_list>li,
    body.wp-editor .contents_post .no_bullets .toc_list>li {
        padding-bottom: 1.0416666667vw;
        margin-bottom: 1.0416666667vw
    }
}

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

    .contents .contents_post .article_index .toc_list>li,
    body.wp-editor .contents_post .article_index .toc_list>li,
    .contents .contents_post .no_bullets .toc_list>li,
    body.wp-editor .contents_post .no_bullets .toc_list>li {
        padding-bottom: 4.1025641026vw;
        margin-bottom: 4.1025641026vw
    }
}

.contents .contents_post .article_index .toc_list>li:last-child,
body.wp-editor .contents_post .article_index .toc_list>li:last-child,
.contents .contents_post .no_bullets .toc_list>li:last-child,
body.wp-editor .contents_post .no_bullets .toc_list>li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0
}

.contents .contents_post .article_index .toc_list>li>ul,
body.wp-editor .contents_post .article_index .toc_list>li>ul,
.contents .contents_post .no_bullets .toc_list>li>ul,
body.wp-editor .contents_post .no_bullets .toc_list>li>ul {
    margin-top: 12px;
    margin-bottom: 20px
}

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

    .contents .contents_post .article_index .toc_list>li>ul,
    body.wp-editor .contents_post .article_index .toc_list>li>ul,
    .contents .contents_post .no_bullets .toc_list>li>ul,
    body.wp-editor .contents_post .no_bullets .toc_list>li>ul {
        margin-top: 0.625vw;
        margin-bottom: 1.0416666667vw
    }
}

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

    .contents .contents_post .article_index .toc_list>li>ul,
    body.wp-editor .contents_post .article_index .toc_list>li>ul,
    .contents .contents_post .no_bullets .toc_list>li>ul,
    body.wp-editor .contents_post .no_bullets .toc_list>li>ul {
        margin-top: 3.0769230769vw;
        margin-bottom: 4.1025641026vw
    }
}

.contents .contents_post .article_index .toc_list>li>ul:last-child,
body.wp-editor .contents_post .article_index .toc_list>li>ul:last-child,
.contents .contents_post .no_bullets .toc_list>li>ul:last-child,
body.wp-editor .contents_post .no_bullets .toc_list>li>ul:last-child {
    margin-bottom: 0
}

.contents .contents_post .article_index .toc_list>li>ul>li,
body.wp-editor .contents_post .article_index .toc_list>li>ul>li,
.contents .contents_post .no_bullets .toc_list>li>ul>li,
body.wp-editor .contents_post .no_bullets .toc_list>li>ul>li {
    margin-bottom: 8px;
    padding-left: 16px
}

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

    .contents .contents_post .article_index .toc_list>li>ul>li,
    body.wp-editor .contents_post .article_index .toc_list>li>ul>li,
    .contents .contents_post .no_bullets .toc_list>li>ul>li,
    body.wp-editor .contents_post .no_bullets .toc_list>li>ul>li {
        margin-bottom: 0.4166666667vw;
        padding-left: 0.8333333333vw
    }
}

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

    .contents .contents_post .article_index .toc_list>li>ul>li,
    body.wp-editor .contents_post .article_index .toc_list>li>ul>li,
    .contents .contents_post .no_bullets .toc_list>li>ul>li,
    body.wp-editor .contents_post .no_bullets .toc_list>li>ul>li {
        margin-bottom: 2.0512820513vw;
        padding-left: 4.1025641026vw
    }
}

.contents .contents_post .article_index .toc_list>li>ul>li:last-child,
body.wp-editor .contents_post .article_index .toc_list>li>ul>li:last-child,
.contents .contents_post .no_bullets .toc_list>li>ul>li:last-child,
body.wp-editor .contents_post .no_bullets .toc_list>li>ul>li:last-child {
    margin-bottom: 0
}

.contents .contents_post .article_index .toc_list>li>ul>li a,
body.wp-editor .contents_post .article_index .toc_list>li>ul>li a,
.contents .contents_post .no_bullets .toc_list>li>ul>li a,
body.wp-editor .contents_post .no_bullets .toc_list>li>ul>li a {
    font-size: 1.4rem;
    line-height: 24px
}

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

    .contents .contents_post .article_index .toc_list>li>ul>li a,
    body.wp-editor .contents_post .article_index .toc_list>li>ul>li a,
    .contents .contents_post .no_bullets .toc_list>li>ul>li a,
    body.wp-editor .contents_post .no_bullets .toc_list>li>ul>li a {
        font-size: 0.7291666667vw;
        line-height: 1.25vw
    }
}

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

    .contents .contents_post .article_index .toc_list>li>ul>li a,
    body.wp-editor .contents_post .article_index .toc_list>li>ul>li a,
    .contents .contents_post .no_bullets .toc_list>li>ul>li a,
    body.wp-editor .contents_post .no_bullets .toc_list>li>ul>li a {
        font-size: 6.1538461538vw;
        line-height: 6.1538461538vw
    }
}

.contents .contents_post .article_index .toc_list>li>ul>li a:hover,
body.wp-editor .contents_post .article_index .toc_list>li>ul>li a:hover,
.contents .contents_post .no_bullets .toc_list>li>ul>li a:hover,
body.wp-editor .contents_post .no_bullets .toc_list>li>ul>li a:hover {
    text-decoration: underline
}

.contents_intro {
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
    position: relative;
    max-width: 1280px;
    padding: 0px 40px 64px;
    margin-bottom: 176px;
    font-size: 1.8rem;
    line-height: 40px
}

@media screen and (min-width: 769px) {
    .contents_intro {
        max-width: 66.6666666667vw;
        padding: 0vw 2.0833333333vw 3.3333333333vw;
        margin-bottom: 9.1666666667vw;
        font-size: 0.9375vw;
        line-height: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .contents_intro {
        max-width: 100%;
        padding: 0vw 6.1538461538vw 12.3076923077vw;
        margin-bottom: 24.6153846154vw;
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw
    }
}

.contents_intro:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    border-bottom: 1px solid #e4e4e9;
    width: 1200px;
    margin-left: -600px
}

@media screen and (min-width: 769px) {
    .contents_intro:after {
        width: 62.5vw;
        margin-left: -31.25vw
    }
}

@media screen and (max-width: 768px) {
    .contents_intro:after {
        width: 87.6923076923vw;
        margin-left: -43.8461538462vw
    }
}

.contents_intro h2 {
    margin-top: 0;
    margin-bottom: 0
}

.contents .standard,
body.wp-editor .standard {
    border-top: 1px solid #e4e4e9;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: stretch;
    align-items: stretch;
    font-size: 1.8rem;
    line-height: 40px;
    padding-top: 24px
}

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

    .contents .standard,
    body.wp-editor .standard {
        font-size: 0.9375vw;
        line-height: 2.0833333333vw;
        padding-top: 1.25vw
    }
}

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

    .contents .standard,
    body.wp-editor .standard {
        display: block;
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw;
        padding-top: 6.1538461538vw
    }
}

.contents .standard_list,
body.wp-editor .standard_list {
    width: 30%;
    box-sizing: border-box;
    border-bottom: 1px solid #e4e4e9
}

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

    .contents .standard_list,
    body.wp-editor .standard_list {
        margin-left: 3.3%;
        border-bottom: 0
    }

    .contents .standard_list:nth-child(1),
    body.wp-editor .standard_list:nth-child(1) {
        margin-left: 0
    }
}

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

    .contents .standard_list,
    body.wp-editor .standard_list {
        width: 100%;
        padding-bottom: 3.0769230769vw;
        margin-bottom: 6.1538461538vw
    }
}

.contents .standard_list:last-child,
body.wp-editor .standard_list:last-child {
    margin-bottom: 0
}

.contents .standard_ttl,
body.wp-editor .standard_ttl {
    font-weight: bold
}

.contents .standard_data,
body.wp-editor .standard_data {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start
}

.contents .standard_data_ttl,
body.wp-editor .standard_data_ttl {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    padding: 10px 0px
}

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

    .contents .standard_data_ttl,
    body.wp-editor .standard_data_ttl {
        padding: 0.5208333333vw 0vw
    }
}

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

    .contents .standard_data_ttl,
    body.wp-editor .standard_data_ttl {
        padding: 3.0769230769vw 0vw
    }
}

.contents .standard_data_list,
body.wp-editor .standard_data_list {
    width: 100%;
    padding: 0
}

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

    .contents .standard_data_list,
    body.wp-editor .standard_data_list {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: start;
        align-items: flex-start;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 0vw;
        padding-left: 3.0769230769vw
    }
}

.contents .standard_data_list_item,
body.wp-editor .standard_data_list_item {
    width: 100%;
    border-bottom: 1px solid #e4e4e9;
    box-sizing: border-box;
    margin-bottom: 0;
    padding: 12px 12px
}

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

    .contents .standard_data_list_item,
    body.wp-editor .standard_data_list_item {
        padding: 0.625vw 0.625vw
    }
}

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

    .contents .standard_data_list_item,
    body.wp-editor .standard_data_list_item {
        width: 50%;
        padding: 3.0769230769vw 3.0769230769vw
    }

    .contents .standard_data_list_item:nth-last-child(2),
    body.wp-editor .standard_data_list_item:nth-last-child(2),
    .contents .standard_data_list_item:last-child,
    body.wp-editor .standard_data_list_item:last-child {
        border-bottom: 0
    }
}

.contents .standard_data_list_item:not(:last-child),
body.wp-editor .standard_data_list_item:not(:last-child) {
    margin-bottom: 0
}

.contents .standard_data_list_item::before,
body.wp-editor .standard_data_list_item::before {
    content: none
}

.contents .standard_data_list_item:nth-child(1),
body.wp-editor .standard_data_list_item:nth-child(1),
.contents .standard_data_list_item:nth-child(2),
body.wp-editor .standard_data_list_item:nth-child(2) {
    border-bottom: 1px solid #e4e4e9
}

.post_tags {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 48px;
    margin-bottom: 56px
}

@media screen and (min-width: 769px) {
    .post_tags {
        margin-top: 2.5vw;
        margin-bottom: 2.9166666667vw
    }
}

@media screen and (max-width: 768px) {
    .post_tags {
        box-sizing: border-box;
        padding: 0vw 9.2307692308vw;
        margin-top: 8.2051282051vw;
        margin-bottom: 6.1538461538vw
    }
}

.post_tags .post_tag {
    border: 1px solid #e4e4e9;
    border-radius: 16px;
    margin-right: 8px;
    margin-bottom: 8px
}

@media screen and (min-width: 769px) {
    .post_tags .post_tag {
        border-radius: 0.8333333333vw;
        margin-right: 0.4166666667vw;
        margin-bottom: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .post_tags .post_tag {
        border-radius: 4.1025641026vw;
        margin-right: 2.0512820513vw;
        margin-bottom: 2.0512820513vw
    }
}

.post_tags .post_tag a {
    letter-spacing: 0;
    display: -ms-flexbox;
    display: flex;
    padding: 8px 16px;
    font-size: 1.2rem;
    line-height: 16px
}

@media screen and (min-width: 769px) {
    .post_tags .post_tag a {
        padding: 0.4166666667vw 0.8333333333vw;
        font-size: 0.625vw;
        line-height: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .post_tags .post_tag a {
        padding: 1.0256410256vw 2.0512820513vw;
        font-size: 3.0769230769vw;
        line-height: 4.1025641026vw
    }
}

.post_sns {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center
}

@media screen and (max-width: 768px) {
    .post_sns {
        box-sizing: border-box;
        padding: 0vw 9.2307692308vw;
        -ms-flex-flow: column;
        flex-flow: column;
        -ms-flex-align: start;
        align-items: flex-start
    }
}

.post_sns_share {
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    letter-spacing: .05em;
    font-weight: 400;
    border-right: 1px solid #e4e4e9;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    padding: 16px 32px 16px 0px;
    font-size: 2rem;
    line-height: 24px;
    margin-right: 32px
}

@media screen and (min-width: 769px) {
    .post_sns_share {
        padding: 0.8333333333vw 1.6666666667vw 0.8333333333vw 0vw;
        font-size: 1.0416666667vw;
        line-height: 1.25vw;
        margin-right: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .post_sns_share {
        width: 100%;
        padding: 0;
        font-size: 4.6153846154vw;
        line-height: 6.1538461538vw;
        margin-right: 0;
        margin-bottom: 2.0512820513vw;
        border-right: 0
    }
}

.post_sns_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.post_sns_list_item {
    margin-right: 32px
}

@media screen and (min-width: 769px) {
    .post_sns_list_item {
        margin-right: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .post_sns_list_item {
        margin-right: 6.1538461538vw
    }
}

.post_sns_list_item_link {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    padding: 12px 8px
}

@media screen and (min-width: 769px) {
    .post_sns_list_item_link {
        padding: 0.625vw 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .post_sns_list_item_link {
        padding: 2.5641025641vw 0vw
    }
}

.post_sns_list_item_link img {
    width: 20px;
    height: 20px
}

@media screen and (min-width: 769px) {
    .post_sns_list_item_link img {
        width: 1.0416666667vw;
        height: 1.0416666667vw
    }
}

@media screen and (max-width: 768px) {
    .post_sns_list_item_link img {
        width: 5.1282051282vw;
        height: 5.1282051282vw
    }
}

.post_sns_list_item_link:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: #e4e4e9;
    transition: width .4s cubic-bezier(0.23, 1, 0.32, 1)
}

.post_sns_list_item_link:hover:before {
    width: 0;
    left: auto;
    right: 0
}

.post_sns_list_item_txt {
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-weight: 300;
    letter-spacing: .05em;
    font-size: 1.8rem;
    line-height: 32px;
    margin-left: 4px
}

@media screen and (min-width: 769px) {
    .post_sns_list_item_txt {
        font-size: 0.9375vw;
        line-height: 1.6666666667vw;
        margin-left: 0.2083333333vw
    }
}

@media screen and (max-width: 768px) {
    .post_sns_list_item_txt {
        font-size: 4.1025641026vw;
        line-height: 6.1538461538vw;
        margin-left: 1.0256410256vw
    }
}

.inner_contents {
    margin: 0 auto;
    width: 904px
}

@media screen and (min-width: 769px) {
    .inner_contents {
        width: 47.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .inner_contents {
        width: 87.6923076923vw
    }
}

.inner_contents p,
.inner_contents li {
    letter-spacing: 0;
    font-size: 1.6rem;
    line-height: 40px
}

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

    .inner_contents p,
    .inner_contents li {
        font-size: 0.8333333333vw;
        line-height: 2.0833333333vw
    }
}

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

    .inner_contents p,
    .inner_contents li {
        font-size: 3.8461538462vw;
        line-height: 9.7435897436vw
    }
}

.inner_contents p:not(:last-child),
.inner_contents ul:not(:last-child),
.inner_contents ol:not(:last-child) {
    margin-bottom: 40px
}

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

    .inner_contents p:not(:last-child),
    .inner_contents ul:not(:last-child),
    .inner_contents ol:not(:last-child) {
        margin-bottom: 2.0833333333vw
    }
}

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

    .inner_contents p:not(:last-child),
    .inner_contents ul:not(:last-child),
    .inner_contents ol:not(:last-child) {
        margin-bottom: 9.7435897436vw
    }
}

.inner_contents li {
    position: relative;
    padding-left: 16px
}

@media screen and (min-width: 769px) {
    .inner_contents li {
        padding-left: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .inner_contents li {
        padding-left: 4.1025641026vw
    }
}

.inner_contents li:before {
    content: "";
    background: #74748f;
    border-radius: 50%;
    position: absolute;
    left: 0;
    width: 8px;
    height: 8px;
    top: 8px
}

@media screen and (min-width: 769px) {
    .inner_contents li:before {
        width: 0.4166666667vw;
        height: 0.4166666667vw;
        top: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .inner_contents li:before {
        width: 2.0512820513vw;
        height: 2.0512820513vw;
        top: 2.0512820513vw
    }
}

.inner_contents li:not(:last-child) {
    margin-bottom: 8px
}

@media screen and (min-width: 769px) {
    .inner_contents li:not(:last-child) {
        margin-bottom: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .inner_contents li:not(:last-child) {
        margin-bottom: 2.0512820513vw
    }
}

.inner_contents .btn {
    margin-top: 80px
}

@media screen and (min-width: 769px) {
    .inner_contents .btn {
        margin-top: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .inner_contents .btn {
        margin-top: 20.5128205128vw
    }
}

.post_meta {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-order: -1;
    order: -1;
    box-sizing: border-box;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 64px
}

@media screen and (min-width: 769px) {
    .post_meta {
        margin-bottom: 3.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .post_meta {
        width: 100%;
        margin-bottom: 16.4102564103vw
    }
}

.post_meta_date {
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    letter-spacing: .1em;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    margin-right: 24px;
    font-size: 1.6rem;
    line-height: 24px
}

@media screen and (min-width: 769px) {
    .post_meta_date {
        margin-right: 1.25vw;
        font-size: 0.8333333333vw;
        line-height: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .post_meta_date {
        font-size: 3.3333333333vw;
        line-height: 4.6153846154vw;
        margin-right: 6.1538461538vw
    }
}

.post_meta_cat {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.contents_wrap .post_meta_cat:not(:last-child) {
    margin-bottom: 0
}

.post_meta_cat .cat {
    letter-spacing: 0;
    position: relative;
    color: #74748f;
    font-weight: bold;
    text-decoration: none;
    margin-right: 24px;
    font-size: 1.6rem;
    line-height: 24px
}

@media screen and (min-width: 769px) {
    .post_meta_cat .cat {
        margin-right: 1.25vw;
        font-size: 0.8333333333vw;
        line-height: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .post_meta_cat .cat {
        margin-right: 4.1025641026vw;
        font-size: 3.3333333333vw;
        line-height: 4.6153846154vw
    }
}

.post_meta_cat .cat:last-child {
    margin-right: 0
}

.post_meta_cat .cat:hover {
    text-decoration: underline
}

.post_meta_tag {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 24px
}

@media screen and (min-width: 769px) {
    .post_meta_tag {
        margin-top: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .post_meta_tag {
        width: 100%;
        margin-top: 4.1025641026vw;
        margin-left: 0
    }
}

.contents_wrap .post_meta_tag:not(:last-child) {
    margin-bottom: 0
}

.post_meta_tag .tag {
    letter-spacing: 0;
    position: relative;
    color: #7a8192;
    text-decoration: none;
    margin-right: 24px;
    font-size: 1.6rem;
    line-height: 24px
}

@media screen and (min-width: 769px) {
    .post_meta_tag .tag {
        margin-right: 1.25vw;
        font-size: 0.8333333333vw;
        line-height: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .post_meta_tag .tag {
        margin-right: 4.1025641026vw;
        font-size: 3.3333333333vw;
        line-height: 4.6153846154vw
    }
}

.post_meta_tag .tag:last-child {
    margin-right: 0
}

.post_meta_tag .tag:hover {
    text-decoration: underline
}

.post_figure {
    width: 100%;
    margin-bottom: 96px
}

@media screen and (min-width: 769px) {
    .post_figure {
        margin-bottom: 5vw
    }
}

@media screen and (max-width: 768px) {
    .post_figure {
        margin-bottom: 16.4102564103vw
    }
}

.post_figure_img {
    width: 100%;
    height: auto;
    display: block
}

.related .ttl_underline {
    margin-top: 0;
    box-sizing: border-box
}

@media screen and (max-width: 768px) {
    .related .ttl_underline {
        width: 77.6923076923vw;
        margin-left: auto;
        margin-right: auto
    }
}

@media screen and (max-width: 768px) {
    .related .swiper {
        width: 100%;
        padding-left: 9.2307692308vw
    }
}

.related .box_card,
.related .box_card_link,
.related .box_card_thumb {
    width: 240px
}

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

    .related .box_card,
    .related .box_card_link,
    .related .box_card_thumb {
        width: 12.5vw
    }
}

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

    .related .box_card,
    .related .box_card_link,
    .related .box_card_thumb {
        width: 36.9230769231vw
    }
}

.related .box_card_thumb {
    margin-bottom: 16px
}

@media screen and (min-width: 769px) {
    .related .box_card_thumb {
        margin-bottom: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .related .box_card_thumb {
        margin-bottom: 2.0512820513vw
    }
}

.related .box_card_desc_ttl {
    font-size: 1.4rem;
    line-height: 20px
}

@media screen and (min-width: 769px) {
    .related .box_card_desc_ttl {
        font-size: 0.7291666667vw;
        line-height: 1.0416666667vw
    }
}

@media screen and (max-width: 768px) {
    .related .box_card_desc_ttl {
        font-size: 3.5897435897vw;
        line-height: 5.1282051282vw
    }
}

.related .time,
.related .tag {
    font-size: 1.4rem;
    line-height: 20px
}

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

    .related .time,
    .related .tag {
        font-size: 0.7291666667vw;
        line-height: 1.0416666667vw
    }
}

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

    .related .time,
    .related .tag {
        font-size: 3.5897435897vw;
        line-height: 5.1282051282vw
    }
}

.related .price {
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    letter-spacing: .05em;
    font-size: 1.6rem;
    line-height: 20px
}

@media screen and (min-width: 769px) {
    .related .price {
        font-size: 0.8333333333vw;
        line-height: 1.0416666667vw
    }
}

@media screen and (max-width: 768px) {
    .related .price {
        font-size: 4.1025641026vw;
        line-height: 5.1282051282vw
    }
}

.related .price small {
    font-size: 1.2rem;
    line-height: 20px;
    margin-left: 6px
}

@media screen and (min-width: 769px) {
    .related .price small {
        font-size: 0.625vw;
        line-height: 1.0416666667vw;
        margin-left: 0.3125vw
    }
}

@media screen and (max-width: 768px) {
    .related .price small {
        font-size: 3.0769230769vw;
        line-height: 5.1282051282vw;
        margin-left: 1.5384615385vw
    }
}

.related_product {
    margin-bottom: 80px
}

@media screen and (min-width: 769px) {
    .related_product {
        margin-bottom: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .related_product {
        margin-bottom: 12.3076923077vw
    }
}

.related_product .box_card_thumb {
    height: 240px
}

@media screen and (min-width: 769px) {
    .related_product .box_card_thumb {
        height: 12.5vw
    }
}

@media screen and (max-width: 768px) {
    .related_product .box_card_thumb {
        height: 36.9230769231vw
    }
}

.related_product .box_card_desc {
    height: auto;
    margin-bottom: 8px
}

@media screen and (min-width: 769px) {
    .related_product .box_card_desc {
        margin-bottom: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .related_product .box_card_desc {
        margin-bottom: 1.0256410256vw
    }
}

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

    .related_article .box_card,
    .related_article .box_card_link {
        width: 61.5384615385vw
    }
}

.related_article .box_card_thumb {
    height: 240px
}

@media screen and (min-width: 769px) {
    .related_article .box_card_thumb {
        height: 12.5vw
    }
}

@media screen and (max-width: 768px) {
    .related_article .box_card_thumb {
        width: 61.5384615385vw;
        height: 61.5384615385vw
    }
}

.related_article .box_card_desc {
    height: 40px;
    margin-bottom: 16px
}

@media screen and (min-width: 769px) {
    .related_article .box_card_desc {
        height: 2.0833333333vw;
        margin-bottom: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .related_article .box_card_desc {
        height: 10.2564102564vw;
        margin-bottom: 2.0512820513vw
    }
}

.related .swiper-scrollbar {
    position: relative;
    width: 100%;
    height: 5px
}

@media screen and (min-width: 769px) {
    .related .swiper-scrollbar {
        height: 0.2604166667vw
    }
}

@media screen and (max-width: 768px) {
    .related .swiper-scrollbar {
        width: 100%;
        height: 1.2820512821vw;
        margin-left: 0;
        margin-top: -.2564102564vw
    }
}

.related .swiper-scrollbar:before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    background: #fff;
    height: 1px;
    top: 2.5px
}

@media screen and (min-width: 769px) {
    .related .swiper-scrollbar:before {
        height: 0.0520833333vw;
        top: 0.1302083333vw
    }
}

@media screen and (max-width: 768px) {
    .related .swiper-scrollbar:before {
        height: .2564102564vw;
        top: .15625vw
    }
}

.related .swiper-scrollbar-drag {
    cursor: pointer;
    position: relative;
    height: 5px
}

@media screen and (min-width: 769px) {
    .related .swiper-scrollbar-drag {
        height: 0.2604166667vw
    }
}

@media screen and (max-width: 768px) {
    .related .swiper-scrollbar-drag {
        height: 1.2820512821vw
    }
}

.related .swiper-scrollbar-drag:before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    background: #74748f;
    height: 1px;
    top: 2.5px
}

@media screen and (min-width: 769px) {
    .related .swiper-scrollbar-drag:before {
        height: 0.0520833333vw;
        top: 0.1302083333vw
    }
}

@media screen and (max-width: 768px) {
    .related .swiper-scrollbar-drag:before {
        height: .2564102564vw;
        top: .15625vw
    }
}

body.wp-editor {
    box-sizing: border-box;
    padding: 20px !important
}

.archive_list {
    width: 100%;
    box-sizing: border-box
}

.archive_list_item {
    box-sizing: border-box;
    border-top: 1px solid #e4e4e9
}

.archive_list_item:last-child {
    border-bottom: 1px solid #e4e4e9
}

.archive_list_item_link {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative;
    padding-top: 48px;
    padding-bottom: 128px
}

@media screen and (min-width: 769px) {
    .archive_list_item_link {
        padding-top: 2.5vw;
        padding-bottom: 6.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .archive_list_item_link {
        padding-top: 8.2051282051vw;
        padding-bottom: 20.5128205128vw;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

.archive_list_item .tags {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: auto;
    margin-bottom: 8px
}

@media screen and (min-width: 769px) {
    .archive_list_item .tags {
        margin-bottom: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .archive_list_item .tags {
        margin-top: 0
    }
}

.archive_list_item .btn_circle {
    position: absolute;
    right: 0;
    bottom: 48px
}

@media screen and (min-width: 769px) {
    .archive_list_item .btn_circle {
        bottom: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .archive_list_item .btn_circle {
        bottom: 8.2051282051vw
    }
}

.archive_list_item_link:hover .title {
    text-decoration: underline
}

.archive_card {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start
}

.tag,
.tag_blank {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    display: inline-block;
    transition: background-color .6s cubic-bezier(0.32, 0.95, 0.6, 1), color .6s cubic-bezier(0.32, 0.95, 0.6, 1);
    color: #74748f;
    font-size: 1.6rem;
    line-height: 24px
}

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

    .tag,
    .tag_blank {
        font-size: 0.8333333333vw;
        line-height: 1.25vw
    }
}

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

    .tag,
    .tag_blank {
        font-size: 3.3333333333vw;
        line-height: 4.6153846154vw
    }
}

.time {
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    color: #7a8192;
    font-size: 1.6rem;
    line-height: 24px;
    margin-right: 24px
}

@media screen and (min-width: 769px) {
    .time {
        font-size: 0.8333333333vw;
        line-height: 1.25vw;
        margin-right: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .time {
        font-size: 3.3333333333vw;
        line-height: 4.6153846154vw;
        margin-right: 6.1538461538vw
    }
}

.title {
    width: 100%;
    display: block;
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 32px;
    margin-top: 24px
}

@media screen and (min-width: 769px) {
    .title {
        font-size: 0.9375vw;
        line-height: 1.6666666667vw;
        margin-top: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .title {
        font-weight: bold;
        font-size: 3.8461538462vw;
        line-height: 6.1538461538vw;
        margin-top: 6.1538461538vw
    }
}

[data-scroll-section] {
    will-change: transform
}

.clip_txt,
._l {
    will-change: clip-path, opacity, transform;
    -webkit-clip-path: inset(0% 0% 100% 0%);
    clip-path: inset(0% 0% 100% 0%);
    opacity: 0;
    transition: opacity 2.6s cubic-bezier(0.16, 1, 0.3, 1), -webkit-clip-path .8s cubic-bezier(0.32, 0.95, 0.6, 1) .2s;
    transition: clip-path .8s cubic-bezier(0.32, 0.95, 0.6, 1) .2s, opacity 2.6s cubic-bezier(0.16, 1, 0.3, 1);
    transition: clip-path .8s cubic-bezier(0.32, 0.95, 0.6, 1) .2s, opacity 2.6s cubic-bezier(0.16, 1, 0.3, 1), -webkit-clip-path .8s cubic-bezier(0.32, 0.95, 0.6, 1) .2s
}

.clip_txt.is-active,
._l.is-active {
    -webkit-clip-path: inset(0% 0% 0% 0%);
    clip-path: inset(0% 0% 0% 0%);
    opacity: 1
}

.clip_circle img {
    will-change: clip-path, opacity, transform;
    -ms-transform: translateY(50px);
    transform: translateY(50px);
    -webkit-clip-path: circle(0% at 50% 10%);
    clip-path: circle(0% at 50% 10%);
    opacity: 0;
    transition: opacity 2.6s cubic-bezier(0.16, 1, 0.3, 1), transform 2.6s cubic-bezier(0.16, 1, 0.3, 1), -webkit-clip-path .8s cubic-bezier(0.32, 0.95, 0.6, 1);
    transition: clip-path .8s cubic-bezier(0.32, 0.95, 0.6, 1), opacity 2.6s cubic-bezier(0.16, 1, 0.3, 1), transform 2.6s cubic-bezier(0.16, 1, 0.3, 1);
    transition: clip-path .8s cubic-bezier(0.32, 0.95, 0.6, 1), opacity 2.6s cubic-bezier(0.16, 1, 0.3, 1), transform 2.6s cubic-bezier(0.16, 1, 0.3, 1), -webkit-clip-path .8s cubic-bezier(0.32, 0.95, 0.6, 1)
}

.clip_circle.is-active img {
    -webkit-clip-path: circle(50% at 50% 50%);
    clip-path: circle(50% at 50% 50%);
    opacity: 1;
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.clip_figure img {
    will-change: clip-path, opacity, transform;
    -ms-transform: translateY(50px);
    transform: translateY(50px);
    -webkit-clip-path: inset(100% 0% 0% 0%);
    clip-path: inset(100% 0% 0% 0%);
    opacity: 0;
    transition: opacity 2.6s cubic-bezier(0.16, 1, 0.3, 1), transform 2.6s cubic-bezier(0.16, 1, 0.3, 1), -webkit-clip-path 1.2s cubic-bezier(0.32, 0.95, 0.6, 1);
    transition: clip-path 1.2s cubic-bezier(0.32, 0.95, 0.6, 1), opacity 2.6s cubic-bezier(0.16, 1, 0.3, 1), transform 2.6s cubic-bezier(0.16, 1, 0.3, 1);
    transition: clip-path 1.2s cubic-bezier(0.32, 0.95, 0.6, 1), opacity 2.6s cubic-bezier(0.16, 1, 0.3, 1), transform 2.6s cubic-bezier(0.16, 1, 0.3, 1), -webkit-clip-path 1.2s cubic-bezier(0.32, 0.95, 0.6, 1)
}

.clip_figure.clip_down img {
    -webkit-clip-path: inset(0% 0% 100% 0%);
    clip-path: inset(0% 0% 100% 0%);
    -ms-transform: translateY(-50px);
    transform: translateY(-50px)
}

.clip_figure.is-active img {
    -webkit-clip-path: inset(0% 0% 0% 0%);
    clip-path: inset(0% 0% 0% 0%);
    opacity: 1;
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.vs-pax {
    will-change: transform;
    transition: none
}

.nowrap {
    white-space: nowrap
}

.js-txt-up {
    opacity: 0
}

.is-active .js-txt-up,
.js-txt-up.is-active {
    opacity: 1
}

._txt {
    will-change: transform, opacity;
    display: inline-block;
    font-weight: inherit;
    opacity: 0;
    -ms-transform: translateY(80%);
    transform: translateY(80%);
    -webkit-clip-path: inset(0% 0% 0% 100%);
    clip-path: inset(0% 0% 0% 100%);
    transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1), transform 1s cubic-bezier(0.19, 1, 0.22, 1), -webkit-clip-path 1s cubic-bezier(0.19, 1, 0.22, 1);
    transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1), clip-path 1s cubic-bezier(0.19, 1, 0.22, 1), transform 1s cubic-bezier(0.19, 1, 0.22, 1);
    transition: opacity 1s cubic-bezier(0.19, 1, 0.22, 1), clip-path 1s cubic-bezier(0.19, 1, 0.22, 1), transform 1s cubic-bezier(0.19, 1, 0.22, 1), -webkit-clip-path 1s cubic-bezier(0.19, 1, 0.22, 1);
}

._txt:nth-child(1) {
    transition-delay: .03s
}

._txt:nth-child(2) {
    transition-delay: .06s
}

._txt:nth-child(3) {
    transition-delay: .09s
}

._txt:nth-child(4) {
    transition-delay: .12s
}

._txt:nth-child(5) {
    transition-delay: .15s
}

._txt:nth-child(6) {
    transition-delay: .18s
}

._txt:nth-child(7) {
    transition-delay: .21s
}

._txt:nth-child(8) {
    transition-delay: .24s
}

._txt:nth-child(9) {
    transition-delay: .27s
}

._txt:nth-child(10) {
    transition-delay: .3s
}

._txt:nth-child(11) {
    transition-delay: .33s
}

._txt:nth-child(12) {
    transition-delay: .36s
}

._txt:nth-child(13) {
    transition-delay: .39s
}

._txt:nth-child(14) {
    transition-delay: .42s
}

._txt:nth-child(15) {
    transition-delay: .45s
}

._txt:nth-child(16) {
    transition-delay: .48s
}

._txt:nth-child(17) {
    transition-delay: .51s
}

._txt:nth-child(18) {
    transition-delay: .54s
}

._txt:nth-child(19) {
    transition-delay: .57s
}

._txt:nth-child(20) {
    transition-delay: .6s
}

._txt:nth-child(21) {
    transition-delay: .63s
}

._txt:nth-child(22) {
    transition-delay: .66s
}

._txt:nth-child(23) {
    transition-delay: .69s
}

._txt:nth-child(24) {
    transition-delay: .72s
}

._txt:nth-child(25) {
    transition-delay: .75s
}

._txt:nth-child(26) {
    transition-delay: .78s
}

._txt:nth-child(27) {
    transition-delay: .81s
}

._txt:nth-child(28) {
    transition-delay: .84s
}

._txt:nth-child(29) {
    transition-delay: .87s
}

._txt:nth-child(30) {
    transition-delay: .9s
}

._txt:nth-child(31) {
    transition-delay: .93s
}

._txt:nth-child(32) {
    transition-delay: .96s
}

._txt:nth-child(33) {
    transition-delay: .99s
}

._txt:nth-child(34) {
    transition-delay: 1.02s
}

._txt:nth-child(35) {
    transition-delay: 1.05s
}

._txt:nth-child(36) {
    transition-delay: 1.08s
}

._txt:nth-child(37) {
    transition-delay: 1.11s
}

._txt:nth-child(38) {
    transition-delay: 1.14s
}

._txt:nth-child(39) {
    transition-delay: 1.17s
}

._txt:nth-child(40) {
    transition-delay: 1.2s
}

._txt:nth-child(41) {
    transition-delay: 1.23s
}

._txt:nth-child(42) {
    transition-delay: 1.26s
}

._txt:nth-child(43) {
    transition-delay: 1.29s
}

._txt:nth-child(44) {
    transition-delay: 1.32s
}

._txt:nth-child(45) {
    transition-delay: 1.35s
}

._txt:nth-child(46) {
    transition-delay: 1.38s
}

._txt:nth-child(47) {
    transition-delay: 1.41s
}

._txt:nth-child(48) {
    transition-delay: 1.44s
}

._txt:nth-child(49) {
    transition-delay: 1.47s
}

._txt:nth-child(50) {
    transition-delay: 1.5s
}

.is-active ._txt {
    opacity: 1;
    -ms-transform: translateY(0);
    transform: translateY(0);
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0)
}

.top_about_figure_img {
    opacity: 0;
    -ms-transform: scale(1.1);
    transform: scale(1.1);
    -webkit-clip-path: inset(0 0 0 100%);
    clip-path: inset(0 0 0 100%);
    transition: opacity 1s cubic-bezier(0.32, 0.95, 0.6, 1) .4s, transform 1s cubic-bezier(0.32, 0.95, 0.6, 1) .4s, -webkit-clip-path 1s cubic-bezier(0.32, 0.95, 0.6, 1) .4s;
    transition: clip-path 1s cubic-bezier(0.32, 0.95, 0.6, 1) .4s, opacity 1s cubic-bezier(0.32, 0.95, 0.6, 1) .4s, transform 1s cubic-bezier(0.32, 0.95, 0.6, 1) .4s;
    transition: clip-path 1s cubic-bezier(0.32, 0.95, 0.6, 1) .4s, opacity 1s cubic-bezier(0.32, 0.95, 0.6, 1) .4s, transform 1s cubic-bezier(0.32, 0.95, 0.6, 1) .4s, -webkit-clip-path 1s cubic-bezier(0.32, 0.95, 0.6, 1) .4s
}

.is-active .top_about_figure_img {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
    opacity: 1;
    -ms-transform: scale(1);
    transform: scale(1)
}

.top_about {
    width: 100%;
    padding-top: 264px;
    margin-bottom: 8vw;
}

@media screen and (min-width: 769px) {
    .top_about {
        padding-top: 13.75vw;
        margin-bottom: 8vw;
    }
}

@media screen and (max-width: 768px) {
    .top_about {
        padding-top: 30.7692307692vw
    }
}

.top_about_figure {
    overflow: hidden;
    width: 1356px;
    height: 648px;
    margin-left: 204px;
    margin-bottom: 120px
}

@media screen and (min-width: 769px) {
    .top_about_figure {
        width: 70.625vw;
        height: 33.75vw;
        margin-left: 10.625vw;
        margin-bottom: 6.25vw
    }
}

@media screen and (max-width: 768px) {
    .top_about_figure {
        width: 83.5897435897vw;
        height: 62.5641025641vw;
        margin-left: 10.2564102564vw;
        margin-bottom: 12.3076923077vw
    }
}

.top_about_ttl {
    width: 100%;
    box-sizing: border-box;
    font-weight: 500;
    font-size: 4rem;
    line-height: 64px;
    margin-bottom: 80px;
    padding-left: 204px
}

@media screen and (min-width: 769px) {
    .top_about_ttl {
        font-size: 2.0833333333vw;
        line-height: 3.3333333333vw;
        margin-bottom: 4.1666666667vw;
        padding-left: 10.625vw
    }
}

@media screen and (max-width: 768px) {
    .top_about_ttl {
        font-size: 5.641025641vw;
        line-height: 10.2564102564vw;
        margin-bottom: 10.2564102564vw;
        padding-left: 0vw
    }
}

.top_about_desc {
    width: 100%;
    box-sizing: border-box;
    font-size: 1.8rem;
    line-height: 48px;
    margin-bottom: 48px;
    padding-left: 204px
}

@media screen and (min-width: 769px) {
    .top_about_desc {
        font-size: 0.9375vw;
        line-height: 2.5vw;
        margin-bottom: 2.5vw;
        padding-left: 10.625vw
    }
}

@media screen and (max-width: 768px) {
    .top_about_desc {
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw;
        margin-bottom: 10.2564102564vw;
        padding-left: 0vw
    }
}

@media screen and (max-width: 768px) {
    .top_about_desc p {
        margin-bottom: 4.1025641026vw
    }
}

.top_about .btn {
    margin-left: 204px
}

@media screen and (min-width: 769px) {
    .top_about .btn {
        margin-left: 10.625vw
    }
}

@media screen and (max-width: 768px) {
    .top_about .btn {
        margin-left: 0
    }
}

.top_business {
    width: 100%
}

.top_business_head {
    z-index: -1;
    width: 100%;
    height: 100vh;
    margin-bottom: 100vh
}

.top_business .sec_inner {
    position: relative;
    z-index: 0
}

.top_business .headline {
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    width: 1280px;
    padding: 0px 40px
}

@media screen and (min-width: 769px) {
    .top_business .headline {
        width: 66.6666666667vw;
        padding: 0vw 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .top_business .headline {
        width: 100%;
        padding: 0vw 6.1538461538vw
    }
}

.top_business_visual {
    width: 100%;
    height: 100vh;
    overflow: hidden;
    margin-bottom: 120px
}

@media screen and (min-width: 769px) {
    .top_business_visual {
        margin-bottom: 6.25vw
    }
}

@media screen and (max-width: 768px) {
    .top_business_visual {
        margin-bottom: 12.3076923077vw
    }
}

.top_business_visual_figure {
    -ms-transform: scale(0.5);
    transform: scale(0.5);
    margin: 0 auto;
    -webkit-mask-image: url("../image/mask.png");
    mask-image: url("../image/mask.png");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 44% 30%;
    mask-size: 44% 30%;
    -webkit-mask-position: 50% 0;
    mask-position: 50% 0;
    background-color: rgba(122, 129, 146, .3);
    width: 100vw;
    height: 100vh;
    isolation: isolate
}

.top_business_visual_figure_video,
.top_business_visual_figure_img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.top_business_ttl {
    width: 100%;
    box-sizing: border-box;
    font-weight: 500;
    font-size: 4rem;
    line-height: 64px;
    margin-bottom: 80px
}

@media screen and (min-width: 769px) {
    .top_business_ttl {
        font-size: 2.0833333333vw;
        line-height: 3.3333333333vw;
        margin-bottom: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .top_business_ttl {
        font-size: 5.641025641vw;
        line-height: 10.2564102564vw;
        margin-bottom: 12.3076923077vw
    }
}

.top_business_list {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.top_business_list_item {
    border-top: 1px solid #e4e4e9;
    border-bottom: 1px solid #e4e4e9;
    width: 560px;
    padding: 47px 0px 94px
}

@media screen and (min-width: 769px) {
    .top_business_list_item {
        width: 29.1666666667vw;
        padding: 2.4479166667vw 0vw 4.8958333333vw
    }
}

@media screen and (max-width: 768px) {
    .top_business_list_item {
        width: 100%;
        padding: 10.2564102564vw 0vw 15.3846153846vw
    }
}

.top_business_list_desc {
    width: 100%;
    box-sizing: border-box;
    font-size: 1.8rem;
    line-height: 48px;
    margin-bottom: 48px
}

@media screen and (min-width: 769px) {
    .top_business_list_desc {
        font-size: 0.9375vw;
        line-height: 2.5vw;
        margin-bottom: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .top_business_list_desc {
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw;
        margin-bottom: 10.2564102564vw
    }
}

@media screen and (max-width: 768px) {
    .top_business_list_desc p {
        margin-bottom: 4.1025641026vw
    }
}

.top_business_list_figure {
    width: 100%;
    height: 280px;
    margin-bottom: 24px
}

@media screen and (min-width: 769px) {
    .top_business_list_figure {
        height: 14.5833333333vw;
        margin-bottom: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .top_business_list_figure {
        height: 43.8461538462vw;
        margin-bottom: 6.1538461538vw
    }
}

.top_business_list_figure_img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.top_business_name {
    position: relative;
    font-size: 3.2rem;
    line-height: 40px;
    margin-bottom: 32px;
    padding-left: 24px
}

@media screen and (min-width: 769px) {
    .top_business_name {
        font-size: 1.6666666667vw;
        line-height: 2.0833333333vw;
        margin-bottom: 1.6666666667vw;
        padding-left: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .top_business_name {
        font-size: 6.1538461538vw;
        line-height: 8.2051282051vw;
        margin-bottom: 8.2051282051vw;
        padding-left: 6.1538461538vw
    }
}

.top_business_name:before {
    content: "";
    position: absolute;
    left: 0;
    background: #74748f;
    border-radius: 50%;
    width: 8px;
    height: 8px;
    top: 18px
}

@media screen and (min-width: 769px) {
    .top_business_name:before {
        width: 0.4166666667vw;
        height: 0.4166666667vw;
        top: 0.9375vw
    }
}

@media screen and (max-width: 768px) {
    .top_business_name:before {
        width: 2.0512820513vw;
        height: 2.0512820513vw;
        top: 3.0769230769vw
    }
}

.top_business_desc {
    width: 100%;
    box-sizing: border-box;
    font-size: 1.8rem;
    line-height: 48px;
    margin-bottom: 48px
}

@media screen and (min-width: 769px) {
    .top_business_desc {
        font-size: 0.9375vw;
        line-height: 2.5vw;
        margin-bottom: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .top_business_desc {
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw;
        margin-bottom: 10.2564102564vw
    }
}

@media screen and (max-width: 768px) {
    .top_business_desc p {
        margin-bottom: 4.1025641026vw
    }
}

.top_product {
    position: relative;
    background: #d2d2d2;
    color: #fff;
    padding: 200px 0px;
    margin-bottom: 6vw;
}

@media screen and (min-width: 769px) {
    .top_product {
        padding: 10.4166666667vw 0vw;
        margin-bottom: 6vw;
    }
}

@media screen and (max-width: 768px) {
    .top_product {
        padding: 30.7692307692vw 6.1538461538vw;
        margin-bottom: 0
    }
}

.top_product .sec_inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
    flex-flow: column;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.top_product .headline {
    -ms-flex-item-align: start;
    align-self: flex-start;
    width: 1200px;
    margin: 0px auto 94px
}

@media screen and (min-width: 769px) {
    .top_product .headline {
        width: 62.5vw;
        margin: 0vw auto 4.8958333333vw
    }
}

@media screen and (max-width: 768px) {
    .top_product .headline {
        margin-bottom: 16.4102564103vw
    }
}

.top_product .headline_jp {
    color: #000;
}

.top_product .headline_en {
    width: 100%;
    color: #fff;
    position: absolute;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-item-align: center;
    align-self: center;
    left: 0;
    font-size: 32rem;
    line-height: 320px;
    top: 564px
}

@media screen and (min-width: 769px) {
    .top_product .headline_en {
        font-size: 16.6666666667vw;
        line-height: 16.6666666667vw;
        top: 29.375vw
    }
}

@media screen and (max-width: 768px) {
    .top_product .headline_en {
        font-size: 12.3076923077vw;
        line-height: 12.3076923077vw;
        top: 97.4358974359vw
    }
}

.top_product .headline_en ._txt {
    padding-bottom: 0;
    color: #74748f;
}

.top_product_ttl {
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    font-weight: 500;
    font-size: 4rem;
    line-height: 64px;
    margin-bottom: 80px;
    color: #000;
}

@media screen and (min-width: 769px) {
    .top_product_ttl {
        font-size: 2.0833333333vw;
        line-height: 3.3333333333vw;
        margin-bottom: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .top_product_ttl {
        font-size: 5.641025641vw;
        line-height: 10.2564102564vw;
        margin-bottom: 45.1282051282vw;
        text-align: left
    }
}

.top_product_list {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    margin-bottom: 280px
}

@media screen and (min-width: 769px) {
    .top_product_list {
        margin-bottom: 14.5833333333vw
    }
}

@media screen and (max-width: 768px) {
    .top_product_list {
        -ms-flex-flow: column;
        flex-flow: column;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-bottom: 16.4102564103vw
    }
}

.top_product_list_item {
    text-align: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
    flex-flow: column;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: start;
    justify-content: flex-start;
    width: 544px;
    margin: 0px 32px
}

@media screen and (min-width: 769px) {
    .top_product_list_item {
        width: 28.3333333333vw;
        margin: 0vw 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .top_product_list_item {
        width: 100%;
        margin: 0vw auto 12.3076923077vw
    }
}

@media screen and (max-width: 768px) {
    .top_product_list_item:nth-child(odd) {
        margin-top: 0;
        margin-bottom: 12.3076923077vw
    }
}

@media screen and (max-width: 768px) {
    .top_product_list_item:nth-child(even) {
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 12.3076923077vw
    }
}

@media screen and (max-width: 768px) {
    .top_product_list_item:first-child {
        -ms-flex-order: 100;
        order: 100;
        margin-bottom: 0
    }
}

.top_product_list_item_name {
    font-weight: 400;
    font-size: 2.4rem;
    line-height: 40px;
    margin-bottom: 16px;
    color: #000;
}

@media screen and (min-width: 769px) {
    .top_product_list_item_name {
        font-size: 1.25vw;
        line-height: 2.0833333333vw;
        margin-bottom: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .top_product_list_item_name {
        font-size: 5.1282051282vw;
        line-height: 9.2307692308vw;
        margin-bottom: 4.1025641026vw
    }
}

.top_product_list_item_desc {
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 28px;
    margin-bottom: 24px;
    color: #000;
}

@media screen and (min-width: 769px) {
    .top_product_list_item_desc {
        font-size: 0.8333333333vw;
        line-height: 1.4583333333vw;
        margin-bottom: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .top_product_list_item_desc {
        font-size: 3.5897435897vw;
        line-height: 7.1794871795vw;
        margin-bottom: 8.2051282051vw;
        text-align: left
    }
}

.top_product_list_item_figure {
    -ms-flex-order: -1;
    order: -1;
    overflow: hidden;
    width: 544px;
    height: 544px;
    margin-bottom: 24px
}

@media screen and (min-width: 769px) {
    .top_product_list_item_figure {
        width: 28.3333333333vw;
        height: 28.3333333333vw;
        margin-bottom: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .top_product_list_item_figure {
        width: 76.9230769231vw;
        height: 76.9230769231vw;
        margin-bottom: 0
    }
}

.top_product_list_item .btn_link {
    padding: 16px 56px 16px 62px;
    color: #000;
    border-color: #000;
}

@media screen and (min-width: 769px) {
    .top_product_list_item .btn_link {
        padding: 0.8333333333vw 2.9166666667vw 0.8333333333vw 3.2291666667vw
    }
}

@media screen and (max-width: 768px) {
    .top_product_list_item .btn_link {
        padding: 4.1025641026vw 14.358974359vw 4.1025641026vw 15.8974358974vw
    }
}

.top_product_list_item .btn_link_txt {
    font-size: 1.4rem;
    line-height: 16px
}

@media screen and (min-width: 769px) {
    .top_product_list_item .btn_link_txt {
        font-size: 0.7291666667vw;
        line-height: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .top_product_list_item .btn_link_txt {
        font-size: 3.5897435897vw;
        line-height: 4.1025641026vw
    }
}

.top_product .swiper {
    width: 100%;
    overflow: visible
}

.top_product .white_bg .btn_link:hover .btn_link_txt {
    color: #000;
}

.top_product .white_bg .btn_link:hover {
    background: #fff;
}

.top_product .white_bg .btn_link {
    background: #000;
    color: #fff;
}

.top_product .white_bg .btn_link:before {
    background: #fff;
}

.top_product .swiper .white .btn_link:before {
    background: #000;
}

.top_product .swiper .white .btn_link:hover {
    border-color: #fff;
}

.top_product .swiper .white .btn_link:hover:before {
    background: #fff;
}

.top_technology {
    width: 100%;
    position: relative;
    padding-top: 264px
}

@media screen and (min-width: 769px) {
    .top_technology {
        padding-top: 13.75vw
    }
}

@media screen and (max-width: 768px) {
    .top_technology {
        padding-top: 30.7692307692vw
    }
}

.top_technology_ttl {
    width: 100%;
    box-sizing: border-box;
    font-weight: 500;
    font-size: 4rem;
    line-height: 64px;
    margin-bottom: 80px;
    padding-left: 510px
}

@media screen and (min-width: 769px) {
    .top_technology_ttl {
        font-size: 2.0833333333vw;
        line-height: 3.3333333333vw;
        margin-bottom: 4.1666666667vw;
        padding-left: 26.5625vw
    }
}

@media screen and (max-width: 768px) {
    .top_technology_ttl {
        font-size: 5.641025641vw;
        line-height: 10.2564102564vw;
        margin-bottom: 10.2564102564vw;
        padding-left: 0;
        padding-top: 8.2051282051vw
    }
}

.top_technology_desc {
    width: 100%;
    box-sizing: border-box;
    font-size: 1.8rem;
    line-height: 48px;
    margin-bottom: 96px;
    padding-left: 510px
}

@media screen and (min-width: 769px) {
    .top_technology_desc {
        font-size: 0.9375vw;
        line-height: 2.5vw;
        margin-bottom: 5vw;
        padding-left: 26.5625vw
    }
}

@media screen and (max-width: 768px) {
    .top_technology_desc {
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw;
        margin-bottom: 12.3076923077vw;
        padding-left: 0
    }
}

@media screen and (max-width: 768px) {
    .top_technology_desc p {
        margin-bottom: 4.1025641026vw
    }
}

.top_technology_list {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.top_technology_list_item {
    position: relative;
    width: 560px
}

@media screen and (min-width: 769px) {
    .top_technology_list_item {
        width: 29.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .top_technology_list_item {
        width: 100%;
        margin-bottom: 12.3076923077vw
    }

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

.top_technology_list_item_figure {
    z-index: -1;
    position: relative;
    overflow: hidden;
    width: 560px;
    height: 560px
}

@media screen and (min-width: 769px) {
    .top_technology_list_item_figure {
        width: 29.1666666667vw;
        height: 29.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .top_technology_list_item_figure {
        width: 87.6923076923vw;
        height: 87.6923076923vw
    }
}

.top_technology_list_item_figure_img {
    position: absolute;
    top: 0;
    left: 0;
    width: 560px;
    height: 800px
}

@media screen and (min-width: 769px) {
    .top_technology_list_item_figure_img {
        width: 29.1666666667vw;
        height: 41.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .top_technology_list_item_figure_img {
        width: 87.6923076923vw;
        height: 125.1282051282vw
    }
}

.top_technology_list_item_link {
    overflow: hidden;
    position: relative
}

.top_technology_list_item .btn_circle {
    position: absolute;
    width: 96px;
    height: 96px;
    right: 40px;
    bottom: 40px
}

@media screen and (min-width: 769px) {
    .top_technology_list_item .btn_circle {
        width: 5vw;
        height: 5vw;
        right: 2.0833333333vw;
        bottom: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .top_technology_list_item .btn_circle {
        width: 14.358974359vw;
        height: 14.358974359vw;
        right: 4.1025641026vw;
        bottom: 4.1025641026vw
    }
}

.top_technology_name {
    position: relative;
    font-size: 3.2rem;
    line-height: 40px;
    margin-bottom: 32px;
    padding-left: 24px
}

@media screen and (min-width: 769px) {
    .top_technology_name {
        font-size: 1.6666666667vw;
        line-height: 2.0833333333vw;
        margin-bottom: 1.6666666667vw;
        padding-left: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .top_technology_name {
        font-size: 6.1538461538vw;
        line-height: 8.2051282051vw;
        margin-bottom: 6.1538461538vw;
        padding-left: 6.1538461538vw
    }
}

.top_technology_name:before {
    content: "";
    position: absolute;
    left: 0;
    background: #74748f;
    border-radius: 50%;
    width: 8px;
    height: 8px;
    top: 18px
}

@media screen and (min-width: 769px) {
    .top_technology_name:before {
        width: 0.4166666667vw;
        height: 0.4166666667vw;
        top: 0.9375vw
    }
}

@media screen and (max-width: 768px) {
    .top_technology_name:before {
        width: 2.0512820513vw;
        height: 2.0512820513vw;
        top: 3.0769230769vw
    }
}

.top_news {
    margin-bottom: 3.75vw;
}

.top_news_content {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

@media screen and (max-width: 768px) {
    .top_news_content {
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

.top_news_content .btn {
    -ms-flex-order: -1;
    order: -1
}

@media screen and (max-width: 768px) {
    .top_news_content .btn {
        -ms-flex-order: 0;
        order: 0;
        justify-self: center
    }
}

.top_news .archive_list {
    width: 690px
}

@media screen and (min-width: 769px) {
    .top_news .archive_list {
        width: 35.9375vw
    }
}

@media screen and (max-width: 768px) {
    .top_news .archive_list {
        width: 100%;
        -ms-flex-order: -1;
        order: -1;
        margin-bottom: 10.2564102564vw
    }
}

.main_contents {
    width: 100%;
    max-width: none;
    position: relative;
    z-index: 0;
    padding-top: 320px;
    padding-bottom: 320px;
    margin-bottom: 360px
}

@media screen and (min-width: 769px) {
    .main_contents {
        padding-top: 16.6666666667vw;
        padding-bottom: 16.6666666667vw;
        margin-bottom: 18.75vw
    }
}

@media screen and (max-width: 768px) {
    .main_contents {
        padding-top: 41.0256410256vw;
        padding-bottom: 41.0256410256vw;
        margin-bottom: 34.8717948718vw
    }
}

.main_contents_bg {
    position: absolute;
    left: 50%;
    z-index: -5;
    margin-left: -1200px;
    bottom: -360px
}

@media screen and (min-width: 769px) {
    .main_contents_bg {
        margin-left: -62.5vw;
        bottom: -18.75vw
    }
}

@media screen and (max-width: 768px) {
    .main_contents_bg {
        margin-left: -50vw;
        bottom: -34.8717948718vw
    }
}

.main_contents_filter {
    position: absolute;
    height: 100%;
    top: 0;
    left: 50%;
    z-index: -4;
    background: #f9f9fe;
    border-radius: 2350px 2350px/1240px 1240px;
    box-shadow: inset 64px 64px 160px rgba(0, 0, 0, .1);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 2400px
}

@media screen and (min-width: 769px) {
    .main_contents_filter {
        width: 125vw
    }
}

@media screen and (max-width: 1280px) {
    .main_contents_filter {
        border-radius: 146.875vw 146.875vw/77.5vw 77.5vw
    }
}

@media screen and (max-width: 768px) {
    .main_contents_filter {
        width: 369.2307692308vw;
        border-radius: 358.9743589744vw 358.9743589744vw/353.8461538462vw 353.8461538462vw
    }
}

.sec_next {
    width: 100%;
    border-top: 1px solid #e4e4e9;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    box-sizing: border-box
}

@media screen and (max-width: 768px) {
    .sec_next {
        padding: 0vw 6.1538461538vw;
        -ms-flex-pack: start;
        justify-content: flex-start
    }
}

.sec_next_ttl {
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-size: 8rem;
    line-height: 80px;
    padding-right: 186px;
    padding-top: 120px
}

@media screen and (min-width: 769px) {
    .sec_next_ttl {
        font-size: 4.1666666667vw;
        line-height: 4.1666666667vw;
        padding-right: 9.6875vw;
        padding-top: 6.25vw
    }
}

@media screen and (max-width: 768px) {
    .sec_next_ttl {
        font-size: 9.2307692308vw;
        line-height: 9.2307692308vw;
        padding: 16.4102564103vw 0vw 8.2051282051vw
    }
}

.sec_next_list {
    width: 1050px
}

@media screen and (min-width: 769px) {
    .sec_next_list {
        width: 54.6875vw
    }
}

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

.sec_next_list_item {
    border-bottom: 1px solid #e4e4e9
}

.sec_next_list_item_link {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
    flex-flow: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 80px 216px 80px 0px
}

@media screen and (min-width: 769px) {
    .sec_next_list_item_link {
        padding: 4.1666666667vw 11.25vw 4.1666666667vw 0vw
    }
}

@media screen and (max-width: 768px) {
    .sec_next_list_item_link {
        padding: 6.1538461538vw 12.3076923077vw 10.2564102564vw 0vw
    }
}

.sec_next_list_item_link_jp {
    color: #74748f;
    font-size: 1.6rem;
    line-height: 24px;
    margin-bottom: 16px
}

@media screen and (min-width: 769px) {
    .sec_next_list_item_link_jp {
        font-size: 0.8333333333vw;
        line-height: 1.25vw;
        margin-bottom: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .sec_next_list_item_link_jp {
        font-size: 3.5897435897vw;
        line-height: 5.1282051282vw;
        margin-bottom: 2.0512820513vw
    }
}

.sec_next_list_item_link_en {
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-size: 4rem;
    line-height: 40px
}

@media screen and (min-width: 769px) {
    .sec_next_list_item_link_en {
        font-size: 2.0833333333vw;
        line-height: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .sec_next_list_item_link_en {
        font-size: 5.1282051282vw;
        line-height: 5.1282051282vw
    }
}

.sec_next_list_item_link .btn_circle {
    position: absolute;
    top: 50%;
    margin-top: -28px;
    right: 80px
}

@media screen and (min-width: 769px) {
    .sec_next_list_item_link .btn_circle {
        margin-top: -1.4583333333vw;
        right: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .sec_next_list_item_link .btn_circle {
        margin-top: -5.1282051282vw;
        right: 0
    }
}

.news_archive_inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto;
    box-sizing: border-box;
    width: 1280px;
    padding: 0px 40px;
    margin-bottom: 264px
}

@media screen and (min-width: 769px) {
    .news_archive_inner {
        width: 66.6666666667vw;
        padding: 0vw 2.0833333333vw;
        margin-bottom: 13.75vw
    }
}

@media screen and (max-width: 768px) {
    .news_archive_inner {
        width: 100%;
        padding: 0vw 6.1538461538vw;
        margin-bottom: 30.7692307692vw
    }
}

.news .archive_list {
    width: 100%
}

.news_archive_tax {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 96px
}

@media screen and (min-width: 769px) {
    .news_archive_tax {
        margin-bottom: 5vw
    }
}

@media screen and (max-width: 768px) {
    .news_archive_tax {
        margin-bottom: 9.2307692308vw
    }
}

.news_archive_tax_item {
    color: #0c0e13;
    overflow: hidden;
    border: 1px solid #e4e4e9;
    border-radius: 28px;
    margin-right: 16px
}

@media screen and (min-width: 769px) {
    .news_archive_tax_item {
        border-radius: 1.4583333333vw;
        margin-right: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .news_archive_tax_item {
        border-radius: 7.1794871795vw;
        margin-right: 3.0769230769vw;
        margin-bottom: 3.0769230769vw
    }
}

.news_archive_tax_item_txt,
.news_archive_tax_item_link {
    color: inherit;
    display: -ms-flexbox;
    display: flex;
    font-size: 1.6rem;
    line-height: 16px;
    padding: 12px 32px
}

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

    .news_archive_tax_item_txt,
    .news_archive_tax_item_link {
        font-size: 0.8333333333vw;
        line-height: 0.8333333333vw;
        padding: 0.625vw 1.6666666667vw
    }
}

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

    .news_archive_tax_item_txt,
    .news_archive_tax_item_link {
        font-size: 3.3333333333vw;
        line-height: 3.3333333333vw;
        padding: 2.5641025641vw 6.1538461538vw
    }
}

.news_archive_tax_item.selected {
    color: #74748f;
    border-color: #74748f
}

.page_archive,
.column_archive,
.not_found_archive,
.news_archive {
    margin-bottom: 74px
}

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

    .page_archive,
    .column_archive,
    .not_found_archive,
    .news_archive {
        margin-bottom: 3.8541666667vw
    }
}

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

    .page_archive,
    .column_archive,
    .not_found_archive,
    .news_archive {
        width: 100%;
        box-sizing: border-box;
        margin-bottom: 20.5128205128vw
    }
}

.page_archive .ttl,
.column_archive .ttl,
.not_found_archive .ttl,
.news_archive .ttl {
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 120px 0px 52px
}

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

    .page_archive .ttl,
    .column_archive .ttl,
    .not_found_archive .ttl,
    .news_archive .ttl {
        padding: 6.25vw 0vw 2.7083333333vw
    }
}

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

    .page_archive .ttl,
    .column_archive .ttl,
    .not_found_archive .ttl,
    .news_archive .ttl {
        padding: 24.6153846154vw 0vw 3.5897435897vw
    }
}

.page_archive .ttl_ja,
.column_archive .ttl_ja,
.not_found_archive .ttl_ja,
.news_archive .ttl_ja {
    margin-top: 20px
}

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

    .page_archive .ttl_ja,
    .column_archive .ttl_ja,
    .not_found_archive .ttl_ja,
    .news_archive .ttl_ja {
        margin-top: 1.0416666667vw
    }
}

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

    .page_archive .ttl_ja,
    .column_archive .ttl_ja,
    .not_found_archive .ttl_ja,
    .news_archive .ttl_ja {
        margin-top: 2.5641025641vw
    }
}

.page_archive .ttl_en,
.column_archive .ttl_en,
.not_found_archive .ttl_en,
.news_archive .ttl_en {
    color: #e4e4e9;
    letter-spacing: 0;
    position: relative;
    top: 0;
    left: 0;
    font-size: 16rem;
    line-height: 160px
}

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

    .page_archive .ttl_en,
    .column_archive .ttl_en,
    .not_found_archive .ttl_en,
    .news_archive .ttl_en {
        font-size: 8.3333333333vw;
        line-height: 8.3333333333vw
    }
}

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

    .page_archive .ttl_en,
    .column_archive .ttl_en,
    .not_found_archive .ttl_en,
    .news_archive .ttl_en {
        font-size: 12.3076923077vw;
        line-height: 12.3076923077vw
    }
}

.page_archive_term,
.column_archive_term,
.not_found_archive_term,
.news_archive_term {
    letter-spacing: .05em;
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    position: relative;
    font-size: 2.4rem;
    line-height: 32px;
    padding-left: 40px;
    margin-bottom: 48px
}

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

    .page_archive_term,
    .column_archive_term,
    .not_found_archive_term,
    .news_archive_term {
        font-size: 1.25vw;
        line-height: 1.6666666667vw;
        padding-left: 2.0833333333vw;
        margin-bottom: 2.5vw
    }
}

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

    .page_archive_term,
    .column_archive_term,
    .not_found_archive_term,
    .news_archive_term {
        font-size: 6.1538461538vw;
        line-height: 8.2051282051vw;
        padding-left: 5.1282051282vw;
        margin-bottom: 8.2051282051vw
    }
}

.page_archive_term:before,
.column_archive_term:before,
.not_found_archive_term:before,
.news_archive_term:before {
    content: "";
    position: absolute;
    display: block;
    background: #74748f;
    border-radius: 50%;
    width: 4px;
    height: 4px;
    left: 24px;
    top: 13px
}

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

    .page_archive_term:before,
    .column_archive_term:before,
    .not_found_archive_term:before,
    .news_archive_term:before {
        width: 0.2083333333vw;
        height: 0.2083333333vw;
        left: 1.25vw;
        top: 0.6770833333vw
    }
}

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

    .page_archive_term:before,
    .column_archive_term:before,
    .not_found_archive_term:before,
    .news_archive_term:before {
        width: 1.0256410256vw;
        height: 1.0256410256vw;
        left: 0;
        top: 3.3333333333vw
    }
}

.page_archive_list,
.column_archive_list,
.not_found_archive_list,
.news_archive_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 787px;
    padding: 0px 24px
}

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

    .page_archive_list,
    .column_archive_list,
    .not_found_archive_list,
    .news_archive_list {
        width: 40.9895833333vw;
        padding: 0vw 1.25vw
    }
}

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

    .page_archive_list,
    .column_archive_list,
    .not_found_archive_list,
    .news_archive_list {
        width: 100%;
        padding: 0vw
    }
}

.page_archive_list .box_card,
.column_archive_list .box_card,
.not_found_archive_list .box_card,
.news_archive_list .box_card {
    margin: 0px 72px 64px 0px
}

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

    .page_archive_list .box_card,
    .column_archive_list .box_card,
    .not_found_archive_list .box_card,
    .news_archive_list .box_card {
        margin: 0vw 3.75vw 3.3333333333vw 0vw
    }
}

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

    .page_archive_list .box_card,
    .column_archive_list .box_card,
    .not_found_archive_list .box_card,
    .news_archive_list .box_card {
        width: 100%;
        margin: 0vw 0vw 12.3076923077vw
    }

    .page_archive_list .box_card:last-child,
    .column_archive_list .box_card:last-child,
    .not_found_archive_list .box_card:last-child,
    .news_archive_list .box_card:last-child {
        margin-bottom: 0
    }
}

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

    .page_archive_list .box_card_thumb,
    .column_archive_list .box_card_thumb,
    .not_found_archive_list .box_card_thumb,
    .news_archive_list .box_card_thumb {
        width: 100%
    }
}

.page_archive_list .box_card:nth-child(3n),
.column_archive_list .box_card:nth-child(3n),
.not_found_archive_list .box_card:nth-child(3n),
.news_archive_list .box_card:nth-child(3n) {
    margin-right: 0
}

.category {
    box-sizing: border-box;
    width: 300px;
    margin-right: 51px
}

@media screen and (min-width: 769px) {
    .category {
        width: 15.625vw;
        margin-right: 2.65625vw
    }
}

@media screen and (max-width: 768px) {
    .category {
        width: 100%;
        margin: 0vw 0vw 16.4102564103vw;
        padding: 0;
        border-bottom: 1px solid #e4e4e9
    }
}

.category_name {
    display: none
}

@media screen and (max-width: 768px) {
    .category_name {
        display: block;
        font-size: 5.1282051282vw;
        line-height: 5.1282051282vw;
        letter-spacing: .1em;
        font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
        position: relative
    }
}

.category_selected {
    display: none
}

@media screen and (max-width: 768px) {
    .category_selected {
        display: block;
        position: relative;
        margin-top: 8.2051282051vw
    }

    .category_selected:before,
    .category_selected:after {
        content: "";
        position: absolute;
        width: 5.1282051282vw;
        height: .2564102564vw;
        background: #e4e4e9;
        top: 3.0769230769vw
    }

    .category_selected:before {
        right: 0
    }

    .category_selected:after {
        width: 4.1025641026vw;
        right: .5128205128vw;
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        transition: transform .6s cubic-bezier(0.32, 0.95, 0.6, 1)
    }

    .category_selected.open:after {
        -ms-transform: rotate(0);
        transform: rotate(0)
    }
}

@media screen and (max-width: 768px) {
    .category_box {
        display: none
    }
}

.category_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
    flex-flow: column;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0px 24px
}

@media screen and (min-width: 769px) {
    .category_list {
        padding: 0vw 1.25vw
    }
}

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

.category_list_item {
    margin-bottom: 32px
}

@media screen and (min-width: 769px) {
    .category_list_item {
        margin-bottom: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .category_list_item {
        margin-bottom: 0;
        padding-bottom: 6.1538461538vw
    }
}

.category_list_item.all {
    -ms-flex-order: -1;
    order: -1
}

@media screen and (max-width: 768px) {
    .category_box .category_list_item.selected {
        display: none
    }
}

.category_list_item_ttl {
    display: block;
    position: relative;
    font-size: 1.8rem;
    line-height: 24px;
    padding-left: 16px
}

@media screen and (min-width: 769px) {
    .category_list_item_ttl {
        font-size: 0.9375vw;
        line-height: 1.25vw;
        padding-left: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .category_list_item_ttl {
        font-size: 4.1025641026vw;
        line-height: 6.1538461538vw;
        padding-left: 4.1025641026vw
    }
}

.category_list_item_ttl:before {
    content: "";
    position: absolute;
    border-radius: 50%;
    border: 1px solid #74748f;
    left: 0;
    top: 9px;
    width: 8px;
    height: 8px
}

@media screen and (min-width: 769px) {
    .category_list_item_ttl:before {
        top: 0.46875vw;
        width: 0.4166666667vw;
        height: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .category_list_item_ttl:before {
        top: 2.3076923077vw;
        width: 2.0512820513vw;
        height: 2.0512820513vw
    }
}

.selected .category_list_item_ttl:before {
    background: #74748f
}

.catalog_list {
    border-top: 1px solid #e4e4e9;
    margin-top: 32px
}

@media screen and (min-width: 769px) {
    .catalog_list {
        margin-top: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .catalog_list {
        margin-top: 6.1538461538vw
    }
}

.catalog_list_item {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-bottom: 1px solid #e4e4e9;
    padding: 32px 0px
}

@media screen and (min-width: 769px) {
    .catalog_list_item {
        padding: 1.6666666667vw 0vw
    }
}

@media screen and (max-width: 768px) {
    .catalog_list_item {
        padding: 6.1538461538vw 0vw
    }
}

.catalog_list_item_name {
    color: #2c3943;
    font-weight: bold;
    position: relative;
    margin-bottom: 0 !important;
    font-size: 2rem;
    line-height: 24px;
    padding-left: 16px
}

@media screen and (min-width: 769px) {
    .catalog_list_item_name {
        font-size: 1.0416666667vw;
        line-height: 1.25vw;
        padding-left: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .catalog_list_item_name {
        width: 100%;
        font-size: 4.6153846154vw;
        line-height: 5.641025641vw;
        padding-left: 4.1025641026vw
    }
}

.catalog_list_item_name:before {
    content: "";
    border-radius: 50%;
    background: #74748f;
    position: absolute;
    left: 0;
    width: 8px;
    height: 8px;
    top: 18px
}

@media screen and (min-width: 769px) {
    .catalog_list_item_name:before {
        width: 0.4166666667vw;
        height: 0.4166666667vw;
        top: 0.9375vw
    }
}

@media screen and (max-width: 768px) {
    .catalog_list_item_name:before {
        width: 1.5384615385vw;
        height: 1.5384615385vw;
        top: 3.0769230769vw
    }
}

.catalog_list_item .btn_round {
    width: 224px;
    height: 56px
}

@media screen and (min-width: 769px) {
    .catalog_list_item .btn_round {
        width: 11.6666666667vw;
        height: 2.9166666667vw
    }
}

@media screen and (max-width: 768px) {
    .catalog_list_item .btn_round {
        width: 41.0256410256vw;
        height: 12.3076923077vw;
        margin-top: 6.1538461538vw;
        justify-self: flex-end;
        -ms-flex-item-align: end;
        align-self: flex-end;
        margin-right: 0
    }
}

@media screen and (max-width: 768px) {
    .catalog_list_item .btn_round .btn_round_link_txt {
        font-size: 3.5897435897vw
    }
}

.company_message {
    position: relative
}

.company_message .sec_ttl_en {
    left: 50%;
    margin-left: -600px
}

@media screen and (min-width: 769px) {
    .company_message .sec_ttl_en {
        margin-left: -31.25vw
    }
}

@media screen and (max-width: 768px) {
    .company_message .sec_ttl_en {
        left: 0;
        margin-left: 0
    }
}

.company_message .sec_inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.company_message_desc {
    width: 690px;
    padding-top: 48px
}

@media screen and (min-width: 769px) {
    .company_message_desc {
        width: 35.9375vw;
        padding-top: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .company_message_desc {
        width: 100%;
        box-sizing: border-box;
        padding-top: 0
    }
}

.company_message_desc p {
    font-size: 1.8rem;
    line-height: 40px;
    margin-bottom: 16px
}

@media screen and (min-width: 769px) {
    .company_message_desc p {
        font-size: 0.9375vw;
        line-height: 2.0833333333vw;
        margin-bottom: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .company_message_desc p {
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw;
        margin-bottom: 4.1025641026vw
    }
}

.company_message_desc_sign {
    text-align: right;
    margin-top: 48px
}

@media screen and (min-width: 769px) {
    .company_message_desc_sign {
        margin-top: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .company_message_desc_sign {
        margin-top: 6.1538461538vw
    }
}

.company_message_desc_sign .sign {
    display: block;
    height: auto;
    margin-right: 0;
    margin-left: auto;
    width: 134px
}

@media screen and (min-width: 769px) {
    .company_message_desc_sign .sign {
        width: 6.9791666667vw
    }
}

@media screen and (max-width: 768px) {
    .company_message_desc_sign .sign {
        width: 34.358974359vw
    }
}

.company_message_figure {
    overflow: hidden;
    -ms-flex-order: -1;
    order: -1;
    background: rgba(122, 129, 146, .3);
    width: 384px;
    height: 512px
}

@media screen and (min-width: 769px) {
    .company_message_figure {
        width: 20vw;
        height: 26.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .company_message_figure {
        width: 61.5384615385vw;
        height: 82.0512820513vw;
        margin: 0 auto 8.2051282051vw
    }
}

.company_message_figure_img {
    display: block;
    width: 100%;
    height: auto
}

.company_philosophy {
    position: relative
}

.company_philosophy .sec_inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: end;
    align-items: flex-end;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.company_philosophy_ttl {
    width: 100%;
    display: block;
    -ms-flex-order: 1;
    order: 1;
    font-weight: 500;
    font-size: 4rem;
    line-height: 64px;
    margin-bottom: 80px
}

@media screen and (min-width: 769px) {
    .company_philosophy_ttl {
        font-size: 2.0833333333vw;
        line-height: 3.3333333333vw;
        margin-bottom: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .company_philosophy_ttl {
        font-size: 5.641025641vw;
        line-height: 10.2564102564vw;
        margin-bottom: 12.3076923077vw
    }
}

.company_philosophy_desc {
    -ms-flex-order: 3;
    order: 3;
    width: 588px;
    padding-bottom: 48px
}

@media screen and (min-width: 769px) {
    .company_philosophy_desc {
        width: 30.625vw;
        padding-bottom: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .company_philosophy_desc {
        width: 100%;
        box-sizing: border-box;
        padding-bottom: 0
    }
}

.company_philosophy_desc p {
    font-size: 1.8rem;
    line-height: 40px;
    margin-bottom: 16px
}

@media screen and (min-width: 769px) {
    .company_philosophy_desc p {
        font-size: 0.9375vw;
        line-height: 2.0833333333vw;
        margin-bottom: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .company_philosophy_desc p {
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw;
        margin-bottom: 4.1025641026vw
    }
}

.company_philosophy_figure {
    overflow: hidden;
    -ms-flex-order: 2;
    order: 2;
    background: rgba(122, 129, 146, .3);
    width: 384px;
    height: 512px;
    margin-left: 102px
}

@media screen and (min-width: 769px) {
    .company_philosophy_figure {
        width: 20vw;
        height: 26.6666666667vw;
        margin-left: 5.3125vw
    }
}

@media screen and (max-width: 768px) {
    .company_philosophy_figure {
        width: 61.5384615385vw;
        height: 82.0512820513vw;
        margin: 0 auto 8.2051282051vw
    }
}

.company_philosophy_figure_img {
    display: block;
    width: 100%;
    height: auto
}

.company_overview {
    position: relative
}

.company_overview .sec_ttl_en {
    left: 50%;
    margin-left: -600px
}

@media screen and (min-width: 769px) {
    .company_overview .sec_ttl_en {
        margin-left: -31.25vw
    }
}

@media screen and (max-width: 768px) {
    .company_overview .sec_ttl_en {
        left: 0;
        margin-left: 0
    }
}

.company_overview_list {
    width: 100%;
    border-top: 1px solid #e4e4e9;
    border-left: none !important;
}

.company_overview_item,
.company_overview_list tr {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    border-bottom: 1px solid #e4e4e9;
    padding: 40px 0px
}

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

    .company_overview_item,
    .company_overview_list tr {
        padding: 2.0833333333vw 0vw
    }
}

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

    .company_overview_item,
    .company_overview_list tr {
        padding: 6.1538461538vw 0vw;
        -ms-flex-flow: column;
        flex-flow: column
    }
}

.company_overview_item_ttl,
.company_overview_list td:nth-child(1) {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-weight: 500;
    width: 282px;
    font-size: 1.8rem;
    line-height: 32px;
    padding-right: 24px;
    border: none;
}

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

    .company_overview_item_ttl,
    .company_overview_list td:nth-child(1) {
        width: 14.6875vw;
        font-size: 0.9375vw;
        line-height: 1.6666666667vw;
        padding-right: 1.25vw
    }
}

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

    .company_overview_item_ttl,
    .company_overview_list td:nth-child(1) {
        width: 100%;
        font-size: 4.1025641026vw;
        line-height: 6.1538461538vw;
        padding-right: 0;
        margin-bottom: 2.0512820513vw
    }
}

.company_overview_item_desc,
.company_overview_list td:nth-child(2) {
    font-size: 1.8rem;
    line-height: 32px;
    border: none;
}

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

    .company_overview_item_desc,
    .company_overview_list td:nth-child(2) {
        font-size: 0.9375vw;
        line-height: 1.6666666667vw
    }
}

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

    .company_overview_item_desc,
    .company_overview_list td:nth-child(2) {
        width: 100%;
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw
    }
}

.company_overview_item_desc a,
.company_overview_list td:nth-child(2) a {
    color: #74748f;
    text-decoration: underline
}

.company_overview_item_desc a:hover,
.company_overview_list td:nth-child(2) a:hover {
    text-decoration: none
}

.company_overview_item_desc a[target=_blank],
.company_overview_list td:nth-child(2) a[target=_blank] {
    position: relative;
    padding-right: 1.5em
}

.company_overview_item_desc a[target=_blank]:after,
.company_overview_list td:nth-child(2) a[target=_blank]:after {
    content: url("data:image/svg+xml,%3Csvg t='1731317679944' class='icon' viewBox='0 0 1042 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='5076' width='20' height='20'%3E%3Cpath d='M383.051852 659.911111c-9.481481 0-18.962963-3.792593-26.548148-11.377778-15.17037-15.17037-15.17037-37.925926 0-53.096296l337.54074-337.540741c15.17037-15.17037 37.925926-15.17037 53.096297 0 15.17037 15.17037 15.17037 37.925926 0 53.096297l-337.540741 337.54074c-7.585185 7.585185-17.066667 11.377778-26.548148 11.377778z' fill='%2374748f' p-id='5077'%3E%3C/path%3E%3Cpath d='M779.377778 597.333333c-20.859259 0-37.925926-17.066667-37.925926-37.925926l-3.792593-297.718518-297.718518-3.792593c-20.859259 0-37.925926-17.066667-37.925926-37.925926s17.066667-37.925926 37.925926-37.925926l333.748148 3.792593c20.859259 0 37.925926 17.066667 37.925926 37.925926l3.792592 333.748148c1.896296 22.755556-15.17037 39.822222-36.029629 39.822222z' p-id='5078' fill='%2374748f'%3E%3C/path%3E%3C/svg%3E");
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    -ms-transform-origin: center center;
    transform-origin: center center;
    position: absolute;
    color: inherit;
    top: 50%;
    right: 0;
    width: 1em;
    height: 1em;
    font-size: 1em;
    line-height: 1em
}

.company_overview_images {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    position: relative;
    margin-top: 96px
}

@media screen and (min-width: 769px) {
    .company_overview_images {
        margin-top: 5vw
    }
}

@media screen and (max-width: 768px) {
    .company_overview_images {
        margin-top: 12.3076923077vw;
        padding-top: 59.4871794872vw
    }
}

.company_overview_figure {
    background: rgba(122, 129, 146, .3);
    overflow: hidden
}

.company_overview_figure:nth-child(1) {
    width: 384px;
    height: 512px;
    margin-top: 316px;
    margin-right: 40px
}

@media screen and (min-width: 769px) {
    .company_overview_figure:nth-child(1) {
        width: 20vw;
        height: 26.6666666667vw;
        margin-top: 16.4583333333vw;
        margin-right: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .company_overview_figure:nth-child(1) {
        width: 30.7692307692vw;
        height: 41.0256410256vw;
        margin-top: 0;
        margin-right: 6.1538461538vw
    }
}

.company_overview_figure:nth-child(2) {
    width: 384px;
    height: 512px;
    margin-top: 316px;
    margin-right: 164px
}

@media screen and (min-width: 769px) {
    .company_overview_figure:nth-child(2) {
        width: 20vw;
        height: 26.6666666667vw;
        margin-top: 16.4583333333vw;
        margin-right: 8.5416666667vw
    }
}

@media screen and (max-width: 768px) {
    .company_overview_figure:nth-child(2) {
        width: 30.7692307692vw;
        height: 41.0256410256vw;
        margin-top: 0;
        margin-right: 6.1538461538vw
    }
}

.company_overview_figure:nth-child(3) {
    width: 948px;
    height: 632px
}

@media screen and (min-width: 769px) {
    .company_overview_figure:nth-child(3) {
        width: 49.375vw;
        height: 32.9166666667vw
    }
}

@media screen and (max-width: 768px) {
    .company_overview_figure:nth-child(3) {
        width: 80vw;
        height: 53.3333333333vw;
        position: absolute;
        top: 0;
        right: 0
    }
}

.company_overview_figure_img {
    display: block;
    width: 100%;
    height: auto
}

.company_history {
    position: relative
}

.company_history_figure {
    overflow: hidden;
    background: rgba(122, 129, 146, .3);
    margin: 0 auto;
    width: 1200px;
    height: 600px;
    margin-bottom: 120px
}

@media screen and (min-width: 769px) {
    .company_history_figure {
        width: 62.5vw;
        height: 31.25vw;
        margin-bottom: 6.25vw
    }
}

@media screen and (max-width: 768px) {
    .company_history_figure {
        width: 87.6923076923vw;
        height: 43.8461538462vw;
        margin-bottom: 12.3076923077vw
    }
}

.company_history_figure_img {
    display: block;
    width: 100%;
    height: auto
}

.company_history_list {
    width: 100%;
    border-top: 1px solid #e4e4e9
}

.company_history_item {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    border-bottom: 1px solid #e4e4e9;
    padding: 48px 0px
}

@media screen and (min-width: 769px) {
    .company_history_item {
        padding: 2.5vw 0vw
    }
}

@media screen and (max-width: 768px) {
    .company_history_item {
        padding: 8.2051282051vw 0vw;
        -ms-flex-flow: column;
        flex-flow: column;
        position: relative
    }
}

.company_history_item_ttl {
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 232px;
    font-size: 4rem;
    line-height: 40px
}

@media screen and (min-width: 769px) {
    .company_history_item_ttl {
        width: 12.0833333333vw;
        font-size: 2.0833333333vw;
        line-height: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .company_history_item_ttl {
        width: 100%;
        font-size: 6.6666666667vw;
        line-height: 6.6666666667vw;
        margin-bottom: 4.1025641026vw
    }
}

.company_history_item_desc {
    font-size: 1.8rem;
    line-height: 32px
}

@media screen and (min-width: 769px) {
    .company_history_item_desc {
        font-size: 0.9375vw;
        line-height: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .company_history_item_desc {
        width: 100%;
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw
    }
}

.company_history_item_desc_line {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center
}

@media screen and (max-width: 768px) {
    .company_history_item_desc_line {
        margin-top: 4.1025641026vw
    }
}

.company_history_item_desc_line .month {
    color: #74748f;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 178px
}

@media screen and (min-width: 769px) {
    .company_history_item_desc_line .month {
        width: 9.2708333333vw
    }
}

@media screen and (max-width: 768px) {
    .company_history_item_desc_line .month {
        width: 13.3333333333vw;
        font-size: 4.6153846154vw;
        line-height: 6.1538461538vw
    }
}

@media screen and (max-width: 768px) {
    .company_history_item_desc_line:first-child {
        margin-top: 0
    }

    .company_history_item_desc_line:first-child .month {
        position: absolute;
        top: 8.7179487179vw;
        left: 30.7692307692vw
    }
}

.company_history_item_desc a {
    color: #74748f;
    text-decoration: underline
}

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

.company_history_item_desc a[target=_blank] {
    position: relative;
    padding-right: 1.5em
}

.company_history_item_desc a[target=_blank]:after {
    content: "Ã¢â€ â€™";
    -ms-transform: rotate(-45deg) translate(0, -50%);
    transform: rotate(-45deg) translate(0, -50%);
    -ms-transform-origin: center center;
    transform-origin: center center;
    position: absolute;
    color: inherit;
    top: 50%;
    right: 0;
    width: 1em;
    height: 1em;
    font-size: 1em;
    line-height: 1em
}

.about_service {
    position: relative
}

.about_service .sec_ttl_en {
    left: 50%;
    margin-left: -600px
}

@media screen and (min-width: 769px) {
    .about_service .sec_ttl_en {
        margin-left: -31.25vw
    }
}

@media screen and (max-width: 768px) {
    .about_service .sec_ttl_en {
        left: 0;
        margin-left: 0
    }
}

.about_service_desc {
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 80px
}

@media screen and (min-width: 769px) {
    .about_service_desc {
        margin-bottom: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .about_service_desc {
        margin-bottom: 12.3076923077vw
    }
}

.about_service_desc p {
    text-align: center;
    font-size: 1.8rem;
    line-height: 40px
}

@media screen and (min-width: 769px) {
    .about_service_desc p {
        font-size: 0.9375vw;
        line-height: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .about_service_desc p {
        text-align: left;
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw;
        margin-bottom: 4.1025641026vw
    }
}

.about_service_desc p:last-child {
    margin-bottom: 0
}

.about_service_figure {
    overflow: hidden;
    margin: 0 auto;
    width: 846px;
    height: 476px;
    margin-bottom: 80px
}

@media screen and (min-width: 769px) {
    .about_service_figure {
        width: 44.0625vw;
        height: 24.7916666667vw;
        margin-bottom: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .about_service_figure {
        width: 100vw;
        height: 55.8974358974vw;
        margin-bottom: 16.4102564103vw;
        margin-left: -6.1538461538vw
    }
}

.about_service_figure_video,
.about_service_figure_img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.about_service_list {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media screen and (max-width: 768px) {
    .about_service_list {
        border-top: 1px solid #e4e4e9;
        padding-top: 12.3076923077vw
    }
}

.about_service_list_item {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    box-sizing: border-box;
    margin-bottom: 160px
}

@media screen and (min-width: 769px) {
    .about_service_list_item {
        margin-bottom: 8.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .about_service_list_item {
        margin-bottom: 16.4102564103vw;
        position: relative;
        padding-top: 16.4102564103vw
    }
}

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

.about_service_list_item_info {
    border-top: 1px solid #e4e4e9;
    border-bottom: 1px solid #e4e4e9;
    width: 560px;
    padding: 48px 0px 96px
}

@media screen and (min-width: 769px) {
    .about_service_list_item_info {
        width: 29.1666666667vw;
        padding: 2.5vw 0vw 5vw
    }
}

@media screen and (max-width: 768px) {
    .about_service_list_item_info {
        border-top: 0;
        width: 100%;
        padding: 10.2564102564vw 0vw 16.4102564103vw
    }
}

.about_service_list_item_info .btn {
    margin-top: 48px
}

@media screen and (min-width: 769px) {
    .about_service_list_item_info .btn {
        margin-top: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .about_service_list_item_info .btn {
        margin-top: 10.2564102564vw
    }
}

.about_service_list_item_ttl {
    position: relative;
    font-size: 3.2rem;
    line-height: 40px;
    margin-bottom: 24px;
    padding-left: 24px
}

@media screen and (min-width: 769px) {
    .about_service_list_item_ttl {
        font-size: 1.6666666667vw;
        line-height: 2.0833333333vw;
        margin-bottom: 1.25vw;
        padding-left: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .about_service_list_item_ttl {
        font-size: 6.1538461538vw;
        line-height: 8.2051282051vw;
        margin-bottom: 8.2051282051vw;
        padding-left: 6.1538461538vw;
        position: absolute;
        top: 0
    }
}

.about_service_list_item_ttl:before {
    content: "";
    position: absolute;
    left: 0;
    background: #74748f;
    border-radius: 50%;
    width: 8px;
    height: 8px;
    top: 18px
}

@media screen and (min-width: 769px) {
    .about_service_list_item_ttl:before {
        width: 0.4166666667vw;
        height: 0.4166666667vw;
        top: 0.9375vw
    }
}

@media screen and (max-width: 768px) {
    .about_service_list_item_ttl:before {
        width: 2.0512820513vw;
        height: 2.0512820513vw;
        top: 3.0769230769vw
    }
}

.about_service_list_item_figure {
    overflow: hidden;
    background: rgba(122, 129, 146, .3);
    width: 480px;
    height: 640px
}

@media screen and (min-width: 769px) {
    .about_service_list_item_figure {
        width: 25vw;
        height: 33.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .about_service_list_item_figure {
        width: 73.8461538462vw;
        height: 98.4615384615vw;
        margin: 0 auto;
        -ms-flex-order: -1;
        order: -1
    }
}

.about_service_list_item_figure_img {
    display: block;
    width: 100%;
    height: auto
}

.about_service_list_item:nth-child(even) .about_service_list_item_figure {
    -ms-flex-order: -1;
    order: -1
}

.about_features {
    position: relative
}

.about_features .sec_inner {
    text-align: center
}

@media screen and (max-width: 768px) {
    .about_features .sec_inner {
        margin-top: 12.3076923077vw
    }
}

.about_features_list {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 60px 0px 40px
}

@media screen and (min-width: 769px) {
    .about_features_list {
        padding: 3.125vw 0vw 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .about_features_list {
        -ms-flex-flow: column;
        flex-flow: column;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: center;
        align-items: center;
        padding: 0vw
    }
}

.about_features_list_item {
    width: 254px;
    margin-right: 30px
}

@media screen and (min-width: 769px) {
    .about_features_list_item {
        width: 13.2291666667vw;
        margin-right: 1.5625vw
    }
}

@media screen and (max-width: 768px) {
    .about_features_list_item {
        width: 87.6923076923vw;
        margin: 0 auto;
        margin-bottom: 16.4102564103vw
    }
}

.about_features_list_item:last-child {
    margin-right: 0;
    margin-bottom: 0
}

@media screen and (max-width: 768px) {
    .about_features_list_item:last-child {
        margin-right: auto
    }
}

.about_features_list_item_head {
    text-align: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-flow: column;
    flex-flow: column;
    position: relative;
    z-index: 0;
    height: 314px;
    margin-bottom: 38px
}

@media screen and (min-width: 769px) {
    .about_features_list_item_head {
        height: 16.3541666667vw;
        margin-bottom: 1.9791666667vw
    }
}

@media screen and (max-width: 768px) {
    .about_features_list_item_head {
        height: 65.641025641vw;
        margin-bottom: 12.3076923077vw
    }
}

.about_features_list_item_head:before,
.about_features_list_item_head:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 50%
}

.about_features_list_item_head:before {
    opacity: .7;
    background: #fff;
    border: 1px solid #e4e4e9;
    z-index: -1;
    width: 314px;
    height: 314px;
    margin-left: -157px;
    margin-top: -157px
}

@media screen and (min-width: 769px) {
    .about_features_list_item_head:before {
        width: 16.3541666667vw;
        height: 16.3541666667vw;
        margin-left: -8.1770833333vw;
        margin-top: -8.1770833333vw
    }
}

@media screen and (max-width: 768px) {
    .about_features_list_item_head:before {
        width: 65.641025641vw;
        height: 65.641025641vw;
        margin-left: -32.8205128205vw;
        margin-top: -32.8205128205vw
    }
}

.about_features_list_item_head:after {
    background: #0c0e13;
    opacity: .05;
    z-index: -2;
    -ms-transform: scale(0);
    transform: scale(0);
    transition: transform 1.2s cubic-bezier(0.68, -0.6, 0.32, 1.6);
    width: 344px;
    height: 344px;
    margin-left: -172px;
    margin-top: -172px
}

@media screen and (min-width: 769px) {
    .about_features_list_item_head:after {
        width: 17.9166666667vw;
        height: 17.9166666667vw;
        margin-left: -8.9583333333vw;
        margin-top: -8.9583333333vw
    }
}

@media screen and (max-width: 768px) {
    .about_features_list_item_head:after {
        width: 73.8461538462vw;
        height: 73.8461538462vw;
        margin-left: -36.9230769231vw;
        margin-top: -36.9230769231vw
    }
}

.about_features_list_item:nth-child(1) .about_features_list_item_head:after {
    transition-delay: .2s
}

.about_features_list_item:nth-child(2) .about_features_list_item_head:after {
    transition-delay: .4s
}

.about_features_list_item:nth-child(3) .about_features_list_item_head:after {
    transition-delay: .6s
}

.is-active .about_features_list_item_head:after {
    -ms-transform: scale(1);
    transform: scale(1)
}

.about_features_list_item_head .num {
    color: #74748f;
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-size: 2rem;
    line-height: 20px;
    margin-bottom: 16px
}

@media screen and (min-width: 769px) {
    .about_features_list_item_head .num {
        font-size: 1.0416666667vw;
        line-height: 1.0416666667vw;
        margin-bottom: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .about_features_list_item_head .num {
        font-size: 5.1282051282vw;
        line-height: 5.1282051282vw;
        margin-bottom: 6.1538461538vw
    }
}

.about_features_list_item_head .name {
    font-size: 2.4rem;
    line-height: 48px;
    margin-bottom: 0px
}

@media screen and (min-width: 769px) {
    .about_features_list_item_head .name {
        font-size: 1.25vw;
        line-height: 2.5vw;
        margin-bottom: 0vw
    }
}

@media screen and (max-width: 768px) {
    .about_features_list_item_head .name {
        font-size: 5.1282051282vw;
        line-height: 6.1538461538vw;
        margin-bottom: 7.1794871795vw
    }
}

.about_features_list_item .txt {
    text-align: left;
    font-size: 1.6rem;
    line-height: 36px
}

@media screen and (min-width: 769px) {
    .about_features_list_item .txt {
        font-size: 0.8333333333vw;
        line-height: 1.875vw
    }
}

@media screen and (max-width: 768px) {
    .about_features_list_item .txt {
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw
    }
}

.about_features .btn {
    margin-top: 45px
}

@media screen and (min-width: 769px) {
    .about_features .btn {
        margin-top: 2.34375vw
    }
}

@media screen and (max-width: 768px) {
    .about_features .btn {
        margin-top: 10.2564102564vw
    }
}

.about_data {
    position: relative
}

.about_data .sec_ttl_en {
    width: 100%;
    text-align: center;
    left: 0;
    margin-left: 0px
}

@media screen and (min-width: 769px) {
    .about_data .sec_ttl_en {
        margin-left: 0vw
    }
}

@media screen and (max-width: 768px) {
    .about_data .sec_ttl_en {
        left: 0;
        margin-left: 0
    }
}

.about_data_visual {
    width: 100%;
    overflow: hidden;
    margin-top: 120px;
    margin-bottom: 120px
}

@media screen and (min-width: 769px) {
    .about_data_visual {
        margin-top: 6.25vw;
        margin-bottom: 6.25vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_visual {
        margin-top: 0;
        margin-bottom: 12.3076923077vw
    }
}

.about_data_visual_figure {
    margin: 0 auto;
    -webkit-mask-image: url("../image/mask.png");
    mask-image: url("../image/mask.png");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 83.3% 100%;
    mask-size: 83.3% 100%;
    -webkit-mask-position: 50% 100%;
    mask-position: 50% 100%;
    width: 1920px;
    height: 800px
}

@media screen and (min-width: 769px) {
    .about_data_visual_figure {
        width: 100vw;
        height: 41.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_visual_figure {
        width: 100vw;
        height: 43.5897435897vw;
        -webkit-mask-size: 87.6% 100%;
        mask-size: 87.6% 100%
    }
}

.about_data_visual_figure_img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.about_data_ttl {
    width: 100%;
    text-align: center;
    font-weight: 500;
    font-size: 4rem;
    line-height: 64px;
    margin-bottom: 80px
}

@media screen and (min-width: 769px) {
    .about_data_ttl {
        font-size: 2.0833333333vw;
        line-height: 3.3333333333vw;
        margin-bottom: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_ttl {
        text-align: left;
        font-size: 5.641025641vw;
        line-height: 10.2564102564vw;
        margin-bottom: 12.3076923077vw
    }
}

.about_data_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media screen and (max-width: 768px) {
    .about_data_list {
        -ms-flex-flow: column;
        flex-flow: column;
        -ms-flex-align: center;
        align-items: center
    }
}

.about_data_list_item {
    background: #fff;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
    flex-flow: column;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: end;
    justify-content: flex-end;
    position: relative;
    width: 560px;
    height: 560px;
    margin-bottom: 80px;
    padding-bottom: 58px
}

@media screen and (min-width: 769px) {
    .about_data_list_item {
        width: 29.1666666667vw;
        height: 29.1666666667vw;
        margin-bottom: 4.1666666667vw;
        padding-bottom: 3.0208333333vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_list_item {
        width: 87.6923076923vw;
        height: 87.6923076923vw;
        margin: 0 auto 8.2051282051vw;
        padding-bottom: 10.2564102564vw
    }
}

.about_data_list_item:nth-child(odd) {
    margin-right: 80px
}

@media screen and (min-width: 769px) {
    .about_data_list_item:nth-child(odd) {
        margin-right: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_list_item:nth-child(odd) {
        margin-right: auto
    }
}

@media screen and (min-width: 769px) {
    .about_data_list_item:nth-last-child(-n+2) {
        margin-bottom: 0
    }
}

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

.about_data_list_item_ttl {
    width: 100%;
    font-weight: 500;
    text-align: center;
    font-size: 2.4rem;
    line-height: 48px
}

@media screen and (min-width: 769px) {
    .about_data_list_item_ttl {
        font-size: 1.25vw;
        line-height: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_list_item_ttl {
        font-size: 4.6153846154vw;
        line-height: 8.2051282051vw
    }
}

.about_data_list_item_ttl strong {
    color: #74748f;
    font-size: 3.6rem;
    line-height: 48px;
    padding: 0px 4px
}

@media screen and (min-width: 769px) {
    .about_data_list_item_ttl strong {
        font-size: 1.875vw;
        line-height: 2.5vw;
        padding: 0vw 0.2083333333vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_list_item_ttl strong {
        font-size: 8.2051282051vw;
        line-height: 8.2051282051vw;
        padding: 0vw 1.0256410256vw
    }
}

.about_data_list_item_pic {
    -ms-flex-order: -1;
    order: -1
}

.about_data_list_item_pic_svg {
    display: block
}

.about_data_history .about_data_list_item_pic_svg {
    height: auto;
    width: 271px;
    margin-left: 54px;
    margin-bottom: 48px
}

@media screen and (min-width: 769px) {
    .about_data_history .about_data_list_item_pic_svg {
        width: 14.1145833333vw;
        margin-left: 2.8125vw;
        margin-bottom: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_history .about_data_list_item_pic_svg {
        width: 41.5384615385vw;
        margin-left: 12.3076923077vw;
        margin-bottom: 8.2051282051vw
    }
}

.about_data_bearing .about_data_list_item_pic_svg {
    height: auto;
    width: 360px;
    margin-bottom: 38px
}

@media screen and (min-width: 769px) {
    .about_data_bearing .about_data_list_item_pic_svg {
        width: 18.75vw;
        margin-bottom: 1.9791666667vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_bearing .about_data_list_item_pic_svg {
        width: 54.8717948718vw;
        margin-bottom: -2.8205128205vw
    }
}

.about_data_china .about_data_list_item_pic_svg {
    height: auto;
    width: 462px;
    margin-bottom: 46px
}

@media screen and (min-width: 769px) {
    .about_data_china .about_data_list_item_pic_svg {
        width: 24.0625vw;
        margin-bottom: 2.3958333333vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_china .about_data_list_item_pic_svg {
        width: 71.7948717949vw;
        margin-bottom: 8.2051282051vw
    }
}

.about_data_world .about_data_list_item_pic_svg {
    height: auto;
    width: 514px;
    margin-bottom: 50px
}

@media screen and (min-width: 769px) {
    .about_data_world .about_data_list_item_pic_svg {
        width: 26.7708333333vw;
        margin-bottom: 2.6041666667vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_world .about_data_list_item_pic_svg {
        width: 75.3846153846vw;
        margin-bottom: 15.8974358974vw
    }
}

.about_data_list_item_pic_num {
    border-radius: 50%;
    color: #fff;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    font-size: 1.6rem;
    line-height: 32px
}

@media screen and (min-width: 769px) {
    .about_data_list_item_pic_num {
        font-size: 0.8333333333vw;
        line-height: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_list_item_pic_num {
        font-size: 3.8461538462vw;
        line-height: 3.8461538462vw
    }
}

.about_data_list_item_pic_num .line {
    position: relative;
    z-index: 1
}

.about_data_list_item_pic_num .num {
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-size: 3.2rem;
    line-height: 32px;
    margin-right: 4px
}

@media screen and (min-width: 769px) {
    .about_data_list_item_pic_num .num {
        font-size: 1.6666666667vw;
        line-height: 1.6666666667vw;
        margin-right: 0.2083333333vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_list_item_pic_num .num {
        font-size: 6.1538461538vw;
        line-height: 6.1538461538vw;
        margin-right: .5128205128vw
    }
}

.about_data_list_item_pic_num .circle {
    border-radius: 50%;
    background: #74748f;
    opacity: .7;
    position: absolute;
    z-index: 0
}

.about_data_list_item_pic_num .circle_bg {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #74748f;
    opacity: 1;
    position: absolute;
    z-index: 0
}

.about_data_history .about_data_list_item_pic_num {
    width: 136px;
    height: 136px;
    top: 116px;
    left: 108px
}

@media screen and (min-width: 769px) {
    .about_data_history .about_data_list_item_pic_num {
        width: 7.0833333333vw;
        height: 7.0833333333vw;
        top: 6.0416666667vw;
        left: 5.625vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_history .about_data_list_item_pic_num {
        width: 30.7692307692vw;
        height: 30.7692307692vw;
        top: 14.358974359vw;
        left: 12.3076923077vw
    }
}

.about_data_history .about_data_list_item_pic_num .circle {
    width: 160px;
    height: 160px;
    top: -12px;
    left: -12px
}

@media screen and (min-width: 769px) {
    .about_data_history .about_data_list_item_pic_num .circle {
        width: 8.3333333333vw;
        height: 8.3333333333vw;
        top: -0.625vw;
        left: -0.625vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_history .about_data_list_item_pic_num .circle {
        width: 34.8717948718vw;
        height: 34.8717948718vw;
        top: -2.0512820513vw;
        left: -2.0512820513vw
    }
}

.about_data_bearing .about_data_list_item_pic_num {
    left: 50%;
    width: 120px;
    height: 120px;
    top: 168px;
    margin-left: -60px
}

@media screen and (min-width: 769px) {
    .about_data_bearing .about_data_list_item_pic_num {
        width: 6.25vw;
        height: 6.25vw;
        top: 8.75vw;
        margin-left: -3.125vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_bearing .about_data_list_item_pic_num {
        width: 22.5641025641vw;
        height: 22.5641025641vw;
        top: 23.5897435897vw;
        margin-left: -11.2820512821vw
    }
}

.about_data_bearing .about_data_list_item_pic_num .circle {
    width: 144px;
    height: 144px;
    top: -12px;
    left: -12px
}

@media screen and (min-width: 769px) {
    .about_data_bearing .about_data_list_item_pic_num .circle {
        width: 7.5vw;
        height: 7.5vw;
        top: -0.625vw;
        left: -0.625vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_bearing .about_data_list_item_pic_num .circle {
        width: 26.6666666667vw;
        height: 26.6666666667vw;
        top: -2.0512820513vw;
        left: -2.0512820513vw
    }
}

.about_data_china .about_data_list_item_pic_num {
    width: 136px;
    height: 136px;
    top: 116px;
    right: 76px
}

@media screen and (min-width: 769px) {
    .about_data_china .about_data_list_item_pic_num {
        width: 7.0833333333vw;
        height: 7.0833333333vw;
        top: 6.0416666667vw;
        right: 3.9583333333vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_china .about_data_list_item_pic_num {
        width: 30.7692307692vw;
        height: 30.7692307692vw;
        top: 14.358974359vw;
        right: 12.3076923077vw
    }
}

.about_data_china .about_data_list_item_pic_num .circle {
    width: 160px;
    height: 160px;
    top: -12px;
    left: -12px
}

@media screen and (min-width: 769px) {
    .about_data_china .about_data_list_item_pic_num .circle {
        width: 8.3333333333vw;
        height: 8.3333333333vw;
        top: -0.625vw;
        left: -0.625vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_china .about_data_list_item_pic_num .circle {
        width: 34.8717948718vw;
        height: 34.8717948718vw;
        top: -2.0512820513vw;
        left: -2.0512820513vw
    }
}

.about_data_world .about_data_list_item_pic_num {
    width: 160px;
    height: 160px;
    top: 95px;
    left: 140px
}

@media screen and (min-width: 769px) {
    .about_data_world .about_data_list_item_pic_num {
        width: 8.3333333333vw;
        height: 8.3333333333vw;
        top: 4.9479166667vw;
        left: 7.2916666667vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_world .about_data_list_item_pic_num {
        width: 30.7692307692vw;
        height: 30.7692307692vw;
        top: 28.2051282051vw;
        left: 31.7948717949vw
    }
}

.about_data_world .about_data_list_item_pic_num .circle {
    width: 184px;
    height: 184px;
    top: -12px;
    left: -12px
}

@media screen and (min-width: 769px) {
    .about_data_world .about_data_list_item_pic_num .circle {
        width: 9.5833333333vw;
        height: 9.5833333333vw;
        top: -0.625vw;
        left: -0.625vw
    }
}

@media screen and (max-width: 768px) {
    .about_data_world .about_data_list_item_pic_num .circle {
        width: 34.8717948718vw;
        height: 34.8717948718vw;
        top: -2.0512820513vw;
        left: -2.0512820513vw
    }
}

.business_feature,
.technology_feature {
    position: relative
}

.business_feature .sec_ttl_en,
.technology_feature .sec_ttl_en {
    left: 50%;
    margin-left: -600px
}

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

    .business_feature .sec_ttl_en,
    .technology_feature .sec_ttl_en {
        margin-left: -31.25vw
    }
}

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

    .business_feature .sec_ttl_en,
    .technology_feature .sec_ttl_en {
        left: 0;
        margin-left: 0
    }
}

.business_feature_info,
.technology_feature_info {
    box-sizing: border-box;
    margin: 0 auto;
    width: 996px
}

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

    .business_feature_info,
    .technology_feature_info {
        width: 51.875vw
    }
}

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

    .business_feature_info,
    .technology_feature_info {
        width: 100%;
        padding: 0vw
    }
}

.business_feature_ttl,
.technology_feature_ttl {
    font-weight: 500;
    text-align: center;
    font-size: 4rem;
    line-height: 64px;
    margin-bottom: 80px
}

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

    .business_feature_ttl,
    .technology_feature_ttl {
        font-size: 2.0833333333vw;
        line-height: 3.3333333333vw;
        margin-bottom: 4.1666666667vw
    }
}

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

    .business_feature_ttl,
    .technology_feature_ttl {
        font-size: 5.641025641vw;
        line-height: 10.2564102564vw;
        margin-bottom: 10.2564102564vw
    }
}

.business_feature_desc p,
.technology_feature_desc p {
    font-size: 1.8rem;
    line-height: 40px;
    margin-bottom: 16px
}

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

    .business_feature_desc p,
    .technology_feature_desc p {
        font-size: 0.9375vw;
        line-height: 2.0833333333vw;
        margin-bottom: 0.8333333333vw
    }
}

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

    .business_feature_desc p,
    .technology_feature_desc p {
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw;
        margin-bottom: 4.1025641026vw
    }
}

.business_feature_desc p:last-child,
.technology_feature_desc p:last-child {
    margin-bottom: 0
}

.business_feature_maker,
.technology_feature_maker {
    padding-top: 120px
}

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

    .business_feature_maker,
    .technology_feature_maker {
        padding-top: 6.25vw
    }
}

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

    .business_feature_maker,
    .technology_feature_maker {
        padding-top: 16.4102564103vw
    }
}

.business_feature_maker_list,
.technology_feature_maker_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    box-sizing: border-box;
    padding: 64px 24px 0px
}

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

    .business_feature_maker_list,
    .technology_feature_maker_list {
        padding: 3.3333333333vw 1.25vw 0vw
    }
}

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

    .business_feature_maker_list,
    .technology_feature_maker_list {
        padding: 8.2051282051vw 0vw 0vw;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}

.business_feature_maker_list_item,
.technology_feature_maker_list_item {
    box-sizing: border-box;
    position: relative;
    width: 384px;
    margin-bottom: 16px;
    padding-left: 44px;
    font-size: 1.8rem;
    line-height: 32px
}

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

    .business_feature_maker_list_item,
    .technology_feature_maker_list_item {
        width: 20vw;
        margin-bottom: 0.8333333333vw;
        padding-left: 2.2916666667vw;
        font-size: 0.9375vw;
        line-height: 1.6666666667vw
    }
}

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

    .business_feature_maker_list_item,
    .technology_feature_maker_list_item {
        width: 41.2820512821vw;
        margin-bottom: 3.0769230769vw;
        padding-left: 5.641025641vw;
        font-size: 3.8461538462vw;
        line-height: 4.6153846154vw
    }
}

.business_feature_maker_list_item:before,
.technology_feature_maker_list_item:before {
    content: "";
    position: absolute;
    display: block;
    border-radius: 50%;
    background: #74748f;
    width: 8px;
    height: 8px;
    top: 14px;
    left: 16px
}

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

    .business_feature_maker_list_item:before,
    .technology_feature_maker_list_item:before {
        width: 0.4166666667vw;
        height: 0.4166666667vw;
        top: 0.7291666667vw;
        left: 0.8333333333vw
    }
}

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

    .business_feature_maker_list_item:before,
    .technology_feature_maker_list_item:before {
        width: 2.0512820513vw;
        height: 2.0512820513vw;
        top: 1.5384615385vw;
        left: 2.0512820513vw
    }
}

.business_feature_maker_list_item a,
.business_feature_maker_list_item span,
.technology_feature_maker_list_item a,
.technology_feature_maker_list_item span {
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit
}

.business_feature_next_bg,
.technology_feature_next_bg {
    background-image: url("../image/feature_bg.jpg")
}

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

    .business_feature_next_bg,
    .technology_feature_next_bg {
        background-image: url("../image/feature_bg_sp.jpg")
    }
}

.business_focus {
    position: relative
}

.business_focus_info {
    box-sizing: border-box;
    margin: 0 auto;
    width: 996px
}

@media screen and (min-width: 769px) {
    .business_focus_info {
        width: 51.875vw
    }
}

@media screen and (max-width: 768px) {
    .business_focus_info {
        width: 100%;
        padding: 0vw
    }
}

.business_focus_ttl {
    font-weight: 500;
    text-align: center;
    font-size: 4rem;
    line-height: 64px;
    margin-bottom: 80px
}

@media screen and (min-width: 769px) {
    .business_focus_ttl {
        font-size: 2.0833333333vw;
        line-height: 3.3333333333vw;
        margin-bottom: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .business_focus_ttl {
        font-size: 5.641025641vw;
        line-height: 10.2564102564vw;
        margin-bottom: 10.2564102564vw
    }
}

.business_focus_desc p {
    font-size: 1.8rem;
    line-height: 40px;
    margin-bottom: 16px
}

@media screen and (min-width: 769px) {
    .business_focus_desc p {
        font-size: 0.9375vw;
        line-height: 2.0833333333vw;
        margin-bottom: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .business_focus_desc p {
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw;
        margin-bottom: 4.1025641026vw
    }
}

.business_focus_desc p:last-child {
    margin-bottom: 0
}

.business_focus_next_bg {
    background-position: bottom center;
    background-image: url("../image/contact_bg.jpg")
}

@media screen and (max-width: 768px) {
    .business_focus_next_bg {
        background-image: url("../image/contact_bg_sp.jpg")
    }
}

.business_focus_next .btn_round {
    width: 224px;
    height: 56px
}

@media screen and (min-width: 769px) {
    .business_focus_next .btn_round {
        width: 11.6666666667vw;
        height: 2.9166666667vw
    }
}

@media screen and (max-width: 768px) {
    .business_focus_next .btn_round {
        width: 50.2564102564vw;
        height: 14.358974359vw
    }
}

.business_focus_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-top: 80px
}

@media screen and (min-width: 769px) {
    .business_focus_list {
        margin-top: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .business_focus_list {
        -ms-flex-flow: column;
        flex-flow: column;
        margin-top: 12.3076923077vw
    }
}

.business_focus_list_item {
    width: 360px;
    margin-right: 60px
}

@media screen and (min-width: 769px) {
    .business_focus_list_item {
        width: 18.75vw;
        margin-right: 3.125vw
    }
}

@media screen and (max-width: 768px) {
    .business_focus_list_item {
        width: 100%;
        margin-right: auto;
        margin-bottom: 8.2051282051vw
    }

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

.business_focus_list_item:nth-child(3n) {
    margin-right: 0
}

@media screen and (max-width: 768px) {
    .business_focus_list_item:nth-child(3n) {
        margin-right: auto
    }
}

.half .business_focus_list_item {
    width: 546px;
    margin-right: 108px
}

@media screen and (min-width: 769px) {
    .half .business_focus_list_item {
        width: 28.4375vw;
        margin-right: 5.625vw
    }
}

@media screen and (max-width: 768px) {
    .half .business_focus_list_item {
        width: 100%;
        margin-right: auto;
        margin-bottom: 8.2051282051vw
    }

    .half .business_focus_list_item:last-child {
        margin-bottom: 0
    }
}

.half .business_focus_list_item:nth-child(2n) {
    margin-right: 0
}

@media screen and (max-width: 768px) {
    .half .business_focus_list_item:nth-child(2n) {
        margin-right: auto
    }
}

.business_focus_list_item_figure {
    overflow: hidden;
    background: rgba(122, 129, 146, .3);
    margin: 0 auto;
    width: 360px;
    height: 240px
}

@media screen and (min-width: 769px) {
    .business_focus_list_item_figure {
        width: 18.75vw;
        height: 12.5vw
    }
}

@media screen and (max-width: 768px) {
    .business_focus_list_item_figure {
        width: 87.6923076923vw;
        height: 58.4615384615vw
    }
}

.business_focus_list_item_figure_img {
    display: block;
    width: 100%;
    height: auto
}

.half .business_focus_list_item_figure {
    width: 546px;
    height: 364px
}

@media screen and (min-width: 769px) {
    .half .business_focus_list_item_figure {
        width: 28.4375vw;
        height: 18.9583333333vw
    }
}

@media screen and (max-width: 768px) {
    .half .business_focus_list_item_figure {
        width: 87.6923076923vw;
        height: 58.4615384615vw
    }
}

.business_focus_list_item_desc {
    font-size: 1.6rem;
    line-height: 32px;
    margin-top: 16px
}

@media screen and (min-width: 769px) {
    .business_focus_list_item_desc {
        font-size: 0.8333333333vw;
        line-height: 1.6666666667vw;
        margin-top: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .business_focus_list_item_desc {
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw;
        margin-top: 4.1025641026vw
    }
}

.business_faq {
    position: relative
}

.business_faq .sec_ttl_en {
    width: 100%;
    text-align: center;
    left: 0;
    margin-left: 0px
}

@media screen and (min-width: 769px) {
    .business_faq .sec_ttl_en {
        margin-left: 0vw
    }
}

@media screen and (max-width: 768px) {
    .business_faq .sec_ttl_en {
        left: 0;
        margin-left: 0
    }
}

.business_faq_desc p {
    text-align: center;
    font-size: 1.8rem;
    line-height: 40px
}

@media screen and (min-width: 769px) {
    .business_faq_desc p {
        font-size: 0.9375vw;
        line-height: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .business_faq_desc p {
        text-align: left;
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw;
        margin-bottom: 4.1025641026vw
    }
}

.business_faq_desc p:last-child {
    margin-bottom: 0
}

.business_faq_list {
    width: 100%;
    margin: 0 auto;
    border-bottom: 1px solid #e4e4e9;
    margin-top: 152px
}

@media screen and (min-width: 769px) {
    .business_faq_list {
        margin-top: 7.9166666667vw
    }
}

@media screen and (max-width: 768px) {
    .business_faq_list {
        margin-top: 12.3076923077vw
    }
}

.business_faq_list_item {
    width: 100%;
    border-top: 1px solid #e4e4e9;
    position: relative;
    box-sizing: border-box;
    padding: 56px 102px
}

@media screen and (min-width: 769px) {
    .business_faq_list_item {
        padding: 2.9166666667vw 5.3125vw
    }
}

@media screen and (max-width: 768px) {
    .business_faq_list_item {
        padding: 8.2051282051vw 0vw 6.1538461538vw 0vw
    }
}

.business_faq_list_item:before {
    content: "";
    position: absolute;
    border-top: 1px solid #74748f;
    top: -1px;
    left: 0;
    width: 96px
}

@media screen and (min-width: 769px) {
    .business_faq_list_item:before {
        width: 5vw
    }
}

@media screen and (max-width: 768px) {
    .business_faq_list_item:before {
        width: 16.4102564103vw
    }
}

.business_faq_list_item_q {
    cursor: pointer;
    padding: 4px 0px
}

@media screen and (min-width: 769px) {
    .business_faq_list_item_q {
        padding: 0.2083333333vw 0vw
    }
}

@media screen and (max-width: 768px) {
    .business_faq_list_item_q {
        position: relative;
        padding: 0vw 12.3076923077vw 0vw 10.2564102564vw
    }
}

.business_faq_list_item_q:before {
    content: "Q";
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 4rem;
    line-height: 40px;
    top: 0px;
    left: -102px
}

@media screen and (min-width: 769px) {
    .business_faq_list_item_q:before {
        font-size: 2.0833333333vw;
        line-height: 2.0833333333vw;
        top: 0vw;
        left: -5.3125vw
    }
}

@media screen and (max-width: 768px) {
    .business_faq_list_item_q:before {
        font-size: 6.1538461538vw;
        line-height: 6.1538461538vw;
        top: 0vw;
        left: 0vw
    }
}

.business_faq_list_item_q_txt {
    font-weight: bold;
    font-size: 2.2rem;
    line-height: 32px
}

@media screen and (min-width: 769px) {
    .business_faq_list_item_q_txt {
        font-size: 1.1458333333vw;
        line-height: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .business_faq_list_item_q_txt {
        font-size: 4.1025641026vw;
        line-height: 6.1538461538vw
    }
}

.business_faq_list_item_a {
    font-size: 1.6rem;
    line-height: 32px;
    padding-top: 16px
}

@media screen and (min-width: 769px) {
    .business_faq_list_item_a {
        font-size: 0.8333333333vw;
        line-height: 1.6666666667vw;
        padding-top: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .business_faq_list_item_a {
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw;
        padding-top: 6.1538461538vw
    }
}

.js-slideBtn {
    position: relative
}

.js-slideBtn .btn_plus {
    position: absolute;
    margin: 0;
    width: 56px;
    height: 56px;
    top: -8px;
    right: -100px
}

@media screen and (min-width: 769px) {
    .js-slideBtn .btn_plus {
        width: 2.9166666667vw;
        height: 2.9166666667vw;
        top: -0.4166666667vw;
        right: -5.2083333333vw
    }
}

@media screen and (max-width: 768px) {
    .js-slideBtn .btn_plus {
        width: 10.2564102564vw;
        height: 10.2564102564vw;
        top: 0vw;
        right: 0vw
    }
}

.js-slideBtn .btn_plus_link {
    display: block;
    width: 100%;
    height: 100%
}

.js-slideBtn .btn_plus_link .ico_circle {
    width: 100%;
    height: 100%
}

.js-slideBtn .btn_plus_link .ico_circle circle {
    stroke-width: 2px;
    opacity: 1;
    stroke: #e4e4e9;
    transition: opacity .6s cubic-bezier(0.25, 0.46, 0.45, 0.94), stroke-dashoffset .6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    stroke-dashoffset: 0;
    stroke-dasharray: 380
}

@media screen and (max-width: 768px) {
    .js-slideBtn .btn_plus_link .ico_circle circle {
        stroke-dasharray: 194.8717948718vw
    }
}

.js-slideBtn .btn_plus_link .ico_plus {
    position: absolute;
    top: 50%;
    left: 50%;
    transition: transform .6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    -ms-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
    width: 16px;
    height: 16px;
    margin-left: -8px;
    margin-top: -8px
}

@media screen and (min-width: 769px) {
    .js-slideBtn .btn_plus_link .ico_plus {
        width: 0.8333333333vw;
        height: 0.8333333333vw;
        margin-left: -0.4166666667vw;
        margin-top: -0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .js-slideBtn .btn_plus_link .ico_plus {
        width: 4.1025641026vw;
        height: 4.1025641026vw;
        margin-top: -2.0512820513vw;
        margin-left: -2.0512820513vw
    }
}

.js-slideBtn .btn_plus_link .ico_plus_v {
    transition: transform .6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    -ms-transform-origin: center center;
    transform-origin: center center
}

.js-slideBtn .btn_plus_link:hover .ico_plus {
    -ms-transform: scale(1.066) rotate(-180deg);
    transform: scale(1.066) rotate(-180deg)
}

.js-slideBtn .btn_plus_link:hover .ico_circle circle {
    stroke-dashoffset: 760
}

@media screen and (max-width: 768px) {
    .js-slideBtn .btn_plus_link:hover .ico_circle circle {
        stroke-dashoffset: 389.7435897436vw
    }
}

.js-slideBtn.is-open .ico_plus_v {
    -ms-transform: scaleY(0);
    transform: scaleY(0)
}

.js-slideCnt {
    display: none
}

.technology_merit_next,
.technology_type_next,
.business_feature_next,
.technology_feature_next,
.business_focus_next {
    width: 100%;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-flow: column;
    flex-flow: column;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    overflow: hidden;
    height: 320px;
    margin-top: 120px
}

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

    .technology_merit_next,
    .technology_type_next,
    .business_feature_next,
    .technology_feature_next,
    .business_focus_next {
        height: 16.6666666667vw;
        margin-top: 6.25vw
    }
}

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

    .technology_merit_next,
    .technology_type_next,
    .business_feature_next,
    .technology_feature_next,
    .business_focus_next {
        height: 52.3076923077vw;
        margin-top: 16.4102564103vw
    }
}

.technology_merit_next_ttl,
.technology_type_next_ttl,
.business_feature_next_ttl,
.technology_feature_next_ttl,
.business_focus_next_ttl {
    color: #fff;
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 40px;
    margin-bottom: 32px
}

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

    .technology_merit_next_ttl,
    .technology_type_next_ttl,
    .business_feature_next_ttl,
    .technology_feature_next_ttl,
    .business_focus_next_ttl {
        font-size: 1.25vw;
        line-height: 2.0833333333vw;
        margin-bottom: 1.6666666667vw
    }
}

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

    .technology_merit_next_ttl,
    .technology_type_next_ttl,
    .business_feature_next_ttl,
    .technology_feature_next_ttl,
    .business_focus_next_ttl {
        font-size: 4.6153846154vw;
        line-height: 7.1794871795vw;
        margin-bottom: 6.1538461538vw
    }
}

.technology_merit_next_bg,
.technology_type_next_bg,
.business_feature_next_bg,
.technology_feature_next_bg,
.business_focus_next_bg {
    position: absolute;
    overflow: hidden;
    background-color: rgba(122, 129, 146, .3);
    margin: 0 auto;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
    background-position: top center;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover
}

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

    .technology_merit_next_bg,
    .technology_type_next_bg,
    .business_feature_next_bg,
    .technology_feature_next_bg,
    .business_focus_next_bg {
        background-position: center center;
        background-attachment: local;
        background-repeat: no-repeat;
        background-size: cover
    }
}

.technology_feature_point {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    width: 544px;
    height: 528px;
    margin: 88px auto 272px
}

@media screen and (min-width: 769px) {
    .technology_feature_point {
        width: 28.3333333333vw;
        height: 27.5vw;
        margin: 4.5833333333vw auto 14.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .technology_feature_point {
        width: 82.0512820513vw;
        height: 86.1538461538vw;
        margin: 14.358974359vw auto 32.8205128205vw
    }
}

.technology_feature_point:before {
    content: "";
    box-sizing: border-box;
    border-radius: 50%;
    top: 50%;
    left: 50%;
    border: solid #e4e4e9;
    position: absolute;
    width: 400px;
    height: 400px;
    border-width: 1px;
    margin-left: -200px;
    margin-top: -200px
}

@media screen and (min-width: 769px) {
    .technology_feature_point:before {
        width: 20.8333333333vw;
        height: 20.8333333333vw;
        border-width: 0.0520833333vw;
        margin-left: -10.4166666667vw;
        margin-top: -10.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .technology_feature_point:before {
        width: 61.5384615385vw;
        height: 61.5384615385vw;
        border-width: .2564102564vw;
        margin-left: -30.7692307692vw;
        margin-top: -30.7692307692vw
    }
}

.technology_feature_point_ttl {
    font-weight: 700;
    text-align: center;
    font-size: 2.4rem;
    line-height: 40px
}

@media screen and (min-width: 769px) {
    .technology_feature_point_ttl {
        font-size: 1.25vw;
        line-height: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .technology_feature_point_ttl {
        font-size: 5.1282051282vw;
        line-height: 8.2051282051vw
    }
}

.technology_feature_point_item {
    border-radius: 50%;
    box-sizing: border-box;
    border: solid #74748f;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    opacity: 0;
    transition: transform cubic-bezier(0.25, 0.46, 0.45, 0.94) .5s, opacity cubic-bezier(0.25, 0.46, 0.45, 0.94) .4s;
    border-width: 3px;
    width: 160px;
    height: 160px;
    margin-top: -80px;
    margin-left: -80px
}

@media screen and (min-width: 769px) {
    .technology_feature_point_item {
        border-width: 0.15625vw;
        width: 8.3333333333vw;
        height: 8.3333333333vw;
        margin-top: -4.1666666667vw;
        margin-left: -4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .technology_feature_point_item {
        border-width: .7692307692vw;
        width: 26.6666666667vw;
        height: 26.6666666667vw;
        margin-top: -13.3333333333vw;
        margin-left: -13.3333333333vw
    }
}

.is-active .technology_feature_point_item {
    opacity: 1
}

.technology_feature_point_item_wrap {
    width: 100%;
    height: 100%;
    position: absolute;
    display: -ms-flexbox;
    display: flex;
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    transition: transform cubic-bezier(0.25, 0.46, 0.45, 0.94) .9s
}

.is-active .technology_feature_point_item_wrap {
    -ms-transform: rotate(360deg);
    transform: rotate(360deg)
}

.technology_feature_point_item:before {
    content: "";
    border-radius: 50%;
    opacity: .05;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    width: 178px;
    height: 178px;
    margin-top: -89px;
    margin-left: -89px
}

@media screen and (min-width: 769px) {
    .technology_feature_point_item:before {
        width: 9.2708333333vw;
        height: 9.2708333333vw;
        margin-top: -4.6354166667vw;
        margin-left: -4.6354166667vw
    }
}

@media screen and (max-width: 768px) {
    .technology_feature_point_item:before {
        width: 30.7692307692vw;
        height: 30.7692307692vw;
        margin-top: -15.3846153846vw;
        margin-left: -15.3846153846vw
    }
}

.technology_feature_point_item:after {
    content: "";
    position: absolute;
    background: #fff;
    border-radius: 50%;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 0;
    display: block
}

.technology_feature_point_item.heat {
    transition-delay: 0s;
    border-color: #da0012
}

.technology_feature_point_item.heat:before {
    background: #da0012
}

.is-active .technology_feature_point_item.heat {
    -ms-transform: translate(0px, -184px);
    transform: translate(0px, -184px)
}

@media screen and (min-width: 769px) {
    .is-active .technology_feature_point_item.heat {
        -ms-transform: translate(0vw, -9.5833333333vw);
        transform: translate(0vw, -9.5833333333vw)
    }
}

@media screen and (max-width: 768px) {
    .is-active .technology_feature_point_item.heat {
        -ms-transform: translate(0vw, -32.3076923077vw);
        transform: translate(0vw, -32.3076923077vw)
    }
}

.technology_feature_point_item.insulation {
    transition-delay: .05s;
    border-color: #7a8192
}

.technology_feature_point_item.insulation:before {
    background: #7a8192
}

.is-active .technology_feature_point_item.insulation {
    -ms-transform: translate(192px, -24px);
    transform: translate(192px, -24px)
}

@media screen and (min-width: 769px) {
    .is-active .technology_feature_point_item.insulation {
        -ms-transform: translate(10vw, -1.25vw);
        transform: translate(10vw, -1.25vw)
    }
}

@media screen and (max-width: 768px) {
    .is-active .technology_feature_point_item.insulation {
        -ms-transform: translate(27.6923076923vw, -9.2307692308vw);
        transform: translate(27.6923076923vw, -9.2307692308vw)
    }
}

.technology_feature_point_item.vacuum {
    transition-delay: .1s;
    border-color: #006fbe
}

.technology_feature_point_item.vacuum:before {
    background: #006fbe
}

.is-active .technology_feature_point_item.vacuum {
    -ms-transform: translate(112px, 184px);
    transform: translate(112px, 184px)
}

@media screen and (min-width: 769px) {
    .is-active .technology_feature_point_item.vacuum {
        -ms-transform: translate(5.8333333333vw, 9.5833333333vw);
        transform: translate(5.8333333333vw, 9.5833333333vw)
    }
}

@media screen and (max-width: 768px) {
    .is-active .technology_feature_point_item.vacuum {
        -ms-transform: translate(-16.4102564103vw, 32.3076923077vw);
        transform: translate(-16.4102564103vw, 32.3076923077vw)
    }
}

.technology_feature_point_item.magnetic {
    transition-delay: .15s;
    border-color: #b54c00
}

.technology_feature_point_item.magnetic:before {
    background: #b54c00
}

.is-active .technology_feature_point_item.magnetic {
    -ms-transform: translate(-112px, 184px);
    transform: translate(-112px, 184px)
}

@media screen and (min-width: 769px) {
    .is-active .technology_feature_point_item.magnetic {
        -ms-transform: translate(-5.8333333333vw, 9.5833333333vw);
        transform: translate(-5.8333333333vw, 9.5833333333vw)
    }
}

@media screen and (max-width: 768px) {
    .is-active .technology_feature_point_item.magnetic {
        -ms-transform: translate(16.4102564103vw, 32.3076923077vw);
        transform: translate(16.4102564103vw, 32.3076923077vw)
    }
}

.stainless-bearings .is-active .technology_feature_point_item.magnetic {
    -ms-transform: translate(176px, 72px);
    transform: translate(176px, 72px)
}

@media screen and (min-width: 769px) {
    .stainless-bearings .is-active .technology_feature_point_item.magnetic {
        -ms-transform: translate(9.1666666667vw, 3.75vw);
        transform: translate(9.1666666667vw, 3.75vw)
    }
}

@media screen and (max-width: 768px) {
    .stainless-bearings .is-active .technology_feature_point_item.magnetic {
        -ms-transform: translate(27.6923076923vw, 8.7179487179vw);
        transform: translate(27.6923076923vw, 8.7179487179vw)
    }
}

.technology_feature_point_item.corrosion {
    transition-delay: .2s;
    border-color: #0a7e00
}

.technology_feature_point_item.corrosion:before {
    background: #0a7e00
}

.is-active .technology_feature_point_item.corrosion {
    -ms-transform: translate(-192px, -24px);
    transform: translate(-192px, -24px)
}

@media screen and (min-width: 769px) {
    .is-active .technology_feature_point_item.corrosion {
        -ms-transform: translate(-10vw, -1.25vw);
        transform: translate(-10vw, -1.25vw)
    }
}

@media screen and (max-width: 768px) {
    .is-active .technology_feature_point_item.corrosion {
        -ms-transform: translate(-27.6923076923vw, -9.2307692308vw);
        transform: translate(-27.6923076923vw, -9.2307692308vw)
    }
}

.stainless-bearings .is-active .technology_feature_point_item.corrosion {
    -ms-transform: translate(-176px, 72px);
    transform: translate(-176px, 72px)
}

@media screen and (min-width: 769px) {
    .stainless-bearings .is-active .technology_feature_point_item.corrosion {
        -ms-transform: translate(-9.1666666667vw, 3.75vw);
        transform: translate(-9.1666666667vw, 3.75vw)
    }
}

@media screen and (max-width: 768px) {
    .stainless-bearings .is-active .technology_feature_point_item.corrosion {
        -ms-transform: translate(-27.6923076923vw, 8.7179487179vw);
        transform: translate(-27.6923076923vw, 8.7179487179vw)
    }
}

.technology_feature_point_item_name {
    width: 100%;
    height: 100%;
    text-align: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    font-weight: 700;
    z-index: 2;
    font-size: 2rem;
    line-height: 40px
}

@media screen and (min-width: 769px) {
    .technology_feature_point_item_name {
        font-size: 1.0416666667vw;
        line-height: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .technology_feature_point_item_name {
        font-size: 4.6153846154vw;
        line-height: 6.1538461538vw
    }
}

.technology_feature_point_item_ico {
    width: 100%;
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    z-index: 1
}

.technology_feature_point_item_ico svg {
    width: auto;
    opacity: .1;
    height: 80px
}

@media screen and (min-width: 769px) {
    .technology_feature_point_item_ico svg {
        height: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .technology_feature_point_item_ico svg {
        height: 14.358974359vw
    }
}

.technology_feature_point_item_name,
.technology_feature_point_item_ico {
    -ms-transform: rotate(-180deg);
    transform: rotate(-180deg);
    transition: transform cubic-bezier(0.25, 0.46, 0.45, 0.94) .9s
}

.is-active .technology_feature_point_item_name,
.is-active .technology_feature_point_item_ico {
    -ms-transform: rotate(-360deg);
    transform: rotate(-360deg)
}

.technology_merit {
    position: relative
}

.technology_merit_list {
    width: 100%;
    counter-reset: number
}

.technology_merit_list_item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-bottom: 1px solid #e4e4e9;
    counter-increment: number;
    padding-bottom: 64px;
    margin-bottom: 64px
}

@media screen and (min-width: 769px) {
    .technology_merit_list_item {
        padding-bottom: 3.3333333333vw;
        margin-bottom: 3.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .technology_merit_list_item {
        -ms-flex-pack: center;
        justify-content: center;
        padding-bottom: 10.2564102564vw;
        margin-bottom: 10.2564102564vw
    }
}

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

.technology_merit_list_item_ico {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    background: #fff;
    border-radius: 50%;
    position: relative;
    width: 200px;
    height: 200px;
    margin: 8px 0px 0px 8px
}

@media screen and (min-width: 769px) {
    .technology_merit_list_item_ico {
        width: 10.4166666667vw;
        height: 10.4166666667vw;
        margin: 0.4166666667vw 0vw 0vw 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .technology_merit_list_item_ico {
        width: 41.0256410256vw;
        height: 41.0256410256vw;
        margin: 0vw auto 6.1538461538vw
    }
}

.technology_merit_list_item_ico:before {
    content: "";
    position: absolute;
    background: #74748f;
    border-radius: 50%;
    opacity: .05;
    z-index: -1;
    width: 216px;
    height: 216px;
    top: -8px;
    left: -8px
}

@media screen and (min-width: 769px) {
    .technology_merit_list_item_ico:before {
        width: 11.25vw;
        height: 11.25vw;
        top: -0.4166666667vw;
        left: -0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .technology_merit_list_item_ico:before {
        width: 45.1282051282vw;
        height: 45.1282051282vw;
        top: -2.0512820513vw;
        left: -2.0512820513vw
    }
}

.corrosion .technology_merit_list_item_ico:before {
    background: #0a7e00
}

.rotation .technology_merit_list_item_ico:before {
    background: #4d5aee
}

.vacuum .technology_merit_list_item_ico:before {
    background: #006fbe
}

.heat .technology_merit_list_item_ico:before {
    background: #da0012
}

.magnetic .technology_merit_list_item_ico:before {
    background: #b54c00
}

.technology_merit_list_item_ico:after {
    content: counter(number, decimal-leading-zero);
    color: #74748f;
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    position: absolute;
    font-size: 3.2rem;
    line-height: 32px;
    top: -8px;
    left: -8px
}

@media screen and (min-width: 769px) {
    .technology_merit_list_item_ico:after {
        font-size: 1.6666666667vw;
        line-height: 1.6666666667vw;
        top: -0.4166666667vw;
        left: -0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .technology_merit_list_item_ico:after {
        font-size: 6.1538461538vw;
        line-height: 6.1538461538vw;
        top: -2.0512820513vw;
        left: -2.0512820513vw
    }
}

.technology_merit_list_item_ico svg {
    width: auto;
    height: 80px
}

@media screen and (min-width: 769px) {
    .technology_merit_list_item_ico svg {
        height: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .technology_merit_list_item_ico svg {
        height: 14.358974359vw
    }
}

.technology_merit_list_item_info {
    width: 894px
}

@media screen and (min-width: 769px) {
    .technology_merit_list_item_info {
        width: 46.5625vw
    }
}

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

.technology_merit_list_item_mark {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-bottom: 16px
}

@media screen and (min-width: 769px) {
    .technology_merit_list_item_mark {
        margin-bottom: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .technology_merit_list_item_mark {
        margin-bottom: 2.0512820513vw
    }
}

.technology_merit_list_item_mark mark {
    display: -ms-flexbox;
    display: flex;
    color: #fff;
    background: #74748f;
    font-size: 1.6rem;
    line-height: 16px;
    padding: 8px 32px;
    border-radius: 24px;
    margin-right: 8px;
    margin-bottom: 8px
}

@media screen and (min-width: 769px) {
    .technology_merit_list_item_mark mark {
        font-size: 0.8333333333vw;
        line-height: 0.8333333333vw;
        padding: 0.4166666667vw 1.6666666667vw;
        border-radius: 1.25vw;
        margin-right: 0.4166666667vw;
        margin-bottom: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .technology_merit_list_item_mark mark {
        font-size: 3.5897435897vw;
        line-height: 3.5897435897vw;
        padding: 2.0512820513vw 6.1538461538vw;
        border-radius: 6.1538461538vw;
        margin-right: 2.0512820513vw;
        margin-bottom: 2.0512820513vw
    }
}

.technology_merit_list_item_mark mark.corrosion,
.corrosion .technology_merit_list_item_mark mark {
    background: #0a7e00
}

.technology_merit_list_item_mark mark.rotation,
.rotation .technology_merit_list_item_mark mark {
    background: #4d5aee
}

.technology_merit_list_item_mark mark.vacuum,
.vacuum .technology_merit_list_item_mark mark {
    background: #006fbe
}

.technology_merit_list_item_mark mark.heat,
.heat .technology_merit_list_item_mark mark {
    background: #da0012
}

.technology_merit_list_item_mark mark.magnetic,
.magnetic .technology_merit_list_item_mark mark {
    background: #b54c00
}

.technology_merit_list_item_mark mark.insulation,
.insulation .technology_merit_list_item_mark mark {
    background: #7a8192
}

.technology_merit_list_item_ttl {
    font-weight: 700;
    font-size: 2.4rem;
    line-height: 40px;
    margin-bottom: 40px
}

@media screen and (min-width: 769px) {
    .technology_merit_list_item_ttl {
        font-size: 1.25vw;
        line-height: 2.0833333333vw;
        margin-bottom: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .technology_merit_list_item_ttl {
        font-size: 4.6153846154vw;
        line-height: 7.1794871795vw;
        margin-bottom: 6.1538461538vw
    }
}

.technology_merit_list_item_ttl small {
    font-weight: inherit;
    font-size: 2rem;
    line-height: 40px
}

@media screen and (min-width: 769px) {
    .technology_merit_list_item_ttl small {
        font-size: 1.0416666667vw;
        line-height: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .technology_merit_list_item_ttl small {
        font-size: 3.5897435897vw;
        line-height: 7.1794871795vw
    }
}

.technology_merit_list_item_data_ttl {
    font-weight: 700;
    position: relative;
    font-size: 2rem;
    line-height: 32px;
    margin-bottom: 8px;
    padding-left: 16px
}

@media screen and (min-width: 769px) {
    .technology_merit_list_item_data_ttl {
        font-size: 1.0416666667vw;
        line-height: 1.6666666667vw;
        margin-bottom: 0.4166666667vw;
        padding-left: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .technology_merit_list_item_data_ttl {
        font-size: 4.1025641026vw;
        line-height: 8.2051282051vw;
        margin-bottom: 2.0512820513vw;
        padding-left: 4.1025641026vw
    }
}

.technology_merit_list_item_data_ttl:before {
    content: "";
    position: absolute;
    left: 0;
    border-radius: 50%;
    background: #7a8192;
    width: 8px;
    height: 8px;
    top: 14px
}

@media screen and (min-width: 769px) {
    .technology_merit_list_item_data_ttl:before {
        width: 0.4166666667vw;
        height: 0.4166666667vw;
        top: 0.7291666667vw
    }
}

@media screen and (max-width: 768px) {
    .technology_merit_list_item_data_ttl:before {
        width: 2.0512820513vw;
        height: 2.0512820513vw;
        top: 3.5897435897vw
    }
}

.technology_merit_list_item_data_desc {
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 32px
}

@media screen and (min-width: 769px) {
    .technology_merit_list_item_data_desc {
        font-size: 0.8333333333vw;
        line-height: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .technology_merit_list_item_data_desc {
        font-size: 3.5897435897vw;
        line-height: 6.1538461538vw
    }
}

.ceramic-bearings .technology_merit_next_bg {
    background-image: url("../image/merit_bg.jpg")
}

@media screen and (max-width: 768px) {
    .ceramic-bearings .technology_merit_next_bg {
        background-image: url("../image/merit_bg_sp.jpg")
    }
}

.stainless-bearings .technology_merit_next_bg {
    background-image: url("../image/merit_bg1.jpg")
}

@media screen and (max-width: 768px) {
    .stainless-bearings .technology_merit_next_bg {
        background-image: url("../image/merit_bg_sp1.jpg")
    }
}

.technology_type {
    position: relative
}

.technology_type_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media screen and (max-width: 768px) {
    .technology_type_list {
        -ms-flex-flow: column;
        flex-flow: column;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: start;
        align-items: flex-start
    }
}

.technology_type_item {
    position: relative;
    border-top: solid #e4e4e9;
    width: 560px;
    border-top-width: 1px;
    padding: 24px 0px 64px
}

@media screen and (min-width: 769px) {
    .technology_type_item {
        width: 29.1666666667vw;
        border-top-width: 0.0520833333vw;
        padding: 1.25vw 0vw 3.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .technology_type_item {
        width: 100%;
        border-top-width: .2564102564vw;
        padding: 6.1538461538vw 0vw 10.2564102564vw
    }
}

.technology_type_item:before {
    content: "";
    position: absolute;
    left: 0;
    background: #74748f;
    width: 96px;
    height: 1px;
    top: -1px
}

@media screen and (min-width: 769px) {
    .technology_type_item:before {
        width: 5vw;
        height: 0.0520833333vw;
        top: -0.0520833333vw
    }
}

@media screen and (max-width: 768px) {
    .technology_type_item:before {
        width: 16.4102564103vw;
        height: .2564102564vw;
        top: -.2564102564vw
    }
}

.technology_type_item_ttl {
    font-weight: 700;
    font-size: 2rem;
    line-height: 40px;
    margin-bottom: 16px
}

@media screen and (min-width: 769px) {
    .technology_type_item_ttl {
        font-size: 1.0416666667vw;
        line-height: 2.0833333333vw;
        margin-bottom: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .technology_type_item_ttl {
        font-size: 4.1025641026vw;
        line-height: 6.1538461538vw;
        margin-bottom: 4.1025641026vw
    }
}

.technology_type_item_desc {
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 32px
}

@media screen and (min-width: 769px) {
    .technology_type_item_desc {
        font-size: 0.8333333333vw;
        line-height: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .technology_type_item_desc {
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw
    }
}

.technology_type_item_desc strong {
    font-weight: 700
}

.technology_type_item_desc hr {
    background: none;
    height: 0;
    margin-bottom: 0;
    margin-top: 16px
}

@media screen and (min-width: 769px) {
    .technology_type_item_desc hr {
        margin-top: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .technology_type_item_desc hr {
        margin-top: 2.5641025641vw
    }
}

.ceramic-bearings .technology_type_next_bg {
    background-image: url("../image/dl_bg.jpg")
}

@media screen and (max-width: 768px) {
    .ceramic-bearings .technology_type_next_bg {
        background-image: url("../image/dl_bg_sp.jpg")
    }
}

.stainless-bearings .technology_type_next_bg {
    background-image: url("../image/dl_bg1.jpg")
}

@media screen and (max-width: 768px) {
    .stainless-bearings .technology_type_next_bg {
        background-image: url("../image/dl_bg_sp1.jpg")
    }
}

.technology_type_next .btn_round {
    height: 56px
}

@media screen and (min-width: 769px) {
    .technology_type_next .btn_round {
        height: 2.9166666667vw
    }
}

@media screen and (max-width: 768px) {
    .technology_type_next .btn_round {
        height: 14.358974359vw
    }
}

.product_archive {
    box-sizing: border-box;
    margin: 0 auto;
    width: 1280px;
    padding: 0px 40px;
    margin-top: 80px;
    margin-bottom: 80px
}

@media screen and (min-width: 769px) {
    .product_archive {
        width: 66.6666666667vw;
        padding: 0vw 2.0833333333vw;
        margin-top: 4.1666666667vw;
        margin-bottom: 4.1666666667vw
    }
}

@media screen and (max-width: 768px) {
    .product_archive {
        width: 100%;
        padding: 0vw 6.1538461538vw;
        margin-top: 12.3076923077vw;
        margin-bottom: 16.4102564103vw
    }
}

.product_archive_wrapper {
    width: 100%;
    margin-bottom: 264px
}

@media screen and (min-width: 769px) {
    .product_archive_wrapper {
        margin-bottom: 13.75vw
    }
}

@media screen and (max-width: 768px) {
    .product_archive_wrapper {
        margin-bottom: 30.7692307692vw
    }
}

.product_archive_ttl {
    width: 100%;
    margin-bottom: 24px
}

@media screen and (min-width: 769px) {
    .product_archive_ttl {
        margin-bottom: 1.25vw
    }
}

@media screen and (min-width: 769px) {
    .product_archive_ttl {
        pointer-events: none
    }
}

@media screen and (max-width: 768px) {
    .product_archive_ttl {
        margin-bottom: 7.6923076923vw
    }
}

.product_archive_ttl_txt {
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 40px
}

@media screen and (min-width: 769px) {
    .product_archive_ttl_txt {
        font-size: 1.25vw;
        line-height: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .product_archive_ttl_txt {
        font-size: 4.6153846154vw;
        line-height: 7.1794871795vw
    }
}

.product_archive_view {
    font-size: 1.6rem;
    line-height: 24px;
    margin-bottom: 24px
}

@media screen and (min-width: 769px) {
    .product_archive_view {
        font-size: 0.8333333333vw;
        line-height: 1.25vw;
        margin-bottom: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .product_archive_view {
        font-size: 3.5897435897vw;
        line-height: 7.1794871795vw;
        margin-bottom: 6.1538461538vw
    }
}

.product_archive_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.product_archive_list_item {
    width: 288px;
    margin-bottom: 40px;
    margin-right: 16px
}

@media screen and (min-width: 769px) {
    .product_archive_list_item {
        width: 15vw;
        margin-bottom: 2.0833333333vw;
        margin-right: 0.8333333333vw
    }
}

@media screen and (min-width: 769px) {
    .product_archive_list_item:nth-child(4n) {
        margin-right: 0
    }
}

@media screen and (max-width: 768px) {
    .product_archive_list_item {
        width: 41.0256410256vw;
        margin-bottom: 8.2051282051vw;
        margin-right: 0
    }

    .product_archive_list_item:nth-child(even) {
        margin-left: 5.641025641vw
    }
}

.product_archive_list_item_link {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-flow: column;
    flex-flow: column
}

.product_archive_list_item_link:hover .product_archive_list_item_desc {
    opacity: .7
}

.product_archive_list_item_desc {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-flow: column;
    flex-flow: column;
    transition: opacity .6s cubic-bezier(0.32, 0.95, 0.6, 1)
}

.product_archive_list_item_desc_ttl {
    font-size: 1.6rem;
    line-height: 24px
}

@media screen and (min-width: 769px) {
    .product_archive_list_item_desc_ttl {
        font-size: 0.8333333333vw;
        line-height: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .product_archive_list_item_desc_ttl {
        font-size: 3.5897435897vw;
        line-height: 5.1282051282vw
    }
}

.product_archive_list_item_desc_cat {
    -ms-flex-order: -1;
    order: -1;
    line-height: 1;
    margin-bottom: 8px
}

@media screen and (min-width: 769px) {
    .product_archive_list_item_desc_cat {
        margin-bottom: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .product_archive_list_item_desc_cat {
        margin-bottom: 1.0256410256vw
    }
}

.product_archive_list_item_desc_cat .cat {
    display: inline-block;
    color: #7a8192;
    font-size: 1.4rem;
    line-height: 18px;
    margin-right: 8px
}

@media screen and (min-width: 769px) {
    .product_archive_list_item_desc_cat .cat {
        font-size: 0.7291666667vw;
        line-height: 0.9375vw;
        margin-right: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .product_archive_list_item_desc_cat .cat {
        font-size: 2.5641025641vw;
        line-height: 3.5897435897vw;
        margin-right: 1.0256410256vw
    }
}

.product_archive_list_item_figure {
    -ms-flex-order: -1;
    order: -1;
    overflow: hidden;
    width: 288px;
    height: 162px;
    margin-bottom: 8px
}

@media screen and (min-width: 769px) {
    .product_archive_list_item_figure {
        width: 15vw;
        height: 8.4375vw;
        margin-bottom: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .product_archive_list_item_figure {
        width: 41.0256410256vw;
        height: 23.0769230769vw;
        margin-bottom: 1.0256410256vw
    }
}

.product_archive_list_item_figure_img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.product_archive_tax {
    margin: 0 auto;
    box-sizing: border-box;
    width: 1280px;
    margin-bottom: 80px;
    padding: 0px 40px
}

@media screen and (min-width: 769px) {
    .product_archive_tax {
        width: 66.6666666667vw;
        margin-bottom: 4.1666666667vw;
        padding: 0vw 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .product_archive_tax {
        width: 100%;
        margin-bottom: 12.3076923077vw;
        padding: 0vw 6.1538461538vw
    }
}

.product_archive_tax_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media screen and (min-width: 769px) {
    .product_archive_tax_list_wrap {
        display: block
    }
}

.product_archive_tax_item {
    width: 176px;
    margin-right: 28.8px;
    margin-top: 24px
}

@media screen and (min-width: 769px) {
    .product_archive_tax_item {
        width: 9.1666666667vw;
        margin-right: 1.5vw;
        margin-top: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .product_archive_tax_item {
        width: 24.6153846154vw;
        margin-right: 6.9230769231vw;
        margin-top: 4.1025641026vw
    }
}

@media screen and (min-width: 769px) {
    .product_archive_tax_item:nth-child(6n) {
        margin-right: 0
    }

    /*.product_archive_tax_item:nth-child(-n+6) {
        margin-top: 0
    }*/
}

@media screen and (max-width: 768px) {
    .product_archive_tax_item:nth-child(3n) {
        margin-right: 0
    }

    /*.product_archive_tax_item:nth-child(-n+4) {
        margin-top: 0
    }*/
}

.product_archive_tax_item_link_figure {
    overflow: hidden;
    background: rgba(122, 129, 146, .3);
    width: 176px;
    height: 99px
}

@media screen and (min-width: 769px) {
    .product_archive_tax_item_link_figure {
        width: 9.1666666667vw;
        height: 5.15625vw
    }
}

@media screen and (max-width: 768px) {
    .product_archive_tax_item_link_figure {
        width: 24.6153846154vw;
        height: 13.8461538462vw
    }
}

.product_archive_tax_item_link_figure_img {
    display: block;
    width: 100%;
    height: auto
}

.product_archive_tax_item_link_name {
    font-size: 1.4rem;
    line-height: 18px;
    margin-top: 8px
}

@media screen and (min-width: 769px) {
    .product_archive_tax_item_link_name {
        font-size: 0.7291666667vw;
        line-height: 0.9375vw;
        margin-top: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .product_archive_tax_item_link_name {
        font-size: 2.8205128205vw;
        line-height: 3.5897435897vw;
        margin-top: 1.0256410256vw
    }
}

.product_archive_tax .btn_plus {
    display: none
}

@media screen and (max-width: 768px) {
    .product_archive_tax .btn_plus {
        display: block;
        top: 50%;
        margin-top: -5.1282051282vw
    }
}

.product_archive_search {
    margin: 0 auto;
    box-sizing: border-box;
    width: 1280px;
    margin-bottom: 80px;
    padding: 0px 40px
}

@media screen and (min-width: 769px) {
    .product_archive_search {
        width: 66.6666666667vw;
        margin-bottom: 4.1666666667vw;
        padding: 0vw 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .product_archive_search {
        width: 100%;
        margin-bottom: 12.3076923077vw;
        padding: 0vw 6.1538461538vw
    }
}

.product_archive_search_condition {
    background: #fff;
    padding: 40px 40px 48px
}

@media screen and (min-width: 769px) {
    .product_archive_search_condition {
        padding: 2.0833333333vw 2.0833333333vw 2.5vw
    }
}

@media screen and (min-width: 769px) {
    .product_archive_search_condition {
        display: block
    }
}

@media screen and (max-width: 768px) {
    .product_archive_search_condition {
        padding: 4.1025641026vw 4.1025641026vw 6.1538461538vw
    }
}

.product_archive_search .btn_plus {
    display: none
}

@media screen and (max-width: 768px) {
    .product_archive_search .btn_plus {
        display: block;
        top: 50%;
        margin-top: -5.1282051282vw
    }
}

.product_search_form {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.product_search_form_label {
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 24px;
    margin-right: 64px
}

@media screen and (min-width: 769px) {
    .product_search_form_label {
        font-size: 0.8333333333vw;
        line-height: 1.25vw;
        margin-right: 3.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .product_search_form_label {
        width: 100%;
        font-size: 4.1025641026vw;
        line-height: 6.1538461538vw;
        margin-right: 0;
        margin-bottom: 2.0512820513vw
    }
}

.product_search_form_input {
    box-sizing: border-box;
    border: 1px solid #e4e4e9;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    width: 976px;
    height: 56px
}

@media screen and (min-width: 769px) {
    .product_search_form_input {
        width: 50.8333333333vw;
        height: 2.9166666667vw
    }
}

@media screen and (max-width: 768px) {
    .product_search_form_input {
        width: 100%;
        height: 12.3076923077vw
    }
}

.product_search_form_input_text {
    border: 0;
    box-sizing: border-box;
    width: 882px;
    height: 54px;
    font-size: 1.6rem;
    line-height: 24px;
    padding: 16px
}

@media screen and (min-width: 769px) {
    .product_search_form_input_text {
        width: 45.9375vw;
        height: 2.8125vw;
        font-size: 0.8333333333vw;
        line-height: 1.25vw;
        padding: 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .product_search_form_input_text {
        width: 58.9743589744vw;
        height: 11.7948717949vw;
        font-size: 3.5897435897vw;
        line-height: 6.1538461538vw;
        padding: 2.0512820513vw
    }
}

.product_search_form_input_btn {
    position: relative
}

.product_search_form_input_btn_submit[type=submit] {
    background-color: #7a8192;
    color: #fff;
    font-weight: 500;
    box-sizing: border-box;
    transition: background-color .6s cubic-bezier(0.32, 0.95, 0.6, 1);
    width: 94px;
    height: 56px;
    font-size: 1.6rem;
    line-height: 24px;
    padding-left: 20px
}

@media screen and (min-width: 769px) {
    .product_search_form_input_btn_submit[type=submit] {
        width: 4.8958333333vw;
        height: 2.9166666667vw;
        font-size: 0.8333333333vw;
        line-height: 1.25vw;
        padding-left: 1.0416666667vw
    }
}

@media screen and (max-width: 768px) {
    .product_search_form_input_btn_submit[type=submit] {
        width: 20.5128205128vw;
        height: 12.3076923077vw;
        font-size: 3.3333333333vw;
        line-height: 4.6153846154vw;
        padding-left: 5.1282051282vw
    }
}

.product_search_form_input_btn_submit[type=submit]:hover {
    background-color: rgba(122, 129, 146, .7)
}

.product_search_form_input_btn:before {
    content: "";
    background-image: url("../image/search.svg");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    position: absolute;
    top: 50%;
    width: 16px;
    height: 16px;
    margin-top: -6px;
    left: 20px
}

@media screen and (min-width: 769px) {
    .product_search_form_input_btn:before {
        width: 0.8333333333vw;
        height: 0.8333333333vw;
        margin-top: -0.3125vw;
        left: 1.0416666667vw
    }
}

@media screen and (max-width: 768px) {
    .product_search_form_input_btn:before {
        width: 3.5897435897vw;
        height: 3.5897435897vw;
        margin-top: -1.5384615385vw;
        left: 4.6153846154vw
    }
}

.product_check_form_inner {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-top: 1px solid #e4e4e9;
    border-bottom: 1px solid #e4e4e9;
    margin-top: 40px;
    padding: 40px 0px
}

@media screen and (min-width: 769px) {
    .product_check_form_inner {
        margin-top: 2.0833333333vw;
        padding: 2.0833333333vw 0vw
    }
}

@media screen and (max-width: 768px) {
    .product_check_form_inner {
        margin-top: 6.1538461538vw;
        padding: 4.1025641026vw 0vw 2.0512820513vw
    }
}

.product_check_form_label {
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 24px;
    margin-right: 64px
}

@media screen and (min-width: 769px) {
    .product_check_form_label {
        font-size: 0.8333333333vw;
        line-height: 1.25vw;
        margin-right: 3.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .product_check_form_label {
        width: 100%;
        font-size: 4.1025641026vw;
        line-height: 6.1538461538vw;
        margin-right: 0;
        margin-bottom: 4.1025641026vw
    }
}

.product_check_form_list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 976px
}

@media screen and (min-width: 769px) {
    .product_check_form_list {
        width: 50.8333333333vw
    }
}

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

.product_check_form_list_item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    margin-right: 32px;
    margin-bottom: 24px
}

@media screen and (min-width: 769px) {
    .product_check_form_list_item {
        margin-right: 1.6666666667vw;
        margin-bottom: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .product_check_form_list_item {
        margin-right: 5.1282051282vw;
        margin-bottom: 4.1025641026vw
    }
}

.product_check_form_list_item_check {
    box-sizing: border-box;
    border: 1px solid #e4e4e9;
    transition: background-color .6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    width: 20px;
    height: 20px;
    margin-right: 8px
}

@media screen and (min-width: 769px) {
    .product_check_form_list_item_check {
        width: 1.0416666667vw;
        height: 1.0416666667vw;
        margin-right: 0.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .product_check_form_list_item_check {
        width: 5.1282051282vw;
        height: 5.1282051282vw;
        margin-right: 1.0256410256vw
    }
}

.product_check_form_list_item_check:before {
    content: "";
    position: absolute;
    background: #7a8192;
    opacity: 0;
    transition: opacity .4s cubic-bezier(0.32, 0.95, 0.6, 1);
    width: 12px;
    height: 12px;
    top: 3px;
    left: 3px
}

@media screen and (min-width: 769px) {
    .product_check_form_list_item_check:before {
        width: 0.625vw;
        height: 0.625vw;
        top: 0.15625vw;
        left: 0.15625vw
    }
}

@media screen and (max-width: 768px) {
    .product_check_form_list_item_check:before {
        width: 3.0769230769vw;
        height: 3.0769230769vw;
        top: .7692307692vw;
        left: .7692307692vw
    }
}

.product_check_form_list_item_check:checked {
    position: relative
}

.product_check_form_list_item_check:checked:before {
    opacity: 1
}

.product_check_form_list_item_label {
    font-size: 1.6rem;
    line-height: 24px
}

@media screen and (min-width: 769px) {
    .product_check_form_list_item_label {
        font-size: 0.8333333333vw;
        line-height: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .product_check_form_list_item_label {
        font-size: 3.5897435897vw;
        line-height: 4.6153846154vw
    }
}

.product_check_form_btn {
    position: relative;
    margin: 0 auto;
    overflow: hidden;
    width: 216px;
    height: 56px;
    border-radius: 28px;
    margin-top: 40px
}

@media screen and (min-width: 769px) {
    .product_check_form_btn {
        width: 11.25vw;
        height: 2.9166666667vw;
        border-radius: 1.4583333333vw;
        margin-top: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .product_check_form_btn {
        width: 51.7948717949vw;
        height: 14.358974359vw;
        border-radius: 7.1794871795vw;
        margin-top: 4.1025641026vw
    }
}

.product_check_form_btn_submit[type=submit] {
    color: #fff;
    background: #7a8192;
    font-weight: bold;
    transition: background-color .6s cubic-bezier(0.32, 0.95, 0.6, 1);
    font-size: 1.6rem;
    line-height: 16px;
    padding-left: 24px
}

@media screen and (min-width: 769px) {
    .product_check_form_btn_submit[type=submit] {
        font-size: 0.8333333333vw;
        line-height: 0.8333333333vw;
        padding-left: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .product_check_form_btn_submit[type=submit] {
        font-size: 3.5897435897vw;
        line-height: 4.1025641026vw;
        padding-left: 6.1538461538vw
    }
}

.product_check_form_btn_submit[type=submit]:hover {
    background-color: rgba(122, 129, 146, .7)
}

.product_check_form_btn:before {
    content: "";
    background-image: url("../image/search.svg");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    position: absolute;
    top: 50%;
    width: 16px;
    height: 16px;
    margin-top: -6px;
    left: 36px
}

@media screen and (min-width: 769px) {
    .product_check_form_btn:before {
        width: 0.8333333333vw;
        height: 0.8333333333vw;
        margin-top: -0.3125vw;
        left: 1.875vw
    }
}

@media screen and (max-width: 768px) {
    .product_check_form_btn:before {
        width: 3.5897435897vw;
        height: 3.5897435897vw;
        margin-top: -1.5384615385vw;
        left: 9.2307692308vw
    }
}

.product_category {
    position: relative;
    padding-bottom: 120px
}

@media screen and (min-width: 769px) {
    .product_category {
        padding-bottom: 6.25vw
    }
}

@media screen and (max-width: 768px) {
    .product_category {
        padding-bottom: 16.4102564103vw
    }
}

.product_category:after {
    content: "";
    border-bottom: 1px solid #e4e4e9;
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 1200px;
    margin-left: -600px
}

@media screen and (min-width: 769px) {
    .product_category:after {
        width: 62.5vw;
        margin-left: -31.25vw
    }
}

@media screen and (max-width: 768px) {
    .product_category:after {
        width: 87.6923076923vw;
        margin-left: -43.8461538462vw
    }
}

.product_category_ttl {
    font-weight: 500;
    margin: 0 auto;
    width: 1600px;
    font-size: 4.4rem;
    line-height: 64px;
    margin-bottom: 64px
}

@media screen and (min-width: 769px) {
    .product_category_ttl {
        width: 83.3333333333vw;
        font-size: 2.2916666667vw;
        line-height: 3.3333333333vw;
        margin-bottom: 3.3333333333vw
    }
}

@media screen and (max-width: 768px) {
    .product_category_ttl {
        width: 100%;
        box-sizing: border-box;
        padding: 0vw 6.1538461538vw;
        font-size: 6.1538461538vw;
        line-height: 9.2307692308vw;
        margin-bottom: 8.2051282051vw
    }
}

.product_category_visual {
    width: 100%;
    overflow: hidden;
    margin-bottom: 120px
}

@media screen and (min-width: 769px) {
    .product_category_visual {
        margin-bottom: 6.25vw
    }
}

@media screen and (max-width: 768px) {
    .product_category_visual {
        margin-bottom: 16.4102564103vw
    }
}

.product_category_visual_figure {
    margin: 0 auto;
    -webkit-mask-image: url("../image/mask.png");
    mask-image: url("../image/mask.png");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 83.3% 100%;
    mask-size: 83.3% 100%;
    -webkit-mask-position: 50% 100%;
    mask-position: 50% 100%;
    width: 1920px;
    height: 900px
}

@media screen and (min-width: 769px) {
    .product_category_visual_figure {
        width: 100vw;
        height: 46.875vw
    }
}

@media screen and (max-width: 768px) {
    .product_category_visual_figure {
        width: 87.6923076923vw;
        height: 65.641025641vw
    }
}

.product_category_visual_figure_img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.tax .product_archive {
    margin-bottom: 96px
}

@media screen and (min-width: 769px) {
    .tax .product_archive {
        margin-bottom: 5vw
    }
}

@media screen and (max-width: 768px) {
    .tax .product_archive {
        margin-bottom: 16.4102564103vw
    }
}

.tax .product_archive_search {
    margin-top: 96px;
    margin-bottom: 264px
}

@media screen and (min-width: 769px) {
    .tax .product_archive_search {
        margin-top: 5vw;
        margin-bottom: 13.75vw
    }
}

@media screen and (max-width: 768px) {
    .tax .product_archive_search {
        margin-top: 16.4102564103vw;
        margin-bottom: 30.7692307692vw
    }
}

.product .contents_post {
    padding-left: 0;
    padding-right: 0;
    max-width: 1200px
}

@media screen and (min-width: 769px) {
    .product .contents_post {
        max-width: 62.5vw
    }
}

@media screen and (max-width: 768px) {
    .product .contents_post {
        max-width: 87.6923076923vw
    }
}

.product .post_meta_cat .cat {
    color: #0c0e13
}

.product_pagenation {
    margin: 0 auto
}

.product_images {
    padding-bottom: 96px
}

@media screen and (min-width: 769px) {
    .product_images {
        padding-bottom: 5vw
    }
}

@media screen and (max-width: 768px) {
    .product_images {
        padding-bottom: 16.4102564103vw;
        overflow: visible
    }
}

.product_images_list {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.product_images_list_item {
    width: 368px;
    margin: 0px 16px;
    margin-bottom: 40px
}

@media screen and (min-width: 769px) {
    .product_images_list_item {
        width: 19.1666666667vw;
        margin: 0vw 0.8333333333vw;
        margin-bottom: 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .product_images_list_item {
        width: 73.8461538462vw;
        margin-bottom: 6.1538461538vw
    }

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

.product_images_list_item.product_images_single {
    width: 800px;
    margin: 0px auto 40px
}

@media screen and (min-width: 769px) {
    .product_images_list_item.product_images_single {
        width: 41.6666666667vw;
        margin: 0vw auto 2.0833333333vw
    }
}

@media screen and (max-width: 768px) {
    .product_images_list_item.product_images_single {
        width: 73.8461538462vw;
        margin: 0 auto 6.1538461538vw
    }
}

.product_images_list_item.product_images_double {
    margin-left: 0;
    width: 576px;
    margin-right: 48px
}

@media screen and (min-width: 769px) {
    .product_images_list_item.product_images_double {
        width: 30vw;
        margin-right: 2.5vw
    }
}

@media screen and (max-width: 768px) {
    .product_images_list_item.product_images_double {
        width: 73.8461538462vw;
        margin-right: auto;
        margin-left: auto
    }
}

.product_images_list_item.product_images_double:nth-child(even) {
    margin-right: 0
}

@media screen and (max-width: 768px) {
    .product_images_list_item.product_images_double:nth-child(even) {
        margin-right: auto
    }
}

.product_images_list_item_figure {
    width: 100%
}

.product_images_list_item_figure_inner {
    display: block;
    width: 100%;
    overflow: hidden;
    height: 207px
}

@media screen and (min-width: 769px) {
    .product_images_list_item_figure_inner {
        height: 10.78125vw
    }
}

@media screen and (max-width: 768px) {
    .product_images_list_item_figure_inner {
        height: 41.5384615385vw
    }
}

.product_images_single .product_images_list_item_figure_inner {
    height: 450px
}

@media screen and (min-width: 769px) {
    .product_images_single .product_images_list_item_figure_inner {
        height: 23.4375vw
    }
}

@media screen and (max-width: 768px) {
    .product_images_single .product_images_list_item_figure_inner {
        height: 41.5384615385vw
    }
}

.product_images_double .product_images_list_item_figure_inner {
    height: 324px
}

@media screen and (min-width: 769px) {
    .product_images_double .product_images_list_item_figure_inner {
        height: 16.875vw
    }
}

@media screen and (max-width: 768px) {
    .product_images_double .product_images_list_item_figure_inner {
        height: 41.5384615385vw
    }
}

.product_images_list_item_figure_img {
    -o-object-fit: cover;
    object-fit: cover;
    display: block;
    width: 100%;
    height: 100%
}

.product_images_list_item_figure_txt {
    font-size: 1.4rem;
    line-height: 18px;
    margin-top: 4px
}

@media screen and (min-width: 769px) {
    .product_images_list_item_figure_txt {
        font-size: 0.7291666667vw;
        line-height: 0.9375vw;
        margin-top: 0.2083333333vw
    }
}

@media screen and (max-width: 768px) {
    .product_images_list_item_figure_txt {
        font-size: 2.8205128205vw;
        line-height: 3.5897435897vw;
        margin-top: 1.0256410256vw
    }
}

.product_images_pagination {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    height: 56px;
    margin-top: 32px
}

@media screen and (min-width: 769px) {
    .product_images_pagination {
        height: 2.9166666667vw;
        margin-top: 1.6666666667vw
    }
}

@media screen and (max-width: 768px) {
    .product_images_pagination {
        height: 10.2564102564vw;
        margin-top: 6.1538461538vw
    }
}

.product_images_pagination_btn {
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
    width: 136px
}

@media screen and (min-width: 769px) {
    .product_images_pagination_btn {
        width: 7.0833333333vw
    }
}

@media screen and (min-width: 769px) {
    .product_images_pagination_btn .ico_arw {
        display: none
    }
}

@media screen and (max-width: 768px) {
    .product_images_pagination_btn {
        width: 10.2564102564vw
    }

    .product_images_pagination_btn .btn_circle:before,
    .product_images_pagination_btn .btn_circle:after {
        content: none
    }

    .product_images_pagination_btn .ico_arw {
        position: absolute;
        width: 4.1025641026vw;
        height: 4.1025641026vw;
        top: 50%;
        left: 50%;
        margin-top: -2.0512820513vw;
        margin-left: -2.0512820513vw
    }

    .product_images_pagination_btn .ico_arw path {
        fill: #0c0e13
    }
}

.product_images_pagination_btn_txt {
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-size: 1.4rem;
    line-height: 20px;
    margin: 0px 16px
}

@media screen and (min-width: 769px) {
    .product_images_pagination_btn_txt {
        font-size: 0.7291666667vw;
        line-height: 1.0416666667vw;
        margin: 0vw 0.8333333333vw
    }
}

@media screen and (max-width: 768px) {
    .product_images_pagination_btn_txt {
        display: none
    }
}

.product_images_pagination_btn.swiper-button-prev {
    margin-right: 104px
}

@media screen and (min-width: 769px) {
    .product_images_pagination_btn.swiper-button-prev {
        margin-right: 5.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .product_images_pagination_btn.swiper-button-prev {
        margin-right: 16.4102564103vw
    }
}

.product_images_pagination_btn.swiper-button-prev .ico_arw {
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg)
}

.product_images_pagination_btn.swiper-button-next {
    margin-left: 104px
}

@media screen and (min-width: 769px) {
    .product_images_pagination_btn.swiper-button-next {
        margin-left: 5.4166666667vw
    }
}

@media screen and (max-width: 768px) {
    .product_images_pagination_btn.swiper-button-next {
        margin-left: 16.4102564103vw
    }
}

.product_images_pagination_btn.swiper-button-next .ico_arw {
    -ms-transform: rotate(90deg);
    transform: rotate(90deg)
}

.product_images_pagination .swiper-pagination {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center
}

.product_images_pagination .swiper-pagination .swiper-pagination-bullet {
    cursor: pointer;
    background: #0c0e13;
    transition: background-color .6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    border-radius: 50%;
    display: block;
    width: 6px;
    height: 6px;
    margin: 0px 4px
}

@media screen and (min-width: 769px) {
    .product_images_pagination .swiper-pagination .swiper-pagination-bullet {
        width: 0.3125vw;
        height: 0.3125vw;
        margin: 0vw 0.2083333333vw
    }
}

@media screen and (max-width: 768px) {
    .product_images_pagination .swiper-pagination .swiper-pagination-bullet {
        width: 1.5384615385vw;
        height: 1.5384615385vw;
        margin: 0vw 1.0256410256vw
    }
}

.product_images_pagination .swiper-pagination .swiper-pagination-bullet-active {
    background: #74748f
}

.contact_tel,
.catalog_tel {
    background: #fff;
    margin: 0 auto;
    box-sizing: border-box;
    width: 1200px;
    padding: 40px;
    margin-bottom: 96px
}

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

    .contact_tel,
    .catalog_tel {
        width: 62.5vw;
        padding: 2.0833333333vw;
        margin-bottom: 5vw
    }
}

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

    .contact_tel,
    .catalog_tel {
        width: 87.6923076923vw;
        padding: 8.2051282051vw;
        margin-bottom: 12.3076923077vw
    }
}

.contact_tel_ttl,
.catalog_tel_ttl {
    width: 100%;
    font-weight: 500;
    text-align: center;
    font-size: 2.4rem;
    line-height: 40px;
    margin-bottom: 16px
}

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

    .contact_tel_ttl,
    .catalog_tel_ttl {
        font-size: 1.25vw;
        line-height: 2.0833333333vw;
        margin-bottom: 0.8333333333vw
    }
}

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

    .contact_tel_ttl,
    .catalog_tel_ttl {
        font-size: 4.6153846154vw;
        line-height: 7.1794871795vw;
        margin-bottom: 6.1538461538vw
    }
}

.contact_tel_schedule,
.catalog_tel_schedule {
    width: 100%;
    font-weight: 500;
    text-align: center;
    font-size: 1.4rem;
    line-height: 24px;
    margin-bottom: 24px
}

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

    .contact_tel_schedule,
    .catalog_tel_schedule {
        font-size: 0.7291666667vw;
        line-height: 1.25vw;
        margin-bottom: 1.25vw
    }
}

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

    .contact_tel_schedule,
    .catalog_tel_schedule {
        font-size: 3.5897435897vw;
        line-height: 6.1538461538vw;
        margin-bottom: 6.1538461538vw
    }
}

.contact_tel_list,
.catalog_tel_list {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

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

    .contact_tel_list,
    .catalog_tel_list {
        -ms-flex-flow: column;
        flex-flow: column;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: center;
        align-items: center
    }
}

.contact_tel_list_item,
.catalog_tel_list_item {
    box-sizing: border-box;
    border: 1px solid #e4e4e9;
    text-align: center;
    width: 384px;
    padding: 24px 24px 32px
}



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

    .contact_tel_list_item,
    .catalog_tel_list_item {
        width: 20vw;
        padding: 1.25vw 1.25vw 1.6666666667vw
    }
}

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

    .contact_tel_list_item,
    .catalog_tel_list_item {
        width: 71.7948717949vw;
        padding: 4.1025641026vw 6.1538461538vw 6.1538461538vw
    }
}

.contact_tel_list_item {
    padding: 0;
}

.contact_tel_list_item>a{
    display: block;
    padding: 1.25vw 1.25vw 1.6666666667vw;
}

.contact_tel_list_item:first-child,
.catalog_tel_list_item:first-child {
    margin-right: 64px
}

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

    .contact_tel_list_item:first-child,
    .catalog_tel_list_item:first-child {
        margin-right: 3.3333333333vw
    }
}

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

    .contact_tel_list_item:first-child,
    .catalog_tel_list_item:first-child {
        margin-right: 0;
        margin-bottom: 6.1538461538vw
    }
}

.contact_tel_list_item_ttl,
.catalog_tel_list_item_ttl {
    width: 100%;
    font-weight: 500;
    text-align: center;
    /* border-bottom: 1px solid #e4e4e9; */
    font-size: 1.8rem;
    line-height: 24px;
    /* padding-bottom: 16px; */
    /* margin-bottom: 16px; */
}

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

    .contact_tel_list_item_ttl,
    .catalog_tel_list_item_ttl {
        font-size: 0.9375vw;
        line-height: 1.25vw;
        /* padding-bottom: 0.8333333333vw; */
        /* margin-bottom: 0.8333333333vw; */
    }
}

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

    .contact_tel_list_item_ttl,
    .catalog_tel_list_item_ttl {
        font-size: 4.1025641026vw;
        line-height: 5.1282051282vw;
        padding-bottom: 4.1025641026vw;
        margin-bottom: 4.1025641026vw
    }
}

.contact_tel_list_item_num,
.catalog_tel_list_item_num {
    width: 100%;
    text-align: center;
    font-family: "Michroma", "Noto Sans JP", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
    font-size: 2.4rem;
    line-height: 24px
}

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

    .contact_tel_list_item_num,
    .catalog_tel_list_item_num {
        font-size: 1.25vw;
        line-height: 1.25vw
    }
}

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

    .contact_tel_list_item_num,
    .catalog_tel_list_item_num {
        font-size: 5.1282051282vw;
        line-height: 5.1282051282vw
    }
}

.contact .more_area,
.catalog .more_area {
    margin-top: 96px
}

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

    .contact .more_area,
    .catalog .more_area {
        margin-top: 5vw
    }
}

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

    .contact .more_area,
    .catalog .more_area {
        margin-top: 12.3076923077vw
    }
}

.contact .more_area .btn_round,
.catalog .more_area .btn_round {
    margin: 96px auto 0px
}

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

    .contact .more_area .btn_round,
    .catalog .more_area .btn_round {
        margin: 5vw auto 0vw
    }
}

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

    .contact .more_area .btn_round,
    .catalog .more_area .btn_round {
        margin: 12.3076923077vw auto 0vw
    }
}

.contact .more_area .btn_round .btn_round_link,
.catalog .more_area .btn_round .btn_round_link {
    padding: 0
}

.contact .more_area .btn_round .btn_round_link input[type=submit],
.catalog .more_area .btn_round .btn_round_link input[type=submit] {
    text-align: center;
    color: #fff;
    padding: 16px 64px;
    border-radius: 36px
}

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

    .contact .more_area .btn_round .btn_round_link input[type=submit],
    .catalog .more_area .btn_round .btn_round_link input[type=submit] {
        padding: 0.8333333333vw 3.3333333333vw;
        border-radius: 1.875vw
    }
}

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

    .contact .more_area .btn_round .btn_round_link input[type=submit],
    .catalog .more_area .btn_round .btn_round_link input[type=submit] {
        width: 100%;
        box-sizing: border-box;
        border-radius: 9.2307692308vw;
        -ms-flex-flow: column;
        flex-flow: column;
        padding: 4.1025641026vw;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center
    }
}

.back_btn {
    display: none;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: center;
    align-items: center;
    position: relative
}

.mw_wp_form_confirm .back_btn {
    display: -ms-flexbox;
    display: flex
}

.back_btn .btn_circle {
    position: absolute
}

.back_btn .btn_link_txt {
    background: none;
    border: 0;
    padding: 0;
    cursor: pointer;
    margin-left: 0;
    padding: 18px 0px 18px 72px
}

@media screen and (min-width: 769px) {
    .back_btn .btn_link_txt {
        padding: 0.9375vw 0vw 0.9375vw 3.75vw
    }
}

@media screen and (max-width: 768px) {
    .back_btn .btn_link_txt {
        padding: 2.5641025641vw 0vw 2.5641025641vw 12.3076923077vw
    }
}

.back_btn .prev_link_txt {
    font-size: 1.6rem;
    line-height: 20px
}

@media screen and (min-width: 769px) {
    .back_btn .prev_link_txt {
        font-size: 0.8333333333vw;
        line-height: 1.0416666667vw
    }
}

@media screen and (max-width: 768px) {
    .back_btn .prev_link_txt {
        font-size: 3.8461538462vw;
        line-height: 5.1282051282vw
    }
}

.privacy_check_txt a {
    color: #74748f
}

.confirmation .more_area {
    margin-top: 24px
}

@media screen and (min-width: 769px) {
    .confirmation .more_area {
        margin-top: 1.25vw
    }
}

@media screen and (max-width: 768px) {
    .confirmation .more_area {
        margin-top: 6.1538461538vw
    }
}

.confirmation .back_btn {
    margin-bottom: 96px
}

@media screen and (min-width: 769px) {
    .confirmation .back_btn {
        margin-bottom: 5vw
    }
}

@media screen and (max-width: 768px) {
    .confirmation .back_btn {
        margin-bottom: 12.3076923077vw
    }
}

.thanks_wrap,
.notfound_wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column;
    flex-flow: column;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: start;
    justify-content: flex-start;
    margin-bottom: 264px
}

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

    .thanks_wrap,
    .notfound_wrap {
        margin-bottom: 13.75vw
    }
}

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

    .thanks_wrap,
    .notfound_wrap {
        margin-bottom: 30.7692307692vw
    }
}

.thanks .contents_intro,
.notfound .contents_intro {
    margin-bottom: 0
}

.thanks_contents,
.notfound_contents {
    width: 100%;
    margin: 0 auto;
    border-bottom: 1px solid #e4e4e9;
    box-sizing: border-box;
    max-width: 1200px;
    padding: 96px 204px
}

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

    .thanks_contents,
    .notfound_contents {
        max-width: 62.5vw;
        padding: 5vw 10.625vw
    }
}

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

    .thanks_contents,
    .notfound_contents {
        max-width: 87.6923076923vw;
        padding: 12.3076923077vw 0vw 16.4102564103vw
    }
}

.thanks_contents p,
.notfound_contents p {
    font-size: 1.8rem;
    line-height: 40px;
    margin-bottom: 16px
}

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

    .thanks_contents p,
    .notfound_contents p {
        font-size: 0.9375vw;
        line-height: 2.0833333333vw;
        margin-bottom: 0.8333333333vw
    }
}

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

    .thanks_contents p,
    .notfound_contents p {
        font-size: 3.8461538462vw;
        line-height: 7.6923076923vw;
        margin-bottom: 4.1025641026vw
    }
}

.thanks_contents p:last-child,
.notfound_contents p:last-child {
    margin-bottom: 0
}

.thanks_contents a,
.notfound_contents a {
    color: #74748f
}

.thanks .btn,
.notfound .btn {
    margin-top: 96px
}

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

    .thanks .btn,
    .notfound .btn {
        margin-top: 5vw
    }
}

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

    .thanks .btn,
    .notfound .btn {
        margin-top: 16.4102564103vw
    }
}

.contact_tel_list_item>a:hover,
.contact_tel_list_item>a.cur {
    background: #74748f;
    color: #fff;
}



/*# sourceMappingURL=maps/style.css.map */