.sub_visual { position: relative; height: 220px; display: flex; align-items: center; background-repeat: no-repeat; background-position: center center; background-size: cover; overflow: hidden; }
.sub_visual--community01 { background-image: url('/ibuilder/template/theme_skin/theme129/common/img/sub/sub_v1.jpg'); }
.sub_visual--community02 { background-image: url('/ibuilder/template/theme_skin/theme129/common/img/sub/sub_v2.jpg'); }
.sub_visual--community03 { background-image: url('/ibuilder/template/theme_skin/theme129/common/img/sub/sub_v3.jpg'); }
.sub_visual--community04 { background-image: url('/ibuilder/template/theme_skin/theme129/common/img/sub/sub_v4.jpg'); }
.sub_visual--community05 { background-image: url('/ibuilder/template/theme_skin/theme129/common/img/sub/sub_v5.jpg'); }
.sub_visual--community06 { background-image: url('/ibuilder/template/theme_skin/theme129/common/img/sub/sub_v6.jpg'); }
.sub_visual_title { text-align: center; font-size: 4rem; color: #ffffff; text-shadow: 0 2px 6px rgba(0, 0, 0, 0.35); font-weight: 700; }
.sub_layout { position: relative; display: flex; align-items: flex-start; gap: 60px; padding: 20px 0 80px; z-index: 1; }
.lnb { flex: 0 0 280px;}
.lnb_box { position: relative; border-radius: 26px; color: #000; z-index: 2;}
.lnb_title {font-size: 3.2rem;background-color: #0b3d8b;color:#fff;text-align: center;padding:30px 10px;border-radius: 20px; font-weight: 600; display: inline-flex; justify-content: center; align-items: center; width: 100%; min-height: 120px;  overflow: hidden;   position: relative; font-family: 'NexonLv1Gothic';}
.lnb_title > span{ position: relative; z-index: 2; }
.lnb_title::after{ content: ""; position: absolute; left: -20px; bottom:-50px; width: 162px; height: 165px; background-image: url("/ibuilder/template/theme_skin/theme129/common/img/common/mjc_lnb.png"); background-repeat: no-repeat; background-size: contain; background-position: left bottom; pointer-events: none;  z-index: 1;}
/*lnb_depth2*/
.lnb_depth2{ margin-top: 18px; overflow: hidden; background:#fff;}
.lnb_depth2 > li{ border-bottom: 1px solid #e5e5e5; }
.lnb_depth2 > li > a{ display:flex; align-items:center; justify-content:space-between; width:100%; padding: 18px 16px; font-size: 1.8rem; color:#9aa0a6; background:#fff; }
.lnb_depth2 > li.is_active > a{ color:#0b3d8b; font-weight:700; }
.lnb_depth2 > li.is_active{ border-bottom: 2px solid #0b3d8b; }
.lnb_depth2 > li.is_active i{ font-size: 2.4rem; color:#0b3d8b; }
.lnb_depth2 > li:not(.is_active) i{ display:none; }
.sub_content { flex: 1; background-color: #ffffff; }
.sub_page_head{  padding-bottom: 18px; border-bottom: 1px solid #dcdcdc;}
.sub_page_title { font-size: 3.2rem; font-weight: 600;}
.sub_page_title .sub_tit_line{position: relative; color:#444444;}
.sub_page_title .sub_tit_line::before{content:'|'; padding-right: 10px; margin-left: 10px; color:#dddddd; font-weight:100;}
.sub_page_top{ display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom: 20px; }
.krds-breadcrumb-wrap{ margin: 0; }
.breadcrumb{ gap: 12px; }
.breadcrumb li:not(:last-child)::after{ margin-left: 12px; }
.breadcrumb{display: flex; align-items: center; gap:20px;}
.breadcrumb li{display: inline-flex; align-items:center; justify-content:flex-start; flex-direction:row;}
.breadcrumb li:not(:last-child)::after {display:inline-flex; align-items: center; justify-content: flex-start; content: ''; margin-left:20px; width: 9px; height: 15px; background: url(/ibuilder/template/theme_skin/theme129/common/img/common/bread_right.png)no-repeat;}
.sub_zone{padding:20px 0;}
/* ==================================================
글자 크기 조절 영역
================================================== */
.font_ctrl { display: flex; align-items: center; gap: 8px; justify-content: flex-end; }
.font_btn_group { display: flex; align-items: center; gap: 6px; background-color: #f5f5f5; padding: 4px 10px; border-radius: 20px; border: 1px solid #ddd; }
.font_ctrl .font_label { font-size: 1.4rem; color: #444; }
.font_ctrl button { width: 28px; height: 28px; border: 1px solid #ccc; background: #fff; border-radius: 50%; font-size: 1.6rem; line-height: 26px; text-align: center; cursor: pointer; }
.font_ctrl .font_state { font-size: 1.4rem; color: #444; min-width: 36px; text-align: center; } 

/* ==================================================
공통 섹션 타이틀 (아이콘 before)
================================================== */
.com_section_tit{ position: relative; display: flex; align-items: center; gap: 10px; margin-bottom: 14px; font-size: 2.2rem; font-weight: 700; line-height: 1.2; color: #0b3d8b; }
.com_section_tit::before{ content: ""; width: 22px; height: 21px; flex: 0 0 21px; background: url("/ibuilder/template/theme_skin/theme129/common/img/common/icon_h2.png")no-repeat; }

/* ==================================================
    센터소개
================================================== */
    /*센터안내*/
.sub01_theme01{}
.sub01_block + .sub01_block{ margin-top: 20px; }
.sub01_desc{ font-size: 1.7rem; line-height: 1.7; color: #666; padding-left: 28px;}
.sub01_row{ display: flex; align-items: flex-start; gap: 18px; margin-top: 25px; padding-left: 28px; }
.sub01_badge{ width: 90px; flex: 0 0 90px; background: #f4f4f4; border: 1px solid #e0e0e0; border-radius: 10px; text-align: center; padding: 10px 6px; font-size: 1.5rem; font-weight: 700; line-height: 1.2; color: #222; }
.sub01_row_cont{ flex: 1; padding-top: 10px;}
.sub01_row_tit{ font-size: 1.7rem; font-weight: 700; color: #333; margin-bottom: 8px; }

    /*구성원*/
.sub01_theme02{}
.sub02_block + .sub02_block{ margin-top: 20px; }
    /*이용 안내*/
.sub01_theme03{}
.sub01_theme03 .center_use_wrap{ display: grid; grid-template-columns: 305px 1fr; gap: 30px; margin-top: 30px; }
.center_use_img{ position: relative; border-radius: 20px; overflow: hidden; }
.center_use_img img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.center_use_img_txt{ position: absolute; left: 24px; bottom: 24px; color: #fff; font-size: 1.9rem; font-weight: 700; line-height: 1.4; text-shadow: 0 2px 6px rgba(0,0,0,0.35); }
.center_use_card_list{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; margin: 0; padding: 0; list-style: none; }
.center_use_card_list .center_use_card.is_full{ grid-column: 1 / -1; }
.center_use_card{ display: flex; align-items: flex-start; gap: 16px; padding: 22px 24px; border-radius: 15px; background: #fff; border: 1px solid #e5e5e5; }
.center_use_icon{ width: 90px; height: 90px; flex: 0 0 90px; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: #f3f5f9; }
.center_use_icon img{ max-width: 100%; max-height: 100%; display: block; }
.center_use_tit{ display: block; font-size: 1.7rem; font-weight: 700; color: #215db7; margin-bottom: 6px; }
.center_use_desc{ font-size: 1.5rem; color: #444; line-height: 1.6; }
.center_use_desc a{ color: #444; }

/* ==================================================
    공지·소식
================================================== */
.sub02_theme04 .agency_grid{  display: grid; grid-template-columns: 1fr 1fr;}
.sub02_theme04 .agency_item{ padding: 34px 34px; border-bottom: 1px dashed #c7c7c7; min-width: 0; }
.sub02_theme04 .agency_item:nth-child(odd){ border-right: 1px dashed #c7c7c7; }
.sub02_theme04 .agency_item:nth-of-type(5),
.sub02_theme04 .agency_item:nth-of-type(6){border-bottom: 0;}
.sub02_theme04 .agency_tit{ font-size: 1.8rem; font-weight: 700; color: #002967; margin: 0 0 12px;}
.sub02_theme04 .agency_desc{ margin: 0; font-size: 1.5rem; color: #666; word-break: keep-all; line-height: 1.7;}
.sub02_theme04 .link_text{ font-size: 1.4rem;}
.sub02_theme04 .agency_link_row{ margin-top: 12px; display: flex; align-items: center; gap: 8px; min-width: 0;}
.sub02_theme04 .agency_link{ font-size: 1.4rem; color: #1a5fd0; text-decoration: underline; overflow-wrap: anywhere; word-break: break-word; }
.sub02_theme04 .link_go{display: inline-block; width:18px; height: 17px; background: url(/ibuilder/template/theme_skin/theme129/common/img/sub/icon_link_home.png)no-repeat;}

/* ==================================================
    인권침해
================================================== */
.sub03_theme01{}
.sub03_block01+.sub03_block01{margin-top: 20px;}
.sub03_block01 .sub01_desc ~ .sub01_desc{margin-top: 20px;}
.rolo_card_box{ margin-top: 18px; padding-left: 28px;}
.rolo_card_list{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 0; padding: 0; list-style: none; }
.rolo_card_item{ min-width: 0; }
.rolo_card{ background: #f3f5f9; border-radius: 15px; padding: 22px 18px 20px; min-height: 170px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.rolo_card_icon{ width: 64px; height: 64px; display: flex; align-items: center; justify-content: center; margin-bottom: 10px; }
.rolo_card_icon img{ max-width: 100%; max-height: 100%; display: block; }
.rolo_card_tit{ margin: 0; font-size: 1.7rem; font-weight: 800; line-height: 1.25; color: #0043a7; }
.rolo_num{ font-weight: 700;vertical-align: top; margin-right: 5px;}
.rolo_card_desc{ margin: 6px 0 0; font-size: 1.4rem; line-height: 1.4; color: #666; }

/* ==================================================
    성희롱 · 성폭력
================================================== */
.sub04_theme01{}
.sub04_theme01 .sub04_quote{ display: flex; justify-content: center; gap: 18px; padding: 14px 0; background: transparent; }
.sub04_theme01 .sub04_quote_box{ text-align: center; }
.sub04_theme01 .sub04_quote_em{ color: #215db7; font-weight: 800; }
.sub04_theme01 .sub04_quote_main{ font-size: 2.2rem; font-weight: 700; }
.sub04_theme01 .sub04_quote_sub{ margin: 8px 0 0; font-size: 1.6rem; color: #333333; word-break: keep-all; }
.sub04_theme01 .sub04_quote_mark{ width: 18px; height: 14px; flex: 0 0 18px; background-repeat: no-repeat; background-size: contain; background-position: center; opacity: 1; margin-top: 5px; }
.sub04_theme01 .sub04_quote_mark--l{ background-image: url("/ibuilder/template/theme_skin/theme129/common/img/sub/icon_qutoe_dwn.png"); }
.sub04_theme01 .sub04_quote_mark--r{ background-image: url("/ibuilder/template/theme_skin/theme129/common/img/sub/icon_quote_up.png"); }
.sub04_theme01 .sub04_quote a:focus{ outline: 2px solid #0b3d8b; outline-offset: 2px; }
.sub04_block01+.sub04_block01{margin-top: 20px;}
.block_tit{font-weight: 800; color:#111111; margin:20px 0; padding-left: 27px; font-size: 2rem;}
.sub04_block01 .dot_list{padding-left: 27px;}
.sub04_theme01 .sub04_card_list{ margin: 0; padding: 0 0 0 27px; list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 18px; }
.sub04_theme01 .sub04_card_list02{ margin: 0; padding: 0 0 0 27px; list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.sub04_theme01 .sub04_card_item{ min-width: 0; }
.sub04_theme01 .sub04_card,
.sub04_theme02 .sub04_card{ height: 100%; background: #f3f5f9; border-radius: 15px; padding: 22px 18px 20px; text-align: center; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; }
.sub04_theme01 .sub04_card_icon{ width: 84px; height: 84px; display: flex; align-items: center; justify-content: center; margin-bottom: 12px; }
.sub04_theme01 .sub04_card_icon img{ max-width: 100%; max-height: 100%; display: block; }
.sub04_theme01 .sub04_card_tit,
.sub04_theme02 .sub04_card_tit{ margin: 0; font-size: 1.8rem; font-weight: 800; color: #0043a7; }
.sub04_theme01 .sub04_card_desc,
.sub04_theme02 .sub04_card_desc{ margin: 10px 0 0; font-size: 1.5rem; color: #333333; word-break: keep-all; }
.sub04_theme01 .sub04_card a:focus{ outline: 2px solid #0b3d8b; outline-offset: 3px; }

/* ==================================================
    상담신고
================================================== */
.sub05_theme01{}
.sub05_block01+.sub05_block01{margin-top: 20px;}
.sub05_tit{margin: 20px 0; padding-left: 28px; font-weight: 700; font-size: 1.9rem;}
.sub05_card_box { margin-top: 18px; padding-left: 28px; }
.sub05_card_list{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin: 0; padding: 0; list-style: none; }
.sub05_card_item{ min-width: 0;} 
.sub05_card{ background: #f3f5f9; border-radius: 15px; padding: 26px 18px 22px; min-height: 300px; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; text-align: center; }
.sub05_card_icon{ width: 92px; height: 92px; display: flex; align-items: center; justify-content: center; margin-bottom: 14px; }
.sub05_card_icon img{ max-width: 100%; max-height: 100%; display: block; }
.sub05_card_title{ margin: 0 0 16px; font-size: 1.8rem; font-weight: 800; line-height: 1.2; color: #0043a7; }
.sub05_card_actions{ display: flex; flex-direction: column; align-items: center; gap: 10px; width: 100%; margin-top: 6px; }
.sub05_card_badge{ width: 120px; height: 45px; border-radius: 22.5px; display: inline-flex; align-items: center; justify-content: center; background: #fff; border: 1px solid #d8dde6; color: #333; font-size: 1.5rem; font-weight: 700; text-decoration: none; line-height: 1; box-sizing: border-box; }
.sub05_card_badge:focus{ outline: 2px solid #0b3d8b; outline-offset: 3px; }
.sub05_card_role{ margin: 14px 0 26px; padding-left: 27px; list-style: none; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 50px; align-items: start; }
.sub05_step_item{ position: relative; min-width: 0; }
.sub05_step_card{ border: 1px solid #cfd7ea; border-radius: 14px; overflow: hidden; background: #fff; min-height: 140px; display: flex; flex-direction: column; align-items: center; }.sub05_step_icon{ height: 92px; width: 100%; display: flex; align-items: center; justify-content: center; background: #fff; }
.sub05_step_icon img{ width: 54px; height: 54px; object-fit: contain; display: block; }
.sub05_step_label{ width: 100%; height: 48px; display: flex; align-items: center; justify-content: center; background: #3559ab; color: #fff; font-size: 1.6rem; font-weight: 800; line-height: 1; text-align: center; padding: 0 10px; }
.sub05_step_item:not(:last-child)::after{ content: ""; position: absolute; top: 50%; right: -42px; width: 35px; height: 14px; transform: translateY(-50%); background: url("/ibuilder/template/theme_skin/theme129/common/img/sub/icon_arrow.png") no-repeat; opacity: 0.9; }
.tbl_scroll{ margin-top: 20px; padding-left: 27px; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.sub05_proc_tbl{ width: 100%; min-width: 860px; border-collapse: collapse; table-layout: fixed; border-top: 2px solid #3559ab; background: #fff; }
.sub05_proc_tbl th,
.sub05_proc_tbl td{ border: 1px solid #d9d9d9; padding: 14px 16px; font-size: 1.5rem; color: #333; line-height: 1.7; vertical-align: top; }
.sub05_proc_tbl .proc_group{ background: #f3f5f9; text-align: center; vertical-align: middle; font-weight: 800; color: #333; }
.sub05_proc_tbl .proc_group_txt{ display: inline-block; writing-mode: vertical-rl; text-orientation: upright; letter-spacing: 0.08em; }
.sub05_proc_tbl .proc_step{ background: #fafafa; text-align: center; vertical-align: middle; font-weight: 800; color: #333; word-break: keep-all; }
.sub05_proc_tbl .proc_desc{ background: #fff; word-break: keep-all; overflow-wrap: anywhere; }
.sub05_proc_tbl tr > *:first-child { border-left: none; }
.sub05_proc_tbl tr > *:last-child { border-right: none; }
@media (hover: hover){
    .sub05_card_badge:hover{ border-color:#0b3d8b; }
}


/* ==================================================
    예방교육
================================================== */
.sub06_theme01{}
.sub06_block01+.sub06_block01{margin-top: 20px;}
.sub06_role_list{padding-left: 28px; font-size: 1.6rem; position: relative;}
.sub06_role_list li + li{margin-top: 7px;}
.sub06_role_list .call::before{content: ''; display: inline-block; width: 15px; height: 15px; background: url(/ibuilder/template/theme_skin/theme129/common/img/sub/icon_call2.png)no-repeat; margin-right: 8px; vertical-align: middle;}
.sub06_role_list .email::before{content: ''; display: inline-block; width: 16px; height: 17px; background: url(/ibuilder/template/theme_skin/theme129/common/img/sub/icon_email.png)no-repeat; margin-right: 8px; vertical-align: middle;}

/* ==================================================
    반응형
================================================== */
@media(max-width:1200px){
    .lnb{ display:none; }
    .sub_layout{ gap:0; }
    .sub_content{padding:0 20px; width: 100%;}
    .sub04_theme01 .sub04_card_list{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width:1024px){
    .sub01_desc,
    .sub01_row,
    .rolo_card_box,
    .sub04_block01 .dot_list,
    .sub04_theme01 .sub04_card_list,
    .block_tit,
    .sub06_role_list,
    .proced_box,
    .tbl_scroll,
    .proced_grey{padding-left:0; }
    .sub01_theme01 .sub01_desc br{display: none;}
    .sub01_theme03 .center_use_wrap{ grid-template-columns: 1fr; gap: 18px; margin-top: 22px; }
    .sub01_theme03 .center_use_img{ min-height: 260px; max-height: 380px; }
    .sub01_theme03 .center_use_img img{ height: 100%; }
    .sub01_theme03 .center_use_card_list{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
    .sub01_theme03 .center_use_card_list .center_use_card.is_full{ grid-column: 1 / -1; }
    .sub01_theme03 .center_use_icon{ width: 72px; height: 72px; flex-basis: 72px; }
    .sub01_theme03 .center_use_icon img{ max-width: 38px; max-height: 38px; }
    .sub01_theme03 .center_use_card{ padding: 18px 18px; gap: 14px; }
    .sub02_zone04 .agency_item{ padding: 28px 24px; }
    .sub03_block01 .sub01_desc br,
    .sub04_block01 .sub01_desc br{display:none;}
    .rolo_card_list{ grid-template-columns: repeat(2, 1fr); }
    .sub05_card_box{ padding-left: 0; }
    .sub05_card_list{ grid-template-columns: repeat(2, 1fr); }
    .sub05_card_role{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 18px; padding-left: 0; }
    .sub05_step_item:not(:last-child)::after{ top: auto; right: auto; left: 50%; bottom: -18px; transform: translateX(-50%) rotate(90deg); width: 26px; height: 12px; opacity: 0.85; }
    .sub05_step_item::after{ display: none; }
}
@media (max-width: 768px){
    .com_section_tit{ font-size: 2.0rem; }
    .sub_visual{ height: clamp(170px, 32vw, 230px); background-size: cover; background-repeat: no-repeat; background-position: center 78%; }
    .sub01_desc{ font-size: 1.55rem; }
    .sub02_theme04 .agency_item{padding:15px;}
    .sub02_theme04 .agency_link_row{gap:6px;}
    .sub01_theme03 .center_use_img{ min-height: 240px; }
    .sub01_theme03 .center_use_img_txt{ left: 18px; bottom: 18px; font-size: 1.7rem; }
    .sub01_theme03 .center_use_card_list{ grid-template-columns: 1fr; gap: 12px; }
    .sub01_theme03 .center_use_card_list .center_use_card.is_full{ grid-column: auto; }
    .sub01_theme03 .center_use_icon{ width: 64px; height: 64px; flex-basis: 64px; }
    .sub01_theme03 .center_use_icon img{ max-width: 34px; max-height: 34px; }
    .sub01_theme03 .center_use_tit{ font-size: 1.6rem; }
    .sub01_theme03 .center_use_desc{ font-size: 1.45rem; word-break: keep-all; }
    .sub02_zone04 .agency_grid{ grid-template-columns: 1fr;}
    .sub02_zone04 .agency_item:nth-child(odd){border-right: 0;}
    .sub02_zone04 .agency_item:nth-last-child(-n+2){ border-bottom: 1px dashed #c7c7c7;}
    .sub04_theme01 .sub04_card_list{ padding-left: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    .sub04_theme01 .sub04_card_list02{ padding-left: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    .sub04_theme01 .sub04_card{ padding: 18px 16px 18px; }
    .sub04_theme01 .sub04_card_icon{ width: 76px; height: 76px; margin-bottom: 10px; }
    .sub04_theme01 .sub04_quote{ gap: 0; padding: 12px 0; }
    .sub04_theme01 .sub04_quote_box{ padding: 0 10px; max-width: none; }
    .sub04_theme01 .sub04_quote_main{ font-size: 1.5rem; }
    .sub04_theme01 .sub04_quote_sub{ font-size: 1.32rem; }
    .sub04_theme01 .sub04_quote_mark{margin-top: 0;}
    .rolo_card{ min-height: 160px; padding: 20px 16px 18px; }
    .rolo_card_icon{ width: 60px; height: 60px; }
    .sub05_card{ min-height: 280px; padding: 22px 16px 20px; }
    .sub05_card_icon{ width: 86px; height: 86px; margin-bottom: 12px; }
    .sub05_card_role{ grid-template-columns: 1fr; gap: 50px; }
    .sub05_step_item:not(:last-child)::after{ display: block; bottom: -33px; transform: translateX(-50%) rotate(90deg); width: 48px; height: 13px; }
    .sub05_step_card{ min-height: 132px; }
    .sub05_step_icon{ height: 86px; }
    .sub05_step_icon img{ width: 50px; height: 50px; }
}
@media (max-width:640px){
    .proced_grey_item{ flex-direction: column; gap: 10px; padding: 16px 16px; }
    .proced_grey_tit{ flex: none; }
}
@media (max-width: 520px){
    .sub_visual{ height: clamp(160px, 38vw, 220px); background-position: center 30%; }
    .sub_visual--community01{ background-position: 78% 28%; }
    .sub_visual--community02{ background-position: 78% 28%; }
    .sub_visual--community03{ background-position: 78% 28%; }
    .sub_visual--community04{ background-position: 78% 28%; }
    .sub_visual--community05{ background-position: 78% 28%; }
    .sub_visual--community06{ background-position: 78% 28%; }
    .sub01_row{ flex-direction: column; gap: 10px; }
    .sub01_badge{flex: inherit;}
    .sub01_theme03 .center_use_wrap{ gap: 14px; }
    .sub01_theme03 .center_use_img{ min-height: 220px; }
    .sub01_theme03 .center_use_img_txt{ font-size: 1.6rem; line-height: 1.35; }
    .sub01_theme03 .center_use_card{ padding: 16px 16px; gap: 12px; }
    .sub01_theme03 .center_use_icon{ width: 56px; height: 56px; flex-basis: 56px; }
    .sub01_theme03 .center_use_icon img{ max-width: 30px; max-height: 30px; }
    .sub02_theme04 .agency_grid{grid-template-columns: 1fr;}
    .sub02_theme04 .agency_item:nth-child(odd){border-right: 0;}
    .sub02_theme04 .agency_item:nth-of-type(5){border-bottom: 1px dashed #c7c7c7;}
    .sub02_zone04 .agency_tit{ font-size: 1.7rem; }
    .sub02_zone04 .agency_desc{ font-size: 1.45rem; }
    .sub04_theme01 .sub04_card_list{ grid-template-columns: 1fr; }
    .rolo_card_list{ grid-template-columns: 1fr; }
    .rolo_card{ min-height: auto; padding: 18px 16px; }
    .sub05_card_list{ grid-template-columns: 1fr; }
    .sub05_card{ min-height: auto; }
}
@media (max-width:450px){
    .sub_page_top{display: block;}
    .font_ctrl{margin-top: 20px;}
}