﻿html,
body {
    padding: 0;
    margin: 0;
    border: 0;
    outline: 0;
    font-family: 游ゴシック, 游ゴシック体, Yu Gothic, YuGothic, Noto Sans JP, Hiragino Sans, ヒラギノ角ゴシック, メイリオ, Meiryo, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
    font-style: inherit;
    font-size: 100%;
    font-weight: inherit;
    vertical-align: baseline
}

body {
    line-height: 1
}

div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
    padding: 0;
    margin: 0;
    border: 0;
    outline: 0;
    font-family: 游ゴシック, 游ゴシック体, Yu Gothic, YuGothic, Noto Sans JP, Hiragino Sans, ヒラギノ角ゴシック, メイリオ, Meiryo, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
    font-style: inherit;
    font-size: 100%;
    font-weight: inherit;
    vertical-align: baseline
}

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

ol,
ul {
    list-style: none
}

blockquote,
q {
    quotes: none
}

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

table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0
}

a {
    text-decoration: none;
    color: #000919
}

a:visited,
a:focus,
a:active {
    color: #000919
}

a.decoration {
    text-decoration: underline
}

a.decoration:visited,
a.decoration:focus,
a.decoration:active {
    text-decoration: underline;
    outline: 0
}

a:visited,
a:focus,
a:active {
    text-decoration: none;
    outline: 0
}

html {
    font-size: 62.5%
}

body {
    font-size: 16px;
    color: #000919;
    -webkit-text-size-adjust: 100%
}

#wrap {
    font-size: 16px
}

a {
    color: #000919
}

a:visited,
a:focus,
a:active {
    color: #000919
}

@media only screen and (min-width: 1080px) {
    a[href^="tel:"] {
        pointer-events: none
    }
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: top;
    image-rendering: -webkit-optimize-contrast
}

@media only screen and (min-width: 1080px) {
    .hoverOpacity {
        transition: opacity .3s ease 0s
    }

    .hoverOpacity:hover {
        opacity: .7
    }

    .pcH {
        display: none !important
    }
}

@media only screen and (max-width: 1079px) {
    .spTabH {
        display: none !important
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .tabH {
        display: none !important
    }
}

@media only screen and (max-width: 767px) {
    .spH {
        display: none !important
    }
}

.alignL {
    text-align: left
}

.alignC {
    text-align: center
}

.alignR {
    text-align: right
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .tabAlignL {
        text-align: left
    }

    .tabAlignC {
        text-align: center
    }

    .tabAlignR {
        text-align: right
    }
}

@media only screen and (max-width: 767px) {
    .spAlignL {
        text-align: left
    }

    .spAlignC {
        text-align: center
    }

    .spAlignR {
        text-align: right
    }
}

:root {
    --vw: 19.03px;
    --vh: 9.11px
}

body.search {
    width: 100%;
    height: auto
}

#wrap {
    width: 100%;
    background-color: #f3f3f3;
    box-sizing: border-box
}

#wrap:before {
    width: 100vw;
    height: calc(var(--vh, 1vh)*100);
    content: "";
    display: block;
    background-color: rgba(0, 0, 0, .7490196078);
    opacity: 0;
    transition: opacity .3s ease 0s;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1
}

#wrap.drawer:before {
    opacity: 1;
    z-index: 5000
}

#wrapInner {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    background-color: #fff;
    box-sizing: border-box
}

.bgBase {
    background-color: #000919
}

.colorGr {
    color: #0e3660
}

.careerLink a[target=_blank] {
    position: relative
}

.careerLink a[target=_blank]:after {
    content: ""
}

@media only screen and (min-width: 1080px) {
    .js-acBoxWrap .js-acBox {
        display: none
    }

    .js-acBoxWrap .js-acBtn {
        position: relative;
        cursor: pointer
    }

    .js-acBoxWrap .js-acBtn:before {
        content: "＋";
        position: absolute;
        right: 20px;
        font-size: 35px;
        top: 50%;
        transform: translateY(-40%)
    }

    .js-acBoxWrap .js-acBtn.open:before {
        content: "－"
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .js-acBoxWrap .js-tab-acBox {
        display: none
    }

    .js-acBoxWrap .js-tab-acBtn {
        position: relative
    }

    .js-acBoxWrap .js-tab-acBtn:before {
        content: "＋";
        position: absolute;
        right: 20px;
        font-size: 2.6041666667vw;
        top: 50%;
        transform: translateY(-40%)
    }

    .js-acBoxWrap .js-tab-acBtn.open:before {
        content: "－"
    }
}

@media only screen and (max-width: 767px) {
    .js-acBoxWrap .js-sp-acBox {
        display: none
    }

    .js-acBoxWrap .js-sp-acBtn {
        position: relative
    }

    .js-acBoxWrap .js-sp-acBtn:before {
        content: "＋";
        position: absolute;
        right: 10px;
        font-size: 5.2083333333vw;
        top: 50%;
        transform: translateY(-40%)
    }

    .js-acBoxWrap .js-sp-acBtn.open:before {
        content: "－"
    }
}

.js-fadein {
    opacity: 0;
    transform: translate(0, 0);
    transition: all 1.5s
}

.js-fadein.js-fadein-left {
    transform: translate(-30px, 0)
}

.js-fadein.js-fadein-right {
    transform: translate(30px, 0)
}

.js-fadein.js-fadein-up {
    transform: translate(0, -30px)
}

.js-fadein.js-fadein-bottom {
    transform: translate(0, 30px)
}

.js-fadein.js-scrollin {
    opacity: 1 !important;
    transform: translate(0, 0) !important
}

.js-fixNav {
    display: none
}

.js-fixNav.close {
    display: none
}

.logo {
    height: 100%;
    box-sizing: border-box;
    position: relative;
    z-index: 10
}

.logo a {
    box-sizing: border-box;
    display: block;
    width: 100%;
    height: 100%;
    mask-image: url("../images/common/logo.svg");
    mask-repeat: no-repeat;
    mask-position: center
}

#headWrap {
    width: 100%;
    box-sizing: border-box;
    transition-property: all;
    transition-duration: .3s;
    transition-timing-function: ease;
    transition-delay: 0;
    height: 72px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 5000;
    background-color: #fff
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #headWrap {
        height: 9.375vw;
        padding-left: 2.6041666667vw;
        padding-right: 2.6041666667vw
    }
}

@media only screen and (max-width: 767px) {
    #headWrap {
        height: 14.5833333333vw;
        padding-left: 5.2083333333vw;
        padding-right: 5.2083333333vw
    }
}

#headWrap #header {
    width: 100%;
    height: 100%;
    display: grid;
    grid-template-columns: 120px 1fr;
    box-sizing: border-box;
    transition-property: all;
    transition-duration: .3s;
    transition-timing-function: ease;
    transition-delay: 0;
    padding-left: 24px
}

@media only screen and (max-width: 1079px) {
    #headWrap #header {
        padding-left: 0
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #headWrap #header {
        grid-template-columns: 11.71875vw 1fr 7.8125vw;
        height: 9.375vw
    }
}

@media only screen and (max-width: 767px) {
    #headWrap #header {
        grid-template-columns: 36.4583333333vw 1fr 12.5vw;
        height: 14.5833333333vw
    }
}

#headWrap #header .logo a {
    background-color: #000919
}

@media only screen and (max-width: 1079px) {
    #headWrap #header .logo a {
        mask-position: left center;
        mask-size: 60% auto
    }
}

@media only screen and (min-width: 1080px) {
    #globalNavWrap {
        height: 100%;
        box-sizing: border-box
    }
}

@media only screen and (max-width: 1079px) {
    #globalNavWrap {
        width: 0;
        height: calc(var(--vh, 1vh)*100);
        background-color: #fff;
        overflow: hidden;
        box-shadow: -1px 0 6px rgba(0, 0, 0, .15);
        transition: width .3s ease 0s;
        position: fixed;
        top: 0;
        right: 0;
        z-index: 9000;
        box-sizing: border-box
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavWrap.drawerActive {
        width: 100vw
    }
}

@media only screen and (max-width: 767px) {
    #globalNavWrap.drawerActive {
        width: 100vw
    }
}

#globalNavWrap #globalNav {
    width: 100%;
    height: 100%;
    box-sizing: border-box
}

@media only screen and (max-width: 1079px) {
    #globalNavWrap #globalNav {
        height: 100%;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavWrap #globalNav {
        width: 100vw
    }
}

@media only screen and (max-width: 767px) {
    #globalNavWrap #globalNav {
        width: 100vw
    }
}

#globalNavWrap #globalNav #globalNavBody {
    width: 100%;
    box-sizing: border-box
}

@media only screen and (min-width: 1080px) {
    #globalNavWrap #globalNav #globalNavBody {
        height: 100%
    }
}

#globalNavWrap #globalNav #globalNavBodyInner {
    width: 100%;
    box-sizing: border-box
}

@media only screen and (min-width: 1080px) {
    #globalNavWrap #globalNav #globalNavBodyInner {
        height: 100%
    }
}

@media only screen and (max-width: 1079px) {
    #globalNavWrap #globalNav #globalNavBodyInner {
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        flex-wrap: wrap
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavWrap #globalNav #globalNavBodyInner {
        padding-top: 3.515625vw
    }
}

@media only screen and (max-width: 767px) {
    #globalNavWrap #globalNav #globalNavBodyInner {
        padding-top: 7.03125vw
    }
}

#globalNavContactBtnWrap {
    visibility: hidden;
    height: 100%;
    display: flex;
    align-items: stretch;
    justify-content: flex-end;
    box-sizing: border-box
}

#globalNavContactBtnWrap #globalNavContactBtn {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    box-sizing: border-box;
    position: relative;
    z-index: 9002
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavContactBtnWrap #globalNavContactBtn {
        gap: 1.953125vw
    }
}

@media only screen and (max-width: 767px) {
    #globalNavContactBtnWrap #globalNavContactBtn {
        gap: 3.90625vw
    }
}

#globalNavContactBtnWrap #globalNavContactBtn a {
    line-height: 1;
    font-weight: 700;
    display: block;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavContactBtnWrap #globalNavContactBtn a {
        font-size: 1.8691588785vw;
        padding: 1.4322916667vw 2.6041666667vw
    }
}

@media only screen and (max-width: 767px) {
    #globalNavContactBtnWrap #globalNavContactBtn a {
        font-size: 2.8645833333vw;
        padding: 2.8645833333vw 5.2083333333vw
    }
}

#globalNavContactBtnWrap #globalNavContactBtn a.logout {
    background-color: #d50004;
    color: #fff
}

#globalNavBtnWrap {
    height: 100%;
    display: flex;
    align-items: stretch;
    justify-content: flex-end;
    box-sizing: border-box
}

#globalNavBtnWrap #globalNavBtn {
    height: 100%;
    box-sizing: border-box;
    position: relative;
    z-index: 9002
}

@media only screen and (max-width: 1079px) {
    #globalNavBtnWrap #globalNavBtn {
        display: grid;
        place-content: center
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavBtnWrap #globalNavBtn {
        width: 5.2083333333vw
    }
}

@media only screen and (max-width: 767px) {
    #globalNavBtnWrap #globalNavBtn {
        width: 8.3333333333vw
    }
}

#globalNavBtnWrap #globalNavBtn>a {
    width: 8.3333333333vw;
    height: 8.3333333333vw;
    display: block;
    position: relative;
    box-sizing: border-box;
    border: 1px solid #000919;
    border-radius: 50%
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavBtnWrap #globalNavBtn>a {
        width: 5.2083333333vw;
        height: 5.2083333333vw
    }
}

#globalNavBtnWrap #globalNavBtn>a:before,
#globalNavBtnWrap #globalNavBtn>a:after,
#globalNavBtnWrap #globalNavBtn>a>span {
    width: 40%;
    height: 2px;
    content: "";
    background-color: #000;
    border-radius: 4px;
    display: block;
    transition: transform .3s ease 0s;
    position: absolute;
    left: 50%
}

#globalNavBtnWrap #globalNavBtn>a:before {
    transform: translateX(-50%);
    top: 33.333%
}

#globalNavBtnWrap #globalNavBtn>a:after {
    transform: translateX(-50%);
    bottom: 33.333%
}

#globalNavBtnWrap #globalNavBtn>a>span {
    transform: translate(-50%, -50%);
    top: 50%
}

#globalNavBtnWrap #globalNavBtn>a.drawerActive:before {
    top: 50%;
    transform: translateX(-50%) rotate(45deg)
}

#globalNavBtnWrap #globalNavBtn>a.drawerActive:after {
    top: 50%;
    transform: translateX(-50%) rotate(-45deg)
}

#globalNavBtnWrap #globalNavBtn>a.drawerActive>span {
    opacity: 0
}

#globalNavSub {
    width: 100%;
    height: 100%;
    background-color: #fff;
    transition-property: all;
    transition-duration: .3s;
    transition-timing-function: ease;
    transition-delay: 0
}

@media only screen and (max-width: 1079px) {
    #globalNavSub {
        height: auto;
        display: block
    }
}

#globalNavSub .nav {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    box-sizing: border-box
}

@media only screen and (max-width: 1079px) {
    #globalNavSub .nav {
        display: block
    }
}

@media only screen and (min-width: 1080px) {
    #globalNavSub .nav.main {
        padding-left: 10px;
        justify-content: flex-start
    }
}

#globalNavSub .nav .textNav {
    height: 100%;
    display: flex;
    gap: 40px;
    align-items: center;
    justify-content: flex-end;
    box-sizing: border-box;
    margin-right: 40px
}

@media only screen and (max-width: 1079px) {
    #globalNavSub .nav .textNav {
        display: block
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavSub .nav .textNav {
        margin-left: 5.2083333333vw;
        margin-right: 5.2083333333vw
    }
}

@media only screen and (max-width: 767px) {
    #globalNavSub .nav .textNav {
        margin-left: 10.4166666667vw;
        margin-right: 10.4166666667vw
    }
}

#globalNavSub .nav .textNav>li {
    height: 100%;
    box-sizing: border-box;
    padding: 16px 0;
    display: grid;
    place-content: center
}

@media only screen and (max-width: 1079px) {
    #globalNavSub .nav .textNav>li {
        padding: 0;
        display: block;
        border-bottom: 1px solid #d7d7d7
    }
}

#globalNavSub .nav .textNav>li.contactBtn {
    margin-left: 8px
}

@media only screen and (max-width: 1079px) {
    #globalNavSub .nav .textNav>li.contactBtn {
        border-bottom: none
    }
}

@media only screen and (max-width: 1079px) {
    #globalNavSub .nav .textNav .navText {
        width: 100%
    }
}

#globalNavSub .nav .textNav a {
    height: 100%;
    font-size: 14px;
    font-weight: 700;
    display: grid;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    color: #000919;
    transition-property: all;
    transition-duration: .3s;
    transition-timing-function: ease;
    transition-delay: 0
}

@media only screen and (max-width: 1079px) {
    #globalNavSub .nav .textNav a {
        padding: 1em 1.6em;
        justify-content: flex-start
    }
}

@media only screen and (max-width: 767px) {
    #globalNavSub .nav .textNav a {
        font-size: 3.6458333333vw;
        padding-left: 0
    }
}

#globalNavSub .nav .textNav .headSubNavBlock {
    position: relative
}

@media only screen and (min-width: 1080px) {
    #globalNavSub .nav .textNav .headSubNavBlock .navText {
        position: relative
    }

    #globalNavSub .nav .textNav .headSubNavBlock .navText:after {
        content: "";
        width: 14px;
        height: 8.3422751482px;
        z-index: 3;
        background-color: #000919;
        clip-path: polygon(50% 90%, 10% 0, 90% 0);
        position: absolute;
        right: -15px;
        top: 50%;
        transform: translateY(-50%)
    }
}

@media only screen and (max-width: 1079px) {
    #globalNavSub .nav .textNav .headSubNavBlock .navText:before {
        right: 0
    }
}

#globalNavSub .nav .textNav .headSubNavBlock .headSubNavWrap {
    position: absolute;
    top: 72px;
    left: 50%;
    transform: translateX(-50%);
    display: none;
    padding: 10px 20px 20px;
    width: 190px
}

@media only screen and (min-width: 1080px) {
    #globalNavSub .nav .textNav .headSubNavBlock .headSubNavWrap {
        box-shadow: 0px 4px 8px 0px rgba(96, 182, 178, .1215686275);
        background-color: #f3f3f3
    }
}

@media only screen and (max-width: 1079px) {
    #globalNavSub .nav .textNav .headSubNavBlock .headSubNavWrap {
        position: static;
        transform: none;
        width: 100%;
        padding-right: 0;
        padding-left: 0;
        background-color: #fff
    }
}

#globalNavSub .nav .textNav .headSubNavBlock .headSubNavWrap .headSubNav li:not(:first-child) {
    margin-top: 10px
}

@media only screen and (max-width: 767px) {
    #globalNavSub .nav .textNav .headSubNavBlock .headSubNavWrap .headSubNav li:not(:first-child) {
        margin-top: 4.1666666667vw
    }
}

@media only screen and (min-width: 1080px) {
    #globalNavSub .nav .textNav .headSubNavBlock .headSubNavWrap .headSubNav li a {
        position: relative;
        padding-left: 1em;
        display: block;
        padding-top: 5px;
        padding-bottom: 5px;
        white-space: nowrap
    }

    #globalNavSub .nav .textNav .headSubNavBlock .headSubNavWrap .headSubNav li a:before {
        content: "";
        display: block;
        width: 5px;
        height: 5px;
        background-color: #0e3660;
        left: 0;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        transition-property: all;
        transition-duration: 0.3s;
        transition-timing-function: ease;
        transition-delay: 0s;
        border-radius: 50%;
        opacity: 0
    }

    #globalNavSub .nav .textNav .headSubNavBlock .headSubNavWrap .headSubNav li a:hover:before {
        opacity: 1
    }
}

@media only screen and (max-width: 1079px) {
    #globalNavSub .nav .textNav .headSubNavBlock .headSubNavWrap .headSubNav li a {
        font-weight: 500;
        padding-top: 0;
        padding-bottom: 0
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavSub .nav .textNav .headSubNavBlock .headSubNavWrap .headSubNav li a {
        font-size: 1.6927083333vw
    }
}

@media only screen and (max-width: 767px) {
    #globalNavSub .nav .textNav .headSubNavBlock .headSubNavWrap .headSubNav li a {
        font-size: 3.3854166667vw
    }
}

@media only screen and (min-width: 1080px) {
    #globalNavSub .nav .textNav .headSubNavBlock:hover .headSubNavWrap {
        display: block
    }
}

@media only screen and (min-width: 1080px) {
    #globalNavSub #headPickupBnr {
        display: none
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavSub #headPickupBnr {
        margin-top: 7.2916666667vw;
        margin-left: 5.2083333333vw;
        margin-right: 5.2083333333vw
    }
}

@media only screen and (max-width: 767px) {
    #globalNavSub #headPickupBnr {
        margin-top: 14.5833333333vw;
        margin-left: 10.4166666667vw;
        margin-right: 10.4166666667vw
    }
}

#globalNavSub #headPickupBnr .headPickupTitle {
    font-family: "din-2014", sans-serif;
    font-weight: 600;
    font-style: normal;
    margin-bottom: 12px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavSub #headPickupBnr .headPickupTitle {
        font-size: 2.6041666667vw
    }
}

@media only screen and (max-width: 767px) {
    #globalNavSub #headPickupBnr .headPickupTitle {
        font-size: 5.2083333333vw
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavSub #headPickupBnr #headPickupBnrList {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 2.6041666667vw
    }
}

@media only screen and (max-width: 767px) {
    #globalNavSub #headPickupBnr #headPickupBnrList li:not(:first-child) {
        margin-top: 15px
    }
}

#globalNavSub #headPickupBnr #headPickupBnrList li>a {
    display: grid;
    grid-template-columns: 28.6458333333vw 1fr
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavSub #headPickupBnr #headPickupBnrList li>a {
        grid-template-columns: 14.3229166667vw 1fr
    }
}

#globalNavSub #headPickupBnr #headPickupBnrList li>a .bnrImg>img {
    object-fit: cover;
    height: 100%
}

#globalNavSub #headPickupBnr #headPickupBnrList li>a .textArea {
    background-color: #f3f3f3;
    padding: 4.1666666667vw
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavSub #headPickupBnr #headPickupBnrList li>a .textArea {
        padding: 2.0833333333vw
    }
}

#globalNavSub #headPickupBnr #headPickupBnrList li>a .textArea .title {
    line-height: 1.5;
    font-weight: 700;
    font-size: 3.3854166667vw
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavSub #headPickupBnr #headPickupBnrList li>a .textArea .title {
        font-size: 1.6927083333vw
    }
}

#globalNavSub #headPickupBnr #headPickupBnrList li>a .textArea .date {
    margin-top: 10px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 6px
}

#globalNavSub #headPickupBnr #headPickupBnrList li>a .textArea .date>dt {
    background-color: #9a9a9a;
    font-size: 2.8645833333vw;
    padding: 2px 4px;
    color: #fff
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavSub #headPickupBnr #headPickupBnrList li>a .textArea .date>dt {
        font-size: 1.4322916667vw
    }
}

#globalNavSub #headPickupBnr #headPickupBnrList li>a .textArea .date>dd {
    font-size: 3.125vw
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavSub #headPickupBnr #headPickupBnrList li>a .textArea .date>dd {
        font-size: 1.5625vw
    }
}

#globalNavSub #headPickupBnr #headPickupBnrList li>a .textArea>p {
    margin-top: 16px;
    color: #60b6b2;
    font-weight: 700;
    font-size: 2.6041666667vw
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #globalNavSub #headPickupBnr #headPickupBnrList li>a .textArea>p {
        font-size: 1.3020833333vw
    }
}

#mainWrap {
    width: 100%;
    box-sizing: border-box;
    padding-top: 72px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #mainWrap {
        padding-top: 7.8125vw
    }
}

@media only screen and (max-width: 767px) {
    #mainWrap {
        padding-top: 15.1041666667vw
    }
}

#mainWrap #main {
    width: 100%;
    box-sizing: border-box;
    position: relative
}

#mainWrap #contents {
    width: 100%;
    box-sizing: border-box
}

@media only screen and (min-width: 1080px) {
    #mainWrap #sidebar .sticky_fixed {
        top: 140px;
        position: sticky
    }
}

#mainWrap #sidebar .sidebarSectionWrap>*:not(:first-child) {
    margin-top: 40px
}

#mainWrap #sidebar .categoryNavList {
    width: 100%;
    margin-top: 20px;
    box-sizing: border-box
}

@media only screen and (max-width: 767px) {
    #mainWrap #sidebar .categoryNavList {
        margin-top: 5.2083333333vw
    }
}

#mainWrap #sidebar .categoryNavList>li {
    width: 100%;
    margin-top: 16px;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #mainWrap #sidebar .categoryNavList>li {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    #mainWrap #sidebar .categoryNavList>li {
        margin-top: 4.1666666667vw
    }
}

#mainWrap #sidebar .categoryNavList>li:first-child {
    margin-top: 0
}

#mainWrap #sidebar .categoryNavList>li>a {
    width: 100%;
    line-height: 1.4;
    padding: 1.2em;
    padding-left: 3.8em;
    font-family: "Outfit", 游ゴシック, 游ゴシック体, Yu Gothic, YuGothic, Noto Sans JP, Hiragino Sans, ヒラギノ角ゴシック, メイリオ, Meiryo, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
    font-size: 16px;
    font-weight: bold;
    border-radius: .9em;
    display: block;
    background-color: #f5f5f5;
    box-sizing: border-box;
    position: relative
}

