.elementor-kit-17{--e-global-color-primary:#00221F;--e-global-color-secondary:#00221F;--e-global-color-text:#00221F;--e-global-color-accent:#005C55;--e-global-color-85d8360:#28967A;--e-global-color-d6e191d:#ECF3F2;--e-global-color-012925d:#DCDCDC;--e-global-color-f5c7f3a:#C1CAC4;--e-global-color-5e472d8:#FFFFFF;--e-global-typography-primary-font-family:"Noto Sans JP";--e-global-typography-secondary-font-family:"Noto Sans JP";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Noto Sans JP";--e-global-typography-text-font-weight:normal;--e-global-typography-text-line-height:2em;--e-global-typography-accent-font-family:"Noto Sans JP";--e-global-typography-accent-font-weight:500;--e-global-typography-ee4885a-font-family:"Noto Sans JP";--e-global-typography-ee4885a-font-size:24px;--e-global-typography-ee4885a-font-weight:bold;--e-global-typography-d5a541d-font-family:"Noto Sans JP";--e-global-typography-d5a541d-font-size:13px;--e-global-typography-d5a541d-line-height:1.25em;--e-global-typography-f8f1005-font-family:"Noto Sans JP";--e-global-typography-f8f1005-font-weight:bold;--e-global-typography-18aac07-font-family:"Noto Sans JP";--e-global-typography-18aac07-font-size:20px;--e-global-typography-18aac07-line-height:1.5em;--e-global-typography-05d50b0-font-family:"Noto Sans JP";--e-global-typography-05d50b0-font-size:64px;--e-global-typography-05d50b0-font-weight:bold;--e-global-typography-cf0efb2-font-family:"Noto Sans JP";--e-global-typography-cf0efb2-font-size:20px;--e-global-typography-bbaa169-font-family:"Noto Sans JP";--e-global-typography-bbaa169-font-size:18px;--e-global-typography-bbaa169-font-weight:bold;color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), sans;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-17 e-page-transition{background-color:#FFBC7D;}.elementor-kit-17 p{margin-block-end:24px;}.elementor-kit-17 a{color:var( --e-global-color-85d8360 );font-family:"Noto Sans JP", sans;font-weight:normal;text-decoration:none;}.elementor-kit-17 a:hover{color:var( --e-global-color-accent );text-decoration:none;}.elementor-kit-17 h1{font-size:40px;font-weight:bold;}.elementor-kit-17 h2{font-size:36px;font-weight:bold;}.elementor-kit-17 h3{font-size:24px;font-weight:bold;}.elementor-kit-17 h4{font-size:20px;font-weight:bold;}.elementor-kit-17 h5{font-size:16px;font-weight:bold;}.elementor-kit-17 h6{font-family:"Noto Serif JP", sans;font-size:16px;font-weight:bold;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;--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){--kit-widget-spacing:16px;}.elementor-element{--widgets-spacing:16px 16px;--widgets-spacing-row:16px;--widgets-spacing-column:16px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-17{--e-global-typography-05d50b0-font-size:32px;line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-17{line-height:var( --e-global-typography-text-line-height );}.elementor-kit-17 h1{font-size:30px;}.elementor-kit-17 h2{font-size:24px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* reset */
a.elementor-icon {
    outline: none;
}

.strong {
    background: linear-gradient(transparent 60%, #FDD81F 60%);
    font-weight: bold;
}

form.wpcf7-form input[type=date],
form.wpcf7-form input[type=email],
form.wpcf7-form input[type=number],
form.wpcf7-form input[type=password],
form.wpcf7-form input[type=search],
form.wpcf7-form input[type=tel],
form.wpcf7-form input[type=text],
form.wpcf7-form input[type=url],
form.wpcf7-form select,
form.wpcf7-form textarea {
    border: 1px solid #666;
    border-radius: 8px;
    padding: .5rem 1rem;
    transition: all .3s;
    width: 100%;
    background: #ffffff;
    /* border-color: transparent; */
}

figcaption.widget-image-caption.wp-caption-text {
    font-style: normal;
}

ul.elementor-inline-items.elementor-icon-list-items.elementor-post-info {
    padding: 0!important;
}

/* table */
table td {
    font-weight: normal;
    font-size: 1em;
}

/* table-reset */
table tbody>tr:nth-child(odd)>th,
table tbody>tr:nth-child(odd)>td {
    background-color: transparent;
}

table tbody tr:hover>th,
table tbody tr:hover>td {
    background-color: transparent;
}

table tbody tr:hover>th,
table tbody>tr:nth-child(odd)>th,
table th {
    font-weight: 700;
}

table td,
table th {
    padding: 20px;
}

/* table */
table.table-eq {
    table-layout: fixed;
}

table th {
    border: none;
    border-top: solid 1px #005C55;
}

table td {
    border: none;
    border-top: solid 1px #C1CAC4;
}

table {
    border-bottom: dotted 1px black;
}

table.table.table-contactform th {
    white-space: nowrap;
}

/* 修正: text-aligh-right -> text-align-right */
td.text-align-right {
    text-align: right;
}

th {
    text-align: left;
}

/* contact form */
input.wpcf7-form-control.wpcf7-submit {
    width: 300px;
    background: #EA6D4F;
    color: white;
    border-radius: 8px;
}

input.wpcf7-form-control.wpcf7-submit:hover {
    background: white;
    color: #EA6D4F;
}

.first-letter-blue::first-letter {
    color: #3D88C9;
}

.btn-icon-right span.elementor-button-icon {
    position: absolute;
    right: 20px;
}

/* table-eq */
.table-eq td,
.table-eq th {
    /* 空の定義 */
}

/* table-program */
table.table-program th {
    width: 300px;
    text-align: left;
    background: transparent;
}

table.table-program,
table.table-program th,
table.table-program td {
    border: none;
}

table.table-program.table-program-green th {
    color: #93C52E;
    border-right: 2px solid #93C52E;
}

table.table-program.table-program-pink th {
    color: #DB71A8;
    border-right: 2px solid #DB71A8;
}

table.table-program.table-program-brown th {
    color: #AA7A41;
    border-right: 2px solid #AA7A41;
}

table.table-program.table-program-red th {
    color: #E94C36;
    border-right: 2px solid #E94C36;
}

/* 重複していたので1つに統合 */
table.table-program.table-program-blue th {
    border-right: 2px solid #3D88C9;
}

.table-nowrap th {
    white-space: nowrap;
}

/* list */
ul li::marker {
    /* 空の定義 */
}

button#iBubleStrong {
    position: relative;
}

button#iBubleStrong span.e-n-tab-icon {
    top: -20px;
    position: absolute;
    left: 50%;
    width: 157px;
    height: 31px;
    margin-left: -78px;
    z-index: 99;
}

