.elementor-11916 .elementor-element.elementor-element-3b8421f{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11916 .elementor-element.elementor-element-9d0e9fd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11916 .elementor-element.elementor-element-8021816{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11916 .elementor-element.elementor-element-f0bac3f{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-11916 .elementor-element.elementor-element-a21e0ce{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:8px 8px;--row-gap:8px;--column-gap:8px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-11916 .elementor-element.elementor-element-1e64f97 > .elementor-widget-container{margin:2px 0px -4px 0px;padding:0px 0px 0px 0px;}.elementor-11916 .elementor-element.elementor-element-1e64f97 .elementor-icon-wrapper{text-align:center;}.elementor-11916 .elementor-element.elementor-element-1e64f97.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-accent );}.elementor-11916 .elementor-element.elementor-element-1e64f97.elementor-view-framed .elementor-icon, .elementor-11916 .elementor-element.elementor-element-1e64f97.elementor-view-default .elementor-icon{color:var( --e-global-color-accent );border-color:var( --e-global-color-accent );}.elementor-11916 .elementor-element.elementor-element-1e64f97.elementor-view-framed .elementor-icon, .elementor-11916 .elementor-element.elementor-element-1e64f97.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-accent );}.elementor-11916 .elementor-element.elementor-element-1e64f97 .elementor-icon{font-size:20px;}.elementor-11916 .elementor-element.elementor-element-1e64f97 .elementor-icon svg{height:20px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-11916 .elementor-element.elementor-element-f996042 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:600;}.elementor-11916 .elementor-element.elementor-element-840e93b{width:var( --container-widget-width, 1000px );max-width:1000px;--container-widget-width:1000px;--container-widget-flex-grow:0;}.elementor-11916 .elementor-element.elementor-element-840e93b.elementor-element{--align-self:center;}.elementor-11916 .elementor-element.elementor-element-ab5042c{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11916 .elementor-element.elementor-element-19ddc15{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-11916 .elementor-element.elementor-element-19ddc15:not(.elementor-motion-effects-element-type-background), .elementor-11916 .elementor-element.elementor-element-19ddc15 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8F8F8;}.elementor-11916 .elementor-element.elementor-element-c571659{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:8px 8px;--row-gap:8px;--column-gap:8px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11916 .elementor-element.elementor-element-ee17706 > .elementor-widget-container{margin:2px 0px -4px 0px;padding:0px 0px 0px 0px;}.elementor-11916 .elementor-element.elementor-element-ee17706 .elementor-icon-wrapper{text-align:center;}.elementor-11916 .elementor-element.elementor-element-ee17706.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-accent );}.elementor-11916 .elementor-element.elementor-element-ee17706.elementor-view-framed .elementor-icon, .elementor-11916 .elementor-element.elementor-element-ee17706.elementor-view-default .elementor-icon{color:var( --e-global-color-accent );border-color:var( --e-global-color-accent );}.elementor-11916 .elementor-element.elementor-element-ee17706.elementor-view-framed .elementor-icon, .elementor-11916 .elementor-element.elementor-element-ee17706.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-accent );}.elementor-11916 .elementor-element.elementor-element-ee17706 .elementor-icon{font-size:20px;}.elementor-11916 .elementor-element.elementor-element-ee17706 .elementor-icon svg{height:20px;}.elementor-11916 .elementor-element.elementor-element-5261d5a .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:600;}.elementor-11916 .elementor-element.elementor-element-b97ad8a{width:var( --container-widget-width, 1000px );max-width:1000px;--container-widget-width:1000px;--container-widget-flex-grow:0;}.elementor-11916 .elementor-element.elementor-element-b97ad8a.elementor-element{--align-self:center;}.elementor-11916 .elementor-element.elementor-element-205b117{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11916 .elementor-element.elementor-element-8ec9d54{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-11916 .elementor-element.elementor-element-61607be{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:8px 8px;--row-gap:8px;--column-gap:8px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11916 .elementor-element.elementor-element-78738f3 > .elementor-widget-container{margin:2px 0px -4px 0px;padding:0px 0px 0px 0px;}.elementor-11916 .elementor-element.elementor-element-78738f3 .elementor-icon-wrapper{text-align:center;}.elementor-11916 .elementor-element.elementor-element-78738f3.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-accent );}.elementor-11916 .elementor-element.elementor-element-78738f3.elementor-view-framed .elementor-icon, .elementor-11916 .elementor-element.elementor-element-78738f3.elementor-view-default .elementor-icon{color:var( --e-global-color-accent );border-color:var( --e-global-color-accent );}.elementor-11916 .elementor-element.elementor-element-78738f3.elementor-view-framed .elementor-icon, .elementor-11916 .elementor-element.elementor-element-78738f3.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-accent );}.elementor-11916 .elementor-element.elementor-element-78738f3 .elementor-icon{font-size:20px;}.elementor-11916 .elementor-element.elementor-element-78738f3 .elementor-icon svg{height:20px;}.elementor-11916 .elementor-element.elementor-element-eb7ff25 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:600;}.elementor-11916 .elementor-element.elementor-element-ab4b916{width:var( --container-widget-width, 1000px );max-width:1000px;--container-widget-width:1000px;--container-widget-flex-grow:0;}.elementor-11916 .elementor-element.elementor-element-ab4b916.elementor-element{--align-self:center;}@media(min-width:768px){.elementor-11916 .elementor-element.elementor-element-a21e0ce{--width:1000px;}.elementor-11916 .elementor-element.elementor-element-c571659{--content-width:1000px;}.elementor-11916 .elementor-element.elementor-element-61607be{--content-width:1000px;}}@media(max-width:767px){.elementor-11916 .elementor-element.elementor-element-f0bac3f{--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-11916 .elementor-element.elementor-element-1e64f97 > .elementor-widget-container{margin:-2px 0px -4px 0px;}.elementor-11916 .elementor-element.elementor-element-1e64f97 .elementor-icon{font-size:16px;}.elementor-11916 .elementor-element.elementor-element-1e64f97 .elementor-icon svg{height:16px;}.elementor-11916 .elementor-element.elementor-element-f996042 .elementor-heading-title{font-size:18px;}.elementor-11916 .elementor-element.elementor-element-19ddc15{--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-11916 .elementor-element.elementor-element-ee17706 > .elementor-widget-container{margin:-2px 0px -4px 0px;}.elementor-11916 .elementor-element.elementor-element-ee17706 .elementor-icon{font-size:16px;}.elementor-11916 .elementor-element.elementor-element-ee17706 .elementor-icon svg{height:16px;}.elementor-11916 .elementor-element.elementor-element-5261d5a .elementor-heading-title{font-size:18px;}.elementor-11916 .elementor-element.elementor-element-8ec9d54{--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-11916 .elementor-element.elementor-element-78738f3 > .elementor-widget-container{margin:-2px 0px -4px 0px;}.elementor-11916 .elementor-element.elementor-element-78738f3 .elementor-icon{font-size:16px;}.elementor-11916 .elementor-element.elementor-element-78738f3 .elementor-icon svg{height:16px;}.elementor-11916 .elementor-element.elementor-element-eb7ff25 .elementor-heading-title{font-size:18px;}}/* Start custom CSS for html, class: .elementor-element-5604315 *//* --------------------------------------------------
   タブメニューのレスポンシブ対応
   -------------------------------------------------- */
.yt-tabs-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 30px; /* PC時の間隔 */
    padding: 20px 0;
    border-bottom: 1px solid #DFDFDF;
}

.yt-tab-link {
    text-decoration: none;
    color: #4a5568;
    font-size: 18px;
    font-weight: 500;
    transition: all 0.3s ease;
    position: relative;
    padding-bottom: 5px;
    white-space: nowrap; /* テキストが勝手に改行されるのを防ぐ */
}

/* 選択中のデザイン */
.yt-tab-link.active { color: #008765; }
.yt-tab-link.active::after {
    content: '';
    position: absolute;
    bottom: -22px;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #008765;
}

/* --------------------------------------------------
   スマホ対応（767px以下）
   -------------------------------------------------- */
@media (max-width: 767px) {
    .yt-tabs-nav {
        gap: 28px;      /* スマホでは間隔を詰める */
        padding: 15px 0;
    }
    .yt-tab-link {
        font-size: 16px; /* フォントを少し小さくして収まりを良くする */
    }
    .yt-tab-link.active::after {
        bottom: -17px;  /* 余白調整に合わせてアンダーラインの位置を微調整 */
    }
    .separator {
        display: none;  /* 必要に応じてスマホでは区切り線を消す等の調整が可能 */
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-840e93b *//* ==========================================
   会社概要セクション（共通）
   ========================================== */
.yt-company-profile { color: #333; line-height: 1.7; font-size: 15px; }
.yt-sub-title { 
    color: #008765; 
    border-bottom: 2px solid #008765; 
    padding-bottom: 10px; 
    margin: 40px 0 20px; 
    font-size: 20px; 
}

/* テーブルスタイル */
.yt-info-table { width: 100%; border-collapse: collapse; margin-bottom: 30px; }
.yt-info-table th { 
    width: 30%; /* 少し広げて読みやすく */
    background: #f8fafc; 
    padding: 15px; 
    border: 1px solid #e2e8f0; 
    text-align: left; 
    color: #008765; 
    font-weight: bold; 
}
.yt-info-table td { padding: 15px; border: 1px solid #e2e8f0; }

/* 3カラムグリッド */
.yt-qual-grid { 
    display: grid; 
    grid-template-columns: repeat(3, 1fr); 
    gap: 20px; 
}
.yt-qual-card { 
    background: #f8fafc; 
    padding: 20px; 
    border-radius: 8px; 
    border: 1px solid #e2e8f0; 
    height: 100%; /* 高さ揃え */
}
.yt-qual-card h4 { 
    color: #008765; 
    margin: 0 0 10px 0; 
    padding-bottom: 5px; 
    border-bottom: 2px solid #008765; 
    font-size: 16px; 
}
.yt-qual-card p { font-size: 13px; line-height: 1.8; margin: 0; }

/* ==========================================
   レスポンシブ対応（767px以下）
   ========================================== */
@media (max-width: 767px) {
    /* テーブルをリスト形式に変換 */
    .yt-info-table, 
    .yt-info-table tbody, 
    .yt-info-table th, 
    .yt-info-table td, 
    .yt-info-table tr { 
        display: block; 
        width: 100%; 
    }
    .yt-info-table th { 
        border: none;
        background: #e2e8f0; /* 背景色を変えて区分けを明確に */
        padding: 10px 15px;
        font-size: 14px;
    }
    .yt-info-table td { 
        border: 1px solid #e2e8f0; 
        margin-bottom: 10px; /* セル間に余白 */
    }

    /* 資格カードを1カラムに */
    .yt-qual-grid { 
        grid-template-columns: 1fr; 
        gap: 15px; 
    }
    
    .yt-sub-title { font-size: 18px; margin-top: 30px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b97ad8a *//* ==========================================
   アクセスセクション（共通）
   ========================================== */
.yt-access-section { 
    max-width: 1000px; 
    margin: 0 auto; 
    padding: 40px 0; /* padding: 00px から 40px に修正 */
}

.yt-sub-title { 
    color: #008765; 
    border-bottom: 2px solid #008765; 
    padding-bottom: 10px; 
    margin-bottom: 20px; 
    font-size: 20px; 
}

/* 地図コンテナ */
.yt-map-container { 
    width: 100%; 
    border-radius: 8px; 
    overflow: hidden; 
    box-shadow: 0 4px 10px rgba(0,0,0,0.1); 
    margin-bottom: 20px; 
    aspect-ratio: 16 / 9; /* 地図の縦横比を固定すると崩れにくい */
}
.yt-map-container iframe { width: 100%; height: 100%; border: none; }

/* 詳細情報エリア */
.yt-access-details { 
    display: flex; 
    gap: 40px; 
    background: #f8fafc; 
    padding: 25px; 
    border-radius: 8px; 
}

.access-item { flex: 1; }
.access-item strong { 
    display: block; 
    color: #008765; 
    margin-bottom: 8px; /* 少し広げてメリハリを出す */
    font-size: 15px; 
}
.access-item p { 
    margin: 0; 
    font-size: 14px; 
    color: #333; 
    line-height: 1.6; /* 行間を少し広げて読みやすく */
}

/* ==========================================
   レスポンシブ対応
   ========================================== */
@media (max-width: 600px) {
    .yt-access-section { padding: 0px 0; }
    
    .yt-access-details { 
        flex-direction: column; 
        gap: 20px; 
        padding: 20px; /* スマホではパディングを少し絞る */
    }
    
    .yt-map-container {
        aspect-ratio: 4 / 3; /* スマホでは少し正方形に近い比率にしても見やすい */
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ab4b916 *//* ==========================================
   沿革（ヒストリー）セクション
   ========================================== */
.yt-history-container { 
    max-width: 1000px; 
    margin: 0 auto; 
    padding: 40px 20px; /* 余白を少し追加してスマホでの張り付きを解消 */
}

.yt-sub-title { 
    color: #008765; 
    border-bottom: 2px solid #008765; 
    padding-bottom: 10px; 
    margin-bottom: 40px; 
    font-size: 24px; 
    text-align: center; 
}

/* タイムラインの線 */
.yt-timeline { position: relative; padding: 20px 0; }
.yt-timeline::before { 
    content: ''; 
    position: absolute; 
    left: 110px; 
    top: 0; 
    bottom: 0; 
    width: 2px; 
    background: #cbd5e1; 
}

.yt-history-item { 
    position: relative; 
    display: flex; 
    margin-bottom: 30px;
    opacity: 0; 
    transform: translateY(20px);
    transition: all 0.8s ease-out;
}

.yt-history-item.is-visible { opacity: 1; transform: translateY(0); }

/* 年号と内容 */
.year { 
    flex: 0 0 110px; 
    font-weight: bold; 
    color: #008765; 
    z-index: 1; 
    background: #fff; 
    padding-right: 20px; 
    font-size: 16px; /* 少し大きく */
}
.content { 
    flex: 1; 
    padding-left: 20px; 
    position: relative; 
    font-size: 15px; 
    color: #333; 
    line-height: 1.7; 
}

/* タイムラインの丸ポチ */
.yt-history-item::before { 
    content: ''; 
    position: absolute; 
    left: 106px; 
    top: 6px; 
    width: 10px; 
    height: 10px; 
    background: #008765; 
    border-radius: 50%; 
}

/* ==========================================
   レスポンシブ対応（600px以下）
   ========================================== */
@media (max-width: 600px) {
    .yt-history-container { padding: 20px 15px; }
    
    /* タイムラインの線を左に寄せる */
    .yt-timeline::before { left: 70px; }
    
    /* 年号の幅とサイズ調整 */
    .year { 
        flex: 0 0 70px; 
        font-size: 13px; 
        padding-right: 10px; 
    }
    
    /* 丸ポチの位置も連動して左へ */
    .yt-history-item::before { left: 66px; }
    
    /* 内容の余白とサイズ */
    .content { 
        padding-left: 15px; 
        font-size: 14px; 
        line-height: 1.6; 
    }
}/* End custom CSS */