/* ==========================================================================
   freee-clone / overrides.css
   在 base.css（源站样式子集）之上，只做三件事：
     1. 把源站站点绝对路径的背景图/图标改指向本地占位资源
     2. 实现轮播所需的机制样式（源站由 swiper.js 注入）
     3. 补字体与少量可见性修正
   ========================================================================== */

/* ---------- 1. 字体 ---------- */
body, .fr-3ezzk7z2_container {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

/* ---------- 2. 背景图 / 伪元素图标 -> 本地占位 ---------- */
.fr-3ezzk7z2_houjin { background-image: url(../assets/placeholders/houjin_bg_01.png); }
.fr-3ezzk7z2_kojin  { background-image: url(../assets/placeholders/kojin_bg_01.png); }
.fr-3ezzk7z2_kv     { background-image: url(../assets/placeholders/kv_bg_01.png); }
.swiper-slide.kvslide1 { background-image: url(../assets/placeholders/kvslide1.png); }
.swiper-slide.kvslide3 { background-image: url(../assets/placeholders/kvslide3.png); }

@media screen and (max-width:767px) {
  .fr-3ezzk7z2_kojin { background-image: url(../assets/placeholders/kojin_bg_01_sp.png); }
  .fr-3ezzk7z2_kv    { background-image: none; }
}

.fr-3ezzk7z2_houjin_item_link > a::after { background-image: url(../assets/placeholders/houjin_arw_01.svg); }
.fr-3ezzk7z2_kojin_button::after         { background-image: url(../assets/placeholders/kojin_arw_01.svg); }
.fr-3ezzk7z2_kojin_button.is-border::after { background-image: url(../assets/placeholders/kojin_arw_02.svg); }
.productMenuButtonPC_chevron--down  { }
.productMenuButtonPC_chevron--up    { }

/* 通用箭头/手风琴图标（源站走 /_background-images/ 与 /assets/img/） */
.c-link-underline::after,
.g-footerNav_listItemLink::after { background-image: none; }

/* ---------- 3. 轮播机制（源站由 swiper.js 注入，这里手工实现） ---------- */
.kv-carousel { overflow: hidden; }
.kv-carousel .swiper-wrapper {
  display: flex;
  transition: transform .45s cubic-bezier(.22,.61,.36,1);
  will-change: transform;
}
.kv-carousel .swiper-slide { flex: 0 0 1068px; width: 1068px; }

.kv-swiper-pagination { display: flex; justify-content: center; align-items: center; gap: 8px; }
.kv-swiper-pagination .swiper-pagination-bullet {
  display: block; width: 10px; height: 10px; border-radius: 50%;
  background-color: #dce8ff; cursor: pointer; padding: 0;
}
.kv-swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active { background-color: #2864f0 !important; }

.kv-swiper-button-group { display: block; }
.kv-swiper-button-group.u-display-none { display: none; }
.c-carousel_arrow {
  position: absolute; top: 0; height: 300px; width: 40px; margin: 0;
  background: #ebf3ff99; z-index: 1; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
}
.c-carousel_arrow-prev { left: 0; border-radius: 8px 0 0 8px; }
.c-carousel_arrow-next { right: 0; border-radius: 0 8px 8px 0; }
.c-carousel_arrow::before {
  content: ""; width: 40px; height: 40px; background-repeat: no-repeat;
  background-position: center; background-size: 20px 20px;
}
.c-carousel_arrow-prev::before { background-image: url(../assets/placeholders/ic_chevron_left.svg); }
.c-carousel_arrow-next::before { background-image: url(../assets/placeholders/ic_chevron_right.svg); }
.c-carousel_arrow::after { display: none; }

.personal-business-topics__kv-slider__control { cursor: pointer; }

/* ---------- 4. 页头菜单显隐（源站由 React 控制） ---------- */
.g-headerNav_listItem { position: relative; }
.productMenu {
  position: absolute; top: 100%; left: 0;
  background: #fff; box-shadow: 0 2px 4px rgba(70,67,67,.251);
  min-width: 620px; z-index: 20;
  display: none;
}
.productMenu.is-open { display: block; }
.productMenu_head { position: relative; }
.productMenu_focus { }
.topLevelHeaderLogin_loginMenu {
  position: absolute; top: 100%; right: 0; background: #fff;
  box-shadow: 0 2px 4px rgba(70,67,67,.251); width: 380px; z-index: 20; display: none;
}
.topLevelHeaderLogin_loginMenu.is-open { display: block; }
.topLevelHeaderLogin-focus-trap { position: relative; }

.productMenuButtonPC_chevron--up { display: none; }
.productMenuButtonPC[aria-expanded="true"] .productMenuButtonPC_chevron--down { display: none; }
.productMenuButtonPC[aria-expanded="true"] .productMenuButtonPC_chevron--up { display: inline-block; }

/* ---------- 5. 可见性修正 ---------- */
.lazy_image { opacity: 1 !important; }
.lazy_image[data-lazy] { opacity: 1 !important; }
img { max-width: 100%; height: auto; }
.swiper-slide > .kv_wrap > .show-signup-modal img { width: 100%; }

/* 免责说明（自有追加，非源站内容） */
.clone-notice {
  background: #f7f5f5; color: #8c8989; font-size: 11px; line-height: 1.9;
  padding: 14px 32px; text-align: center; border-top: 1px solid #e9e7e7;
}
.clone-notice a { color: #2864f0; }

/* ---------- 6. 窄桌面下源站 header 的 min-width:1288px 会导致横向溢出，裁掉 ---------- */
html { overflow-x: hidden; }

/* ---------- 7. base.css 里走站点绝对路径的图标 -> 本地占位 ---------- */
/* /assets/img/icons/ic_accordion_open.svg */
.c-localNav_content .l-tile_item [data-js-accordion-nest-trigger]:before {  background-image:url(../assets/placeholders/ic_accordion_open.svg);background-repeat:no-repeat;background-size:100%;content:"";display:inline-block;height:1.5em;position:absolute;right:28px;vertical-align:middle;width:1.5em  }
.c-categoryNav_content .l-tile_item [data-js-accordion-nest-trigger]:before {  background-image:url(../assets/placeholders/ic_accordion_open.svg);background-repeat:no-repeat;background-size:100%;content:"";display:inline-block;height:1.5em;position:absolute;right:28px;vertical-align:middle;width:1.5em  }
/* /assets/img/icons/primary/ic_accordion_close.svg */
.c-localNav_content .l-tile_item [data-js-accordion-nest-trigger].c-accordion-open:before {  background-image:url(../assets/placeholders/ic_accordion_close.svg)  }
.c-categoryNav_content .l-tile_item [data-js-accordion-nest-trigger].c-accordion-open:before {  background-image:url(../assets/placeholders/ic_accordion_close.svg)  }
/* /_background-images/ic_chevron_left_grey.svg */
.swiper-button-prev.swiper-button-disabled:before {  background-image:url(../assets/placeholders/ic_chevron_left_grey.svg)  }
/* /_background-images/ic_chevron_left.svg */
.swiper-button-prev:before {  background-image:url(../assets/placeholders/ic_chevron_left.svg)  }
/* /_background-images/ic_chevron_right.svg */
.swiper-button-next:before {  background-image:url(../assets/placeholders/ic_chevron_right.svg)  }
/* /_background-images/ic_chevron_right_grey.svg */
.swiper-button-next.swiper-button-disabled:before {  background-image:url(../assets/placeholders/ic_chevron_right_grey.svg)  }
/* /accounting/small-medium/plan_icon_prev.svg */
.accounting-smb__plan__pager__wrap .swiper-button-prev {  background-image:url(../assets/placeholders/plan_icon_prev.svg);left:-48px!important  }
/* /accounting/small-medium/plan_icon_next.svg */
.accounting-smb__plan__pager__wrap .swiper-button-next {  background-image:url(../assets/placeholders/plan_icon_next.svg);right:-48px!important  }
/* /test/kv_icon_circle.svg */
.kv-label:before { content: url(../assets/placeholders/kv_icon_circle.svg); padding: 0 4px; }

/* ---------- 8. 移动端页头菜单：源站由 JS 切 class 控制，这里补上默认收起 ---------- */
@media screen and (max-width:767px) {
  .g-headerMenu { display: none; }
  .g-headerMenu.is-open { display: block; }
  .g-headerMenu.is-open .g-headerMenu_inner { position: absolute; left: 0; right: 0; top: 60px; }
  .g-headerMenu.is-open .g-headerNav_list { display: block; }
  .g-headerMenu.is-open .g-headerNav_listItem { border-top: 1px solid #e1dcdc; }
  .g-headerMenu.is-open .g-headerNav_listItemLink { display: block; padding: 16px 32px; }
  .g-headerMenu.is-open .productMenu { position: static; display: none; min-width: 0; box-shadow: none; }
  .g-headerMenu.is-open .g-headerNav_listItem.is-open .productMenu { display: block; }
  .g-headerMenu.is-open .productMenuButtonPC { display: flex; width: 100%; justify-content: space-between; }
  .g-headerMenu.is-open .u-display-only-lg { display: none; }
  .toplevelHeader_humburger .is-open { display: none; }
  .toplevelHeader_humburger[aria-expanded="true"] .is-open { display: block; }
  .toplevelHeader_humburger[aria-expanded="true"] .is-close { display: none; }
}

/* ---------- 9. 「課題からさがす」图标：原站实测渲染为 138×119 / 119×138 / 120×101 / 138×101，区块高 521px。
     源站 CSS 的 width:90px 被后续规则覆盖成 100%，会把图标撑到 218px 宽、区块长到 635px。固定成 138 方框 + contain。 ---------- */
.fr-3ezzk7z2_solution_bottom_item_image > img {
  width: 138px; height: 138px; max-width: none; object-fit: contain;
}

/* ---------- 11. 页脚 App 徽章：原站渲染高 51px（App 条总高 75px），占位图 60px 会多撑 8px ---------- */
.g-footerApp_button img { height: 51px; width: auto; }

/* ---------- 10. 移动端页脚手风琴：展开态 ---------- */
@media screen and (max-width:767px) {
  .g-footerNav [data-js-accordion-content].c-accordion-open { display: block; }
  .g-footerNavSect_inner.c-accordion-open { display: block; }
}


/* ---------- 12. 同名不同色的箭头：原站是「同文件名、两个不同 hash」的两个文件
      （c44753=白 给蓝按钮用 / e16cd06=蓝 给白底链接用），下载时后一个会覆盖前一个。
      这里按上下文用 content:url() 指定正确的那一个。 ---------- */
.c-btn-primary img.i-label-right { content: url(../assets/placeholders/ic_chevron_right_white.svg); }
.c-btn.u-tc-primary-imp img.i-label-right { content: url(../assets/placeholders/ic_chevron_right_blue.svg); }
.c-link img.i-label-right { content: url(../assets/placeholders/ic_chevron_right_half.svg); }
.g-footerNav img.i-label-right,
.g-footerSubNav img.i-label-right { content: url(../assets/placeholders/ic_chevron_right_half_white.svg); }
