@charset "UTF-8";
/* subpage-main
-------------------------------------*/
.top_main_img_area2 {
 background: #004e1e;
 height: clamp(100px, 36vw, 240px);
 display: grid;
 place-items: center;
}
.sub_title2 {
    font-size: clamp(16px, 9vw, 36px);
    color: #ffffff;
    letter-spacing: .2em;
    /* text-shadow: 2px 3px 3px rgb(254 254 254 / 76%); */
}
.top_main_img_area3 {
 background: url(../img/common/bg01.webp) no-repeat center/cover;
 height: clamp(100px, 36vw, 240px);
 display: grid;
 place-items: center;
}
.sub_title3 {
 font-size: clamp(16px, 9vw, 36px);
 color: #333;
 letter-spacing: .2em;
 text-shadow: 2px 3px 3px rgb(254 254 254 / 76%);
}
@media (max-width: 768px) {
 .sub_title2 {
  font-size: clamp(16px, 5vw, 20px);
  letter-spacing: .2em;
 }
 .sub_title3 {
  font-size: clamp(16px, 5vw, 20px);
  letter-spacing: .2em;
 }
}
/* 下層コンテンツ
-------------------------------------*/
.site_contents_wrap {
 max-width: 1000px;
 margin: 0 auto;
}
.none-main_contents2 {
 margin: 1.5em auto 3em;
 max-width: 1000px;
 padding: 1.5em 4em;
 text-align: justify;
}
.f_resume {
 /*margin-top: 3em;*/
 padding: 24px;
 background: #f7f7f7;
 font-size: 15px;
 line-height: 1.9;
}
.f_resume2 {
    margin-top: 20px;
    padding: 2% 5%;
    background: #fff59d;
    font-size: 15px;
    line-height: 2;
    border-radius: 10px;
}
.leading_wrap {
   /* margin-bottom: 6em;*/
    max-width: 720px;
    margin: 0 auto 6em;
}
 .subpage {
  padding: 2em 0;
 }
.width_s {
 max-width: 740px;
 margin: 0 auto;
}
.sub_h2 {
 display: flex;
 justify-content: center;
 align-items: center;
 margin-bottom: 2em;
}
.sub_h2 h2 {
 font-size: clamp(16px, 5.2vw, 28px);
 color: #333;
 position: relative;
 display: block;
 font-weight: bold;
 padding: 0;
 letter-spacing: .05em;
 line-height: 1.8;
 text-align: center;
 border-bottom: 2px solid #10833b;
}

@media (max-width: 768px) {
 .none-main_contents2 {
  margin: 0 auto 1.5em;
  width: 96%;
  padding: 0 0 2em;
 }
 .subpage {
  padding: 2em 0;
 }
 .leading_wrap {
  margin-bottom: 2em;
 }
.sub_h2 h2 {
    font-size: clamp(16px, 4.2vw, 28px);
}
.f_resume {
    /*margin-top: 2em;*/
  padding: 4%;
}
.f_resume2 {
  padding: 4%;
}
}
/* 下層背景色
-------------------------------------*/
.bg_blue {
 background-color: #d6f2fe;
}
.bg_yellow {
 background-color: #fffae1;
}
.bg_gray {
 background-color: #EFEFEF;
}
.bg_pink {
 background-color: #ef2864;
}

/* 余白
-------------------------------------*/
.mt4 {
  margin-top: 4em;
}
.mt2 {
  margin-top: 2em;
}
@media (max-width: 768px) {
.mt4 {
  margin-top: 2em;
} 
.mt2 {
  margin-top: 1.5em;
}
}
/* テキスト装飾
-------------------------------------*/
.txt_strong {
    font-weight: 600;
}
.txt_red {
    color: #FF5722;
}

/* 共通　step　流れシンプル
-------------------------------------*/

