@charset "UTF-8";
@import url("page/partner.css");

@keyframes fedeout {
    0% {
        opacity: 1;
    }

    99% {
        opacity: 0;
    }

    100% {
        opacity: 0;
        z-index: -1;
    }
}

@keyframes fedein {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes fedein_up {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }

    90% {
        opacity: 1;
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fedein_up2 {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }

    90% {
        opacity: 1;
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes lineslide1 {
    0% {
        transform: translateX(100%);
    }

    to {
        transform: translateX(-100%);
    }
}

@keyframes lineslide2 {
    0% {
        transform: translateX(0);
    }

    to {
        transform: translateX(-200%);
    }
}

@keyframes sk-foldCubeAngle {

    0%,
    10% {
        transform: perspective(140px) rotateX(-180deg);
        opacity: 0;
    }

    25%,
    75% {
        transform: perspective(140px) rotateX(0deg);
        opacity: 1;
    }

    90%,
    100% {
        transform: perspective(140px) rotateY(180deg);
        opacity: 0;
    }
}

@keyframes lightblue_dot {
    0% {
        background: #b7c3fd;
    }

    100% {
        background: white;
    }
}

@keyframes blue_dot {
    0% {
        background: #294AD9;
    }

    100% {
        background: white;
    }
}

@keyframes arr_left {
    0% {
        background-image: url("../image/common/main_slide_arw_prev.svg");
    }

    100% {
        background-image: url("../image/common/main_slide_arw_prev_white.svg");
    }
}

@keyframes arr_right {
    0% {
        background-image: url("../image/common/main_slide_arw_next.svg");
    }

    100% {
        background-image: url("../image/common/main_slide_arw_next_white.svg");
    }
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
    line-height: normal;
    /* 1 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
    margin: 0;
    padding: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
    display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
    box-sizing: content-box;
    /* 1 */
    height: 0;
    /* 1 */
    overflow: visible;
    /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
    background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
    border-bottom: none;
    /* 1 */
    text-decoration: underline;
    /* 2 */
    text-decoration: underline dotted;
    /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
    font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
    border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    /* 1 */
    font-size: 100%;
    /* 1 */
    line-height: 1.15;
    /* 1 */
    margin: 0;
    /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
    /* 1 */
    overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
    /* 1 */
    text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
/**
 * Remove the inner border and padding in Firefox.
 */
/**
 * Restore the focus styles unset by the previous rule.
 */
/**
 * Correct the padding in Firefox.
 */
fieldset {
    padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
    box-sizing: border-box;
    /* 1 */
    color: inherit;
    /* 2 */
    display: table;
    /* 1 */
    max-width: 100%;
    /* 1 */
    padding: 0;
    /* 3 */
    white-space: normal;
    /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
    vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
    overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
    outline-offset: -2px;
    /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
    display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
    display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
    display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
    display: none;
}

/* border-box
   ========================================================================== */
*,
*::before,
*::after {
    box-sizing: border-box;
}

/* clearfix
   ========================================================================== */
.clearfix::after {
    content: "";
    display: block;
    clear: both;
}

:root {
    --red: #BF0000;
    --gray: #CCCCCC;
    --white: #FFFFFF;
    --theme: #294AD9;
}

.sp_only {
    display: none;
}

@media screen and (max-width: 767px) {
    .sp_only {
        display: block;
    }
}

#header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 999999;
}

#header a {
    text-decoration: none;
}

#header ul {
    list-style: none;
}

.global_header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: white;
    width: 100%;
    max-width: 100%;
    height: 80px;
    margin: 0 0 0 0;
    padding: 15px 20px 15px 40px;
}

@media screen and (max-width: 1024px) {
    .global_header {
        padding: 0 40px;
        height: 100px;
    }
}

@media screen and (max-width: 600px) {
    .global_header {
        height: 70px;
        padding: 0 20px;
    }
}

.global_header .logo_block {
    display: flex;
    align-items: center;
    margin: 0 0 0 0;
}

.global_header .site_logo {
    width: 219px;
    line-height: 1;
    font-size: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 1024px) {
    .global_header .site_logo {
        width: 175px;
    }
}

@media screen and (max-width: 600px) {
    .global_header .site_logo {
        width: 193px;
    }
}

.global_header .site_logo a {
    display: inline-block;
    transition: opacity 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .global_header .site_logo a {
        display: block;
    }
}

.global_header .site_logo a img {
    display: block;
    max-width: 300px;
    height: 35px;
    width: 100%;
}

@media screen and (min-width: 1023px) {
    .global_header .site_logo a:hover {
        opacity: 0.6;
        transition: opacity 0.5s ease;
    }
}

.global_header .site_catch_txt {
    margin: 0 0 0 25px;
    font-size: 1.3rem;
    line-height: 1;
    white-space: nowrap;
}

@media screen and (max-width: 1299px) {
    .global_header .site_catch_txt {
        display: none;
    }
}

.hader_navi_wrap {
    margin-left: auto;
}

@media screen and (max-width: 1024px) {
    .hader_navi_wrap_inr {
        display: none;
    }
}

.hader_navi_wrap_inr .content_list_wrap {
    display: flex;
    align-items: center;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
}

.hader_navi_wrap_inr .content_list_wrap .content_list_item {
    position: relative;
    margin: 0 10px 0 10px;
    font-size: 1.4rem;
    line-height: 1.1;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    white-space: nowrap;
}

.hader_navi_wrap_inr .content_list_wrap .content_list_item a {
    display: block;
    color: black;
}

.hader_navi_wrap_inr .content_list_wrap .content_list_item a::after {
    content: "";
    display: block;
    position: absolute;
    height: 1px;
    width: 100%;
    margin-top: 5px;
    background-color: black;
    transform-origin: left;
    transform: scaleX(0);
    transition: transform 0.5s ease;
}

@media screen and (min-width: 1023px) {
    .hader_navi_wrap_inr .content_list_wrap .content_list_item a:hover::after {
        transform: scaleX(1);
        transition: transform 0.5s ease;
    }
}

.hader_navi_wrap_inr .content_list_wrap .content_list_item.document_btn a,
.hader_navi_wrap_inr .content_list_wrap .content_list_item.contact_btn a {
    display: block;
    color: white;
    padding: 18px;
    line-height: 1.1;
    background-color: black;
    border-radius: 4px;
    text-align: center;
    border: solid 2px transparent;
    transition: color 0.5s ease, border 0.5s ease, background-color 0.5s ease;
}

.hader_navi_wrap_inr .content_list_wrap .content_list_item.document_btn a .btn_inr,
.hader_navi_wrap_inr .content_list_wrap .content_list_item.contact_btn a .btn_inr {
    position: relative;
}

.hader_navi_wrap_inr .content_list_wrap .content_list_item.document_btn a .btn_inr::before,
.hader_navi_wrap_inr .content_list_wrap .content_list_item.contact_btn a .btn_inr::before {
    content: "";
    display: block;
    position: absolute;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    left: 0;
}

.hader_navi_wrap_inr .content_list_wrap .content_list_item.document_btn a::after,
.hader_navi_wrap_inr .content_list_wrap .content_list_item.contact_btn a::after {
    display: none;
}

@media screen and (min-width: 1023px) {

    .hader_navi_wrap_inr .content_list_wrap .content_list_item.document_btn a:hover,
    .hader_navi_wrap_inr .content_list_wrap .content_list_item.contact_btn a:hover {
        background-color: white;
        box-sizing: border-box;
        color: black;
        border: solid 2px black;
        transition: color 0.5s ease, border 0.5s ease, background-color 0.5s ease;
    }
}

.hader_navi_wrap_inr .content_list_wrap .content_list_item.document_btn {
    margin-left: 15.5px;
    margin-right: 0;
}

.hader_navi_wrap_inr .content_list_wrap .content_list_item.document_btn a {
    min-width: 130px;
}

.hader_navi_wrap_inr .content_list_wrap .content_list_item.document_btn a .btn_inr {
    padding: 0 0 0 21px;
}

.hader_navi_wrap_inr .content_list_wrap .content_list_item.document_btn a .btn_inr::before {
    top: calc(50% - 6px);
    background-image: url("../image/common/icon_document_dl.svg");
    width: 13px;
    height: 12px;
    transition: background-image 0.5s ease;
}

@media screen and (min-width: 1023px) {
    .hader_navi_wrap_inr .content_list_wrap .content_list_item.document_btn a:hover .btn_inr::before {
        background-image: url("../image/common/icon_document_dl_black.svg");
        transition: background-image 0.5s ease;
    }
}

.hader_navi_wrap_inr .content_list_wrap .content_list_item.contact_btn {
    margin-left: 8px;
}

.hader_navi_wrap_inr .content_list_wrap .content_list_item.contact_btn a {
    min-width: 150px;
}

.hader_navi_wrap_inr .content_list_wrap .content_list_item.contact_btn a .btn_inr {
    padding: 0 0 0 26px;
}

.hader_navi_wrap_inr .content_list_wrap .content_list_item.contact_btn a .btn_inr::before {
    top: calc(50% - 6.5px);
    background-image: url("../image/common/icon_mail_contact.svg");
    width: 14px;
    height: 13px;
    transition: background-image 0.5s ease;
}

@media screen and (min-width: 1023px) {
    .hader_navi_wrap_inr .content_list_wrap .content_list_item.contact_btn a:hover .btn_inr::before {
        background-image: url("../image/common/icon_mail_contact_black.svg");
        transition: background-image 0.5s ease;
    }
}

.drawr_btn {
    display: none;
}

@media screen and (max-width: 1024px) {
    .drawr_btn {
        display: block;
    }
}

#nav_menu {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    min-height: 100vh;
    overflow: auto;
    transform: translateX(100%);
    opacity: 0;
    transition: transform 0.5s ease, opacity 0.2s 0.25s ease;
}

#nav_menu #menu_bg {
    background-color: #294AD9;
    width: 100%;
    height: 100%;
}

#nav_menu #menu_wrapper {
    display: block;
    position: absolute;
    top: 0;
    width: 100%;
    height: 100vh;
    z-index: 222;
}

#nav_menu .nav_inner {
    background-color: #294AD9;
    background-image: url("../image/common/menu_bg.png");
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat;
    width: 100%;
    min-height: 100%;
    height: 100%;
}

#nav_menu .nav_inner .logo {
    width: 276px;
    height: auto;
    position: absolute;
    top: 37px;
    left: 40px;
}

@media screen and (max-width: 600px) {
    #nav_menu .nav_inner .logo {
        width: 193px;
        top: 26px;
        left: 20px;
    }
}

#nav_menu .nav_inner .logo a img {
    display: block;
    width: 100%;
}

#nav_menu .menu_cnt {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin: 0;
    padding: 0;
    height: 100%;
    width: 100%;
}

#nav_menu .menu_cnt .nav_item_list {
    text-align: center;
    padding-top: 0;
    font-size: 2.4rem;
    border: 0;
    list-style: none;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
}

#nav_menu .menu_cnt .nav_item_list .nav_item {
    position: relative;
    margin-bottom: 40px;
    border: 0;
}

@media screen and (max-width: 600px) {
    #nav_menu .menu_cnt .nav_item_list .nav_item {
        margin-bottom: 30px;
    }
}

#nav_menu .menu_cnt .nav_item_list .nav_item a {
    display: block;
    position: relative;
    color: white;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    padding: 0;
    font-size: 1.4rem;
    text-decoration: none;
}

@media screen and (max-width: 1024px) {
    #nav_menu .menu_cnt .nav_item_list .nav_item a {
        display: block;
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    #nav_menu .menu_cnt .nav_item_list .nav_item a {
        font-size: 1.6rem;
    }
}

#nav_menu .sns_link_list_item_burger {
    display: flex;
    align-items: center;
    justify-content: center;
    list-style: none;
    border: 0;
    padding: 50px 0 0 0;
    margin: 0 0 0 0;
}

#nav_menu .sns_link_list_item_burger .sns_link_list_item {
    position: relative;
    margin-left: 30px;
    margin-bottom: 0;
}

#nav_menu .sns_link_list_item_burger .sns_link_list_item:nth-child(1) {
    margin-left: 0;
}

#nav_menu .sns_link_list_item_burger .sns_link_list_item a {
    display: block;
    font-size: 0;
    line-height: 1;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    padding: 0;
}

#nav_menu .sns_link_list_item_burger .sns_link_list_item.icon_instagram a {
    width: 27px;
    height: 27px;
    background-image: url(../image/common/icon_inst.svg);
}

#nav_menu .sns_link_list_item_burger .sns_link_list_item.icon_twitter a {
    width: 28px;
    height: 23px;
    background-image: url(../image/common/icon_tw.svg);
}

#nav_menu .sns_link_list_item_burger .sns_link_list_item.icon_facebook a {
    width: 24px;
    height: 24px;
    background-image: url(../image/common/icon_fb.svg);
}

@media screen and (max-width: 1024px) {
    #navInput:checked~#nav_menu {
        z-index: 9999;
        transform: translateX(0);
        opacity: 1;
        transition: transform 0.5s ease, opacity 0.2s 0.1s ease;
    }
}

/* Scss Document */
.chkNav {
    display: none;
}

#navDrawer {
    display: none;
    position: relative;
    z-index: 999999999999;
}

@media screen and (max-width: 1024px) {
    #navDrawer {
        display: block;
    }
}

#navDrawer #humb {
    position: relative;
    width: 47px;
    margin: 0;
    padding: 0;
    font-size: 0;
    line-height: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

@media screen and (max-width: 600px) {
    #navDrawer #humb {
        width: 37px;
    }
}

#navDrawer #humb .line {
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: black;
    display: block;
}

#navDrawer #humb .line.top {
    top: -13px;
}

@media screen and (max-width: 600px) {
    #navDrawer #humb .line.top {
        top: -11px;
    }
}

#navDrawer #humb .line.mid {
    width: calc(100% - 10px);
}

#navDrawer #humb .line.btm {
    width: calc(100% - 20px);
    bottom: -13px;
}

@media screen and (max-width: 600px) {
    #navDrawer #humb .line.btm {
        bottom: -12px;
    }
}

#navInput:checked~#navDrawer #humb .line {
    background-color: white;
    transition: background-color 0.1s ease;
}

#navInput:checked~#navDrawer #humb .line.top {
    top: auto;
    transform: rotate(45deg);
    transition: transform 0.3s ease;
}

#navInput:checked~#navDrawer #humb .line.mid {
    opacity: 0;
}

#navInput:checked~#navDrawer #humb .line.btm {
    width: 100%;
    bottom: auto;
    transform: rotate(-45deg);
    transition: transform 0.3s ease;
}

/* Scss Document */
.global_footer {
    position: relative;
    background-color: #f0f1f3;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    margin: 0;
    width: 100%;
    max-width: 100%;
}

@media screen and (max-width: 1024px) {
    .global_footer {
        padding: 0;
    }
}

@media screen and (max-width: 600px) {
    .global_footer {
        padding: 80px 0 37.5px 0;
    }
}

.global_footer .global_footer_inr {
    width: calc(100% - 300px);
    max-width: 1080px;
    margin: 0 auto 0 auto;
}

@media screen and (max-width: 1024px) {
    .global_footer .global_footer_inr {
        width: calc(100% - 100px);
    }
}

@media screen and (max-width: 600px) {
    .global_footer .global_footer_inr {
        width: calc(100% - 50px);
    }
}

.global_footer .dmm_showbooth_logo {
    margin: 0 0 0 0;
    width: 275px;
}

@media screen and (max-width: 1024px) {
    .global_footer .dmm_showbooth_logo {
        width: 410px;
    }
}

@media screen and (max-width: 600px) {
    .global_footer .dmm_showbooth_logo {
        max-width: 205px;
        width: 90%;
    }
}

.global_footer .dmm_showbooth_logo a {
    display: block;
    transition: opacity 0.5s ease;
}

.global_footer .dmm_showbooth_logo a img {
    display: block;
    width: 100%;
}

@media screen and (min-width: 1023px) {
    .global_footer .dmm_showbooth_logo a:hover {
        opacity: 0.8;
        transition: opacity 0.5s ease;
    }
}

.global_footer .sns_link_list {
    display: flex;
    align-items: center;
    list-style: none;
    margin: 0px;
    padding: 44px 0px 0px 0px;
}

@media screen and (max-width: 1024px) {
    .global_footer .sns_link_list {
        padding: 70px 0px 0px 0px;
    }
}

@media screen and (max-width: 600px) {
    .global_footer .sns_link_list {
        padding: 35px 0px 0px 0px;
    }
}

.global_footer .sns_link_list .sns_link_list_item a {
    display: block;
    font-size: 0;
    line-height: 1;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
}

.global_footer .sns_link_list .sns_link_list_item.icon_instagram a {
    width: 25px;
    height: 25px;
    background-image: url("../image/common/icon_inst.svg");
}

@media screen and (max-width: 1024px) {
    .global_footer .sns_link_list .sns_link_list_item.icon_instagram a {
        max-width: 53px;
        max-height: 53px;
        width: 7.2vw;
        height: 7.2vw;
    }
}

.global_footer .sns_link_list .sns_link_list_item.icon_twitter {
    margin-left: 30px;
}

.global_footer .sns_link_list .sns_link_list_item.icon_twitter a {
    width: 26px;
    height: 22px;
    background-image: url("../image/common/icon_tw.svg");
}

@media screen and (max-width: 1024px) {
    .global_footer .sns_link_list .sns_link_list_item.icon_twitter a {
        max-width: 55px;
        max-height: 56px;
        width: 7.467vw;
        height: 6.133vw;
    }
}

.global_footer .sns_link_list .sns_link_list_item.icon_facebook {
    margin-left: 30px;
}

.global_footer .sns_link_list .sns_link_list_item.icon_facebook a {
    width: 25px;
    height: 25px;
    background-image: url("../image/common/icon_fb.svg");
}

@media screen and (max-width: 1024px) {
    .global_footer .sns_link_list .sns_link_list_item.icon_facebook a {
        max-width: 48px;
        max-height: 48px;
        width: 6.4vw;
        height: 6.4vw;
    }
}

.global_footer .ic_logo {
    display: flex;
    align-items: center;
    padding-top: 88px;
    margin: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .global_footer .ic_logo {
        padding-top: 75px;
    }
}

@media screen and (max-width: 600px) {
    .global_footer .ic_logo {
        padding-top: 37.5px;
    }
}

.global_footer .ic_logo img {
    display: block;
    width: 127px;
}

@media screen and (max-width: 1024px) {
    .global_footer .ic_logo img {
        width: 220px;
    }
}

@media screen and (max-width: 600px) {
    .global_footer .ic_logo img {
        width: 110px;
    }
}

.global_footer .ic_logo .ic_link_txt {
    color: white;
    text-decoration: underline;
    font-size: 13px;
    line-height: 1;
    margin-left: 27px;
    transition: opacity 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .global_footer .ic_logo .ic_link_txt {
        font-size: 2.4rem;
        margin-left: 30px;
    }
}

@media screen and (max-width: 600px) {
    .global_footer .ic_logo .ic_link_txt {
        font-size: 1.2rem;
        margin-left: 15px;
    }
}

@media screen and (min-width: 1023px) {
    .global_footer .ic_logo .ic_link_txt:hover {
        opacity: 0.8;
        transition: opacity 0.5s ease;
    }
}

.global_footer .global_footer_inr_columns {
    display: flex;
    align-items: flex-end;
    padding-top: 25px;
}

@media screen and (max-width: 1024px) {
    .global_footer .global_footer_inr_columns {
        flex-direction: column;
        padding-top: 30px;
    }
}

@media screen and (max-width: 600px) {
    .global_footer .global_footer_inr_columns {
        padding-top: 15px;
    }
}

.global_footer .global_footer_inr_columns .global_footer_inr_card {
    width: 50%;
}

@media screen and (max-width: 1024px) {
    .global_footer .global_footer_inr_columns .global_footer_inr_card {
        width: 100%;
    }

    .global_footer .global_footer_inr_columns .global_footer_inr_card:nth-last-child(1) {
        padding-top: 180px;
    }
}

@media screen and (max-width: 600px) {
    .global_footer .global_footer_inr_columns .global_footer_inr_card:nth-last-child(1) {
        padding-top: 90px;
    }
}

.global_footer .global_footer_inr_columns .global_footer_inr_card p {
    color: white;
    font-size: 14px;
    line-height: 1.7;
    letter-spacing: 0.4px;
    margin: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .global_footer .global_footer_inr_columns .global_footer_inr_card p {
        font-size: 2.4rem;
        line-height: 2;
    }
}

@media screen and (max-width: 600px) {
    .global_footer .global_footer_inr_columns .global_footer_inr_card p {
        font-size: 1.2rem;
    }
}

.global_footer .global_footer_inr_columns .global_footer_inr_card a {
    color: white;
}

.global_footer .global_footer_inr_columns .global_footer_inr_card .office_data_block_wrap {
    padding-top: 7px;
}

@media screen and (max-width: 1024px) {
    .global_footer .global_footer_inr_columns .global_footer_inr_card .office_data_block_wrap {
        padding-top: 20px;
    }
}

@media screen and (max-width: 600px) {
    .global_footer .global_footer_inr_columns .global_footer_inr_card .office_data_block_wrap {
        padding-top: 10px;
    }
}

.global_footer .global_footer_inr_columns .global_footer_inr_card .office_data_block_wrap .office_data_block {
    pointer-events: none;
}

.global_footer .global_footer_inr_columns .global_footer_inr_card .office_data_block_wrap .office_data_block .office_telephone_number a {
    text-decoration: none;
}

@media screen and (max-width: 1024px) {
    .global_footer .global_footer_inr_columns .global_footer_inr_card .office_data_block_wrap .office_data_block .office_telephone_number a {
        text-decoration: underline;
        pointer-events: auto;
    }
}

.global_footer .global_footer_inr_columns .global_footer_inr_card .office_data_block_wrap .for_sp {
    display: none;
}

@media screen and (max-width: 1024px) {
    .global_footer .global_footer_inr_columns .global_footer_inr_card .office_data_block_wrap .for_sp {
        display: block;
    }
}

.global_footer .global_footer_inr_columns .global_footer_inr_card .dmm_group_logo {
    line-height: 100%;
}

@media screen and (max-width: 600px) {
    .global_footer .global_footer_inr_columns .global_footer_inr_card .dmm_group_logo {
        padding-bottom: 5px;
    }
}

.global_footer .global_footer_inr_columns .global_footer_inr_card .dmm_group_logo a {
    display: block;
    position: relative;
    transition: opacity 0.5s ease;
}

.global_footer .global_footer_inr_columns .global_footer_inr_card .dmm_group_logo a img {
    /* max-width: 110px; */
    pointer-events: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-touch-callout: none;
    -moz-user-select: none;
    touch-callout: none;
    user-select: none;
}

@media screen and (max-width: 1024px) {
    .global_footer .global_footer_inr_columns .global_footer_inr_card .dmm_group_logo a img {
        max-width: 400px;
    }
}

@media screen and (max-width: 600px) {

    /* .global_footer .global_footer_inr_columns .global_footer_inr_card .dmm_group_logo a img{
                max-width: 85px; }
               } */
    .global_footer .global_footer_inr_columns .global_footer_inr_card .dmm_group_logo a img {
        max-width: 200px;
    }
}

@media screen and (min-width: 1023px) {
    .global_footer .global_footer_inr_columns .global_footer_inr_card .dmm_group_logo a:hover {
        opacity: 0.8;
        transition: opacity 0.5s ease;
    }
}

.global_footer .global_footer_inr_columns .global_footer_inr_card .dmm_group_logo a .none::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.global_footer .global_footer_inr_columns .global_footer_inr_card .jovea_logo {
    padding-top: 10px;
    line-height: 1;
    font-size: 0;
    width: 140px;
    margin-bottom: 5px;
}

@media screen and (max-width: 1024px) {
    .global_footer .global_footer_inr_columns .global_footer_inr_card .jovea_logo {
        padding-top: 20px;
        margin-bottom: 0;
        width: 206px;
    }
}

@media screen and (max-width: 600px) {
    .global_footer .global_footer_inr_columns .global_footer_inr_card .jovea_logo {
        padding-top: 10px;
        width: 103px;
    }
}

.global_footer .global_footer_inr_columns .global_footer_inr_card .jovea_logo a {
    transition: opacity 0.5s ease;
}

@media screen and (min-width: 1023px) {
    .global_footer .global_footer_inr_columns .global_footer_inr_card .jovea_logo a:hover {
        opacity: 0.8;
        transition: opacity 0.5s ease;
    }
}

.global_footer .global_footer_inr_columns .global_footer_inr_card .global_footer_inr_card_center {
    width: 305px;
    margin: 0 auto 0 auto;
}

@media screen and (max-width: 1024px) {
    .global_footer .global_footer_inr_columns .global_footer_inr_card .global_footer_inr_card_center {
        width: 100%;
    }
}

.global_footer .copy {
    display: block;
    padding-top: 100px;
    color: #fff;
    font-size: 0.75rem;
    letter-spacing: 0.4px;
}

@media screen and (max-width: 1024px) {
    .global_footer .copy {
        padding-top: 120px;
        font-size: 2.2rem;
    }
}

@media screen and (max-width: 600px) {
    .global_footer .copy {
        padding-top: 60px;
        font-size: 1.1rem;
    }
}

.company_info {
    display: flex;
    justify-content: center;
    gap: 70px;
    width: 90%;
    margin: 0 auto;
    padding: 100px 0;
}

.company_info_ttl {
    font-size: 14px;
    padding-bottom: 24px;
    font-weight: bold;
}

.company_info_address {
    font-size: 14px;
    line-height: 26px;
}

.company_info_right {
    display: flex;
    justify-content: start;
    gap: 35px;
}

.company_info_address a {
    color: #333;
}

.company_info_left {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.company_info_left img {
    width: 157px;
}

.company_info_left a {
    font-size: 14px;
    font-weight: 300;
    line-height: 2;
    color: #000;
}

@media screen and (max-width: 768px) {
    .company_info {
        display: block;
        width: 100%;
        padding: 32px 0 60px;
        text-align: center;
        gap: 32px;
    }

    .company_info_ttl {
        font-size: 14px;
        padding-bottom: 17px;
    }

    .company_info_left img {
        width: 156px;
    }

    .company_info_left {
        align-items: center;
        gap: 32px;
    }

    .company_info_right {
        flex-direction: column;
        align-items: center;
        gap: 32px;
    }
}

.mb2-site-footer__footer {
    padding: 20px 40px;
    background-color: #000000;
}

@media screen and (max-width: 767px) {
    .mb2-site-footer__footer {
        padding: 24px;
    }
}

.mb2-site-footer__footer__inner {
    max-width: 1160px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .mb2-site-footer__footer__inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}

.mb2-site-footer__copyright {
    color: #ffffff;
    font-size: 13px;
    font-family: "Heebo", sans-serif;
}

@media screen and (max-width: 767px) {
    .mb2-site-footer__copyright {
        font-size: 11px;
        margin-top: 16px;
    }
}

.page_top_btn {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    padding: 0;
}

.page_top_btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    font-size: 0;
    line-height: 1;
    width: 85px;
    height: 85px;
    background-color: #294AD9;
    margin: 0;
    padding: 0;
    scroll-behavior: smooth;
    transition: opacity 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .page_top_btn a {
        height: 100px;
        width: 100px;
    }
}

@media screen and (max-width: 600px) {
    .page_top_btn a {
        height: 50px;
        width: 50px;
    }
}

.page_top_btn a::before {
    content: "";
    display: block;
    position: absolute;
    height: 25px;
    width: 6px;
    background-image: url("../image/common/btn_pagetop_arw.svg");
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
}

@media screen and (max-width: 600px) {
    .page_top_btn a::before {
        height: 12.5px;
        width: 3px;
    }
}

