.elementor-kit-9{--e-global-color-primary:#EEDDFF;--e-global-color-secondary:#EAE6D2;--e-global-color-text:#5C5636;--e-global-color-accent:#79AC62;--e-global-color-2b14b75:#FFFFFF;--e-global-color-5188a3f:#DDDDDD;--e-global-color-74ea8b4:#F9F8F2;--e-global-color-7575ad8:#23282C;--e-global-typography-primary-font-family:"Zen Kaku Gothic New";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Zen Kaku Gothic New";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Zen Kaku Gothic New";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Playfair Display";--e-global-typography-accent-font-weight:normal;background-color:#F9F8F2;color:var( --e-global-color-text );font-family:"Zen Kaku Gothic New", Sans-serif;font-weight:400;line-height:2em;}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.elementor-kit-9 h1{font-family:"Zen Kaku Gothic New", Sans-serif;font-size:1.75em;font-weight:bold;}.elementor-kit-9 h2{font-size:1.75em;font-weight:bold;}.elementor-kit-9 h3{font-size:1.875em;font-weight:700;line-height:1.4em;}.elementor-kit-9 button,.elementor-kit-9 input[type="button"],.elementor-kit-9 input[type="submit"],.elementor-kit-9 .elementor-button{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1100px;}.e-con{--container-max-width:1100px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){margin-block-end:10px;}.elementor-element{--widgets-spacing:10px 10px;--widgets-spacing-row:10px;--widgets-spacing-column:10px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-9 h2{font-size:1.5em;}.elementor-kit-9 h3{font-size:1.5em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */body {
    margin: 0;
}

#content {
    overflow: hidden;
}

button {
    cursor: pointer;
}

.overflow {
    overflow: hidden;
}
/* reCAPTCHAロゴロゴ削除 */
.grecaptcha-badge { visibility: hidden; }


.vertical-text{
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.vertical-text span{
    background: rgba(255, 255, 255, .89);
    padding: 10px;
}

a img {
    transition: all 0.3s;
}
a:hover img {
    opacity: 0.8;
    transition: all 0.3s;
}

.mission_num i {
    font-style: normal;
    font-size: 1.625em;
}

.archive-first-image {
    border-radius: 0 40px 0 0 !important;
}

/* button animation */
.button_arrow .elementor-button.elementor-button-link .elementor-button-text:before {
    color: #fff;
    display: inline;
    padding-right: 10px;
    font-size: 0.725em;
}
.button_arrow .elementor-button.elementor-button-link .elementor-button-text:before {
    content: '▶';
}
/*
.button_arrow .elementor-button.elementor-button-link:hover .elementor-button-text:after {
    background: #fff;
    color: var( --e-global-color-primary );
    transition: all .3s;
}
.button_arrow .elementor-button.elementor-button-link:hover .elementor-button-text:after {
    content: '→';
}

.button_new_b .elementor-button,
.button_new_window .elementor-button {
    position: relative;
    display: inline-block;
    transition: all 0.3s;
}*/

.button_new_b .elementor-button-text,
.button_new_window .elementor-button-text {
    position: relative;
    z-index: 1;
}

.button_new_b .elementor-button:before,
.button_new_window .elementor-button:before {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    z-index: 0;
    transition: all 0.3s;
}
.button_new_b .elementor-button:before {background-color: var( --e-global-color-text );}
.button_new_window .elementor-button:before {background-color: var( --e-global-color-primary );}

.button_new_b .elementor-button:after,
.button_new_window .elementor-button:after {
    content: '';
    position: absolute;
    top: 50%;
    right: 13px;
    width: 11px;
    height: 11px;
    background: url('/wp-content/uploads/2024/07/new_window.svg') no-repeat center;
    background-size: contain;
    transform: translate(-50%, -50%);
    z-index: 1;
}

.button_new_b .elementor-button:hover:before,
.button_new_window .elementor-button:hover:before {
    background-color: #fff;
    transition: all 0.3s;
}

.button_new_b .elementor-button:hover:after,
.button_new_window .elementor-button:hover:after {
    filter: invert(1);
}



/* improve elementor animation */
@keyframes fadeDown {
    from {
        opacity: 0;
        transform: translate3d(0,-100px,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}
.elementor-element.fadeInDown { animation-name: fadeDown; }

@keyframes fadeLeft {
    from {
        opacity: 0;
        transform: translate3d(-40px,0,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}
.elementor-element.fadeInLeft { animation-name: fadeLeft; }

@keyframes fadeRight {
    from {
        opacity: 0;
        transform: translate3d(40px,0,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}
.elementor-element.fadeInRight { animation-name: fadeRight; }

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translate3d(0,100px,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}
.elementor-element.fadeInUp { animation-name: fadeUp; }



/* Against in-page links */
#company,
#recruit,
#contact {
    padding-top: 60px;
    margin-top: -60px;
}

.head_en span {
    color: var( --e-global-color-accent );
}

/* ベースのスタイル */
.company_tbl {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
}
.company_tbl dt {
    background-color: #012F7B;
    color: #FFF;
    padding: 20px;
    border: 1px solid #999;
    flex-basis: 25%;
    line-height: 1.8em;
}
.company_tbl dd {
    background-color: #F5F9FF;
    color: #444;
    padding: 20px;
    border: 1px solid #999;
    margin: 0;
    flex-basis: 75%;
    line-height: 1.8em;
}

/* 偶数行の背景色の変更 */
.company_tbl dd:nth-of-type(2n) {
    background-color: #FFF;
}

/* スマホの場合のスタイル */
@media (max-width: 768px) {
    .company_tbl dt, .company_tbl dd {
        flex-basis: 100%;
        background-color: #FFF; /* 背景色をすべて白に */
        border-left: none;
        border-right: none;
    }

    .company_tbl dt {
    background-color: #012F7B;
        border-top: 1px solid #999;
    }

    .company_tbl dd {
        border-bottom: 1px solid #999;
    }
}

.small {
    font-size: 0.6em;
}/* End custom CSS */