@media only screen and (min-width: 1080px) {
    #mainWrap #sidebar .categoryNavList>li>a {
        transition-property: background-color;
        transition-duration: .3s;
        transition-timing-function: ease;
        transition-delay: 0
    }

    #mainWrap #sidebar .categoryNavList>li>a:hover {
        background-color: #e4e4e4
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #mainWrap #sidebar .categoryNavList>li>a {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    #mainWrap #sidebar .categoryNavList>li>a {
        font-size: 4.1666666667vw
    }
}

#mainWrap #sidebar .categoryNavList>li>a .icon {
    width: 2em;
    aspect-ratio: 1/1;
    display: block;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    position: absolute;
    top: .85em;
    left: 1.2em
}

#mainWrap #sidebar .bannerList>*:not(:first-child) {
    margin-top: 16px
}

#mainWrap #sidebar .bannerList>a,
#mainWrap #sidebar .bannerList>span {
    width: 100%;
    padding: 20px;
    display: block;
    border: 1px solid #202020;
    border-radius: 16px;
    box-sizing: border-box
}

@media only screen and (min-width: 1080px) {
    #mainWrap #sidebar .bannerList>a {
        transition-property: box-shadow;
        transition-duration: .3s;
        transition-timing-function: ease;
        transition-delay: 0
    }

    #mainWrap #sidebar .bannerList>a:hover {
        box-shadow: 0 0 0 3px #202020 inset
    }
}

#breadcrumbWrap .breadcrumb ul li a {
    color: #0e3660
}

#breadcrumbWrap .breadcrumb ul li span {
    color: #000919
}

#footWrap {
    width: 100%;
    padding: 80px 0;
    background-color: #000919;
    box-sizing: border-box;
    color: #fff
}

@media only screen and (max-width: 767px) {
    #footWrap {
        padding: 10.4166666667vw 0
    }
}

#footWrap a {
    color: #fff
}

#footWrap a:hover {
    text-decoration: underline
}

#footWrap #footer {
    position: relative
}

#footWrap .privacyLink a {
    font-size: 12px
}

@media only screen and (max-width: 767px) {
    #footWrap .privacyLink {
        margin-top: 7.8125vw
    }
}

#footWrap .footNavWrap {
    display: flex;
    gap: 40px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #footWrap .footNavWrap {
        flex-wrap: wrap;
        gap: 20px
    }
}

@media only screen and (max-width: 767px) {
    #footWrap .footNavWrap {
        display: block
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #footWrap .footNavWrap .footNav {
        width: 30%
    }
}

@media only screen and (max-width: 767px) {
    #footWrap .footNavWrap .footNav:not(:first-child) {
        margin-top: 8.3333333333vw
    }
}

#footWrap .footNavWrap .footNav>p a {
    font-size: 16px;
    font-weight: 700
}

@media only screen and (max-width: 767px) {
    #footWrap .footNavWrap .footNav>p a {
        font-size: 4.1666666667vw
    }
}

#footWrap .footNavWrap .footNav>p.careerLink {
    margin-top: 20px
}

#footWrap .footNavWrap .footNav>ul {
    margin-top: 28px
}

@media only screen and (max-width: 767px) {
    #footWrap .footNavWrap .footNav>ul {
        margin-top: 5.2083333333vw
    }
}

#footWrap .footNavWrap .footNav>ul li:not(:first-child) {
    margin-top: 5px
}

#footWrap .footNavWrap .footNav>ul li a {
    font-size: 14px;
    line-height: 1.6
}

@media only screen and (max-width: 767px) {
    #footWrap .footNavWrap .footNav>ul li a {
        font-size: 3.6458333333vw
    }
}

#footWrap .footNavWrap .footNav>ul li a:hover {
    text-decoration: underline
}

#footWrap #copyrightArea {
    width: 100%;
    box-sizing: border-box;
    margin-top: 50px;
    display: grid;
    grid-template-columns: 1fr 1fr
}

@media only screen and (max-width: 767px) {
    #footWrap #copyrightArea {
        display: block
    }
}

#footWrap #copyrightArea .footLeftArea {
    text-align: left
}

#footWrap #copyrightArea .footLeftArea .logo {
    width: 120px;
    height: 50px
}

#footWrap #copyrightArea .footLeftArea .logo a {
    background-color: #fff
}

#footWrap #copyrightArea .footLeftArea .address {
    font-size: 13px;
    line-height: 1.5;
    margin-top: 28px
}

#footWrap #copyrightArea .footRightArea {
    text-align: right;
    display: grid;
    place-content: flex-end
}

@media only screen and (max-width: 767px) {
    #footWrap #copyrightArea .footRightArea {
        display: block;
        text-align: center
    }
}

#footWrap #copyrightArea .footRightArea #copyright {
    font-size: 12px;
    margin-top: 12px
}

#footWrap .ismsLogoImg {
    width: 165px;
    margin-left: auto;
    margin-bottom: 30px
}

@media only screen and (max-width: 767px) {
    #footWrap .ismsLogoImg {
        margin-right: auto;
        margin-top: 10.4166666667vw;
        margin-bottom: 0
    }
}

#fixNav {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 50;
    width: 250px
}

@media only screen and (max-width: 767px) {
    #fixNav {
        width: 41.6666666667vw
    }
}

#fixNav #fixNavClose {
    width: 28px;
    height: 28px;
    position: absolute;
    top: 10px;
    right: 10px;
    border: none;
    background-color: #000;
    border-radius: 50%;
    cursor: pointer
}

#fixNav #fixNavClose:before,
#fixNav #fixNavClose:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1px;
    height: 15px;
    background: #fff
}

#fixNav #fixNavClose:before {
    transform: translate(-50%, -50%) rotate(45deg)
}

#fixNav #fixNavClose:after {
    transform: translate(-50%, -50%) rotate(-45deg)
}

.contactBlock {
    position: relative;
    background-color: #000919
}

@media only screen and (max-width: 767px) {
    .contactBlock {
        display: flex;
        flex-wrap: wrap;
        overflow: hidden
    }
}

.contactBlock .contactBlockInner {
    width: 100%;
    position: absolute;
    left: 0;
    top: 50%;
    z-index: 3;
    transform: translateY(-50%)
}

@media only screen and (max-width: 767px) {
    .contactBlock .contactBlockInner {
        position: static;
        transform: none;
        order: 2;
        padding-bottom: 11.4583333333vw
    }
}

.contactBlock .contactBlockInner .textBlock {
    text-align: left;
    color: #fff
}

.contactBlock .contactBlockInner .textBlock .contactTitleEn {
    font-size: 16px;
    font-family: "din-2014", sans-serif;
    font-weight: 800;
    font-style: normal;
    letter-spacing: .05em
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .contactBlock .contactBlockInner .textBlock .contactTitleEn {
        font-size: min(1.8229166667vw, 14px)
    }
}

.contactBlock .contactBlockInner .textBlock .contactTitle {
    font-size: min(3.513909224vw, 48px);
    font-weight: 700;
    line-height: 1.25;
    margin-top: 28px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .contactBlock .contactBlockInner .textBlock .contactTitle {
        margin-top: min(3.2552083333vw, 25px);
        font-size: min(3.90625vw, 30px)
    }
}

@media only screen and (max-width: 767px) {
    .contactBlock .contactBlockInner .textBlock .contactTitle {
        font-size: 7.8125vw;
        text-align: center
    }
}

.contactBlock .contactBlockInner .textBlock .contactText {
    margin-top: 36px;
    font-size: min(3.513909224vw, 48px) 24px;
    font-weight: 700
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .contactBlock .contactBlockInner .textBlock .contactText {
        margin-top: min(2.0833333333vw, 16px);
        font-size: min(2.0833333333vw, 16px)
    }
}

@media only screen and (max-width: 767px) {
    .contactBlock .contactBlockInner .textBlock .contactText {
        font-size: 4.1666666667vw;
        margin-top: 6.25vw;
        text-align: center
    }
}

.contactBlock .contactBlockInner .textBlock .contactText>span {
    background-color: #fff;
    color: #000919;
    border-radius: 4px;
    display: inline-block;
    font-size: 20px;
    font-weight: 700;
    padding: 10px;
    box-sizing: border-box;
    margin-right: 12px;
    margin-bottom: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .contactBlock .contactBlockInner .textBlock .contactText>span {
        font-size: min(1.6927083333vw, 13px)
    }
}

@media only screen and (max-width: 767px) {
    .contactBlock .contactBlockInner .textBlock .contactText>span {
        font-size: 3.3854166667vw;
        padding: 1.5625vw 2.0833333333vw;
        margin-bottom: 3.125vw;
        margin-right: 1.0416666667vw
    }
}

.contactBlock .contactBlockInner .textBlock .btnWrap {
    margin-top: 45px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .contactBlock .contactBlockInner .textBlock .btnWrap {
        margin-top: min(4.1666666667vw, 32px)
    }
}

@media only screen and (max-width: 767px) {
    .contactBlock .contactBlockInner .textBlock .btnWrap {
        margin-top: 8.3333333333vw
    }
}

.contactBlock .contactBlockInner .textBlock .btnWrap .btn {
    text-align: center;
    font-size: 20px;
    padding: 25px;
    box-sizing: border-box;
    width: min(33.6749633968vw, 460px)
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .contactBlock .contactBlockInner .textBlock .btnWrap .btn {
        padding: min(2.6041666667vw, 20px);
        font-size: min(2.0833333333vw, 16px);
        width: 45.5729166667vw
    }
}

@media only screen and (max-width: 767px) {
    .contactBlock .contactBlockInner .textBlock .btnWrap .btn {
        width: 100%;
        font-size: 4.1666666667vw;
        padding: 5.2083333333vw 6.5104166667vw
    }
}

.contactBlock .photoWrap {
    text-align: right;
    height: 100%
}

@media only screen and (max-width: 767px) {
    .contactBlock .photoWrap {
        order: 1
    }
}

.contactBlock .photoWrap .photo {
    display: inline-block;
    position: relative;
    z-index: 2
}

.contactBlock .photoWrap .photo img {
    height: 100%;
    object-fit: cover;
    object-position: left center
}

@media only screen and (min-width: 1080px) {
    .contactBlock .photoWrap .photo {
        width: 48%;
        height: min(40.2635431918vw, 550px)
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .contactBlock .photoWrap .photo {
        width: 40%;
        height: min(42.96875vw, 330px)
    }
}

@media only screen and (max-width: 767px) {
    .contactBlock .photoWrap .photo img {
        aspect-ratio: 39/28;
        object-position: center 10%
    }
}

.contactBlock .photoWrap .photo:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-top: min(20.1317715959vw, 275px) solid rgba(0, 0, 0, 0);
    border-bottom: min(20.1317715959vw, 275px) solid rgba(0, 0, 0, 0);
    border-left: 2.196193265vw solid #000919;
    border-right: 0
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .contactBlock .photoWrap .photo:before {
        content: "";
        top: auto;
        bottom: 0;
        width: 3vw;
        height: 100%;
        border: none;
        z-index: 3;
        background-color: #000919;
        clip-path: polygon(0% 0, 146% 100%, 0 100%);
        clip-path: polygon(100% 50%, 0 0, 0 100%);
        left: -1px
    }
}

@media only screen and (max-width: 767px) {
    .contactBlock .photoWrap .photo:before {
        content: "";
        top: auto;
        bottom: -1px;
        width: 50vw;
        height: 29.7938398149px;
        border: none;
        z-index: 3;
        background-color: #000919;
        clip-path: polygon(0% 0, 100% 100%, 0 100%)
    }
}

@media only screen and (max-width: 767px) {
    .contactBlock .photoWrap .photo:after {
        content: "";
        position: absolute;
        right: 0;
        bottom: -1px;
        width: 50vw;
        height: 29.7938398149px;
        border: none;
        z-index: 3;
        background-color: #000919;
        clip-path: polygon(100% 0, 100% 100%, 0 100%)
    }
}

.contactBlock .bgTitle {
    color: hsla(0, 0%, 100%, .0588235294);
    position: absolute;
    bottom: -50px;
    left: -50px
}

@media only screen and (min-width: 1280px) {
    .contactBlock .bgTitle {
        font-size: min(16.4714494876vw, 225px)
    }
}

@media only screen and (min-width: 1080px) {
    .contactBlock .bgTitle {
        font-size: min(11.3469985359vw, 155px)
    }
}

@media only screen and (max-width: 767px) {
    .contactBlock .bgTitle {
        bottom: auto;
        top: 45%;
        left: 50%;
        font-size: 24.7395833333vw;
        transform: translateX(-50%)
    }
}

@media only screen and (min-width: 1080px) {
    .contactBlock.singleContact {
        height: min(17.2035139092vw, 235px)
    }

    .contactBlock.singleContact .contactBlockInner .textBlock .contactText {
        font-size: 18px
    }

    .contactBlock.singleContact .contactBlockInner .textBlock .contactText>span {
        font-size: 16px
    }

    .contactBlock.singleContact .contactBlockInner .textBlock .btnWrap {
        margin-top: 28px
    }

    .contactBlock.singleContact .contactBlockInner .textBlock .btnWrap .btn {
        font-size: 15px;
        padding: 20px;
        box-sizing: border-box;
        width: min(23.4260614934vw, 320px)
    }

    .contactBlock.singleContact .photoWrap .photo {
        width: 40%;
        height: 100%
    }

    .contactBlock.singleContact .photoWrap .photo:before {
        height: 100%;
        border: none;
        width: 30px;
        z-index: 3;
        background-color: #000919;
        clip-path: polygon(0% 0%, 0% 100%, 70% 50%)
    }

    .contactBlock.singleContact .bgTitle {
        color: hsla(0, 0%, 100%, .0588235294);
        position: absolute;
        bottom: auto;
        top: -30px;
        left: -10px;
        font-size: min(8.78477306vw, 120px)
    }
}

@media only screen and (max-width: 767px) {
    .contactBlock.singleContact {
        width: 100vw;
        margin-left: -5vw
    }
}

.rightOverSlide {
    overflow: hidden
}

.rightOverSlide .swiper {
    overflow: visible
}

.rightOverSlide .swiper-slide {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content
}

.rightOverSlide .slide {
    overflow: hidden;
    width: 36rem;
    border-radius: 4px;
    -webkit-box-shadow: var(--box-shadow);
    box-shadow: var(--box-shadow)
}

.rightOverSlide .articleBlock {
    max-width: 360px
}

@media only screen and (max-width: 767px) {
    .rightOverSlide .articleBlock {
        max-width: 85.9375vw
    }
}

.rightOverSlide .slideBtnWrap {
    width: 125px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-left: auto;
    margin-top: 50px
}

@media only screen and (max-width: 767px) {
    .rightOverSlide .slideBtnWrap {
        width: 27.34375vw
    }
}

.rightOverSlide .slideBtnWrap .swiper-button-prev,
.rightOverSlide .slideBtnWrap .swiper-button-next {
    background-color: #000919;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    display: grid;
    place-content: center;
    position: static
}

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

    .rightOverSlide .slideBtnWrap .swiper-button-prev,
    .rightOverSlide .slideBtnWrap .swiper-button-next {
        width: 10.4166666667vw;
        height: 10.4166666667vw
    }
}

.rightOverSlide .slideBtnWrap .swiper-button-prev:before,
.rightOverSlide .slideBtnWrap .swiper-button-next:before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(-45deg);
    transition-property: all;
    transition-duration: 0.3s;
    transition-timing-function: ease;
    transition-delay: 0s;
    margin-left: -5px
}

.rightOverSlide .slideBtnWrap .swiper-button-prev:after,
.rightOverSlide .slideBtnWrap .swiper-button-next:after {
    content: none
}

.rightOverSlide .slideBtnWrap .swiper-button-prev {
    transform: rotate(180deg)
}

.section .sectionHead.flexBlock {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.section .sectionHead .sectionText {
    font-weight: 700;
    font-size: 18px;
    line-height: 1.4;
    margin-top: 20px
}

@media only screen and (max-width: 767px) {
    .section .sectionHead .sectionText {
        font-weight: 500;
        font-size: 3.90625vw
    }
}

#pageTop {
    position: absolute;
    right: -1.5%;
    bottom: 120px;
    transform: rotate(90deg);
    z-index: 2
}

#pageTop>a {
    font-family: "din-2014", sans-serif;
    font-weight: 800;
    font-style: normal;
    font-size: 18px;
    position: relative;
    padding-left: 1em;
    display: inline-block
}

#pageTop>a:before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-bottom: 2px solid #000919;
    border-right: 2px solid #000919;
    transform: translateY(-50%) rotate(135deg);
    transition-property: all;
    transition-duration: 0.3s;
    transition-timing-function: ease;
    transition-delay: 0s;
    position: absolute;
    left: 0;
    top: 50%
}

@media only screen and (min-width: 1080px) {
    #pageTop>a:hover:before {
        left: -5px
    }
}

#spFixContact {
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 2;
    width: 100%;
    border-top: 1px solid #fff
}

#spFixContact>a {
    background-color: #60b6b2;
    color: #fff;
    display: grid;
    place-content: center;
    padding: 15px
}

#spFixContact>a .fixContactBtn {
    display: flex;
    align-items: center;
    font-size: 18px;
    font-weight: 700;
    gap: 10px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #spFixContact>a .fixContactBtn img {
        width: min(3.90625vw, 30px)
    }
}

@media only screen and (max-width: 767px) {
    #spFixContact>a .fixContactBtn img {
        width: 6.5104166667vw
    }
}

.grecaptcha-badge {
    display: none !important
}

.mw_wp_form_input .inputH {
    display: none !important
}

.mw_wp_form_confirm .confirmH {
    display: none !important
}

.mw_wp_form_complete .thanksH {
    display: none !important
}

#breadcrumbWrap {
    width: 100%;
    padding-top: 15px;
    padding-bottom: 15px;
    border-top: 1px solid #e2e2e2;
    border-bottom: 1px solid #e2e2e2;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #breadcrumbWrap {
        padding-top: 1.953125vw;
        padding-bottom: 1.953125vw
    }
}

@media only screen and (max-width: 767px) {
    #breadcrumbWrap {
        padding-top: 3.90625vw;
        padding-bottom: 3.90625vw
    }
}

.breadcrumb {
    overflow: hidden
}

.breadcrumb>ul {
    width: 100%;
    margin-top: -0.4em;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    box-sizing: border-box
}

.breadcrumb>ul>li {
    line-height: 1.6;
    padding-left: 1em;
    margin-top: .4em;
    margin-right: .5em;
    font-size: 14px;
    color: #606060;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    position: relative;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .breadcrumb>ul>li {
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .breadcrumb>ul>li {
        font-size: 3.6458333333vw
    }
}

.breadcrumb>ul>li:before {
    width: .42em;
    height: .71em;
    content: "";
    background-color: #606060;
    mask-image: url('data:image/svg+xml;utf-8,<svg version="1.1" id="iconmonstr" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 15 24" style="enable-background:new 0 0 15 24;" xml:space="preserve"><polygon id="arrow-25" points="0,3 3.057,0 15,12 3.057,24 0,21 9,12 "/></svg>');
    mask-repeat: no-repeat;
    mask-position: center center;
    mask-size: contain;
    position: absolute;
    top: .5em;
    left: 0
}

.breadcrumb>ul>li:first-child {
    padding-left: 0
}

.breadcrumb>ul>li:first-child:before {
    display: none
}

.breadcrumb>ul>li:last-child {
    color: #a4a4a4
}

.breadcrumb>ul>li.breadcrumb_home>a:before {
    width: 1em;
    height: 1em;
    content: "";
    margin-right: .25em;
    background-color: currentColor;
    mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="13" height="12.002" viewBox="0 0 13 12.002"><g transform="translate(-30 -12072)"><path d="M2446,9840l-3,0v-6h-2l6.5-6,6.5,6h-2v6h-3v-4.5a1.5,1.5,0,1,0-3,0v4.5Z" transform="translate(-2411 2244)" /></g></svg>');
    mask-repeat: no-repeat;
    mask-position: center center;
    mask-size: contain;
    display: inline-block
}

.breadcrumb>ul>li span,
.breadcrumb>ul>li a {
    line-height: 1.6;
    vertical-align: top;
    display: inline-block;
    color: inherit
}

.breadcrumb>ul>li span:visited,
.breadcrumb>ul>li span:focus,
.breadcrumb>ul>li span:active,
.breadcrumb>ul>li a:visited,
.breadcrumb>ul>li a:focus,
.breadcrumb>ul>li a:active {
    color: inherit
}

.pagerArea {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 80px
}

.pagerArea a,
.pagerArea span {
    width: 40px;
    height: 40px;
    display: grid;
    border-radius: 50px;
    place-content: center;
    line-height: 1;
    padding: .3em .5em;
    margin-right: .5em;
    margin-left: .5em;
    font-size: 16px;
    background-color: #000919;
    border: 1px solid #000919;
    color: #fff;
    box-sizing: border-box;
    transition: all .3s ease 0s, color .3s ease 0s
}

.pagerArea a:visited,
.pagerArea a:focus,
.pagerArea a:active,
.pagerArea span:visited,
.pagerArea span:focus,
.pagerArea span:active {
    color: #fff
}

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

    .pagerArea a,
    .pagerArea span {
        font-size: 2.0833333333vw
    }
}

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

    .pagerArea a,
    .pagerArea span {
        font-size: 4.1666666667vw
    }
}

.pagerArea a.current,
.pagerArea span.current {
    color: #fff;
    background-color: #60b6b2;
    border-color: #60b6b2
}

.pagerArea a.current:visited,
.pagerArea a.current:focus,
.pagerArea a.current:active,
.pagerArea span.current:visited,
.pagerArea span.current:focus,
.pagerArea span.current:active {
    color: #fff
}

.pagerArea a.dots,
.pagerArea span.dots {
    border: none
}

.pagerArea a.next,
.pagerArea a.prev,
.pagerArea span.next,
.pagerArea span.prev {
    padding-right: 0;
    padding-left: 0;
    background-color: rgba(0, 0, 0, 0);
    border: none
}

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

    .pagerArea a.next:hover,
    .pagerArea a.prev:hover,
    .pagerArea span.next:hover,
    .pagerArea span.prev:hover {
        color: #000919
    }

    .pagerArea a.next:hover:visited,
    .pagerArea a.next:hover:focus,
    .pagerArea a.next:hover:active,
    .pagerArea a.prev:hover:visited,
    .pagerArea a.prev:hover:focus,
    .pagerArea a.prev:hover:active,
    .pagerArea span.next:hover:visited,
    .pagerArea span.next:hover:focus,
    .pagerArea span.next:hover:active,
    .pagerArea span.prev:hover:visited,
    .pagerArea span.prev:hover:focus,
    .pagerArea span.prev:hover:active {
        color: #000919
    }
}

.pagerArea a.next:after,
.pagerArea a.prev:after,
.pagerArea span.next:after,
.pagerArea span.prev:after {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-bottom: 2px solid #000919;
    border-right: 2px solid #000919;
    transform: rotate(-45deg);
    transition-property: all;
    transition-duration: 0.3s;
    transition-timing-function: ease;
    transition-delay: 0s;
    margin-left: -5px
}

.pagerArea a.prev:after,
.pagerArea span.prev:after {
    transform: rotate(135deg)
}

@media only screen and (min-width: 1080px) {
    .pagerArea a:not(.next):not(.prev):hover {
        color: #fff;
        border-color: #60b6b2;
        background-color: #60b6b2
    }

    .pagerArea a:not(.next):not(.prev):hover:visited,
    .pagerArea a:not(.next):not(.prev):hover:focus,
    .pagerArea a:not(.next):not(.prev):hover:active {
        color: #fff
    }
}

#notFound {
    padding-top: 80px;
    padding-bottom: 80px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #notFound {
        padding-top: 7.8125vw;
        padding-bottom: 7.8125vw
    }
}

@media only screen and (max-width: 767px) {
    #notFound {
        padding-top: 15.625vw;
        padding-bottom: 15.625vw
    }
}

#notFound.articleNotFound {
    padding-top: 0;
    padding-bottom: 0
}

