@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
.article h2,
.related-entry-heading,
.comment-title,
.article h2:before,
.article h2:after,
.related-entry-heading:before,
.comment-title:before, 
.related-entry-heading:after, 
.comment-title:after {
  border: none;
}

.btn{
  background-color: #fb8600;
  border: 3px;
  padding: 18px 50px;
}

.btn:hover{
  background-color: #d15a26;
  box-shadow: none;
}

.tel-btn{
  background-color: #ffffff;
  color:#fb8600;
  padding: 12px 50px;
  border: 3px solid;
  border-radius: 10px;
  text-decoration: none;
}

.yoyaku{
  padding: 6px 30px;
}

.yoyaku a {
  display: block;
  text-align: center;
  margin: 10px 0; /* 上下のマージンを適用して、リンク間にスペースを作る */
}
.mini{
  padding: 12px 40px;
}

/* 店舗の基本情報セクション */
.shop-info-header {
    background-color: #f9f9f9;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 25px;
    border-left: 5px solid #ff8c42;
}

.shop-basic-info {
    margin-bottom: 10px;
    font-size: 15px;
    line-height: 1.6;
}

.shop-basic-info strong {
    font-weight: 600;
    color: #444;
}

/* 警告テキスト */
.shop-warning {
    color: #e74c3c;
    font-size: 13px;
    margin: 10px 0;
}

/* 地図表示エリア */
.shop-map {
    margin: 25px 0;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
}

.area-search {
  margin: 40px 0;
}

.area-search h2 {
  font-size: 24px;
  margin-bottom: 20px;
  font-weight: bold;
}

.area-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 3列にする */
  gap: 15px;
  margin-bottom: 30px;
}

.area-card {
  border-radius: 8px;
  overflow: hidden;
  text-decoration: none;
  background: #fff;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  display: block;
  color: #000;
  transition: transform 0.2s;
}

.area-card:hover {
  transform: scale(1.02);
}

.area-thumb {
  aspect-ratio: 3/2; /* 比率を固定（可変画像に対応） */
  background-size: cover;
  background-position: center;
  width: 100%;
}

.area-info {
  padding: 10px 12px;
}

.area-info strong {
  font-size: 16px;
  display: block;
  margin-bottom: 3px;
}

.area-info span {
  font-size: 13px;
  color: #666;
}


.area-group {
  margin-bottom: 10px;
  font-size: 15px;
}

.area-group strong {
  margin-right: 8px;
  display: inline-block;
  font-weight: bold;
}

.area-group a {
  margin-right: 8px;
  color: #0073aa;
  text-decoration: none;
}

.area-group a:hover {
  text-decoration: underline;
}

/* 一覧ページ */
.eye-catch-wrap {
  width: 100%;
  aspect-ratio: 16 / 5; /* 横長比率固定 */
  overflow: hidden;
  margin-bottom: 20px;
  position: relative; /* 必須！ */
}

.eye-catch {
  width: 100%;
  height: 100%;
  margin: 0;
  position: relative; /* 必須！ */
}

.eye-catch img.eye-catch-image.wp-category-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
}

.category-count {
  margin: 20px 0;
  font-size: 14px;
  color: #555;
}

.child-categories {
  margin: 30px 0;
}

.child-cat-grid {
  display: block; /* グリッドをやめて普通のブロックに戻す */
  margin: 10px 0;
  line-height: 1.8;
  font-size: 15px;
}

.child-cat-grid a {
  display: inline-block;
  margin-right: 12px; /* スペースっぽい隙間 */
  white-space: nowrap;
  text-decoration: none;
  color: #0073aa;
}

.child-cat-grid a:hover {
  text-decoration: underline;
}

.parent-back-link {
  margin: 10px 0 20px;
  font-size: 14px;
}

.parent-back-link a {
  color: #555;
  text-decoration: none;
}

.parent-back-link a:hover {
  text-decoration: underline;
}

/* ページネーション*/
.pagination {
  display: flex;
  flex-wrap: wrap; /* ← 必要なら nowrap にしてもOK */
  justify-content: center;
  gap: 6px;
  margin: 30px 0;
  font-size: 14px;
  line-height: 1;
}

/* 数字・ドット・矢印共通 */
.pagination .page-numbers {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 34px;
  height: 34px;
  padding: 0 8px;
  border: 1px solid #ccc;
  border-radius: 50%;
  color: #333;
  text-decoration: none;
  white-space: nowrap;
}

/* 現在ページ */
.pagination .current {
  background-color: #ffe082;
  border-color: #ffc107;
  font-weight: bold;
}

/* ドット（三点リーダ）
.pagination .dots {
  border: none;
  background: none;
  pointer-events: none;
  color: #999;
}
 */

/* ホバー時 */
.pagination .page-numbers:hover:not(.current):not(.dots) {
  background: #f0f0f0;
  text-decoration: underline;
}

/* 店舗情報カセット */
.entry-card-tags {
  margin-top: 4px;
}