@media screen and (min-width: 1023px) {
    .page_top_btn a:hover {
        opacity: 0.8;
        transition: opacity 0.5s ease;
    }
}

html {
    font-size: 62.5%;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 400;
    font-feature-settings: "palt";
    letter-spacing: 1.2px;
}

.ma_b0 {
    margin-bottom: 0 !important;
}

figure {
    margin: 0 0 0 0;
}

figure img {
    display: block;
    width: 100%;
}

.for_pc {
    display: block !important;
}

@media screen and (max-width: 1024px) {
    .for_pc {
        display: none !important;
    }
}

.for_sp {
    display: none !important;
}

@media screen and (max-width: 1024px) {
    .for_sp {
        display: block !important;
    }
}

.wrapper {
    width: calc(100% - 200px);
    max-width: 1200px;
    margin: 0 auto 0 auto;
}

.wrapper.tb_wrap_none {
    padding-bottom: 80px;
}

@media screen and (max-width: 1024px) {
    .wrapper {
        width: calc(100% - 100px);
    }

    .wrapper.tb_wrap_none {
        width: 100%;
        padding-bottom: 40px;
    }
}

@media screen and (max-width: 600px) {
    .wrapper {
        width: calc(100% - 50px);
    }
}

.wrapper2 {
    width: calc(100% - 200px);
    max-width: 1080px;
    margin: 0 auto 0 auto;
}

@media screen and (max-width: 1024px) {
    .wrapper2 {
        width: calc(100% - 100px);
    }

    .wrapper2.tb_wrap_none {
        width: 100%;
    }
}

@media screen and (max-width: 600px) {
    .wrapper2 {
        width: calc(100% - 50px);
    }
}

@media screen and (max-width: 1024px) {
    .wrapper_tb {
        width: calc(100% - 100px);
        margin: 0 auto 0 auto;
    }
}

@media screen and (max-width: 600px) {
    .wrapper_tb {
        width: calc(100% - 50px);
        margin: 0 auto 0 auto;
    }
}

.more_link_wrap {
    display: block;
}

.more_link_wrap .more_link {
    display: inline-block;
    color: #294AD9;
    position: relative;
    text-decoration: none;
    font-size: 1.4rem;
    font-family: "Lato", sans-serif;
    font-weight: 400;
    letter-spacing: 1.2px;
    padding-right: 50px;
    transition: opacity 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .more_link_wrap .more_link {
        font-size: 2.2rem;
        padding-right: 63px;
    }
}

@media screen and (max-width: 600px) {
    .more_link_wrap .more_link {
        padding-right: 32.1px;
        font-size: 1.1rem;
    }
}

.more_link_wrap .more_link::after {
    content: "";
    display: block;
    position: absolute;
    top: 4px;
    right: 0;
    width: 40px;
    height: 6px;
    background-image: url(../image/common/more_link_arw.svg);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 40px 6px;
}

@media screen and (max-width: 1024px) {
    .more_link_wrap .more_link::after {
        top: calc(50% - 4px);
        width: 58px;
        height: 8px;
        background-size: contain;
    }
}

@media screen and (max-width: 600px) {
    .more_link_wrap .more_link::after {
        top: calc(50% - 2px);
        width: 29px;
        height: 4px;
    }
}

@media screen and (min-width: 1023px) {
    .more_link_wrap .more_link:hover {
        opacity: 0.6;
        transition: opacity 0.5s ease;
    }
}

.demo_bunner {
    display: block;
    position: fixed;
    z-index: 11;
    right: 20px;
    bottom: 24px;
}

@media screen and (max-width: 1024px) {
    .demo_bunner {
        right: 25px;
        bottom: 25px;
        transition: bottom 0.2s ease;
    }
}

@media screen and (max-width: 600px) {
    .demo_bunner {
        right: 15px;
        bottom: 20px;
    }
}

@media screen and (max-width: 1024px) {
    .demo_bunner.up {
        bottom: 150px;
    }
}

@media screen and (max-width: 600px) {
    .demo_bunner.up {
        bottom: 100px;
    }
}

.demo_bunner .demo_img {
    display: block;
    position: relative;
    transition: opacity 0.5s ease;
}

.demo_bunner .demo_img img {
    image-rendering: -webkit-optimize-contrast;
}

.demo_bunner .demo_img img.for_pc {
    width: 167px;
}

@media screen and (max-width: 1024px) {
    .demo_bunner .demo_img img.for_sp {
        width: 200px;
    }
}

@media screen and (max-width: 600px) {
    .demo_bunner .demo_img img.for_sp {
        width: 100px;
    }
}

.demo_bunner .demo_img::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url("../image/common/demo_btn_pc_white.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.5s ease;
}

@media screen and (min-width: 1023px) {
    .demo_bunner .demo_img:hover::before {
        opacity: 0.4;
        transition: opacity 0.5s ease;
    }
}

.drw_info_box {
    display: none;
    position: fixed;
    color: black;
    bottom: 0;
    left: 0;
    width: 100%;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
    background-color: white;
    height: 130px;
    z-index: 9999;
}

@media screen and (max-width: 600px) {
    .drw_info_box {
        height: 65px;
    }
}

.drw_info_box .drw_info_box_inr {
    height: 100%;
}

.drw_info_box .drw_info_box_list {
    display: flex;
    align-items: center;
    justify-content: center;
    list-style: none;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    height: 100%;
}

.drw_info_box .drw_info_box_list .box_list_item {
    width: calc(50% - 40px);
}

@media screen and (max-width: 600px) {
    .drw_info_box .drw_info_box_list .box_list_item {
        width: calc(50% - 20px);
    }
}

.drw_info_box .drw_info_box_list .box_list_item a {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background-color: black;
    border-radius: 5px;
    color: white;
    font-size: 2.1rem;
    height: 75px;
}

@media screen and (max-width: 600px) {
    .drw_info_box .drw_info_box_list .box_list_item a {
        font-size: 1.05rem;
        height: 37.5px;
    }
}

@media screen and (max-width: 330px) {
    .drw_info_box .drw_info_box_list .box_list_item a {
        font-size: 1rem;
    }
}

.drw_info_box .drw_info_box_list .box_list_item a span {
    position: relative;
    padding-left: 4.533vw;
}

.drw_info_box .drw_info_box_list .box_list_item a span::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
}

.drw_info_box .drw_info_box_list .box_list_item.document_btn {
    margin-left: 0;
}

.drw_info_box .drw_info_box_list .box_list_item.document_btn a span::before {
    background-image: url(../image/common/icon_document_dl.svg);
    width: 18px;
    height: 16px;
    top: calc(50% - 8px);
}

@media screen and (max-width: 600px) {
    .drw_info_box .drw_info_box_list .box_list_item.document_btn a span::before {
        width: 12px;
        height: 11px;
        top: calc(50% - 5.5px);
    }
}

.drw_info_box .drw_info_box_list .box_list_item.contact_btn {
    margin-left: 1.6vw;
}

.drw_info_box .drw_info_box_list .box_list_item.contact_btn a span::before {
    background-image: url(../image/common/icon_mail_contact.svg);
    width: 18px;
    height: 17px;
    top: calc(50% - 8.5px);
}

@media screen and (max-width: 600px) {
    .drw_info_box .drw_info_box_list .box_list_item.contact_btn a span::before {
        width: 9px;
        height: 8.5px;
        top: calc(50% - 4.25px);
    }
}

.top_h2 {
    margin: 0;
    padding: 0;
    font-family: "Lato", sans-serif;
    font-weight: 400;
    font-size: 34px;
    line-height: 1;
    letter-spacing: 2.6px;
}

@media screen and (max-width: 1024px) {
    .top_h2 {
        font-size: 4.6rem;
    }
}

@media screen and (max-width: 600px) {
    .top_h2 {
        font-size: 2.3rem;
    }
}

.top_h2 span {
    display: block;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    font-size: 1.4rem;
    letter-spacing: 1.5px;
    padding-top: 15px;
}

@media screen and (max-width: 1024px) {
    .top_h2 span {
        font-size: 2.6rem;
    }
}

@media screen and (max-width: 600px) {
    .top_h2 span {
        font-size: 1.3rem;
        padding-top: 7.5px;
    }
}

.main_kv {
    position: relative;
    height: calc(100vh - 85px);
    min-height: 730px;
}

@media screen and (max-width: 1024px) {
    .main_kv {
        min-height: calc(100vh - 105px);
        height: auto;
    }
}

@media screen and (max-width: 600px) {
    .main_kv {
        min-height: calc(100vh - 70px);
        height: auto;
    }
}

.main_kv .bx-wrapper {
    border: none;
    box-shadow: none;
    margin-bottom: 0;
}

.main_kv .bx-wrapper .bx-pager {
    padding: 0 0 0 0;
}

.main_kv .bx-wrapper .bx-pager.bx-default-pager a {
    width: 6px;
    height: 6px;
    background: #b7c3fd;
}

@media screen and (max-width: 1024px) {
    .main_kv .bx-wrapper .bx-pager.bx-default-pager a {
        width: 1.6vw;
        height: 1.6vw;
        margin: 0 1vw;
    }
}

.main_kv .bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #294AD9;
}

.main_kv .bx-viewport {
    overflow: inherit !important;
}

.main_kv .bx-controls {
    max-width: 1200px;
    position: relative;
    width: calc(100% - 200px);
    margin: 0 auto 0 auto;
    bottom: 30px;
    z-index: 999;
}

@media screen and (max-width: 1024px) {
    .main_kv .bx-controls {
        width: 33.07vw;
    }
}

.main_kv .bx-controls .bx-controls-direction,
.main_kv .bx-controls .bx-pager {
    position: absolute;
    width: 124px;
    bottom: 0;
}

@media screen and (max-width: 1024px) {

    .main_kv .bx-controls .bx-controls-direction,
    .main_kv .bx-controls .bx-pager {
        width: 33.07vw;
    }
}

.main_kv .bx-controls.controls_white .bx-pager.bx-default-pager a {
    animation: lightblue_dot 1s ease 0s forwards;
}

.main_kv .bx-controls.controls_white .bx-pager.bx-default-pager a.active {
    animation: blue_dot 1s ease 0s forwards;
}

.main_kv .bx-controls.controls_white .bx-controls-direction a.bx-prev::before {
    animation: arr_left 1s ease 0s forwards;
}

.main_kv .bx-controls.controls_white .bx-controls-direction a.bx-next::before {
    animation: arr_right 1s ease 0s forwards;
}

.main_kv .bx-controls .bx-controls-direction {
    bottom: 20px;
}

@media screen and (max-width: 1024px) {
    .main_kv .bx-controls .bx-controls-direction {
        bottom: 2.2vw;
    }
}

.main_kv .bx-controls .bx-controls-direction a {
    display: flex;
    align-items: center;
    justify-content: center;
    bottom: 25px;
    z-index: 99;
    margin: 0 0 0 0;
    background: transparent;
}

@media screen and (max-width: 1024px) {
    .main_kv .bx-controls .bx-controls-direction a {
        width: auto;
        height: 1.6vw;
        bottom: 0;
    }
}

.main_kv .bx-controls .bx-controls-direction a::before {
    content: "";
    display: block;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    transform: rotate(0deg);
    width: 25px;
    height: 6px;
    background-color: transparent;
    color: transparent;
}

@media screen and (max-width: 1024px) {
    .main_kv .bx-controls .bx-controls-direction a::before {
        width: 6.667vw;
        height: 1.6vw;
    }
}

.main_kv .bx-controls .bx-controls-direction a.bx-prev {
    left: 0;
}

.main_kv .bx-controls .bx-controls-direction a.bx-prev::before {
    background-image: url("../image/common/main_slide_arw_prev.svg");
}

.main_kv .bx-controls .bx-controls-direction a.bx-next {
    right: 0;
}

.main_kv .bx-controls .bx-controls-direction a.bx-next::before {
    background-image: url("../image/common/main_slide_arw_next.svg");
}

.main_kv01 {
    height: 100%;
    width: 100%;
}

.main_kv01::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #f2f4fd;
    top: 0;
    left: 0;
    right: 0;
    z-index: -1;
}

.main_kv01 .main_kv01_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    height: calc(100vh - 85px);
    min-height: 730px;
    width: calc(100% - 200px);
    margin: 0 auto 0 auto;
}

@media screen and (max-width: 1024px) {
    .main_kv01 .main_kv01_wrap {
        flex-direction: column;
        justify-content: center;
        height: auto;
        min-height: calc(100vh - 105px);
        width: calc(100% - 176px);
        padding: 3vw 0 5vw 0;
    }
}

@media screen and (max-width: 600px) {
    .main_kv01 .main_kv01_wrap {
        min-height: calc(100vh - 70px);
        width: calc(100% - 80px);
        padding: 30px 0 60px 0;
    }
}

@media screen and (max-width: 330px) {
    .main_kv01 .main_kv01_wrap {
        width: calc(100% - 40px);
    }
}

.main_kv01 .kv_cont01 {
    width: 50%;
}

@media screen and (max-width: 1024px) {
    .main_kv01 .kv_cont01 {
        width: 100%;
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 600px) {
    .main_kv01 .kv_cont01 {
        margin-bottom: 15px;
    }
}

.main_kv01 .kv_cont01 .kv_cont01_cols h1 {
    transform: translateY(30px);
    opacity: 0;
    margin: 0 0 0 0;
}

.main_kv01 .kv_cont01 .kv_cont01_cols h1 span {
    display: block;
}

@media screen and (max-width: 1024px) {
    .main_kv01 .kv_cont01 .kv_cont01_cols h1 span {
        text-align: center;
    }
}

.main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_01 {
    font-size: 2.6rem;
    line-height: 1.1;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
}

@media screen and (max-width: 1024px) {
    .main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_01 {
        font-size: 2.8rem;
    }
}

@media screen and (max-width: 600px) {
    .main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_01 {
        font-size: 1.4rem;
    }
}

@media screen and (max-width: 330px) {
    .main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_01 {
        font-size: 1.2rem;
    }
}

.main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_02 {
    padding-top: 30px;
}

@media screen and (max-width: 1024px) {
    .main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_02 {
        padding-top: 30px;
    }
}

@media screen and (max-width: 600px) {
    .main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_02 {
        padding-top: 15px;
    }
}

@media screen and (max-width: 330px) {
    .main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_02 {
        padding-top: 10px;
    }
}

.main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_02 img {
    display: block;
    width: 100%;
    max-width: 559px;
}

@media screen and (max-width: 1024px) {
    .main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_02 img {
        max-width: none;
    }
}

.main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_03 {
    font-size: 1.8rem;
    line-height: 1.6;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    padding-top: 27px;
}

@media screen and (max-width: 1024px) {
    .main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_03 {
        font-size: 2.2rem;
        padding-top: 25px;
    }
}

@media screen and (max-width: 600px) {
    .main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_03 {
        font-size: 1.1rem;
        padding-top: 12.5px;
    }
}

.main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_04 {
    font-size: 0.9rem;
    line-height: 2.1;
    font-family: "ヒラギノ角ゴ Pro W3", "HiraKakuPro-W3", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
}

@media screen and (max-width: 1024px) {
    .main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_04 {
        font-size: 1.1rem;
    }
}

@media screen and (max-width: 600px) {
    .main_kv01 .kv_cont01 .kv_cont01_cols h1 span.title_04 {
        font-size: 0.55rem;
        font-weight: 400;
        margin-top: 5px;
    }
}

.main_kv01 .kv_cont01 .kv_cont01_link {
    display: flex;
    padding-top: 50px;
}

@media screen and (max-width: 1024px) {
    .main_kv01 .kv_cont01 .kv_cont01_link {
        display: none;
    }
}

.main_kv01 .kv_cont01 .kv_cont01_link a.info_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #294AD9;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    color: white;
    text-decoration: none;
    border: solid 2px transparent;
    border-radius: 0.667vh;
    font-size: 1.4rem;
    width: calc(50% - 20px);
    max-width: 200px;
    height: 50px;
    line-height: 5.556vh;
    opacity: 0;
    transform: translateY(20px);
    transition: border 0.5s ease, color 0.5s ease, background-color 0.5s ease;
}

.main_kv01 .kv_cont01 .kv_cont01_link a.info_btn span {
    position: relative;
    padding-left: 25px;
}

.main_kv01 .kv_cont01 .kv_cont01_link a.info_btn span::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: contain;
}

.main_kv01 .kv_cont01 .kv_cont01_link a.info_btn.contact {
    margin-right: 9px;
}

.main_kv01 .kv_cont01 .kv_cont01_link a.info_btn.contact span::before {
    background-image: url(../image/common/icon_document_dl.svg);
    width: 11px;
    height: 11px;
    margin-top: -0.111vh;
}

.main_kv01 .kv_cont01 .kv_cont01_link a.info_btn.demoform span::before {
    background-image: url(../image/common/icon_pc.svg);
    width: 13px;
    height: 10px;
}

@media screen and (min-width: 1023px) {
    .main_kv01 .kv_cont01 .kv_cont01_link a.info_btn:hover {
        border: solid 2px #294AD9;
        background-color: white;
        color: #294AD9;
        transition: border 0.5s ease, color 0.5s ease, background-color 0.5s ease;
    }

    .main_kv01 .kv_cont01 .kv_cont01_link a.info_btn:hover.contact span::before {
        background-image: url(../image/common/icon_document_dl_blue.svg);
    }

    .main_kv01 .kv_cont01 .kv_cont01_link a.info_btn:hover.demoform span::before {
        background-image: url(../image/common/icon_pc_blue.svg);
    }
}

.main_kv01 .kv_cont02 {
    display: flex;
    align-items: center;
    flex-direction: column;
    width: 50%;
}

@media screen and (max-width: 1024px) {
    .main_kv01 .kv_cont02 {
        width: 100%;
    }
}

.main_kv01 .kv_cont02 .img_col {
    position: relative;
    width: 63vh;
    height: 67.6vh;
}

@media screen and (max-width: 1024px) {
    .main_kv01 .kv_cont02 .img_col {
        width: calc(100% - 160px);
        height: auto;
    }
}

@media screen and (max-width: 600px) {
    .main_kv01 .kv_cont02 .img_col {
        width: calc(100% - 80px);
    }
}

.main_kv01 .kv_cont02 .img_col img {
    display: block;
    width: 100%;
    opacity: 0;
}

/* @media screen and (max-width: 1024px){
          .main_kv01 .kv_cont02 .img_col img{
            display: block;
            width: 25vw;
            margin: auto;
            opacity: 0; } }
        @media screen and (max-width: 600px){
          .main_kv01 .kv_cont02 .img_col img{
            display: block;
            width: 52vw;
            margin: auto;
            opacity: 0; } } */
.main_kv01 .kv_cont02 .img_col .moji01::before,
.main_kv01 .kv_cont02 .img_col .moji01::after,
.main_kv01 .kv_cont02 .img_col .moji02::before,
.main_kv01 .kv_cont02 .img_col .moji02::after,
.main_kv01 .kv_cont02 .img_col .moji03::before,
.main_kv01 .kv_cont02 .img_col .moji03::after,
.main_kv01 .kv_cont02 .img_col .moji04::before,
.main_kv01 .kv_cont02 .img_col .moji04::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
    height: 100%;
    z-index: 9;
    opacity: 0;
}

.main_kv01 .kv_cont02 .img_col .moji01::before {
    background-image: url("../image/top/main_img_o.png");
}

.main_kv01 .kv_cont02 .img_col .moji01::after {
    background-image: url("../image/top/main_img_n.png");
}

.main_kv01 .kv_cont02 .img_col .moji02::before {
    background-image: url("../image/top/main_img_l.png");
}

.main_kv01 .kv_cont02 .img_col .moji02::after {
    background-image: url("../image/top/main_img_i.png");
}

.main_kv01 .kv_cont02 .img_col .moji03::before {
    background-image: url("../image/top/main_img_n2.png");
}

.main_kv01 .kv_cont02 .img_col .moji03::after {
    background-image: url("../image/top/main_img_e.png");
}

.main_kv01 .kv_cont02 .img_col .moji04::before {
    background-image: url("../image/top/main_img_ex.png");
}

.main_kv01 .kv_cont02 .img_col .moji04::after {
    display: none;
}

.main_kv01 .kv_cont02 p {
    display: block;
    font-size: 1.087vh;
    line-height: 1.6;
    letter-spacing: 1px;
    font-family: "Roboto", sans-serif;
    font-weight: 400;
    margin: 0 0 0 0;
    padding-top: 20px;
    opacity: 0;
}

@media screen and (max-width: 1024px) {
    .main_kv01 .kv_cont02 p {
        font-size: 0.97rem;
        padding-top: 15px;
    }
}

@media screen and (max-width: 600px) {
    .main_kv01 .kv_cont02 p {
        padding-top: 7.5px;
    }
}

.main_kv02 {
    height: 100%;
    width: 100%;
    background-image: url("../image/top/main_img_kv01.png");
    background-position: right center;
    background-repeat: no-repeat;
    background-size: cover;
}

@media screen and (max-width: 1024px) {
    .main_kv02 {
        background-image: url("../image/top/main_img_kv01_sp.png");
        background-position: center;
    }
}

.main_kv02::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #294AD9;
    top: 0;
    left: 0;
    right: 0;
    z-index: -1;
}

.main_kv02 .main_kv02_wrap {
    display: flex;
    justify-content: center;
    flex-direction: column;
    max-width: 1045px;
    height: calc(100vh - 85px);
    min-height: 730px;
    width: calc(100% - 100px);
    margin: 0 auto 0 auto;
}

@media screen and (max-width: 1024px) {
    .main_kv02 .main_kv02_wrap {
        height: auto;
        min-height: calc(100vh - 105px);
        width: calc(100% - 120px);
        padding: 3vw 0 5vw 0;
    }
}

@media screen and (max-width: 600px) {
    .main_kv02 .main_kv02_wrap {
        min-height: calc(100vh - 70px);
        width: calc(100% - 40px);
        padding: 30px 0 60px 0;
    }
}

.main_kv02 p {
    margin: 0 0 0 0;
}

.main_kv02 .kv_cont01 {
    margin-bottom: 15px;
    opacity: 0;
    transform: translateY(20px);
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont01 {
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 600px) {
    .main_kv02 .kv_cont01 {
        margin-bottom: 15px;
    }
}

.main_kv02 .kv_cont01 .title_03 {
    display: block;
    color: white;
}

.main_kv02 .kv_cont01 .title_03.sp {
    display: none;
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont01 .title_03 {
        text-align: center;
        margin-top: 30px;
        opacity: 0;
        transform: translateY(20px);
    }

    .main_kv02 .kv_cont01 .title_03.pc {
        display: none;
    }

    .main_kv02 .kv_cont01 .title_03.sp {
        display: block;
    }
}

.main_kv02 .kv_cont01 .title_03 small {
    font-size: 1.3rem;
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont01 .title_03 small {
        font-size: 2.2rem;
    }
}

@media screen and (max-width: 600px) {
    .main_kv02 .kv_cont01 .title_03 small {
        font-size: 1.1rem;
    }
}

.main_kv02 .kv_cont01 .kv_cont01_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
}

.main_kv02 .kv_cont01 .title_circle {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #fcee21;
    min-width: 130px;
    min-height: 130px;
    border-radius: 50%;
    margin-right: 20px;
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont01 .title_circle {
        min-width: 164px;
        min-height: 164px;
    }
}

@media screen and (max-width: 600px) {
    .main_kv02 .kv_cont01 .title_circle {
        min-width: 82px;
        min-height: 82px;
        margin-right: 10px;
    }
}

.main_kv02 .kv_cont01 .title_circle .title_circle_text {
    font-size: 1.8rem;
    line-height: 1.2;
    text-align: center;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont01 .title_circle .title_circle_text {
        font-size: 2.2rem;
    }
}

@media screen and (max-width: 600px) {
    .main_kv02 .kv_cont01 .title_circle .title_circle_text {
        font-size: 1.1rem;
    }
}

.main_kv02 .kv_cont01 .title_circle .title_circle_text .lato {
    font-family: "Lato", sans-serif;
    font-weight: 400;
    font-size: 2.6rem;
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont01 .title_circle .title_circle_text .lato {
        font-size: 3.2rem;
    }
}

@media screen and (max-width: 600px) {
    .main_kv02 .kv_cont01 .title_circle .title_circle_text .lato {
        font-size: 1.6rem;
    }
}

.main_kv02 .kv_cont01 .title_text {
    display: block;
    color: #fcee21;
    line-height: 1.3;
}

.main_kv02 .kv_cont01 .title_text span.title_01,
.main_kv02 .kv_cont01 .title_text span.title_02 {
    font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo,
        "sans-serif";
    font-weight: 700;
}

.main_kv02 .kv_cont01 .title_text span.title_01 {
    font-size: 3.2rem;
    padding-top: 15px;
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont01 .title_text span.title_01 {
        font-size: 3rem;
    }
}

@media screen and (max-width: 600px) {
    .main_kv02 .kv_cont01 .title_text span.title_01 {
        font-size: 1.5rem;
        padding-top: 10px;
    }
}

@media screen and (max-width: 330px) {
    .main_kv02 .kv_cont01 .title_text span.title_01 {
        font-size: 1.1rem;
    }
}

.main_kv02 .kv_cont01 .title_text span.title_01 span {
    position: relative;
}

.main_kv02 .kv_cont01 .title_text span.title_01 span::before {
    content: "";
    display: block;
    position: absolute;
    background-color: #fcee21;
    height: 3px;
    width: 3px;
    border-radius: 50%;
    top: -15px;
    left: calc(50% - 1.5px);
}

@media screen and (max-width: 600px) {
    .main_kv02 .kv_cont01 .title_text span.title_01 span::before {
        height: 1.5px;
        width: 1.5px;
        left: calc(50% - 0.75px);
        top: -7.5px;
    }
}

.main_kv02 .kv_cont01 .title_text span.title_02 {
    display: block;
    font-size: 5.1rem;
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont01 .title_text span.title_02 {
        font-size: 4.7rem;
    }
}

@media screen and (max-width: 600px) {
    .main_kv02 .kv_cont01 .title_text span.title_02 {
        font-size: 2.35rem;
    }
}

@media screen and (max-width: 330px) {
    .main_kv02 .kv_cont01 .title_text span.title_02 {
        font-size: 2rem;
    }
}

.main_kv02 .kv_cont01 .title_text span.title_02 br {
    display: none;
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont01 .title_text span.title_02 br {
        display: block;
    }
}

.main_kv02 .kv_cont02 {
    display: flex;
    justify-content: space-between;
    color: white;
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont02 {
        flex-direction: column-reverse;
    }
}

.main_kv02 .kv_cont02 .kv_cont02_wrap {
    width: 350px;
    opacity: 0;
    transform: translateY(20px);
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont02 .kv_cont02_wrap {
        width: 100%;
    }
}

.main_kv02 .kv_cont02 .kv_cont02_img {
    position: relative;
    width: calc(100% - 350px);
    opacity: 0;
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont02 .kv_cont02_img {
        width: 100%;
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 600px) {
    .main_kv02 .kv_cont02 .kv_cont02_img {
        margin-bottom: 10px;
    }
}

.main_kv02 .kv_cont02 .kv_cont02_img img {
    margin: 0 auto 0 auto;
}

.main_kv02 .kv_cont02 .kv_cont02_img::before,
.main_kv02 .kv_cont02 .kv_cont02_img::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
    height: 100%;
    opacity: 0;
    transform: translateY(20px);
}

.main_kv02 .kv_cont02 .kv_cont02_img::before {
    background-image: url("../image/top/main_img_kv03.png");
}

.main_kv02 .kv_cont02 .kv_cont02_img::after {
    background-image: url("../image/top/main_img_kv04.png");
}