#notFound .notFoundInner>* {
    margin-top: 30px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #notFound .notFoundInner>* {
        margin-top: 3.6458333333vw
    }
}

@media only screen and (max-width: 767px) {
    #notFound .notFoundInner>* {
        margin-top: 7.2916666667vw
    }
}

#notFound .notFoundInner>*:first-child {
    margin-top: 0
}

#notFound .notFoundInner>.titleArea+* {
    margin-top: 15px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #notFound .notFoundInner>.titleArea+* {
        margin-top: 1.6927083333vw
    }
}

@media only screen and (max-width: 767px) {
    #notFound .notFoundInner>.titleArea+* {
        margin-top: 3.3854166667vw
    }
}

#notFound .notFoundTitle {
    line-height: 1.6;
    font-size: 26px;
    font-weight: bold;
    letter-spacing: .08em;
    color: #000919
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #notFound .notFoundTitle {
        font-size: 3.125vw
    }
}

@media only screen and (max-width: 767px) {
    #notFound .notFoundTitle {
        font-size: 6.25vw
    }
}

#notFound .notFoundBtn {
    min-width: 200px;
    line-height: 1.6;
    padding: .8em 5.33em .85em 1.5em;
    border: 1px solid #000919;
    border-radius: 10em;
    display: inline-block;
    font-size: 15px;
    letter-spacing: .08em;
    overflow: hidden;
    color: #000919;
    box-sizing: border-box;
    position: relative;
    z-index: 1
}

#notFound .notFoundBtn:visited,
#notFound .notFoundBtn:focus,
#notFound .notFoundBtn:active {
    color: #000919
}

@media only screen and (min-width: 1080px) {
    #notFound .notFoundBtn {
        transition: color .3s ease 0s
    }

    #notFound .notFoundBtn:before {
        width: 100%;
        height: 100%;
        content: "";
        background-color: #000919;
        transform-origin: 100% 50%;
        transform: scaleX(0);
        transition: transform ease .3s;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1
    }

    #notFound .notFoundBtn:hover {
        color: #fff
    }

    #notFound .notFoundBtn:hover:visited,
    #notFound .notFoundBtn:hover:focus,
    #notFound .notFoundBtn:hover:active {
        color: #fff
    }

    #notFound .notFoundBtn:hover:before {
        transform-origin: 0% 50%;
        transform: scaleX(1)
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    #notFound .notFoundBtn {
        min-width: 0;
        font-size: 1.6927083333vw
    }
}

@media only screen and (max-width: 767px) {
    #notFound .notFoundBtn {
        min-width: 0;
        padding-top: .8em;
        padding-bottom: .8em;
        font-size: 3.3854166667vw
    }
}

#notFound .notFoundBtn:after {
    width: .66em;
    height: .58em;
    content: "";
    display: block;
    background-color: currentColor;
    mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="10.002" height="8.752" viewBox="0 0 10.002 8.752"><g transform="translate(-5 -5.624)"><path d="M10.183,5.808a.625.625,0,0,1,.885,0l3.75,3.75a.625.625,0,0,1,0,.885l-3.75,3.75a.626.626,0,1,1-.885-.885L13.491,10,10.183,6.692a.625.625,0,0,1,0-.885Z" /><path d="M5,10a.625.625,0,0,1,.625-.625H13.75a.625.625,0,0,1,0,1.25H5.625A.625.625,0,0,1,5,10Z" /></g></svg>');
    mask-repeat: no-repeat;
    mask-position: center center;
    mask-size: contain;
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    right: 1.5em;
    z-index: 1
}

#notFound .notFoundBtn>span {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    position: relative;
    z-index: 1
}

.inner {
    width: 100%;
    max-width: 1200px;
    padding-right: 20px;
    padding-left: 20px;
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .inner {
        width: 90%;
        max-width: none;
        padding-right: 0;
        padding-left: 0
    }
}

@media only screen and (max-width: 767px) {
    .inner {
        width: 90%;
        max-width: none;
        padding-right: 0;
        padding-left: 0
    }
}

.middleInner {
    width: 100%;
    max-width: 1200px;
    padding-right: 20px;
    padding-left: 20px;
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .middleInner {
        width: 90%;
        max-width: none;
        padding-right: 0;
        padding-left: 0
    }
}

@media only screen and (max-width: 767px) {
    .middleInner {
        width: 90%;
        max-width: none;
        padding-right: 0;
        padding-left: 0
    }
}

.smallInner {
    width: 100%;
    max-width: 725px;
    padding-right: 20px;
    padding-left: 20px;
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .smallInner {
        width: 90%;
        max-width: none;
        padding-right: 0;
        padding-left: 0
    }
}

@media only screen and (max-width: 767px) {
    .smallInner {
        width: 90%;
        max-width: none;
        padding-right: 0;
        padding-left: 0
    }
}

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

.sectionWrap .section {
    box-sizing: border-box
}

.sectionWrap .section.hasBorderT {
    border-top: 1px solid #ddd
}

.sectionWrap .sectionInner {
    padding-top: 80px;
    padding-bottom: 80px
}

.sectionWrap .sectionInner.hasBorderT {
    border-top: 1px solid #ddd
}

.sectionWrap .sectionInner.pTNone {
    padding-top: 0
}

.sectionWrap .sectionInner.pBNone {
    padding-bottom: 0
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .sectionWrap .sectionInner {
        padding-top: 7.8125vw;
        padding-bottom: 7.8125vw
    }

    .sectionWrap .sectionInner.tabPTNone {
        padding-top: 0
    }

    .sectionWrap .sectionInner.tabPBNone {
        padding-bottom: 0
    }

    .sectionWrap .sectionInner.tabHasPT {
        padding-top: 7.8125vw
    }

    .sectionWrap .sectionInner.tabHasPB {
        padding-bottom: 7.8125vw
    }
}

@media only screen and (max-width: 767px) {
    .sectionWrap .sectionInner {
        padding-top: 15.625vw;
        padding-bottom: 15.625vw
    }

    .sectionWrap .sectionInner.spPTNone {
        padding-top: 0
    }

    .sectionWrap .sectionInner.spPBNone {
        padding-bottom: 0
    }

    .sectionWrap .sectionInner.spHasPT {
        padding-top: 15.625vw
    }

    .sectionWrap .sectionInner.spHasPB {
        padding-bottom: 15.625vw
    }
}

.sectionWrap .sectionInner.smallPd {
    padding-top: 100px;
    padding-bottom: 100px
}

.sectionWrap .sectionInner.smallPd.pTBig {
    padding-top: 80px
}

.sectionWrap .sectionInner.smallPd.pBBig {
    padding-bottom: 80px
}

.sectionWrap .sectionInner.smallPd.pTNone {
    padding-top: 0
}

.sectionWrap .sectionInner.smallPd.pBNone {
    padding-bottom: 0
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .sectionWrap .sectionInner.smallPd {
        padding-top: 6.5104166667vw;
        padding-bottom: 6.5104166667vw
    }

    .sectionWrap .sectionInner.smallPd.tabPTNone {
        padding-top: 0
    }

    .sectionWrap .sectionInner.smallPd.tabPBNone {
        padding-bottom: 0
    }

    .sectionWrap .sectionInner.smallPd.tabHasPT {
        padding-top: 6.5104166667vw
    }

    .sectionWrap .sectionInner.smallPd.tabHasPB {
        padding-bottom: 6.5104166667vw
    }

    .sectionWrap .sectionInner.smallPd.tabHasPTBig {
        padding-top: 7.8125vw
    }

    .sectionWrap .sectionInner.smallPd.tabHasPBBig {
        padding-bottom: 7.8125vw
    }
}

@media only screen and (max-width: 767px) {
    .sectionWrap .sectionInner.smallPd {
        padding-top: 13.0208333333vw;
        padding-bottom: 13.0208333333vw
    }

    .sectionWrap .sectionInner.smallPd.spPTNone {
        padding-top: 0
    }

    .sectionWrap .sectionInner.smallPd.spPBNone {
        padding-bottom: 0
    }

    .sectionWrap .sectionInner.smallPd.spHasPT {
        padding-top: 13.0208333333vw
    }

    .sectionWrap .sectionInner.smallPd.spHasPB {
        padding-bottom: 13.0208333333vw
    }

    .sectionWrap .sectionInner.smallPd.spHasPTBig {
        padding-top: 15.625vw
    }

    .sectionWrap .sectionInner.smallPd.spHasPBBig {
        padding-bottom: 15.625vw
    }
}

.bold {
    font-weight: bold
}

.color_black {
    color: #000
}

.color_black:visited,
.color_black:focus,
.color_black:active {
    color: #000
}

.color_black * {
    color: inherit
}

.color_white {
    color: #fff
}

.color_white:visited,
.color_white:focus,
.color_white:active {
    color: #fff
}

.color_white * {
    color: inherit
}

.color_baseColor {
    color: #000919
}

.color_baseColor:visited,
.color_baseColor:focus,
.color_baseColor:active {
    color: #000919
}

.color_baseColor * {
    color: inherit
}

.color_required {
    color: #f81515
}

.color_required:visited,
.color_required:focus,
.color_required:active {
    color: #f81515
}

.color_required * {
    color: inherit
}

.bg_white {
    background-color: #fff
}

.bg_baseColor {
    background-color: #000919
}

.bg_gray {
    background-color: #f7f7f7
}

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

.columnList {
    width: 100%;
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: wrap;
    box-sizing: border-box
}

@media only screen and (min-width: 1080px) {
    .columnList.column3 .columnBox {
        width: 27.5862068966%;
        margin-top: 8.6206896552%;
        margin-left: 8.6206896552%
    }

    .columnList.column3 .columnBox:nth-child(-n+3) {
        margin-top: 0
    }

    .columnList.column3 .columnBox:nth-child(3n+1) {
        margin-left: 0
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .columnList.tabColumn2 .columnBox {
        width: 47%;
        margin-top: 6%;
        margin-left: 6%
    }

    .columnList.tabColumn2 .columnBox:nth-child(-n+2) {
        margin-top: 0
    }

    .columnList.tabColumn2 .columnBox:nth-child(2n+1) {
        margin-left: 0
    }
}

@media only screen and (max-width: 767px) {
    .columnList.spColumn1 .columnBox {
        width: 100%;
        margin-top: 10.4166666667vw
    }

    .columnList.spColumn1 .columnBox:first-child {
        margin-top: 0
    }
}

@media only screen and (min-width: 1080px) {
    .columnList a.columnBox:hover .img {
        opacity: .7
    }

    .columnList a.columnBox:hover .articleTitle {
        color: #000919
    }

    .columnList a.columnBox:hover .articleTitle:visited,
    .columnList a.columnBox:hover .articleTitle:focus,
    .columnList a.columnBox:hover .articleTitle:active {
        color: #000919
    }
}

.columnList .columnBox {
    box-sizing: border-box
}

.columnList .columnBox>* {
    margin-top: 15px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .columnList .columnBox>* {
        margin-top: 1.953125vw
    }
}

@media only screen and (max-width: 767px) {
    .columnList .columnBox>* {
        margin-top: 3.90625vw
    }
}

.columnList .columnBox>*:first-child {
    margin-top: 0
}

.columnList .columnBox .photo {
    width: 100%;
    box-sizing: border-box;
    position: relative
}

.columnList .columnBox .photo .category {
    width: 100%;
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2
}

.columnList .columnBox .photo .img {
    width: 100%;
    height: 0;
    padding-top: 70.3125%;
    overflow: hidden;
    box-sizing: border-box;
    position: relative
}

@media only screen and (min-width: 1080px) {
    .columnList .columnBox .photo .img {
        transition: opacity .3s ease 0s
    }
}

.columnList .columnBox .photo .img>img {
    width: 100%;
    max-width: none;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center center;
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1
}

.columnList .columnBox .detail {
    width: 100%;
    box-sizing: border-box
}

.columnList .columnBox .detail .detailInner>* {
    margin-top: 20px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .columnList .columnBox .detail .detailInner>* {
        margin-top: 2.6041666667vw
    }
}

@media only screen and (max-width: 767px) {
    .columnList .columnBox .detail .detailInner>* {
        margin-top: 5.2083333333vw
    }
}

.columnList .columnBox .detail .detailInner>*:first-child {
    margin-top: 0
}

.columnList .columnBox .detail .detailInner .articleTitle {
    line-height: 1.6;
    font-size: 16px
}

@media only screen and (min-width: 1080px) {
    .columnList .columnBox .detail .detailInner .articleTitle {
        transition: color .3s ease 0s
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .columnList .columnBox .detail .detailInner .articleTitle {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .columnList .columnBox .detail .detailInner .articleTitle {
        font-size: 4.1666666667vw
    }
}

.photo {
    position: relative
}

.photo>.new {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 4;
    display: inline-block;
    background-color: #60b6b2;
    font-size: 20px;
    font-family: "din-2014", sans-serif;
    font-weight: 600;
    font-style: normal;
    letter-spacing: .02em;
    padding: 2px 10px;
    color: #fff;
    border-top-left-radius: 8px
}

@media only screen and (max-width: 767px) {
    .photo>.new {
        font-size: 3.125vw
    }
}

.articleBlock .titleArea .normalTitle {
    font-size: 18px;
    line-height: 1.3
}

@media only screen and (max-width: 767px) {
    .articleBlock .titleArea .normalTitle {
        font-size: 3.6458333333vw
    }
}

.dateWrap {
    color: #545454;
    gap: 12px;
    display: flex;
    align-items: center;
    margin-top: 15px;
    flex-wrap: wrap
}

.dateWrap .companyName {
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 4px;
    border: 1px solid #545454;
    display: inline-block;
    font-weight: 500;
    line-height: 1.1
}

@media only screen and (max-width: 767px) {
    .dateWrap .companyName {
        font-size: 2.6041666667vw
    }
}

.dateWrap .modifiedDate {
    font-family: "din-2014", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 14px
}

@media only screen and (max-width: 767px) {
    .dateWrap .modifiedDate {
        font-size: 3.6458333333vw
    }
}

.articleList {
    width: 100%;
    display: grid;
    grid-auto-rows: auto;
    box-sizing: border-box
}

@media only screen and (min-width: 1080px) {
    .articleList.column-pc-3 {
        grid-template-columns: repeat(3, 1fr);
        gap: 50px
    }
}

@media only screen and (min-width: 1080px) {
    .articleList.column-pc-2 {
        grid-template-columns: repeat(2, 1fr);
        gap: 40px 50px
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .articleList.column-tab-3 {
        grid-template-columns: repeat(3, 1fr);
        gap: 3.2552083333vw
    }

    .articleList.column-tab-2 {
        grid-template-columns: repeat(2, 1fr);
        gap: 3.2552083333vw
    }
}

@media only screen and (max-width: 767px) {
    .articleList.column-sp-1 {
        grid-template-columns: repeat(1, 1fr);
        gap: 5.2083333333vw
    }
}

.articleList.gapBorder>* {
    padding-top: 40px;
    padding-bottom: 40px;
    border-bottom: 1px solid #ddd
}

@media only screen and (max-width: 767px) {
    .articleList.gapBorder>* {
        padding-top: 7.8125vw;
        padding-bottom: 7.8125vw
    }
}

.articleList.gapBorder>*:first-child {
    padding-top: 0
}

@media only screen and (min-width: 1080px) {
    .articleList>a:hover .photo .img:before {
        width: 100%;
        height: 100%;
        border-top-color: #000;
        border-right-color: #000;
        transition: width .25s ease-out, height .25s ease-out .25s
    }

    .articleList>a:hover .photo .img:after {
        width: 100%;
        height: 100%;
        border-bottom-color: #000;
        border-left-color: #000;
        transition: border-color 0s ease-out .5s, width .25s ease-out .5s, height .25s ease-out .75s
    }
}

.articleList .photo {
    width: 100%;
    box-sizing: border-box;
    position: relative
}

.articleList .photo .img {
    width: 100%;
    overflow: hidden;
    box-sizing: border-box;
    border-radius: 8px
}

@media only screen and (min-width: 1080px) {
    .articleList .photo .img {
        position: relative
    }

    .articleList .photo .img:before,
    .articleList .photo .img:after {
        width: 0;
        height: 0;
        content: "";
        display: block;
        box-sizing: border-box;
        border: 3px solid rgba(0, 0, 0, 0);
        position: absolute;
        z-index: 2
    }

    .articleList .photo .img:before {
        top: 0;
        left: 0
    }

    .articleList .photo .img:after {
        bottom: 0;
        right: 0
    }
}

.articleList .photo .img>img {
    object-fit: cover;
    height: 100%;
    aspect-ratio: 9/5
}

@media only screen and (min-width: 1080px) {
    .articleList .photo .img>img {
        transition-property: transform;
        transition-duration: .3s;
        transition-timing-function: ease;
        transition-delay: 0
    }
}

.articleList .detail>*:not(:first-child) {
    margin-top: 15px
}

@media only screen and (max-width: 767px) {
    .articleList .detail>*:not(:first-child) {
        margin-top: 3.125vw
    }
}

.articleList .detail .detailHead {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    box-sizing: border-box;
    flex-wrap: wrap;
    gap: 12px
}

@media only screen and (max-width: 767px) {
    .articleList .detail .detailHead {
        gap: 6px
    }
}

.articleList .detail .detailHead .date {
    font-size: 14px;
    color: #545454;
    line-height: 1
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .articleList .detail .detailHead .date {
        font-size: min(1.6927083333vw, 13px)
    }
}

@media only screen and (max-width: 767px) {
    .articleList .detail .detailHead .date {
        font-size: 3.125vw
    }
}

.articleList.normal>a {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 5;
    grid-auto-rows: auto;
    gap: 20px 0;
    box-sizing: border-box
}

@media only screen and (max-width: 767px) {
    .articleList.normal>a {
        display: block
    }

    .articleList.normal>a:not(:first-child) {
        margin-top: 30px
    }
}

.articleList.normal>a .detail {
    width: 100%;
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 4;
    grid-auto-rows: auto;
    gap: 16px 0;
    align-items: flex-start;
    box-sizing: border-box
}

@media only screen and (max-width: 1079px) {
    .articleList.normal>a .detail {
        display: block;
        margin-top: 20px
    }
}

.articleList.normal>a .titleArea {
    margin-top: -16px
}

@media only screen and (max-width: 1079px) {
    .articleList.normal>a .titleArea {
        margin-top: 20px
    }
}

.articleList.normal>a .author {
    width: 100%;
    display: grid;
    grid-template-columns: 35px 1fr;
    gap: 10px;
    box-sizing: border-box
}

@media only screen and (min-width: 1080px) {
    .articleList.normal>a .author {
        margin-top: 20px
    }
}

.articleList.normal>a .author .icon {
    aspect-ratio: 1/1;
    border-radius: 100%;
    overflow: hidden;
    box-sizing: border-box
}

.articleList.normal>a .author .icon img {
    width: 100%;
    object-fit: cover;
    display: block
}

.articleList.normal>a .author .info {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .articleList.normal>a .author .info {
        gap: .2604166667vw;
        flex-wrap: wrap
    }
}

.articleList.normal>a .author .info .name {
    line-height: 1;
    font-size: 16px;
    white-space: nowrap;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .articleList.normal>a .author .info .name {
        width: 100%;
        font-size: 1.5625vw
    }
}

.articleList.normal>a .author .info .title {
    line-height: 1.4;
    padding-top: .2em;
    font-size: 12px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .articleList.normal>a .author .info .title {
        width: 100%;
        padding-top: 0;
        font-size: 1.3020833333vw
    }
}

.articleList.rect>a {
    display: grid;
    grid-template-columns: 260px 1fr;
    gap: 40px;
    box-sizing: border-box
}

@media only screen and (max-width: 767px) {
    .articleList.rect>a {
        grid-template-columns: 31.25vw 1fr;
        gap: 5.2083333333vw
    }
}

.articleList.square>a {
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 40px;
    box-sizing: border-box
}

@media only screen and (max-width: 767px) {
    .articleList.square>a {
        grid-template-columns: 26.0416666667vw 1fr;
        gap: 4.1666666667vw
    }
}

.articleList.square>a .img {
    aspect-ratio: 1/1
}

.articleList.casestudyList {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 0;
}

@media only screen and (max-width: 767px) {
    .articleList.casestudyList {
        display: block
    }
}

@media only screen and (max-width: 767px) {
    .articleList.casestudyList .articleBlock {
        display: block
    }

    .articleList.casestudyList .articleBlock:last-child {
        margin-bottom: 0
    }
}

@media only screen and (max-width: 767px) {
    .articleList.casestudyList .articleBlock .detail {
        margin-top: 5.2083333333vw
    }
}

.articleList.casestudyList .articleBlock.firstBlock {
    width: 100% !important;
    display: grid;
    grid-template-columns: 630px 1fr;
    gap: 45px;
    margin-left: 0 !important;lllllllllllllllllllllllllll
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .articleList.casestudyList .articleBlock.firstBlock {
        grid-template-columns: 42.96875vw 1fr;
        gap: 3.90625vw
    }
}

@media only screen and (max-width: 767px) {
    .articleList.casestudyList .articleBlock.firstBlock {
        display: block
    }
}

.articleList.casestudyList .articleBlock.firstBlock .photo {
    position: relative
}

.articleList.casestudyList .articleBlock.firstBlock .detail .dateWrap {
    margin-top: 0
}

.articleList.casestudyList .articleBlock.firstBlock .detail .titleArea .normalTitle {
    font-size: 26px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .articleList.casestudyList .articleBlock.firstBlock .detail .titleArea .normalTitle {
        font-size: 2.34375vw
    }
}

@media only screen and (max-width: 767px) {
    .articleList.casestudyList .articleBlock.firstBlock .detail .titleArea .normalTitle {
        font-size: 4.1666666667vw
    }
}

.infoDetail {
    background-color: #fff;
    border-radius: 4px;
    margin-top: 32px;
    padding: 20px 24px;
    box-sizing: border-box;
    width: 100%
}

@media only screen and (max-width: 767px) {
    .infoDetail {
        margin-top: 5.7291666667vw
    }
}

.infoDetail>dl {
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 20px;
    align-items: center
}

.infoDetail>dl:first-child {
    margin-bottom: 12px
}

.infoDetail>dl dt {
    background-color: #60b6b2;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    padding: 10px 8px;
    text-align: center;
    border-radius: 4px
}

@media only screen and (max-width: 767px) {
    .infoDetail>dl dt {
        font-size: 3.125vw;
        padding: 2.0833333333vw
    }
}

.infoDetail>dl dd {
    line-height: 1.25
}

@media only screen and (max-width: 767px) {
    .infoDetail>dl dd {
        font-size: 3.3854166667vw
    }
}

@media only screen and (max-width: 767px) {
    .infoDetail>dl dd span {
        font-size: 3.3854166667vw
    }
}

.infoDetail>dl dd span:not(:first-child):before {
    content: "/"
}

.infoDetail>dl:last-child {
    align-items: flex-start
}

.infoDetail>dl:last-child dd {
    display: grid;
    place-content: center flex-start;
    height: 100%
}

@media only screen and (min-width: 1080px) {
    .sliderArea>a:hover .photo .img:before {
        width: 100%;
        height: 100%;
        border-top-color: #000;
        border-right-color: #000;
        transition: width .25s ease-out, height .25s ease-out .25s
    }

    .sliderArea>a:hover .photo .img:after {
        width: 100%;
        height: 100%;
        border-bottom-color: #000;
        border-left-color: #000;
        transition: border-color 0s ease-out .5s, width .25s ease-out .5s, height .25s ease-out .75s
    }
}

.sliderArea .photo {
    width: 100%;
    box-sizing: border-box;
    position: relative
}

.sliderArea .photo .img {
    width: 100%;
    overflow: hidden;
    box-sizing: border-box;
    border-radius: 8px
}

@media only screen and (min-width: 1080px) {
    .sliderArea .photo .img {
        position: relative
    }

    .sliderArea .photo .img:before,
    .sliderArea .photo .img:after {
        width: 0;
        height: 0;
        content: "";
        display: block;
        box-sizing: border-box;
        border: 3px solid rgba(0, 0, 0, 0);
        position: absolute;
        z-index: 2
    }

    .sliderArea .photo .img:before {
        top: 0;
        left: 0
    }

    .sliderArea .photo .img:after {
        bottom: 0;
        right: 0
    }
}

.sliderArea .photo .img>img {
    object-fit: cover;
    height: 100%;
    aspect-ratio: 9/5
}

@media only screen and (min-width: 1080px) {
    .sliderArea .photo .img>img {
        transition-property: transform;
        transition-duration: .3s;
        transition-timing-function: ease;
        transition-delay: 0
    }
}

.sliderArea .titleArea {
    margin-top: 20px
}

.categoryLabel {
    line-height: 1.4;
    padding: .35em 1em .2em 1em;
    font-size: 13px;
    display: inline-block;
    background-color: var(--termColor, #000919);
    color: #fff;
    box-sizing: border-box
}

.categoryLabel:visited,
.categoryLabel:focus,
.categoryLabel:active {
    color: #fff
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .categoryLabel {
        font-size: 1.6927083333vw
    }
}

@media only screen and (max-width: 767px) {
    .categoryLabel {
        font-size: 3.3854166667vw
    }
}

.categoryLabel.pillarTag {
    width: 150px;
    padding-right: 0;
    padding-left: 0;
    text-align: center
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .categoryLabel.pillarTag {
        width: 19.53125vw
    }
}

@media only screen and (max-width: 767px) {
    .categoryLabel.pillarTag {
        width: 39.0625vw
    }
}

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

.cloudListWrap .cloudList {
    width: calc(100% + 10px);
    margin-top: -10px;
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: wrap
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .cloudListWrap .cloudList {
        width: calc(100% + 1.3020833333vw);
        margin-top: -1.3020833333vw
    }
}

@media only screen and (max-width: 767px) {
    .cloudListWrap .cloudList {
        width: calc(100% + 2.6041666667vw);
        margin-top: -2.6041666667vw
    }
}

.cloudListWrap .cloudList.alignC {
    justify-content: center
}

.cloudListWrap .cloudList.tag>li>a,
.cloudListWrap .cloudList.tag>li>span {
    border-radius: 4px;
    border: 1px solid #ddd;
    padding: .4em .8em
}

@media only screen and (min-width: 1080px) {
    .cloudListWrap .cloudList.tag>li>a {
        transition: all .3s ease 0s, color .3s ease 0s
    }

    .cloudListWrap .cloudList.tag>li>a:hover {
        color: #000919;
        border-color: #000919
    }

    .cloudListWrap .cloudList.tag>li>a:hover:visited,
    .cloudListWrap .cloudList.tag>li>a:hover:focus,
    .cloudListWrap .cloudList.tag>li>a:hover:active {
        color: #000919
    }
}

.cloudListWrap .cloudList>li {
    margin-top: 10px;
    margin-right: 10px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .cloudListWrap .cloudList>li {
        margin-top: 1.3020833333vw;
        margin-right: 1.3020833333vw
    }
}

@media only screen and (max-width: 767px) {
    .cloudListWrap .cloudList>li {
        margin-top: 2.6041666667vw;
        margin-right: 2.6041666667vw
    }
}

.cloudListWrap .cloudList>li>a,
.cloudListWrap .cloudList>li>span {
    line-height: 1.2;
    font-size: 13px;
    display: inline-block;
    box-sizing: border-box
}

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

    .cloudListWrap .cloudList>li>a,
    .cloudListWrap .cloudList>li>span {
        font-size: 1.5625vw
    }
}

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

    .cloudListWrap .cloudList>li>a,
    .cloudListWrap .cloudList>li>span {
        font-size: 3.125vw
    }
}

@media only screen and (min-width: 1080px) {
    .cloudListWrap .cloudList>li>a {
        transition: all .3s ease 0s, color .3s ease 0s
    }

    .cloudListWrap .cloudList>li>a:hover {
        color: #000919
    }

    .cloudListWrap .cloudList>li>a:hover:visited,
    .cloudListWrap .cloudList>li>a:hover:focus,
    .cloudListWrap .cloudList>li>a:hover:active {
        color: #000919
    }
}

.tagTextList {
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: .6em 1.2em
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .tagTextList {
        font-size: 1.4322916667vw
    }
}

@media only screen and (max-width: 767px) {
    .tagTextList {
        font-size: 2.8645833333vw
    }
}

.tagTextList a,
.tagTextList span {
    line-height: 1.2;
    font-size: inherit;
    color: #767e86
}

.pickuptagWrap {
    display: inline
}

.categoryLabelList {
    padding-left: 0 !important
}

@media only screen and (max-width: 1079px) {
    .categoryLabelList {
        display: flex;
        flex-wrap: wrap;
        gap: 3px
    }
}

.categoryLabelList>li {
    display: inline-block;
    line-height: 1.1
}

.categoryLabelList>li span,
.categoryLabelList>li a {
    color: #fff;
    border: 1px solid #0e3660;
    font-size: 12px;
    border-radius: 4px;
    padding: 5px 12px;
    background-color: #0e3660;
    color: #fff;
    display: block
}

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

    .categoryLabelList>li span,
    .categoryLabelList>li a {
        font-size: 3.125vw
    }
}

.categoryLabelList>li a {
    transition-property: all;
    transition-duration: 0.3s;
    transition-timing-function: ease;
    transition-delay: 0s
}

.categoryLabelList>li a:hover {
    background-color: #fff;
    color: #0e3660
}

.categoryLabelList.bgWhCate li a,
.categoryLabelList.bgWhCate li span {
    border: 1px solid #0e3660;
    background-color: #fff;
    color: #0e3660
}

.categoryLabelList.bgWhCate li a:hover {
    background-color: #0e3660;
    color: #fff
}

.lineLimit1 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden
}

.lineLimit2 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

.lineLimit3 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden
}