.entry-card-tags .tag {
  margin-right: 6px;
  display: inline-block;
}

.entry-card-tags .tag a {
  text-decoration: none;
  color: #0073aa;
}

.entry-card-tags .tag a:hover {
  text-decoration: underline;
}

.tag {
  display: inline-block;
  padding: 2px 8px;
  margin: 2px 4px 0 0;
  font-size: 13px;
  color: #555;
  background-color: #f0f0f0;
  border: 1px solid #ccc;
  border-radius: 4px; /* ←角丸がイヤなら0にしてOK */
  line-height: 1.4;
}


/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}


/* Hitokoto design 2026-10-02: reversible presentation layer */
body #container{background:#fffdf8;background-image:none}body #header-container,body #header-container-in{background:#fff;border-bottom:1px solid #e8e4dc}body .logo-text,body .site-name-text,body .entry-title,body .entry-card-title,body .article h2,body .article h3,body .widget-title,body .footer-title{font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}body .logo-text{font-size:26px;color:#344f45}body .logo-text:before,body .logo-text:after{content:none}body .list,body.single .main,body.page .main{box-shadow:none}body .widget-sidebar:before,body .main:before,body .main:after{content:none}body #list{padding:0}body #list.list{grid-auto-flow:row dense}body .sidebar .widget{background:#fff;border:1px solid #e7e5df;border-radius:14px;padding:18px}body .sidebar .widget:before,body .sidebar .widget:after{content:none}body .sidebar .widget-title{font-size:17px;background:none;padding:0;color:#344f45}body .wp-block-search__button{background:#d94d38;color:#fff;border:0;border-radius:10px}body .child-cat-grid a{white-space:normal}
body{background:#fffdf8;background-image:none;color:#323a36;font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}
.header-container,.header-container-in{background:#fff;border-bottom:1px solid #e8e4dc}
.header-in{padding:8px 20px}.site-name-text{font-size:26px;font-weight:800;letter-spacing:-1px;color:#344f45}
.content{margin-top:24px}.main{background:#fffdf8;border:0;border-radius:18px;padding:28px}.sidebar{background:#fffdf8;border:0}.sidebar h3{background:#eef1eb;border:0;border-radius:12px;color:#344f45}
.hg-hero{background:#f5f1e8;padding:32px;border-radius:20px;margin:0 0 30px}.hg-eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;color:#638376}.hg-hero h1{font-size:clamp(28px,4vw,42px);line-height:1.45;margin:12px 0;border:0;background:none;font-weight:800;letter-spacing:-1px}.hg-hero h1 span{color:#d94d38}.hg-hero p{font-size:14px;color:#79614e;margin:12px 0 22px}.hg-search{display:flex;gap:8px;background:#fff;border:1px solid #dedbd3;padding:7px;border-radius:14px;box-shadow:0 4px 18px #313a3610}.hg-search input[type=search]{min-width:0;width:auto;flex:1;border:0;background:none;font-size:16px;padding:10px}.hg-search button{background:#d94d38;color:#fff;border:0;border-radius:10px;padding:10px 20px;font-weight:700;white-space:nowrap}.hg-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.hg-chips a{background:#fff;color:#536a5d;text-decoration:none;font-size:13px;border:1px solid #dedbd3;border-radius:30px;padding:7px 16px}.hg-chips a:hover{background:#344f45;color:#fff}.hg-list-heading{font-size:23px;margin:28px 0 18px;color:#323a36}
.area-search{margin:26px 0}.area-search h2{background:none;border:0;padding:0;font-size:23px;color:#323a36}.area-grid{gap:14px}.area-card{border:1px solid #e5e4dc;border-radius:18px;box-shadow:none;color:#323a36}.area-card:hover{transform:translateY(-2px)}.area-thumb{aspect-ratio:16/10}.area-info{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap;padding:12px 14px}.area-info strong{margin:0}.area-info span{font-size:12px;color:#777e77}.area-text-links{background:#f5f4ed;border-radius:16px;padding:18px;font-size:13px}.area-group{font-size:13px;line-height:1.9}.area-group a,.child-cat-grid a{color:#426b57}.area-group strong{color:#344f45}
#list.list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}#list.list:before,#list.list:after{content:none}#list.list> :not(.entry-card-wrap){grid-column:1/-1}
#list .entry-card-wrap{display:flex;width:auto;margin:0;padding:0;background:#fff;border:1px solid #e7e5df;border-radius:18px;overflow:hidden;color:#323a36;text-decoration:none;min-width:0}#list .entry-card-wrap:hover{background:#fff;box-shadow:0 5px 18px #344f4510}
#list .entry-card{display:flex;flex-direction:column;width:100%;height:100%;margin:0;min-width:0}#list .entry-card:before,#list .entry-card:after{content:none}#list .entry-card-thumb{float:none;width:100%;margin:0;flex-shrink:0;height:140px;position:relative;background:#eae4d9;overflow:hidden}#list .entry-card-thumb img{width:100%;height:100%;object-fit:cover}#list .hg-no-photo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:100%;height:100%;padding:16px;color:#7e715d;text-align:center}#list .hg-no-photo strong{font-family:Georgia,serif;font-size:23px;font-weight:400;letter-spacing:3px}#list .hg-no-photo small{font-size:11px;letter-spacing:.5px}#list .cat-label{font-size:11px;border-radius:6px;background:#fffdf2e8;color:#536a5d;padding:3px 8px;margin:8px}
#list .entry-card-content{margin:0;padding:18px;display:flex;flex-direction:column;flex:1;min-width:0}#list .entry-card-title{font-size:17px;line-height:1.6;margin:0 0 10px;padding:0;background:none;border:0;font-weight:700;overflow-wrap:anywhere}#list .entry-card-snippet{font-size:13px;line-height:1.7;color:#6c756d;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:12px}#list .entry-card-tags{line-height:1.7;margin-bottom:12px}#list .entry-card-tags .tag{background:#f0f3ed;border:0;color:#587364!important;font-size:11px!important;border-radius:6px;margin:2px 4px 2px 0;padding:3px 7px}#list .entry-card-meta{position:static;margin:0 0 12px;font-size:12px;color:#6c756d}#list .hg-card-facts{font-size:12px;color:#6c756d;margin:0 0 12px}#list .hg-card-facts span{display:block}#list .hg-card-link{display:block;text-align:center;margin-top:auto;padding:10px 8px;border:1px solid #ead7cc;border-radius:10px;color:#a84935;background:#fff9f3;font-size:13px;font-weight:700}
.article .entry-title{font-size:clamp(24px,3vw,34px);line-height:1.5;color:#323a36}.shop-info-header{background:#eef1eb;border:1px solid #e1e7dd;padding:20px;border-radius:16px;margin:20px 0}.shop-basic-info{font-size:14px}.shop-warning{font-size:12px;color:#866050;line-height:1.8}.article #map1,.article #map2{border:1px solid #e1e4da;border-radius:16px;overflow:hidden;margin:20px 0}.article #map1{height:300px!important}.article #map2{height:250px!important}.yoyaku{padding:12px 0;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.yoyaku a{margin:0;flex:1;min-width:min(100%,220px)}.article .btn{background:#d94d38;color:#fff;padding:14px 20px;border:0;border-radius:12px;text-decoration:none;font-size:15px;line-height:1.6}.article .btn:hover{background:#b73f2d}.article .tel-btn{background:#fff;color:#426b57;border:1px solid #ccd9ce;border-radius:12px;padding:14px 20px;font-size:15px}.article h2{background:#eef1eb;color:#344f45;font-size:22px;border:0;border-radius:12px;padding:16px 18px;margin-top:32px}.article table{border:1px solid #e2e5da;border-collapse:separate;border-spacing:0;border-radius:14px;overflow:hidden;font-size:14px;width:100%}.article table th{background:#f2f3ec;color:#526557;min-width:100px;width:24%}.article table td{background:#fff;overflow-wrap:anywhere}.article table th,.article table td{border:0;border-bottom:1px solid #e7e9df;padding:14px 16px}.article table tr:last-child>*{border-bottom:0}.article table .btn{display:inline-block;text-align:center;max-width:100%}.breadcrumb{font-size:12px;color:#6c756d}.pagination .current{background:#344f45;color:#fff;border-color:#344f45}.pagination .page-numbers{border-radius:10px;border-color:#dddcd2}.footer{background:#eef1eb;color:#667366}.footer a{color:#426b57}
@media(max-width:834px){.main{padding:20px}.hg-hero{padding:25px}.area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.main{padding:16px 12px}.hg-hero{padding:22px 16px}.hg-search button{padding:10px 14px}.hg-hero p{font-size:13px}.area-info{padding:10px}.area-info strong{font-size:15px}.area-grid{gap:10px}.area-text-links{padding:14px}#list.list{grid-template-columns:1fr;gap:14px}#list .entry-card{display:grid;grid-template-columns:100px minmax(0,1fr)}#list .entry-card-thumb{height:100%;min-height:200px}#list .entry-card-content{padding:14px;min-height:220px}#list .hg-no-photo{padding:8px}#list .hg-no-photo strong{font-size:15px;letter-spacing:1px}#list .entry-card-title{font-size:15px}#list .entry-card-snippet{-webkit-line-clamp:2;font-size:12px}.article table th,.article table td{padding:12px 8px}.article table th{min-width:72px}.article #map1{height:240px!important}.article h2{font-size:19px}.article .yoyaku{flex-direction:column}.yoyaku a{width:100%;min-width:0}.article .entry-title{font-size:24px}}
@media(prefers-reduced-motion:reduce){.area-card{transition:none}.area-card:hover{transform:none}}
@media(max-width:480px){body #list.list{grid-template-columns:minmax(0,1fr)}body #list.list>*{min-width:0;max-width:100%}body #list .entry-card{grid-template-columns:100px minmax(0,1fr)}}