.stepes_unit li {
 display: flex;
 gap: 24px;
 margin-bottom: 32px;
}
.stepes_unit_nonf {
 gap: 0 !important;
 margin-bottom: 1em !important;
}
.stepes_unit_nonf h4 {
 padding: 0.5em;
 color: #494949;
 background: #e6fff0;
 border-left: solid 5px #004e1e;
 width: 100%;
}
.stepes_unit .text h3 {
 font-size: 18px;
 margin-bottom: 6px;
}
.stepes_unit .text p {
 font-size: 15px;
 line-height: 1.7;
}
.stepes_arrow {
 font-size: 2em;
 text-align: center;
 margin: -15px auto 0 !important;
 padding: 0 !important;
 line-height: 0 !important;
}
.stepes_unit img {
 width: 28%;
 height: auto;
}
.stepes_unit .text {
 width: 69%;
}
/*指定箇所解除*/
.non_flex {
    display: flex;
    flex-direction: column;
}
.stepes_unit .non_flex img {
    /*max-width: 715px;*/
    width: auto;
    margin: 0 auto;
}
.stepes_unit .non_flex .text {
    width: 100%;
}
/*複数画像*/
.img_few {
    display: flex;
    gap: 10px;
}
.img_few li {
    margin-bottom: 10px;
}
/* SP */
@media (max-width: 768px) {
 .stepes_unit li {
  flex-direction: column;
   align-items: center;
 }
.stepes_unit .text h3 {
    text-align: center;
}
 .stepes_unit img {
          width: 65%;
        margin: 0 auto;
 }
.stepes_unit .text {
 width: 95%;
}
/*指定箇所解除*/
.stepes_unit .non_flex img {
    width: 70%;
}
/*複数画像*/
  .img_few {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
}
.img_few li {
    margin-bottom: 10px;
}
.img_few li {
    margin-bottom: 10px;
    width: 30%;
}
.stepes_unit .non_flex .img_few img {
    width: auto;
}
}

