@charset "UTF-8";
/* ==========================================================
   会社案内（/company/）スマホ表示の見やすさ調整（2026-10-12）
   既存の company.css の後に読み込む。767px 以下だけに効く。
   ========================================================== */
/* 電話番号のリンク（パソコンでも今までと同じ見た目） */
dl#table_outline ul.tel_fax li a, .wrap_tel_btn p.tel a { color: inherit; text-decoration: none; }

/* 店舗案内：主要駅のアクセス図。パソコンは図をクリックで拡大（大きな「拡大する」ボタンはやめる） */
#box_stations_map p.btn_zooming { display: none !important; }
#box_stations_map figure a { cursor: zoom-in; }
#box_stations_map::after { content: "図をクリックすると拡大します"; display: block; text-align: right; font-size: 1.2rem; color: #888; margin-top: 6px; }

@media (max-width: 767px) {

	/* ---------- ページ名（会社案内）：右上のロゴと重ならないように ---------- */
	#box_page_ttl #top_name a { font-size: 2.8rem; padding-right: 150px; box-sizing: border-box; width: 100%; white-space: nowrap; }
	#box_page_ttl #top_name a small.en, #top_name small.en { display: none !important; }

	/* ---------- 会社案内メニュー：横にはみ出して隠れていた5項目を、全部見えるように並べる ---------- */
	#box_sub_nav { padding-bottom: 20px; }
	#box_sub_nav .box_inner { overflow: visible; width: auto; }
	#box_sub_nav ul#sub_nav { display: grid; grid-template-columns: repeat(2, 1fr); gap: 6px; width: auto; padding: 0 5vw; box-sizing: border-box; transform: none; left: auto; }
	#box_sub_nav ul#sub_nav li { width: auto; margin: 0; font-size: 1.4rem; }
	#box_sub_nav ul#sub_nav li a { display: flex; align-items: center; justify-content: center; min-height: 46px; height: 100%; box-sizing: border-box; padding: 6px 8px; margin: 0 !important; font-size: 1.4rem; line-height: 1.35; text-align: center; border: 1px solid #cfe6f3; border-radius: 999px; background: #fff; white-space: normal; }
	#box_sub_nav ul#sub_nav li a br { display: none; }
	/* 4項目なので2列×2段にそろえる（以前は5項目目を横いっぱいにしていた）2026-10-15 */

	/* ---------- 本文：読みやすい文字の大きさと行間 ---------- */
	main .box_main p, main .box_main dd, main .box_main li { line-height: 1.85; }

	/* ---------- 会社概要の表：項目名を小さな見出しにして、内容を広く ---------- */
	dl#table_outline, dl#table_history { display: block; }
	dl#table_outline dt, dl#table_history dt { width: 100% !important; box-sizing: border-box; padding: 10px 14px 4px !important; font-size: 1.3rem; color: #35579e; background: #f9f8f2 !important; border-bottom: 0; }
	dl#table_outline dd, dl#table_history dd { width: 100% !important; box-sizing: border-box; padding: 2px 14px 14px !important; font-size: 1.5rem; background: #f9f8f2 !important; margin-bottom: 8px; border-radius: 0 0 8px 8px; }
	dl#table_outline dt { border-radius: 8px 8px 0 0; }
	dl#table_outline dd .tsujido, dl#table_outline dd .chigasaki { padding: 10px 0; }
	dl#table_outline dd h4 { font-size: 1.5rem; }
	dl#table_outline ul.tel_fax li { font-size: 2rem !important; line-height: 1.45; }
	dl#table_outline ul.tel_fax li a + a { margin-left: 0; }
	dl#table_outline ul.tel_fax li .sep { display: none; }
	dl#table_outline ul.tel_fax li .sep + a { display: block; padding-left: 2.1em; }
	dl#table_outline ul.tel_fax li a { color: inherit; text-decoration: none; display: inline-block; }
	dl#table_outline ul.tel_fax li span { font-size: .7em; margin-right: .2em; }
	dl#table_history dt { border-radius: 8px 8px 0 0; }

	/* ---------- オーナー様向け：イラストの横に文字が細く詰まらないように ---------- */
	img.float_right { float: none !important; display: block; width: 52% !important; max-width: 220px; height: auto; margin: 0 auto 16px !important; }
	dl.manage_works dd, dl.manage_flow dd { font-size: 1.45rem; line-height: 1.85; }
	.wrap_tel_btn p.tel a { color: inherit; text-decoration: none; }
	.wrap_tel_btn p small { font-size: 1.25rem; line-height: 1.6; }

	/* ---------- スタッフ一覧：写真を少し小さくして一覧しやすく ---------- */
	ul#staff_list > li > a figure { width: 110px !important; height: 110px !important; }
	ul#staff_list > li > a figure img { width: 100%; height: 100%; object-fit: cover; }
	ul#staff_list > li { height: auto !important; min-height: 0 !important; margin: 0 0 12px !important; }
	ul#staff_list > li > a { min-height: 120px; padding: 14px 34px 14px 140px !important; box-sizing: border-box; border: 1px solid #e3eef5; border-radius: 12px; background: #fff; position: relative; }
	ul#staff_list > li > a figure { top: 50% !important; left: 10px !important; transform: translateY(-50%); }
	ul#staff_list > li > a::after { content: ""; position: absolute; right: 14px; top: 50%; width: 9px; height: 9px; border-top: 2px solid #4ab6ea; border-right: 2px solid #4ab6ea; transform: translateY(-50%) rotate(45deg); }
	ul#staff_list > li > a p.name { margin-top: 0; }

	/* ---------- 海街ブログ（ページ下）：大きな丸い写真を横2列に ---------- */
	#box_sub_blog > ul { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding: 0 5vw; }
	#box_sub_blog > ul > li { width: auto !important; margin: 0 !important; }
	#box_sub_blog > ul > li figure { width: 100% !important; max-width: 150px; height: auto !important; aspect-ratio: 1 / 1; margin: 0 auto; }
	/* 写真は丸の中で1.52倍に拡大して表示（辻堂の写真は画像の上下と右に灰色の余白があり、そのままだと丸の中に灰色が出るため。PC表示と同じ拡大率）2026-10-13 */
	#box_sub_blog > ul > li figure img { inset: auto; top: -26%; left: -16%; width: 152%; height: 152%; max-width: none; max-height: none; margin: 0; object-fit: cover; }
	#box_sub_blog > ul > li h6 { font-size: 1.3rem; }

	/* ---------- 店舗案内：ページ内リンク（主要駅のアクセス・辻堂本店・茅ヶ崎店）を丸いボタンに ---------- */
	article.company_shops div.anchor_nav { margin: 4px 0 8px; }
	article.company_shops div.anchor_nav ul { border: 0 !important; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
	article.company_shops div.anchor_nav ul li { width: auto !important; border: 0 !important; margin: 0 !important; }
	article.company_shops div.anchor_nav ul li a { display: inline-flex !important; align-items: center; gap: .45em; padding: .6em 1.1em !important; border-radius: 999px; background: #eef7fc; border: 1px solid #cfe6f3; color: #35579e; font-size: 1.4rem !important; line-height: 1.3; letter-spacing: .02em; white-space: nowrap; }
	article.company_shops div.anchor_nav ul li a::before { content: "" !important; position: static !important; display: block; width: 6px !important; height: 6px !important; border: 0 !important; border-right: 2px solid #4ab6ea !important; border-bottom: 2px solid #4ab6ea !important; transform: rotate(45deg); margin: -3px 0 0 !important; background: none !important; }
	article.company_shops div.anchor_nav ul li a:hover, article.company_shops div.anchor_nav ul li a:active { background: #4ab6ea; border-color: #4ab6ea; color: #fff; }
	article.company_shops div.anchor_nav ul li a:hover::before, article.company_shops div.anchor_nav ul li a:active::before { border-color: #fff !important; }

	/* ---------- 店舗案内：主要駅のアクセス図は、横にスクロールして読める大きさで（拡大画面は小さいままだったため） ---------- */
	#box_stations_map figure { overflow-x: auto; -webkit-overflow-scrolling: touch; border: 1px solid #e3eef5; border-radius: 10px; background: #fff; padding: 10px 0; }
	#box_stations_map figure a { display: block; width: 720px; pointer-events: none; }
	#box_stations_map figure img { width: 720px !important; max-width: none !important; height: auto; }
	#box_stations_map::after { content: "← 横にスクロールして見られます →"; text-align: center; margin-top: 8px; }

	/* ---------- 店舗案内：SHOP DATA をカードにまとめる ---------- */
	article.company_shops .box_shop_data { background: #fff; border: 1px solid #e3eef5; border-radius: 14px; padding: 18px 16px 20px; box-sizing: border-box; }
	article.company_shops .box_shop_data .box_address_tel h5 { font-size: 1.8rem !important; }
	article.company_shops .box_shop_data .box_address_tel p { font-size: 1.35rem !important; line-height: 1.7; margin-top: 8px !important; }
	article.company_shops .box_shop_data ul.tel_fax { display: flex; flex-wrap: wrap; gap: 4px 16px; padding-top: 8px !important; }
	article.company_shops .box_shop_data ul.tel_fax li { font-size: 2rem !important; margin: 0 !important; line-height: 1.4; }
	article.company_shops .box_shop_data ul.tel_fax li:nth-child(2) { font-size: 1.5rem !important; color: #888 !important; align-self: flex-end; }
	article.company_shops .box_shop_data ul.tel_fax li span { font-size: .65em; margin-right: .15em; }
	article.company_shops .box_shop_data .gmap { height: 280px !important; margin-top: 16px !important; border-radius: 10px; overflow: hidden; }

	/* ---------- 店舗案内：ボタンを同じ幅・丸い形にそろえる（来店予約だけ塗り） ---------- */
	article.company_shops .box_shop_data ul.btns { display: flex !important; flex-direction: column; gap: 10px; padding-top: 18px !important; }
	article.company_shops .box_shop_data ul.btns li { width: 100% !important; margin: 0 !important; }
	article.company_shops .box_shop_data ul.btns li a { display: flex !important; align-items: center; justify-content: center; width: 100%; box-sizing: border-box; padding: .9em 1em !important; border-radius: 999px !important; font-size: 1.5rem !important; background: #fff !important; border: 2px solid currentColor; line-height: 1.3; }
	article.company_shops .box_shop_data ul.btns li.ed a { color: #3aa6dc !important; }
	article.company_shops .box_shop_data ul.btns li.tsujido a, article.company_shops .box_shop_data ul.btns li.chigasaki a { color: #3a9f74 !important; }
	article.company_shops .box_shop_data ul.btns li.rsv a { background: #ef8a8a !important; border-color: #ef8a8a; color: #fff !important; }
	article.company_shops .box_shop_data ul.btns li:not(.rsv) a span::before { background: none !important; width: 7px !important; height: 7px !important; border-top: 2px solid currentColor !important; border-right: 2px solid currentColor !important; transform: rotate(45deg) !important; display: inline-block !important; position: relative !important; top: -1px !important; left: auto !important; margin-right: .7em !important; vertical-align: middle; }
}