.main_kv02 .kv_cont02 .kv_cont02_img .kv_cont02_img2::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
    height: 100%;
    background-image: url("../image/top/main_img_kv05.png");
    opacity: 0;
    transform: translateY(20px);
}

.main_kv02 .kv_cont02 .title_text {
    text-align: center;
    margin: 25px 0 20px 0;
    font-size: 2.1rem;
    line-height: 1.2;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont02 .title_text {
        display: none;
    }
}

.main_kv02 .kv_cont02 .kv_cont02_list {
    padding: 0 0 0 0;
    margin: 0 0 30px 0;
    list-style: none;
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont02 .kv_cont02_list {
        display: none;
    }
}

.main_kv02 .kv_cont02 .kv_cont02_list .kv_cont02_list_li {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.5rem;
    width: 100%;
    height: 40px;
    border: solid 1px white;
    border-radius: 20px;
    margin-bottom: 10px;
}

.main_kv02 .kv_cont02 .kv_cont01_link {
    background-color: white;
    height: 50px;
    width: 100%;
    border-radius: 5px;
    opacity: 0;
    transform: translateY(20px);
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont02 .kv_cont01_link {
        height: 80px;
        max-width: 550px;
        margin: 0 auto;
    }
}

@media screen and (max-width: 600px) {
    .main_kv02 .kv_cont02 .kv_cont01_link {
        height: 40px;
        max-width: 275px;
    }
}

.main_kv02 .kv_cont02 .kv_cont01_link a {
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    color: black;
    font-size: 1.4rem;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    width: 100%;
    height: 100%;
    transition: background-color 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont02 .kv_cont01_link a {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .main_kv02 .kv_cont02 .kv_cont01_link a {
        font-size: 1.2rem;
    }
}

.main_kv02 .kv_cont02 .kv_cont01_link a::after {
    content: "";
    display: block;
    background-image: url("../image/top/kv_arr_black.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 23px;
    height: 5px;
    margin-left: 15px;
}

@media screen and (max-width: 1024px) {
    .main_kv02 .kv_cont02 .kv_cont01_link a::after {
        width: 58px;
        height: 7.5px;
    }
}

@media screen and (max-width: 600px) {
    .main_kv02 .kv_cont02 .kv_cont01_link a::after {
        width: 29px;
        height: 3.25px;
        margin-left: 7.5px;
    }
}

@media screen and (min-width: 1023px) {
    .main_kv02 .kv_cont02 .kv_cont01_link a:hover {
        background-color: #fcee21;
        transition: background-color 0.5s ease;
    }
}

.main_kv03 {
    height: 100%;
    width: 100%;
}

.main_kv03::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #e9edfb;
    top: 0;
    left: 0;
    right: 0;
    z-index: -1;
}

.main_kv03 .main_kv03_wrap {
    display: flex;
    justify-content: center;
    flex-direction: column;
    max-width: 1050px;
    height: calc(100vh - 85px);
    min-height: 730px;
    width: calc(100% - 100px);
    margin: 0 auto 0 auto;
}

@media screen and (max-width: 1024px) {
    .main_kv03 .main_kv03_wrap {
        height: auto;
        min-height: calc(100vh - 105px);
        width: calc(100% - 120px);
        padding: 3vw 0 5vw 0;
    }
}

@media screen and (max-width: 600px) {
    .main_kv03 .main_kv03_wrap {
        min-height: calc(100vh - 70px);
        width: calc(100% - 40px);
        padding: 30px 0 60px 0;
    }
}

.main_kv03 p {
    margin: 0 0 0 0;
}

.main_kv03 .kv_cont01 {
    position: relative;
    max-width: 870px;
    width: 100%;
    left: 10px;
    margin: 0 auto 0 auto;
    z-index: 9;
    opacity: 0;
    transform: translateY(20px);
}

@media screen and (max-width: 1024px) {
    .main_kv03 .kv_cont01 {
        text-align: center;
        left: 0;
    }
}

.main_kv03 .kv_cont01 .title_01 {
    display: block;
}

@media screen and (max-width: 1024px) {
    .main_kv03 .kv_cont01 .title_01 {
        margin-bottom: 10px;
    }
}

.main_kv03 .kv_cont01 .title_01 img {
    width: 268px;
}

@media screen and (max-width: 1024px) {
    .main_kv03 .kv_cont01 .title_01 img {
        width: calc(100% - 80px);
        max-width: 324px;
        margin: 0 auto;
    }
}

.main_kv03 .kv_cont01 .title_02 {
    display: block;
    color: #294AD9;
}

.main_kv03 .kv_cont01 .title_02 .eng_txt {
    font-family: "Lato", sans-serif;
    font-weight: 300;
    font-size: 7.1rem;
    letter-spacing: 0.2px;
    font-style: italic;
    margin-right: 30px;
}

@media screen and (max-width: 1024px) {
    .main_kv03 .kv_cont01 .title_02 .eng_txt {
        display: block;
        font-size: 9.4rem;
        margin: 0 0 30px 0;
    }
}

@media screen and (max-width: 600px) {
    .main_kv03 .kv_cont01 .title_02 .eng_txt {
        font-size: 4.7rem;
        margin: 0 0 15px 0;
    }
}

@media screen and (max-width: 330px) {
    .main_kv03 .kv_cont01 .title_02 .eng_txt {
        font-size: 4rem;
    }
}

.main_kv03 .kv_cont01 .title_02 .kana_txt {
    font-size: 1.9rem;
    font-style: normal;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
}

@media screen and (max-width: 1024px) {
    .main_kv03 .kv_cont01 .title_02 .kana_txt {
        display: block;
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .main_kv03 .kv_cont01 .title_02 .kana_txt {
        font-size: 1.2rem;
    }
}

@media screen and (max-width: 330px) {
    .main_kv03 .kv_cont01 .title_02 .kana_txt {
        font-size: 1.1rem;
    }
}

.main_kv03 .kv_cont01 .title_03 {
    display: block;
    font-size: 1.3rem;
    line-height: 1.8;
    opacity: 0;
    transform: translateY(20px);
}

@media screen and (max-width: 1024px) {
    .main_kv03 .kv_cont01 .title_03 {
        display: none;
    }
}

.main_kv03 .kv_cont01 .kv_cont01_list {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 0 20px;
    padding: 0 0 0 0;
    list-style: none;
}

@media screen and (max-width: 1024px) {
    .main_kv03 .kv_cont01 .kv_cont01_list {
        margin: 35px auto 0 auto;
    }
}

@media screen and (max-width: 600px) {
    .main_kv03 .kv_cont01 .kv_cont01_list {
        margin-top: 17.5px;
    }
}

.main_kv03 .kv_cont01 .kv_cont01_list .kv_cont01_list_li {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #294AD9;
    color: white;
    text-align: center;
    font-size: 1.3rem;
    line-height: 1.5;
    border-radius: 50%;
    height: 115px;
    width: 115px;
    opacity: 0;
}

@media screen and (max-width: 1024px) {
    .main_kv03 .kv_cont01 .kv_cont01_list .kv_cont01_list_li {
        font-size: 2.2rem;
        max-width: 171px;
        max-height: 171px;
        width: 33vw;
        height: 33vw;
    }
}

@media screen and (max-width: 600px) {
    .main_kv03 .kv_cont01 .kv_cont01_list .kv_cont01_list_li {
        font-size: 1.1rem;
        width: calc(33vw - 20px);
        height: calc(33vw - 20px);
    }
}

@media screen and (max-width: 330px) {
    .main_kv03 .kv_cont01 .kv_cont01_list .kv_cont01_list_li {
        font-size: 1rem;
    }
}

.main_kv03 .kv_cont01 .kv_cont01_list .kv_cont01_list_li:nth-child(2) {
    margin: 0 10px 0 10px;
}

@media screen and (max-width: 1024px) {
    .main_kv03 .kv_cont01 .kv_cont01_list .kv_cont01_list_li:nth-child(2) {
        margin: 0 15px 0 15px;
    }
}

@media screen and (max-width: 600px) {
    .main_kv03 .kv_cont01 .kv_cont01_list .kv_cont01_list_li:nth-child(2) {
        margin: 0 7.5px 0 7.5px;
    }
}

@media screen and (max-width: 330px) {
    .main_kv03 .kv_cont01 .kv_cont01_list .kv_cont01_list_li:nth-child(2) {
        margin: 0 5px 0 5px;
    }
}

.main_kv03 .kv_cont01 .kv_cont01_cols {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 10px;
}

@media screen and (max-width: 600px) {
    .main_kv03 .kv_cont01 .kv_cont01_cols {
        margin-top: 5px;
    }
}

.main_kv03 .kv_cont02 {
    margin-top: -130px;
    opacity: 0;
}

@media screen and (max-width: 1024px) {
    .main_kv03 .kv_cont02 {
        margin-top: -20px;
    }
}

@media screen and (max-width: 600px) {
    .main_kv03 .kv_cont02 {
        margin-top: 0;
    }
}

.main_kv03 .kv_cont02 .img_col img {
    max-width: 100%;
    margin: 0 auto 0 auto;
}

.slide01 {
    pointer-events: none;
}

.slide01.active-slide {
    pointer-events: all;
}

.slide01.active-slide .main_kv01 .kv_cont01 .kv_cont01_cols h1 {
    animation: fedein_up 0.5s ease-in-out 0.3s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv01 .kv_cont01 .kv_cont01_cols h1 {
        animation: fedein_up 0.5s ease-in-out 0.5s forwards;
    }
}

.slide01.active-slide .main_kv01 .kv_cont01 .kv_cont01_link a.info_btn.contact {
    animation: fedein_up2 0.5s ease-in-out 0.5s forwards;
}

.slide01.active-slide .main_kv01 .kv_cont01 .kv_cont01_link a.info_btn.demoform {
    animation: fedein_up2 0.5s ease-in-out 0.8s forwards;
}

.slide01.active-slide .main_kv01 .kv_cont02 .img_col img {
    animation: fedein 0.3s ease-in 1s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv01 .kv_cont02 .img_col img {
        animation: fedein 0.3s ease-in 0.9s forwards;
    }
}

.slide01.active-slide .main_kv01 .kv_cont02 .img_col .moji01::before {
    animation: fedein 0.3s ease-in 1.8s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv01 .kv_cont02 .img_col .moji01::before {
        animation: fedein 0.3s ease-in 1.5s forwards;
    }
}

.slide01.active-slide .main_kv01 .kv_cont02 .img_col .moji01::after {
    animation: fedein 0.3s ease-in 2.1s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv01 .kv_cont02 .img_col .moji01::after {
        animation: fedein 0.3s ease-in 1.8s forwards;
    }
}

.slide01.active-slide .main_kv01 .kv_cont02 .img_col .moji02::before {
    animation: fedein 0.3s ease-in 2.4s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv01 .kv_cont02 .img_col .moji02::before {
        animation: fedein 0.3s ease-in 2.1s forwards;
    }
}

.slide01.active-slide .main_kv01 .kv_cont02 .img_col .moji02::after {
    animation: fedein 0.3s ease-in 2.7s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv01 .kv_cont02 .img_col .moji02::after {
        animation: fedein 0.3s ease-in 2.4s forwards;
    }
}

.slide01.active-slide .main_kv01 .kv_cont02 .img_col .moji03::before {
    animation: fedein 0.3s ease-in 3s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv01 .kv_cont02 .img_col .moji03::before {
        animation: fedein 0.3s ease-in 2.7s forwards;
    }
}

.slide01.active-slide .main_kv01 .kv_cont02 .img_col .moji03::after {
    animation: fedein 0.3s ease-in 3.3s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv01 .kv_cont02 .img_col .moji03::after {
        animation: fedein 0.3s ease-in 3s forwards;
    }
}

.slide01.active-slide .main_kv01 .kv_cont02 .img_col .moji04::before {
    animation: fedein 0.3s ease-in 3.6s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv01 .kv_cont02 .img_col .moji04::before {
        animation: fedein 0.3s ease-in 3.3s forwards;
    }
}

.slide01.active-slide .main_kv01 .kv_cont02 p {
    animation: fedein 0.3s ease-in 3.9s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv01 .kv_cont02 p {
        animation: fedein 0.3s ease-in 3.6s forwards;
    }
}

.slide01.active-slide .main_kv02 .kv_cont01 {
    animation: fedein_up2 0.3s ease-in 0.2s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv02 .title_03 {
        animation: fedein_up2 0.3s ease-in 0s forwards;
    }
}

.slide01.active-slide .main_kv02 .kv_cont02 .kv_cont02_wrap {
    animation: fedein_up2 0.3s ease-in 0.4s forwards;
}

.slide01.active-slide .main_kv02 .kv_cont02 .kv_cont01_link {
    animation: fedein_up2 0.3s ease-in 0.6s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv02 .kv_cont02 .kv_cont01_link {
        animation: fedein_up2 0.3s ease-in 1s forwards;
    }
}

.slide01.active-slide .main_kv02 .kv_cont02 .kv_cont02_img {
    animation: fedein 0.3s ease-in 1s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv02 .kv_cont02 .kv_cont02_img {
        animation: fedein 0.3s ease-in 0.6s forwards;
    }
}

.slide01.active-slide .main_kv02 .kv_cont02 .kv_cont02_img::before {
    animation: fedein_up2 0.3s ease-in 1.3s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv02 .kv_cont02 .kv_cont02_img::before {
        animation: fedein_up2 0.3s ease-in 1.5s forwards;
    }
}

.slide01.active-slide .main_kv02 .kv_cont02 .kv_cont02_img::after {
    animation: fedein_up2 0.3s ease-in 1.6s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv02 .kv_cont02 .kv_cont02_img::after {
        animation: fedein_up2 0.3s ease-in 1.8s forwards;
    }
}

.slide01.active-slide .main_kv02 .kv_cont02 .kv_cont02_img2::before {
    animation: fedein_up2 0.2s ease-in 1.9s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv02 .kv_cont02 .kv_cont02_img2::before {
        animation: fedein_up2 0.3s ease-in 2.1s forwards;
    }
}

.slide01.active-slide .main_kv03 .kv_cont01 {
    animation: fedein_up2 0.3s ease-in 0.1s forwards;
}

.slide01.active-slide .main_kv03 .title_03 {
    animation: fedein_up2 0.3s ease-in 0.3s forwards;
}

.slide01.active-slide .main_kv03 .kv_cont01_list .kv_cont01_list_li:nth-child(1) {
    animation: fedein 0.3s ease-in 1.2s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv03 .kv_cont01_list .kv_cont01_list_li:nth-child(1) {
        animation: fedein 0.3s ease-in 0.4s forwards;
    }
}

.slide01.active-slide .main_kv03 .kv_cont01_list .kv_cont01_list_li:nth-child(2) {
    animation: fedein 0.3s ease-in 1.5s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv03 .kv_cont01_list .kv_cont01_list_li:nth-child(2) {
        animation: fedein 0.3s ease-in 0.7s forwards;
    }
}

.slide01.active-slide .main_kv03 .kv_cont01_list .kv_cont01_list_li:nth-child(3) {
    animation: fedein 0.3s ease-in 1.8s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv03 .kv_cont01_list .kv_cont01_list_li:nth-child(3) {
        animation: fedein 0.3s ease-in 1s forwards;
    }
}

.slide01.active-slide .main_kv03 .kv_cont02 {
    animation: fedein 0.3s ease-in 0.7s forwards;
}

@media screen and (max-width: 1024px) {
    .slide01.active-slide .main_kv03 .kv_cont02 {
        animation: fedein 0.3s ease-in 1.5s forwards;
    }
}

.fv_scroll {
    position: absolute;
    font-size: 1.4rem;
    letter-spacing: 1.5px;
    font-family: "Lato", sans-serif;
    color: #294AD9;
    font-weight: 700;
    text-decoration: none;
    bottom: 30px;
    padding: 0;
    left: calc(50% - 20px);
    line-height: 1;
    z-index: 1;
}

.fv_scroll.white_c {
    color: white;
}

@media screen and (max-width: 1024px) {
    .fv_scroll {
        left: 6.667vw;
        font-size: 2rem;
    }
}

@media screen and (max-width: 600px) {
    .fv_scroll {
        font-size: 1rem;
    }
}

@media screen and (min-width: 1023px) {
    .fv_scroll:hover {
        opacity: 0.8;
        transition: opacity 0.5s ease;
    }
}

.top_sub_text {
    font-size: 1.4rem;
    padding-top: 26px;
    line-height: 2;
    margin: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .top_sub_text {
        font-size: 2.4rem;
        line-height: 1.6;
        padding-top: 40px;
    }
}

@media screen and (max-width: 600px) {
    .top_sub_text {
        font-size: 1.2rem;
        padding-top: 20px;
    }
}

.tag_list {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 8px 0 0 0;
    padding: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .tag_list {
        margin-top: 20px;
    }
}

@media screen and (max-width: 600px) {
    .tag_list {
        margin-top: 10px;
    }
}

.tag_list .tag_list_item {
    font-size: 1.4rem;
    line-height: 1.5;
    margin-right: 10px;
}

@media screen and (max-width: 1024px) {
    .tag_list .tag_list_item {
        font-size: 2.4rem;
        margin-right: 20px;
    }
}

@media screen and (max-width: 600px) {
    .tag_list .tag_list_item {
        font-size: 1.4rem;
        margin-right: 10px;
    }
}

.tag_list .tag_list_item a {
    color: black;
    transition: opacity 0.5s ease;
}

@media screen and (min-width: 1023px) {
    .tag_list .tag_list_item a:hover {
        opacity: 0.6;
        transition: opacity 0.5s ease;
    }
}

.news_wrap {
    position: relative;
    overflow: hidden;
    padding-bottom: 132px;
}

@media screen and (max-width: 1024px) {
    .news_wrap {
        padding-bottom: calc(90.267vw - 30px);
    }
}

.news_wrap::before {
    content: "";
    display: none;
    position: absolute;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
}

@media screen and (max-width: 1024px) {
    .news_wrap::before {
        display: block;
        bottom: 5.467vw;
        left: 0;
        background-image: url(../image/top/bg_mobile_device.png);
        width: 73.2vw;
        height: 90.267vw;
        z-index: 1;
        pointer-events: none;
    }
}

@media screen and (max-width: 1024px) {
    .news_wrap::after {
        content: "";
        display: block;
        position: absolute;
        bottom: 33.333vw;
        right: 0;
        background-image: url(../image/top/bg_geometry_right.png);
        background-repeat: no-repeat;
        background-position: 0 0;
        background-size: 100% 100%;
        width: 58.933vw;
        height: 41.067vw;
        z-index: -1;
    }
}

.news_wrap .news_cont {
    display: flex;
    justify-content: space-between;
    position: relative;
    min-height: 640px;
}

@media screen and (max-width: 1024px) {
    .news_wrap .news_cont {
        flex-direction: column;
        min-height: auto;
    }
}

.news_wrap .news_cont::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -27px;
    left: -200px;
    background-image: url(../image/top/bg_pc.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: contain;
    width: 712px;
    height: 384px;
    z-index: -1;
}

@media screen and (max-width: 1024px) {
    .news_wrap .news_cont::after {
        display: none;
    }
}

.news_wrap .news_cont .news_col01 {
    min-width: 316px;
    padding-top: 100px;
}

@media screen and (max-width: 1024px) {
    .news_wrap .news_cont .news_col01 {
        width: 100%;
        margin-bottom: 70px;
        padding-top: 100px;
    }
}

@media screen and (max-width: 600px) {
    .news_wrap .news_cont .news_col01 {
        margin-bottom: 35px;
        padding-top: 50px;
    }
}

.news_wrap .news_cont .news_col02 {
    width: calc(100% - 316px);
    border-left: 1px solid #e6e6e6;
    padding-bottom: 115px;
}

@media screen and (max-width: 1024px) {
    .news_wrap .news_cont .news_col02 {
        width: 100%;
        padding-bottom: 0;
        border-left: none;
    }
}

.news_wrap .news_cont .news_col02 .news_list {
    margin: 0 0 0 0;
    padding: 100px 0 0 0;
    list-style: none;
}

@media screen and (max-width: 1024px) {
    .news_wrap .news_cont .news_col02 .news_list {
        padding-top: 0;
        border-left: 1px solid #e6e6e6;
    }
}

.news_wrap .news_cont .news_col02 .news_list .news_list_li {
    position: relative;
    border-bottom: 1px solid #e6e6e6;
    padding: 35px 0 35px 110px;
}

@media screen and (max-width: 1024px) {
    .news_wrap .news_cont .news_col02 .news_list .news_list_li {
        padding: 50px 0 50px 45px;
    }
}

@media screen and (max-width: 600px) {
    .news_wrap .news_cont .news_col02 .news_list .news_list_li {
        padding: 25px 0 25px 22.5px;
    }
}

.news_wrap .news_cont .news_col02 .news_list .news_list_li a {
    display: flex;
    text-decoration: none;
    color: black;
    line-height: 2;
    transition: opacity 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .news_wrap .news_cont .news_col02 .news_list .news_list_li a {
        flex-direction: column;
    }
}

.news_wrap .news_cont .news_col02 .news_list .news_list_li a time {
    display: block;
    font-weight: 700;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    margin-right: 50px;
    font-size: 1.4rem;
}

@media screen and (max-width: 1024px) {
    .news_wrap .news_cont .news_col02 .news_list .news_list_li a time {
        font-size: 2.4rem;
        margin-right: 0;
        padding-bottom: 5px;
    }
}

@media screen and (max-width: 600px) {
    .news_wrap .news_cont .news_col02 .news_list .news_list_li a time {
        font-size: 1.2rem;
        padding-bottom: 2.5px;
    }
}

.news_wrap .news_cont .news_col02 .news_list .news_list_li a .news_text {
    text-decoration: underline;
    margin: 0 0 0 0;
    font-size: 1.4rem;
}

@media screen and (max-width: 1024px) {
    .news_wrap .news_cont .news_col02 .news_list .news_list_li a .news_text {
        font-size: 2.4rem;
        line-height: 1.8;
    }
}

@media screen and (max-width: 600px) {
    .news_wrap .news_cont .news_col02 .news_list .news_list_li a .news_text {
        font-size: 1.2rem;
    }
}

@media screen and (min-width: 1023px) {
    .news_wrap .news_cont .news_col02 .news_list .news_list_li a:hover {
        opacity: 0.6;
        transition: opacity 0.5s ease;
    }
}

.news_wrap .news_cont .news_col02 .news_list .news_list_li:nth-child(1) {
    border-top: 1px solid #e6e6e6;
}

.news_wrap .news_cont .news_col02 .news_list .news_list_li:nth-child(1)::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    height: 1px;
    left: 100%;
    width: 100%;
    background-color: #e6e6e6;
}

.news_wrap .news_cont .news_col02 .news_list .news_list_li::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    height: 1px;
    left: 100%;
    width: 100%;
    background-color: #e6e6e6;
}

.news_wrap .news_cont .news_col02 .more_link_wrap {
    padding: 35px 0 0 110px;
}

@media screen and (max-width: 1024px) {
    .news_wrap .news_cont .news_col02 .more_link_wrap {
        padding: 75px 0 0 0;
        text-align: right;
    }
}

@media screen and (max-width: 600px) {
    .news_wrap .news_cont .news_col02 .more_link_wrap {
        padding: 37.5px 0 0 0;
    }
}

.about_wrap {
    position: relative;
}

.about_wrap .about_wrap_over {
    overflow: hidden;
}

