@charset "utf-8";

/* ==========================================
   1. 全体・共通パーツ（文字・色・角丸）
   ========================================== */

/* 自然な改行 */
.word_block p {
    word-break: keep-all;
    overflow-wrap: break-word; 
}

/* 白文字設定 */
.text_white,
.text_white h1,
.text_white h2,
.text_white h3,
.text_white h4 {
    color: #FFF;
}

/* 角丸設定 */
.kadomaru,
.kadomaru img {
    border-radius: 10px;
}
.kadomaru .child {
    border-radius: 15px;
}

/* ==========================================
   2. レイアウト・共通ラッパー
   ========================================== */

.main_wrapper {
    /* デフォルトの設定（必要なら記述） */
}

@media print, screen and (min-width: 650px) {
    .main_wrapper {
        padding-bottom: 0px;
    }
}

/* SCROLL位置指定 */
.obg_ctrl_background_8 {
    position: relative;
}
.scroll {
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    margin: 0 auto;
}

/* ==========================================
   3. コンポーネント（カード・矢印）
   ========================================== */

/* カード風外枠 */
.cardbox .ch_group {
    display: flex;
}
.cardbox .child {
    border-radius: 10px;
    padding: 10px;
    border: solid 1px var(--color-primary);
}
@media screen and (min-width: 950px) {
    .cardbox {
        display: flex;
    }
}

/* 右矢印をつける */
.yazirushi .child,
.yazirushi_f .child,
.yazirushi_l .child {
    position: relative;
}
.yazirushi .child::before,
.yazirushi_f .child::before,
.yazirushi_l .child::before {
    content: "";
    position: absolute;
    background-image: url(/upimage/arrow.png);
    width: 27px;
    height: 50px;
    top: 50px;
    right: -30px;
    margin: auto 0;
}

/* 矢印のPC・スマホ分岐 */
@media (min-width: 768px) {
    .yazirushi_l .child:last-child::before {
        content: none;
    }
}
@media (max-width: 768px) {
    .yazirushi .child::before,
    .yazirushi_f .child::before,
    .yazirushi_l .child::before {
        position: relative;
        transform: rotate(90deg);
        top: 0px;
        right: 0;
        left: 0;
        margin: 0 auto;
    }
    .yazirushi_f .child:first-child::before {
        content: none;
    }
}

/* ==========================================
   4. 特定セクション（フッター・パンくず）
   ========================================== */

/* パンくず */
.obg_ctrl_background_9 .topics-path li,
.obg_ctrl_background_9 .topics-path li a, 
.obg_ctrl_background_9 .topics-path li:first-child:before {
    color: #fff;
}
.obg_ctrl_background_9 .topics-path_margin {
    margin-bottom: 110px;
}
@media screen and (max-width: 750px) {
    .obg_ctrl_background_9 .topics-path_margin {
        margin-bottom: 0px;
    }
}

/* フッターリンク設定（基本 → hover の順） */
.link_nonecolor .child, 
.link_nonecolor .txt a, 
.link_nonecolor a {
    color: #4D4D4D;
    text-decoration: none;
    transition: color 0.3s;
    line-height: 200%;
    white-space: nowrap;
}
.link_nonecolor .child, 
.link_nonecolor .txt a:visited, 
.link_nonecolor a:visited {
    color: #4D4D4D !important;
}
.link_nonecolor .child, 
.link_nonecolor .txt a:hover, 
.link_nonecolor a:hover {
    color: #F8E645 !important;
}

/* コピーライト */
.copy .child, 
.copy .txt a {
    color: #fff;
    text-decoration: none;
    transition: color 0.3s;
    line-height: 220%;
    white-space: nowrap;
}
.copy .child, 
.copy .txt a:visited {
    color: #fff;
}
.copy .child, 
.copy .txt a:hover {
    color: #F8E645;
}

/* フッターお問い合わせパーツ */
.column1w .parts03.ch_frame .child,
.column1w .parts03.ch_back_color .child {
    padding: 20px;
}
.footer_contact .child h3 {
    margin-bottom: 0px;
}