/* ========================= ==========
   オーバーホールとは
========================= ========== */
.subpage.overhaul_p h3 {
 position: relative;
 font-size: 20px;
 margin-bottom: 12px;
 padding-left: 36px;
 padding-bottom: 6px;
 border-bottom: 1px dotted #10833b;
}
/* スパナアイコン（CSSのみ） */
.subpage.overhaul_p h3::before {
 content: "\f0ad"; /* fa-wrench */
 font-family: "Font Awesome 6 Free";
 font-weight: 900;
 position: absolute;
 left: 0;
 top: 2px;
 font-size: 18px;
 color: #10833b;
 ;
}
/* overhaul_flow */
.overhaul_flow ul {
 display: flex;
 flex-wrap: wrap;
 margin: 40px auto;
 list-style: none;
 justify-content: center;
 gap: 2em 3em;
}
.overhaul_flow li {
 width: 22.666%;
 text-align: center;
 padding: 20px 10px 15px;
 box-sizing: border-box;
 color: #fff;
 background: #10833b;
}
.overhaul_flow li img {
 max-width: 70px;
 margin-bottom: 10px;
}
.overhaul_flow li span {
 display: block;
 font-size: 14px;
 line-height: 1.4;
 padding-top: 5px;
}
/* SP：縦2 × 横3 */
@media (max-width: 768px) {
 .overhaul_flow ul {
  gap: 10px;
 }
 .overhaul_flow li {
  width: 30.333%;
  padding: 15px 6px;
 }
 .overhaul_flow li img {
  scale: .8;
 }
 .subpage.overhaul_p h3 {
  font-size: 18px;
  padding-bottom: 3px;
 }
}
/* overhaul_detail */
.overhaul_detail {
 max-width: 730px;
 margin: 60px auto 0;
}
.overhaul_dtl_in {
 display: flex;
 align-items: center;
 margin-bottom: 48px;
 gap: 20px;
}
.overhaul_dtl_txt {
 width: 70%;
}
.overhaul_dtl_in div img {
 max-width: 100%;
 height: auto;
}
/* 左：テキスト / 右：画像 */
/*.overhaul_dtl_in > div {
  width: 45%;
}*/
.overhaul_dtl_in p {
 font-size: 15px;
 line-height: 1.8;
}
/* SP：画像 → 見出し → テキスト */
@media (max-width: 768px) {
 .overhaul_dtl_in {
  flex-direction: column;
  gap: 16px;
 }
 .overhaul_dtl_txt {
  width: 95%;
 }
 .overhaul_dtl_img {
  text-align: center;
 }
}
/* about_maintenance */
.about_mente {
 display: flex;
 justify-content: center;
 align-items: center;
 gap: 2em;
}
.mente_txt {
 width: 70%;
}
@media (max-width: 768px) {
 .about_mente {
  flex-wrap: wrap;
  gap: 2em;
 }
 .mente_txt {
  width: 100%;
 }
}
/* SP */
@media (max-width: 768px) {}
/* ========================= ===================
   オーバーホールの流れ：機械式クオーツ・電池式
========================= =================== */
/* タブ */
.process_tab {
 max-width: 800px;
 margin: 0 auto;
}
.d-tab-btn-wrap {
 display: flex;
 justify-content: center;
 border-bottom: 2px solid #ddd;
 margin-bottom: 40px;
}
.d-tab-btn {
 padding: 14px 36px;
 font-weight: 600;
 cursor: pointer;
 color: #777;
 border-bottom: 3px solid transparent;
 transition: .3s;
 width: 50%;
 text-align: center;
}
.d-tab-btn.opend {
 background: #019733;
 color: #fff;
 font-weight: bold;
}
/* コンテンツ切替 */
.d-tab-content {
 display: none;
}
.d-tab-content.opend {
 display: block;
}
/* フロー */
.process_txt {
 padding-bottom: 1.5em;
 font-weight: 600;
}
@media (max-width: 768px) {
.d-tab-btn {
    padding: 14px 7px;
}
}
/* ========================= ===================
   料金表
========================= =================== */
.sub_section.p_foreign {
 margin-top: 4em;
}
.price_table {
 width: 100%;
 border-collapse: collapse;
 font-size: 14px;
}
.price_table th {
 background: #006633;
 color: #fff;
 padding: 10px;
 text-align: center;
 border-right: #fff 1px dotted;
}
.price_table td {
 border: 1px solid #ddd;
 padding: 5px 10px;
 text-align: right;
 line-height: 1.3;
}
.price_table td:first-child {
 text-align: left;
 font-weight: 600;
}
.price_table span {
 display: block;
 font-size: 12px;
 color: #777;
}
.price_note {
 margin-top: 10px;
 font-size: 13px;
 color: #555;
}
/* 50音見出し */
.price_table .kana td {
 background: #eef6f1;
 color: #006633;
 font-weight: 700;
 text-align: left;
 padding: 8px 12px;
}
/* 行数が多い前提 */
.price_table tbody tr:not(.kana):hover {
 background: #fafafa;
}
/* ROLEX / OMEGA */
.brand_price_cards {
 display: flex;
 flex-wrap: wrap;
 gap: 20px;
 margin: 4em auto;
}
.brand_card {
 flex: 1 1 260px; /* 最小260px、余白があれば広がる */
}
.brand_card h3 {
 color: #006633;
 font-size: 20px;
 margin-bottom: 10px;
}
.brand_card li {
 display: flex;
 justify-content: space-between;
 padding: 6px 0;
 border-bottom: 1px dashed #ccc;
}
.brand_card strong {
 color: #006633;
}
/* SP */
@media (max-width: 768px) {
 .price_table {
  font-size: 13px;
 }
}
/* クロック専用 */
.clock_table .cat td {
 background: #f3f7f5;
 color: #006633;
 font-weight: 700;
 text-align: left;
}
.clock_table .price {
 text-align: right;
 font-weight: 700;
 color: #006633;
}
.clock_table .notice td {
 background: #fff7f7;
 color: #b40000;
 font-size: 13px;
 line-height: 1.6;
}
/* SP対応 */
@media (max-width: 768px) {
 .clock_table th, .clock_table td {
  display: block;
  width: 100%;
 }
 .clock_table tr {
  display: block;
  margin-bottom: 10px;
 }
 .clock_table .cat td {
  border-top: 2px solid #006633;
 }
 .table_scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
 }
 /*.price_table {
  min-width: 720px; 
}*/
 .table_scroll::after {
  content: "← 横にスクロールできます →";
  display: block;
  text-align: center;
  font-size: 12px;
  color: #666;
  margin-top: 6px;
 }
}
/* ========================= ===================
  Q＆A よくある質問
========================= =================== */
section[id] {
 scroll-margin-top: 80px;
}
.f_section {
 padding: 8em 0;
}
@media (max-width: 768px) {
 .f_section {
  padding: 4em 0;
 }
}
.faq_sublead_wrap p {
 margin-bottom: 1em;
}
@media (max-width: 768px) {
 .faq_sublead_wrap p {
  margin-bottom: 1em;
 }
}
.left_ttl {
 font-size: clamp(19px, 3vw, 21px);
 color: #10833b;
 margin: 1em 0 0 0;
 display: flex;
 align-items: center;
 gap: 20px;
}
.left_ttl::before {
 content: "";
 background-color: #10833b;
 border-radius: 3px;
 width: 5px;
 height: 28px;
 flex: 0 0 5px;
}
/* 目次全体 */
.faq_toc {
 margin: 40px 0;
 padding: 15px 28px;
 background: #fafafa;
 border-left: 3px solid #c9a24d; /* ゴールド系アクセント */
}
.faq_toc .left_ttl {
 font-size: 18px;
 font-weight: 600;
 letter-spacing: 0.08em;
 margin-bottom: 16px;
 color: #333;
}
.faq_toc ol {
 margin: 0;
 padding-left: 0;
 list-style: none;
}
.faq_toc li {
 margin-bottom: 10px;
}
.faq_toc li:last-child {
 margin-bottom: 0;
}
.faq_toc a {
 display: block;
 padding: 1px 0;
 font-size: 15px;
 color: #333;
 text-decoration: none;
 border-bottom: 1px solid #e5e5e5;
 transition: color 0.2s ease, padding-left 0.2s ease;
}
.faq_toc a:hover {
 color: #c9a24d;
 padding-left: 6px;
}
.faq_toc li:last-child a {
 border-bottom: none;
}
/* スマホ微調整 */
@media screen and (max-width: 768px) {
 .faq_toc {
  padding: 20px;
 }
 .faq_toc a {
  font-size: 14px;
 }
}
/*動く仕組み*/
.faq_flex {
 display: flex;
 align-items: flex-start;
 gap: 1em;
 justify-content: center;
 margin: 0 auto;
 flex-wrap: wrap;
}
.faq_flex_img {
 text-align: center;
 margin: 5% auto 0;
}
@media (max-width: 768px) {}
/*よくある質問集*/
ul.faq__list {
 margin: 1em auto 0;
}
/*磁気の注意点*/
.magnet_caution__ttl {
 color: #FF5722;
 font-weight: 600;
 font-size: 1.1em;
 margin-top: .5em;
}
.waterproof_flex {
 display: flex;
 gap: 24px;
 align-items: flex-start;
}
.waterproof_flex__text {
 width: 70%;
}
.waterproof_flex__img {
 width: 20%;
}
.waterproof_flex__img img {
 width: 100%;
 height: auto;
}
@media (max-width: 768px) {
 .waterproof_flex {
  flex-direction: column;
 }
 .waterproof_flex__text {
  width: 100%;
 }
 .waterproof_flex__img {
  width: auto;
  text-align: center;
  margin: 0 auto;
 }
}
/* ========================= ===================
  概要　店舗案内　アクセス
========================= =================== */
.profile_flex {
 display: flex;
 justify-content: space-between;
 align-items: stretch;
 margin: 1em auto 4em;
}
.profile_img {
 width: 47%;
}
.profile_tbl {
 width: 50%;
 font-size: 14.5px;
}
@media (max-width: 768px) {
 .profile_flex {
  flex-direction: column;
 }
 .profile_img {
  width: 90%;
  text-align: center;
  margin: 0 auto 1em;
 }
 .profile_tbl {
  width: 100%;
  margin: 0 auto;
   font-size: 1em;
 }
.access_txt {
    text-align: center;
    padding-bottom: 1em;
}
}
/* ========================= ===================
   時計工具・設備
========================= =================== */