.about_wrap::after {
    content: "";
    display: block;
    position: absolute;
    top: -264px;
    right: 0;
    background-image: url(../image/top/bg_geometry_right.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    width: 442px;
    height: 307px;
    z-index: -1;
}

@media screen and (max-width: 1024px) {
    .about_wrap::after {
        display: none;
    }
}

.about_wrap .top_h2_about {
    font-size: 30px;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    line-height: 1.5;
    margin: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .about_wrap .top_h2_about {
        font-size: 4rem;
    }
}

@media screen and (max-width: 600px) {
    .about_wrap .top_h2_about {
        font-size: 2rem;
    }
}

@media screen and (max-width: 1024px) {
    .about_wrap .top_sub_text {
        line-height: 2;
        padding-top: 50px;
    }
}

@media screen and (max-width: 600px) {
    .about_wrap .top_sub_text {
        padding-top: 25px;
    }
}

@media screen and (max-width: 600px) {
    .about_wrap .top_sub_text br.sp {
        display: none;
    }
}

.about_wrap .about_cont {
    display: flex;
    justify-content: space-between;
    padding-bottom: 100px;
}

@media screen and (max-width: 1024px) {
    .about_wrap .about_cont {
        flex-direction: column;
        padding-bottom: 155px;
    }
}

@media screen and (max-width: 600px) {
    .about_wrap .about_cont {
        padding-bottom: 72.5px;
    }
}

.about_wrap .about_cont .about_col01 {
    width: 385px;
}

@media screen and (max-width: 1024px) {
    .about_wrap .about_cont .about_col01 {
        width: 100%;
    }
}

.about_wrap .about_cont .about_col02 {
    position: relative;
    max-width: calc(100% - 460px);
}

@media screen and (max-width: 1024px) {
    .about_wrap .about_cont .about_col02 {
        width: 81.733vw;
        max-width: none;
        position: relative;
        z-index: 9;
        margin-top: 55px;
    }

    .about_wrap .about_cont .about_col02 img {
        width: 100%;
        position: relative;
        left: 6.933vw;
    }
}

.about_wrap .about_cont .about_col02 .about_more_link {
    position: absolute;
    left: -75px;
    bottom: 60px;
}

@media screen and (max-width: 1024px) {
    .about_wrap .about_cont .about_col02 .about_more_link {
        left: 0;
        bottom: auto;
        top: 55.2vw;
        width: 26.667vw;
    }
}

.about_wrap .about_cont .about_col02 .about_more_link a {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #294AD9;
    text-decoration: none;
    font-family: "Lato", sans-serif;
    font-weight: 400;
    font-size: 1.4rem;
    letter-spacing: 1px;
    color: white;
    width: 120px;
    height: 100px;
    border-radius: 5px;
    border: solid 2px transparent;
    transition: color 0.5s ease, border 0.5s ease, background-color 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .about_wrap .about_cont .about_col02 .about_more_link a {
        width: 26.67vw;
        height: 22.21vw;
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .about_wrap .about_cont .about_col02 .about_more_link a {
        font-size: 1.2rem;
    }
}

.about_wrap .about_cont .about_col02 .about_more_link a span {
    position: relative;
}

.about_wrap .about_cont .about_col02 .about_more_link a span::after {
    content: "";
    display: block;
    position: relative;
    left: 2px;
    margin-top: 10px;
    background-image: url(../image/common/contact_btn_arw.svg);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    width: 39px;
    height: 6px;
    transition: background-image 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .about_wrap .about_cont .about_col02 .about_more_link a span::after {
        width: 7.8624vw;
        height: 1.0946vw;
        left: calc(50% - 3.9312vw);
        margin-top: 15px;
    }
}

@media screen and (max-width: 600px) {
    .about_wrap .about_cont .about_col02 .about_more_link a span::after {
        margin-top: 7.5px;
    }
}

@media screen and (min-width: 1023px) {
    .about_wrap .about_cont .about_col02 .about_more_link a:hover {
        background-color: white;
        color: #294AD9;
        border: solid 2px #294AD9;
        transition: color 0.5s ease, border 0.5s ease, background-color 0.5s ease;
    }

    .about_wrap .about_cont .about_col02 .about_more_link a:hover span::after {
        background-image: url(../image/common/contact_btn_arw_blue.svg);
        transition: background-image 0.2s ease;
    }
}

.works_wrap {
    position: relative;
    padding-top: 120px;
    padding-bottom: 75px;
}

@media screen and (max-width: 1024px) {
    .works_wrap {
        background-color: #f2f2f2;
        padding-top: 150px;
    }
}

@media screen and (max-width: 600px) {
    .works_wrap {
        padding-top: 75px;
    }
}

.works_wrap::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 71%;
    background-color: #f2f2f2;
    height: 100%;
    z-index: -1;
}

@media screen and (max-width: 1024px) {
    .works_wrap::before {
        display: none;
    }
}

.works_wrap::after {
    content: "";
    display: block;
    position: absolute;
    top: -201px;
    left: 0;
    background-image: url(../image/top/bg_geometry_left.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    width: 442px;
    height: 307px;
    z-index: -1;
}

@media screen and (max-width: 1024px) {
    .works_wrap::after {
        top: -26.667vw;
        background-color: transparent;
        width: 58.933vw;
        height: 41.067vw;
        z-index: 1;
    }
}

.works_wrap .works_cont .works_list_wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 65px;
}

@media screen and (max-width: 1024px) {
    .works_wrap .works_cont .works_list_wrap {
        flex-direction: column;
        margin-top: 80px;
    }
}

@media screen and (max-width: 600px) {
    .works_wrap .works_cont .works_list_wrap {
        margin-top: 40px;
        margin-bottom: 20px;
    }
}

.works_wrap .works_cont .works_list_wrap .works_list_col_wrap {
    margin-bottom: 60px;
    width: calc(33.33% - 18.5px);
}

.works_wrap .works_cont .works_list_wrap:after {
    content: "";
    display: block;
    width: calc(33.33% - 18.5px);
    height: 0;
}

@media screen and (max-width: 1024px) {
    .works_wrap .works_cont .works_list_wrap .works_list_col_wrap {
        width: 100%;
        margin-bottom: 75px;
    }
}

@media screen and (max-width: 600px) {
    .works_wrap .works_cont .works_list_wrap .works_list_col_wrap {
        margin-bottom: 37.5px;
    }
}

.works_wrap .works_cont .works_list_wrap .works_list_col_wrap:nth-child(1) {
    width: calc(50% - 20px);
}

@media screen and (max-width: 1024px) {
    .works_wrap .works_cont .works_list_wrap .works_list_col_wrap:nth-child(1) {
        width: 100%;
    }
}

.works_wrap .works_cont .works_list_wrap .works_list_col_wrap:nth-child(2) {
    width: calc(50% - 20px);
}

@media screen and (max-width: 1024px) {
    .works_wrap .works_cont .works_list_wrap .works_list_col_wrap:nth-child(2) {
        width: 100%;
    }
}

@media screen and (max-width: 1024px) {
    .works_wrap .works_cont .works_list_wrap .works_list_col_wrap:nth-last-child(1) {
        margin-bottom: 0;
    }
}

.works_wrap .works_cont .works_list_wrap .works_list_col {
    display: block;
    text-decoration: none;
}

.works_wrap .works_cont .works_list_wrap .works_list_col .img_col {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    margin-bottom: 15px;
    width: 100%;
    height: 0;
    padding-top: 52.5%;
    overflow: hidden;
}

@media screen and (max-width: 1024px) {
    .works_wrap .works_cont .works_list_wrap .works_list_col .img_col {
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 600px) {
    .works_wrap .works_cont .works_list_wrap .works_list_col .img_col {
        margin-bottom: 10px;
    }
}

.works_wrap .works_cont .works_list_wrap .works_list_col .img_col::after {
    content: "";
    display: block;
    position: absolute;
    background-color: white;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.5s ease;
}

.works_wrap .works_cont .works_list_wrap .works_list_col .img_col img {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: "object-fit: cover;";
    transition: transform 0.5s ease;
}

.works_wrap .works_cont .works_list_wrap .works_list_col time {
    display: block;
    color: black;
    font-size: 1.4rem;
    margin-bottom: 15px;
    transition: opacity 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .works_wrap .works_cont .works_list_wrap .works_list_col time {
        font-size: 2.4rem;
        margin-bottom: 25px;
    }
}

@media screen and (max-width: 600px) {
    .works_wrap .works_cont .works_list_wrap .works_list_col time {
        font-size: 1.2rem;
        margin-bottom: 12.5px;
    }
}

.works_wrap .works_cont .works_list_wrap .works_list_col .works_text {
    color: black;
    font-size: 1.6rem;
    line-height: 1.6;
    text-decoration: underline;
    margin: 0 0 0 0;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    transition: opacity 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .works_wrap .works_cont .works_list_wrap .works_list_col .works_text {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .works_wrap .works_cont .works_list_wrap .works_list_col .works_text {
        font-size: 1.2rem;
    }
}

@media screen and (min-width: 1023px) {

    .works_wrap .works_cont .works_list_wrap .works_list_col:hover time,
    .works_wrap .works_cont .works_list_wrap .works_list_col:hover .works_text {
        opacity: 0.6;
        transition: opacity 0.5s ease;
    }

    .works_wrap .works_cont .works_list_wrap .works_list_col:hover .img_col::after {
        opacity: 0.4;
        transition: opacity 0.5s ease;
    }
}

.works_wrap .more_link_wrap {
    text-align: right;
}

.function_wrap {
    padding: 115px 0 107px 0;
}

@media screen and (max-width: 1024px) {
    .function_wrap {
        padding: 135px 0 150px 0;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap {
        padding: 67.5px 0 75px 0;
    }
}

.function_wrap .function_cont .function_col01 {
    text-align: center;
    margin-bottom: 20px;
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_col01 {
        margin-bottom: 10px;
    }
}

.function_wrap .function_cont br.sp {
    display: none;
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont br.sp {
        display: block;
    }
}

.function_wrap .function_cont .function_col02 {
    display: flex;
    justify-content: space-between;
    position: relative;
    margin-top: 85px;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_col02 {
        flex-direction: column;
        margin-top: 80px;
        min-width: auto;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_col02 {
        margin-top: 40px;
    }
}

.function_wrap .function_cont .function_col02 .function_col02_cols {
    width: 430px;
    min-width: 430px;
    padding: 40px 0 0 0;
    margin-left: 60px;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_col02 .function_col02_cols {
        width: 100%;
        min-width: auto;
        padding-top: 40px;
        margin-left: 0;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_col02 .function_col02_cols {
        padding-top: 20px;
    }
}

.function_wrap .function_cont .function_col02 .function_col02_cols .top_sub_text {
    padding-top: 10px;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_col02 .function_col02_cols .top_sub_text {
        padding-top: 25px;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_col02 .function_col02_cols .top_sub_text {
        padding-top: 12.5px;
    }
}

.function_wrap .function_cont .function_col02 .function_col02_img {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    position: relative;
    margin-left: -100px;
    overflow: hidden;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_col02 .function_col02_img {
        width: 100%;
        margin-left: 0;
    }
}

.function_wrap .function_cont .function_col02 .function_col02_img img {
    display: block;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_col02 .function_col02_img img {
        width: 100%;
    }
}

.function_wrap .function_cont .function_col02.flex_re {
    flex-direction: row-reverse;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_col02.flex_re {
        flex-direction: column;
    }
}

.function_wrap .function_cont .function_col02.flex_re .function_col02_cols {
    width: 470px;
    min-width: 470px;
    margin-right: 30px;
    margin-left: 0;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_col02.flex_re .function_col02_cols {
        min-width: auto;
        width: 100%;
        margin-right: 0;
    }
}

.function_wrap .function_cont .function_col02.flex_re .function_col02_img {
    justify-content: flex-start;
    margin-right: -100px;
    margin-left: 0;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_col02.flex_re .function_col02_img {
        margin-right: 0;
    }
}

.function_wrap .function_cont .function_col03 {
    padding-top: 115px;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_col03 {
        padding-top: 100px;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_col03 {
        padding-top: 50px;
    }
}

.function_wrap .function_cont .function_col03 .function_col03_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    list-style: none;
    margin: 0 0 30px 0;
    padding: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_col03 .function_col03_list {
        flex-direction: column;
    }
}

.function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li {
    width: calc(33.33% - 35px);
    margin-bottom: 55px;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li {
        width: 100%;
        margin-bottom: 60px;
    }

    .function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li:nth-last-child(1) {
        margin-bottom: 75px;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li {
        margin-bottom: 30px;
    }

    .function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li:nth-last-child(1) {
        margin-bottom: 37.5px;
    }
}

.function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li span {
    display: flex;
    align-items: center;
    font-size: 17px;
    line-height: 1.4;
    color: #294AD9;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    margin-bottom: 20px;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li span {
        font-size: 2.6rem;
        margin-bottom: 28px;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li span {
        font-size: 1.3rem;
        margin-bottom: 14px;
    }
}

.function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li span::before {
    content: "";
    display: block;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 70px;
    height: 70px;
    margin-right: 25px;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li span::before {
        width: 14.667vw;
        height: 14.667vw;
        margin-right: 25px;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li span::before {
        margin-right: 12.5px;
    }
}

.function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li span.function_item_head01::before {
    background-image: url(../image/function/function_sec_icon_15.svg);
}

.function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li span.function_item_head02::before {
    background-image: url(../image/function/function_sec_icon_17.svg);
}

.function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li span.function_item_head03::before {
    background-image: url(../image/function/function_sec_icon_21.svg);
}

.function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li span.function_item_head04::before {
    background-image: url(../image/function/function_sec_icon_28.svg);
}

.function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li span.function_item_head05::before {
    background-image: url(../image/function/function_sec_icon_30.svg);
}

.function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li span.function_item_head06::before {
    background-image: url(../image/function/function_sec_icon_36.svg);
}

.function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li p {
    font-size: 1.4rem;
    line-height: 2;
    left: 0.4px;
    margin: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li p {
        font-size: 2.4rem;
        line-height: 1.6;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_col03 .function_col03_list .function_col03_list_li p {
        font-size: 1.2rem;
    }
}

.function_wrap .function_cont .function_text1 {
    font-size: 31px;
    margin: 0 0 0 0;
    line-height: 1.2;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_text1 {
        font-size: 3.8rem;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_text1 {
        font-size: 1.9rem;
    }
}

.function_wrap .function_cont .function_text1 .read_txt {
    font-size: 17px;
    display: block;
    color: #294AD9;
    line-height: 2;
    margin-bottom: 5px;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_text1 .read_txt {
        font-size: 2.4rem;
        line-height: 1.6;
        margin-bottom: 15px;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_text1 .read_txt {
        font-size: 1.2rem;
        margin-bottom: 7.5px;
    }
}

.function_wrap .function_cont .function_text2 {
    font-size: 1.6rem;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    line-height: 2;
    margin: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_text2 {
        font-size: 2.6rem;
        line-height: 1.4;
        margin-bottom: 15px;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_text2 {
        font-size: 1.3rem;
        margin-bottom: 7.5px;
    }
}

.function_wrap .function_cont .function_text3 {
    font-size: 12px;
    line-height: 1.6;
    margin: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_text3 {
        font-size: 2.2rem;
        line-height: 1.7;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_text3 {
        font-size: 1.1rem;
    }
}

.function_wrap .function_cont .function_text4 {
    font-size: 22px;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
    margin: 0 0 60px 0;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_text4 {
        font-size: 3.2rem;
        margin-bottom: 70px;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_text4 {
        font-size: 1.6rem;
        margin-bottom: 35px;
    }
}

.function_wrap .function_cont .function_list {
    padding: 0 0 0 0;
    margin: 30px 0 0 0;
    list-style: none;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_list {
        margin-top: 50px;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_list {
        margin-top: 25px;
    }
}

.function_wrap .function_cont .function_list li {
    position: relative;
    margin-bottom: 20px;
    padding-left: 90px;
    min-height: 70px;
}

.function_wrap .function_cont .function_list li:nth-last-child(1) {
    margin-bottom: 0;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_list li {
        margin-bottom: 50px;
        padding-left: calc(12vw + 25px);
        min-height: auto;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_list li {
        margin-bottom: 25px;
        padding-left: calc(12vw + 17px);
    }
}

.function_wrap .function_cont .function_list li::before {
    content: "";
    display: block;
    position: absolute;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    height: 70px;
    width: 70px;
    margin-right: 20px;
    left: 0;
}

@media screen and (max-width: 1024px) {
    .function_wrap .function_cont .function_list li::before {
        height: 12vw;
        width: 12vw;
        margin-right: 25px;
    }
}

@media screen and (max-width: 600px) {
    .function_wrap .function_cont .function_list li::before {
        margin-right: 12.5px;
    }
}

.function_wrap .function_cont .function_list li.function_list01::before {
    background-image: url("../image/top/function_sec_icon_1.svg");
}

.function_wrap .function_cont .function_list li.function_list02::before {
    background-image: url("../image/top/function_sec_icon_2.svg");
}

.function_wrap .function_cont .function_list li.function_list03::before {
    background-image: url("../image/top/function_sec_icon_3.svg");
}

.function_wrap .function_cont .function_list li.function_list04::before {
    background-image: url("../image/top/function_sec_icon_4.svg");
}

.function_wrap .function_cont .function_list li.function_list05::before {
    background-image: url("../image/top/function_sec_icon_5.svg");
}

.function_wrap .function_cont .function_list li.function_list06::before {
    background-image: url("../image/top/function_sec_icon_6.svg");
}

.function_wrap .more_link_wrap {
    text-align: right;
}

.schedule_wrap {
    position: relative;
    margin-bottom: 150px;
    padding: 120px 0 75px 0;
}

@media screen and (max-width: 1024px) {
    .schedule_wrap {
        background-color: #f2f2f2;
        padding: 145px 0 150px 0;
        margin-bottom: 140px;
    }
}

@media screen and (max-width: 600px) {
    .schedule_wrap {
        padding: 72.5px 0 75px 0;
        margin-bottom: 70px;
    }
}

.schedule_wrap::before {
    content: "";
    display: block;
    position: absolute;
    top: 32px;
    right: 0;
    background-image: url(../image/top/bg_geometry_right.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    width: 442px;
    height: 307px;
}

@media screen and (max-width: 1024px) {
    .schedule_wrap::before {
        top: 40vw;
        width: 58.933vw;
        height: 41.067vw;
        z-index: 0;
    }
}

.schedule_wrap::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 71%;
    background-color: #f2f2f2;
    height: 100%;
    z-index: -1;
}

@media screen and (max-width: 1024px) {
    .schedule_wrap::after {
        display: none;
    }
}

.schedule_wrap .schedule_cont {
    position: relative;
}

.schedule_wrap .schedule_cont .top_sub_text br {
    display: none;
}

@media screen and (max-width: 1024px) {
    .schedule_wrap .schedule_cont .top_sub_text br {
        display: block;
    }
}

.schedule_wrap .schedule_cont .schedule_list_wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 60px;
}

@media screen and (max-width: 1024px) {
    .schedule_wrap .schedule_cont .schedule_list_wrap {
        flex-direction: column;
        margin-top: 80px;
    }
}

@media screen and (max-width: 600px) {
    .schedule_wrap .schedule_cont .schedule_list_wrap {
        margin-top: 40px;
    }
}

.schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col {
    display: block;
    text-decoration: none;
    width: calc(33.33% - 18.5px);
    margin-bottom: 60px;
}

@media screen and (max-width: 1024px) {
    .schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col {
        width: 100%;
        margin-bottom: 80px;
    }
}

@media screen and (max-width: 600px) {
    .schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col {
        margin-bottom: 40px;
    }
}

.schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col .img_col {
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    position: relative;
    height: 0;
    width: 100%;
    padding-top: 52.5%;
    margin-bottom: 15px;
    background-color: white;
}

@media screen and (max-width: 1024px) {
    .schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col .img_col {
        margin-bottom: 25px;
    }
}

@media screen and (max-width: 600px) {
    .schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col .img_col {
        margin-bottom: 12.5px;
    }
}

.schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col .img_col::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    background-color: white;
    opacity: 0;
    transition: opacity 0.5s ease;
}

.schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col .img_col img {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: "object-fit: cover;";
    transition: transform 0.5s ease;
}

.schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col time {
    display: block;
    color: black;
    font-size: 1.4rem;
    margin-bottom: 15px;
    transition: opacity 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col time {
        font-size: 2.4rem;
        margin-bottom: 25px;
    }
}

@media screen and (max-width: 600px) {
    .schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col time {
        font-size: 1.2rem;
        margin-bottom: 12.5px;
    }
}

.schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col .schedule_text {
    color: black;
    font-size: 1.6rem;
    line-height: 1.6;
    text-decoration: underline;
    margin: 0 0 0 0;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    transition: opacity 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col .schedule_text {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col .schedule_text {
        font-size: 1.2rem;
    }
}

@media screen and (min-width: 1023px) {

    .schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col:hover time,
    .schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col:hover .schedule_text {
        opacity: 0.6;
        transition: opacity 0.5s ease;
    }

    .schedule_wrap .schedule_cont .schedule_list_wrap .schedule_list_col:hover .img_col::after {
        opacity: 0.4;
        transition: opacity 0.5s ease;
    }
}

.schedule_wrap .more_link_wrap {
    text-align: right;
}

.bolg_wrap {
    position: relative;
    padding-bottom: 96px;
}

@media screen and (max-width: 600px) {
    .bolg_wrap {
        padding-bottom: 48px;
    }
}

.bolg_wrap::before {
    content: "";
    display: block;
    position: absolute;
    bottom: 11px;
    left: 0;
    background-image: url(../image/top/bg_geometry_left.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    width: 442px;
    height: 307px;
}

@media screen and (max-width: 1024px) {
    .bolg_wrap::before {
        top: 25.333vw;
        right: 0;
        left: inherit;
        bottom: inherit;
        background-image: url(../image/top/bg_geometry_right_sp.png);
        background-size: cover;
        width: 58.933vw;
        height: 41.067vw;
    }
}

.bolg_wrap::after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 71%;
    background-color: #f2f2f2;
    height: 100%;
    z-index: -1;
}

@media screen and (max-width: 1024px) {
    .bolg_wrap::after {
        display: none;
    }
}

.bolg_wrap .bolg_cont .bolg_list_wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 65px;
}

@media screen and (max-width: 1024px) {
    .bolg_wrap .bolg_cont .bolg_list_wrap {
        flex-direction: column;
        margin-top: 80px;
    }
}

@media screen and (max-width: 600px) {
    .bolg_wrap .bolg_cont .bolg_list_wrap {
        margin-top: 55px;
    }
}

.bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col_wrap {
    margin-bottom: 55px;
    width: calc(50% - 20px);
}

@media screen and (max-width: 1024px) {
    .bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col_wrap {
        width: 100%;
        margin-bottom: 80px;
    }
}

@media screen and (max-width: 600px) {
    .bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col_wrap {
        margin-bottom: 40px;
    }
}

.bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col {
    display: block;
    color: black;
    text-decoration: none;
}

.bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col .img_col {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    height: 0;
    width: 100%;
    padding-top: 52.5%;
    overflow: hidden;
    margin-bottom: 15px;
}

@media screen and (max-width: 1024px) {
    .bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col .img_col {
        margin-bottom: 25px;
    }
}

@media screen and (max-width: 600px) {
    .bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col .img_col {
        margin-bottom: 12.5px;
    }
}

.bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col .img_col::after {
    content: "";
    display: block;
    background-color: white;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.5s ease;
}

.bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col .img_col img {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: "object-fit: cover;";
    transition: transform 0.5s ease;
}

.bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col time {
    display: block;
    font-size: 1.4rem;
    line-height: 1.7;
    margin-bottom: 10px;
    transition: opacity 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col time {
        font-size: 2.4rem;
        margin-bottom: 25px;
    }
}

@media screen and (max-width: 600px) {
    .bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col time {
        font-size: 1.2rem;
        margin-bottom: 12.5px;
    }
}

.bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col .bolg_text {
    font-size: 1.6rem;
    line-height: 1.4;
    text-decoration: underline;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    margin: 0 0 0 0;
    transition: opacity 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col .bolg_text {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col .bolg_text {
        font-size: 1.2rem;
    }
}

@media screen and (min-width: 1023px) {

    .bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col:hover time,
    .bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col:hover .bolg_text {
        opacity: 0.6;
        transition: opacity 0.5s ease;
    }

    .bolg_wrap .bolg_cont .bolg_list_wrap .bolg_list_col:hover .img_col::after {
        opacity: 0.4;
        transition: opacity 0.5s ease;
    }
}

.bolg_wrap .more_link_wrap {
    text-align: right;
}

.exhibition_wrap {
    padding-top: 194px;
    overflow: hidden;
}

@media screen and (max-width: 1024px) {
    .exhibition_wrap {
        position: relative;
        padding-top: 0;
    }
}

@media screen and (max-width: 1024px) {

    /*
    .exhibition_wrap::after{
      content: "";
      content: none;
      display: block;
      position: absolute;
      background-repeat: no-repeat;
      background-position: 0 0;
      background-size: 100% 100%;
      background-image: url("../image/top/demo_pic_2_sp.png");
      width: 100%;
      height: 46.7vw;
      right: 0;
      top: 0; }
    */
    .exhibition_wrap::before {
        content: "";
        display: block;
        position: relative;
        background-repeat: no-repeat;
        background-position: 0 0;
        background-size: cover;
        background-image: url("../image/top/demo_pic_2_sp.png");
        width: 100%;
        height: 28.7vw;
        right: 0;
        top: 0;
    }
}

.exhibition_wrap .exhibition_line {
    display: flex;
    align-items: center;
}

.exhibition_wrap .inr_txt {
    display: flex;
    align-items: flex-end;
    color: #294AD9;
    font-family: "Lato", sans-serif;
    font-weight: 300;
    font-size: 57px;
    letter-spacing: 1.2px;
    line-height: 1;
    transform: translateX(0);
}

.exhibition_wrap .inr_txt.anime01 {
    animation: lineslide1 120s -60s linear infinite;
}

.exhibition_wrap .inr_txt.anime02 {
    animation: lineslide2 120s linear infinite;
}

@media screen and (max-width: 1024px) {
    .exhibition_wrap .inr_txt {
        display: none;
    }
}

.exhibition_wrap .inr_txt span {
    display: block;
    word-break: keep-all;
    white-space: nowrap;
}

.exhibition_wrap .inr_txt .small_s {
    font-size: 28px;
    line-height: 1.2;
    margin: 0 25px;
}

.exhibition_wrap .exhibition_cont {
    position: relative;
    padding-top: 71px;
}

@media screen and (max-width: 1024px) {
    .exhibition_wrap .exhibition_cont {
        display: flex;
        flex-direction: column-reverse;
        padding-top: 27.07vw;
        padding-top: 50px;
    }
}

.exhibition_wrap .exhibition_cont::after {
    content: "";
    display: block;
    position: absolute;
    /*
      top: -114px;
      right: 0;
      background-image: url(../image/top/demo_pic_2_pc.png);
      background-repeat: no-repeat;
      background-position: 0 0;
      background-size: 100% 100%;
      width: 546px;
      height: 630px;
      */
    top: 20px;
    right: 0;
    background-image: url(../image/top/demo_pic_3_pc.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    width: 546px;
    height: 393px;
}

@media screen and (max-width: 1024px) {
    .exhibition_wrap .exhibition_cont::after {
        display: none;
    }
}

.exhibition_wrap .exhibition_cont .exhibition_text {
    font-size: 20px;
    line-height: 1.7;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    margin: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .exhibition_wrap .exhibition_cont .exhibition_text {
        padding-left: 0;
        font-size: 3.1rem;
        padding-bottom: 35px;
    }
}

@media screen and (max-width: 600px) {
    .exhibition_wrap .exhibition_cont .exhibition_text {
        font-size: 1.55rem;
        padding-bottom: 17.5px;
    }

    .exhibition_wrap .exhibition_cont .exhibition_text br {
        display: none;
    }
}

.exhibition_wrap .exhibition_cont .top_sub_text {
    margin-bottom: 45px;
}

@media screen and (max-width: 1024px) {
    .exhibition_wrap .exhibition_cont .top_sub_text {
        margin-bottom: 0;
        padding-top: 0;
    }
}

.exhibition_wrap .exhibition_col02 {
    margin-top: 37px;
    width: 793px;
    height: 447px;
    position: relative;
    z-index: 2;
}

@media screen and (max-width: 1024px) {
    .exhibition_wrap .exhibition_col02 {
        width: 100%;
        height: 48.533vw;
        margin-top: 0;
        margin-bottom: 7.2vw;
    }
}

.exhibition_wrap .exhibition_col02 .movie_box {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
    box-shadow: 0px 0px 15px -5px #000000;
}

.exhibition_wrap .exhibition_col02 .movie_box iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.contact_wrap {
    padding: 172px 0 150px 0;
}

@media screen and (max-width: 1024px) {
    .contact_wrap {
        padding: 150px 0 150px 0;
    }
}

@media screen and (max-width: 600px) {
    .contact_wrap {
        padding: 75px 0 75px 0;
    }
}

.contact_wrap .contact_cont .contact_col01 {
    text-align: center;
}

.contact_wrap .sec_wrap_header span {
    padding-top: 12px;
}

.contact_wrap .top_sub_text {
    padding-top: 19px;
}

@media screen and (max-width: 1024px) {
    .contact_wrap .top_sub_text {
        padding-top: 40px;
    }
}

@media screen and (max-width: 600px) {
    .contact_wrap .top_sub_text {
        padding-top: 20px;
    }
}

.contact_wrap .top_sub_text br {
    display: none;
}

@media screen and (max-width: 1024px) {
    .contact_wrap .top_sub_text br {
        display: block;
    }
}

.contact_wrap .contact_col02 {
    display: flex;
    justify-content: space-between;
    padding-top: 53px;
    width: 100%;
}

@media screen and (max-width: 1024px) {
    .contact_wrap .contact_col02 {
        flex-direction: column;
        padding-top: 60px;
    }
}

@media screen and (max-width: 600px) {
    .contact_wrap .contact_col02 {
        padding-top: 30px;
    }
}

.contact_wrap .contact_col02 .contact_cols {
    display: flex;
    align-items: center;
    flex-direction: column;
    flex-shrink: 0;
    width: calc(50% - 12px);
    min-height: 247px;
    background-image: url(../image/common/contact_bg_pc.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: cover;
    padding: 50px 50px 50px 50px;
    border-radius: 8px;
}

@media screen and (max-width: 1024px) {
    .contact_wrap .contact_col02 .contact_cols {
        width: 100%;
        min-height: auto;
        padding: 80px 50px 80px 50px;
        border-radius: 8px;
    }

    .contact_wrap .contact_col02 .contact_cols:nth-child(1) {
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 600px) {
    .contact_wrap .contact_col02 .contact_cols {
        padding: 40px 25px 40px 25px;
    }

    .contact_wrap .contact_col02 .contact_cols:nth-child(1) {
        margin-bottom: 20px;
    }
}

.contact_wrap .contact_col02 .contact_cols .contact_info_header {
    font-size: 20px;
    color: #294AD9;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    line-height: 1.1;
    margin: 0 0 32px 0;
}

@media screen and (max-width: 1024px) {
    .contact_wrap .contact_col02 .contact_cols .contact_info_header {
        font-size: 3rem;
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 600px) {
    .contact_wrap .contact_col02 .contact_cols .contact_info_header {
        font-size: 1.5rem;
        margin-bottom: 20px;
    }
}

.contact_wrap .contact_col02 .contact_cols .contact_info_txt {
    font-size: 1.4rem;
    line-height: 2;
    font-weight: 400;
    margin: 0 0 26px 0;
}

@media screen and (max-width: 1024px) {
    .contact_wrap .contact_col02 .contact_cols .contact_info_txt {
        font-size: 2.4rem;
        line-height: 1.8;
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 600px) {
    .contact_wrap .contact_col02 .contact_cols .contact_info_txt {
        font-size: 1.2rem;
        margin-bottom: 20px;
    }
}

.contact_wrap .contact_col02 .contact_cols .contact_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background-color: #294AD9;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    color: white;
    font-size: 1.4rem;
    border: solid 2px transparent;
    border-radius: 5px;
    width: 300px;
    height: 45px;
    transition: color 0.5s ease, border 0.5s ease, background-color 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .contact_wrap .contact_col02 .contact_cols .contact_btn {
        width: calc(100% - 40px);
        max-width: 450px;
        font-size: 2.4rem;
        border-radius: 10px;
        height: 80px;
    }
}

@media screen and (max-width: 600px) {
    .contact_wrap .contact_col02 .contact_cols .contact_btn {
        font-size: 1.2rem;
        border-radius: 5px;
        max-width: 225px;
        width: 100%;
        height: 40px;
    }
}

.contact_wrap .contact_col02 .contact_cols .contact_btn span {
    position: relative;
    padding-right: 39px;
}

@media screen and (max-width: 1024px) {
    .contact_wrap .contact_col02 .contact_cols .contact_btn span {
        padding-right: 58px;
    }
}

@media screen and (max-width: 600px) {
    .contact_wrap .contact_col02 .contact_cols .contact_btn span {
        padding-right: 29px;
    }
}

.contact_wrap .contact_col02 .contact_cols .contact_btn span::after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 4px);
    right: -10px;
    background-image: url(../image/common/contact_btn_arw.svg);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    width: 39px;
    height: 6px;
    transition: background-image 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .contact_wrap .contact_col02 .contact_cols .contact_btn span::after {
        width: 58px;
        height: 7.5px;
    }
}

@media screen and (max-width: 600px) {
    .contact_wrap .contact_col02 .contact_cols .contact_btn span::after {
        width: 29px;
        height: 3.75px;
    }
}

@media screen and (min-width: 1023px) {
    .contact_wrap .contact_col02 .contact_cols .contact_btn:hover {
        background-color: white;
        border: solid 2px #294AD9;
        color: #294AD9;
        transition: color 0.5s ease, border 0.5s ease, background-color 0.5s ease;
    }

    .contact_wrap .contact_col02 .contact_cols .contact_btn:hover span::after {
        background-image: url("../image/common/contact_btn_arw_blue.svg");
        transition: background-image 0.5s ease;
    }
}

.main_top {
    margin-top: 85px;
}

@media screen and (max-width: 1024px) {
    .main_top {
        margin-top: 100px;
    }
}

@media screen and (max-width: 600px) {
    .main_top {
        margin-top: 70px;
    }
}

.bk_img_right {
    position: relative;
}

.bk_img_right::before {
    content: "";
    display: block;
    background-image: url(../image/top/bg_geometry_right.png);
    background-repeat: no-repeat;
    background-position: right;
    background-size: contain;
    width: 442px;
    height: 307px;
    position: absolute;
    top: -100px;
    right: 0;
    z-index: -1;
}

@media screen and (max-width: 1024px) {
    .bk_img_right {
        display: none;
    }
}

.bk_img_left {
    position: relative;
}

.bk_img_left::before {
    content: "";
    display: block;
    position: absolute;
    background-image: url(../image/top/bg_geometry_left.png);
    background-repeat: no-repeat;
    background-position: left;
    background-size: contain;
    width: 441px;
    height: 307px;
    bottom: 150px;
    left: 0;
    z-index: -1;
}

@media screen and (max-width: 1024px) {
    .bk_img_left {
        display: none;
    }
}

.sub_kv {
    display: flex;
    align-items: center;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 350px;
    width: 100%;
    margin-bottom: 125px;
    background-image: url("../image/common/head_bg_pc.png");
}

@media screen and (max-width: 1024px) {
    .sub_kv {
        height: 300px;
        margin-bottom: 100px;
        background-image: url("../image/common/head_bg_sp.png");
    }
}

@media screen and (max-width: 600px) {
    .sub_kv {
        height: 150px;
        margin-bottom: 50px;
    }
}

.sub_kv h1,
.sub_kv p {
    display: block;
    color: white;
    font-size: 3.5rem;
    letter-spacing: 4px;
    font-family: "Lato", sans-serif;
    font-weight: 400;
}

@media screen and (max-width: 1024px) {

    .sub_kv h1,
    .sub_kv p {
        font-size: 3.8rem;
    }
}

@media screen and (max-width: 600px) {

    .sub_kv h1,
    .sub_kv p {
        font-size: 1.9rem;
    }
}

.sub_kv h1 span,
.sub_kv p span {
    display: block;
    font-size: 1.8rem;
    letter-spacing: 4px;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    padding-top: 10px;
}

@media screen and (max-width: 1024px) {

    .sub_kv h1 span,
    .sub_kv p span {
        font-size: 2.6rem;
    }
}

@media screen and (max-width: 600px) {

    .sub_kv h1 span,
    .sub_kv p span {
        font-size: 1.3rem;
    }
}

.sub_kv h1 {
    text-transform: uppercase;
}

.sub_kv.sub_kv_works {
    margin-bottom: 0;
    background-image: url("../image/work/pagetitle_backgound.jpg");
}

@media screen and (max-width: 1024px) {
    .sub_kv.sub_kv_works {
        background-image: url("../image/work/pagetitle_backgound_sp.jpg");
    }
}

.sub_kv.sub_kv_works h1,
.sub_kv.sub_kv_works p {
    color: #294AD9;
}

.sub_kv.sub_kv_works h1 span,
.sub_kv.sub_kv_works p span {
    color: black;
}

.head_txt_h2 {
    text-align: center;
    margin: 0 0 70px 0;
}

@media screen and (max-width: 1024px) {
    .head_txt_h2 {
        margin-bottom: 65px;
    }
}

@media screen and (max-width: 600px) {
    .head_txt_h2 {
        margin-bottom: 32.5px;
    }
}

.head_txt_h2 .head_txt_h2_en {
    display: block;
    color: #294AD9;
    font-size: 3.4rem;
    letter-spacing: 4px;
    line-height: 1.4;
    font-family: "Lato", sans-serif;
    font-weight: 400;
    margin-bottom: 15px;
}

@media screen and (max-width: 1024px) {
    .head_txt_h2 .head_txt_h2_en {
        font-size: 4.6rem;
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 600px) {
    .head_txt_h2 .head_txt_h2_en {
        font-size: 2.3rem;
        margin-bottom: 10px;
    }
}

.head_txt_h2 .head_txt_h2_ja {
    display: inline-block;
    font-size: 1.6rem;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 1.5;
    word-break: break-all;
}

@media screen and (max-width: 1024px) {
    .head_txt_h2 .head_txt_h2_ja {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .head_txt_h2 .head_txt_h2_ja {
        font-size: 1.2rem;
    }
}

.head_txt_h2 .head_txt_h2_ja br.sp {
    display: none;
}

@media screen and (max-width: 600px) {
    .head_txt_h2 .head_txt_h2_ja br.sp {
        display: block;
    }
}

.sb_function_container .bk_img_right::before {
    top: -180px;
}

.sb_function_container .head_txt_h2 {
    text-align: center;
    margin: 0 0 40px 0;
}

@media screen and (max-width: 600px) {
    .sb_function_container .head_txt_h2 {
        margin-bottom: 20px;
    }
}

.sb_function_container .head_txt_h2 .head_txt_h2_en {
    font-size: 2rem;
    letter-spacing: 2px;
    line-height: 2.3;
    font-style: italic;
    margin-bottom: 0;
}

@media screen and (max-width: 1024px) {
    .sb_function_container .head_txt_h2 .head_txt_h2_en {
        font-size: 3rem;
    }
}

@media screen and (max-width: 600px) {
    .sb_function_container .head_txt_h2 .head_txt_h2_en {
        font-size: 1.5rem;
    }
}

.sb_function_container .head_txt_h2 .head_txt_h2_ja {
    font-size: 2.8rem;
    letter-spacing: 2px;
}

@media screen and (max-width: 1024px) {
    .sb_function_container .head_txt_h2 .head_txt_h2_ja {
        font-size: 4.2rem;
    }
}

@media screen and (max-width: 600px) {
    .sb_function_container .head_txt_h2 .head_txt_h2_ja {
        font-size: 2.1rem;
    }
}

.sb_function_container .head_txt_h2 .head_txt_h2_ja::before {
    content: "";
    display: block;
    min-width: 175px;
    width: calc(100% - 140px);
    height: 1px;
    background-color: #294AD9;
    margin: 5px auto 10px auto;
}

@media screen and (max-width: 1024px) {
    .sb_function_container .head_txt_h2 .head_txt_h2_ja::before {
        width: calc(100% - 200px);
    }
}

@media screen and (max-width: 600px) {
    .sb_function_container .head_txt_h2 .head_txt_h2_ja::before {
        margin: 2.5px auto 5px auto;
        width: 100%;
    }
}

.sb_function_container .head_txt_h2 .head_txt_h2_ja br.sp {
    display: none;
}

@media screen and (max-width: 600px) {
    .sb_function_container .head_txt_h2 .head_txt_h2_ja br.sp {
        display: block;
    }
}

.sb_function_container .function_cont01 {
    margin-bottom: 100px;
}

@media screen and (max-width: 1024px) {
    .sb_function_container .function_cont01 {
        margin-bottom: 90px;
    }
}

@media screen and (max-width: 600px) {
    .sb_function_container .function_cont01 {
        margin-bottom: 45px;
    }
}

.sb_function_container .content_item01 {
    position: relative;
    background-image: url("../image/function/function_contents_bg_pc.png");
    background-position: left bottom;
    background-size: cover;
    background-repeat: no-repeat;
    margin-bottom: 60px;
    padding: 80px 0 40px 0;
}

@media screen and (max-width: 1024px) {
    .sb_function_container .content_item01 {
        padding: 100px 0 80px 0;
        margin-bottom: 100px;
    }
}

@media screen and (max-width: 600px) {
    .sb_function_container .content_item01 {
        padding: 50px 0 40px 0;
        margin-bottom: 50px;
    }
}

.sb_function_container .content_item01::before {
    content: "";
    display: block;
    position: absolute;
    top: -17px;
    left: calc(50% - 21.5px);
    background-image: url(../image/function/function_head_icon.svg);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: contain;
    width: 43px;
    height: 47px;
}

@media screen and (max-width: 1024px) {
    .sb_function_container .content_item01::before {
        width: 64px;
        height: 71px;
        left: calc(50% - 32px);
        top: -23px;
    }
}

@media screen and (max-width: 600px) {
    .sb_function_container .content_item01::before {
        width: 32px;
        height: 35.5px;
        left: calc(50% - 16px);
        top: -13px;
    }
}

.sb_function_container .content_item01 .content_item_cont {
    display: flex;
    justify-content: space-between;
    width: calc(100% - 80px);
    max-width: 1005px;
    margin: 0 auto 0 auto;
}

@media screen and (max-width: 1024px) {
    .sb_function_container .content_item01 .content_item_cont {
        flex-direction: column;
        width: calc(100% - 100px);
    }
}

@media screen and (max-width: 600px) {
    .sb_function_container .content_item01 .content_item_cont {
        width: calc(100% - 50px);
    }
}

.sb_function_container .content_item01 .content_item_cont .col2 {
    width: calc(100% - 340px);
}

@media screen and (max-width: 1024px) {
    .sb_function_container .content_item01 .content_item_cont .col2 {
        width: 100%;
    }
}

.sb_function_container .content_item01 .content_item_cont .col2 .lead_head_txt {
    font-size: 2.6rem;
    line-height: 1.5;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    margin: 15px 0 15px 0;
}

@media screen and (max-width: 1024px) {
    .sb_function_container .content_item01 .content_item_cont .col2 .lead_head_txt {
        font-size: 3.8rem;
        margin: 20px 0 10px 0;
    }
}

@media screen and (max-width: 600px) {
    .sb_function_container .content_item01 .content_item_cont .col2 .lead_head_txt {
        font-size: 1.9rem;
        margin: 10px 0 5px 0;
    }
}

.sb_function_container .content_item01 .content_item_cont .col2 .lead_head_txt span {
    display: block;
    color: #294AD9;
    font-size: 1.6rem;
    margin-bottom: 5px;
}

@media screen and (max-width: 1024px) {
    .sb_function_container .content_item01 .content_item_cont .col2 .lead_head_txt span {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .sb_function_container .content_item01 .content_item_cont .col2 .lead_head_txt span {
        font-size: 1.2rem;
        margin-bottom: 2.5px;
    }
}

.sb_function_container .content_item01 .content_item_cont .col2 .lead_detail_txt {
    font-size: 1.4rem;
    line-height: 2;
    margin: 0 0 30px 0;
}

@media screen and (max-width: 1024px) {
    .sb_function_container .content_item01 .content_item_cont .col2 .lead_detail_txt {
        font-size: 2.4rem;
        margin-bottom: 35px;
    }
}

@media screen and (max-width: 600px) {
    .sb_function_container .content_item01 .content_item_cont .col2 .lead_detail_txt {
        font-size: 1.2rem;
        margin-bottom: 17.5px;
    }
}

.sb_function_container .content_item01 .content_item_cont .col2 .info_list {
    display: block;
    background-color: white;
    text-align: center;
    color: #294AD9;
    font-size: 1.4rem;
    line-height: 1.2;
    padding: 10px 10px 10px 10px;
    margin: 0 0 12px 0;
    border-radius: 5px;
}

@media screen and (max-width: 1024px) {
    .sb_function_container .content_item01 .content_item_cont .col2 .info_list {
        font-size: 2.4rem;
        padding: 21px 20px 21px 20px;
        margin-bottom: 20px;
        border-radius: 8px;
    }
}

@media screen and (max-width: 600px) {
    .sb_function_container .content_item01 .content_item_cont .col2 .info_list {
        font-size: 1.2rem;
        line-height: 1.4;
        padding: 10.5px 10px 10.5px 10px;
        margin-bottom: 10px;
        border-radius: 4px;
    }
}

.sb_function_container .content_item01 .content_item_cont .col2:nth-child(2) {
    max-width: 340px;
}

@media screen and (max-width: 1024px) {
    .sb_function_container .content_item01 .content_item_cont .col2:nth-child(2) {
        max-width: none;
    }
}

.sb_function_container .content_item01 .content_item_cont .col2 img {
    display: block;
    position: relative;
    left: -15px;
    max-width: 100%;
}

@media screen and (max-width: 1024px) {
    .sb_function_container .content_item01 .content_item_cont .col2 img {
        left: -10px;
        max-width: none;
        width: calc(100% + 40px);
    }
}

@media screen and (max-width: 600px) {
    .sb_function_container .content_item01 .content_item_cont .col2 img {
        width: calc(100% + 30px);
    }
}

.sb_function_container .content_item01 .tab_container {
    display: flex;
    justify-content: space-between;
    width: 480px;
    padding: 0 0 0 0;
    margin: 0 auto 45px auto;
}

@media screen and (max-width: 1024px) {
    .sb_function_container .content_item01 .tab_container {
        width: calc(100% - 100px);
        margin-bottom: 60px;
    }
}

@media screen and (max-width: 600px) {
    .sb_function_container .content_item01 .tab_container {
        width: calc(100% - 50px);
        margin-bottom: 30px;
    }
}

.sb_function_container .content_item01 .tab_container .tab_list_item {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 45px;
    width: 150px;
    background-color: white;
    color: #b3b3b3;
    font-size: 1.4rem;
    font-weight: 600;
    margin-right: 15px;
    box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 1024px) {
    .sb_function_container .content_item01 .tab_container .tab_list_item {
        font-size: 2.2rem;
        width: calc(33.33% - 13.3px);
        height: 70px;
        margin-right: 20px;
        box-shadow: 7px 7px 7px rgba(0, 0, 0, 0.1);
    }
}

@media screen and (max-width: 600px) {
    .sb_function_container .content_item01 .tab_container .tab_list_item {
        font-size: 1.1rem;
        width: calc(33.33% - 6.5px);
        height: 45px;
        margin-right: 10px;
        box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.1);
    }
}

.sb_function_container .content_item01 .tab_container .tab_list_item.current {
    background-color: #294AD9;
    color: white;
}

.sb_function_container .content_item01 .tab_container .tab_list_item:nth-last-child(1) {
    margin-right: 0;
}

.sb_about_container .head_txt_h2 {
    text-align: center;
    margin: 0 0 70px 0;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .head_txt_h2 {
        margin-bottom: 65px;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .head_txt_h2 {
        margin-bottom: 32.5px;
    }
}

.sb_about_container .head_txt_h2 .head_txt_h2_ja br.sp {
    display: none;
}

@media screen and (max-width: 600px) {
    .sb_about_container .head_txt_h2 .head_txt_h2_ja br.sp {
        display: block;
    }
}

.sb_about_container .about_cont01 .content_item01 {
    display: flex;
    justify-content: space-between;
    margin-bottom: 130px;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 {
        flex-direction: column;
        margin-bottom: 80px;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .content_item01 {
        margin-bottom: 40px;
    }
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_left {
    width: calc(50% - 130px);
    margin-left: 40px;
    max-width: 420px;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_left {
        width: 100%;
        max-width: none;
        margin-left: 0;
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_left {
        margin-bottom: 20px;
    }
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt {
    display: flex;
    align-items: center;
    font-size: 2rem;
    line-height: 2.2;
    color: #294AD9;
    font-family: "Lato", sans-serif;
    font-style: italic;
    font-weight: 400;
    margin-bottom: 25px;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt {
        font-size: 3rem;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt {
        font-size: 1.5rem;
        margin-bottom: 17.5px;
    }
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt span {
    display: block;
    border-bottom: solid 1px #294AD9;
    padding-right: 30px;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt span {
        padding-right: 40px;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt span {
        padding-right: 20px;
    }
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt::before {
    content: "";
    display: block;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    min-width: 85px;
    min-height: 94px;
    margin-right: 18px;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt::before {
        min-width: 128px;
        min-height: 141px;
        margin-right: 25px;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt::before {
        min-width: 63px;
        min-height: 70.5px;
        margin-right: 12.5px;
    }
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt.caption_01::before {
    background-image: url("../image/about/icon_about_strengths_list_1.svg");
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt.caption_02::before {
    background-image: url("../image/about/icon_about_strengths_list_2.svg");
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt.caption_03::before {
    background-image: url("../image/about/icon_about_strengths_list_3.svg");
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt.caption_04::before {
    background-image: url("../image/about/icon_about_strengths_list_4.svg");
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt.caption_05::before {
    background-image: url("../image/about/icon_about_strengths_list_5.svg");
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt.caption_06::before {
    background-image: url("../image/about/icon_about_strengths_list_6.svg");
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_left .caption_txt.caption_07::before {
    background-image: url("../image/about/icon_about_strengths_list_7.svg");
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_left .head_lead_txt {
    font-size: 2.8rem;
    line-height: 1.5;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    margin: 0 0 20px 0;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_left .head_lead_txt {
        font-size: 3.8rem;
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_left .head_lead_txt {
        font-size: 1.9rem;
        margin-bottom: 15px;
    }
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_left .detail_txt {
    font-size: 1.4rem;
    line-height: 2;
    margin: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_left .detail_txt {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_left .detail_txt {
        font-size: 1.2rem;
    }
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_right {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    width: calc(50% + 60px);
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right {
        width: 100%;
    }
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_right .col1 {
    width: 100%;
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_right .item_pic {
    position: relative;
    margin-bottom: 40px;
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .item_pic {
        margin-bottom: 20px;
    }
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_right .item_pic::before {
    content: "";
    display: block;
    position: absolute;
    bottom: -40px;
    left: 0;
    border: solid 1px #294AD9;
    max-width: 501px;
    max-height: 301px;
    width: calc(100% - 60px);
    height: calc(100% - 100px);
    z-index: -1;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .item_pic::before {
        max-width: none;
        max-height: none;
        width: calc(100% - 40px);
        height: calc(100% - 50px);
        bottom: -40px;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .item_pic::before {
        width: calc(100% - 20px);
        height: calc(100% - 25px);
        bottom: -20px;
    }
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_right .item_pic .item_pic_wrap {
    position: relative;
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_right .item_pic .item_pic_wrap img {
    margin-left: auto;
    width: calc(100% - 40px);
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .item_pic .item_pic_wrap img {
        width: calc(100% - 20px);
    }
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_right .next_link {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: absolute;
    font-size: 1.4rem;
    letter-spacing: 1px;
    color: black;
    text-decoration: none;
    font-family: "Lato", sans-serif;
    font-weight: 400;
    background-color: #fcee21;
    border: solid 2px transparent;
    border-radius: 5px;
    height: 100px;
    width: 120px;
    bottom: -65px;
    right: 109px;
    transition: border 0.5s ease, color 0.5s ease, background-color 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .next_link {
        font-size: 2.4rem;
        width: 200px;
        height: 166px;
        bottom: -118px;
        right: 35px;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .next_link {
        font-size: 1.2rem;
        width: 100px;
        height: 83px;
        bottom: -59px;
        right: 17.5px;
    }
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_right .next_link::after {
    content: "";
    display: block;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("../image/common/next_arr.svg");
    width: 38px;
    height: 5px;
    margin-top: 10px;
    transition: background-image 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .next_link::after {
        width: 64px;
        height: 8px;
        margin-top: 15px;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .next_link::after {
        width: 32px;
        height: 4px;
        margin-top: 7.5px;
    }
}

@media screen and (min-width: 1023px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .next_link:hover {
        background-color: white;
        border: solid 2px #294AD9;
        color: #294AD9;
        transition: border 0.5s ease, color 0.5s ease, background-color 0.5s ease;
    }

    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .next_link:hover::after {
        background-image: url("../image/common/next_arr_blue.svg");
        transition: background-image 0.5s ease;
    }
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_right .col2 {
    width: calc(50% - 10px);
    margin-bottom: 15px;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .col2 {
        width: 100%;
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .col2 {
        margin-bottom: 10px;
    }
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_right img {
    display: block;
    max-width: 100%;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right img {
        width: 100%;
    }
}

.sb_about_container .about_cont01 .content_item01 .content_item_col_right .caption_txt_list {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    list-style: none;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .caption_txt_list {
        margin-top: 25px;
    }
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .caption_txt_list {
        margin-top: 17.5px;
    }
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .caption_txt_list li {
        font-size: 2.4rem;
        line-height: 1.5;
        text-align: center;
        color: #294AD9;
        background-color: #e9edfb;
        border-radius: 10px;
        padding: 17px 17px;
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .content_item01 .content_item_col_right .caption_txt_list li {
        font-size: 1.2rem;
        padding: 8.5px 8.5px;
        border-radius: 5px;
        margin-bottom: 10px;
    }
}

.sb_about_container .about_cont01 .thum_pic_list {
    display: flex;
    justify-content: space-between;
    padding: 0 0 0 0;
    margin: 35px 0 0 0;
    list-style: none;
    max-width: 380px;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .thum_pic_list {
        max-width: none;
        margin: 130px 0 20px 0;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .thum_pic_list {
        margin: 65px 0 10px 0;
    }
}

.sb_about_container .about_cont01 .thum_pic_list li {
    width: calc(33.33% - 10px);
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont01 .thum_pic_list li {
        width: calc(33.33% - 11px);
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont01 .thum_pic_list li {
        width: calc(33.33% - 5.5px);
    }
}

.sb_about_container .about_cont01 .thum_pic_list li img {
    display: block;
    width: 100%;
}

.sb_about_container .about_cont02 .about_cont02_logo {
    margin: 0 0 35px 0;
}

.sb_about_container .about_cont02 .about_cont02_logo img {
    display: block;
    max-width: 100%;
    width: 367px;
    margin: 0 auto 0 auto;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont02 .about_cont02_logo img {
        max-width: 504px;
        width: calc(100% - 40px);
    }
}

.sb_about_container .about_cont02 .about_cont02_logo::after {
    content: "";
    display: block;
    background-image: url("../image/about/cross.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    height: 31px;
    width: 31px;
    margin: 30px auto 0 auto;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont02 .about_cont02_logo::after {
        height: 42px;
        width: 42px;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont02 .about_cont02_logo::after {
        height: 21px;
        width: 21px;
    }
}

.sb_about_container .about_cont02 .content_item02 {
    margin-bottom: 130px;
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont02 .content_item02 {
        margin-bottom: 65px;
    }
}

.sb_about_container .about_cont02 .content_item02 .service_list {
    list-style: none;
    padding: 0 0 0 0;
    margin: 0 0 0 0;
}

.sb_about_container .about_cont02 .content_item02 .service_list .service_list_item {
    display: flex;
    justify-content: space-between;
    background-color: #f2f2f2;
    padding: 50px 60px 50px 60px;
    margin-bottom: 20px;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont02 .content_item02 .service_list .service_list_item {
        flex-direction: column;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont02 .content_item02 .service_list .service_list_item {
        padding: 25px 30px 25px 30px;
        margin-bottom: 10px;
    }
}

.sb_about_container .about_cont02 .content_item02 .service_list .service_list_item::before {
    content: "";
    display: block;
    position: absolute;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    min-height: 200px;
    min-width: 200px;
    border-radius: 8px;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont02 .content_item02 .service_list .service_list_item::before {
        display: none;
    }
}

.sb_about_container .about_cont02 .content_item02 .service_list .service_list_item.item01::before {
    background-image: url("../image/about/icon_about_crossing_votory.png");
}

.sb_about_container .about_cont02 .content_item02 .service_list .service_list_item.item02::before {
    background-image: url("../image/about/icon_about_crossing_arsync.png");
}

.sb_about_container .about_cont02 .content_item02 .service_list .service_list_item.item03::before {
    background-image: url("../image/about/icon_about_crossing_vtrack.png");
}

.sb_about_container .about_cont02 .content_item02 .service_list .service_list_item.item04::before {
    background-image: url("../image/about/icon_about_crossing_bosai.png");
}

.sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap {
    width: calc(100% - 230px);
    margin-left: auto;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap {
        width: 100%;
    }
}

.sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .list_item_head {
    display: block;
    font-size: 2rem;
    line-height: 1.4;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    margin-bottom: 17px;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .list_item_head {
        display: flex;
        align-items: center;
        font-size: 2.8rem;
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .list_item_head {
        font-size: 1.4rem;
        margin-bottom: 15px;
    }
}

.sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .list_item_head::before {
    content: "";
    display: none;
    position: relative;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    min-height: 200px;
    min-width: 200px;
    border-radius: 8px;
    margin-right: 50px;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .list_item_head::before {
        display: block;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .list_item_head::before {
        min-height: 100px;
        min-width: 100px;
        margin-right: 25px;
        border-radius: 4px;
    }
}

.sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .list_item_head.head_item01::before {
    background-image: url("../image/about/icon_about_crossing_votory.png");
}

.sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .list_item_head.head_item02::before {
    background-image: url("../image/about/icon_about_crossing_arsync.png");
}

.sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .list_item_head.head_item03::before {
    background-image: url("../image/about/icon_about_crossing_vtrack.png");
}

.sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .list_item_head.head_item04::before {
    background-image: url("../image/about/icon_about_crossing_bosai.png");
}

.sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .service_detail_txt {
    font-size: 1.4rem;
    line-height: 2;
    margin: 0 0 15px 0;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .service_detail_txt {
        font-size: 2.4rem;
        margin-bottom: 25px;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .service_detail_txt {
        font-size: 1.2rem;
        margin-bottom: 17.5px;
    }
}

.sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .service_link a {
    color: black;
    font-size: 1.4rem;
    line-height: 2;
}

@media screen and (max-width: 1024px) {
    .sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .service_link a {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .sb_about_container .about_cont02 .content_item02 .service_list .service_list_item .service_list_item_wrap .service_link a {
        font-size: 1.2rem;
    }
}

.cont_lead_text {
    margin-bottom: 110px;
}

@media screen and (max-width: 1024px) {
    .cont_lead_text {
        margin-bottom: 150px;
    }
}

@media screen and (max-width: 600px) {
    .cont_lead_text {
        margin-bottom: 75px;
    }
}

.cont_lead_text .lead_text01 {
    text-align: center;
    margin: 0 0 0 0;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
}

@media screen and (max-width: 1024px) {
    .cont_lead_text .lead_text01 {
        width: 95%;
        margin: 0 auto;
    }
}

@media screen and (max-width: 600px) {
    .cont_lead_text .lead_text01 {
        width: 85%;
        margin: 0 auto;
    }
}

.cont_lead_text .lead_text01 .lead_text01_01 {
    display: block;
    font-size: 1.8rem;
    line-height: 1.8;
    margin-bottom: 5px;
}

@media screen and (max-width: 1024px) {
    .cont_lead_text .lead_text01 .lead_text01_01 {
        font-size: 2.4rem;
        margin-bottom: 10px;
    }
}

@media screen and (max-width: 600px) {
    .cont_lead_text .lead_text01 .lead_text01_01 {
        font-size: 1.2rem;
        margin-bottom: 5px;
    }
}

.cont_lead_text .lead_text01 .lead_text01_02 {
    display: block;
    font-size: 2.4rem;
    line-height: 1.6;
    margin-bottom: 30px;
}

@media screen and (max-width: 1024px) {
    .cont_lead_text .lead_text01 .lead_text01_02 {
        font-size: 3.2rem;
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 600px) {
    .cont_lead_text .lead_text01 .lead_text01_02 {
        font-size: 1.6rem;
        margin-bottom: 20px;
    }
}

.cont_lead_text .lead_text01 .lead_text01_02 br.sp {
    display: none;
}

@media screen and (max-width: 1024px) {
    .cont_lead_text .lead_text01 .lead_text01_02 br.sp {
        display: block;
    }
}

.cont_lead_text .lead_text02 {
    font-size: 1.6rem;
    line-height: 2;
    text-align: center;
    margin: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .cont_lead_text .lead_text02 {
        font-size: 2.6rem;
    }
}

@media screen and (max-width: 600px) {
    .cont_lead_text .lead_text02 {
        font-size: 1.3rem;
    }
}

.content_navi_list {
    display: flex;
    justify-content: space-between;
    list-style: none;
    margin: 0 0 0 0;
    padding: 0 0 100px 0;
}

@media screen and (max-width: 1024px) {
    .content_navi_list {
        flex-wrap: wrap;
        padding-bottom: 90px;
    }
}

@media screen and (max-width: 600px) {
    .content_navi_list {
        padding-bottom: 45px;
    }
}

.content_navi_list .list_item {
    height: 92px;
    width: calc(25% - 15px);
    border: solid 1px #294AD9;
    background-color: white;
}

@media screen and (max-width: 1024px) {
    .content_navi_list .list_item {
        height: 100px;
        width: calc(50% - 12.5px);
        margin-bottom: 25px;
    }
}

@media screen and (max-width: 600px) {
    .content_navi_list .list_item {
        height: 60px;
        width: calc(50% - 6.25px);
        margin-bottom: 12.5px;
    }
}

.content_navi_list .list_item a {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    color: black;
    text-decoration: none;
    height: 100%;
    width: 100%;
    transition: background-color 0.5s ease;
}

.content_navi_list .list_item a .list_item_text {
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    font-size: 1.8rem;
    transition: color 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .content_navi_list .list_item a .list_item_text {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .content_navi_list .list_item a .list_item_text {
        font-size: 1.2rem;
    }
}

@media screen and (max-width: 330px) {
    .content_navi_list .list_item a .list_item_text {
        text-align: center;
    }
}

.content_navi_list .list_item a .list_item_text span {
    font-size: 1.4rem;
    color: #294AD9;
    font-family: "Lato", sans-serif;
    font-style: italic;
    font-weight: 400;
    letter-spacing: 0.8px;
    transition: color 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .content_navi_list .list_item a .list_item_text span {
        font-size: 2rem;
    }
}

@media screen and (max-width: 600px) {
    .content_navi_list .list_item a .list_item_text span {
        font-size: 1rem;
    }
}

@media screen and (max-width: 330px) {
    .content_navi_list .list_item a .list_item_text span {
        display: block;
        margin-top: 5px;
    }
}

.content_navi_list .list_item a::after {
    content: "";
    display: block;
    background-image: url("../image/function/icon_blue_arw_dwn.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 10.5px;
    height: 5.25px;
    margin-top: 20px;
    transition: background-image 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .content_navi_list .list_item a::after {
        width: 11.5px;
        height: 5.78px;
        margin-top: 15px;
    }
}

@media screen and (max-width: 600px) {
    .content_navi_list .list_item a::after {
        width: 5.75x;
        height: 2.89px;
        margin-top: 7.5px;
    }
}

@media screen and (min-width: 1023px) {
    .content_navi_list .list_item a:hover {
        background-color: #294AD9;
        border: transparent;
        transition: background-color 0.5s ease;
    }

    .content_navi_list .list_item a:hover .list_item_text {
        color: white;
        transition: color 0.5s ease;
    }

    .content_navi_list .list_item a:hover .list_item_text span {
        color: white;
        transition: color 0.5s ease;
    }

    .content_navi_list .list_item a:hover::after {
        background-image: url("../image/function/icon_white_arw_dwn.svg");
        transition: background-image 0.5s ease;
    }
}

.demo_experience_bnr_cont {
    position: relative;
    background-color: #294AD9;
    width: 100%;
    border-radius: 5px;
    margin: 0 auto 0 auto;
    padding: 85px 0 65px 0;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont {
        border-radius: 0%;
    }
}

.demo_experience_bnr_cont::before,
.demo_experience_bnr_cont::after {
    content: "";
    display: block;
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
}

.demo_experience_bnr_cont::before {
    background-image: url("../image/function/demo_bn_pc_01.png");
    background-position: left bottom;
    width: 137px;
    height: 195px;
    left: 0;
    bottom: 0;
}

.demo_experience_bnr_cont::after {
    background-image: url("../image/function/demo_bn_pc_02.png");
    background-position: right bottom;
    width: 100%;
    height: 100%;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont {
        padding: 105px 0 100px 0;
    }

    .demo_experience_bnr_cont::before {
        background-image: url("../image/function/demo_bn_sp_01.png");
        width: 235px;
        height: 332px;
    }

    .demo_experience_bnr_cont::after {
        background-image: url("../image/function/demo_bn_sp02.png");
    }
}

@media screen and (max-width: 600px) {
    .demo_experience_bnr_cont {
        padding: 52.5px 0 50px 0;
    }

    .demo_experience_bnr_cont::before {
        width: 117.5px;
        height: 166px;
    }
}

@media screen and (max-width: 330px) {
    .demo_experience_bnr_cont::before {
        width: 94px;
        height: 132.8px;
    }

    .demo_experience_bnr_cont::after {
        background-position: right 50%;
        background-image: url("../image/function/demo_bn_sp03.png");
    }
}

.demo_experience_bnr_cont .demo_experience_content_item {
    position: relative;
    min-width: 580px;
    max-width: 1000px;
    width: calc(100% - 190px);
    padding-right: 35%;
    margin: 0 auto 0 auto;
    z-index: 9;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont .demo_experience_content_item {
        width: calc(100% - 100px);
        min-width: auto;
        padding-right: 0;
    }
}

@media screen and (max-width: 600px) {
    .demo_experience_bnr_cont .demo_experience_content_item {
        width: calc(100% - 50px);
    }
}

.demo_experience_bnr_cont .demo_experience_content_item .lead_head_txt {
    color: white;
    font-size: 2.4rem;
    line-height: 1.5;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    margin: 0 0 22px 0;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont .demo_experience_content_item .lead_head_txt {
        font-size: 3.2rem;
        margin-bottom: 85px;
    }
}

@media screen and (max-width: 600px) {
    .demo_experience_bnr_cont .demo_experience_content_item .lead_head_txt {
        font-size: 1.6rem;
        margin-bottom: 42.5px;
    }
}

@media screen and (max-width: 330px) {
    .demo_experience_bnr_cont .demo_experience_content_item .lead_head_txt {
        margin-bottom: 80px;
    }
}

.demo_experience_bnr_cont .demo_experience_content_item .lead_head_txt span {
    display: block;
    margin-bottom: 25px;
}

@media screen and (max-width: 600px) {
    .demo_experience_bnr_cont .demo_experience_content_item .lead_head_txt span {
        margin-bottom: 12.5px;
    }
}

.demo_experience_bnr_cont .demo_experience_content_item .lead_head_txt span img {
    display: block;
    width: 255px;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont .demo_experience_content_item .lead_head_txt span img {
        max-width: 315px;
        width: 50%;
    }
}

@media screen and (max-width: 600px) {
    .demo_experience_bnr_cont .demo_experience_content_item .lead_head_txt span img {
        max-width: 157.5px;
        width: 70%;
    }
}

.demo_experience_bnr_cont .demo_experience_content_item .lead_head_txt br.sp {
    display: none;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont .demo_experience_content_item .lead_head_txt br.sp {
        display: block;
    }
}

.demo_experience_bnr_cont .demo_experience_content_item .demo_experience_list {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    list-style: none;
    padding: 0 0 0 0;
    margin: 0 0 30px 0;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont .demo_experience_content_item .demo_experience_list {
        display: none;
    }
}

.demo_experience_bnr_cont .demo_experience_content_item .demo_experience_list .list_item {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.4rem;
    border: solid 1px white;
    color: white;
    background-color: #294AD9;
    height: 30px;
    padding: 0 20px;
    border-radius: 15px;
    margin: 0 10px 10px 0;
}

.demo_experience_bnr_cont .demo_experience_content_item .demo_experience_list .list_item:nth-last-child(1) {
    margin-right: 0;
}

.demo_experience_bnr_cont .demo_experience_content_item .link_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    text-decoration: none;
    background-color: #fcee21;
    color: black;
    font-size: 1.4rem;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    width: 300px;
    height: 45px;
    border-radius: 5px;
    border: solid 2px transparent;
    transition: border 0.5s ease, color 0.5s ease, background-color 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont .demo_experience_content_item .link_wrap {
        font-size: 2.4rem;
        max-width: 450px;
        width: calc(100% - 80px);
        height: 80px;
        border-radius: 4px;
        margin: 0 auto 0 auto;
    }
}

@media screen and (max-width: 600px) {
    .demo_experience_bnr_cont .demo_experience_content_item .link_wrap {
        font-size: 1.2rem;
        height: 40px;
        max-width: 225px;
        width: calc(100% - 40px);
        border-radius: 2px;
    }
}

@media screen and (max-width: 330px) {
    .demo_experience_bnr_cont .demo_experience_content_item .link_wrap {
        width: calc(100% - 20px);
    }
}

.demo_experience_bnr_cont .demo_experience_content_item .link_wrap span {
    display: flex;
    position: relative;
    left: 15px;
    align-items: center;
    justify-content: center;
}

.demo_experience_bnr_cont .demo_experience_content_item .link_wrap span::after {
    content: "";
    display: block;
    position: relative;
    right: 0;
    background-repeat: no-repeat;
    background-image: url(../image/function/function_bnr_btn_arw.svg);
    background-position: center;
    background-size: contain;
    width: 38px;
    height: 5px;
    margin-left: 15px;
    transition: transform 0.2s ease;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont .demo_experience_content_item .link_wrap span::after {
        width: 58px;
        height: 8px;
        margin-left: 20px;
    }
}

@media screen and (max-width: 600px) {
    .demo_experience_bnr_cont .demo_experience_content_item .link_wrap span::after {
        width: 29px;
        height: 4px;
        margin-left: 10px;
    }
}

@media screen and (min-width: 1023px) {
    .demo_experience_bnr_cont .demo_experience_content_item .link_wrap:hover {
        border: solid 2px white;
        color: white;
        background-color: #294AD9;
        transition: border 0.5s ease, color 0.5s ease, background-color 0.5s ease;
    }

    .demo_experience_bnr_cont .demo_experience_content_item .link_wrap:hover span::after {
        background-image: url(../image/function/function_bnr_btn_arw_white.svg);
        transition: background-image 0.5s ease;
    }
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_2 {
    background-color: #f2f2f2;
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_2::before {
    background-image: url("../image/about/original_bnr_bg02.png");
    background-position: left center;
    height: 100%;
    width: 100%;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_2::before {
        background-image: url("../image/about/strengths_pic_1-1_sp02.png");
        background-position: right bottom;
    }
}

@media screen and (max-width: 330px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_2::before {
        background-image: url("../image/about/strengths_pic_1-1_sp04.png");
    }
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_2::after {
    background-image: url("../image/about/original_bnr_bg01.png");
    background-position: right top;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_2::after {
        background-image: url("../image/about/strengths_pic_1-1_sp01.png");
    }
}

@media screen and (max-width: 330px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_2::after {
        background-image: url("../image/about/strengths_pic_1-1_sp03.png");
    }
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_2 .bk_img::before {
    content: "";
    display: block;
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right bottom;
    background-image: url(../image/about/original_bnr_bg03.png);
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_2 .bk_img::before {
        display: none;
    }
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_2 .demo_experience_content_item .lead_head_txt {
    color: black;
    margin-bottom: 15px;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_2 .demo_experience_content_item .lead_head_txt {
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 600px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_2 .demo_experience_content_item .lead_head_txt {
        margin-bottom: 14px;
    }
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_2 .demo_experience_content_item .lead_head_txt span {
    margin-bottom: 10px;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_2 .demo_experience_content_item .lead_head_txt span {
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 600px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_2 .demo_experience_content_item .lead_head_txt span {
        margin-bottom: 14px;
    }
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_2 .demo_experience_content_item .demo_detail_txt {
    font-size: 1.7rem;
    line-height: 1.8;
    color: #294AD9;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    margin: 0 0 30px 0;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_2 .demo_experience_content_item .demo_detail_txt {
        font-size: 2.4rem;
        margin-bottom: 230px;
    }
}

@media screen and (max-width: 600px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_2 .demo_experience_content_item .demo_detail_txt {
        font-size: 1.2rem;
        margin-bottom: 115px;
    }
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_2 .demo_experience_content_item .link_wrap {
    color: white;
    background-color: #294AD9;
    border: solid 2px transparent;
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_2 .demo_experience_content_item .link_wrap span::after {
    background-image: url("../image/about/arw_white_right.svg");
}

@media screen and (min-width: 1023px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_2 .demo_experience_content_item .link_wrap:hover {
        color: #294AD9;
        background-color: white;
        border: solid 2px #294AD9;
    }

    .demo_experience_bnr_cont.demo_experience_bnr_cont_2 .demo_experience_content_item .link_wrap:hover span::after {
        background-image: url("../image/about/arw_white_right_blue.svg");
    }
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_3 {
    background-color: #e9edfb;
    margin-bottom: 100px;
}

@media screen and (max-width: 600px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_3 {
        margin-bottom: 50px;
    }
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_3::before {
    display: none;
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_3::after {
    background-image: url("../image/faq/faq_item01.png");
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_3::after {
        display: none;
    }
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_3 .demo_experience_content_item .lead_head_txt {
    font-size: 3.4rem;
    color: #294AD9;
    font-family: "Lato", sans-serif;
    font-weight: 400;
    margin-bottom: 30px;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_3 .demo_experience_content_item .lead_head_txt {
        font-size: 4.6rem;
        margin-bottom: 50px;
        text-align: center;
    }
}

@media screen and (max-width: 600px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_3 .demo_experience_content_item .lead_head_txt {
        font-size: 2.3rem;
        margin-bottom: 25px;
    }
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_3 .demo_experience_content_item .lead_head_txt span {
    display: block;
    font-size: 1.4rem;
    line-height: 1.4;
    color: black;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    margin-top: 15px;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_3 .demo_experience_content_item .lead_head_txt span {
        font-size: 2.4rem;
        margin-top: 5px;
    }
}

@media screen and (max-width: 600px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_3 .demo_experience_content_item .lead_head_txt span {
        font-size: 1.2rem;
        margin-top: 2.5px;
    }
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_3 .demo_experience_content_item .demo_detail_txt {
    font-size: 1.4rem;
    line-height: 1.4;
    margin-bottom: 30px;
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_3 .demo_experience_content_item .demo_detail_txt {
        font-size: 2.4rem;
        margin-bottom: 45px;
        text-align: center;
    }
}

@media screen and (max-width: 600px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_3 .demo_experience_content_item .demo_detail_txt {
        font-size: 1.2rem;
        margin-bottom: 22.5px;
    }
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_3 .link_wrap {
    background-color: #294AD9;
    color: white;
}

.demo_experience_bnr_cont.demo_experience_bnr_cont_3 .link_wrap span::after {
    background-image: url("../image/about/arw_white_right.svg");
}

@media screen and (min-width: 1023px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_3 .link_wrap:hover {
        color: #294AD9;
        background-color: white;
        border: solid 2px #294AD9;
    }

    .demo_experience_bnr_cont.demo_experience_bnr_cont_3 .link_wrap:hover span::after {
        background-image: url("../image/about/arw_white_right_blue.svg");
    }
}

@media screen and (max-width: 1024px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_3 .img_pic::before {
        content: "";
        display: block;
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
        background-image: url("../image/faq/faq_item01_sp.png");
        margin: 0 auto 40px auto;
        width: 100%;
        height: calc(50vw - 80px);
        max-width: 348px;
        max-height: 174px;
    }
}

@media screen and (max-width: 600px) {
    .demo_experience_bnr_cont.demo_experience_bnr_cont_3 .img_pic::before {
        height: calc(50vw - 40px);
        margin-bottom: 20px;
        max-width: 174px;
        max-height: 87px;
    }
}

.demo_experience_detail_txt {
    font-size: 2rem;
    line-height: 1.8;
    text-align: center;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    margin: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .demo_experience_detail_txt {
        font-size: 2.6rem;
    }
}

@media screen and (max-width: 600px) {
    .demo_experience_detail_txt {
        font-size: 1.3rem;
    }
}

.function_detail_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
    list-style: none;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .function_detail_list {
        flex-direction: column;
        align-items: flex-start;
    }
}

.function_detail_list::after {
    content: "";
    display: block;
    width: calc(33.33% - 30px);
}

@media screen and (max-width: 1024px) {
    .function_detail_list::after {
        display: none;
    }
}

.function_detail_list .function_detail_list_item {
    width: calc(33.33% - 30px);
    margin-bottom: 45px;
    max-width: 352px;
}

@media screen and (max-width: 1024px) {
    .function_detail_list .function_detail_list_item {
        width: 100%;
        max-width: none;
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 600px) {
    .function_detail_list .function_detail_list_item {
        margin-bottom: 20px;
    }
}

.function_detail_list .function_detail_list_item .function_detail_list_item_inr {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

@media screen and (max-width: 1024px) {
    .function_detail_list .function_detail_list_item .function_detail_list_item_inr {
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 600px) {
    .function_detail_list .function_detail_list_item .function_detail_list_item_inr {
        margin-bottom: 15px;
    }
}

.function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_icon {
    margin: 0 23px 0 0;
}

@media screen and (max-width: 1024px) {
    .function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_icon {
        margin-right: 40px;
    }
}

@media screen and (max-width: 600px) {
    .function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_icon {
        margin-right: 20px;
    }
}

.function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_icon img {
    display: block;
    width: 70px;
    height: 70px;
}

@media screen and (max-width: 1024px) {
    .function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_icon img {
        width: 90px;
        height: 90px;
    }
}

@media screen and (max-width: 600px) {
    .function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_icon img {
        width: 45px;
        height: 45px;
    }
}

@media screen and (max-width: 1024px) {
    .function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_info {
        width: calc(100% - 130px);
    }
}

@media screen and (max-width: 600px) {
    .function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_info {
        width: calc(100% - 80px);
    }
}

.function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_info .function_detail_list_info_head {
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: 0;
    color: #294AD9;
    font-weight: 700;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    margin: 0 0 15px 0;
}

@media screen and (max-width: 1024px) {
    .function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_info .function_detail_list_info_head {
        font-size: 2.8rem;
        margin-bottom: 10px;
    }
}

@media screen and (max-width: 600px) {
    .function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_info .function_detail_list_info_head {
        font-size: 1.4rem;
        margin-bottom: 5px;
    }
}

.function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_info .function_detail_list_info_tag_list {
    display: flex;
    list-style: none;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
}

.function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_info .function_detail_list_info_tag_list .function_detail_list_info_tag_list_item {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 24px;
    font-size: 1.2rem;
    border-radius: 2px;
    margin-right: 5px;
}

@media screen and (max-width: 1024px) {
    .function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_info .function_detail_list_info_tag_list .function_detail_list_info_tag_list_item {
        font-size: 2.2rem;
        width: 109px;
        height: 43.5px;
        margin-right: 8px;
        border-radius: 4px;
    }
}

@media screen and (max-width: 600px) {
    .function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_info .function_detail_list_info_tag_list .function_detail_list_info_tag_list_item {
        font-size: 1.1rem;
        width: calc(33.33% - 5px);
        height: 21.75px;
    }
}

.function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_info .function_detail_list_info_tag_list .function_detail_list_info_tag_list_item.organizer {
    background-color: #dfe4f9;
    color: #294AD9;
}

.function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_info .function_detail_list_info_tag_list .function_detail_list_info_tag_list_item.exhibitor {
    background-color: #fdf690;
    color: #666666;
}

.function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_info .function_detail_list_info_tag_list .function_detail_list_info_tag_list_item.visitor {
    background-color: #d4edf2;
    color: #00a99d;
}

.function_detail_list .function_detail_list_item .function_detail_list_item_inr .function_detail_list_info .function_detail_list_info_tag_list .function_detail_list_info_tag_list_item:nth-last-child(1) {
    margin-right: 0;
}

.function_detail_list .function_detail_list_item .function_detail_txt {
    font-size: 1.4rem;
    line-height: 2;
    margin: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .function_detail_list .function_detail_list_item .function_detail_txt {
        font-size: 2.4rem;
        line-height: 1.4;
    }
}

@media screen and (max-width: 600px) {
    .function_detail_list .function_detail_list_item .function_detail_txt {
        font-size: 1.2rem;
    }
}

.bk_gray {
    background-color: #f9f7f7;
    padding: 130px 0 65px 0;
}

@media screen and (max-width: 1024px) {
    .bk_gray {
        padding: 100px 0 150px 0;
    }
}

@media screen and (max-width: 600px) {
    .bk_gray {
        padding: 50px 0 75px 0;
    }
}

.sub_works_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    list-style: none;
    padding: 60px 0 0 0;
    margin: 0 0 105px 0;
}

@media screen and (max-width: 1024px) {
    .sub_works_list {
        flex-direction: column;
        padding-top: 57px;
        margin-bottom: 45px;
    }
}

@media screen and (max-width: 600px) {
    .sub_works_list {
        padding-top: 28.5px;
        margin-bottom: 22.5px;
    }
}

.sub_works_list .list_col_wrap {
    width: calc(50% - 20px);
    margin-bottom: 55px;
}

@media screen and (max-width: 1024px) {
    .sub_works_list .list_col_wrap {
        width: 100%;
        margin-bottom: 80px;
    }
}

@media screen and (max-width: 600px) {
    .sub_works_list .list_col_wrap {
        margin-bottom: 40px;
    }
}

.sub_works_list .list_col_wrap .list_col {
    display: block;
    color: #000;
    text-decoration: none;
}

.sub_works_list .list_col_wrap .list_col .img_col {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    margin-bottom: 15px;
    width: 100%;
    height: 0;
    padding-top: 52.5%;
    overflow: hidden;
}

@media screen and (max-width: 1024px) {
    .sub_works_list .list_col_wrap .list_col .img_col {
        margin-bottom: 25px;
    }
}

@media screen and (max-width: 600px) {
    .sub_works_list .list_col_wrap .list_col .img_col {
        margin-bottom: 12.5px;
    }
}

.sub_works_list .list_col_wrap .list_col .img_col::after {
    content: "";
    display: block;
    position: absolute;
    background-color: white;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.5s ease;
}

.sub_works_list .list_col_wrap .list_col .img_col img {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: "object-fit: cover;";
    transition: transform 0.5s ease;
}

.sub_works_list .list_col_wrap .list_col time {
    display: block;
    font-size: 1.4rem;
    line-height: 1.7;
    margin-bottom: 10px;
    transition: opacity 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .sub_works_list .list_col_wrap .list_col time {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .sub_works_list .list_col_wrap .list_col time {
        font-size: 1.2rem;
    }
}

.sub_works_list .list_col_wrap .list_col .sub_works_text {
    font-size: 1.6rem;
    line-height: 1.4;
    text-decoration: underline;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    margin: 0 0 0 0;
    transition: opacity 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .sub_works_list .list_col_wrap .list_col .sub_works_text {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .sub_works_list .list_col_wrap .list_col .sub_works_text {
        font-size: 1.2rem;
    }
}

@media screen and (min-width: 1023px) {

    .sub_works_list .list_col_wrap .list_col:hover time,
    .sub_works_list .list_col_wrap .list_col:hover .sub_works_text {
        opacity: 0.6;
        transition: opacity 0.5s ease;
    }

    .sub_works_list .list_col_wrap .list_col:hover .img_col::after {
        opacity: 0.4;
        transition: opacity 0.5s ease;
    }
}

.pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
}

@media screen and (max-width: 1024px) {
    .pagination {
        justify-content: space-between;
    }
}

.pagination p {
    height: 60px;
    width: 60px;
}

.pagination .pagination-inner {
    height: 60px;
    width: 100%;
    max-width: 640px;
}

.pagination .prev-page button,
.pagination .next-page button,
.pagination .pagination-inner li,
.pagination .page-info {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    height: 100%;
    width: 100%;
    color: #294AD9;
    border: none;
    background-color: transparent;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    -webkit-user-select: none;
    user-select: none;
    transition: transform 0.5s ease;
}

.pagination .page-info {
    width: 100px;
    margin-right: 20px;
    order: -1;
}

@media screen and (max-width: 600px) {
    .pagination .page-info {
        display: none;
    }
}

.pagination .pagination-inner {
    padding: 0;
    display: flex;
    list-style: none;
}

.pagination .pagination-inner li a {
    color: #294AD9;
    text-decoration: none;
}

.pagination .pagination-inner li.current {
    background-image: url(../image/pagenavi/page_num_back.svg);
}

.pagination .pagination-inner li.current a {
    width: 80%;
    height: 80%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}

@media screen and (max-width: 1024px) {
    .pagination p {
        height: 113px;
        width: 113px;
        font-size: 3rem;
    }

    .pagination .pagination-inner {
        height: 113px;
        width: 565px;
    }

    .pagination .pagination-inner li {
        font-size: 3rem;
    }
}

@media screen and (max-width: 600px) {
    .pagination p {
        height: 56.5px;
        width: 56.5px;
        font-size: 1.5rem;
    }

    .pagination .pagination-inner {
        height: 56.5px;
        width: 282.5px;
    }

    .pagination .pagination-inner li {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 330px) {

    .pagination p,
    .pagination .pagination-inner li {
        font-size: 1.4rem;
    }
}

.pagination .prev-page button {
    margin-right: 7px;
}

.pagination .next-page button {
    margin-left: 7px;
}

.pagination button {
    cursor: pointer;
}

.pagination .prev-page button {
    background-image: url("../image/common/left_arrow_pc.svg");
    transition: transform 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .pagination .prev-page button {
        background-image: url("../image/common/left_arrow_sp.svg");
    }
}

.pagination .next-page button {
    background-image: url("../image/common/right_arrow_pc.svg");
    transition: transform 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .pagination .next-page button {
        background-image: url("../image/common/right_arrow_sp.svg");
    }
}

.pagination .prev-page.disabled button {
    pointer-events: none;
    background-image: url("../image/common/left_arrow_disable_pc.svg");
}

@media screen and (max-width: 1024px) {
    .pagination .prev-page.disabled button {
        background-image: url("../image/common/left_arrow_disable_sp.svg");
    }
}

.pagination .next-page.disabled button {
    pointer-events: none;
    background-image: url("../image/common/right_arrow_disable_pc.svg");
}

@media screen and (max-width: 1024px) {
    .pagination .next-page.disabled button {
        background-image: url("../image/common/right_arrow_disable_sp.svg");
    }
}

@media screen and (min-width: 1023px) {
    .pagination button:hover {
        color: black;
        opacity: 0.6;
        transition: color 0.5s ease, opacity 0.5s ease;
    }

    .pagination .prev-page button:hover {
        transform: translateX(-5px);
        transition: transform 0.5s ease;
    }

    .pagination .next-page button:hover {
        transform: translateX(5px);
        transition: transform 0.5s ease;
    }
}

.sb_works_text {
    color: #294AD9;
    font-size: 1.6rem;
    font-family: "Lato", sans-serif;
    font-weight: 700;
    margin: 0 0 20px 0;
}

@media screen and (max-width: 1024px) {
    .sb_works_text {
        font-size: 2.8rem;
    }
}

@media screen and (max-width: 600px) {
    .sb_works_text {
        font-size: 1.4rem;
    }
}

.sb_works_tag {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    list-style: none;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .sb_works_tag {
        justify-content: space-between;
    }

    .sb_works_tag::after {
        content: "";
        display: block;
        width: calc(33.3% - 13.3px);
    }
}

@media screen and (max-width: 600px) {
    .sb_works_tag::after {
        width: calc(33.3% - 6.6px);
    }
}

.sb_works_tag .sb_works_tag_list {
    margin: 0 10px 10px 0;
}

@media screen and (max-width: 1024px) {
    .sb_works_tag .sb_works_tag_list {
        margin: 0 0 35px 0;
        width: calc(33.3% - 13.3px);
    }
}

@media screen and (max-width: 600px) {
    .sb_works_tag .sb_works_tag_list {
        margin-bottom: 12.5px;
        width: calc(33.3% - 6.65px);
    }
}

.sb_works_tag .sb_works_tag_list:nth-last-child(1) {
    margin-right: 0;
}

.sb_works_tag .sb_works_tag_list.active a {
    color: white;
    background-color: #294AD9;
    pointer-events: none;
}

.sb_works_tag .sb_works_tag_list a {
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 100px;
    min-height: 24px;
    background-color: #dfe4f9;
    border-radius: 3px;
    font-size: 1.2rem;
    color: #294AD9;
    height: 100%;
    width: 100%;
    padding: 5px 15px;
    word-break: break-all;
    border: solid 2px transparent;
    transition: border 0.5s ease, background-color 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .sb_works_tag .sb_works_tag_list a {
        font-size: 2.4rem;
        padding: 15px 25px;
        border-radius: 4px;
    }
}

@media screen and (max-width: 600px) {
    .sb_works_tag .sb_works_tag_list a {
        font-size: 1.2rem;
        line-height: 1.2;
        padding: 7.5px 5px;
        border-radius: 2px;
    }
}

@media screen and (min-width: 1023px) {
    .sb_works_tag .sb_works_tag_list a:hover {
        background-color: white;
        border: solid 2px #294AD9;
        transition: border 0.5s ease, background-color 0.5s ease;
    }
}

.works_single_container .works_single_wrap {
    border-bottom: solid 1px #f2f2f2;
    margin-top: 120px;
}

@media screen and (max-width: 1024px) {
    .works_single_container .works_single_wrap {
        margin-top: 100px;
        border-bottom: none;
    }
}

@media screen and (max-width: 600px) {
    .works_single_container .works_single_wrap {
        margin-top: 50px;
    }
}

.works_single_container .works_single_wrap .wrapper_in {
    max-width: 900px;
    width: calc(100% - 100px);
    margin: 0 auto 0 auto;
}

@media screen and (max-width: 1024px) {
    .works_single_container .works_single_wrap .wrapper_in {
        width: 100%;
    }
}

.works_single_container figure {
    margin: 50px 0 80px 0;
}

@media screen and (max-width: 1024px) {
    .works_single_container figure {
        margin: 60px 0 65px 0;
    }
}

@media screen and (max-width: 600px) {
    .works_single_container figure {
        margin: 30px 0 32.5px 0;
    }
}

.works_single_container figure figcaption {
    font-size: 1.6rem;
    line-height: 2;
    word-break: break-all;
    padding-top: 70px;
}

@media screen and (max-width: 1024px) {
    .works_single_container figure figcaption {
        font-size: 2.4rem;
        padding-top: 55px;
    }
}

@media screen and (max-width: 600px) {
    .works_single_container figure figcaption {
        font-size: 1.2rem;
        padding-top: 27.5px;
    }
}

.works_single_container h2 {
    font-size: 2.4rem;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    text-align: center;
    line-height: 1.6;
    word-break: break-all;
    margin: 0 0 27px 0;
}

@media screen and (max-width: 1024px) {
    .works_single_container h2 {
        font-size: 3.2rem;
        margin-bottom: 33px;
    }
}

@media screen and (max-width: 600px) {
    .works_single_container h2 {
        font-size: 1.6rem;
        margin-bottom: 16.5px;
    }
}

.works_single_container h3 {
    display: flex;
    align-items: flex-start;
    font-size: 2rem;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    color: #294AD9;
    line-height: 1.5;
    word-break: break-all;
    margin: 0 0 25px 0;
}

@media screen and (max-width: 1024px) {
    .works_single_container h3 {
        font-size: 2.8rem;
        margin-bottom: 35px;
    }
}

@media screen and (max-width: 600px) {
    .works_single_container h3 {
        font-size: 1.4rem;
        margin-bottom: 17.5px;
    }
}

.works_single_container h3::before {
    content: "";
    display: block;
    position: relative;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("../image/common/heading_cube_pc.svg");
    min-width: 22px;
    min-height: 19px;
    top: 7px;
    margin-right: 22px;
}

@media screen and (max-width: 1024px) {
    .works_single_container h3::before {
        min-width: 37px;
        min-height: 32px;
        top: 5px;
        margin-right: 20px;
    }
}

@media screen and (max-width: 600px) {
    .works_single_container h3::before {
        min-width: 18.5px;
        min-height: 16px;
        top: 2.5px;
        margin-right: 10px;
    }
}

.works_single_container h4 {
    font-size: 1.7rem;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    line-height: 1.8;
    word-break: break-all;
    border-bottom: solid 1px #cccccc;
    padding-bottom: 10px;
    margin: 0 0 30px 0;
}

@media screen and (max-width: 1024px) {
    .works_single_container h4 {
        font-size: 2.5rem;
        padding-bottom: 15px;
        margin-bottom: 45px;
    }
}

@media screen and (max-width: 600px) {
    .works_single_container h4 {
        font-size: 1.25rem;
        padding-bottom: 7.5px;
        margin-bottom: 22.5px;
    }
}

.works_single_container .works_single_time {
    display: block;
    font-size: 1.4rem;
    line-height: 1.7;
    text-align: center;
    margin: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .works_single_container .works_single_time {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .works_single_container .works_single_time {
        font-size: 1.2rem;
    }
}

.works_single_container p {
    font-size: 1.6rem;
    line-height: 2;
    word-break: break-all;
    margin: 0 0 60px 0;
}

@media screen and (max-width: 1024px) {
    .works_single_container p {
        font-size: 2.4rem;
        margin-bottom: 80px;
    }
}

@media screen and (max-width: 600px) {
    .works_single_container p {
        font-size: 1.2rem;
        margin-bottom: 40px;
    }
}

.works_single_container p a {
    color: #294AD9;
    word-break: break-all;
}

@media screen and (min-width: 1023px) {
    .works_single_container p a:hover {
        opacity: 0.8;
        transition: opacity 0.2s ease;
    }
}

.works_single_container p .blue-line {
    background: linear-gradient(transparent 50%, #dbe0f9 50%);
}

.works_single_container .tag_list {
    justify-content: center;
    padding-top: 20px;
}

@media screen and (max-width: 1024px) {
    .works_single_container .tag_list {
        padding-top: 50px;
    }
}

@media screen and (max-width: 600px) {
    .works_single_container .tag_list {
        padding-top: 25px;
    }
}

.page_pagination {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 55px;
}

@media screen and (max-width: 1024px) {
    .page_pagination {
        flex-direction: column;
        padding: 20px 0 0 0;
    }
}

@media screen and (max-width: 600px) {
    .page_pagination {
        padding: 10px 0 0 0;
    }
}

.page_pagination .back a {
    font-size: 1.6rem;
    letter-spacing: 1px;
    color: #294AD9;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
}

@media screen and (max-width: 1024px) {
    .page_pagination .back a {
        font-size: 2.6rem;
    }
}

@media screen and (max-width: 600px) {
    .page_pagination .back a {
        font-size: 1.3rem;
    }
}

@media screen and (min-width: 1023px) {
    .page_pagination .back a:hover {
        opacity: 0.8;
        transition: opacity 0.5s ease;
    }
}

.page_pagination .page_pagination_col {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 203px;
    height: 27px;
}

@media screen and (max-width: 1024px) {
    .page_pagination .page_pagination_col {
        justify-content: space-between;
        width: 100%;
        padding-top: 80px;
        height: 133px;
    }
}

@media screen and (max-width: 600px) {
    .page_pagination .page_pagination_col {
        padding-top: 50px;
        height: 77px;
    }
}

.page_pagination .page_pagination_col a,
.page_pagination .page_pagination_col span {
    display: flex;
    align-items: center;
    font-size: 1.4rem;
    font-family: "Lato", sans-serif;
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 1.9;
}

@media screen and (max-width: 1024px) {

    .page_pagination .page_pagination_col a,
    .page_pagination .page_pagination_col span {
        font-size: 2.8rem;
    }
}

@media screen and (max-width: 600px) {

    .page_pagination .page_pagination_col a,
    .page_pagination .page_pagination_col span {
        font-size: 1.4rem;
    }
}

.page_pagination .page_pagination_col a::before,
.page_pagination .page_pagination_col a::after,
.page_pagination .page_pagination_col span::before,
.page_pagination .page_pagination_col span::after {
    content: "";
    display: block;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 38px;
    height: 5px;
}

@media screen and (max-width: 1024px) {

    .page_pagination .page_pagination_col a::before,
    .page_pagination .page_pagination_col a::after,
    .page_pagination .page_pagination_col span::before,
    .page_pagination .page_pagination_col span::after {
        width: 76px;
        height: 10px;
    }
}

@media screen and (max-width: 600px) {

    .page_pagination .page_pagination_col a::before,
    .page_pagination .page_pagination_col a::after,
    .page_pagination .page_pagination_col span::before,
    .page_pagination .page_pagination_col span::after {
        width: 38px;
        height: 5px;
    }
}

.page_pagination .page_pagination_col a.next_link,
.page_pagination .page_pagination_col span.next_link {
    position: absolute;
    right: 0;
}

.page_pagination .page_pagination_col a.next_link::before,
.page_pagination .page_pagination_col span.next_link::before {
    display: none;
}

.page_pagination .page_pagination_col a.next_link::after,
.page_pagination .page_pagination_col span.next_link::after {
    margin-left: 12px;
}

@media screen and (max-width: 1024px) {

    .page_pagination .page_pagination_col a.next_link::after,
    .page_pagination .page_pagination_col span.next_link::after {
        margin-left: 22px;
    }
}

@media screen and (max-width: 600px) {

    .page_pagination .page_pagination_col a.next_link::after,
    .page_pagination .page_pagination_col span.next_link::after {
        margin-left: 11px;
    }
}

.page_pagination .page_pagination_col a.prev_link,
.page_pagination .page_pagination_col span.prev_link {
    position: absolute;
    left: 0;
}

@media screen and (max-width: 1024px) {

    .page_pagination .page_pagination_col a.prev_link,
    .page_pagination .page_pagination_col span.prev_link {
        position: relative;
    }
}

.page_pagination .page_pagination_col a.prev_link::before,
.page_pagination .page_pagination_col span.prev_link::before {
    margin-right: 12px;
}

@media screen and (max-width: 1024px) {

    .page_pagination .page_pagination_col a.prev_link::before,
    .page_pagination .page_pagination_col span.prev_link::before {
        margin-right: 22px;
    }
}

@media screen and (max-width: 600px) {

    .page_pagination .page_pagination_col a.prev_link::before,
    .page_pagination .page_pagination_col span.prev_link::before {
        margin-right: 11px;
    }
}

.page_pagination .page_pagination_col a.prev_link::after,
.page_pagination .page_pagination_col span.prev_link::after {
    display: none;
}

.page_pagination .page_pagination_col a {
    color: #294AD9;
}

.page_pagination .page_pagination_col a.next_link::after {
    background-image: url("../image/common/right_arrow_pc.svg");
}

@media screen and (max-width: 1024px) {
    .page_pagination .page_pagination_col a.next_link::after {
        background-image: url("../image/common/right_arrow_sp.svg");
    }
}

.page_pagination .page_pagination_col a.prev_link::before {
    background-image: url("../image/common/left_arrow_pc.svg");
}

@media screen and (max-width: 1024px) {
    .page_pagination .page_pagination_col a.prev_link::before {
        background-image: url("../image/common/left_arrow_sp.svg");
    }
}

@media screen and (min-width: 1023px) {
    .page_pagination .page_pagination_col a:hover {
        opacity: 0.8;
        transition: opacity 0.5s ease;
    }
}

.page_pagination .page_pagination_col span {
    color: #cccccc;
}

.page_pagination .page_pagination_col span.prev_link::before {
    background-image: url("../image/common/left_arrow_disable_pc.svg");
}

@media screen and (max-width: 1024px) {
    .page_pagination .page_pagination_col span.prev_link::before {
        background-image: url("../image/common/left_arrow_disable_sp.svg");
    }
}

.page_pagination .page_pagination_col span.next_link::after {
    background-image: url("../image/common/right_arrow_disable_pc.svg");
}

@media screen and (max-width: 1024px) {
    .page_pagination .page_pagination_col span.next_link::after {
        background-image: url("../image/common/right_arrow_disable_sp.svg");
    }
}

.sb_price_container .bk_img_right::before {
    top: 0;
}

.sb_price_container .head_txt_h2 {
    color: #294AD9;
    margin: 0 0 0 0;
    text-align: left;
}

@media screen and (max-width: 1024px) {
    .sb_price_container .head_txt_h2 {
        margin-bottom: 40px;
    }
}

@media screen and (max-width: 600px) {
    .sb_price_container .head_txt_h2 {
        margin-bottom: 20px;
    }
}

.sb_price_container .head_txt_h2 .head_txt_h2_en {
    display: block;
    font-size: 2.2rem;
    font-family: "Lato", sans-serif;
    font-weight: 400;
    letter-spacing: 0.8px;
    line-height: 1.6;
    margin-bottom: 0;
}

@media screen and (max-width: 1024px) {
    .sb_price_container .head_txt_h2 .head_txt_h2_en {
        font-size: 3.4rem;
    }
}

@media screen and (max-width: 600px) {
    .sb_price_container .head_txt_h2 .head_txt_h2_en {
        font-size: 1.7rem;
    }
}

.sb_price_container .head_txt_h2 .head_txt_h2_ja {
    display: block;
    font-size: 1.4rem;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 400;
}

@media screen and (max-width: 1024px) {
    .sb_price_container .head_txt_h2 .head_txt_h2_ja {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .sb_price_container .head_txt_h2 .head_txt_h2_ja {
        font-size: 1.2rem;
    }
}

.sb_price_container .price_cont_wrap .price_cont01 {
    position: relative;
    background-color: #e9edfb;
    padding: 70px 0 80px 0;
}

@media screen and (max-width: 1024px) {
    .sb_price_container .price_cont_wrap .price_cont01 {
        padding: 95px 0 100px 0;
    }
}

@media screen and (max-width: 600px) {
    .sb_price_container .price_cont_wrap .price_cont01 {
        padding: 47.5px 0 50px 0;
    }
}

.sb_price_container .price_cont_wrap .price_cont01::after {
    content: "";
    display: block;
    position: absolute;
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("../image/price/price_img01.png");
    width: 375px;
    height: 396px;
    bottom: 0;
    left: 0;
    z-index: 0;
}

.sb_price_container .price_cont_wrap .price_cont01 .price_cont01_wrap {
    max-width: 1000px;
    width: calc(100% - 100px);
    margin: 0 auto 0 auto;
}

.sb_price_container .price_cont_wrap .price_cont01 .flex_col {
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
}

.sb_price_container .price_cont_wrap .price_cont01 .price_download {
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    background-color: black;
    color: white;
    font-size: 1.4rem;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 400;
    border: solid 2px transparent;
    height: 45px;
    width: 236px;
    border-radius: 5px;
    padding-left: 5px;
}

.sb_price_container .price_cont_wrap .price_cont01 .price_download::before {
    content: "";
    display: block;
    position: relative;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("../image/common/icon_document_dl.svg");
    width: 14px;
    height: 12px;
    left: -12px;
}

@media screen and (min-width: 1023px) {
    .sb_price_container .price_cont_wrap .price_cont01 .price_download:hover {
        background-color: white;
        border: solid 2px black;
        color: black;
        transition: color 0.5s ease, border 0.5s ease, background-color 0.5s ease;
    }

    .sb_price_container .price_cont_wrap .price_cont01 .price_download:hover::before {
        background-image: url("../image/common/icon_document_dl_black.svg");
        transition: background-image 0.5s ease;
    }
}

.sb_price_container .price_cont_wrap .price_cont01 .flow_list {
    position: relative;
    width: 100%;
    border-spacing: 4px;
    margin: 0 auto;
    padding: 0;
    font-size: 1.6rem;
    line-height: 1.2;
    z-index: 9;
}

.sb_price_container .price_cont_wrap .price_cont01 .flow_list thead tr th {
    background-color: #294AD9;
    height: 80px;
}

.sb_price_container .price_cont_wrap .price_cont01 .flow_list tr th {
    background-color: #7ea7df;
    color: white;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 400;
    width: 174px;
}

.sb_price_container .price_cont_wrap .price_cont01 .flow_list tr td {
    background-color: white;
    height: 80px;
    width: 20%;
    padding: 5px 10px;
}

.sb_price_container .price_cont_wrap .price_cont01 .flow_list tr td.non {
    background-color: transparent;
}

.sb_price_container .price_cont_wrap .price_cont01 .flow_list tr td.txt {
    text-align: center;
}

.sb_price_container .price_cont_wrap .price_cont01 .flow_list tr td.txt a {
    transition: opacity 0.5s ease;
}

@media screen and (min-width: 1023px) {
    .sb_price_container .price_cont_wrap .price_cont01 .flow_list tr td.txt a:hover {
        opacity: 0.6;
        transition: opacity 0.5s ease;
    }
}

.sb_price_container .price_cont_wrap .price_cont01 #flow_list_sub {
    top: -4px;
    display: none;
}

.sb_price_container .price_cont_wrap .price_cont01 #priceAll:checked~#flow_list_sub {
    display: table;
}

.sb_price_container .price_cont_wrap .price_cont01 #priceAll:checked~.price_all_lable {
    display: none;
}

.sb_price_container .price_cont_wrap .price_cont01 .price_all {
    display: none;
}

.sb_price_container .price_cont_wrap .price_cont01 .price_all_lable {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    cursor: pointer;
    margin-top: 30px;
    color: #294AD9;
    font-size: 1.4rem;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 400;
    background-color: white;
    width: 100%;
    height: 41px;
    z-index: 9;
    transition: color 0.5s ease, background-color 0.5s ease;
}

.sb_price_container .price_cont_wrap .price_cont01 .price_all_lable::after {
    content: "";
    display: block;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("../image/price/price_arr.svg");
    width: 12px;
    height: 6px;
    margin-left: 13px;
    transition: background-image 0.5s ease;
}

@media screen and (min-width: 1023px) {
    .sb_price_container .price_cont_wrap .price_cont01 .price_all_lable:hover {
        background-color: #294AD9;
        color: white;
        transition: color 0.5s ease, background-color 0.5s ease;
    }

    .sb_price_container .price_cont_wrap .price_cont01 .price_all_lable:hover::after {
        background-image: url("../image/price/price_arr_white.svg");
        transition: background-image 0.5s ease;
    }
}

.sb_price_container .price_cont_wrap .price_cont01 .text_col {
    margin: 40px 0 0 0;
    position: relative;
    z-index: 9;
}

.sb_price_container .price_cont_wrap .price_cont01 .text_col p {
    font-size: 1.4rem;
    line-height: 2;
}

.sb_price_container .price_cont_wrap .price_cont02_sp_bk {
    background-color: #e9edfb;
    padding: 70px 0 80px 0;
}

@media screen and (max-width: 600px) {
    .sb_price_container .price_cont_wrap .price_cont02_sp_bk {
        padding: 35px 0 40px 0;
    }
}

.sb_price_container .price_cont_wrap .price_cont02 table {
    font-size: 2.4rem;
    line-height: 1.5;
    text-align: center;
    border-spacing: 10px;
    width: 100%;
    border-collapse: collapse;
}

@media screen and (max-width: 600px) {
    .sb_price_container .price_cont_wrap .price_cont02 table {
        font-size: 1.2rem;
        border-spacing: 5px;
    }
}

.sb_price_container .price_cont_wrap .price_cont02 table thead tr th {
    background-color: #294AD9;
    height: 120px;
    border-bottom: solid 10px #e9edfb;
}

@media screen and (max-width: 600px) {
    .sb_price_container .price_cont_wrap .price_cont02 table thead tr th {
        height: 60px;
        border-bottom: solid 5px #e9edfb;
    }
}

.sb_price_container .price_cont_wrap .price_cont02 table tr {
    border-bottom: solid 10px #e9edfb;
}

@media screen and (max-width: 600px) {
    .sb_price_container .price_cont_wrap .price_cont02 table tr {
        border-bottom: solid 5px #e9edfb;
    }
}

.sb_price_container .price_cont_wrap .price_cont02 table tr th {
    color: white;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    background-color: #7ea7df;
    width: 50%;
}

.sb_price_container .price_cont_wrap .price_cont02 table tr td {
    height: 120px;
    width: 50%;
    background-color: white;
}

.sb_price_container .price_cont_wrap .price_cont02 table tr td.txt {
    border-left: solid 10px #e9edfb;
}

@media screen and (max-width: 600px) {
    .sb_price_container .price_cont_wrap .price_cont02 table tr td.txt {
        border-left: solid 5px #e9edfb;
    }
}

@media screen and (max-width: 600px) {
    .sb_price_container .price_cont_wrap .price_cont02 table tr td {
        height: 60px;
    }
}

.sb_price_container .price_cont_wrap .price_cont02 .more_price {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: black;
    color: white;
    font-size: 2.4rem;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    text-decoration: none;
    line-height: 1.6;
    height: 80px;
    max-width: 450px;
    width: calc(100% - 40px);
    margin: 90px auto 0 auto;
    padding-left: 10px;
}

@media screen and (max-width: 600px) {
    .sb_price_container .price_cont_wrap .price_cont02 .more_price {
        font-size: 1.2rem;
        width: calc(100% - 20px);
        margin-top: 60px;
        height: 40px;
        padding-left: 5px;
    }
}

.sb_price_container .price_cont_wrap .price_cont02 .more_price::after {
    content: "";
    display: block;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("../image/common/contact_btn_arw.svg");
    width: 58px;
    height: 7.5px;
    margin-left: 20px;
}

@media screen and (max-width: 600px) {
    .sb_price_container .price_cont_wrap .price_cont02 .more_price::after {
        width: 29px;
        height: 3.75px;
        margin-left: 10px;
    }
}

@media screen and (max-width: 330px) {
    .sb_price_container .price_cont_wrap .price_cont02 .more_price::after {
        margin-left: 7px;
    }
}

.sb_price_container .price_cont_wrap .price_cont02 .slider_area {
    overflow: auto;
}

.sb_price_container .price_cont_wrap .price_cont02 .slider_area .bx-wrapper {
    border: none;
    box-shadow: none;
}

.sb_price_container .price_cont_wrap .price_cont02 .slider_area .bx-wrapper .bx-viewport {
    margin-bottom: 50px;
}

@media screen and (max-width: 600px) {
    .sb_price_container .price_cont_wrap .price_cont02 .slider_area .bx-wrapper .bx-viewport {
        margin-bottom: 25px;
    }
}

.sb_price_container .price_cont_wrap .price_cont02 .slider_area .slider_table {
    display: flex;
    list-style: none;
    padding: 0 0 0 0;
    margin: 0 0 0 0;
}

.sb_price_container .price_cont_wrap .price_cont02 .slider_area .slider_table .slider_list {
    min-width: calc(100vw - 100px);
}

@media screen and (max-width: 600px) {
    .sb_price_container .price_cont_wrap .price_cont02 .slider_area .slider_table .slider_list {
        min-width: calc(100vw - 50px);
    }
}

.sb_price_container .price_cont_wrap .price_cont02 .slider_area .bx-controls .bx-controls-direction a {
    text-indent: 0;
    margin-top: 0;
    top: auto;
}

.sb_price_container .price_cont_wrap .price_cont02 .slider_area .bx-controls .bx-controls-direction a.bx-prev,
.sb_price_container .price_cont_wrap .price_cont02 .slider_area .bx-controls .bx-controls-direction a.bx-next {
    background-repeat: no-repeat;
    background-size: contain;
    width: 76px;
    height: 10px;
}

@media screen and (max-width: 600px) {

    .sb_price_container .price_cont_wrap .price_cont02 .slider_area .bx-controls .bx-controls-direction a.bx-prev,
    .sb_price_container .price_cont_wrap .price_cont02 .slider_area .bx-controls .bx-controls-direction a.bx-next {
        width: 38px;
        height: 5px;
    }
}

.sb_price_container .price_cont_wrap .price_cont02 .slider_area .bx-controls .bx-controls-direction a.bx-prev {
    background-image: url("../image/common/left_arrow_sp.svg");
    background-position: left center;
}

.sb_price_container .price_cont_wrap .price_cont02 .slider_area .bx-controls .bx-controls-direction a.bx-next {
    background-image: url("../image/common/right_arrow_sp.svg");
    background-position: right center;
}

.sb_demoform_container {
    margin-bottom: 140px;
}

@media screen and (max-width: 600px) {
    .sb_demoform_container {
        margin-bottom: 100px;
    }
}

.sb_demoform_container .head_txt_h2 {
    text-align: left;
    margin-bottom: 40px;
}

@media screen and (max-width: 1024px) {
    .sb_demoform_container .head_txt_h2 {
        text-align: center;
        margin-bottom: 90px;
    }
}

@media screen and (max-width: 600px) {
    .sb_demoform_container .head_txt_h2 {
        margin-top: 50px;
        margin-bottom: 45px;
    }
}

.sb_demoform_container .head_txt_h2 .head_txt_h2_en {
    text-transform: uppercase;
}

@media screen and (max-width: 1024px) {
    .sb_demoform_container .head_txt_h2 .head_txt_h2_en {
        font-size: 3.8rem;
    }
}

@media screen and (max-width: 600px) {
    .sb_demoform_container .head_txt_h2 .head_txt_h2_en {
        font-size: 1.9rem;
    }
}

@media screen and (max-width: 1024px) {
    .sb_demoform_container .head_txt_h2 .head_txt_h2_ja {
        font-size: 2.6rem;
    }
}

@media screen and (max-width: 600px) {
    .sb_demoform_container .head_txt_h2 .head_txt_h2_ja {
        font-size: 1.3rem;
    }
}

.sb_demoform_container .flex_col {
    min-height: 600px;
    display: flex;
    /* justify-content: space-between; */
    padding-top: 109px;
}

@media screen and (max-width: 1024px) {
    .sb_demoform_container .flex_col {
        flex-direction: column;
        padding-top: 0px;
        margin-top: 25px;
    }
}

@media screen and (max-width: 600px) {
    .sb_demoform_container .flex_col {
        margin-top: -20px;
    }
}

.sb_demoform_container .flex_col .left_col {
    width: calc(50% - 85px);
    position: relative;
}

@media screen and (max-width: 1024px) {
    .sb_demoform_container .flex_col .left_col {
        width: 100%;
    }
}

@media screen and (max-width: 600px) {
    .sb_demoform_container .flex_col .left_col {
        margin-bottom: 30px;
    }
}

.sb_demoform_container .flex_col .left_col.after_icon img {
    margin-left: 7px;
    width: 80%;
}

@media screen and (max-width: 1024px) {
    .sb_demoform_container .flex_col .left_col.after_icon img {
        width: calc(100vw - 100px);
        height: calc(57vw - 100px);
        margin: 50px auto 0 auto;
    }
}

@media screen and (max-width: 600px) {
    .sb_demoform_container .flex_col .left_col.after_icon img {
        width: calc(100vw - 40px);
        height: calc(57vw - 40px);
        margin: 25px auto 0 auto;
    }
}

.sb_demoform_container .flex_col .right_col {
    width: calc(50% + 85px);
}

@media screen and (max-width: 1024px) {
    .sb_demoform_container .flex_col .right_col {
        width: 100%;
    }
}

.sb_demoform_container .lead_text {
    width: 70%;
    font-size: 1.5rem;
    line-height: 1.8;
    margin: 0 0 50px 0;
}

@media screen and (max-width: 1024px) {
    .sb_demoform_container .lead_text {
        width: auto;
        font-size: 2.6rem;
        text-align: center;
        margin-bottom: 48px;
    }
}

@media screen and (max-width: 600px) {
    .sb_demoform_container .lead_text {
        width: auto;
        font-size: 1.3rem;
        margin-bottom: 15px;
    }
}

.sb_demoform_container .lead_text.privacy_policy {
    font-size: 12px;
    line-height: 1.25;
}

@media screen and (max-width: 1024px) {
    .sb_demoform_container .lead_text.privacy_policy {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 600px) {
    .sb_demoform_container .lead_text.privacy_policy {
        margin: 8px auto 0px;
    }
}

.sb_demoform_container .lead_text.lead_text_red {
    color: #c1272d;
}

.sb_demoform_container .contact_to_partner_img_area a {
    display: inline-block;
}

.sb_demoform_container .contact_to_partner_img_area a:hover {
    display: inline-block;
}

.sb_demoform_container .contact_to_partner_img_area .to_contact img {
    width: 70%;
    opacity: 1;
    background-color: #ffffff;
}

@media screen and (max-width: 1024px) {
    .sb_demoform_container .contact_to_partner_img_area .to_contact img {
        width: 100%;
        position: unset;
    }
}

@media screen and (max-width: 600px) {
    .sb_demoform_container .lead_text {
        width: 100%;
        position: unset;
        margin-bottom: 35px;
    }
}

.sb_demoform_container .contact_to_partner_img_area:hover img {
    opacity: 0.5;
    transition-duration: 0.5s;
}

.sb_demoform_container .contact_to_partner_img_area .for_sp {
    width: 100%;
}

.sb_demoform_container .pr_cnt {
    position: relative;
    z-index: 1;
}

.sb_demoform_container .pr_cnt .check_box {
    display: block;
    margin-left: 150px;
}

@media screen and (max-width: 1024px) {
    .sb_demoform_container .pr_cnt .check_box {
        margin-left: 0;
    }
}

.sb_demoform_container .pr_cnt .check_box label {
    display: flex;
    justify-content: left;
    align-items: center;
}

.sb_demoform_container .pr_cnt .check_box label span {
    font-size: 1.5rem;
}

.sb_demoform_container .pr_cnt .check_box input[type="checkbox"] {
    appearance: none;
    height: 18px;
    min-width: 18px;
    margin: 0 8px 0 0;
    border: 1px solid #000000;
    border-radius: 4px;
    position: relative;
}

.sb_demoform_container .pr_cnt .check_box input[type="checkbox"]:checked {
    background-color: #294AD9;
}

.sb_demoform_container .pr_cnt .check_box input[type="checkbox"]:checked::before {
    display: grid;
    content: '';
    width: 12px;
    height: 6px;
    border-left: 2px solid #FFFFFF;
    border-bottom: 2px solid #FFFFFF;
    transform: rotate(-45deg);
    position: absolute;
    top: 25%;
    left: 15%;
}

.form_table form dl {
    display: flex;
    justify-content: space-between;
    /* align-items: center; */
    padding: 0 0 40px 0;
    margin: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .form_table form dl {
        flex-direction: column;
        padding-bottom: 45px;
    }
}

@media screen and (max-width: 600px) {
    .form_table form dl {
        padding-bottom: 22.5px;
    }
}

.form_table form dl dt {
    min-width: 150px;
    padding-top: 21px;
    line-height: 1.66;
    text-align: left;
    font-family: "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-size: 1.5rem;
    font-weight: bolder;
}

@media screen and (max-width: 1024px) {
    .form_table form dl dt {
        width: 100%;
        font-size: 2.4rem;
        margin-bottom: 10px;
        padding-top: 0;
    }
}

@media screen and (max-width: 600px) {
    .form_table form dl dt {
        font-size: 1.2rem;
        margin-bottom: 5px;
    }
}

.form_table form dl:nth-child(2) dt {
    padding-top: 30px;
}

.form_table form dl dd {
    width: 500px;
    margin: 0 0 0 0;
}

@media screen and (max-width: 1024px) {
    .form_table form dl dd {
        width: 100%;
    }
}

dd.drop_down {
    position: relative;
}

dd.drop_down::after {
    content: "";
    display: block;
    position: absolute;
    top: 45%;
    right: 4%;
    background-image: url(../image/contact/icon_black_arw_dwn.svg);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    width: 12px;
    height: 6px;
    transition: background-image 0.5s ease;
}

/* .form_table form dl dd{margin-right: -66px;} */
.form_table form dl dd span {
    position: relative;
}

.form_table form dl dd input,
.form_table form dl dd textarea,
.form_table form dl dd select {
    padding: 16px 20px;
    width: 100%;
    background-color: #f2f2f2;
    border: 1px solid #f2f2f2;
    border-radius: 0%;
    outline: none;
    font-size: 1.4rem;
    margin: 0 0 0 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    word-break: break-all;
    word-wrap: break-word;
    color: black;
}

@media screen and (max-width: 1024px) {

    .form_table form dl dd input,
    .form_table form dl dd textarea,
    .form_table form dl dd select {
        font-size: 32px;
    }
}

@media screen and (max-width: 600px) {

    .form_table form dl dd input,
    .form_table form dl dd textarea,
    .form_table form dl dd select {
        font-size: 16px;
    }
}

.form_table form dl dd input,
.form_table form dl dd select {
    height: 60px;
}

@media screen and (max-width: 1024px) {

    .form_table form dl dd input,
    .form_table form dl dd select {
        height: 100px;
    }
}

@media screen and (max-width: 600px) {

    .form_table form dl dd input,
    .form_table form dl dd select {
        height: 50px;
    }
}

.form_table form dl dd textarea {
    height: 220px;
    resize: vertical;
}

@media screen and (max-width: 1024px) {
    .form_table form dl dd textarea {
        height: 400px;
    }
}

@media screen and (max-width: 600px) {
    .form_table form dl dd textarea {
        height: 200px;
    }
}

.form_table form dl dd select::-ms-expand {
    display: none;
}

.form_table form dl dd.select_dd {
    position: relative;
}

.form_table form dl dd.select_dd::after {
    content: "";
    display: block;
    position: absolute;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("../image/demoform/select_arr.svg");
    width: 10px;
    height: 5px;
    top: calc(50% - 2.5px);
    right: 20px;
}

@media screen and (max-width: 1024px) {
    .form_table form dl dd.select_dd::after {
        width: 20px;
        height: 10px;
        top: calc(50% - 5px);
        right: 40px;
    }
}

@media screen and (max-width: 600px) {
    .form_table form dl dd.select_dd::after {
        width: 10px;
        height: 5px;
        top: calc(50% - 2.5px);
        right: 20px;
    }
}

.wpcf7-form-control-wrap .wpcf7-not-valid-tip {
    color: #dc3232;
    font-size: 12px;
    font-weight: normal;
    display: block;
    padding-top: 4px;
}

.form_table .btn_submit {
    position: relative;
    width: 300px;
    margin: 28px auto 0 182px;
}

@media screen and (max-width: 1024px) {
    .form_table .btn_submit {
        width: 450px;
        margin-top: 15px;
    }
}

@media screen and (max-width: 600px) {
    .form_table .btn_submit {
        max-width: 225px;
        width: calc(100% - 40px);
        margin: auto;
    }
}

.form_table .btn_submit p {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 0 0 0;
    height: 45px;
    border: solid 2px transparent;
    background-color: #294AD9;
    transition: border 0.5s ease, background-color 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .form_table .btn_submit p {
        height: 80px;
    }
}

@media screen and (max-width: 600px) {
    .form_table .btn_submit p {
        height: 40px;
    }
}

.form_table .btn_submit p::after {
    content: "";
    display: block;
    position: absolute;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("../image/demoform/link_arr.svg");
    width: 38px;
    height: 5px;
    top: calc(50% - 2.5px);
    right: 80px;
    transition: background-image 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .form_table .btn_submit p::after {
        width: 58px;
        height: 7.5px;
        top: calc(50% - 3.75px);
        right: 110px;
    }
}

@media screen and (max-width: 600px) {
    .form_table .btn_submit p::after {
        width: 29px;
        height: 3.75px;
        top: calc(50% - 1.875px);
        right: 55px;
    }
}

@media screen and (max-width: 330px) {
    .form_table .btn_submit p::after {
        right: 30px;
    }
}

.form_table .btn_submit p input {
    cursor: pointer;
    margin: 0 auto 0 auto;
    color: #231815;
    background-color: transparent;
    color: white;
    border: none;
    outline: none;
    text-align: center;
    word-break: break-all;
    word-wrap: break-word;
    width: 100%;
    height: 100%;
    font-size: 1.4rem;
    padding: 1px 50px 0 0;
    transition: color 0.5s ease;
}

@media screen and (max-width: 1024px) {
    .form_table .btn_submit p input {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .form_table .btn_submit p input {
        font-size: 1.2rem;
        padding-right: 45px;
    }
}

.form_table .btn_submit .wpcf7-spinner {
    visibility: hidden;
    display: inline-block;
    background-color: #23282d;
    opacity: 0.75;
    width: 24px;
    height: 24px;
    border: none;
    border-radius: 100%;
    padding: 0;
    margin: 0 24px;
    position: relative;
}

.form_table .btn_submit .wpcf7-response-output,
.form_table .btn_submit .wpcf7-spinner {
    display: none;
}

@media screen and (min-width: 1023px) {
    .form_table .btn_submit:hover p {
        background-color: white;
        border: solid 2px #294AD9;
        transition: border 0.5s ease, background-color 0.5s ease;
    }

    .form_table .btn_submit:hover p::after {
        background-image: url("../image/demoform/link_arr_blue.svg");
        transition: background-image 0.5s ease;
    }

    .form_table .btn_submit:hover p input {
        color: #294AD9;
        transition: color 0.5s ease;
    }
}

.sb_faq_container .contact_wrap {
    padding-top: 100px;
}

@media screen and (max-width: 600px) {
    .sb_faq_container .contact_wrap {
        padding-top: 50px;
    }
}

.sb_faq_container .cont_lead_text .lead_text02 br.tb {
    display: none;
}

@media screen and (max-width: 1024px) {
    .sb_faq_container .cont_lead_text .lead_text02 br.tb {
        display: block;
    }
}

.sb_faq_container .cont_lead_text .lead_text02 br.sp {
    display: none;
}

@media screen and (max-width: 600px) {
    .sb_faq_container .cont_lead_text .lead_text02 br.sp {
        display: block;
    }
}

.sb_faq_container .faq_cont {
    margin-bottom: 50px;
}

.sb_faq_container .faq_cont .faq_cont_wrap {
    margin-bottom: 100px;
}

@media screen and (max-width: 600px) {
    .sb_faq_container .faq_cont .faq_cont_wrap {
        margin-bottom: 50px;
    }
}

.sb_faq_container .faq_cont .faq_cont_wrap .lead_head_txt {
    display: flex;
    align-items: flex-start;
    color: #294AD9;
    font-size: 1.9rem;
    line-height: 1.5;
    font-family: "ヒラギノ角ゴ Pro W6", "HiraKakuPro-W6", "Noto Sans JP",
        "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ＭＳ Ｐゴシック",
        "MS PGothic", sans-serif;
    font-weight: 700;
    margin: 0 0 18px 0;
}

@media screen and (max-width: 1024px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .lead_head_txt {
        font-size: 2.8rem;
    }
}

@media screen and (max-width: 600px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .lead_head_txt {
        font-size: 1.4rem;
    }
}

.sb_faq_container .faq_cont .faq_cont_wrap .lead_head_txt::before {
    content: "";
    display: block;
    position: relative;
    background-image: url("../image/faq/faq_icon01.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    top: 3px;
    min-width: 29px;
    min-height: 25px;
    margin-right: 15px;
}

@media screen and (max-width: 1024px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .lead_head_txt::before {
        min-width: 35px;
        min-height: 31px;
        margin-right: 20px;
        top: 7px;
    }
}

@media screen and (max-width: 600px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .lead_head_txt::before {
        min-width: 17.5px;
        min-height: 15.5px;
        margin-right: 10px;
        top: 3.5px;
    }
}

.sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl {
    margin: 0 0 10px 0;
}

@media screen and (max-width: 1024px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl {
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 600px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl {
        margin-bottom: 15px;
    }
}

.sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl input {
    display: none;
}

.sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dt {
    position: relative;
}

.sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dt .faq_detail_f_txt {
    display: flex;
    font-size: 1.6rem;
    line-height: 2;
    padding: 35px 30px;
    background-color: #f2f2f2;
    cursor: pointer;
}

@media screen and (max-width: 1024px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dt .faq_detail_f_txt {
        font-size: 2.4rem;
        padding: 40px 90px 40px 50px;
    }
}

@media screen and (max-width: 600px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dt .faq_detail_f_txt {
        font-size: 1.2rem;
        padding: 20px 45px 20px 25px;
    }
}

.sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dt .faq_detail_f_txt::before {
    content: "Q.";
    display: inline-block;
    margin-right: 5px;
}

@media screen and (max-width: 1024px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dt .faq_detail_f_txt::before {
        margin-right: 15px;
    }
}

@media screen and (max-width: 600px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dt .faq_detail_f_txt::before {
        margin-right: 7.5px;
    }
}

.sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dt::before,
.sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dt::after {
    content: "";
    display: block;
    position: absolute;
    height: 1px;
    width: 20px;
    background-color: #294AD9;
    right: 40px;
    transform-origin: center;
    top: calc(50% - 0.5px);
    transition: transform 0.2s 0s ease;
}

@media screen and (max-width: 1024px) {

    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dt::before,
    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dt::after {
        width: 40px;
    }
}

@media screen and (max-width: 600px) {

    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dt::before,
    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dt::after {
        width: 20px;
        right: 20px;
    }
}

.sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dt::before {
    transform: rotate(90deg);
}

.sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dd {
    font-size: 1.4rem;
    line-height: 2;
    margin: 0 0 0 0;
    border: solid 1px #f2f2f2;
}

@media screen and (max-width: 1024px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dd {
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dd {
        font-size: 1.2rem;
    }
}

.sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dd span {
    display: block;
    opacity: 0;
    padding: 0 30px;
    transform-origin: top;
    max-height: 0;
    transform: scaleY(0);
    transition: transform 0.2s 0s ease, padding 0.2s 0s ease, opacity 0.1s 0s ease;
}

@media screen and (max-width: 1024px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dd span {
        padding: 0 50px;
    }
}

@media screen and (max-width: 600px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl .faq_detail_dd span {
        padding: 0 25px;
    }
}

.sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl input:checked~.faq_detail_dt::before {
    transform: rotate(180deg);
    transition: transform 0.2s 0s ease;
}

.sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl input:checked~.faq_detail_dt::after {
    transform: rotate(-180deg);
    transition: transform 0.2s 0s ease;
}

.sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl input:checked~.faq_detail_dd span {
    opacity: 1;
    padding: 35px 30px;
    max-height: none;
    transform: scaleY(1);
    transition: transform 0.2s 0s ease, padding 0.2s 0s ease,
        opacity 0.2s 0.2s ease;
}

@media screen and (max-width: 1024px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl input:checked~.faq_detail_dd span {
        padding: 55px 50px;
    }
}

@media screen and (max-width: 600px) {
    .sb_faq_container .faq_cont .faq_cont_wrap .faq_detail_dl input:checked~.faq_detail_dd span {
        padding: 27.5px 25px;
    }
}

.fx1 {
    opacity: 0;
    transform: translateY(2rem);
}

.fx1.show {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.5s 0.2s ease, transform 0.5s 0.2s ease;
}

.pc {
    display: none;
}

@media screen and (max-width: 1024px) {
    .pc {
        display: block;
    }
}

.meta_cloud_link {
    background-image: url("../image/common/metabooth_bg.png");
    background-repeat: no-repeat;
    background-size: contain;
    padding: 5vw 10vw;
    position: relative;
    z-index: 0;
    /* display: flex;
  justify-content: space-between;
  align-items: center;  */
}

.meta_cloud_link::after {
    content: "";
    background-color: rgba(35, 187, 255, 0.06);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
}

.meta_cloud_link_sec {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40px;
    position: inherit;
    z-index: 1;
}

.avatar_3d_bannar {
    position: inherit;
    z-index: 1;
}

@media screen and (max-width: 1024px) {
    .meta_cloud_link_sec {
        display: block;
    }

    .meta_cloud_link .inr_cols p {
        text-align: left;
        margin: 20px auto;
        width: 52vw;
    }

    .meta_cloud_link .inr_cols a {
        margin: 0px auto;
        width: 50vw;
    }
}

@media screen and (max-width: 500px) {
    .meta_cloud_link .inr_cols p {
        margin: 20px auto;
        width: 100%;
    }
}

.avatar_3d_bannar a {
    display: block;
    width: 100%;
    height: 100%;
}

.avatar_3d_bannar a:hover {
    opacity: 0.6;
    transition: opacity 0.5s;
}

.avatar_3d_bannar a img {
    width: 100%;
    height: auto;
}

@media screen and (max-width: 1024px) {
    .meta_cloud_link {
        flex-direction: column;
        background-image: url("../image/common/metabooth_bg_sp.png");
        background-size: cover;
        padding: 10vw 10vw;
    }
}

.meta_cloud_link .inr_cols h1 {
    width: 248px;
}

@media screen and (max-width: 1024px) {
    .meta_cloud_link .inr_cols h1 {
        width: 50vw;
        text-align: center;
        margin: 0 auto;
    }
}

.meta_cloud_link .inr_cols h1 img {
    width: 100%;
}

.meta_cloud_link .inr_cols p {
    font-size: 16px;
    font-weight: bold;
}

@media screen and (max-width: 1024px) {
    .meta_cloud_link .inr_cols p {
        margin-bottom: 20px;
    }
}

.meta_cloud_link .inr_cols a {
    border: solid 2px transparent;
    width: 300px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    cursor: pointer;
    font-weight: bold;
    background-color: #2dbbff;
    color: white;
    text-decoration: none;
    border-radius: 4px;
    font-size: 1.4rem;
}

.meta_cloud_link .inr_cols a::after {
    content: "";
    background-image: url("../image/common/exit_icon.png");
    background-size: cover;
    width: 12px;
    height: 11px;
    position: absolute;
    right: 20px;
}

@media screen and (min-width: 768px) {
    .meta_cloud_link .inr_cols a:hover {
        background-color: white;
        box-sizing: border-box;
        color: black;
        border: solid 2px black;
        transition: color 0.5s ease, border 0.5s ease, background-color 0.5s ease;
    }

    .meta_cloud_link .inr_cols a:hover::after {
        content: "";
        background-image: url("../image/common/exit_icon_b.svg");
    }
}

.wpcf7 form .wpcf7-response-output {
    display: none !important;
    border: none !important;
}

.sb_price_container .price_cont_wrap .price_cont01 .flow_list tr td {
    width: 25%;
}

.sb_price_container .price_cont_wrap .price_cont01 .flow_list thead tr th {
    height: 88px;
}

.sb_price_container .price_cont_wrap .price_cont01 .flow_list thead tr th a,
.sb_price_container .price_cont_wrap .price_cont01 .flow_list thead tr th span,
.sb_price_container .price_cont_wrap .price_cont02 table thead tr th a,
.sb_price_container .price_cont_wrap .price_cont02 table thead tr th span {
    color: #fff;
    position: relative;
    text-decoration: none;
    cursor: pointer;
}

.sb_price_container .price_cont_wrap .price_cont01 .flow_list thead tr th .service_wrap,
.sb_price_container .price_cont_wrap .price_cont02 table thead tr th .service_wrap {
    text-decoration: underline;
}

.sb_price_container .price_cont_wrap .price_cont01 .flow_list thead tr th .service_wrap {
    font-size: 14px;
    margin-top: 5px;
    display: inline-block;
}

.sb_price_container .price_cont_wrap .price_cont01 .flow_list thead tr th .tabic,
.sb_price_container .price_cont_wrap .price_cont02 table thead tr th .tabic {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    height: 13px;
    width: 12px;
    right: -17px;
}

/* Scss Document */
#loader {
    display: block;
    background-color: #294AD9;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100vh;
    width: 100vw;
    z-index: 99999999;
}

#loader.open_load {
    transform: translateY(-100%);
    transition: transform 1s cubic-bezier(0.21, 0.14, 0.66, 0.6);
}

#loader.sub_load {
    transition: transform 0.5s cubic-bezier(0.21, 0.14, 0.66, 0.6) !important;
}

.load {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    width: 100%;
}

.load .sk-folding-cube {
    width: 50px;
    height: 50px;
    position: relative;
    -webkit-transform: rotateZ(45deg);
    transform: rotateZ(45deg);
}

@media screen and (max-width: 600px) {
    .load .sk-folding-cube {
        width: 30px;
        height: 30px;
    }
}

.load .sk-folding-cube .sk-cube {
    float: left;
    width: 50%;
    height: 50%;
    position: relative;
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}

.load .sk-folding-cube .sk-cube::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: white;
    -webkit-animation: sk-foldCubeAngle 2.4s infinite linear both;
    animation: sk-foldCubeAngle 2.4s infinite linear both;
    -webkit-transform-origin: 100% 100%;
    -ms-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
}

.load .sk-folding-cube .sk-cube.sk-cube2 {
    -webkit-transform: scale(1.1) rotateZ(90deg);
    transform: scale(1.1) rotateZ(90deg);
}

.load .sk-folding-cube .sk-cube.sk-cube2::before {
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
}

.load .sk-folding-cube .sk-cube.sk-cube4 {
    -webkit-transform: scale(1.1) rotateZ(270deg);
    transform: scale(1.1) rotateZ(270deg);
}

.load .sk-folding-cube .sk-cube.sk-cube4::after {
    -webkit-animation-delay: 0.9s;
    animation-delay: 0.9s;
}

.load .sk-folding-cube .sk-cube.sk-cube3 {
    -webkit-transform: scale(1.1) rotateZ(180deg);
    transform: scale(1.1) rotateZ(180deg);
}

.load .sk-folding-cube .sk-cube.sk-cube3::before {
    -webkit-animation-delay: 0.6s;
    animation-delay: 0.6s;
}

/*not perpix*/

.iPad .form_table .btn_submit {
    margin: 15px auto 0;
}


/**
 *
 */
/* ==========================
   フッター Footer
========================== */
footer {
    position: relative;
    background-color: var(--allblack);
}

footer .contact a p {
    text-align: center;
    color: #ffffff;
}

footer div.global_footer div.footer_service {
    position: relative;
    width: auto;
    margin: 0;
    padding: 40px 40px 32px 40px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    border-bottom: none;
}

@media screen and (max-width: 840px) and (min-width: 767px) {
    footer .global_footer .footer_service {
        display: block;
    }

    footer .global_footer small {
        margin-left: 12px;
    }
}

footer .global_footer .footer_service .service_log img {
    width: 166px;
}

footer div.global_footer div.footer_service nav ul {
    max-width: 100%;
    display: flex;
    list-style: none;
    margin-top: 0;
    padding-left: 0;
}

footer .global_footer .footer_service nav ul li {
    font-weight: bold;
    font-size: 14px;
}

footer .global_footer .footer_service nav ul li+li {
    margin-left: 24px;
}

footer .global_footer div.footer_service div.left_side {
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: 20px;
}

footer .global_footer .footer_service nav a,
footer .global_footer .footer_service p,
footer .global_footer .footer_service small {
    position: relative;
    color: #FFFFFF;
    text-decoration: none;
}

footer .global_footer .footer_service small span {
    position: absolute;
    left: -11px;
    right: auto;
    top: 0;
    bottom: 0;
    margin: auto;
    line-height: 1;
    height: max-content;
    font-size: 15px;
}

footer .global_footer .footer_service p.attention {
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
}

footer .global_footer small {
    font-size: max(0.78125vw, 10px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.02em;
}

@media only screen and (min-width: 768px) {
    footer .global_footer .footer_service nav .privacy_list {
        margin-top: 10px;
    }
}

.adulation_footer {
    width: 100%;
    height: 63px;
    padding-top: 8px;
    position: fixed;
    bottom: 0;
    background-color: #FFFFFFCC;
    z-index: 100;
    opacity: 1;
    transition: opacity 0.5s ease-in-out;
}

.adulation_footer.hidden {
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
}

.adulation_footer .btn_cnt {
    margin: auto;
}

footer .global_footer .footer_service small {
    padding-top: 0;
    font-size: 9px;
    margin-bottom: -10px;
}

footer div.btn_to_top {
    display: block;
    position: absolute;
    width: 56px;
    height: 56px;
    bottom: 65px;
    right: 45px;
    border: 1px solid #000;
    border-radius: 100%;
    background-color: #FFFFFF;
    cursor: pointer;
    z-index: 1;
}

footer div.btn_to_top img {
    top: 32%;
    left: 37%;
    width: 14px;
    height: 16px;
    position: relative;
}

@media only screen and (max-width: 767px) {
    footer div.btn_to_top {
        bottom: 430px;
        right: 20px;
    }

    footer div.global_footer {
        padding-top: 0;
        padding-bottom: 0;
    }

    footer div.global_footer div.footer_service {
        display: block;
    }

    footer div.global_footer div.footer_service .service_log img {
        max-width: 145px;
    }

    footer .global_footer div.footer_service div.left_side {
        margin-bottom: 45px;
        gap: 35px;
    }

    footer div.global_footer div.footer_service nav ul {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        column-gap: 40px;
        row-gap: 30px;
    }

    footer div.global_footer div.footer_service nav ul li {
        width: auto;
        font-size: 15px;
    }
}