.poc-blocks-content .wp-block-column{display:flow-root;}.poc-blocks-content .square-img img{max-width:100%;height:auto;opacity:1;visibility:visible;}.poc-blocks-content .square-img{opacity:1;visibility:visible;}
/* == archive-body == */
/* アーカイブ一覧の追加スタイル（任意）。
   基本の .indelist / .custom-pagination は css/base.css 側で定義済み。ここは上書き・微調整用。 */

/* == box-set01 == */
/* box-set01（タイトル+コメント+画像） */
.box-set01{display: flex;justify-content:space-between;align-items:center;float:left;clear:both;width:100%;}
.box-set01 > div{width:48%;}
.box-set01 > div:first-child{padding:2%;}
.box-set01 h4 {font-size:24px;font-weight:bold;border-bottom:solid 1px #000;float:left;clear:both;width:100%;padding:3% 4%;}
.box-set01 h4 span{padding:0 0 0 2%;}
.boxset-com{float:left;clear:both;width:100%;padding:5% 2%;}
@media screen and (max-width: 767px){
.box-set01{flex-wrap: wrap;}
.box-set01 > div{width:100%;}
}

/* == chrome-bar == */
/* 軸1 チャコ chrome-bar（PC 独立ヘッダーバー）＝★デザインのみ★。選択時のみインライン出力される。
   .site-chrome＝チャコ専用ハンドル。サイトのデザインに合わせて自由に編集する。
   ※位置・追従・sticky対策・ナビ内ロゴ挙動などの「ふるまい（機能）」は dtp/css/header-behavior.css が担当（ここには書かない）。 */
.site-chrome{width:100%;background:var(--navi,#ffffff);border-bottom:1px solid rgba(0,0,0,.08);}
.site-chrome__inner{max-width:var(--site-width,1200px);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 20px;box-sizing:border-box;}
.site-chrome__logo img{height:48px;width:auto;display:block;}
.site-chrome__right{display:flex;align-items:center;gap:20px;}
.site-chrome__tel{display:flex;flex-direction:column;line-height:1.2;text-align:right;}
.site-chrome__tel-lb{font-size:11px;color:var(--font-sub-c,#888);}
.site-chrome__tel-num{font-size:22px;font-weight:700;color:var(--font-color,#222);letter-spacing:.02em;}
.site-chrome__tel-etc{font-size:11px;color:var(--font-sub-c,#888);}
.site-chrome__contact{display:inline-block;padding:12px 22px;background:var(--main-c,#c8791f);color:#fff;border-radius:6px;font-weight:700;font-size:14px;white-space:nowrap;}
.site-chrome__contact:hover{opacity:.85;}

/* SP はこのPCチャコを隠し、sp-chrome-bar（有効時）を使う（＝このチャコデザインは PC 専用＝デザイン範疇） */
@media only screen and (max-width:768px){ .site-chrome{display:none;} }

/* == ec-img == */
/* ヘッダー ec-img（アイキャッチ画像）。section.css の共有 .ce-img をリネーム複製。
   外枠 .triangle は section.css（セクション共有）に残す。 */
.lay-ec-img{
	float:left;clear:both;width:100%;text-align:center;
	background-color:var(--bc-color);padding-top:0;
	background-repeat:no-repeat;background-position:center center;background-size:cover;
	position:relative;z-index:0;overflow:hidden;
}
.lay-ec-img:before{
	content:'';background:inherit;
	filter:blur(15px) brightness(70%);
	position:absolute;top:-15px;left:-15px;right:-15px;bottom:-15px;z-index:-1;
}

/* == gallery == */
/* キャプション付きスライド（caption）: 色はCSS変数（ブロックの色設定→inline styleで注入・空=継承） */
.gl-caption .title{color:var(--glcap-tit-c,inherit);}
.gl-caption .content{color:var(--glcap-com-c,inherit);}
/* caption: カード高さを揃える（スライドをflex縦積みにし、本文(body)が余りを埋める） */
.gl-caption .swiper-slide{height:auto;display:flex;flex-direction:column;}
.gl-caption .swiper-slide .body{flex:1 1 auto;}

/* == link-list == */
/* link-list */
.link-list{float:left;clear:both;width:100%;padding:2% 0;}
.link-list li{font-size:24px;font-weight:bold;border-bottom:solid 1px #000;float:left;clear:both;width:100%;}
.link-list li span{padding:0 0 0 2%;}
.link-list li a{float:left;clear:both;width:100%;padding:5% 4%;}
.link-list li a:hover{color:var(--sub-c);}

/* == margin-box == */
/* margin-box（スペーサー） */
.margin-box{float:left;clear:both;width:100%;}

/* == normal-box == */
/* esona normal-box（policy本文）: 旧style.css p-policy-main/page-com 系 逐語（url絶対化のみ） */
.p-policy-main{max-width: 800px;margin: 50px auto;}
.p-policy-main h2{margin: 48px 0 1em;color: #5f6ea4;font-size: 27px;font-weight: 600;line-height: 1.5;}
.p-policy-main h3{margin: 48px 0 1em;padding-left: 12px;border-left: 6px solid #b5bddc;color: #5f6ea4;font-size: 24px;font-weight: 600;line-height: 1.5;}
.p-policy-main h4{margin: 48px 0 1em;padding-bottom: 6px;border-bottom: 3px solid #dcdfed;color: #5f6ea4;font-size: 20px;font-weight: 600;line-height: 1.5;}
.p-policy-main p{margin-bottom: 1em;}
.p-policy-main p:last-child{margin-bottom: 0;}
.p-policy-main a{padding: 0 3px;color: #5f6ea4;text-decoration: underline;}
.p-policy-main a:visited{text-decoration: none;}
.p-policy-main a:hover{background: #808ec2;color: #ffffff;text-decoration: none;}
.p-policy-main a:active{background: #5b5fa7;color: #ffffff;}
.p-policy-main blockquote{position: relative;margin: 40px 0;padding: 20px 30px;background: #f7f7fb;}
.p-policy-main strong{color: #5b5fa7;}
.p-policy-main ul{margin-bottom: 1em;}
.p-policy-main ul li{margin-bottom: 1em;padding-left: 18px;background: url("/wp-content/themes/Works/assets/img/information/list.png") no-repeat left center;}
.p-policy-main ol{margin-bottom: 1em;counter-reset: ol_li;}
.p-policy-main ol li{margin-bottom: 1em;list-style: none;}
.p-policy-main ol li:before{/* 数を表示 */color: #808ec2;/* li の数を一つずつ増加 */content: counter(ol_li) ". ";counter-increment: ol_li;}
.p-policy-main table{width: 100%;border-top: 1px solid #dfdee5;border-collapse: collapse;}
.p-policy-main table th{padding: 10px 15px;border: 1px solid #dfdee5;background: #f7f8fb;}
.p-policy-main table td{padding: 10px 15px;border: 1px solid #dfdee5;background: #ffffff;}
.p-policy-main .scroll-table{margin: 20px 0;}
.p-policy-main .scroll-table th{white-space: nowrap;}
.p-policy-main .signature{margin: 20px 0;text-align: right;}
.p-policy-main .contact-us{max-width: 50%;padding: 14px;border: 1px solid #cccccc;}
@media only screen and (max-width:800px){.page-com{float:left;clear:both;width:100%;padding:2% 0 5%;margin: 10% 0;}}
.p-policy-main{float:left;clear:both;width:100%;padding:0 2%;}
/* ユーザー指示(2026-07-31): 本文は幅指定なし=フル幅。左右余白はサブセクション(白カード)のパディングで管理 */
.p-policy-main{max-width:none;margin:50px 0;padding:0;}

/* == pagination == */
/* pagination：ページ送り。
   実スタイルは css/base.css の .pagenavi-st / .custom-pagination / .page-numbers（全ページ共通・常時読込）。
   ここでは上マージンの微調整のみ（レイアウトとして単独配置した場合の余白）。 */
.pagenavi-st{margin-top:24px;}

/* == post-content == */
/* post-content（記事本文の差し込み口）：エディタのサンプル表示だけ薄い目印を出す（フロントには出ない）。
   ★ラベル文字はCSSの content に入れない（エディタではCSSが数値実体参照に変換され「&#35352;…」と文字化けする・2026-08-03 実測）。
     文字は PHP 側で出す。 */
.dtp-pc-sample > .dtp-pc-note{
	display:block; font-size:11px; color:#8b8f95; letter-spacing:.04em; margin:0 0 6px;
}

/* == post-gallery == */
/* esona: kit post-gallery のサイト置換CSS（copy-on-write＝このファイルがキット post-gallery.css を丸ごと差し替える）
   - list-cardタイプ（.pg-list）… 旧 .indelist デザインの逐語マッピング（shop News帯・home News帯）。「リスト」はキット既定のまま
   - list-thumbタイプ（.pg-lt）… キット基礎＋旧 .cat-list デザイン（カテゴリ一覧）の統合（rem→px換算） */

/* ===== list-card（日付｜カテゴリ｜タイトル・旧News帯カード柄） =====
   「リスト」タイプはキット既定（layout-template.css）のまま。カード柄はこのタイプ専用。 */
.pg-type-list-card .pg-list{clear:both;float:left;width:100%;padding:5% 10%;background:#ECEDE9;border-radius:40px;margin-bottom: 10%;}
.pg-type-list-card .pg-list-box{clear:both;float:left;width:100%;margin-bottom:0;}
.pg-type-list-card .pg-list-item{display: flex;align-items:center;flex-wrap:nowrap;justify-content:space-around;border-bottom:dashed 3px #FFF;clear:both;float:left;width:100%;padding:20px 0;font-size:inherit;}
.pg-type-list-card .pg-list-box .pg-list-item:last-child{border-bottom:none;}
.pg-type-list-card .pg-list-item > div:nth-child(1){width:15%;text-align: right;}
.pg-type-list-card .pg-list-item > div:nth-child(2){width:20%;}
.pg-type-list-card .pg-list-item > div:nth-child(3){width:50%;}
.pg-type-list-card .pg-list-cat a{font-size: 12px;padding: 1% 2%;margin:0 2%;width:auto;float:none;clear:none;}
.pg-type-list-card .pg-list-item a i{display:none;} /* 旧デザインは矢印アイコン無し */
.pg-empty{text-align: center;clear:both;float:left;width:100%;} /* 旧 .nocontent 逐語 */
@media only screen and (max-width:800px){.pg-type-list-card .pg-list{width:90%;padding:5% 5%;border-radius:15px;margin:10% 5%;}}
@media only screen and (max-width:800px){.pg-type-list-card .pg-list-item{flex-wrap:wrap;padding:20px 5%;}}
@media only screen and (max-width:800px){.pg-type-list-card .pg-list-item > div:nth-child(1){width:40%;text-align:left;}}
@media only screen and (max-width:800px){.pg-type-list-card .pg-list-item > div:nth-child(2){width:55%;}}
@media only screen and (max-width:800px){.pg-type-list-card .pg-list-item > div:nth-child(3){width:100%;margin-top:10px;}}

/* ===== list-thumb（サムネ＋タイトル＋日付/カテゴリ/タグ＋抜粋＋もっと見る）＝旧 .cat-list ===== */
.pg-type-list-thumb .pg-lt{clear:both;float:left;width:100%;padding:40px 15px;margin:0;list-style:none;}
.pg-type-list-thumb .pg-lt-item{clear:both;float:left;width:100%;margin:0 0 10%;list-style:none;}
.pg-type-list-thumb .pg-lt-thumb{width:15%;float:left;}
.pg-type-list-thumb .pg-lt-thumb img{width:100%;height:auto;display:block;}
.pg-type-list-thumb .pg-lt-body{width:85%;float:left;padding:0 2%;box-sizing:border-box;}
.pg-type-list-thumb .pg-lt-tit a{font-size:21px;border-bottom:1px solid var(--main-c);margin-bottom:8px;width:100%;clear:both;float:left;}
.pg-type-list-thumb .pg-lt-data{font-size:12px;padding:0;clear:both;float:left;width:100%;}
.pg-type-list-thumb .pg-lt-data span{float:left;padding:0 2% 0 0;}
.pg-type-list-thumb .pg-lt-day{float:left;width:25%;font-size:14px;}
.pg-type-list-thumb .pg-lt-cat{float:left;width:75%;margin:0 0 10px;}
.pg-type-list-thumb .pg-lt-cat a{padding:1% 5%;margin:0 2%;font-size:14px;white-space:nowrap;}
.pg-type-list-thumb .pg-lt-tag{float:left;clear:both;width:100%;padding:0;margin:0;line-height:110%;}
.pg-type-list-thumb .pg-lt-tag a{font-size:14px;opacity:0.7;padding:0;margin:0;}
.pg-type-list-thumb .pg-lt-tag a:hover{opacity:1;color:#877757;}
.pg-type-list-thumb .pg-lt-tag a::before{content:"#";}
.pg-type-list-thumb .pg-lt-com{margin:2% 0;clear:both;float:left;width:100%;}
/* もっと見る＝旧 .more-txt: 右寄せ30%・素の画像リンク */
.pg-type-list-thumb .pg-lt-more{float:right;clear:both;width:30%;padding:0;text-align:right;}
.pg-type-list-thumb .pg-lt-more a{background:none;padding:0;border-radius:0;}
.pg-type-list-thumb .pg-lt-more img{width:auto;max-width:100%;vertical-align:middle;}
@media only screen and (max-width:800px){
.pg-type-list-thumb .pg-lt{display:flex;justify-content:space-evenly;flex-direction:row;flex-wrap:wrap;padding:5% 0;}
.pg-type-list-thumb .pg-lt-item{width:48%;clear:none;float:none;}
.pg-type-list-thumb .pg-lt-thumb,.pg-type-list-thumb .pg-lt-body{width:100%;}
.pg-type-list-thumb .pg-lt-day{float:left;width:60%;}
.pg-type-list-thumb .pg-lt-cat{float:left;width:35%;}
.pg-type-list-thumb .pg-lt-com{line-height:125%;font-size:14px;margin-bottom:20px;}
.pg-type-list-thumb .pg-lt-more{display:none;}
}

/* == read-more-common-image == */
/* read-more-common-image：共有画像（テーマ設定 rm-common-img）。配置は rm_align（右／中央／左・既定 右）。編集はレイアウト管理。 */
.rm-common-image{clear:both;margin-top:24px;}
.rm-common-image__link{display:inline-block;line-height:0;}
.rm-common-image__link img{width:150px;max-width:100%;height:auto;}
.rm-common-image--right{text-align:right;}
.rm-common-image--center{text-align:center;}
.rm-common-image--left{text-align:left;}

/* == read-more-default == */
/* read-more-default：テキストリンク（テーマ色 --main-c / --sub-c 連動・枠線あり）。配置は rm_align（右／中央／左）。編集はレイアウト管理。 */
.rm-default{clear:both;margin-top:24px;}
.rm-default__link{display:inline-block;max-width:250px;text-decoration:none;}
.rm-default__link span{display:block;color:var(--main-c);background:var(--sub-c);border:1px solid var(--sub-c);padding:16px 40px;text-align:center;white-space:nowrap;border-radius:15px;transition:background .2s,color .2s;}
.rm-default__link:hover span{color:var(--sub-c);background:var(--main-c);border:1px solid var(--sub-c);}
.rm-default--right{text-align:right;}
.rm-default--center{text-align:center;}
.rm-default--left{text-align:left;}
/* 偶数セクション（section.even）では背景・文字色を反転（枠線も追従）。hoverも反転する。 */
.even .rm-default__link span{color:var(--sub-c);background:var(--main-c);border:1px solid var(--main-c);}
.even .rm-default__link:hover span{color:var(--main-c);background:var(--sub-c);border:1px solid var(--main-c);}

/* == read-more-image == */
/* read-more-image：画像リンク（個別画像 rm_image）。配置は rm_align（右／中央／左・既定 中央）。編集はレイアウト管理。 */
.rm-image{clear:both;margin-top:24px;}
.rm-image__link{display:inline-block;line-height:0;}
.rm-image__link img{max-width:100%;height:auto;}
.rm-image--right{text-align:right;}
.rm-image--center{text-align:center;}
.rm-image--left{text-align:left;}

/* == search-body == */
/* 検索結果一覧の追加スタイル（任意）。
   基本の .search-result-item / .search-excerpt / .highlight / .indelist 等は
   css/other/search.css（グローバル enqueue）で定義済み。ここは上書き・微調整用。 */

/* == single-body == */
/* esona single-body（旧style.css逐語・rem→px）＋2カラム器（sec-main/sec-side＝旧box70/box30） */
.blog-cont{clear:both;float:left;width:100%;margin:20px 0 40px;padding:3%;}
.blog-cont .blog-cont{margin:0;padding:0;}
.blog-cont-img{clear:both;float:left;width:100%;margin:20px 0 40px;text-align:center;}
.blog-cont img{max-width:100%;}
/* 2カラム: 旧 .box70/.box30（幅はサイトが決める＝キットは器だけ） */
/* zoom逆補正: 旧テーマはフォントのみrem縮小で枠は原寸(1180実px)。キットzoom(0.88)は枠も縮めるため、
   コンテナ幅をcalcで割り戻して本番と同実寸に（帯 .lay-tit-page-tit と同方式）。%子(-10%重なり等)も連動して一致 */
.sec-cols{display:flow-root;max-width:calc(var(--site-width) / var(--fhd-zoom, 1));}
.sec-main{width:70%;float:left;}
.sec-side{width:30%;float:left;}
@media only screen and (max-width:800px){
.sec-main,.sec-side{width:100%;}
}
/* ★シングルマスター方式（2026-08-04）：2カラムがコアの「カラム」ブロックになったので、
   旧 .sec-cols に当てていた zoom逆補正と SP分岐（800px）を引き継ぐ。
   ★逆補正は「幅を決めている親」に当てないと効かない。マスターでは .width-wrap が
     max-width:var(--site-width)（＝1180 CSS px → zoom0.88 で 1038 実px）で止めてしまうので、
     記事ページに限りその親を 1180 実px（＝1180/0.88 CSS px）へ広げる。
   ★このテーマの <body> には body_class() が無く `single` が付かない（実測）ので、
     マスター描画時に single.php が付ける .dtp-single-master を目印にする。
     実測：本番 1180実px／変換前 1180実px／未補正のマスター 1038実px（2026-08-04）。 */
.dtp-single-master .width-wrap--site-width{max-width:calc(var(--site-width) / var(--fhd-zoom, 1)) !important;}
@media only screen and (max-width:800px){
.dtp-single-master .wp-block-columns{flex-wrap:wrap;}
.dtp-single-master .wp-block-columns > .wp-block-column{flex-basis:100% !important;}
}
/* 本文内の求人ボタン（旧 .post-rec 逐語）＝記事本文で使うクラス */
.post-rec{background:var(--main-c);clear:both;float:left;width:100%;margin:10% 0 5%;text-align: center;}
.post-rec a{color:#FFF;padding: 3%;display: block;}

/* == single-meta == */
/* コンテナ＝旧 .content-in 相当（1180中央寄せ・float内包） */
.single-meta-in{display:flow-root;clear:both;width:100%;max-width:calc(var(--site-width) / var(--fhd-zoom, 1));margin:0 auto;} /* clear必須＝直前のヘッダー帯(float)とのBFC幅0地雷回避。max-widthは.sec-colsと同じzoom逆補正（旧テーマは枠原寸） */
/* esona single-meta（旧style.css逐語・rem→px） */
.single-meta-in .sintop-titel{margin:15% 0 0;clear:both;float:left;width:100%;padding:0;border-bottom:0;} /* kit other/single.css の黒下線・padding・margin-bottom5%を打ち消し（旧デザインに無い） */
.sing-toptit{position:relative;padding:2%;border-bottom:3px solid #d8d8d8;background:var(--cat-color);color:var(--cat-font-color);margin:-10% 0 4px;} /* padding2%＝ユーザー指定（2026-08-01） */
.sing-toptit:before{position:absolute;bottom:-14px;left:1em;width:0;height:0;content:'';border-width:14px 12px 0 12px;border-style:solid;border-color:#d8d8d8 transparent transparent transparent;}
.sing-toptit:after{position:absolute;bottom:-10px;left:1em;width:0;height:0;content:'';border-width:14px 12px 0 12px;border-style:solid;border-color:var(--cat-color) transparent transparent transparent;}
.single-blog-data{clear:both;float:left;padding:3px 5px;background-color:var(--main-c);color:#FFF;}
.single-blog-cat{float:left;}
.single-blog-cat a{float:left;padding:3px 5px;margin:0 0 0 3px;position:relative;font-size:var(--font-size);line-height:1.35;} /* kitのa既定16pxを打ち消し＝旧は本文サイズ(18rem)継承。日付バッジと高さを揃える */
.single-blog-cat a::after{position:absolute;bottom:-4px;left:0;content:'';width:100%;height:2px;background:var(--main-c);transform:scale(0,1);transform-origin:left top;transition:transform .3s;}
.single-blog-cat a:hover::after{transform:scale(1,1);}
.news-list-tag{float:left;clear:both;width:100%;padding:2% 0;margin:0;line-height:110%;}
.news-list-tag a{font-size:14px;opacity:0.7;padding:0;margin:0;}
.news-list-tag a:hover{color:#877757;opacity:1.0;}
.news-list-tag a::before{content:"#";}

/* == single-nav == */
/* single-nav：投稿ナビ（前の記事｜一覧へ｜次の記事）。テーマ設定「シングル設定」で編集。 */
/* ★セクション外に出したので、全幅の黒帯で包んで白い線（body白背景）を消す（本文セクション odd=黒 と揃える）。 */
.single-nav-band{width:100%;float:left;clear:both;background:var(--sub-c);border-top:1px solid var(--main-c);}
.single-nav{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;width:100%;max-width:var(--site-width);margin:0 auto;}
.single-nav .sinnav-item:nth-child(1),.single-nav .sinnav-item:nth-child(3){width:35%;}
.single-nav .sinnav-item:nth-child(2){width:30%;border-right:1px solid var(--main-c);border-left:1px solid var(--main-c);}
.single-nav .sinnav-item a{color:var(--main-c);background:var(--sub-c);width:100%;text-align:center;display:block;padding:30px 0;}
/* ★「一覧へ」だけ上下の帯（白）が覗く問題の修正。padding:5% は幅基準なので、幅30%の中央ボタンは
   縦paddingが前後(幅35%)より小さく＝低くなり、align-items:center で上下に隙間が出る（＝上が太く見える）。
   中央だけ縦paddingを 5%×(35/30)=5.83% にして絶対値を前後と一致させ、高さを揃える（レイアウトは不変＝折返さない）。 */
.single-nav .sinnav-item:nth-child(2) a{}
.single-nav .sinnav-item a:hover{color:var(--sub-c);background:var(--main-c);}
/*
.single-nav a{text-decoration:none;color:var(--font-color);}
.single-nav a:hover{color:var(--main-c);}
.single-nav .single-nav-list{padding:8px 28px;border:1px solid var(--font-color);border-radius:999px;}
.single-nav .single-nav-list:hover{background:var(--main-c);color:var(--sub-c);border-color:var(--main-c);}
.single-nav .prev:empty,.single-nav .next:empty{display:none;}
*/
/* == sp-chrome-bar == */
/* 軸1 SPチャコ sp-chrome-bar（チャコ情報のみ）。選択時のみインライン。SP専用。
   1段目=ロゴ＋TEL＋問い合わせ。2段目のナビ(ハンバーガー)は既存の #global-nav をそのまま使う（デザイン非変更）。
   #global-nav はチャコの下に流す（固定→sticky）だけで、ナビの中身/見た目は触らない。 */
.sp-chrome{display:none;}
@media only screen and (max-width:768px){
  .sp-chrome{display:block;width:100%;background:var(--navi,#ffffff);}
  .sp-chrome__inner{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 12px;box-sizing:border-box;gap:8px;}
  .sp-chrome__logo img{height:32px;width:auto;display:block;}
  .sp-chrome__info{display:flex;align-items:center;gap:12px;}
  .sp-chrome__tel{display:inline-flex;align-items:center;gap:6px;color:var(--navi-font,#ffffff);text-decoration:none;}
  .sp-chrome__tel i{font-size:15px;}
  .sp-chrome__tel-txt{display:flex;flex-direction:column;line-height:1.1;}
  .sp-chrome__tel-txt small{font-size:9px;opacity:.85;}
  .sp-chrome__tel-txt b{font-size:16px;font-weight:700;letter-spacing:.02em;}
  .sp-chrome__contact{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:6px;background:var(--main-c,#c8791f);color:#fff;font-size:16px;text-decoration:none;flex-shrink:0;}

  /* 2段目＝既存の #global-nav（＝各種設定「SPナビ」）。PCと同じく固定→sticky でチャコ直下に流す。
     SPはメニューが隠れハンバーガーだけ＝面が無く"浮く"ので、ナビのテーマ色 var(--navi) を与えて
     PCチャコ同様のソリッドな2段目バーにする（＝PC .site-chrome と同じ背景・新デザインではない）。 */
  /* このテーマは header/#global-nav が float する場面があり、放置するとチャコとナビが同位置に重なる。
     float解除＋clear で「チャコ(1段目)→ナビ(2段目)」を確実に縦積み。
     追従(sticky)は body.is-sp-nav-sticky（テーマ設定トグル・既定ON）の時だけ。OFF=流れて消える。 */
  .has-sp-chrome .sp-chrome{float:none !important;clear:both !important;}
  .has-sp-chrome #global-nav{position:static;top:0;float:none !important;clear:both !important;background:var(--navi,#ffffff);}
  .is-sp-nav-sticky.has-sp-chrome #global-nav{position:sticky;}
  /* ロゴ非表示時、ハンバーガーが左に寄る（mdd用 .nav-right{margin-left:0} のため）→右へ戻す */
  .has-sp-chrome .top-nav-box{justify-content:flex-end;}
  .has-sp-chrome .nav-right{margin-left:auto !important;}
}

/* == square == */
/* esona square（サイト置換CSS＝キットcssを丸ごと差し替え）
   - スクエア/縦長/フル … キット既定を逐語温存
   - 全幅（PC/SP切替）… 旧 full-img 部品逐語（rem→px）
   - トップキャッチ画像 … 旧 top-catch 部品逐語 */

/* ===== キット既定 ===== */
.square-img > img{border-radius:var(--sq-rtl,25px) var(--sq-rtr,25px) var(--sq-rbr,25px) var(--sq-rbl,25px);}
@media screen and (max-width: 767px){
.square-img > img{border-radius:0;}
}

/* ===== 全幅（PC/SP切替）＝旧 .full-img ===== */
.full-img{clear:both;float:left;width:100%;background: #FFF;border-radius:40px;text-align: center;}
.full-img img{width:100%;border-radius:40px;}
@media only screen and (max-width:800px){.full-img{width:90%;margin:5% 5% 0;border-radius:15px;padding: 0;}}
@media only screen and (max-width:800px){.full-img img{width:100%;border-radius:15px;}}

/* ===== トップキャッチ画像＝旧 .top-tit-img ===== */
.top-tit-img{clear:both;float:left;width:100%;text-align: center;padding:5% 10% 2%;}
.top-tit-img img{width:100%;max-width:700px;}
/* 旧 .carousel-box の item 装飾を kit カルーセルへマッピング（旧 top-catch.css から移設） */
.dtp-car-wrap .item img{border: solid 1px #CCC;}

/* == table02 == */
/* esona table02（サイト置換CSS＝キットcssを丸ごと差し替え）
   - 2列表（.req-table）… キット既定を逐語温存
   - 情報表（.info-data）… 旧 page-shop-sub info-data 逐語（旧 info-table 部品から移設）
   - リスト表（.block-list）… 旧 会社概要リスト逐語（旧 block-list 部品から移設） */

/* ===== 2列表（キット既定） ===== */
.req-table{float:left;clear:both;width:100%;padding:3%;margin-bottom:5%;}
.req-table li{float:left;clear:both;width:100%;border:solid 1px #000;background:#FFF;}
.req-table li:nth-child(even){background:#F7F7F7;border-top:none;border-bottom:none;}
.req-table li:last-child{border-bottom:solid 1px #000;}
.req-table li span{float:left;padding:5%;}
.req-table li span:first-child{text-align:center;width:35%;font-weight: bold;}
.req-table li span:last-child{width:65%;border-left:solid 1px #000;}

/* ===== 情報表 ===== */
.info-data{clear:both;float:left;width:100%;border-top: solid 1px #CCD2E7;border-right:solid 1px #CCD2E7;}
.info-data li{display: flex;clear:both;float:left;width:100%;padding:0;}
.info-data li span{padding:5% 2%;}
.info-data li span:nth-child(1){width:25%;background:#CCD2E7;border-bottom: solid 1px #FFF;text-align: center;}
.info-data li span:nth-child(2){width:75%;border-bottom: solid 1px #CCD2E7;}

/* ===== リスト表 ===== */
.block-list{float:left;clear:both;width:100%;margin:0;border: solid 1px var(--main-c);border-radius:20px;}
.block-list li{clear:both;float:left;width:100%;display:flex;}
.block-list li:nth-child(even){background:#E5E8F1;}
.block-list li:last-child{border-radius:0 0 20px 20px;}
.block-list li span{padding:3%;}
.block-list li span:nth-child(1){width:30%;font-weight:500;text-align:center;border-right: solid 1px var(--main-c);}
.block-list li span:nth-child(2){width:70%;}
@media only screen and (max-width:800px){
.block-list{width:100%;margin:0;border-radius:15px;}
.block-list li:last-child{border-radius:0 0 15px 15px;}
.block-list li span{padding:5% 3%;font-size:16px;}
}
/* wysiwyg整形（<p>）のセル内余白を旧textarea表示と同等に */
.info-data li span p,.block-list li span p{margin:0;padding:0;}

/* == tit-page == */
/* ヘッダー tit-page（背景画像＋タイトル）。section.css の共有 .tit-page / .top-tith を
   リネーム複製（.lay-tit-page / .lay-tit-page-tit）。共有側（category.php/archive.php 等）は無傷。 */
.lay-tit-page{
	width:100%;float:left;clear:both;
	background-position:center center;background-repeat:no-repeat;background-size:cover;
}
.lay-tit-page-tit{
	width:100%;max-width:var(--site-width);margin:0 auto;clear:both;
}
.lay-tit-page-tit p{
	float:left;clear:both;color:var(--font-sub-color);
	padding:5% 10%;margin:0;font-size:var(--tit-font-size);
}
.lay-tit-page-tit span{
	float:left;clear:both;width:100%;font-size:var(--font-size);
}
.lay-tit-page-tit p img{width:100%;}

/* == block01 == */
/* esona block01（旧style.css逐語・rem→px） */
.block01{clear:both;float:left;width:100%;margin:0 0;}
.block01-list{clear:both;float:left;width:100%;background:#FFF;border-radius:30px;margin:0 0;}
.block01-list div{float:left;}
.block01-list div img{width: 100%;}
.block01-list:nth-child(odd) div{float:right;}
.block01-list div:nth-child(1){width:35%;}
.block01-list div:nth-child(2){width:65%;padding:5%;}
.block01-list-com .tit{font-size:var(--tit-font-size);font-weight:600;color: var(--tit-font-c);}
.block01-list-com .sub-tit{font-size:24px;font-weight:600;clear:both;float:left;width:100%;padding:2% 0;}
.block01-list-com .sub-tit span{font-size:18px;padding:0 2%;}
.block01 .block01-list:nth-child(odd) .fadein-img{-webkit-transition: all 1s linear; -o-transition: all 1s linear; transition: all 1s linear; -webkit-transform: translateX(100%); -moz-transform: translateX(100%); -ms-transform: translateX(100%); transform: translateX(100%); opacity: 0;}
.block01 .block01-list:nth-child(even) .fadein-img{-webkit-transition: all 1s linear; -o-transition: all 1s linear; transition: all 1s linear; -webkit-transform: translateX(-100%); -moz-transform: translateX(-100%); -ms-transform: translateX(-100%); transform: translateX(-100%); opacity: 0;}
.block01 .block01-list .fadein-img.active{-webkit-transform: translateX(0); -moz-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); opacity: 1;}
.block01 .block01-list:nth-child(odd) .fadein-set{-webkit-transition: all .8s linear; -o-transition: all .8s linear; transition: all .8s linear; -webkit-transform: translateX(-100%); -moz-transform: translateX(-100%); -ms-transform: translateX(-100%); transform: translateX(-100%); opacity: 0;}
.block01 .block01-list:nth-child(even) .fadein-set{-webkit-transition: all .8s linear; -o-transition: all .8s linear; transition: all .8s linear; -webkit-transform: translateX(100%); -moz-transform: translateX(100%); -ms-transform: translateX(100%); transform: translateX(100%); opacity: 0;}
.block01 .block01-list .fadein-set.active{-webkit-transform: translateX(0); -moz-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); opacity: 1;}
@media only screen and (max-width:800px){.block01{width:90%;margin:0 5% 10%;}}
@media only screen and (max-width:800px){.block01-list{border-radius:15px;margin:10% 0 0;}}
@media only screen and (max-width:800px){.block01-list div img{width: 100%;border-radius:15px 15px 0 0;}}
@media only screen and (max-width:800px){.block01-list:nth-child(odd) div{float:right;}}
@media only screen and (max-width:800px){.block01-list div:nth-child(1){width:100%;}}
@media only screen and (max-width:800px){.block01-list div:nth-child(2){width:100%;}}
@media only screen and (max-width:800px){.block01-list-com .tit{font-size:24px;}}
@media only screen and (max-width:800px){.block01-list-com .sub-tit{font-size:24px;}}
@media only screen and (max-width:800px){.block01-list-com .sub-tit span{font-size:18px;padding:0;clear:both;float:left;width:100%;}}
/* 画像の位置トグル（1カード=1ブロック化に伴いnth-childジグザグを置換。旧odd=右/even=左と同じ挙動） */
.block01-list.img-right div{float:right;}
.block01-list.img-left div{float:left;}
.block01 .block01-list.img-left .fadein-img{-webkit-transform:translateX(-100%);transform:translateX(-100%);}
.block01 .block01-list.img-left .fadein-set{-webkit-transform:translateX(100%);transform:translateX(100%);}
.block01 .block01-list.img-left .fadein-img.active,
.block01 .block01-list.img-left .fadein-set.active{-webkit-transform:translateX(0);transform:translateX(0);}
@media only screen and (max-width:800px){.block01-list.img-right div,.block01-list.img-left div{float:left;}}
/* カード間隔はサブセクション（各カードを包む）の上マージンで管理（2026-07-31） */

/* == block03 == */
/* esona block03 番号付きリスト（旧img-titcom.cssから分離） */
.block03{display:flex;flex-wrap:wrap;justify-content:space-between;clear:both;float:left;width:100%;margin:2% 0 10%;}
.block03 li{width:32.5%;padding:5%;margin:1% 0 0;background: #FFF;border-radius:30px;}
.block03-list-tit{text-align: center;background:#808EC3!important;border: #FFF 10px solid;color: #FFF;}
.block03-list-tit .tit{font-size:var(--tit-font-size);font-weight:700;clear:both;float:left;width:100%;}
.block03-list .tit{text-align: center;font-size:var(--tit-font-size);color:var(--tit-font-c);font-weight:700;margin:0 0 10px;clear:both;float:left;width:100%;}

/* == box01 == */
/* esona box01（旧style.css逐語・rem→px） */
.layout_box01-img img{border-radius:40px 40px 0 0;width: 100%;}
.layout_box01 h2{clear:both;float:left;width:100%;padding:5% 0;}
.layout_box01 .main-tit{font-size:var(--tit-font-size);font-weight: 900;text-align: center;color: var(--tit-font-c);}
.layout_box01 .box-flex div:nth-child(1){width:50%;}
.layout_box01 .box-flex div:nth-child(2){width:45%;}
.box-flex{display: flex;justify-content:space-around;padding: 5%;clear:both;float:left;width:100%;}
.box-flex div:nth-child(1){width:40%;}
.box-flex div:nth-child(2){width:55%;}
.box-flex h3{color:var(--tit-font-c);font-weight:900;position: relative;text-align: center;}
.box-flex h3:before{position: absolute; display: inline-block; content: ''; bottom: -15px; width: 60px; height:2px; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); background-color: var(--tit-font-c); border-radius: 2px;}
@media only screen and (max-width:800px){.layout_box01-img img{border-radius:15px 15px 0 0;width:100%;padding:0 0 ;}}
@media only screen and (max-width:800px){.layout_box01 h2{clear:both;float:left;width:100%;padding:2% 0;}}
@media only screen and (max-width:800px){.layout_box01 .main-tit{font-size:24px;}}
@media only screen and (max-width:800px){.layout_box01 .box-flex div:nth-child(1){width:100%;}}
@media only screen and (max-width:800px){.layout_box01 .box-flex div:nth-child(2){width:100%;padding:10% 0;}}
@media only screen and (max-width:800px){.box-flex{flex-wrap: wrap; padding:5% 3%;}}
@media only screen and (max-width:800px){.box-flex div:nth-child(1){width:100%;}}
@media only screen and (max-width:800px){.box-flex div:nth-child(2){width:100%;padding:5% 0 0;}}
@media only screen and (max-width:800px){.box-flex h3{margin-bottom: 5%;}}
@media only screen and (max-width:800px){.box-flex h3:before{bottom: -10px;}}

/* == box02 == */
/* esona box02（旧style.css .layout_box/.nexlink 逐語・rem→px。box-flex は box01.css 共有） */
.nexlink{clear:both;float:left;width:100%;max-width:200px; padding:10% 0 0;}
.layout_box{clear:both;float:left;width:100%;padding: 5%;}
.layout_box h2{clear:both;float:left;width:100%;padding: 5%;}
.layout_box .main-tit{font-size:var(--tit-font-size);font-weight: 900;text-align: center;color: var(--tit-font-c);}
@media only screen and (max-width:800px){.layout_box{padding: 5%;}}
@media only screen and (max-width:800px){.layout_box h2{padding:5% 5% 1%;}}
@media only screen and (max-width:800px){.layout_box .main-tit{font-size:24px;}}

/* == cat-side == */
/* cat-side: 一覧サイドバー（旧 style.css の sid-blog 系逐語・rem→px 換算のみ） */
.blog-rg{margin:5% 0;padding-left:30px;clear:both;float:left;width:100%;}
.sid-blog-tit{font-size:21px;border-bottom:1px solid var(--main-c);text-align:center;clear:both;float:left;width:100%;margin-bottom:2px;padding-bottom:5px;}
.sid-blog-list{padding:5px 10px 10px;clear:both;float:left;width:100%;margin:0;list-style:none;}
.sid-blog-list li{margin:5px 0;padding:5px 0;clear:both;float:left;width:100%;border-bottom:0px solid var(--main-c);}
.indst,.indst .children{list-style:inside;}
.sbl-cat .children{padding-left:20px;} /* 子カテゴリのインデント（キットのulリセットで既定paddingが消えるため明示） */
.sid-blog-list li .list-date{width:100%;clear:both;float:left;padding:0 10px;font-size:12px;}
.sid-blog-list li .list-tit{width:100%;clear:both;float:left;padding:0 10px;font-size:14px;}
.sbl-cat{font-size:14px;}
.sid-tag-list{display:flex;flex-wrap:wrap;width:100%;clear:both;float:left;padding:5px 0;margin:0;list-style:none;}
.sid-tag-list li{padding:0 0 10px;transition:all .4s ease 0s;}
.sid-tag-list li a{padding:5px;font-size:14px;background:var(--navi);color:var(--navi-font);white-space:nowrap;margin:0 3px 3px;}
.sid-tag-list li a::before{content:"#";}
.sid-tag-list li a:hover{background:var(--navi-hover);color:var(--navi-hover-font);transition:all 0.5s ease;}
.sid-tag-list li.is-hidden{visibility:hidden;opacity:0;height:0;margin:0 10px;padding:0;}
.aclist-tit{padding:1% 2%;clear:both;float:left;width:100%;}
.sid-blog-aclist{display:flex;flex-wrap:wrap;padding:0 5%;clear:both;float:left;width:100%;margin:0;list-style:none;}
.sid-blog-aclist li{border-left:1px dashed #9CD8F6;width:16.5%;text-align:center;margin:0 0 5%;}
.sid-blog-aclist li:nth-child(6n+1){border-left:1px none #9CD8F6;}
.sid-blog-aclist li a{font-size:12px;padding:1% 2%;text-align:center;display:block;}
.sid-blog-aclist li a:hover{background-color:var(--main-c);color:#FFF;transition:all 0s ease;text-decoration:none;}
/* tag.のもっと見るボタン（旧 .container/.more/button 逐語・部品内スコープ） */
.blog-rg .container{width:100%;clear:both;float:left;padding:5px 0 50px;}
.blog-rg .more{text-align:center;margin-top:20px;}
.blog-rg .more button{background:var(--main-c);color:var(--font-sub-color);border:none;cursor:pointer;outline:none;padding:0;line-height:40px;width:160px;border-radius:20px;}

/* == contact-tel == */
/* esona contact-tel（旧style.css逐語・rem→px） */
.navi-top,.smart-navi,.p-contact-tel__number-sp.sp{display:none;}
.p-contact-tel{padding: 50px 0 0;text-align: center;}
.p-contact-tel__title{margin-bottom: 25px;color: #5f6ea4;font-size: 29px;font-weight: 600;line-height: 1.5;}
.p-contact-tel__title:before{-webkit-transform: rotate(90deg);display: inline-block;margin-right: 10px;transform: rotate(90deg);font-family: "Font Awesome 5 Free";font-weight: 900;content: "\f098";}
.p-contact-tel .p-contact-tel__number{width: 50%;max-width: 485px;margin: 36px auto;padding: 20px 20px;background: #f7f7fb;color: #5f6ea4;font-size: 37px;font-weight: 600;}
.p-contact-tel .p-contact-tel__number span{-webkit-transform: rotate(90deg);display: inline-block;transform: rotate(90deg);}
.p-contact-tel .p-contact-tel__number-sp{margin: 26px auto;padding: 20px 0 20px 3%;color: #5f6ea4;font-size: 33px;font-weight: 600;}
.p-contact-tel .p-contact-tel__number-sp a{display: block;background: #5e75cc;color: #ffffff;text-decoration: none;}
.p-contact-tel .p-contact-tel__number-sp span{-webkit-transform: rotate(90deg);display: inline-block;transform: rotate(90deg);}
*/ .p-contact-tel__number-sp.sp{display:block;}
.p-contact-tel__number.pc_tab{display:none;}

/* == footer-etc-01 == */
/* foot-rec 採用バナー帯（旧style.css逐語・rem→px） */
.foot-rec{float:left;clear:both;width:100%;padding:0 0 10%;margin:0;text-align: center; background-repeat:no-repeat; background-position:center center; background-size:100% auto;}
.foot-rec-cont{color: #FFF;text-align: center;}
.foot-rec-cont h2{font-size:var(--tit-font-size);}
.foot-rec-cont h3{font-size:21px;margin:10px 0 30px;}
.foot-rec-cont img{width:200px;text-align: center;}
@media only screen and (max-width:800px){.foot-rec{background-size:auto 100%;}}
@media only screen and (max-width:800px){.foot-rec-cont{text-align: center;}}
@media only screen and (max-width:800px){.foot-rec-cont h2{font-size:24px;}}
@media only screen and (max-width:800px){.foot-rec-cont h3{font-size:16px;}}

/* == footer-etc-02 == */
/* フッター自由枠02（フッター本体）用CSS: 旧footer装飾 逐語＋キット専用宣言の打ち消し（old-footer.cssから移設 2026-07-31） */
/* esona 旧フッターCSS（style.css 逐語抽出・rem→px） */ /*----------------------footer------------------------------------------------- ------------------------------------------------------------------------------------*/ .foot-main{float:left;clear:both;width:100%;border-bottom:solid 1px var(--foot-back);border-top:solid 1px var(--foot-back);background:var(--foot-back);padding:5% 0;}
.foot-main-in{margin:0;float:left;clear:both;width:100%;padding:0 5%;color:var(--main-c);}
.foot-main-back{display: flex;flex-wrap:nowrap;justify-content:space-around;align-items:center;border-radius:40px;background: #FFF;float:left;clear:both;width:100%;padding:3% 3%;}
.foot-logo-box{width:10%;text-align: center;padding:0;}
.foot-logo-box a img{width:150px;}
.footer-cont{width:55%;padding:20px 1%;float:left;clear:both;}
.ter-contbox{float:left;clear:both;width:100%;}
.footer-nav{display: flex;flex-wrap:nowrap;align-items:center;float:left;clear:both;width:100%;max-width:950px;border-bottom:solid 1px var(--main-c);padding:0 10px 0 0;}
.footer-nav-tit{width:15%;background:var(--main-c);color: #FFF; text-align: center;padding:1%;font-size:21px;}
.footer-nav-list{padding:0;width:100%;}
.foo-ad{display: flex;justify-content:space-between;flex-wrap:wrap;align-items:center;color:var(--main-c);padding:5px 0 0;float:left;clear:both;width:100%;}
.foo-ad p{line-height: 110%;padding:3px 1% 0;width:100%;white-space: nowrap;}
.corname{font-size: 21px;font-weight:600;padding:0 1% 0;}
.pm-box{padding:1% 2%;}
.pm-box img{height: 80px;}
.footer-adcont{width:20%;}
.footer-adcont ul{float:left;clear:both;width:100%;}
.footer-adcont ul li{width:100%;float:left;clear:both;}
.footer-adcont ul li:nth-child(2){padding:2% 0 0;}
@media only screen and (max-width:800px){.foot-main{display: none;}}
/* フッターナビ（.menu-footer-container＝wp_nav_menu自動コンテナ・旧逐語） */ .menu-footer-container{float:left;clear:both;width:100%;}
.menu-footer-container ul{display: flex;justify-content:space-around;flex-wrap:nowrap;width:100%;padding:0;}
.menu-footer-container ul li{padding:0;}
.menu-footer-container ul li a{color:var(--main-c);font-size:18px;padding:1% ;float:left;clear:both;width:100%;white-space: nowrap;}
.menu-footer-container ul li a::after{position:absolute;bottom:-4px;left:0;content:'';width:100%;height:2px;background:var(--main-c);transform:scale(0, 1);transform-origin:left top;transition:transform .3s;}
.menu-footer-container ul li a:hover::after{transform:scale(1, 1);}
/* キット footer.css 専用プロパティの打ち消し（旧デザインは宣言しない＝後勝ちでも残るため明示） */ .foot-main-in{max-width:none;}
.foo-ad > div{display:block;justify-content:normal;align-items:normal;}
.pm-box{width:auto;float:none;clear:none;}

/* == fresh-entry == */
/* fresh-entry（エントリー帯） */
/* この帯のキット器調整（セクション余白0・区切り線0・はみ出し許可）＝この部品とセットで管理 */
section:has(.entry) .sec-wrap{padding-top:0;padding-bottom:0;}
section:has(.entry){border-bottom-width:0;}
section:has(.entry) .skewed{overflow-x:visible;}
.entry .l-container{padding-bottom:100px;max-width:100%;} /* 旧 .main .l-container 相当 */

/* == fresh-footer == */
/* fresh-footer（フッターイメージ帯） */
/* この帯のキット器調整（セクション余白0・区切り線0・はみ出し許可）＝この部品とセットで管理 */
section:has(.footer-image) .sec-wrap{padding-top:0;padding-bottom:0;}
section:has(.footer-image){border-bottom-width:0;}
section:has(.footer-image) .skewed{overflow-x:visible;}

/* == fresh-hero == */
/* fresh-hero（メインビジュアル帯）。部品自体の装飾は旧LP CSS（fresh-ver/fresh.css）が担当 */
/* この帯のキット器調整（セクション余白0・区切り線0・はみ出し許可）＝この部品とセットで管理 */
section:has(.lp-main) .sec-wrap{padding-top:0;padding-bottom:0;}
section:has(.lp-main){border-bottom-width:0;}
section:has(.lp-main) .skewed{overflow-x:visible;}

/* == fresh-message == */
/* fresh-message（メッセージ帯） */
/* この帯のキット器調整（セクション余白0・区切り線0・はみ出し許可）＝この部品とセットで管理 */
section:has(.message) .sec-wrap{padding-top:0;padding-bottom:0;}
section:has(.message){border-bottom-width:0;}
section:has(.message) .skewed{overflow-x:visible;}
.message .l-container{padding-bottom:100px;max-width:100%;} /* 旧 .main .l-container 相当 */

/* == fresh-more == */
/* fresh-more（MORE帯） */
/* この帯のキット器調整（セクション余白0・区切り線0・はみ出し許可）＝この部品とセットで管理 */
section:has(.more) .sec-wrap{padding-top:0;padding-bottom:0;}
section:has(.more){border-bottom-width:0;}
section:has(.more) .skewed{overflow-x:visible;}
.more .l-container{padding-bottom:100px;max-width:100%;} /* 旧 .main .l-container 相当 */

/* == fresh-talk == */
/* fresh-talk（座談会帯） */
/* この帯のキット器調整（セクション余白0・区切り線0・はみ出し許可）＝この部品とセットで管理 */
section:has(.talk) .sec-wrap{padding-top:0;padding-bottom:0;}
section:has(.talk){border-bottom-width:0;}
section:has(.talk) .skewed{overflow-x:visible;}
.talk .l-container{padding-bottom:100px;max-width:100%;} /* 旧 .main .l-container 相当 */

/* == map-embed == */
/* esona map-embed（旧style.css .info-box02 div iframe 逐語・スコープのみ .map-embed へ） */
.map-embed{width:100%;}
.map-embed iframe{border-radius:0 0 40px 0;padding: 0;margin: 0;max-width:100%;}
@media only screen and (max-width:800px){.map-embed iframe{border-radius:0 0 15px 15px;padding: 0;margin: 0;}}

/* == page-link == */
/* esona page-link（旧style.css逐語・rem→px） */
.page-link{display:flex;flex-wrap: wrap;justify-content:center;clear:both;float:left;width:100%;margin-bottom: 10%;}
.page-link li{display:flex;flex-direction:column;width:400px;padding: 1%;}
.page-link li a{flex-grow: 1;display:flex;flex-direction:column;background:#FFF;border-radius:20px;clear:both;float:left;width:100%;}
.page-link li a p:nth-child(1){flex-grow:1;}
.page-link li a p:nth-child(1) img{border-radius:20px 20px 0 0;}
.page-link li a p:nth-child(2){border-radius:0 0 20px 20px;background:var(--main-c);color: #FFF; text-align: center;padding:3% 1%;}
@media only screen and (max-width:800px){.page-link{flex-wrap: wrap;width:90%;margin:5% 5% 10%;}}
@media only screen and (max-width:800px){.page-link li{width:100%;padding:3% 0;}}
@media only screen and (max-width:800px){.page-link li a{border-radius:15px;}}
@media only screen and (max-width:800px){.page-link li a p:nth-child(1) img{border-radius:15px 15px 0 0;}}
@media only screen and (max-width:800px){.page-link li a p:nth-child(2){border-radius:0 0 15px 15px;}}

/* == sec-tit-com == */
/* esona sec-tit-com（旧img-titcom.cssから移設） */
.stc-com{display:flex;justify-content:center;float:left;clear:both;width:100%;padding:2% 2% 10%; }

/* == sec-tit-sub == */
/* sec-tit系（esona）: 旧 style.css 逐語（3部品共通） */
.sec-tit01{position:relative;clear:both;width:100%;max-width:900px;margin:5% auto;padding:0 2%;text-align:center;font-size:var(--tit-font-size);color:var(--tit-font-c);}
.sec-tit01 h2{font-weight:900;line-height:155%;}
.sec-tit02{position:relative;float:left;clear:both;width:100%!important;margin:5% auto;padding:0 2%;text-align:center;font-size:var(--tit-font-size);color:var(--tit-font-c);line-height:110%;letter-spacing:10%;}
.sec-tit02 h2{font-weight:900;}
.sec-tit02:before{position:absolute;display:inline-block;content:'';bottom:-15px;width:60px;height:5px;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);background-color:var(--tit-font-c);border-radius:2px;}
.sec-tit02 span{font-size:18px;}
.sec-tit_com{position:relative;float:left;clear:both;width:100%;margin:5% auto;padding:0 2%;text-align:center;font-size:var(--tit-font-size);color:var(--tit-font-c);line-height:110%;letter-spacing:10%;}
.sec-tit_com h2{font-weight:900;}
.sec-tit_com:before{position:absolute;display:inline-block;content:'';bottom:-25px;width:60px;height:5px;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);background-color:var(--tit-font-c);border-radius:2px;}
@media only screen and (max-width:800px){
.sec-tit01{font-size:24px;}
.sec-tit02{font-size:24px;line-height:155%;}
.sec-tit02:before{bottom:-10px;}
.sec-tit02 span{float:left;clear:both;width:100%;padding:2% 0 0;text-align:center;}
.sec-tit_com{width:90%;margin:10% 5%;padding:0 2%;font-size:24px;}
.sec-tit_com:before{bottom:-20px;}
}

/* == sec-title == */
/* sec-title（esona）: 旧 style.css 逐語 */
.sec-title{clear:both;float:left;width:100%;border-top:solid 20px #FFF;}
.sec-title p{color:var(--main-c);clear:both;float:left;width:10%;text-align:center;background:#FFF;margin:0 0 5% 40px;padding:1%;border-radius:0 0 10px 10px;}
@media only screen and (max-width:800px){
.sec-title p{width:25%;margin:0 0 1% 5%;padding:1%;}
}

/* == shop-intro == */
/* esona shop-sub部品CSS（旧style.css逐語・rem→px） */
/*--固定ページ---ショップ詳細ページ------------------------------------ ------------------------------------------------------------------------------------------------- */ .white-box-shop{clear:both;float:left;width:100%;padding:0;background: #FFF;border-radius:40px;margin:50px 0 10%;}
.shtop-img{clear:both;float:left;width:100%;}
.shtop-img img{border-radius:40px 40px 0 0;width:100%;}
.shtop-box{display: flex;align-items:center;justify-content:space-around;clear:both;float:left;width:100%;}
.shtop-box div:nth-child(1){width:60%;padding:5%; }
.shtop-box div:nth-child(2){width:40%;}
.shtop-box div:nth-child(2) img{width:100%;border-radius:0 0 40px 0;display:block;}
/* 画像列はカード下端に密着（旧は「テキスト列高さ≒画像高さ」の偶然で密着に見えていた＝remスケール差で崩れるため構造で保証） */
.shtop-box div:nth-child(2){align-self:flex-end;}
.shtop-box div h3{color:var(--tit-font-c);font-weight:900;position: relative;text-align: center;margin-bottom:40px;}
.shtop-box div h3:before { position: absolute; display: inline-block; content: ''; bottom: -15px; width: 60px; height:2px; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); background-color: var(--tit-font-c); border-radius: 2px; }
@media only screen and (max-width:800px){/*page+shop-sub ショップ詳細--*/ .white-box-shop{width:90%;border-radius:15px;margin:50px 5% 10%;}}
@media only screen and (max-width:800px){.shtop-img img{border-radius:15px 15px 0 0;}}
@media only screen and (max-width:800px){.shtop-box{flex-wrap: wrap;}}
@media only screen and (max-width:800px){.shtop-box div:nth-child(1){width:100%;}}
@media only screen and (max-width:800px){.shtop-box div:nth-child(2){width:100%;}}
@media only screen and (max-width:800px){.shtop-box div:nth-child(2) img{border-radius:0 0 15px 15px;}}

/* == shop-link == */
/* esona shop-link（旧style.css逐語・rem→px） */
.width-full .shop-list{display:flex;flex-wrap:wrap;justify-content:center;clear:both;float:left;width:100%;}
.width-full .shop-cont{width:33%;max-width:560px;padding:10px 1%;}
.shop-list{display:flex;flex-wrap:wrap;justify-content:space-around;clear:both;float:left;width:100%;margin-bottom: 10%;padding:0 5%;}
.shop-cont{display:flex;flex-direction:column;width:50%;padding: 2% 2% 4%;overflow:hidden;}
.shop-cont a{display:flex;flex-direction:column;flex-grow: 1;clear:both;float:left;width:100%;background:#FFF;border-radius:20px;overflow:hidden;}
.shop-cont img{border-radius:20px 20px 0 0;transition:1s all;width: 100%;}
.shop-cont:hover img{transform:scale(1.1,1.1);}
.shop-cont p{width:80%;clear:both;float:left;background:#dd3333;color:#FFF;font-size:18px;padding:2%;margin-top:15px;}
.shop-cont a h3{flex-grow:1; font-size:18px;clear:both;float:left;width:100%;color:#666;padding:7%;}
.shop-list .r-flexbox{width:30%;max-width:325px;margin:1% 1%; display:flex;align-items:center;background: #FFF;color:#444;border-radius: 10px;font-size:18px;}
.shop-list .r-flexbox span:first-child{width:30%;padding:1% 2%;}
@media only screen and (max-width:800px){.width-full .shop-list{display:flex;flex-wrap:wrap;justify-content:center;clear:both;float:left;width:100%;}}
@media only screen and (max-width:800px){.width-full .shop-cont{width:25%;max-width:420px;padding:10px 1%;}}
@media only screen and (max-width:800px){.shop-cont{width:100%!important;padding: 2% 0 4%;}}
@media only screen and (max-width:800px){.shop-cont a{border-radius:15px;}}
@media only screen and (max-width:800px){.shop-cont img{border-radius:15px 15px 0 0;}}
@media only screen and (max-width:800px){.shop-cont p{font-size:18px;}}
@media only screen and (max-width:800px){.shop-cont a h3{font-size:18px;}}
@media only screen and (max-width:800px){.shop-list{justify-content:space-between;}}
@media only screen and (max-width:800px){.shop-list .r-flexbox{width:49%;margin:1% 0;font-size:14px;}}
@media only screen and (max-width:800px){.shop-list .r-flexbox span:first-child{width:30%;padding:1% 2%;}}
/* kit の全幅サブセクションは .width-wrap--full（旧 .width-full 相当）＝旧ルールをキットクラスへマッピング */
.width-wrap--full .shop-list{display:flex;flex-wrap:wrap;justify-content:center;clear:both;float:left;width:100%;}
.width-wrap--full .shop-cont{width:33%;max-width:560px;padding:10px 1%;}
@media only screen and (max-width:800px){.width-wrap--full .shop-cont{width:100%!important;max-width:none;padding:2% 0 4%;}}

/* == single-foot == */
/* esona single-foot（旧style.css逐語・rem→px） */
.blog-sns{clear:both;float:left;width:100%;margin:20px 0 40px;}
.sns__container{display:flex;flex-wrap:nowrap;justify-content:center;clear:both;float:left;width:100%;margin:20px 0 40px;}
.sns__container a{width:33%;padding:0 0;font-size:42px;color:#FFF;text-align:center;}
.sns__container a:hover{opacity:0.6;}
.sns__twitter{background:#55acee;}
.sns__facebook{background:#3b5998;}
.sns__line{background:#1dcd00;}
#nextback2{font-size:12px;text-align:center;clear:both;float:left;width:100%;margin:80px 0 40px;}

/* == vertical-titcom == */
/* vertical-titcom（esona）: 旧 style.css .white-box/.w-flex/.abbox-item 逐語移植 */
.w-flex{display:flex;flex-wrap:wrap;justify-content:space-between;clear:both;float:left;width:100%;}
.white-box{clear:both;float:left;width:100%;padding:0;background:#FFF;border-radius:40px;margin:50px 0 10%;}
.white-box .abbox-item:nth-child(1){width:40%;order:2;}
.white-box .abbox-item:nth-child(1) img{border-radius:0 40px 40px 0;}
.white-box .abbox-item:nth-child(2){width:60%;order:1;align-self:center;padding:5%;}
.white-box .abbox-item p:nth-child(1){padding-bottom:5%;}
.abbox-item-tit{font-size:var(--tit-font-size);color:var(--tit-font-c);font-weight:700;}
.w-flex .smart{display:none}
@media only screen and (max-width:800px){
.white-box{clear:both;float:left;width:90%;padding:0;background:#FFF;border-radius:15px;margin:50px 5% 10%;}
.white-box .abbox-item:nth-child(1){width:100%;order:1;}
.white-box .abbox-item:nth-child(1) img{width:100%;padding:0 0 2%;border-radius:15px 15px 0 0;}
.white-box .abbox-item:nth-child(2){width:100%;order:2;padding:10%;}
.w-flex .hdnvpc{display:none!important;}
.w-flex .smart{display:block;width:100%;clear:both;float:left;padding:0;}
}