/*.kougu_section {
  max-width: 1000px;
  margin: 0 auto;
  padding: 40px 16px 0;
}*/

.kougu_ttl {
  display: none;
  /*font-size: 28px;
  font-weight: 700;
  color: #10833b;
  margin-bottom: 32px;
  padding-left: 12px;
  border-left: 4px solid #10833b;*/
}

.kougu_list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.kougu_item {
  display: flex;
  gap: 24px;
  padding: 28px 0;
  border-bottom: 1px solid #e5e5e5;
}

.kougu_img {
  flex: 0 0 260px;
  display: flex;
  gap: 12px;
}

.kougu_img img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 6px;
  border: 1px solid #ddd;
}

/* 画像複数対応 */
.kougu_img_multi {
  flex-wrap: wrap;
}

.kougu_img_multi img {
  width: calc(50% - 6px);
}

.kougu_body {
  flex: 1;
}

.kougu_name {
  font-size: 20px;
  font-weight: 700;
  color: #222;
  margin-bottom: 10px;
}

.kougu_name span {
  font-size: 14px;
  font-weight: 400;
  color: #666;
  margin-left: 4px;
}

.kougu_text {
  font-size: 15px;
  line-height: 1.8;
  color: #444;
}

/* SP */

@media screen and (max-width: 768px) {
  .kougu_item {
    flex-direction: column;
    gap: 16px;
  }

  .kougu_img {
    flex: none;
  width: 60%;
    margin: 0 auto;
  }

  .kougu_img img,
  .kougu_img_multi img {
    width: 100%;
  }

  .kougu_name {
    font-size: 18px;
    text-align: center;
  }

  .kougu_text {
    font-size: 16px;
  }
}