.lineLimit4 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden
}

.lineLimit5 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
    overflow: hidden
}

.normalTitle {
    line-height: 1.6;
    font-size: 20px;
    letter-spacing: .08em
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .normalTitle {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .normalTitle {
        font-size: 4.1666666667vw
    }
}

.normalTitle.size-xs {
    font-size: 15px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .normalTitle.size-xs {
        font-size: 1.953125vw
    }
}

@media only screen and (max-width: 767px) {
    .normalTitle.size-xs {
        font-size: 3.90625vw
    }
}

.normalTitle.size-s {
    font-size: 18px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .normalTitle.size-s {
        font-size: 2.34375vw
    }
}

@media only screen and (max-width: 767px) {
    .normalTitle.size-s {
        font-size: 4.6875vw
    }
}

.bgTitle {
    color: rgba(0, 29, 59, .0588235294);
    font-size: min(12.5915080527vw, 172px);
    font-family: "din-2014", sans-serif;
    font-weight: 600;
    font-style: normal;
    letter-spacing: .05em
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .bgTitle {
        font-size: 13.8020833333vw
    }
}

@media only screen and (max-width: 767px) {
    .bgTitle {
        font-size: 27.6041666667vw
    }
}

.sectionTitleAreaWrap {
    position: relative
}

.sectionTitleAreaWrap .sectionTitleArea {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 0;
    transform: translateY(-50%)
}

.sectionTitleAreaWrap .sectionTitleArea .sectionTitle {
    font-size: 36px;
    font-weight: 700;
    line-height: 1.4
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .sectionTitleAreaWrap .sectionTitleArea .sectionTitle {
        font-size: 3.125vw
    }
}

@media only screen and (max-width: 767px) {
    .sectionTitleAreaWrap .sectionTitleArea .sectionTitle {
        font-size: 6.25vw;
        text-align: left
    }
}

.sectionTitleAreaWrap .sectionTitleArea .sectionTitleEn {
    font-family: "din-2014", sans-serif;
    font-weight: 600;
    font-style: normal;
    color: #60b6b2;
    font-size: 16px;
    margin-top: 18px;
    letter-spacing: .05em
}

@media only screen and (max-width: 767px) {
    .sectionTitleAreaWrap .sectionTitleArea .sectionTitleEn {
        font-size: 3.125vw;
        margin-top: 1.0416666667vw
    }
}

.sectionTitleAreaWrap.centerTitle {
    text-align: center
}

.sectionTitleAreaWrap.centerTitle:not(.verticalCenter) .sectionTitleEn {
    margin-top: 0;
    margin-bottom: 32px
}

.sectionTitleAreaWrap.centerTitle .sectionTitleArea {
    position: static
}

.sectionTitleAreaWrap.centerTitle.verticalCenter .sectionTitleArea {
    position: absolute;
    top: auto;
    bottom: 0;
    transform: translateY(-25px)
}

.bgBase .sectionTitleAreaWrap .bgTitle {
    color: hsla(0, 0%, 100%, .0588235294)
}

.bgBase .sectionTitleAreaWrap .sectionTitle {
    color: #fff
}

.wysiwygText h1+*,
.wysiwygText h2+*,
.wysiwygText h3+* {
    margin-top: 15px !important
}

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

    .wysiwygText h1+*,
    .wysiwygText h2+*,
    .wysiwygText h3+* {
        margin-top: 1.953125vw !important
    }
}

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

    .wysiwygText h1+*,
    .wysiwygText h2+*,
    .wysiwygText h3+* {
        margin-top: 3.90625vw !important
    }
}

.wysiwygText h4+*,
.wysiwygText h5+*,
.wysiwygText h6+* {
    margin-top: 8px !important
}

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

    .wysiwygText h4+*,
    .wysiwygText h5+*,
    .wysiwygText h6+* {
        margin-top: 1.0416666667vw !important
    }
}

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

    .wysiwygText h4+*,
    .wysiwygText h5+*,
    .wysiwygText h6+* {
        margin-top: 2.0833333333vw !important
    }
}

.wysiwygText h1 {
    line-height: 1.6;
    padding-bottom: .5em;
    font-size: 28px;
    font-weight: bold;
    letter-spacing: .06em;
    border-bottom: 2px solid #000;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText h1 {
        font-size: 3.6458333333vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText h1 {
        font-size: 7.2916666667vw
    }
}

.wysiwygText h2 {
    line-height: 1.6;
    padding: .8em 1em;
    font-size: 24px;
    font-weight: bold;
    letter-spacing: .06em;
    background-color: #eee;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText h2 {
        font-size: 3.125vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText h2 {
        font-size: 6.25vw
    }
}