.box-interview h4 {
    display: flex;
    align-items: center;
}

.box-interview h4::before {
    content: '';
    width: 16px;
    height: 1px;
    background-color: #000;
    margin-right: 16px;
}

@media(max-width: 767px) {
    .table-responsive th,
    .table-responsive td {
        display: block;
    }
}

/* top text */
@keyframes underline {
    0% {
        background-size: 0% 100%;
    }
    100% {
        background-size: 100% 100%;
    }
}

@keyframes move {
    0% {
        bottom: -52px;
    }
    100% {
        bottom: 0px;
    }
}

.mv_text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    font-size: 42px;
    line-height: 52px;
    font-weight: bold;
}

.mv_text_underline {
    overflow: hidden;
    position: relative;
    flex-shrink: 0;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

.mv_text_move {
    font-weight: bold;
    position: relative;
    bottom: -52px;
    left: 0;
    animation: move 0.5s 2s linear both;
}

.mv_text_underline::after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background-image: linear-gradient(90deg, #515151 0%, #515151 100%);
    background-size: 0% 100%;
    background-repeat: no-repeat;
    background-position: left bottom;
    position: absolute;
    bottom: 0px;
    animation: underline 0.5s 1s both;
}

.wrap-mv {
    padding: 32px;
    background: white;
}

.wrap-mv {
    padding: 24px;
    background: #ffffff;
    width: auto;
    display: inline-block;
}

.header-en-white h4,
.header-en h4 {
    display: flex;
    align-items: center;
}

.header-en h4:before {
    content: '';
    display: inline-block;
    width: 1em;
    height: 1px;
    margin-right: 1em;
    background-color: #28967A;
}

.header-en-white h4:before {
    content: '';
    display: inline-block;
    width: 1em;
    height: 1px;
    margin-right: 1em;
    background-color: white;
}

li::marker {
    color: #28967A; 
}

@media(max-width: 1140px) {
    .mv_text {
        font-size: 20px;
        line-height: 30px;
    }
    .mv_text_move {
        bottom: -30px;
    }
}

@media(max-width: 768px) {
    .wrap-mv {
        padding: 16px;
                width: 100%;
    }
    .mv_text_move {
        bottom: -27px;
    }
    /* 重複していた font-size 指定を整理（下の行を優先） */
    .mv_text {
        font-size: 20px;
        line-height: 25px;
    }
table td,table th{
      display: block;
}

    
}/* End custom CSS */