/* ========================= ===================
   ご依頼の流れ
========================= =================== */
.haisou_link{
    flex: 1;
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: .4rem;
    padding: 20px 0 30px;
  transition: .3s;
}
.haisou_link .haisou_btn {
    background: #004e1e;
    font-size: 1.7rem !important;
    border-radius: 5px;
}
.haisou_link p {
    font-weight: bold;
    box-sizing: border-box;
    width: 80%;
}
.haisou_link p a {
    color: #fff;
    display: block;
    padding: 10px;
}
.haisou_link .haisou_btn:hover{
    opacity: .7;
  transform: translateY(4px);
}
/* ========================= ===================
  特定商取引法に基づく表記
========================= =================== */
.tokutei tbody tr th {
    width: 35%;
}
@media (max-width: 768px) {
  
 } 

/* ========================= ===================
  修理実績
========================= =================== */
.jisseki_p {
  max-width: 1000px;
  margin: 0 auto;
  padding: 60px 20px;
}

.jisseki_head {
  margin-bottom: 50px;
}

.jisseki_head h2 {
  font-size: 26px;
  margin-bottom: 15px;
  letter-spacing: 0.05em;
}

.jisseki_head p {
  font-size: 15px;
  line-height: 1.8;
  color: #555;
}

/* 実績リンク */
.jisseki_list_top ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

.jisseki_list_top li a {
  display: block;
  padding: 30px 25px;
  border: 1px solid #ddd;
  background: #fff;
  text-decoration: none;
  transition: all 0.3s ease;
}

.jisseki_list_top li a:hover {
  border-color: #999;
  transform: translateY(-2px);
}

.jisseki_list_top .ttl_en {
  display: block;
  font-size: 14px;
  letter-spacing: 0.12em;
  color: #999;
  margin-bottom: 8px;
}

.jisseki_list_top .ttl_ja {
  display: block;
  font-size: 18px;
  font-weight: 600;
  color: #333;
}

/* SP */
@media screen and (max-width: 768px) {
  .jisseki_list_top ul {
    grid-template-columns: 1fr;
  }

  .jisseki_head h1 {
    font-size: 22px;
  }

  .jisseki_list_top li a {
    padding: 22px 18px;
  }
}