.wysiwygText h3 {
    line-height: 1.6;
    padding-left: .3em;
    border-left: 3px solid #000;
    font-size: 24px;
    font-weight: bold;
    letter-spacing: .06em;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText h3 {
        font-size: 3.125vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText h3 {
        font-size: 6.25vw
    }
}

.wysiwygText h4 {
    line-height: 1.8;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: .06em;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText h4 {
        font-size: 2.34375vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText h4 {
        font-size: 4.6875vw
    }
}

.wysiwygText h5 {
    line-height: 1.8;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: .06em;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText h5 {
        line-height: 1.6;
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText h5 {
        line-height: 1.6;
        font-size: 4.1666666667vw
    }
}

.wysiwygText h6 {
    line-height: 2;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: .06em;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText h6 {
        line-height: 1.8;
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText h6 {
        line-height: 1.8;
        font-size: 3.6458333333vw
    }
}

.wysiwygText p {
    line-height: 2;
    font-size: 16px;
    letter-spacing: .02em
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText p {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText p {
        font-size: 4.1666666667vw
    }
}

.wysiwygText a {
    line-height: 2;
    letter-spacing: .02em;
    text-decoration: underline;
    font-size: 16px;
    color: #26706C
}

.wysiwygText a:visited,
.wysiwygText a:focus,
.wysiwygText a:active {
    color: #26706C
}

@media only screen and (min-width: 1080px) {
    .wysiwygText a:hover {
        text-decoration: none
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText a {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText a {
        font-size: 4.1666666667vw
    }
}

.wysiwygText a[target=_blank]:after {
    width: .7em;
    height: .7em;
    content: "";
    margin-left: .2em;
    display: inline-block;
    vertical-align: super;
    background-color: currentColor;
    mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="178" height="178" viewBox="0 0 178 178"><image width="178" height="178" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALIAAACyCAYAAADmipVoAAAIPElEQVR4nO3de6ilVRnH8e8Z9Qya0wyUNJQFWcSAhVHRZaapsdSaUqOs7GJRSkL3OBADXahAKsOISMuyIlG7mJrdrOw2jaVkxgwlEZUgkTmpMTSUJ8bLxMKHsvKcvfacd+/9ruf9fsC/fD17vev9ne06az3vWnML69cAPBE4G9gCzCP13z5gO7AN2HVwhPha4FAfnhpSvnBPADYDGw96xuGrLwQ2+ATVqEOAo1bFcEJq2ZZVjomVwPwqn6IyMMhKwSArhYMrbmLOR60ZWwfsWa4JfiMrBYOsFAyyUjDISsEgKwWDrBQMslIwyErBICsFg6wUDLJSMMhKwSArBYOsFAyyUjDISsEgKwWDrBQMslIwyErBICsFg6wUDLJSMMhKwSArBYOsFAyyUjDISsEgKwWDrBQMslIwyErBICsFg6wUDLJSMMhKwSArBYOsFAyyUjDISqHmwEjdp/zSnwxsAh4EHNZBvxwErOmof9eNcd16YDWwG3g/8JWO2jAzBrnO4cC3gGe30NgxlFB/OX4539ZMqx+AQ4s6H0kY4vt7K7ChP80Zn0Ee7RDgtX1vZAcWWm68QR7twTEmzu4hLd+fQR5tz6iT6ZPY3fJtGOTR7gU+1fdGduAvLTfeINcpU1SXtNDQFWg6C06/1bkLOA34KLA55n7/0cHPLd/2eztq49+AhwMfaH28eyAM8nh2xj999CTgM0MMMQ4t0ngW8GPgoUPtAIPcvhOB78Y04WAZ5La9CrgCOHToHWGQ2/Um4KJYeazx08ydYZDb9G7gvMrnV2ZGzgR+mblDDHJb5oBzgLMqW12mDV8JXJC9Y5x+a0epXf40cEZlixeBl8QfgukZ5DbMA18ETqlsbVlkeQHws6F0kEHuv/ImypXA8ZUtvR04DvjVkDrJIPfb2hgaPL2ylX8Engv8YWgdZZD7q7xX933g8ZUt/G18a/9piJ3lrEU/PTrmfWtDfEMsUw8yxBjkXjoauAZ4TGXjtseY+PYR1/1zxL9venXQIPfL0yKYj6hs1TeBF0YJ5yijgry65Y4zyP3xnBgT11awXRLzxHcOoXNGMcj9UDZ+uWqMzVrK8vRrgLuzd0wtgzx7ZauBr43xv/ayPP0WYH/mThmXQZ6tsrvPhWM8h7L3xHuzdsZKGOTZeR/w8cpPLxVspwMfy9gRXXBBZPrmIpBvr/zkUsH2iiig1xIM8nSVCrbPj7EFV5mReBHwgywdMCkGeXpKBdulEcwaZXejrcDPB9A3K2aQp6NMq30dOLby024Fngf8uvUbnxaDPHllgePbwFMrP+km4PlDrGBbCYM8WUcC3xmj+OfGCPEtrd7wrDj9NjmPBX4yRoivB7YY4gNjkCfjCVHBdlTlT/9RFMT/tbUb7QuD3L1SwbYjCuNrXBmzE39P1AdTZ5C7dVzswVZ7wlJZnn4psG8KbRtVYDQ/hTZMjEHuzilRwVZboF6Wp18P3DOl9o36xu/iuLWZMcjdOD0WO2q3ryp1Fu+wgq07Tr+t3EJsAF6rVLx9ouH77SWDvDJnxT5sNe6JocRFjd5rrxnkA1Mq2M6NHTFrlPflTgW+0dh9NsMgj6+Mg78QexPXKNtXvTjmijUhBnk8h8UB5CdW/ld3xFvO1/flBrIyyPXWRgVb7ZnUZan5BOA3fWh8dga5zhFR/PPkyutvisWRm2fd8KEwyKMdGftN1J6ef2OEuOmTRFvjgsjySgXbtWOE+DrgmYZ4+gzy0o6JYD6y8vqr45u4ZvsqdcwgP7BNUcFWu33VZcBJbl81Owb5/22NMXHtAYyfi9f1p1HBpiUY5P92akyx1VawlROW3jDFCraVSL1PnEH+jzPjwJnaCrZSY/HOhirYRk0F3jaldkyEQb7Ptjj6q/YAxjcCH5xGwzr0Q2D3Ej9uf/wSN2voQS7FP2cDH668vmxfdRpw/oTbNQmLMXTa+z8/e3/URu9q8J7+bcgLImX7qk/GkKJGCcLLYo+KVu2IOfFy6OTjYjhxceshZsBBno+64JdXXr83ptd2TLhd03DrGEcAN2OIQS4VbJfHRig17ojin52zbbaWM7Qgr42hwabK62+Jsz1+N+F2aYWGFOQjYqHjmMrrfx8hHuzZdS0ZyqzFo6JuojbEO+Nb2xA3YghB3hAVbLUHMF4T27+OOoBRPZI9yE+JYNYewHhV/BFoBVtjMgd5S6xm1VawfSleErWCrUFZg3xSfLvWVrCdHwcwWsHWqIxBfnXME9dWsH0oaidaqGDTErIF+c2x5FpbwVaq19414TZpCjIF+T2x+0+Ne6OO+JzZNlldybAgMheBXKi8/q4Yfnx1wu3SFLUe5FLBdkFsDlhjMWYmvjfbZqtrrQf5s8DrKq/dG3PE1024TZqBloN87Bghvi1e1fcAxqRa/mNva+V1N0fdhCFOrOUg10yxlQ0EN3uKaH4tB3nUWPcXsUxtBdsAtBzkK5bZd7gcEXa8FWzD0XKQ745XkC6+X43EnXEwzVYr2IZlbmH9mlEbjMw10COlruJhwJ8t/EmpHMC5Z7kby/Kq06Kbag/b0DdoURIGWSkYZKVgkJWCQVYKBlkpGGSlYJCVgkFWCgZZKRhkpWCQlYJBVgoGWSkYZKVgkJWCQVYKBlkpGGSlYJCVgkFWCgZZKRhkpWCQlYJBVgoGWSkYZKVgkJWCQVYKBlkpGGSlYJCVgkFWCgZZKRhkpWCQlYJBVgoGWSkYZKVQc87eOh+1ZmztqI+vCfKyJ05KfeDQQikYZKVgkJXCKk/TVwL7SpC3+yTVuO0lyNuARZ+kGlWyu60EeRewEbjaYYYaUrJaMrsR2PUvQIAPGzIFwSAAAAAASUVORK5CYII="/></svg>');
    mask-repeat: no-repeat;
    mask-position: center center;
    mask-size: contain
}

.wysiwygText b,
.wysiwygText em,
.wysiwygText strong {
    font-weight: bold
}

.wysiwygText em {
    font-style: italic
}

.wysiwygText sup,
.wysiwygText sub {
    font-size: 80%
}

.wysiwygText sup {
    vertical-align: super
}

.wysiwygText sub {
    vertical-align: sub
}

.wysiwygText img.alignleft {
    padding-right: 30px;
    padding-bottom: 30px;
    float: left
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText img.alignleft {
        padding-right: 2.6041666667vw;
        padding-bottom: 2.6041666667vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText img.alignleft {
        padding: 0;
        padding-bottom: 5.2083333333vw;
        margin-left: auto;
        margin-right: auto;
        float: none;
        display: block
    }
}

.wysiwygText img.alignright {
    padding-bottom: 30px;
    padding-left: 30px;
    float: right
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText img.alignright {
        padding-bottom: 2.6041666667vw;
        padding-left: 2.6041666667vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText img.alignright {
        padding: 0;
        padding-bottom: 5.2083333333vw;
        margin-left: auto;
        margin-right: auto;
        float: none;
        display: block
    }
}

.wysiwygText img.aligncenter {
    padding-bottom: 30px;
    margin-left: auto;
    margin-right: auto;
    clear: both;
    display: block
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText img.aligncenter {
        padding-bottom: 2.6041666667vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText img.aligncenter {
        padding: 0;
        padding-bottom: 5.2083333333vw;
        margin-left: auto;
        margin-right: auto;
        float: none
    }
}

.wysiwygText hr {
    width: 100%;
    height: 2px;
    border: none;
    background-color: #ccc;
    display: block
}

.wysiwygText blockquote {
    width: 100%;
    line-height: 2;
    padding: 40px;
    font-size: 16px;
    letter-spacing: .02em;
    color: #6a6a6a;
    background-color: #eee;
    display: block;
    position: relative;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText blockquote {
        padding: 5.2083333333vw;
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText blockquote {
        padding: 10.4166666667vw;
        font-size: 4.1666666667vw
    }
}

.wysiwygText blockquote * {
    color: inherit
}

.wysiwygText blockquote:before,
.wysiwygText blockquote:after {
    width: 21px;
    height: 16px;
    content: "";
    display: block;
    background-color: #fff;
    mask-repeat: no-repeat;
    mask-position: center center;
    mask-size: 100% auto;
    position: absolute;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    z-index: 1
}

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

    .wysiwygText blockquote:before,
    .wysiwygText blockquote:after {
        width: 2.734375vw;
        height: 2.0833333333vw
    }
}

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

    .wysiwygText blockquote:before,
    .wysiwygText blockquote:after {
        width: 5.46875vw;
        height: 4.1666666667vw
    }
}

.wysiwygText blockquote:before {
    mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24" height="18" viewBox="0 0 24 18"><path d="M13,11.7C13,6.6,16.9,1.2,23,0l1,2.1c-2.2,0.8-4.2,3.7-4.4,5.7C22.1,8.3,24,10.4,24,13c0,3.2-2.6,5-5.2,5C15.8,18,13,15.7,13,11.7z M0,11.7C0,6.6,3.9,1.2,10,0l1,2.1C8.8,3,6.8,5.9,6.6,7.9C9.1,8.3,11,10.4,11,13c0,3.2-2.6,5-5.2,5C2.8,18,0,15.7,0,11.7z"/></svg>');
    top: 13px;
    left: 13px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText blockquote:before {
        top: 1.6927083333vw;
        left: 1.6927083333vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText blockquote:before {
        top: 3.3854166667vw;
        left: 3.3854166667vw
    }
}

.wysiwygText blockquote:after {
    mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24" height="18" viewBox="0 0 24 18"><path d="M5.2,18C2.6,18,0,16.2,0,13c0-2.6,1.9-4.7,4.4-5.2C4.2,5.8,2.2,2.9,0,2.1L1,0c6.1,1.2,10,6.6,10,11.7C11,15.7,8.2,18,5.2,18z M18.2,18c-2.6,0-5.2-1.8-5.2-5c0-2.6,1.9-4.7,4.4-5.1c-0.2-2-2.2-4.9-4.4-5.8L14,0c6.1,1.2,10,6.6,10,11.7C24,15.7,21.2,18,18.2,18z"/></svg>');
    right: 20px;
    bottom: 20px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText blockquote:after {
        right: 2.6041666667vw;
        bottom: 2.6041666667vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText blockquote:after {
        right: 5.2083333333vw;
        bottom: 5.2083333333vw
    }
}

.wysiwygText blockquote>* {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText blockquote>* {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText blockquote>* {
        margin-top: 4.1666666667vw
    }
}

.wysiwygText blockquote>*:first-child {
    margin-top: 0
}

.wysiwygText blockquote p {
    line-height: 2;
    position: relative;
    z-index: 2
}

.wysiwygText ul {
    line-height: 2;
    padding-left: 1.2em;
    list-style: disc;
    font-size: 16px;
    letter-spacing: .02em
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText ul {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText ul {
        font-size: 4.1666666667vw
    }
}

.wysiwygText ul li {
    list-style: disc
}

.wysiwygText ol {
    line-height: 2;
    padding-left: 1.2em;
    list-style: decimal;
    font-size: 16px;
    letter-spacing: .02em
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText ol {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText ol {
        font-size: 4.1666666667vw
    }
}

.wysiwygText ol li {
    list-style: decimal
}

.wysiwygText li {
    line-height: 2;
    margin-top: .5em;
    font-size: inherit;
    letter-spacing: .02em
}

.wysiwygText li:first-child {
    margin-top: 0
}

.wysiwygText li li {
    margin-top: 0
}

.wysiwygText iframe,
.wysiwygText video {
    max-width: 100% !important
}

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

    .wysiwygText iframe,
    .wysiwygText video {
        width: 100% !important;
        height: 56.25vw !important
    }
}

.wysiwygText table {
    font-size: 16px;
    letter-spacing: .02em;
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px solid #ccc
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .wysiwygText table {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .wysiwygText table {
        font-size: 4.1666666667vw
    }
}

.wysiwygText table th {
    line-height: 1.8;
    padding: 1em;
    font-size: inherit;
    letter-spacing: .02em;
    border: 1px solid #ccc;
    box-sizing: border-box
}

.wysiwygText table td {
    line-height: 1.8;
    padding: 1em;
    font-size: inherit;
    letter-spacing: .02em;
    border: 1px solid #ccc;
    box-sizing: border-box
}

.wysiwygText table thead th,
.wysiwygText table thead td {
    background-color: #eee
}

.wysiwygText table tfoot th,
.wysiwygText table tfoot td {
    background-color: #eee
}

.customBlockText .mce-menubar.mce-toolbar.mce-first {
    display: none !important
}

.customBlockText .wp-admin .wp-block[data-align=left],
.customBlockText .wp-admin .wp-block[data-align=right] {
    height: auto
}

.customBlockText h1+*,
.customBlockText h2+*,
.customBlockText h3+* {
    margin-top: 15px !important
}

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

    .customBlockText h1+*,
    .customBlockText h2+*,
    .customBlockText h3+* {
        margin-top: 1.953125vw !important
    }
}

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

    .customBlockText h1+*,
    .customBlockText h2+*,
    .customBlockText h3+* {
        margin-top: 3.90625vw !important
    }
}

.customBlockText h4+*,
.customBlockText h5+*,
.customBlockText h6+* {
    margin-top: 8px !important
}

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

    .customBlockText h4+*,
    .customBlockText h5+*,
    .customBlockText h6+* {
        margin-top: 1.0416666667vw !important
    }
}

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

    .customBlockText h4+*,
    .customBlockText h5+*,
    .customBlockText h6+* {
        margin-top: 2.0833333333vw !important
    }
}

.customBlockText h1 {
    line-height: 1.6;
    padding-bottom: .5em;
    font-size: 28px;
    font-weight: bold;
    letter-spacing: .06em;
    border-bottom: 2px solid #000;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText h1 {
        font-size: 3.6458333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText h1 {
        font-size: 7.2916666667vw
    }
}

.customBlockText h2 {
    line-height: 1.6;
    padding: .8em 1em;
    font-size: 24px;
    font-weight: bold;
    letter-spacing: .06em;
    background-color: #000919;
    box-sizing: border-box;
    color: #fff;
    border-top: 2px solid #202020;
    border-bottom: 2px solid #202020
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText h2 {
        font-size: 3.125vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText h2 {
        font-size: 5.2083333333vw
    }
}

.customBlockText h3 {
    line-height: 1.6;
    padding-bottom: .6em;
    border-bottom: 1px solid #ddd;
    font-size: 24px;
    font-weight: 700;
    letter-spacing: .06em;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText h3 {
        font-size: 3.125vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText h3 {
        font-size: 5.2083333333vw
    }
}

.customBlockText h4 {
    line-height: 1.8;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: .06em;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText h4 {
        font-size: 2.34375vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText h4 {
        font-size: 4.6875vw
    }
}

.customBlockText h5 {
    line-height: 1.8;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: .06em;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText h5 {
        line-height: 1.6;
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText h5 {
        line-height: 1.6;
        font-size: 4.1666666667vw
    }
}

.customBlockText h6 {
    line-height: 2;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: .06em;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText h6 {
        line-height: 1.8;
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText h6 {
        line-height: 1.8;
        font-size: 3.6458333333vw
    }
}

.customBlockText .wp-block-heading-caption {
    color: #9f9f9f;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.3;
    margin-bottom: 16px
}

.customBlockText p {
    line-height: 2;
    font-size: 16px;
    letter-spacing: .02em
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText p {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText p {
        font-size: 4.1666666667vw
    }
}

.customBlockText a {
    line-height: 2;
    letter-spacing: .02em;
    text-decoration: underline;
    font-size: 16px;
    color: #60B6B2
}

.customBlockText a:visited,
.customBlockText a:focus,
.customBlockText a:active {
    color: #60B6B2
}

@media only screen and (min-width: 1080px) {
    .customBlockText a:hover {
        text-decoration: none
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText a {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText a {
        font-size: 4.1666666667vw
    }
}

.customBlockText a[target=_blank]:after {
    width: .7em;
    height: .7em;
    content: "";
    margin-left: .2em;
    display: inline-block;
    vertical-align: super;
    background-color: currentColor;
    mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="178" height="178" viewBox="0 0 178 178"><image width="178" height="178" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALIAAACyCAYAAADmipVoAAAIPElEQVR4nO3de6ilVRnH8e8Z9Qya0wyUNJQFWcSAhVHRZaapsdSaUqOs7GJRSkL3OBADXahAKsOISMuyIlG7mJrdrOw2jaVkxgwlEZUgkTmpMTSUJ8bLxMKHsvKcvfacd+/9ruf9fsC/fD17vev9ne06az3vWnML69cAPBE4G9gCzCP13z5gO7AN2HVwhPha4FAfnhpSvnBPADYDGw96xuGrLwQ2+ATVqEOAo1bFcEJq2ZZVjomVwPwqn6IyMMhKwSArhYMrbmLOR60ZWwfsWa4JfiMrBYOsFAyyUjDISsEgKwWDrBQMslIwyErBICsFg6wUDLJSMMhKwSArBYOsFAyyUjDISsEgKwWDrBQMslIwyErBICsFg6wUDLJSMMhKwSArBYOsFAyyUjDISsEgKwWDrBQMslIwyErBICsFg6wUDLJSMMhKwSArBYOsFAyyUjDISqHmwEjdp/zSnwxsAh4EHNZBvxwErOmof9eNcd16YDWwG3g/8JWO2jAzBrnO4cC3gGe30NgxlFB/OX4539ZMqx+AQ4s6H0kY4vt7K7ChP80Zn0Ee7RDgtX1vZAcWWm68QR7twTEmzu4hLd+fQR5tz6iT6ZPY3fJtGOTR7gU+1fdGduAvLTfeINcpU1SXtNDQFWg6C06/1bkLOA34KLA55n7/0cHPLd/2eztq49+AhwMfaH28eyAM8nh2xj999CTgM0MMMQ4t0ngW8GPgoUPtAIPcvhOB78Y04WAZ5La9CrgCOHToHWGQ2/Um4KJYeazx08ydYZDb9G7gvMrnV2ZGzgR+mblDDHJb5oBzgLMqW12mDV8JXJC9Y5x+a0epXf40cEZlixeBl8QfgukZ5DbMA18ETqlsbVlkeQHws6F0kEHuv/ImypXA8ZUtvR04DvjVkDrJIPfb2hgaPL2ylX8Engv8YWgdZZD7q7xX933g8ZUt/G18a/9piJ3lrEU/PTrmfWtDfEMsUw8yxBjkXjoauAZ4TGXjtseY+PYR1/1zxL9venXQIPfL0yKYj6hs1TeBF0YJ5yijgry65Y4zyP3xnBgT11awXRLzxHcOoXNGMcj9UDZ+uWqMzVrK8vRrgLuzd0wtgzx7ZauBr43xv/ayPP0WYH/mThmXQZ6tsrvPhWM8h7L3xHuzdsZKGOTZeR/w8cpPLxVspwMfy9gRXXBBZPrmIpBvr/zkUsH2iiig1xIM8nSVCrbPj7EFV5mReBHwgywdMCkGeXpKBdulEcwaZXejrcDPB9A3K2aQp6NMq30dOLby024Fngf8uvUbnxaDPHllgePbwFMrP+km4PlDrGBbCYM8WUcC3xmj+OfGCPEtrd7wrDj9NjmPBX4yRoivB7YY4gNjkCfjCVHBdlTlT/9RFMT/tbUb7QuD3L1SwbYjCuNrXBmzE39P1AdTZ5C7dVzswVZ7wlJZnn4psG8KbRtVYDQ/hTZMjEHuzilRwVZboF6Wp18P3DOl9o36xu/iuLWZMcjdOD0WO2q3ryp1Fu+wgq07Tr+t3EJsAF6rVLx9ouH77SWDvDJnxT5sNe6JocRFjd5rrxnkA1Mq2M6NHTFrlPflTgW+0dh9NsMgj6+Mg78QexPXKNtXvTjmijUhBnk8h8UB5CdW/ld3xFvO1/flBrIyyPXWRgVb7ZnUZan5BOA3fWh8dga5zhFR/PPkyutvisWRm2fd8KEwyKMdGftN1J6ef2OEuOmTRFvjgsjySgXbtWOE+DrgmYZ4+gzy0o6JYD6y8vqr45u4ZvsqdcwgP7BNUcFWu33VZcBJbl81Owb5/22NMXHtAYyfi9f1p1HBpiUY5P92akyx1VawlROW3jDFCraVSL1PnEH+jzPjwJnaCrZSY/HOhirYRk0F3jaldkyEQb7Ptjj6q/YAxjcCH5xGwzr0Q2D3Ej9uf/wSN2voQS7FP2cDH668vmxfdRpw/oTbNQmLMXTa+z8/e3/URu9q8J7+bcgLImX7qk/GkKJGCcLLYo+KVu2IOfFy6OTjYjhxceshZsBBno+64JdXXr83ptd2TLhd03DrGEcAN2OIQS4VbJfHRig17ojin52zbbaWM7Qgr42hwabK62+Jsz1+N+F2aYWGFOQjYqHjmMrrfx8hHuzZdS0ZyqzFo6JuojbEO+Nb2xA3YghB3hAVbLUHMF4T27+OOoBRPZI9yE+JYNYewHhV/BFoBVtjMgd5S6xm1VawfSleErWCrUFZg3xSfLvWVrCdHwcwWsHWqIxBfnXME9dWsH0oaidaqGDTErIF+c2x5FpbwVaq19414TZpCjIF+T2x+0+Ne6OO+JzZNlldybAgMheBXKi8/q4Yfnx1wu3SFLUe5FLBdkFsDlhjMWYmvjfbZqtrrQf5s8DrKq/dG3PE1024TZqBloN87Bghvi1e1fcAxqRa/mNva+V1N0fdhCFOrOUg10yxlQ0EN3uKaH4tB3nUWPcXsUxtBdsAtBzkK5bZd7gcEXa8FWzD0XKQ745XkC6+X43EnXEwzVYr2IZlbmH9mlEbjMw10COlruJhwJ8t/EmpHMC5Z7kby/Kq06Kbag/b0DdoURIGWSkYZKVgkJWCQVYKBlkpGGSlYJCVgkFWCgZZKRhkpWCQlYJBVgoGWSkYZKVgkJWCQVYKBlkpGGSlYJCVgkFWCgZZKRhkpWCQlYJBVgoGWSkYZKVgkJWCQVYKBlkpGGSlYJCVgkFWCgZZKRhkpWCQlYJBVgoGWSkYZKVQc87eOh+1ZmztqI+vCfKyJ05KfeDQQikYZKVgkJXCKk/TVwL7SpC3+yTVuO0lyNuARZ+kGlWyu60EeRewEbjaYYYaUrJaMrsR2PUvQIAPGzIFwSAAAAAASUVORK5CYII="/></svg>');
    mask-repeat: no-repeat;
    mask-position: center center;
    mask-size: contain
}

.customBlockText b,
.customBlockText em,
.customBlockText strong {
    font-weight: bold
}

.customBlockText em {
    font-style: italic
}

.customBlockText sup,
.customBlockText sub {
    font-size: 80%
}

.customBlockText sup {
    vertical-align: super
}

.customBlockText sub {
    vertical-align: sub
}

.customBlockText .has-inline-color {
    background: linear-gradient(#fff 60%, transparent 60%)
}

.customBlockText blockquote {
    width: 100%;
    line-height: 2;
    padding: 40px;
    font-size: 16px;
    letter-spacing: .02em;
    color: #202020;
    background-color: #f5f5f5;
    display: block;
    position: relative;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText blockquote {
        padding: 5.2083333333vw;
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText blockquote {
        padding: 10.4166666667vw;
        font-size: 4.1666666667vw
    }
}

.customBlockText blockquote * {
    color: inherit
}

.customBlockText blockquote:before,
.customBlockText blockquote:after {
    width: 16px;
    height: 16px;
    content: "";
    display: block;
    background-color: #000919;
    mask-repeat: no-repeat;
    mask-position: center center;
    mask-size: 100% auto;
    position: absolute;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    z-index: 1
}

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

    .customBlockText blockquote:before,
    .customBlockText blockquote:after {
        width: 2.734375vw;
        height: 2.0833333333vw
    }
}

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

    .customBlockText blockquote:before,
    .customBlockText blockquote:after {
        width: 5.46875vw;
        height: 4.1666666667vw
    }
}

.customBlockText blockquote:before {
    mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24" height="18" viewBox="0 0 24 18"><path d="M13,11.7C13,6.6,16.9,1.2,23,0l1,2.1c-2.2,0.8-4.2,3.7-4.4,5.7C22.1,8.3,24,10.4,24,13c0,3.2-2.6,5-5.2,5C15.8,18,13,15.7,13,11.7z M0,11.7C0,6.6,3.9,1.2,10,0l1,2.1C8.8,3,6.8,5.9,6.6,7.9C9.1,8.3,11,10.4,11,13c0,3.2-2.6,5-5.2,5C2.8,18,0,15.7,0,11.7z"/></svg>');
    top: 13px;
    left: 13px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText blockquote:before {
        top: 1.6927083333vw;
        left: 1.6927083333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText blockquote:before {
        top: 3.3854166667vw;
        left: 3.3854166667vw
    }
}

.customBlockText blockquote:after {
    mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24" height="18" viewBox="0 0 24 18"><path d="M5.2,18C2.6,18,0,16.2,0,13c0-2.6,1.9-4.7,4.4-5.2C4.2,5.8,2.2,2.9,0,2.1L1,0c6.1,1.2,10,6.6,10,11.7C11,15.7,8.2,18,5.2,18z M18.2,18c-2.6,0-5.2-1.8-5.2-5c0-2.6,1.9-4.7,4.4-5.1c-0.2-2-2.2-4.9-4.4-5.8L14,0c6.1,1.2,10,6.6,10,11.7C24,15.7,21.2,18,18.2,18z"/></svg>');
    right: 20px;
    bottom: 20px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText blockquote:after {
        right: 2.6041666667vw;
        bottom: 2.6041666667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText blockquote:after {
        right: 5.2083333333vw;
        bottom: 5.2083333333vw
    }
}

.customBlockText blockquote>* {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText blockquote>* {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText blockquote>* {
        margin-top: 4.1666666667vw
    }
}

.customBlockText blockquote>*:first-child {
    margin-top: 0
}

.customBlockText blockquote p {
    line-height: 2;
    position: relative;
    z-index: 2
}

.customBlockText blockquote cite,
.customBlockText blockquote .wp-block-quote__citation {
    width: 100%;
    line-height: 2;
    font-size: 14px;
    letter-spacing: .02em;
    text-align: right;
    display: block;
    box-sizing: border-box
}

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

    .customBlockText blockquote cite,
    .customBlockText blockquote .wp-block-quote__citation {
        line-height: 1.8;
        font-size: 1.8229166667vw
    }
}

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

    .customBlockText blockquote cite,
    .customBlockText blockquote .wp-block-quote__citation {
        line-height: 1.8;
        font-size: 3.6458333333vw
    }
}

.customBlockText>ul {
    line-height: 2;
    padding-left: 1.2em;
    list-style: disc;
    font-size: 16px;
    letter-spacing: .02em
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText>ul {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText>ul {
        font-size: 4.1666666667vw
    }
}

.customBlockText>ul>li {
    list-style: disc
}

.customBlockText>ol {
    line-height: 2;
    padding-left: 1.2em;
    list-style: decimal;
    font-size: 16px;
    letter-spacing: .02em
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText>ol {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText>ol {
        font-size: 4.1666666667vw
    }
}

.customBlockText>ol>li {
    list-style: decimal
}

.customBlockText>li {
    line-height: 2;
    margin-top: .5em;
    font-size: inherit;
    letter-spacing: .02em
}

.customBlockText>li:first-child {
    margin-top: 0
}

.customBlockText>li>li {
    margin-top: 0
}

.customBlockText pre.wp-block-code {
    width: 100%;
    padding: 30px;
    border: 1px solid #ddd;
    background-color: #f8f8f8;
    border-radius: 6px;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText pre.wp-block-code {
        padding: 3.90625vw;
        border-radius: .78125vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText pre.wp-block-code {
        padding: 7.8125vw;
        border-radius: 1.5625vw
    }
}

.customBlockText pre.wp-block-code code {
    line-height: 2;
    font-size: 16px;
    color: #333;
    letter-spacing: .02em
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText pre.wp-block-code code {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText pre.wp-block-code code {
        font-size: 4.1666666667vw
    }
}

.customBlockText .wp-admin .wp-block[data-align=left] .wp-block-table {
    width: auto;
    margin-right: auto;
    margin-left: 0;
    float: none
}

.customBlockText .wp-admin .wp-block[data-align=left] table {
    margin-right: auto;
    margin-left: 0
}

.customBlockText .wp-admin .wp-block[data-align=center] .wp-block-table {
    width: auto;
    margin-right: auto;
    margin-left: auto;
    float: none
}

.customBlockText .wp-admin .wp-block[data-align=center] table {
    margin-right: auto;
    margin-left: auto
}

.customBlockText .wp-admin .wp-block[data-align=right] .wp-block-table {
    width: auto;
    margin-right: 0;
    margin-left: auto;
    float: none
}

.customBlockText .wp-admin .wp-block[data-align=right] table {
    margin-right: 0;
    margin-left: auto
}

.customBlockText .wp-block-table {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    border-bottom: none;
    display: block;
    overflow: auto;
    clear: both;
    box-sizing: border-box
}

.customBlockText .wp-block-table .alignleft {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: auto;
    float: none
}

.customBlockText .wp-block-table .aligncenter {
    margin: 0 auto;
    float: none
}

.customBlockText .wp-block-table .alignright {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: auto;
    float: none
}

.customBlockText .wp-block-table>* {
    margin-top: 6px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .wp-block-table>* {
        margin-top: .78125vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .wp-block-table>* {
        margin-top: 1.5625vw
    }
}

.customBlockText .wp-block-table>*:first-child {
    margin-top: 0
}

.customBlockText .wp-block-table table {
    font-size: 16px;
    letter-spacing: .02em;
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px solid #ccc
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .wp-block-table table {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .wp-block-table table {
        font-size: 4.1666666667vw
    }
}

.customBlockText .wp-block-table table th {
    line-height: 1.8;
    padding: 1em;
    font-size: inherit;
    letter-spacing: .02em;
    border: 1px solid #ccc;
    box-sizing: border-box
}

.customBlockText .wp-block-table table td {
    line-height: 1.8;
    padding: 1em;
    font-size: inherit;
    letter-spacing: .02em;
    border: 1px solid #ccc;
    box-sizing: border-box
}

.customBlockText .wp-block-table thead th,
.customBlockText .wp-block-table thead td {
    background-color: #eee
}

.customBlockText .wp-block-table tfoot th,
.customBlockText .wp-block-table tfoot td {
    background-color: #eee
}

.customBlockText .wp-block-table figcaption {
    width: 100%;
    line-height: 1.8;
    font-size: 14px;
    text-align: right;
    color: #666;
    letter-spacing: .02em;
    display: block;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .wp-block-table figcaption {
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .wp-block-table figcaption {
        font-size: 3.6458333333vw
    }
}

.customBlockText .wp-admin .wp-block[data-align=left] .wp-block-image {
    width: auto;
    margin-right: auto;
    margin-left: 0;
    float: none
}

.customBlockText .wp-admin .wp-block[data-align=center] .wp-block-image {
    width: auto;
    margin-right: auto;
    margin-left: auto;
    float: none
}

.customBlockText .wp-admin .wp-block[data-align=right] .wp-block-image {
    width: auto;
    margin-right: 0;
    margin-left: auto;
    float: none
}

.customBlockText .wp-block-image {
    width: 100%;
    padding: 0;
    margin-right: auto;
    margin-bottom: 0;
    margin-left: auto;
    clear: both;
    box-sizing: border-box
}

.customBlockText .wp-block-image.is-style-rounded img {
    border-radius: 10px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .wp-block-image.is-style-rounded img {
        border-radius: 1.3020833333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .wp-block-image.is-style-rounded img {
        border-radius: 2.6041666667vw
    }
}

.customBlockText .wp-block-image .alignleft {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: auto;
    float: none
}

.customBlockText .wp-block-image .aligncenter {
    margin: 0 auto;
    float: none
}

.customBlockText .wp-block-image .alignright {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: auto;
    float: none
}

.customBlockText .wp-block-image>img {
    max-width: 100%
}

.customBlockText .wp-block-image figcaption {
    width: 100%;
    line-height: 1.8;
    padding: 0;
    margin: 0;
    margin-top: 6px;
    text-align: center;
    font-size: 14px;
    color: #666;
    letter-spacing: .02em;
    display: block;
    box-sizing: border-box
}

.customBlockText .wp-block-image figcaption:first-child {
    margin-top: 0
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .wp-block-image figcaption {
        margin-top: .78125vw;
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .wp-block-image figcaption {
        margin-top: 1.5625vw;
        font-size: 3.6458333333vw
    }
}

.customBlockText iframe,
.customBlockText video {
    max-width: 100% !important
}

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

    .customBlockText iframe,
    .customBlockText video {
        width: 100% !important;
        height: 56.25vw !important
    }
}

.customBlockText .wp-block-video figcaption {
    width: 100%;
    line-height: 1.8;
    padding: 0;
    margin: 0;
    margin-top: 6px;
    text-align: center;
    font-size: 14px;
    color: #666;
    letter-spacing: .02em;
    display: block;
    box-sizing: border-box
}

.customBlockText .wp-block-video figcaption:first-child {
    margin-top: 0
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .wp-block-video figcaption {
        margin-top: .78125vw;
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .wp-block-video figcaption {
        margin-top: 1.5625vw;
        font-size: 3.6458333333vw
    }
}

.customBlockText hr.wp-block-separator {
    width: 100%;
    height: 2px;
    margin-right: auto;
    margin-left: auto;
    border: 0;
    display: block;
    box-sizing: border-box
}

.customBlockText hr.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
    max-width: 100px
}

.customBlockText hr.wp-block-separator.is-style-dots {
    width: 100%;
    max-width: none;
    height: 40px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText hr.wp-block-separator.is-style-dots {
        height: 5.2083333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText hr.wp-block-separator.is-style-dots {
        height: 10.4166666667vw
    }
}

.customBlockText hr.wp-block-separator.is-style-dots:before {
    content: "···";
    font-size: 40px;
    letter-spacing: 1em;
    padding-left: 1em;
    font-family: serif
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText hr.wp-block-separator.is-style-dots:before {
        font-size: 5.2083333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText hr.wp-block-separator.is-style-dots:before {
        font-size: 10.4166666667vw
    }
}

.customBlockText hr.wp-block-separator:not(.has-background) {
    background-color: #ccc
}

.customBlockText hr.wp-block-separator:not(.has-background).is-style-dots:before {
    color: #ccc
}

.customBlockText .textArea .text {
    line-height: 2;
    font-size: 16px;
    letter-spacing: .02em
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .textArea .text {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .textArea .text {
        font-size: 4.1666666667vw
    }
}

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

.customBlockText .blockIntroTextArea+.blockIntroTextArea {
    margin-top: 16px !important
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockIntroTextArea+.blockIntroTextArea {
        margin-top: 2.0833333333vw !important
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIntroTextArea+.blockIntroTextArea {
        margin-top: 4.1666666667vw !important
    }
}

.customBlockText .blockIntroTextArea .blockIntroText>* {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockIntroTextArea .blockIntroText>* {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIntroTextArea .blockIntroText>* {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockIntroTextArea .blockIntroText>*:first-child {
    margin-top: 0
}

.customBlockText .blockIntroTextArea .blockIntroText p {
    line-height: 2;
    font-size: 18px;
    letter-spacing: .02em
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockIntroTextArea .blockIntroText p {
        font-size: 2.34375vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIntroTextArea .blockIntroText p {
        font-size: 4.6875vw
    }
}

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

.customBlockText .blockProfileArea+.blockProfileArea {
    margin-top: 16px !important
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockProfileArea+.blockProfileArea {
        margin-top: 2.0833333333vw !important
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockProfileArea+.blockProfileArea {
        margin-top: 4.1666666667vw !important
    }
}

.customBlockText .blockProfileArea .blockProfileList>* {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockProfileArea .blockProfileList>* {
        margin-top: sizetab(16)
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockProfileArea .blockProfileList>* {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockProfileArea .blockProfileList>*:first-child {
    margin-top: 0
}

.customBlockText .blockProfileArea .blockProfile {
    width: 100%;
    padding: 30px;
    background-color: #f5f5f5;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockProfileArea .blockProfile {
        padding: 3.90625vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockProfileArea .blockProfile {
        width: 100vw;
        padding: 7.8125vw 5.2083333333vw;
        margin-left: -5vw
    }
}

.customBlockText .blockProfileArea .blockProfile .blockProfileInner {
    width: 100%;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    box-sizing: border-box
}

.customBlockText .blockProfileArea .blockProfile .photo {
    width: 180px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockProfileArea .blockProfile .photo {
        width: 15.625vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockProfileArea .blockProfile .photo {
        width: 26.0416666667vw
    }
}

.customBlockText .blockProfileArea .blockProfile .photo>.img {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockProfileArea .blockProfile .photo>.img>img {
    width: 100%;
    max-width: none;
    margin-right: auto;
    margin-left: auto;
    display: block
}

.customBlockText .blockProfileArea .blockProfile .detail {
    width: calc(100% - 200px);
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockProfileArea .blockProfile .detail {
        width: calc(100% - (18.2291666667vw))
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockProfileArea .blockProfile .detail {
        width: calc(100% - (31.25vw))
    }
}

.customBlockText .blockProfileArea .blockProfile .detail>* {
    margin-top: 12px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockProfileArea .blockProfile .detail>* {
        margin-top: 1.5625vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockProfileArea .blockProfile .detail>* {
        margin-top: 3.125vw
    }
}

.customBlockText .blockProfileArea .blockProfile .detail>*:first-child {
    margin-top: 0
}

.customBlockText .blockProfileArea .blockProfile .detail .titleArea .profileTitle {
    line-height: 1;
    font-size: 16px;
    font-weight: bold
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockProfileArea .blockProfile .detail .titleArea .profileTitle {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockProfileArea .blockProfile .detail .titleArea .profileTitle {
        font-size: 4.1666666667vw
    }
}

.customBlockText .blockProfileArea .blockProfile .detail .nameArea .katagaki {
    margin-bottom: 12px;
    font-size: 12px
}

.customBlockText .blockProfileArea .blockProfile .detail .nameArea .name {
    font-weight: 700;
    font-size: 18px;
    white-space: nowrap
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockProfileArea .blockProfile .textArea {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockProfileArea .blockProfile .textArea .profileText {
    line-height: 1.6;
    font-size: 14px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockProfileArea .blockProfile .textArea .profileText {
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockProfileArea .blockProfile .textArea .profileText {
        line-height: 1.8;
        font-size: 3.6458333333vw
    }
}

.customBlockText .blockProfileArea .blockProfile .textArea .profileText * {
    line-height: inherit;
    font-size: inherit
}

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

.customBlockText .blockIndexArea+.blockIndexArea {
    margin-top: 16px !important
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockIndexArea+.blockIndexArea {
        margin-top: 2.0833333333vw !important
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIndexArea+.blockIndexArea {
        margin-top: 4.1666666667vw !important
    }
}

.customBlockText .blockIndexArea .blockIndexWrap {
    width: 100%;
    background-color: #fff;
    box-sizing: border-box;
    border-radius: 8px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockIndexArea .blockIndexWrap {
        padding: 2.6041666667vw
    }
}

.customBlockText .blockIndexArea .blockIndexWrap>dl {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dt {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn {
    width: 100%;
    display: block;
    text-decoration: none;
    box-sizing: border-box;
    position: relative;
    color: #fff;
    padding: 20px;
    background-color: #000919;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn:visited,
.customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn:focus,
.customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn:active {
    color: #fff
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn {
        padding: 5.2083333333vw
    }
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn.active:after {
    transform: translateY(-50%) rotate(180deg)
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn:before {
    content: "";
    display: block;
    width: 32px;
    height: 32px;
    transform: translateY(-50%) rotate(0deg);
    position: absolute;
    background-color: #fff;
    top: 50%;
    right: 30px;
    z-index: 1;
    border-radius: 50px
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn:after {
    width: 14px;
    height: 14px;
    content: "";
    display: block;
    mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="6.444" viewBox="0 0 12 6.444"><path d="M.281,6.625A.388.388,0,0,1,.4,6.341a.388.388,0,0,1,.284-.119.388.388,0,0,1,.284.119l5.354,5.354,5.271-5.271a.4.4,0,1,1,.569.569L6.606,12.547a.4.4,0,0,1-.569,0L.4,6.921a.277.277,0,0,1-.041-.053.406.406,0,0,1-.03-.059L.3,6.749.287,6.69Z" transform="translate(-0.281 -6.222)" /></svg>');
    mask-repeat: no-repeat;
    mask-position: center center;
    mask-size: contain;
    transition: transform .3s ease 0s;
    transform: translateY(-50%) rotate(0deg);
    position: absolute;
    background-color: #000919;
    top: 50%;
    right: 38px;
    z-index: 2
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn:after {
        width: 4.1666666667vw;
        height: 4.1666666667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn:after {
        width: 7.2916666667vw;
        height: 7.2916666667vw
    }
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn>span {
    line-height: 1;
    margin-left: 1.5em;
    font-weight: bold;
    display: inline-block;
    vertical-align: middle
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn>span:first-child {
    margin-left: 0
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn .title {
    font-size: 20px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn .title {
        font-size: 3.125vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn .title {
        font-size: 5.2083333333vw
    }
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn .label {
    background-color: #f5f5f5;
    font-size: 13px;
    padding: 0 10px;
    line-height: 2
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn .label {
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dt>.blockIndexAcrBtn .label {
        font-size: 3.6458333333vw
    }
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd {
    width: 100%;
    padding: 30px;
    box-sizing: border-box;
    background-color: #f3f3f3;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    overflow: hidden
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dd {
        padding: 5.2083333333vw
    }
}

.customBlockText .wp-admin .blockIndexArea .blockIndexWrap>dl>dd {
    display: block
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndexList {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndexList>* {
    margin-top: 20px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndexList>* {
        margin-top: 3.90625vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndexList>* {
        margin-top: 5.2083333333vw
    }
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndexList>*:first-child {
    margin-top: 0
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex>* {
    margin-top: 20px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex>* {
        margin-top: 2.6041666667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex>* {
        margin-top: 3.90625vw
    }
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex>*:first-child {
    margin-top: 0
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .titleArea .blockIndexTitle {
    width: 100%;
    line-height: 1.3;
    font-size: 16px;
    font-weight: 700;
    display: block;
    color: #0e3660;
    text-decoration: none;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .titleArea .blockIndexTitle {
        font-size: 2.34375vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .titleArea .blockIndexTitle {
        font-size: 3.90625vw
    }
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .titleArea a.blockIndexTitle {
    text-decoration: none;
    color: #0E3660
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .titleArea a.blockIndexTitle:visited,
.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .titleArea a.blockIndexTitle:focus,
.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .titleArea a.blockIndexTitle:active {
    color: #0E3660
}

@media only screen and (min-width: 1080px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .titleArea a.blockIndexTitle:hover {
        text-decoration: underline
    }
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList.noIndent>ul>li {
    padding-left: 0
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList>ul {
    width: 100%;
    padding-left: 0;
    list-style: none;
    box-sizing: border-box
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList>ul>li {
    color: #0e3660;
    line-height: 1.3;
    padding-left: 2em;
    margin-top: 16px;
    list-style: none;
    font-size: 15px;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList>ul>li {
        margin-top: 2.6041666667vw;
        font-size: 2.34375vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList>ul>li {
        margin-top: 2.6041666667vw;
        font-size: 3.90625vw
    }
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList>ul>li:first-child {
    margin-top: 0
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList>ul>li>a,
.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList>ul>li>span {
    line-height: inherit;
    font-size: inherit;
    color: #0E3660
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList>ul>li>a:visited,
.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList>ul>li>a:focus,
.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList>ul>li>a:active,
.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList>ul>li>span:visited,
.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList>ul>li>span:focus,
.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList>ul>li>span:active {
    color: #0E3660
}

.customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList>ul>li>a {
    text-decoration: none
}

@media only screen and (min-width: 1080px) {
    .customBlockText .blockIndexArea .blockIndexWrap>dl>dd .blockIndex .indexLinkList>ul>li>a:hover {
        text-decoration: underline
    }
}

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

.customBlockText .blockRelatedArea+.blockRelatedArea {
    margin-top: 16px !important
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockRelatedArea+.blockRelatedArea {
        margin-top: 2.0833333333vw !important
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockRelatedArea+.blockRelatedArea {
        margin-top: 4.1666666667vw !important
    }
}

.customBlockText .blockRelatedArea>* {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockRelatedArea>* {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockRelatedArea>* {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockRelatedArea>*:first-child {
    margin-top: 0
}

.customBlockText .blockRelatedArea .blockRelatedList {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockRelatedArea .blockRelatedList>* {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockRelatedArea .blockRelatedList>* {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockRelatedArea .blockRelatedList>* {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockRelatedArea .blockRelatedList>*:first-child {
    margin-top: 0
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl {
    width: 100%
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl {
        flex-wrap: wrap
    }
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dt {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dt .titleLabel {
    border-radius: 10px 10px 0 0;
    width: 100%;
    line-height: 1;
    letter-spacing: .78px;
    padding: 10px;
    font-weight: 700;
    font-size: 16px;
    color: #fff;
    display: block;
    background-color: #000919;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dt .titleLabel {
        font-size: 1.5625vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dt .titleLabel {
        width: auto;
        padding: .8em 2em;
        font-size: 3.125vw;
        display: inline-block
    }
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd {
    width: 100%;
    border: 2px solid #000919;
    padding: min(2.196193265vw, 30px);
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd {
        width: 100%
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd {
        width: 100%;
        padding: 5.2083333333vw
    }
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul {
    width: 100%;
    padding-left: 0;
    list-style: none;
    box-sizing: border-box
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li {
    line-height: 1.6;
    margin-top: 20px;
    list-style: none;
    font-size: 16px;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li {
        margin-top: 2.6041666667vw;
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li {
        margin-top: 3.90625vw;
        font-size: 4.1666666667vw
    }
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li:first-child {
    margin-top: 0
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a,
.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>span {
    line-height: inherit;
    font-size: inherit;
    text-decoration: none
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap
}

@media only screen and (min-width: 1080px) {
    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a:hover {
        text-decoration: none
    }

    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a:hover .photo:before {
        width: 100%;
        height: 100%;
        border-top-color: #000;
        border-right-color: #000;
        transition: width .25s ease-out, height .25s ease-out .25s
    }

    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a:hover .photo:after {
        width: 100%;
        height: 100%;
        border-bottom-color: #000;
        border-left-color: #000;
        transition: border-color 0s ease-out .5s, width .25s ease-out .5s, height .25s ease-out .75s
    }

    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a:hover .photo>img {
        transform: scale(1.06)
    }
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a .photo {
    width: min(14.6412884334vw, 200px);
    height: 106px;
    margin-right: min(2.196193265vw, 30px);
    border-radius: 10px;
    overflow: hidden;
    position: relative
}

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

    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a .photo:before,
    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a .photo:after {
        width: 0;
        height: 0;
        content: "";
        display: block;
        box-sizing: border-box;
        border: 3px solid rgba(0, 0, 0, 0);
        position: absolute;
        z-index: 2
    }

    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a .photo:before {
        top: 0;
        left: 0
    }

    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a .photo:after {
        bottom: 0;
        right: 0
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a .photo {
        width: 18.2291666667vw;
        margin-right: 1.3020833333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a .photo {
        width: 23.4375vw;
        height: 18.2291666667vw;
        margin-right: 2.6041666667vw
    }
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a .photo>img {
    height: 100%;
    object-fit: cover;
    transition-property: all;
    transition-duration: 0.3s;
    transition-timing-function: ease;
    transition-delay: 0s
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a .detail {
    width: min(32.9428989751vw, 450px)
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a .detail {
        width: 55.9895833333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a .detail {
        width: 52.0833333333vw
    }
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a .detail .title {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.6;
    color: #000919
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a .detail .title {
        font-size: 3.90625vw
    }
}

.customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a .detail .date {
    font-size: 14px;
    color: #000919;
    font-family: Outfit
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockRelatedArea .blockRelatedList .blockRelated>dl>dd .linkList>ul>li>a .detail .date {
        font-size: 3.3854166667vw
    }
}

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

.customBlockText .blockTitleListArea+.blockTitleListArea {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockTitleListArea+.blockTitleListArea {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockTitleListArea+.blockTitleListArea {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockTitleListArea .blockTitleList {
    width: 100%;
    padding: 40px 30px;
    border: 1px solid #eee;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockTitleListArea .blockTitleList {
        padding: 3.90625vw 2.6041666667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockTitleListArea .blockTitleList {
        padding: 7.8125vw 5.2083333333vw
    }
}

.customBlockText .blockTitleListArea .blockTitleList+.blockTitleList {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockTitleListArea .blockTitleList+.blockTitleList {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockTitleListArea .blockTitleList+.blockTitleList {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockTitleListArea .blockTitleList>dt {
    width: 100%;
    line-height: 1.6;
    font-size: 18px;
    font-weight: bold;
    color: #6a6a6a;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockTitleListArea .blockTitleList>dt {
        font-size: 2.34375vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockTitleListArea .blockTitleList>dt {
        font-size: 4.6875vw
    }
}

.customBlockText .blockTitleListArea .blockTitleList>dd {
    width: 100%;
    margin-top: 20px;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockTitleListArea .blockTitleList>dd {
        margin-top: 2.6041666667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockTitleListArea .blockTitleList>dd {
        margin-top: 5.2083333333vw
    }
}

.customBlockText .blockTitleListArea .blockTitleList>dd .linkList {
    width: 100%;
    padding-left: 2em;
    box-sizing: border-box
}

.customBlockText .blockTitleListArea .blockTitleList>dd .linkList>li {
    line-height: 1.6;
    margin-top: 10px;
    font-size: 16px;
    color: #6a6a6a;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockTitleListArea .blockTitleList>dd .linkList>li {
        margin-top: 1.3020833333vw;
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockTitleListArea .blockTitleList>dd .linkList>li {
        margin-top: 1.5625vw;
        font-size: 4.1666666667vw
    }
}

.customBlockText .blockTitleListArea .blockTitleList>dd .linkList>li:first-child {
    margin-top: 0
}

.customBlockText .blockTitleListArea .blockTitleList>dd .linkList>li>a,
.customBlockText .blockTitleListArea .blockTitleList>dd .linkList>li>span {
    line-height: inherit;
    font-size: inherit;
    color: inherit
}

.customBlockText .blockTitleListArea .blockTitleList>dd .linkList>li>a {
    text-decoration: underline
}

@media only screen and (min-width: 1080px) {
    .customBlockText .blockTitleListArea .blockTitleList>dd .linkList>li>a:hover {
        text-decoration: none
    }
}

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

.customBlockText .blockImgCaptionArea>* {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockImgCaptionArea>* {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockImgCaptionArea>* {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockImgCaptionArea>*:first-child {
    margin-top: 0
}

.customBlockText .blockImgCaptionArea .blockImgCaption {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockImgCaptionArea .blockImgCaption+.blockImgCaption {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockImgCaptionArea .blockImgCaption+.blockImgCaption {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockImgCaptionArea .blockImgCaption+.blockImgCaption {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockImgCaptionArea .blockImgCaption+.blockImgCaption:first-child {
    margin-top: 0
}

.customBlockText .blockImgCaptionArea .blockImgCaption>* {
    margin-top: 8px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockImgCaptionArea .blockImgCaption>* {
        margin-top: 1.0416666667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockImgCaptionArea .blockImgCaption>* {
        margin-top: 2.0833333333vw
    }
}

.customBlockText .blockImgCaptionArea .blockImgCaption>*:first-child {
    margin-top: 0
}

.customBlockText .blockImgCaptionArea .blockImgCaption .photo {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockImgCaptionArea .blockImgCaption .photo .img {
    box-sizing: border-box
}

.customBlockText .blockImgCaptionArea .blockImgCaption .photo .img>img {
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    display: inline-block
}

.customBlockText .blockImgCaptionArea .blockImgCaption .photo.img_left .img {
    max-width: 80%;
    margin-right: auto;
    margin-left: 0;
    text-align: left
}

.customBlockText .blockImgCaptionArea .blockImgCaption .photo.img_center .img {
    max-width: 80%;
    margin-right: auto;
    margin-left: auto;
    text-align: center
}

.customBlockText .blockImgCaptionArea .blockImgCaption .photo.img_right .img {
    max-width: 80%;
    margin-right: 0;
    margin-left: auto;
    text-align: right
}

.customBlockText .blockImgCaptionArea .blockImgCaption .photo.img_full .img {
    width: 100%;
    max-width: none;
    margin-right: auto;
    margin-left: auto
}

.customBlockText .blockImgCaptionArea .blockImgCaption .photo.img_full .img>img {
    width: 100%;
    max-width: none;
    margin-right: auto;
    margin-left: auto;
    display: block
}

.customBlockText .blockImgCaptionArea .blockImgCaption .detail {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockImgCaptionArea .blockImgCaption .detail .caption {
    width: 100%;
    line-height: 1.8;
    font-size: 14px;
    letter-spacing: .02em;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockImgCaptionArea .blockImgCaption .detail .caption {
        line-height: 1.8;
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockImgCaptionArea .blockImgCaption .detail .caption {
        line-height: 1.8;
        font-size: 3.6458333333vw
    }
}

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

.customBlockText .blockInfoArea+.blockInfoArea {
    margin-top: 16px !important
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInfoArea+.blockInfoArea {
        margin-top: 2.0833333333vw !important
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInfoArea+.blockInfoArea {
        margin-top: 4.1666666667vw !important
    }
}

.customBlockText .blockInfoArea .blockInfo {
    width: 100%;
    padding: 40px;
    background-color: #eee;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInfoArea .blockInfo {
        padding: 3.90625vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInfoArea .blockInfo {
        width: 100vw;
        padding: 7.8125vw 5.2083333333vw;
        margin-left: -5vw;
        flex-wrap: wrap
    }
}

.customBlockText .blockInfoArea .blockInfo+.blockInfo {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInfoArea .blockInfo+.blockInfo {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInfoArea .blockInfo+.blockInfo {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockInfoArea .blockInfo+.blockInfo:first-child {
    margin-top: 0
}

.customBlockText .blockInfoArea .blockInfo .photo {
    width: 31.25%;
    box-sizing: border-box
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInfoArea .blockInfo .photo {
        width: 100%
    }
}

.customBlockText .blockInfoArea .blockInfo .photo .img {
    width: 100%;
    box-sizing: border-box
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInfoArea .blockInfo .photo .img {
        width: 50%
    }
}

.customBlockText .blockInfoArea .blockInfo .photo .img>img {
    width: 100%;
    max-width: none;
    margin-right: auto;
    margin-left: auto;
    display: block
}

.customBlockText .blockInfoArea .blockInfo .detail {
    width: 64%;
    box-sizing: border-box
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInfoArea .blockInfo .detail {
        width: 100%;
        margin-top: 7.8125vw
    }
}

.customBlockText .blockInfoArea .blockInfo .detail>* {
    margin-top: 4px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInfoArea .blockInfo .detail>* {
        margin-top: .5208333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInfoArea .blockInfo .detail>* {
        margin-top: 1.0416666667vw
    }
}

.customBlockText .blockInfoArea .blockInfo .detail>*:first-child {
    margin-top: 0
}

.customBlockText .blockInfoArea .blockInfo .detail .titleArea>* {
    margin-top: 12px !important
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInfoArea .blockInfo .detail .titleArea>* {
        margin-top: 1.5625vw !important
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInfoArea .blockInfo .detail .titleArea>* {
        margin-top: 3.125vw !important
    }
}

.customBlockText .blockInfoArea .blockInfo .detail .titleArea>*:first-child {
    margin-top: 0 !important
}

.customBlockText .blockInfoArea .blockInfo .detail .titleArea .infoTitle {
    line-height: 1;
    font-size: 16px;
    font-weight: bold
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInfoArea .blockInfo .detail .titleArea .infoTitle {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInfoArea .blockInfo .detail .titleArea .infoTitle {
        font-size: 4.1666666667vw
    }
}

.customBlockText .blockInfoArea .blockInfo .detail .titleArea .name {
    line-height: 1.8;
    font-size: 18px;
    font-weight: bold
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInfoArea .blockInfo .detail .titleArea .name {
        font-size: 2.34375vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInfoArea .blockInfo .detail .titleArea .name {
        font-size: 4.6875vw
    }
}

.customBlockText .blockInfoArea .blockInfo .detail .information>* {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInfoArea .blockInfo .detail .information>* {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInfoArea .blockInfo .detail .information>* {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockInfoArea .blockInfo .detail .information>*:first-child {
    margin-top: 0
}

.customBlockText .blockInfoArea .blockInfo .detail .information .infoList {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockInfoArea .blockInfo .detail .information .infoList>dl {
    width: 100%;
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    box-sizing: border-box
}

.customBlockText .blockInfoArea .blockInfo .detail .information .infoList>dl>dt {
    line-height: 1.8;
    font-size: 14px;
    white-space: nowrap;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInfoArea .blockInfo .detail .information .infoList>dl>dt {
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInfoArea .blockInfo .detail .information .infoList>dl>dt {
        font-size: 3.6458333333vw
    }
}

.customBlockText .blockInfoArea .blockInfo .detail .information .infoList>dl>dd {
    line-height: 1.8;
    font-size: 14px;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInfoArea .blockInfo .detail .information .infoList>dl>dd {
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInfoArea .blockInfo .detail .information .infoList>dl>dd {
        font-size: 3.6458333333vw
    }
}

.customBlockText .blockInfoArea .blockInfo .detail .information .notes {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockInfoArea .blockInfo .detail .information .notes .text {
    line-height: 1.8;
    font-size: 14px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInfoArea .blockInfo .detail .information .notes .text {
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInfoArea .blockInfo .detail .information .notes .text {
        font-size: 3.6458333333vw
    }
}

.customBlockText .blockInfoArea .blockInfo .detail .information .btnArea {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockInfoArea .blockInfo .detail .information .btnArea>a {
    line-height: 1;
    padding: .8em 1em .6em 1em;
    border: 2px solid #000;
    display: inline-block;
    font-size: 14px;
    font-weight: bold;
    text-decoration: none;
    box-sizing: border-box;
    color: #000
}

.customBlockText .blockInfoArea .blockInfo .detail .information .btnArea>a:visited,
.customBlockText .blockInfoArea .blockInfo .detail .information .btnArea>a:focus,
.customBlockText .blockInfoArea .blockInfo .detail .information .btnArea>a:active {
    color: #000
}

@media only screen and (min-width: 1080px) {
    .customBlockText .blockInfoArea .blockInfo .detail .information .btnArea>a {
        transition: background-color .3s ease 0s, color .3s ease 0s
    }

    .customBlockText .blockInfoArea .blockInfo .detail .information .btnArea>a:hover {
        background-color: #000;
        color: #fff
    }

    .customBlockText .blockInfoArea .blockInfo .detail .information .btnArea>a:hover:visited,
    .customBlockText .blockInfoArea .blockInfo .detail .information .btnArea>a:hover:focus,
    .customBlockText .blockInfoArea .blockInfo .detail .information .btnArea>a:hover:active {
        color: #fff
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInfoArea .blockInfo .detail .information .btnArea>a {
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInfoArea .blockInfo .detail .information .btnArea>a {
        font-size: 3.6458333333vw
    }
}

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

.customBlockText .blockQuateArea+.blockQuateArea {
    margin-top: 16px !important
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockQuateArea+.blockQuateArea {
        margin-top: 2.0833333333vw !important
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockQuateArea+.blockQuateArea {
        margin-top: 4.1666666667vw !important
    }
}

.customBlockText .blockQuateArea .blockQuate {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockQuateArea .blockQuate>* {
    margin-top: 4px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockQuateArea .blockQuate>* {
        margin-top: .5208333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockQuateArea .blockQuate>* {
        margin-top: 1.0416666667vw
    }
}

.customBlockText .blockQuateArea .blockQuate>*:first-child {
    margin-top: 0
}

.customBlockText .blockQuateArea .blockQuate .quateCopy .quateCopyInner {
    line-height: 1.6;
    font-size: 14px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockQuateArea .blockQuate .quateCopy .quateCopyInner {
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockQuateArea .blockQuate .quateCopy .quateCopyInner {
        font-size: 3.6458333333vw
    }
}

.customBlockText .blockQuateArea .blockQuate .quateCopy .quateCopyInner * {
    font-size: inherit
}

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

.customBlockText .blockInterviewArea+.blockInterviewArea {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInterviewArea+.blockInterviewArea {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInterviewArea+.blockInterviewArea {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockInterviewArea+.blockInterviewArea:first-child {
    margin-top: 0
}

.customBlockText .blockInterviewArea .blockInterview {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockInterviewArea .blockInterview+.blockInterview {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInterviewArea .blockInterview+.blockInterview {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInterviewArea .blockInterview+.blockInterview {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockInterviewArea .blockInterview+.blockInterview:first-child {
    margin-top: 0
}

.customBlockText .blockInterviewArea .blockInterview>* {
    margin-top: 8px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInterviewArea .blockInterview>* {
        margin-top: 1.0416666667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInterviewArea .blockInterview>* {
        margin-top: 2.0833333333vw
    }
}

.customBlockText .blockInterviewArea .blockInterview>*:first-child {
    margin-top: 0
}

.customBlockText .blockInterviewArea .blockInterview .questionText {
    line-height: 2;
    padding-left: 1.5em;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: .02em;
    box-sizing: border-box;
    position: relative
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInterviewArea .blockInterview .questionText {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInterviewArea .blockInterview .questionText {
        font-size: 4.1666666667vw
    }
}

.customBlockText .blockInterviewArea .blockInterview .questionText:before {
    width: .8em;
    height: 2px;
    content: "";
    background-color: #000;
    display: block;
    transform: translateY(-50%);
    position: absolute;
    top: 1em;
    left: 0
}

.customBlockText .blockInterviewArea .blockInterview .questionText+.questionText {
    margin-top: 8px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInterviewArea .blockInterview .questionText+.questionText {
        margin-top: 1.0416666667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInterviewArea .blockInterview .questionText+.questionText {
        margin-top: 2.0833333333vw
    }
}

.customBlockText .blockInterviewArea .blockInterview .questionText+.questionText:first-child {
    margin-top: 0
}

.customBlockText .blockInterviewArea .blockInterview .answerText {
    line-height: 1.8;
    font-size: 14px;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInterviewArea .blockInterview .answerText {
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInterviewArea .blockInterview .answerText {
        font-size: 3.6458333333vw
    }
}

.customBlockText .blockInterviewArea .blockInterview .answerText * {
    line-height: inherit;
    font-size: inherit
}

.customBlockText .blockInterviewArea .blockInterview .answerText+.answerText {
    margin-top: 8px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockInterviewArea .blockInterview .answerText+.answerText {
        margin-top: 1.0416666667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockInterviewArea .blockInterview .answerText+.answerText {
        margin-top: 2.0833333333vw
    }
}

.customBlockText .blockInterviewArea .blockInterview .answerText+.answerText:first-child {
    margin-top: 0
}

.customBlockText .blockInterviewArea .blockInterview .name {
    white-space: nowrap;
    font-weight: bold
}

.customBlockText .blockInterviewArea .blockInterview .answerTextInner {
    width: 100%;
    box-sizing: border-box
}

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

.customBlockText .blockTableRow2Area+.blockTableRow2Area {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockTableRow2Area+.blockTableRow2Area {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockTableRow2Area+.blockTableRow2Area {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockTableRow2Area .blockTableRow2 {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockTableRow2Area .blockTableRow2+.blockTableRow2 {
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockTableRow2Area .blockTableRow2+.blockTableRow2 {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockTableRow2Area .blockTableRow2+.blockTableRow2 {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockTableRow2Area .blockTableRow2>dl {
    width: 100%;
    border-bottom: 1px solid #000;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    box-sizing: border-box
}

.customBlockText .blockTableRow2Area .blockTableRow2>dl:first-child {
    border-top: 1px solid #000
}

.customBlockText .blockTableRow2Area .blockTableRow2>dl.valignT>dt,
.customBlockText .blockTableRow2Area .blockTableRow2>dl.valignT>dd {
    align-items: flex-start
}

.customBlockText .blockTableRow2Area .blockTableRow2>dl.valignM>dt,
.customBlockText .blockTableRow2Area .blockTableRow2>dl.valignM>dd {
    align-items: center
}

.customBlockText .blockTableRow2Area .blockTableRow2>dl.valignB>dt,
.customBlockText .blockTableRow2Area .blockTableRow2>dl.valignB>dd {
    align-items: flex-end
}

.customBlockText .blockTableRow2Area .blockTableRow2>dl>dt,
.customBlockText .blockTableRow2Area .blockTableRow2>dl>dd {
    line-height: 1.8;
    padding: 1.5em;
    font-size: 16px;
    letter-spacing: .02em;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    box-sizing: border-box
}

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

    .customBlockText .blockTableRow2Area .blockTableRow2>dl>dt,
    .customBlockText .blockTableRow2Area .blockTableRow2>dl>dd {
        padding-top: 1.2em;
        padding-bottom: 1.2em;
        font-size: 2.0833333333vw
    }
}

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

    .customBlockText .blockTableRow2Area .blockTableRow2>dl>dt,
    .customBlockText .blockTableRow2Area .blockTableRow2>dl>dd {
        padding: 1.2em 1em;
        font-size: 4.1666666667vw
    }
}

.customBlockText .blockTableRow2Area .blockTableRow2>dl>dt>*,
.customBlockText .blockTableRow2Area .blockTableRow2>dl>dd>* {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockTableRow2Area .blockTableRow2>dl>dt *,
.customBlockText .blockTableRow2Area .blockTableRow2>dl>dd * {
    line-height: inherit;
    font-size: inherit;
    text-align: inherit
}

.customBlockText .blockTableRow2Area .blockTableRow2>dl>dt.alignL,
.customBlockText .blockTableRow2Area .blockTableRow2>dl>dd.alignL {
    justify-content: flex-start
}

.customBlockText .blockTableRow2Area .blockTableRow2>dl>dt.alignC,
.customBlockText .blockTableRow2Area .blockTableRow2>dl>dd.alignC {
    justify-content: center
}

.customBlockText .blockTableRow2Area .blockTableRow2>dl>dt.alignR,
.customBlockText .blockTableRow2Area .blockTableRow2>dl>dd.alignR {
    justify-content: flex-end
}

.customBlockText .blockTableRow2Area .blockTableRow2>dl>dt {
    width: 30%;
    font-weight: bold;
    background-color: #eee
}

.customBlockText .blockTableRow2Area .blockTableRow2>dl>dd {
    width: 70%
}

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

.customBlockText .blockBtnArea .btnListBox {
    width: 100%;
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: wrap;
    box-sizing: border-box
}

.customBlockText .blockBtnArea .btnListBox+.btnListBox {
    margin-top: 16px !important
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockBtnArea .btnListBox+.btnListBox {
        margin-top: 2.0833333333vw !important
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockBtnArea .btnListBox+.btnListBox {
        margin-top: 4.1666666667vw !important
    }
}

.customBlockText .blockBtnArea .btnListBox.alignL {
    justify-content: flex-start
}

.customBlockText .blockBtnArea .btnListBox.alignC {
    justify-content: center
}

.customBlockText .blockBtnArea .btnListBox.alignR {
    justify-content: flex-end
}

.customBlockText .blockBtnArea .btnListBox.btnCol1>a {
    width: 100%;
    margin-top: 16px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockBtnArea .btnListBox.btnCol1>a {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockBtnArea .btnListBox.btnCol1>a {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockBtnArea .btnListBox.btnCol1>a:first-child {
    margin-top: 0
}

.customBlockText .blockBtnArea .btnListBox.btnCol2>a {
    width: 49%;
    margin-top: 16px;
    margin-left: 2%
}

.customBlockText .blockBtnArea .btnListBox.btnCol2>a:nth-child(-n+2) {
    margin-top: 0
}

.customBlockText .blockBtnArea .btnListBox.btnCol2>a:nth-child(2n+1) {
    margin-left: 0
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockBtnArea .btnListBox.btnCol2>a {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockBtnArea .btnListBox.btnCol2>a {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockBtnArea .btnListBox.btnCol2_sp1>a {
    width: 49%;
    margin-top: 16px;
    margin-left: 2%
}

.customBlockText .blockBtnArea .btnListBox.btnCol2_sp1>a:nth-child(-n+2) {
    margin-top: 0
}

.customBlockText .blockBtnArea .btnListBox.btnCol2_sp1>a:nth-child(2n+1) {
    margin-left: 0
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockBtnArea .btnListBox.btnCol2_sp1>a {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockBtnArea .btnListBox.btnCol2_sp1>a {
        width: 100%;
        margin-top: 4.1666666667vw;
        margin-left: 0
    }

    .customBlockText .blockBtnArea .btnListBox.btnCol2_sp1>a:nth-child(-n+2) {
        margin-top: 4.1666666667vw
    }

    .customBlockText .blockBtnArea .btnListBox.btnCol2_sp1>a:first-child {
        margin-top: 0
    }
}

.customBlockText .blockBtnArea .btnListBox.btnCol3>a {
    width: 32%;
    margin-top: 16px;
    margin-left: 2%
}

.customBlockText .blockBtnArea .btnListBox.btnCol3>a:nth-child(-n+3) {
    margin-top: 0
}

.customBlockText .blockBtnArea .btnListBox.btnCol3>a:nth-child(3n+1) {
    margin-left: 0
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockBtnArea .btnListBox.btnCol3>a {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockBtnArea .btnListBox.btnCol3>a {
        margin-top: 4.1666666667vw
    }
}

.customBlockText .blockBtnArea .btnListBox.btnCol3_sp2>a {
    width: 32%;
    margin-top: 16px;
    margin-left: 2%
}

.customBlockText .blockBtnArea .btnListBox.btnCol3_sp2>a:nth-child(-n+3) {
    margin-top: 0
}

.customBlockText .blockBtnArea .btnListBox.btnCol3_sp2>a:nth-child(3n+1) {
    margin-left: 0
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockBtnArea .btnListBox.btnCol3_sp2>a {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockBtnArea .btnListBox.btnCol3_sp2>a {
        width: 49%;
        margin-top: 4.1666666667vw;
        margin-left: 2%
    }

    .customBlockText .blockBtnArea .btnListBox.btnCol3_sp2>a:nth-child(-n+3) {
        margin-top: 4.1666666667vw
    }

    .customBlockText .blockBtnArea .btnListBox.btnCol3_sp2>a:nth-child(3n+1) {
        margin-left: 2%
    }

    .customBlockText .blockBtnArea .btnListBox.btnCol3_sp2>a:nth-child(-n+2) {
        margin-top: 0
    }

    .customBlockText .blockBtnArea .btnListBox.btnCol3_sp2>a:nth-child(2n+1) {
        margin-left: 0
    }
}

.customBlockText .blockBtnArea .btnListBox.btnCol3_sp1>a {
    width: 32%;
    margin-top: 16px;
    margin-left: 2%
}

.customBlockText .blockBtnArea .btnListBox.btnCol3_sp1>a:nth-child(-n+3) {
    margin-top: 0
}

.customBlockText .blockBtnArea .btnListBox.btnCol3_sp1>a:nth-child(3n+1) {
    margin-left: 0
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockBtnArea .btnListBox.btnCol3_sp1>a {
        margin-top: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockBtnArea .btnListBox.btnCol3_sp1>a {
        width: 100%;
        margin-top: 4.1666666667vw;
        margin-left: 0
    }

    .customBlockText .blockBtnArea .btnListBox.btnCol3_sp1>a:nth-child(-n+3) {
        margin-top: 4.1666666667vw
    }

    .customBlockText .blockBtnArea .btnListBox.btnCol3_sp1>a:first-child {
        margin-top: 0
    }
}

.customBlockText .blockBtnArea .btnListBox>a {
    padding: 1.5em;
    font-size: 16px;
    text-decoration: none;
    border: 2px solid #000;
    border-radius: 16px;
    box-shadow: 0px 4px 0px 0px #000;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    background-color: #dbb52f;
    color: #fff;
    box-sizing: border-box
}

.customBlockText .blockBtnArea .btnListBox>a:visited,
.customBlockText .blockBtnArea .btnListBox>a:focus,
.customBlockText .blockBtnArea .btnListBox>a:active {
    color: #fff
}

@media only screen and (min-width: 1080px) {
    .customBlockText .blockBtnArea .btnListBox>a {
        transition: background-color .3s ease 0s
    }

    .customBlockText .blockBtnArea .btnListBox>a:hover {
        background-color: rgb(228, 199.5, 99)
    }
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockBtnArea .btnListBox>a {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockBtnArea .btnListBox>a {
        font-size: 4.1666666667vw
    }
}

.customBlockText .blockBtnArea .btnListBox>a.alignL {
    justify-content: flex-start
}

.customBlockText .blockBtnArea .btnListBox>a.alignC {
    justify-content: center
}

.customBlockText .blockBtnArea .btnListBox>a.alignR {
    justify-content: flex-end
}

.customBlockText .blockBtnArea .btnListBox>a * {
    font-size: inherit;
    font-weight: inherit;
    color: inherit
}

.customBlockText .blockBtnArea .btnListBox>a .jp {
    line-height: 1
}

.customBlockText .blockBtnArea .btnListBox>a .en {
    line-height: 1
}

.customBlockText .blockBtnArea .btnListBox>a.enJpBtn .en,
.customBlockText .blockBtnArea .btnListBox>a.enBtn .en {
    line-height: 1.4;
    font-size: 130%;
    font-weight: 600;
    order: 1
}

.customBlockText .blockBtnArea .btnListBox>a.enJpBtn .jp,
.customBlockText .blockBtnArea .btnListBox>a.enBtn .jp {
    line-height: 1.4;
    margin-left: .5em;
    font-size: 80%;
    order: 2
}

.customBlockText .blockBtnArea .btnListBox>a.jpEnBtn .jp,
.customBlockText .blockBtnArea .btnListBox>a.jpBtn .jp {
    line-height: 1.4;
    font-size: 130%;
    font-weight: bold;
    order: 1
}

.customBlockText .blockBtnArea .btnListBox>a.jpEnBtn .en,
.customBlockText .blockBtnArea .btnListBox>a.jpBtn .en {
    line-height: 1.4;
    margin-left: .5em;
    font-size: 80%;
    order: 2
}

.customBlockText .blockBtnArea .btnListBox>a[target=_blank]:after {
    order: 3
}

.customBlockText .blockBtnArea .btnListBox>a .icon {
    font-family: Outfit;
    border-radius: 30px;
    border: 2px solid #000;
    background: #fff;
    text-align: center;
    font-size: 18px;
    line-height: 1;
    position: absolute;
    display: block;
    padding: 10px 16px;
    font-weight: 900;
    left: -15px;
    top: -16px;
    color: #000
}

.customBlockText .swiper-button-prev,
.customBlockText .swiper-container-rtl .swiper-button-next,
.customBlockText .swiper-button-next,
.customBlockText .swiper-container-rtl .swiper-button-prev {
    background-image: none;
    left: auto;
    right: auto
}

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

.customBlockText .blockSliderImgArea+.blockSliderImgArea {
    margin-top: 24px !important
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockSliderImgArea+.blockSliderImgArea {
        margin-top: 3.125vw !important
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockSliderImgArea+.blockSliderImgArea {
        margin-top: 6.25vw !important
    }
}

.customBlockText .blockSliderImgArea .blockSliderImg {
    padding-bottom: 30px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockSliderImgArea .blockSliderImg {
        padding-bottom: 3.90625vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockSliderImgArea .blockSliderImg {
        padding-bottom: 7.8125vw
    }
}

.customBlockText .blockSliderImgArea .blockSliderImg+.blockSliderImg {
    margin-top: 24px !important
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockSliderImgArea .blockSliderImg+.blockSliderImg {
        margin-top: 3.125vw !important
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockSliderImgArea .blockSliderImg+.blockSliderImg {
        margin-top: 6.25vw !important
    }
}

.customBlockText .blockSliderImgArea .slide {
    display: block
}

.customBlockText .blockSliderImgArea .slide>* {
    margin-top: 8px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockSliderImgArea .slide>* {
        margin-top: 1.0416666667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockSliderImgArea .slide>* {
        margin-top: 2.0833333333vw
    }
}

.customBlockText .blockSliderImgArea .slide>*:first-child {
    margin-top: 0
}

.customBlockText .blockSliderImgArea .slide .photo {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockSliderImgArea .slide .photo .img {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockSliderImgArea .slide .photo .img>img {
    width: 100%;
    max-width: none;
    margin-right: auto;
    margin-left: auto;
    display: block
}

.customBlockText .blockSliderImgArea .slide .detail {
    line-height: 1.8;
    font-size: 14px;
    letter-spacing: .02em;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockSliderImgArea .slide .detail {
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockSliderImgArea .slide .detail {
        font-size: 3.6458333333vw
    }
}

.customBlockText .blockSliderImgArea .slide .detail p {
    line-height: inherit;
    font-size: inherit;
    letter-spacing: inherit;
    box-sizing: border-box
}

.customBlockText .blockSliderImgArea .sliderNext,
.customBlockText .blockSliderImgArea .sliderPrev {
    width: 40px;
    height: 120px;
    margin-top: 0;
    display: block;
    background-color: #fff;
    color: #000919;
    transform: translateY(-50%)
}

.customBlockText .blockSliderImgArea .sliderNext:visited,
.customBlockText .blockSliderImgArea .sliderNext:focus,
.customBlockText .blockSliderImgArea .sliderNext:active,
.customBlockText .blockSliderImgArea .sliderPrev:visited,
.customBlockText .blockSliderImgArea .sliderPrev:focus,
.customBlockText .blockSliderImgArea .sliderPrev:active {
    color: #000919
}

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

    .customBlockText .blockSliderImgArea .sliderNext,
    .customBlockText .blockSliderImgArea .sliderPrev {
        transition: opacity .3s ease 0s
    }

    .customBlockText .blockSliderImgArea .sliderNext:hover,
    .customBlockText .blockSliderImgArea .sliderPrev:hover {
        opacity: .8
    }
}

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

    .customBlockText .blockSliderImgArea .sliderNext,
    .customBlockText .blockSliderImgArea .sliderPrev {
        display: none
    }
}

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

    .customBlockText .blockSliderImgArea .sliderNext,
    .customBlockText .blockSliderImgArea .sliderPrev {
        display: none
    }
}

.customBlockText .blockSliderImgArea .sliderNext:after,
.customBlockText .blockSliderImgArea .sliderPrev:after {
    width: 100%;
    height: 100%;
    content: "";
    display: block;
    background-color: currentColor;
    mask-repeat: no-repeat;
    mask-position: center center;
    mask-size: 30% auto;
    box-sizing: border-box
}

.customBlockText .blockSliderImgArea .sliderNext {
    right: 0
}

.customBlockText .blockSliderImgArea .sliderNext:after {
    mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="6.444" height="12" viewBox="0 0 6.444 12"><path d="M.281,6.625A.388.388,0,0,1,.4,6.341a.388.388,0,0,1,.284-.119.388.388,0,0,1,.284.119l5.354,5.354,5.271-5.271a.4.4,0,1,1,.569.569L6.606,12.547a.4.4,0,0,1-.569,0L.4,6.921a.277.277,0,0,1-.041-.053.406.406,0,0,1-.03-.059L.3,6.749.287,6.69Z" transform="translate(-6.222 12.281) rotate(-90)" /></svg>')
}

.customBlockText .blockSliderImgArea .sliderPrev {
    left: 0
}

.customBlockText .blockSliderImgArea .sliderPrev:after {
    mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="6.444" height="12" viewBox="0 0 6.444 12"><path d="M.281,6.625A.388.388,0,0,1,.4,6.341a.388.388,0,0,1,.284-.119.388.388,0,0,1,.284.119l5.354,5.354,5.271-5.271a.4.4,0,1,1,.569.569L6.606,12.547a.4.4,0,0,1-.569,0L.4,6.921a.277.277,0,0,1-.041-.053.406.406,0,0,1-.03-.059L.3,6.749.287,6.69Z" transform="translate(12.666 -0.281) rotate(90)" /></svg>')
}

.customBlockText .blockSliderImgArea .sliderPager {
    width: 100%;
    box-sizing: border-box;
    bottom: 0
}

.customBlockText .blockSliderImgArea .sliderPager .swiper-pagination-bullet-active {
    background-color: #000919
}

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

.customBlockText .blockIframeBoxArea .blockIframeBox {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockIframeBoxArea .blockIframeBox+.blockIframeBox {
    margin-top: 16px !important
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockIframeBoxArea .blockIframeBox+.blockIframeBox {
        margin-top: 2.0833333333vw !important
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIframeBoxArea .blockIframeBox+.blockIframeBox {
        margin-top: 4.1666666667vw !important
    }
}

.customBlockText .blockIframeBoxArea .blockIframeBox>* {
    margin-top: 8px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockIframeBoxArea .blockIframeBox>* {
        margin-top: 1.0416666667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIframeBoxArea .blockIframeBox>* {
        margin-top: 2.0833333333vw
    }
}

.customBlockText .blockIframeBoxArea .blockIframeBox>*:first-child {
    margin-top: 0
}

.customBlockText .blockIframeBoxArea .blockIframeBox .iframeBox {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockIframeBoxArea .blockIframeBox .iframeBox .code {
    box-sizing: border-box
}

.customBlockText .blockIframeBoxArea .blockIframeBox .iframeBox .code>iframe,
.customBlockText .blockIframeBoxArea .blockIframeBox .iframeBox .code>video {
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    display: inline-block
}

.customBlockText .blockIframeBoxArea .blockIframeBox .iframeBox.iframe_left .code {
    margin-right: auto;
    margin-left: 0;
    text-align: left
}

.customBlockText .blockIframeBoxArea .blockIframeBox .iframeBox.iframe_center .code {
    margin-right: auto;
    margin-left: auto;
    text-align: center
}

.customBlockText .blockIframeBoxArea .blockIframeBox .iframeBox.iframe_right .code {
    margin-right: 0;
    margin-left: auto;
    text-align: right
}

.customBlockText .blockIframeBoxArea .blockIframeBox .iframeBox.iframe_full .code {
    width: 100%;
    max-width: none;
    padding-top: 56.25%;
    margin-right: auto;
    margin-left: auto;
    position: relative
}

.customBlockText .blockIframeBoxArea .blockIframeBox .iframeBox.iframe_full .code>iframe,
.customBlockText .blockIframeBoxArea .blockIframeBox .iframeBox.iframe_full .code>video {
    width: 100% !important;
    height: 100% !important;
    max-width: none;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1
}

.customBlockText .blockIframeBoxArea .blockIframeBox .detail {
    width: 100%;
    box-sizing: border-box
}

.customBlockText .blockIframeBoxArea .blockIframeBox .detail .caption {
    width: 100%;
    line-height: 1.8;
    font-size: 14px;
    letter-spacing: .02em;
    box-sizing: border-box
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockIframeBoxArea .blockIframeBox .detail .caption {
        font-size: 1.8229166667vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIframeBoxArea .blockIframeBox .detail .caption {
        font-size: 3.6458333333vw
    }
}

.customBlockText .blockIntroText {
    line-height: 2;
    font-size: 17px
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockIntroText {
        font-size: 4.1666666667vw
    }
}

.customBlockText .blockRecommendArea .blockRecommendList {
    border: 2px solid #000919;
    padding: min(2.196193265vw, 30px)
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .customBlockText .blockRecommendArea .blockRecommendList {
        padding: 1.953125vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockRecommendArea .blockRecommendList {
        padding: 3.90625vw
    }
}

.customBlockText .blockRecommendArea .blockRecommendList dt {
    font-size: 16px;
    font-weight: 700;
    line-height: 2
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockRecommendArea .blockRecommendList dt {
        font-size: 4.1666666667vw
    }
}

.customBlockText .blockRecommendArea .blockRecommendList dt svg,
.customBlockText .blockRecommendArea .blockRecommendList dt .titleLabel {
    vertical-align: middle
}

.customBlockText .blockRecommendArea .blockRecommendList dt .titleLabel {
    margin-left: 12px
}

.customBlockText .blockRecommendArea .blockRecommendList dd {
    margin-top: 24px
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockRecommendArea .blockRecommendList dd {
        margin-top: 3.125vw
    }
}

.customBlockText .blockRecommendArea .blockRecommendList dd .linkList li {
    font-size: 14px;
    margin-top: 0
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockRecommendArea .blockRecommendList dd .linkList li {
        font-size: 3.6458333333vw
    }
}

.customBlockText .blockCaseIntroArea {
    border: 1px solid #0e3660;
    overflow: hidden;
    border-radius: 8px
}

.customBlockText .blockCaseIntroArea>dl {
    display: grid;
    grid-template-columns: 210px 1fr
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockCaseIntroArea>dl {
        display: block
    }
}

.customBlockText .blockCaseIntroArea>dl:not(:first-child) {
    border-top: 1px solid #0e3660
}

.customBlockText .blockCaseIntroArea>dl dt,
.customBlockText .blockCaseIntroArea>dl dd {
    padding: 30px 20px
}

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

    .customBlockText .blockCaseIntroArea>dl dt,
    .customBlockText .blockCaseIntroArea>dl dd {
        padding: 5.2083333333vw 3.90625vw
    }
}

.customBlockText .blockCaseIntroArea>dl dt {
    text-align: center;
    font-weight: 700;
    font-size: 18px;
    display: grid;
    place-content: center;
    color: #fff;
    background-color: #60b6b2;
    border-right: 1px solid #0e3660
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockCaseIntroArea>dl dt {
        font-size: 4.1666666667vw;
        border-right: none
    }
}

.customBlockText .blockCaseIntroArea>dl dd {
    line-height: 1.6;
    font-size: 15px
}

.customBlockText .blockCvBoxArea {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap
}

.customBlockText .blockCvBoxArea .dateWrap {
    display: flex;
    align-items: center;
    justify-content: flex-start
}

.customBlockText .blockCvBoxArea .dateWrap dt {
    font-size: 13px;
    padding: 8px;
    border-radius: 4px;
    text-align: center;
    background-color: #0e3660;
    color: #fff
}

.customBlockText .blockCvBoxArea .dateWrap dd {
    margin-left: 12px;
    font-family: "din-2014", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 22px;
    color: #545454
}

.customBlockText .blockCvBoxArea .cvBtn {
    width: 230px
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockCvBoxArea .cvBtn {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        margin-top: 5.2083333333vw
    }
}

.customBlockText .blockCvBoxArea .cvBtn .btn {
    box-sizing: border-box;
    width: 100%;
    text-align: center;
    text-decoration: none
}

.customBlockText .blockBorderBoxArea .blockBorderBox {
    border: 1px solid #d0d0d0;
    border-radius: 8px;
    padding: 36px 28px
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockBorderBoxArea .blockBorderBox {
        padding: 6.5104166667vw 5.2083333333vw
    }
}

.customBlockText .blockBorderBoxArea .blockBorderBox:not(:first-child) {
    margin-top: 20px
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockBorderBoxArea .blockBorderBox:not(:first-child) {
        margin-top: 5.2083333333vw
    }
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockBorderBoxArea .blockBorderBox .normalTitle {
        font-size: 3.3854166667vw
    }
}

.customBlockText .blockBorderBoxArea .blockBorderBox .text {
    font-size: 13px
}

.customBlockText .blockBorderBoxArea .blockBorderBox ul li:not(:first-child) {
    margin-top: 12px
}

@media only screen and (max-width: 767px) {
    .customBlockText .blockBorderBoxArea .blockBorderBox ul li:not(:first-child) {
        margin-top: 2.0833333333vw
    }
}

.text {
    line-height: 1.6;
    font-size: 16px;
    letter-spacing: .02em
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .text {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .text {
        font-size: 4.1666666667vw
    }
}

.text.size-s {
    line-height: 1.6;
    font-size: 13px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .text.size-s {
        font-size: 1.6927083333vw
    }
}

@media only screen and (max-width: 767px) {
    .text.size-s {
        font-size: 3.3854166667vw
    }
}

.text.size-l {
    line-height: 1.6;
    font-size: 18px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .text.size-l {
        font-size: 2.34375vw
    }
}

@media only screen and (max-width: 767px) {
    .text.size-l {
        font-size: 4.6875vw
    }
}

.text.lh2 {
    line-height: 2
}

.text.indent1 {
    padding-left: 1em;
    box-sizing: border-box
}

.ulList {
    line-height: 1.6;
    font-size: 16px;
    letter-spacing: .08em
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .ulList {
        font-size: 2.0833333333vw
    }
}

@media only screen and (max-width: 767px) {
    .ulList {
        font-size: 4.1666666667vw
    }
}

.ulList.size-s {
    line-height: 1.6;
    font-size: 13px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .ulList.size-s {
        font-size: 1.6927083333vw
    }
}

@media only screen and (max-width: 767px) {
    .ulList.size-s {
        font-size: 3.3854166667vw
    }
}

.ulList.size-l {
    line-height: 1.6;
    font-size: 18px
}

@media only screen and (min-width: 768px)and (max-width: 1079px) {
    .ulList.size-l {
        font-size: 2.34375vw
    }
}

@media only screen and (max-width: 767px) {
    .ulList.size-l {
        font-size: 4.6875vw
    }
}

.ulList.lh2 {
    line-height: 2
}

.ulList>li {
    line-height: inherit;
    font-size: inherit;
    letter-spacing: inherit;
    position: relative;
    box-sizing: border-box
}

.ulList>li:before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1
}

.dotsList>li {
    padding-left: 1.2em
}

.dotsList>li:before {
    content: "・"
}

.numList {
    counter-reset: num-counter
}

.numList>li {
    padding-left: 1.2em
}

.numList>li:before {
    content: counter(num-counter) "";
    counter-increment: num-counter
}

.alphaList {
    counter-reset: alpha-counter
}

.alphaList>li {
    padding-left: 1.2em
}

.alphaList>li:before {
    content: counter(alpha-counter, lower-alpha) "";
    counter-increment: alpha-counter
}

.outfit,
.en {
    font-family: Outfit, Noto Sans JP, 游ゴシック, 游ゴシック体, Yu Gothic, YuGothic, Hiragino Sans, ヒラギノ角ゴシック, メイリオ, Meiryo, ＭＳ Ｐゴシック, MS PGothic, sans-serif
}

.lineLimit-2 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

.link {
    color: #26706C;
    text-decoration: underline
}

.link:visited,
.link:focus,
.link:active {
    color: #26706C
}

@media only screen and (min-width: 1080px) {
    .link:hover {
        text-decoration: none
    }
}

.circleArrowLink {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end
}

.circleArrowLink>p {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.6;
    padding-right: 66px
}

@media only screen and (max-width: 767px) {
    .circleArrowLink>p {
        font-size: 4.1666666667vw;
        padding-right: 4.1666666667vw
    }
}

.circleArrowLink .circleArrow {
    position: absolute;
    right: 0;
    width: 52px;
    height: 52px;
    transition-property: all;
    transition-duration: 0.3s;
    transition-timing-function: ease;
    transition-delay: 0s
}

@media only screen and (max-width: 767px) {
    .circleArrowLink .circleArrow {
        position: static;
        width: 7.2916666667vw;
        height: 7.2916666667vw
    }
}

.circleArrowLink:hover .circleArrow {
    right: -5px
}

.btn {
    color: #fff;
    font-weight: 700;
    font-size: 14px;
    padding: 12px;
    display: inline-block;
    transition-property: background-color, color;
    transition-duration: 0.3s;
    transition-timing-function: ease;
    transition-delay: 0s
}

.btn.bgWh {
    background-color: #fff;
    color: #000919
}

.btn.bgYe {
    background-color: #dbb52f;
    color: #fff !important
}

.btn.bgGr {
    background-color: #60b6b2;
    color: #fff !important
}

.btn.bgBk {
    background-color: #000919;
    color: #fff !important
}

.btn.roundBtn {
    border-radius: 50px
}

.btn.bdrBtn {
    border: 1px solid #000919
}

.btn.bdrBtn.bgYe {
    border-color: #dbb52f
}

.btn.bdrBtn.bgGr {
    border-color: #60b6b2
}

.btn.bdrBtn.backBtn {
    background-color: #bbb;
    border-color: #bbb
}

@media only screen and (min-width: 1080px) {
    .btn:hover {
        cursor: pointer
    }

    .btn:hover.bgWh {
        background-color: #000919;
        color: #fff
    }

    .btn:hover.bgYe {
        background-color: #fff;
        color: #000919 !important
    }

    .btn:hover.bgGr {
        background-color: #fff;
        color: #000919 !important
    }

    .btn:hover.bgBk {
        background-color: #fff;
        color: #000919 !important
    }

    .btn:hover.backBtn {
        background-color: #fff !important;
        color: #000919 !important
    }
}

.attentionBtn {
    display: inline-block;
    text-align: center;
    position: relative
}

@media only screen and (max-width: 767px) {
    .attentionBtn {
        width: 100%
    }
}

.attentionBtn .attentionBlock {
    background-color: #60b6b2;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    padding: 12px 20px;
    border-radius: 8px;
    position: relative;
    box-shadow: 0px 4px 16px 0px rgba(0, 9, 25, .0784313725);
    z-index: 3;
    display: inline-block;
    position: absolute;
    top: -35px;
    left: 50%;
    width: 240px;
    transition-property: all;
    transition-duration: 0.3s;
    transition-timing-function: ease;
    transition-delay: 0s;
    transform: translateX(-50%)
}

@media only screen and (max-width: 767px) {
    .attentionBtn .attentionBlock {
        font-size: 3.125vw;
        padding: 2.6041666667vw 3.125vw;
        min-width: 51.0416666667vw;
        top: -7.8125vw
    }
}

.attentionBtn .attentionBlock:before {
    transition-property: all;
    transition-duration: 0.3s;
    transition-timing-function: ease;
    transition-delay: 0s;
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 10px solid rgba(0, 0, 0, 0);
    border-top: 10px solid #60b6b2
}

.attentionBtn .btn {
    width: 460px;
    margin: 0 auto;
    box-sizing: border-box;
    position: relative;
    overflow: hidden
}

.attentionBtn .btn:not(.bgYe) {
    color: #000919;
    background-color: #fff
}

.attentionBtn .btn:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    background-color: #000919;
    width: 100%;
    height: 0;
    transition: .3s cubic-bezier(0.8, 0, 0.2, 1) 0s
}

@media only screen and (max-width: 767px) {
    .attentionBtn .btn {
        width: 100%
    }
}

.attentionBtn .btn p {
    font-size: 20px;
    position: relative;
    z-index: 3
}

@media only screen and (max-width: 767px) {
    .attentionBtn .btn p {
        font-size: 4.1666666667vw
    }
}

.attentionBtn .btn .circleArrow {
    z-index: 3
}

.attentionBtn.attentionWh .attentionBlock {
    background-color: #fff;
    color: #000919
}

.attentionBtn.attentionWh .attentionBlock:before {
    border-top-color: #fff
}

.attentionBtn.attentionWh .btn:before {
    background-color: #fff
}

.attentionBtn.attentionWh:hover .attentionBlock {
    background-color: #60b6b2;
    color: #fff
}

.attentionBtn.attentionWh:hover .attentionBlock:before {
    border-top-color: #60b6b2
}

.attentionBtn.attentionWh:hover .btn p {
    color: #000919
}

@media only screen and (min-width: 1080px) {
    .attentionBtn:hover .attentionBlock {
        top: -30px
    }

    .attentionBtn:hover .btn:before {
        height: 100%
    }

    .attentionBtn:hover .btn p {
        color: #fff
    }

    .attentionBtn:hover .circleArrow {
        animation: arrow .5s;
        background-color: #fff
    }
}

@keyframes arrow {
    50% {
        right: 17px
    }

    100% {
        right: 20px
    }
}

.circleArrowBtn {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 24px;
    position: relative
}

.circleArrowBtn .circleArrow {
    background-color: #000919;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: grid;
    place-content: center;
    position: absolute;
    right: 20px
}

@media only screen and (max-width: 767px) {
    .circleArrowBtn .circleArrow {
        width: 7.2916666667vw;
        height: 7.2916666667vw
    }
}

.circleArrowBtn .circleArrow:before {
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(-45deg);
    transition-property: all;
    transition-duration: 0.3s;
    transition-timing-function: ease;
    transition-delay: 0s;
    margin-left: -5px
}

@media only screen and (max-width: 767px) {
    .circleArrowBtn .circleArrow:before {
        width: 1.5625vw;
        height: 1.5625vw
    }
}

@media only screen and (min-width: 1080px) {
    .circleArrowBtn:hover .circleArrow {
        background-color: #fff
    }

    .circleArrowBtn:hover .circleArrow:before {
        border-color: #000919
    }
}

.tabBox {
    width: 100%;
    display: none;
    box-sizing: border-box
}

.tabBox.active {
    display: block
}

/* COMMON CONTACT: Figma 697:5522 */
.contactBlock.commonContact {
    display: grid;
    overflow: hidden;
    isolation: isolate;
    background-color: #060c18
}

.contactBlock.commonContact .contactBlockInner {
    grid-area: 1 / 1;
    display: block;
    width: 100%;
    padding-top: min(5.5555555556vw, 80px);
    padding-bottom: min(5.5555555556vw, 80px);
    position: static;
    z-index: 3;
    transform: none;
    box-sizing: border-box
}

.contactBlock.commonContact .contactBlockInner>.inner {
    padding-right: 0;
    padding-left: 0
}

.contactBlock.commonContact .contactBlockInner .textBlock {
    max-width: 570px;
    text-align: left
}

.contactBlock.commonContact .contactBlockInner .textBlock .contactTitleEn {
    font-size: clamp(14px, 1.1111111111vw, 16px);
    line-height: 1
}

.contactBlock.commonContact .contactBlockInner .textBlock .contactTitle {
    margin-top: clamp(18px, 1.6666666667vw, 24px);
    font-size: clamp(30px, 3.3333333333vw, 48px);
    line-height: 1.3
}

.contactBlock.commonContact .contactBlockInner .textBlock .contactText {
    margin-top: clamp(20px, 2.5vw, 36px);
    font-size: inherit;
    line-height: 1.5
}

.contactBlock.commonContact .contactTopics {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px
}

.contactBlock.commonContact .contactTopics span {
    display: inline-block;
    padding: clamp(4px, .3472222222vw, 5px) clamp(8px, .8333333333vw, 12px);
    color: #000919;
    background-color: #fff;
    border-radius: 4px;
    font-size: clamp(13px, 1.3888888889vw, 20px);
    font-weight: 700;
    line-height: 1;
    box-sizing: border-box
}

.contactBlock.commonContact .contactDescription {
    margin-top: clamp(12px, 1.5277777778vw, 22px);
    color: #fff;
    font-size: clamp(13px, 1.1111111111vw, 16px);
    font-weight: 700;
    line-height: 1.5
}

.contactBlock.commonContact .contactActionList {
    display: grid;
    grid-template-columns: repeat(2, min(19.0972222222vw, 275px));
    gap: min(1.3888888889vw, 20px);
    margin-top: clamp(18px, 1.875vw, 27px)
}

.contactBlock.commonContact .contactAction {
    min-width: 0;
    text-align: center
}

.contactBlock.commonContact .contactActionLead {
    color: #fff;
    font-size: clamp(12px, 1.1111111111vw, 16px);
    font-weight: 500;
    line-height: 1.25;
    white-space: nowrap
}

.contactBlock.commonContact .contactActionLead span {
    display: inline-block;
    margin: 0 3px
}

.contactBlock.commonContact .contactActionButton {
    display: block;
    width: 100%;
    margin-top: clamp(5px, .5555555556vw, 8px);
    padding: clamp(14px, 1.25vw, 18px) 16px;
    color: #fff !important;
    border: 0;
    font-size: clamp(13px, 1.3888888889vw, 20px);
    line-height: 1.2;
    box-sizing: border-box
}

.contactBlock.commonContact .contactActionButtonConsult {
    background-color: #dbb52f
}

.contactBlock.commonContact .contactActionButtonDocument {
    background-color: #1369ff
}

.contactBlock.commonContact .photoWrap {
    grid-area: 1 / 1;
    justify-self: end;
    align-self: stretch;
    width: min(64.8122392211vw, 932px);
    height: auto;
    margin-right: max(-231px, -16.0640667594vw);
    text-align: left;
    order: initial
}

.contactBlock.commonContact .photoWrap .photo {
    display: block;
    width: 100%;
    height: auto;
    position: static;
    z-index: auto
}

.contactBlock.commonContact .photoWrap .photo img {
    display: block;
    width: 100%;
    max-width: none;
    height: auto;
    aspect-ratio: auto;
    object-fit: contain;
    object-position: center
}

.contactBlock.commonContact .photoWrap .photo:before,
.contactBlock.commonContact .photoWrap .photo:after {
    display: none
}

.contactBlock.commonContact .contactShape {
    grid-area: 1 / 1;
    align-self: stretch;
    width: min(54.033379694vw, 777px);
    max-width: none;
    height: 100%;
    z-index: 1;
    pointer-events: none
}

.contactBlock.commonContact .bgTitle {
    grid-area: 1 / 1;
    align-self: end;
    justify-self: start;
    margin-bottom: -58px;
    margin-left: -58px;
    color: rgba(255, 255, 255, .06);
    font-size: min(11.9610570236vw, 172px);
    line-height: 1;
    white-space: nowrap;
    position: static;
    z-index: 2;
    transform: none;
    pointer-events: none
}

@media only screen and (min-width: 1080px) {
    .contactBlock.commonContact .contactActionButton:hover {
        color: #000919 !important;
        background-color: #fff
    }
}

@media only screen and (max-width: 767px) {
    .contactBlock.commonContact {
        grid-template-columns: minmax(0, 1fr)
    }

    .contactBlock.commonContact .contactBlockInner {
        grid-area: 2 / 1;
        padding-top: min(15.625vw, 60px);
        padding-bottom: min(15.625vw, 60px);
        order: initial
    }

    .contactBlock.commonContact .contactBlockInner .textBlock {
        max-width: none;
        text-align: center
    }

    .contactBlock.commonContact .contactBlockInner .textBlock .contactTitleEn {
        font-size: min(3.6458333333vw, 14px)
    }

    .contactBlock.commonContact .contactBlockInner .textBlock .contactTitle {
        margin-top: min(4.1666666667vw, 16px);
        font-size: min(7.8125vw, 30px);
        line-height: 1.35
    }

    .contactBlock.commonContact .contactBlockInner .textBlock .contactText {
        margin-top: min(8.3333333333vw, 32px)
    }

    .contactBlock.commonContact .contactTopics {
        justify-content: center;
        gap: min(2.0833333333vw, 8px)
    }

    .contactBlock.commonContact .contactTopics span {
        padding: min(1.3020833333vw, 5px) min(2.6041666667vw, 10px);
        font-size: min(3.3854166667vw, 13px)
    }

    .contactBlock.commonContact .contactDescription {
        margin-top: min(4.1666666667vw, 16px);
        font-size: min(3.6458333333vw, 14px);
        line-height: 1.6
    }

    .contactBlock.commonContact .contactActionList {
        grid-template-columns: minmax(0, 1fr);
        gap: min(6.25vw, 24px);
        margin-top: min(8.3333333333vw, 32px)
    }

    .contactBlock.commonContact .contactActionLead {
        font-size: min(3.6458333333vw, 14px)
    }

    .contactBlock.commonContact .contactActionButton {
        margin-top: min(2.0833333333vw, 8px);
        padding: min(5.2083333333vw, 20px) min(6.25vw, 24px);
        font-size: min(4.1666666667vw, 16px)
    }

    .contactBlock.commonContact .photoWrap {
        grid-area: 1 / 1;
        justify-self: stretch;
        width: 100%;
        margin-right: 0;
        order: initial
    }

    .contactBlock.commonContact .contactShape {
        display: none
    }

    .contactBlock.commonContact .bgTitle {
        grid-area: 2 / 1;
        align-self: center;
        justify-self: center;
        margin: 0;
        font-size: min(24.7395833333vw, 95px)
    }
}

/* PC・SP 非表示
***************************************************************/
.sp_only {
    display: none !important;
}

@media screen and (max-width: 680px) {
    .sp_only {
        display: block !important;
    }

    .pc_only {
        display: none !important;
    }
}
