@charset "UTF-8";
/* =========================================================
   大阪あわじ歯科 2026（案1）
   元：案1/index.html・案1/下層見本/common.css・whitening.css（2026-10-20 オーナーOK）
   色 #FFCF38 / #AA8AC2 / #331833 / #FFF9EA・書体 M PLUS Rounded 1c
   1. 土台（SWELL の色・書体の変数を案1に）
   2. ヘッダー・メニュー（PC横並び・診療案内はたたむ・スマホはハンバーガー）
   3. トップ（front-page.php）
   4. 下層のページタイトル・本文（今の WordPress のブロックを案1の見た目に）
   5. アクセス・予約・フッター・スマホの固定バー
   6. ホワイトニングLP
   7. 投稿・一覧（SWELL の中身のまま、色と余白だけ）
   ========================================================= */

/* ---------- 1. 土台 ---------- */
html:root{
	--ink:#331833;--accent:#331833;--paper:#fff9ea;--soft:#ede3f5;--yellow:#ffcf38;--purple:#aa8ac2;--purple-deep:#684278;--line:#d9c7e5;--line-green:#06c755;
	--oa-font:'M PLUS Rounded 1c','Hiragino Maru Gothic ProN','Hiragino Sans',sans-serif;
	/* SWELL の変数（投稿・ブロックの色もそろう） */
	--swl-font_family:var(--oa-font);--swl-font_weight:500;
	--color_main:#aa8ac2;--color_htag:#aa8ac2;--color_text:#331833;--color_bg:#fff9ea;--color_link:#684278;
	--color_header_bg:#fff9ea;--color_header_text:#331833;--color_footer_bg:#fff9ea;--color_footer_text:#331833;
	--color_list_check:#aa8ac2;--color_list_num:#aa8ac2;--color_main_thin:#f6effa;--color_main_dark:#684278;
	--border01:solid 1px var(--purple);--border02:double 4px var(--purple);
	scroll-padding-top:130px;
}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink)}
#body_wrap.oa2026{font-family:var(--oa-font);color:var(--ink);background:var(--paper);font-size:15px;line-height:1.85}
.oa2026 *,.oa2026 *::before,.oa2026 *::after{box-sizing:border-box}
:where(.oa2026) a{color:inherit;text-decoration:none}
:where(.oa2026) a:hover{opacity:.78}
.oa2026 a:focus-visible,.oa2026 summary:focus-visible,.oa2026 button:focus-visible{outline:3px solid var(--purple-deep);outline-offset:5px}
.oa-custom h1,.oa-custom h2,.oa-custom h3,.oa-custom p,.oa-custom figure{margin:0}
.oa-custom h1,.oa-custom h2,.oa-custom h3{line-height:1.5;font-weight:700}
.oa-custom h1{font-size:clamp(32px,3.5vw,50px);letter-spacing:.045em}
.oa-custom h2{font-size:clamp(27px,2.8vw,38px);letter-spacing:.06em}
.oa-custom h3{font-size:23px}
.oa2026 small{font-size:12px}
.oa2026 .nobr{display:inline-block}
.oa2026 .wrap{width:min(1160px,calc(100% - 80px));margin-left:auto;margin-right:auto}
.oa2026 .section{padding:90px 0}
.oa2026 .label{display:block;font-size:12px;letter-spacing:.18em;font-weight:700;color:var(--purple-deep);margin-bottom:12px}
.oa2026 .skip{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.oa2026 .skip:focus{position:fixed;left:12px;top:10px;width:auto;height:auto;z-index:200;background:#fff;padding:10px 16px;border-radius:10px}
#body_wrap #content.oa-content{display:block;padding:0;margin:0;max-width:none;width:auto}

/* ボタン */
.oa2026 .button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 25px;background:var(--accent);color:#fff;border:1px solid transparent;border-radius:50px;font-weight:700;font-size:14px;line-height:1.4}
.oa2026 .button:after{content:'↗';font-size:17px}
.oa2026 .button.line{background:var(--line-green);color:#fff;border-color:var(--line-green)}
.oa2026 .button.line:hover{opacity:.85}
.oa2026 .text-link{font-size:13px;font-weight:700;display:inline-flex;gap:35px;align-items:center;border-bottom:1px solid;padding-bottom:6px}
.oa2026 .text-link:after{content:'→'}

/* トラ（支給PNGの縦横比のまま。ふちを白く） */
.oa2026 img[src*="/assets/img/tiger"]{filter:drop-shadow(3px 0 0 #fff) drop-shadow(-3px 0 0 #fff) drop-shadow(0 3px 0 #fff) drop-shadow(0 -3px 0 #fff) drop-shadow(0 4px 6px rgba(51,24,51,.18))}
.oa2026 .tiger-deco{display:block;width:88px;height:88px;object-fit:contain;pointer-events:none;user-select:none;transform:rotate(-5deg)}
.oa2026 .tiger-deco--reverse{transform:scaleX(-1) rotate(6deg)}
.oa2026 .tiger-deco--small{width:72px;height:72px;transform:rotate(7deg)}
.oa2026 h2.tiger-deco-heading{position:relative;display:inline-block;max-width:100%;padding-right:128px;min-height:108px}
.oa2026 .tiger-deco-heading>.tiger-deco{position:absolute;right:10px;top:4px;width:98px;height:98px}
.oa2026 .tiger-deco-heading>.tiger-deco--small{width:76px;height:76px}
.oa2026 .tiger-deco-booking{position:relative;padding-top:134px}
.oa2026 .tiger-deco-booking>.tiger-deco{position:absolute;top:4px;left:14px;width:120px;height:120px}
.oa2026 .section-head{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:35px}
.oa2026 .section-head.center{align-items:center;text-align:center}

/* ---------- 2. ヘッダー・メニュー ---------- */
.site-header{position:sticky;top:0;z-index:100;background:var(--paper);box-shadow:0 2px 12px #473a2310}
.admin-bar .site-header{top:32px}
.site-header .header-main{max-width:1320px;margin:auto;padding:15px 34px;min-height:84px;display:flex;align-items:center;gap:24px}
.site-header .brand{display:block;flex:0 0 290px;line-height:0}
.site-header .brand-logo{display:block;width:290px;height:45px;object-fit:contain}
.site-header .header-access{font-size:12px;margin-right:auto;line-height:1.5}
.site-header .header-access strong{display:block;font-size:17px}
.site-header .contact{display:flex;align-items:center;gap:18px}
.site-header .phone{font-size:23px;line-height:1.4;font-weight:700;white-space:nowrap}
.site-header .phone small{display:block;font-size:10px;font-weight:400}
.site-header .contact .button{background:var(--ink);color:#fff}
.site-header .nav{display:flex;justify-content:center;align-items:center;gap:32px;padding:10px 25px;border-top:1px solid #e5d6eb;font-size:13px;font-weight:600}
.site-header .nav a[aria-current="page"]{border-bottom:2px solid var(--yellow)}
.site-header .nav-menu{position:relative}
.site-header .nav-menu summary{cursor:pointer;list-style:none}
.site-header .nav-menu summary::-webkit-details-marker{display:none}
.site-header .nav-menu summary:after{content:'▾';font-size:11px;margin-left:5px;color:var(--purple-deep)}
.site-header .submenu{position:absolute;top:calc(100% + 10px);left:0;width:220px;padding:12px;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 30px #33183320;max-height:65vh;overflow:auto;z-index:40}
.site-header .submenu a{display:block;padding:8px 12px;border-radius:10px}
.site-header .submenu a:hover{background:var(--soft);opacity:1}
.site-header .menu-toggle{display:none}

@media(max-width:1050px){
	.site-header .header-access{display:none}
	.site-header .contact{margin-left:auto}
	.site-header .header-main{padding:15px 24px}
	.site-header .nav{gap:20px;font-size:12px}
	.oa2026 .wrap{width:calc(100% - 48px)}
}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:700px){
	html:root{scroll-padding-top:80px}
	.oa2026 .wrap{width:calc(100% - 32px)}
	.site-header .header-main{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;min-height:60px}
	.site-header .brand{flex:0 1 auto}
	.site-header .brand-logo{width:210px;height:auto}
	.site-header .contact{display:none}
	.site-header .menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;flex:0 0 46px;width:46px;height:46px;padding:0;border:0;border-radius:14px;background:var(--ink);cursor:pointer}
	.site-header .menu-toggle span{display:block;width:20px;height:2px;border-radius:2px;background:#fff;transition:transform .2s,opacity .2s}
	.site-header.is-open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
	.site-header.is-open .menu-toggle span:nth-child(2){opacity:0}
	.site-header.is-open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
	.site-header .nav{display:none}
	.site-header.is-open .nav{display:block;max-height:calc(100vh - 60px);max-height:calc(100dvh - 60px);overflow:auto;padding:6px 20px 18px;font-size:15px;border-top:1px solid #e5d6eb}
	.site-header.is-open .nav>a,.site-header.is-open .nav summary{display:block;padding:14px 4px;border-bottom:1px solid #eadff0}
	.site-header.is-open .nav summary{position:relative}
	.site-header.is-open .nav summary:after{content:'＋';position:absolute;right:6px;font-size:15px;color:inherit}
	.site-header.is-open .nav details[open] summary:after{content:'－'}
	.site-header.is-open .submenu{position:static;width:auto;max-height:none;padding:4px 0 8px 14px;border:0;border-radius:0;box-shadow:none;background:transparent}
	.site-header.is-open .submenu a{display:block;padding:10px 8px;font-size:14px}
}

/* ---------- 3. トップ ---------- */
.oa-front .hero{position:relative;background:var(--yellow);padding:45px 0 75px;overflow:hidden}
.oa-front .hero:after{content:'';position:absolute;bottom:-35px;left:-5%;width:110%;height:75px;background:var(--paper);border-radius:50% 50% 0 0}
.oa-front .hero-inner{position:relative;display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:32px}
.oa-front .hero-copy{position:relative;z-index:2;padding-left:15px;container-type:inline-size}
.oa-front .hero h1{font-size:min(48px,9.5cqw)}
.oa-front .hero h1 .headline-line{display:block;white-space:nowrap}
.oa-front .hero h1 em{font-style:normal;background:linear-gradient(transparent 70%,#fff 70%)}
.oa-front .hero-copy p{margin-top:20px;font-size:16px}
.oa-front .station{display:inline-block;font-size:15px;letter-spacing:.08em;margin-bottom:23px;background:#fff;border-radius:30px;padding:8px 20px;transform:rotate(-3deg)}
.oa-front .station strong{font-size:24px}
.oa-front .badges{display:flex;gap:12px;margin-top:30px}
.oa-front .badge{width:112px;height:112px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-radius:50%;background:var(--yellow);font-size:13px;line-height:1.6;box-shadow:0 0 0 5px #ffffff90}
.oa-front .badge strong{font-size:23px}
.oa-front .badge:nth-child(1){background:var(--purple);color:var(--ink)}
.oa-front .badge:nth-child(2){background:#fff}
.oa-front .badge:nth-child(3){background:var(--soft);border:2px solid var(--purple)}
.oa-front .hero-visual{position:relative}
.oa-front .portrait{position:relative;isolation:isolate;overflow:hidden;background:var(--paper);height:465px;border-radius:48% 48% 30px 30px;border:6px solid var(--paper)}
.oa-front .portrait>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none}
.oa-front .portrait>.hero-director{inset:auto 0 0;width:100%;height:94%;object-fit:cover;object-position:center bottom;z-index:1}
.oa-front .hero-tiger{position:absolute;right:-30px;bottom:-60px;width:210px;z-index:3;pointer-events:none}
.oa-front .hero-tiger img{display:block;width:100%;height:auto}

.oa-front .news{display:flex;gap:45px;align-items:center;padding:27px 0;border-bottom:1px solid var(--line)}
.oa-front .news h2{font-size:18px;white-space:nowrap;letter-spacing:.06em}
.oa-front .news-list{flex:1}
.oa-front .news-list a{display:block;font-size:13px;padding:5px 0}
.oa-front .news time{margin-right:24px;font-size:12px}

.oa-front .feature-section{background:var(--paper)}
.oa-front .feature-section .label{display:inline-block;background:var(--soft);padding:5px 20px;border-radius:30px}
.oa-front .features{display:grid;grid-template-columns:1fr;gap:32px;max-width:1000px;margin:0 auto}
.oa-front .feature{position:relative;display:grid;grid-template-columns:400px 1fr;grid-template-areas:"photo body";align-items:center;gap:40px;padding:32px 44px 32px 32px;background:#fff;border:2px solid var(--purple);border-radius:30px}
.oa-front .feature:nth-child(even){grid-template-columns:1fr 400px;grid-template-areas:"body photo";padding:32px 32px 32px 44px}
.oa-front .feature:nth-child(2){border-color:var(--yellow);background:var(--paper)}
.oa-front .feature:nth-child(3){background:#f6effa}
.oa-front .feature-visual{display:contents}
.oa-front .feature-thumb{grid-area:photo;width:100%;height:270px;object-fit:cover;border-radius:24px;display:block}
.oa-front .feature-content{grid-area:body;position:relative}
.oa-front .feature-number{grid-area:body;align-self:start;justify-self:end;margin-top:-6px;display:flex;flex-direction:column;align-items:flex-end;line-height:1;color:var(--purple-deep);letter-spacing:0;z-index:1}
.oa-front .feature-number small{font-size:12px;font-weight:700;letter-spacing:.2em;margin-bottom:4px}
.oa-front .feature-number b{font-size:44px;font-weight:800;letter-spacing:.02em;color:#9b6fb3}
.oa-front .feature h3{font-size:28px;margin:6px 0 18px;padding-right:110px}
.oa-front .feature ul{padding:0;list-style:none;margin:18px 0}
.oa-front .feature li{padding:6px 0;border-bottom:1px solid var(--line);font-size:16px}
.oa-front .feature li:before{content:'・';color:var(--accent)}

.oa-front .medical{background:var(--purple);border-radius:70px 70px 0 0}
.oa-front .medical .label{color:var(--ink)}
.oa-front .medical .intro-left{margin-top:8px}
.oa-front .menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.oa-front .menu-grid a{display:flex;flex-direction:column;padding:0;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:22px}
.oa-front .menu-grid a img{width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;display:block}
.oa-front .menu-grid a span{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;font-size:17px;font-weight:700}
.oa-front .menu-grid a span:after{content:'↗';font-size:15px;color:var(--accent)}

.oa-front .greeting{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.oa-front .greeting h2{margin:18px 0 25px}
.oa-front .greeting p{margin-bottom:20px}
.oa-front .greeting .portrait{height:auto;aspect-ratio:1;border-radius:50% 50% 20px 20px;border:1px solid #d5c8db}
.oa-front .greeting .portrait img{position:static;width:100%;height:100%;object-fit:cover}
.oa-front .director{font-size:18px}

.oa-front .tour-section{background:var(--yellow)}
.oa-front .tour{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center}
.oa-front .tour h2{margin:16px 0}
.oa-front .tour .photo{height:350px;border-radius:35px;overflow:hidden;background:#e8e7e3}
.oa-front .tour .photo img{width:100%;height:100%;object-fit:cover;display:block}
.oa-front .renewal{display:inline-block;font-size:12px;border-bottom:1px solid;margin-bottom:22px;letter-spacing:.08em}
.oa2026 .indoor-view{margin-top:20px;display:grid;gap:10px;justify-items:start}
.oa2026 .indoor-view-label{font-weight:700;margin:0}
.oa2026 .indoor-view-frame{position:relative;width:100%;aspect-ratio:4/3;border-radius:24px;overflow:hidden;border:4px solid #fff;box-shadow:0 8px 24px rgba(51,24,51,.15);background:var(--paper)}
.oa2026 .indoor-view-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

@media(max-width:1050px){
	.oa-front .hero-tiger{width:170px;right:-14px;bottom:-48px}
	.oa-front .greeting,.oa-front .tour{gap:35px}
}
@media(max-width:860px){
	.oa-front .feature,.oa-front .feature:nth-child(even){grid-template-columns:1fr;grid-template-areas:"photo" "body";gap:20px;padding:22px}
	.oa-front .feature-thumb{height:210px}
	.oa-front .feature-number{grid-area:photo;align-self:end;justify-self:end;margin:0 10px 10px 0;background:#fffc;border-radius:14px;padding:8px 12px}
	.oa-front .feature h3{font-size:22px;padding-right:0}
}
@media(max-width:700px){
	.oa2026 .section{padding:58px 0}
	.oa-custom h1{font-size:30px}.oa-custom h2{font-size:27px}.oa-custom h3{font-size:21px}
	.oa2026 h2.tiger-deco-heading{padding-right:84px;min-height:72px}
	.oa2026 .tiger-deco-heading>.tiger-deco{width:66px;height:66px;right:4px;top:2px}
	.oa2026 .tiger-deco-heading>.tiger-deco--small{width:54px;height:54px}
	.oa2026 .tiger-deco-booking{padding-top:96px}
	.oa2026 .tiger-deco-booking>.tiger-deco{width:84px;height:84px;top:5px;left:10px}
	.oa-front .hero{padding:30px 0 55px}
	.oa-front .hero-inner{grid-template-columns:1fr;gap:25px}
	.oa-front .hero-copy{padding:0}
	.oa-front .hero h1{font-size:min(33px,9.5cqw)}
	.oa-front .hero-copy p{font-size:14px}
	.oa-front .station{font-size:12px;margin-bottom:15px;padding:6px 15px}
	.oa-front .station strong{font-size:20px}
	.oa-front .badges{margin-top:25px;gap:15px}
	.oa-front .badge{width:90px;height:90px;font-size:11px}
	.oa-front .badge strong{font-size:20px}
	.oa-front .portrait{height:320px;width:92%;margin:auto}
	.oa-front .hero-tiger{width:118px;right:-6px;bottom:-34px}
	.oa-front .news{display:block;padding:25px 0}
	.oa-front .news h2{margin-bottom:12px}
	.oa-front .news time{margin-right:10px}
	.oa-front .news-list a{font-size:12px}
	.oa-front .medical{border-radius:40px 40px 0 0}
	.oa-front .menu-grid{grid-template-columns:1fr 1fr;gap:12px}
	.oa-front .menu-grid a span{padding:10px 12px;font-size:14px}
	.oa-front .greeting,.oa-front .tour{grid-template-columns:1fr;gap:28px}
	.oa-front .greeting .portrait{width:100%}
	.oa-front .tour .photo{height:260px}
}

/* ---------- 4. 下層のページタイトル・本文 ---------- */
.oa2026 .page-hero{position:relative;background:var(--yellow);padding:20px 0 48px;overflow:hidden}
.oa2026 .page-hero:after{content:'';position:absolute;bottom:-35px;left:-5%;width:110%;height:60px;border-radius:50% 50% 0 0;background:var(--paper)}
.oa2026 .page-hero--slim{padding:14px 0 40px}
.oa2026 .breadcrumb{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:12px;position:relative;z-index:1}
.oa2026 .breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.oa2026 .page-title{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:190px}
.oa2026 .page-title .label{color:var(--ink)}
.oa2026 .page-title__h{font-size:clamp(32px,3.5vw,50px);letter-spacing:.045em;line-height:1.4;font-weight:700;margin:0}
.oa2026 .title-tiger{width:170px;height:170px;object-fit:contain;flex-shrink:0;position:relative;z-index:1}

/* 本文（今の WordPress のブロックをそのまま、案1の見た目に） */
.oa-body{padding-top:70px}
.oa-prose.post_content{font-size:16px;line-height:1.95;max-width:none;margin:0}
.oa-prose>*:first-child{margin-top:0!important}
.oa-prose p{margin:0 0 1.2em}
.oa-prose a:not(.button):not([class*="swell-block"]):not(.c-btn){color:var(--purple-deep);text-decoration:underline;text-underline-offset:3px}
/* 大見出し：左寄せ・文字のすぐ右にトラ（左右を交互） */
.oa-prose h2.wp-block-heading,.oa-prose>h2{position:relative;display:flex;align-items:center;gap:18px;width:fit-content;max-width:100%;margin:96px 0 36px;padding:0;background:none;color:var(--ink);font-size:clamp(26px,2.8vw,36px);letter-spacing:.06em;line-height:1.5;text-align:left;border:0}
.oa-prose h2.wp-block-heading::before{content:none!important;display:none}
.oa-prose h2.wp-block-heading::after{content:'';flex:0 0 auto;width:90px;height:90px;background:url(../img/tiger.png) center/contain no-repeat;transform:rotate(-5deg);filter:drop-shadow(3px 0 0 #fff) drop-shadow(-3px 0 0 #fff) drop-shadow(0 3px 0 #fff) drop-shadow(0 -3px 0 #fff) drop-shadow(0 4px 6px rgba(51,24,51,.18))}
.oa-prose h2.wp-block-heading:nth-of-type(even)::after{transform:scaleX(-1) rotate(6deg)}
/* 小見出し */
.oa-prose h3.wp-block-heading,.oa-prose>h3{margin:2.2em 0 .9em;padding:0;font-size:23px;line-height:1.5;color:var(--ink);background:none;border:0}
.oa-prose h3.wp-block-heading::before{content:none!important;display:none}
.oa-prose h3.wp-block-heading{display:inline;background:linear-gradient(transparent 68%,#ffcf3899 68%);box-decoration-break:clone;-webkit-box-decoration-break:clone}
.oa-prose h3.wp-block-heading+*{margin-top:1.2em}
.oa-prose>h3.wp-block-heading{display:table}
.oa-prose h4{margin:1.8em 0 .6em;font-size:19px}
/* メディアと文章 → 案1の治療カード（写真は角丸・左右は元のまま） */
.oa-prose .wp-block-media-text{margin:30px 0;padding:36px;gap:0;background:#fff;border:2px solid var(--purple);border-radius:30px;grid-template-columns:46% 1fr;align-items:center}
.oa-prose .wp-block-media-text.has-media-on-the-right{grid-template-columns:1fr 46%;border-color:var(--yellow)}
.oa-prose .wp-block-media-text__media{border-radius:24px;overflow:hidden;align-self:center}
.oa-prose .wp-block-media-text__media img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}
.oa-prose .wp-block-media-text.is-image-fill-element .wp-block-media-text__media{min-height:280px}
.oa-prose .wp-block-media-text.is-image-fill-element .wp-block-media-text__media img{position:absolute;height:100%;aspect-ratio:auto}
.oa-prose .wp-block-media-text__content{padding:0 0 0 44px}
.oa-prose .has-media-on-the-right .wp-block-media-text__content{padding:0 44px 0 0}
.oa-prose .wp-block-media-text__content>*:first-child{margin-top:0}
.oa-prose .wp-block-media-text__content>*:last-child{margin-bottom:0}
.oa-prose .wp-block-media-text__content p:empty{display:none}
/* 相談項目（チェックのリスト）→ 紫の帯に白い丸札・黄色の点 */
.oa-prose .wp-block-group.is-style-bg_stripe,.oa-prose .wp-block-group.has-border{background:none;border:0;padding:0;box-shadow:none}
.oa-prose .wp-block-group.is-style-bg_stripe::before,.oa-prose .wp-block-group.is-style-bg_stripe::after{content:none}
.oa-prose ul.is-style-check_list,.oa-prose ol.is-style-check_list{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0 40px;padding:40px;background:var(--purple);border-radius:40px;border:0}
.oa-prose .is-style-check_list>li{position:relative;display:flex;gap:14px;align-items:center;margin:0;padding:22px 24px!important;background:#fff;border-radius:22px;border:0!important;font-size:17px;line-height:1.6}
.oa-prose .is-style-check_list>li::before{content:''!important;position:static!important;flex-shrink:0;width:12px;height:12px;background:var(--yellow)!important;border-radius:50%;font-family:inherit;transform:none;margin:0}
.oa-prose .is-style-check_list>li::after{content:none!important}
/* よい点・注意のリスト */
.oa-prose .is-style-good_list,.oa-prose .is-style-bad_list{background:#fff;border-radius:22px;padding:22px 26px 22px 46px;border:1px solid var(--line)}
/* ボックスメニュー（表面麻酔 など）→ 案1の丸い札（タグ）を横に並べる */
.oa-prose .swell-block-box-menu{margin:20px 0 34px}
.oa-prose .swell-block-box-menu .swell-block-box-menu__inner{display:flex;flex-wrap:wrap;gap:10px;grid-template-columns:none}
.oa-prose .swell-block-box-menu .swell-block-box-menu__item{width:auto;flex:0 0 auto;background:var(--soft);border:0!important;border-radius:30px;box-shadow:none;margin:0}
.oa-prose .swell-block-box-menu .swell-block-box-menu__link{display:flex;flex-direction:row;align-items:center;gap:10px;padding:8px 22px 8px 12px;min-height:0}
.oa-prose .swell-block-box-menu .swell-block-box-menu__figure{width:30px;height:30px;margin:0;flex:0 0 30px}
.oa-prose .swell-block-box-menu .swell-block-box-menu__figure img{width:30px;height:30px;object-fit:contain}
.oa-prose .swell-block-box-menu .swell-block-box-menu__text{font-weight:700;font-size:15px;margin:0}
/* キャプション枠（リスク・注意事項など） */
.oa-prose .cap_box{margin:30px 0}
.oa-prose .cap_box_ttl{background:var(--soft);color:var(--ink);border-radius:30px 30px 0 0;font-weight:700}
.oa-prose .cap_box.is-style-onborder_ttl2 .cap_box_ttl{background:var(--paper);border-radius:30px;padding:4px 18px}
.oa-prose .cap_box_content{background:#fff;border:2px solid var(--purple)!important;border-radius:0 0 26px 26px;padding:26px 30px}
.oa-prose .cap_box.is-style-onborder_ttl2 .cap_box_content{border-radius:26px}
/* ステップ */
.oa-prose .swell-block-step{margin:30px 0}
.oa-prose .swell-block-step__number{background:var(--yellow)!important;color:var(--ink)!important;font-weight:800}
.oa-prose .swell-block-step__item{padding-bottom:26px}
.oa-prose .swell-block-step__item::before{background:var(--line)!important}
.oa-prose .swell-block-step__title{font-weight:700;font-size:21px}
/* アコーディオン */
.oa-prose .swell-block-accordion__item{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;margin-bottom:12px}
.oa-prose .swell-block-accordion__title{background:var(--soft);color:var(--ink);font-weight:700}
/* 表 */
.oa-prose .wp-block-table{margin:24px 0 30px;overflow-x:auto}
.oa-prose .wp-block-table table{background:#fff;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:20px;overflow:hidden;font-family:var(--oa-font)}
.oa-prose .wp-block-table th,.oa-prose .wp-block-table td{border:0;border-bottom:1px solid var(--line);padding:16px 18px}
.oa-prose .wp-block-table tr:last-child>*{border-bottom:0}
.oa-prose .wp-block-table table.has-fixed-layout{table-layout:auto}
.oa-prose .wp-block-table thead th,.oa-prose .wp-block-table thead td{background:var(--purple);color:#fff;font-weight:700;white-space:nowrap}
.oa-prose .wp-block-table tbody th{background:var(--soft)}
.oa-prose .wp-block-table td{min-width:2.5em}
.oa-prose .wp-block-media-text .wp-block-table th,.oa-prose .wp-block-media-text .wp-block-table td{padding:12px 6px;text-align:center}
.oa-prose .wp-block-media-text .wp-block-table tbody td:first-child{white-space:nowrap}
/* 画像・地図・区切り・ボタン・枠 */
.oa-prose .wp-block-image img{border-radius:24px}
.oa-prose iframe{max-width:100%;border:0;border-radius:30px}
.oa-prose iframe[src*="google.com/maps"]{width:100%;height:450px;display:block;background:#fff}
.oa-prose hr.wp-block-separator{border:0;border-top:1px solid var(--line);margin:28px 0;opacity:1}
.oa-prose .swell-block-button .swell-block-button__link,.oa-prose .c-btn{background:var(--ink)!important;color:#fff!important;border-radius:50px!important;border:0}
.oa-prose p.has-border,.oa-prose .is-style-bg_grid,.oa-prose .is-style-bg_stripe:not(.wp-block-group){background:#fff;border:2px solid var(--purple)!important;border-radius:22px;padding:22px 26px}
.oa-prose .is-style-stitch{border-radius:22px}
.oa-prose .swell-block-fullWide{border-radius:40px}
/* お問い合わせフォーム（Contact Form 7） */
.oa-prose .wpcf7 input[type=text],.oa-prose .wpcf7 input[type=email],.oa-prose .wpcf7 input[type=tel],.oa-prose .wpcf7 textarea,.oa-prose .wpcf7 select{width:100%;padding:12px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;font:inherit}
.oa-prose .wpcf7 input[type=submit]{background:var(--ink);color:#fff;border:0;border-radius:50px;padding:15px 40px;font:inherit;font-weight:700;cursor:pointer}

@media(max-width:1050px){
	.oa-prose ul.is-style-check_list,.oa-prose ol.is-style-check_list{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
	.oa2026 .page-hero{padding-top:16px;padding-bottom:36px}
	.oa2026 .breadcrumb{font-size:11px;gap:7px}
	.oa2026 .page-title{min-height:140px;gap:12px}
	.oa2026 .page-title .label{font-size:10px;letter-spacing:.1em}
	.oa2026 .page-title__h{font-size:28px}
	.oa2026 .title-tiger{width:85px;height:85px}
	.oa-body{padding-top:44px}
	.oa-prose.post_content{font-size:15px}
	.oa-prose h2.wp-block-heading,.oa-prose>h2{font-size:22px;letter-spacing:.03em;margin:64px 0 26px;gap:8px}
	.oa-prose h2.wp-block-heading::after{width:54px;height:54px}
	.oa-prose h3.wp-block-heading,.oa-prose>h3{font-size:20px}
	.oa-prose .wp-block-media-text,.oa-prose .wp-block-media-text.has-media-on-the-right{display:block;padding:20px}
	.oa-prose .wp-block-media-text__media{margin-bottom:20px}
	.oa-prose .wp-block-media-text.is-image-fill-element .wp-block-media-text__media{min-height:0}
	.oa-prose .wp-block-media-text.is-image-fill-element .wp-block-media-text__media img{position:static;height:auto;aspect-ratio:3/2}
	.oa-prose .wp-block-media-text__content,.oa-prose .has-media-on-the-right .wp-block-media-text__content{padding:0}
	.oa-prose .has-media-on-the-right .wp-block-media-text__media{margin:0 0 20px}
	.oa-prose ul.is-style-check_list,.oa-prose ol.is-style-check_list{grid-template-columns:1fr;gap:10px;padding:22px;border-radius:28px}
	.oa-prose .is-style-check_list>li{font-size:15px;padding:16px 20px!important}
	.oa-prose .cap_box_content{padding:20px}
	.oa-prose iframe[src*="google.com/maps"]{height:330px;border-radius:25px}
	.oa-prose .wp-block-table th,.oa-prose .wp-block-table td{padding:10px 8px;font-size:13px}
	.oa-prose .wp-block-media-text .wp-block-table th,.oa-prose .wp-block-media-text .wp-block-table td{padding:10px 2px;font-size:11.5px;letter-spacing:0}
}

/* ---------- 5. アクセス・予約・フッター・スマホの固定バー ---------- */
.oa2026 .access{background:var(--soft)}
.oa2026 .access-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:70px}
.oa2026 .access__h{font-size:clamp(27px,2.8vw,38px);letter-spacing:.06em;line-height:1.5;margin:0 0 24px;font-weight:700}
.oa2026 .access p{font-size:14px;margin:0}
.oa2026 .access .phone{display:inline-block;margin:22px 0;font-size:23px;font-weight:700}
.oa2026 .table-wrap{background:#fff;border-radius:20px;padding:25px}
.oa2026 table.oa-hours{width:100%;border-collapse:collapse;font-size:13px;text-align:center;margin:0;border:0}
.oa2026 table.oa-hours caption{text-align:left;font-size:19px;font-weight:700;padding-bottom:18px;caption-side:top}
.oa2026 table.oa-hours th,.oa2026 table.oa-hours td{padding:13px 4px;border:0;border-bottom:1px solid var(--line);background:none}
.oa2026 table.oa-hours th{font-weight:500}
.oa2026 table.oa-hours thead th{color:var(--accent)}
.oa2026 table.oa-hours tbody th{white-space:nowrap}
.oa2026 table.oa-hours td{color:var(--accent)}
.oa2026 .hours-note{font-size:12px!important;margin-top:12px!important}
.oa2026 .access-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}

.oa-footer{border-top:1px solid #e5d6eb;padding:40px 0 100px;font-size:12px;background:var(--paper);color:var(--ink)}
.oa-footer .wrap{display:flex;justify-content:space-between;gap:25px}
.oa-footer .tiger-deco-footer{position:relative;padding-top:134px}
.oa-footer .tiger-deco-footer>.tiger-deco{position:absolute;right:14px;top:4px;width:120px;height:120px}
.oa-footer .footer-links{display:flex;flex-wrap:wrap;gap:12px 20px;align-content:flex-start;justify-content:flex-end;max-width:60%}
.oa2026 .mobile-book{display:none}

@media(max-width:1050px){.oa2026 .access-grid{gap:35px}}
@media(max-width:700px){
	.oa2026 .access-grid{grid-template-columns:1fr;gap:28px}
	.oa2026 .table-wrap{padding:15px 11px}
	.oa2026 table.oa-hours{font-size:11px}
	.oa2026 table.oa-hours th,.oa2026 table.oa-hours td{padding:12px 3px}
	.oa2026 .access .phone{font-size:28px}
	.oa2026 .access-actions .button{padding:13px 20px}
	.oa-footer{padding-bottom:calc(90px + env(safe-area-inset-bottom))}
	.oa-footer .wrap{display:block}
	.oa-footer .tiger-deco-footer{padding-top:96px}
	.oa-footer .tiger-deco-footer>.tiger-deco{width:84px;height:84px}
	.oa-footer .footer-links{margin:20px 0;justify-content:flex-start;max-width:none}
	.oa2026 .mobile-book{display:grid;grid-template-columns:1fr 1.3fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:90;background:#fff;box-shadow:0 -4px 20px #0001;padding-bottom:env(safe-area-inset-bottom)}
	.oa2026 .mobile-book a{text-align:center;padding:14px 5px;font-size:12px;font-weight:700}
	.oa2026 .mobile-book a:nth-child(2){background:var(--ink);color:#fff}
	.oa2026 .mobile-book a:nth-child(3){background:var(--line-green);color:#fff}
	.oa2026 .p-fixBtnWrap{bottom:calc(64px + env(safe-area-inset-bottom))}
}

/* ---------- 6. ホワイトニングLP ---------- */
.oa-lp .lp-wrap{max-width:1000px}
.oa-lp .lp-hero{background:var(--yellow);padding:20px 0 52px;border-radius:0 0 64px 64px}
.oa-lp .lp-hero-grid{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:40px;padding-top:38px}
.oa-lp .lp-hero .label{font-size:11px;color:var(--ink)}
.oa-lp .lp-hero h1{font-size:clamp(24px,2.5vw,34px);letter-spacing:0}
.oa-lp .lp-price{display:block;font-family:'Noto Sans JP','Hiragino Sans',sans-serif;font-size:clamp(76px,8vw,116px);font-weight:700;line-height:1.2;letter-spacing:-.06em}
.oa-lp .lp-price>span{font-family:var(--oa-font);font-size:34px;margin-left:8px;letter-spacing:0}
.oa-lp .lp-price-note{display:inline-block;font-size:20px;letter-spacing:.05em;margin:12px 0 22px;border-bottom:2px solid var(--ink);padding-bottom:4px}
.oa-lp .lp-actions{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:10px;max-width:570px}
.oa-lp .lp-actions .button{justify-content:center;gap:12px;padding:16px 14px;font-size:15px;min-height:54px;white-space:nowrap}
.oa-lp .lp-actions .lp-phone{background:var(--paper);color:var(--ink);border-color:var(--ink)}
.oa-lp .lp-hero-note{margin:18px 0 8px;font-size:14px;line-height:1.8}
.oa-lp .lp-underlink{display:inline-block;text-decoration:underline;text-underline-offset:4px;font-size:13px;padding:8px 0}
.oa-lp .lp-tiger{text-align:center;transform:rotate(4deg)}
.oa-lp .lp-tiger img{width:320px;max-width:100%;margin:auto;display:block}
.oa-lp .lp-tiger span{display:block;margin-top:20px;letter-spacing:.12em;font-weight:700}
.oa-lp .mobile-break{display:none}
.oa-lp .lp-index{padding:24px 0;border-bottom:1px solid var(--line)}
.oa-lp .lp-index .wrap{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
.oa-lp .lp-index a{font-size:13px;border-bottom:1px solid var(--purple);padding:4px 0}
.oa-lp .oa-prose .wp-block-table td{font-size:17px}
.oa-lp .oa-prose .wp-block-table tr:first-child{background:#fff0b8}
.oa-lp .oa-prose .wp-block-table td mark{color:var(--ink)!important}
.oa-lp .oa-prose .wp-block-table .swl-cell-bg{display:none}
.oa-lp .oa-prose .wp-block-table td:first-child{font-weight:700;background:var(--soft)}
.oa-lp .oa-prose .swell-block-step__number{width:64px;height:64px}
.oa-lp .lp-reservation{background:var(--yellow);text-align:center;border-radius:60px 60px 0 0}
.oa-lp .lp-reservation h2{font-size:clamp(25px,3vw,36px);margin-bottom:10px}
.oa-lp .lp-reservation .label{color:var(--ink)}
.oa-lp .lp-reservation .lp-actions{margin:auto}
.oa-lp .lp-reservation .tiger-deco-booking>.tiger-deco{left:50%;margin-left:-60px}
.oa-lp .lp-book-phone{font-size:13px;margin-top:22px}
.oa-lp .lp-book-phone a{font-size:26px;font-weight:700}
@media(max-width:700px){
	.oa-lp .lp-hero{padding:16px 0 28px;border-radius:0 0 32px 32px}
	.oa-lp .lp-hero-grid{position:relative;display:block;padding-top:24px}
	.oa-lp .lp-hero .label{font-size:9px;letter-spacing:.06em;max-width:255px}
	.oa-lp .lp-hero h1{font-size:23px;line-height:1.6}
	.oa-lp .lp-price{font-size:80px;line-height:1.16}
	.oa-lp .lp-price>span{font-size:27px}
	.oa-lp .lp-price-note{font-size:17px;margin:9px 0 20px}
	.oa-lp .lp-tiger{position:absolute;right:0;top:100px;width:80px;pointer-events:none}
	.oa-lp .lp-tiger img{width:80px}
	.oa-lp .lp-tiger span{display:none}
	.oa-lp .lp-actions{gap:7px}
	.oa-lp .lp-actions .button{font-size:13px;padding:13px 9px;gap:7px;min-height:50px}
	.oa-lp .lp-actions .button:after{font-size:13px}
	.oa-lp .lp-hero-note{font-size:12px;margin-top:15px}
	.oa-lp .lp-hero .lp-underlink{font-size:11px}
	.oa-lp .mobile-break{display:block}
	.oa-lp .lp-index{padding:17px 0}
	.oa-lp .lp-index .wrap{justify-content:flex-start;gap:8px 20px}
	.oa-lp .lp-index a{font-size:12px}
	.oa-lp .lp-reservation{border-radius:32px 32px 0 0}
	.oa-lp .lp-reservation .tiger-deco-booking>.tiger-deco{margin-left:-42px}
	.oa-lp .oa-prose .wp-block-table td{font-size:14px}
}
@media(max-width:360px){
	.oa-lp .lp-hero h1{font-size:20px}
	.oa-lp .lp-price{font-size:70px}
	.oa-lp .lp-tiger{width:64px;top:96px}
	.oa-lp .lp-actions .button{font-size:12px;padding-inline:6px;gap:4px}
}

/* ---------- 7. 投稿・一覧（SWELL の中身のまま） ---------- */
/* 一覧の見出しは黄色のページタイトル(h1)に一本化 */
.oa2026.blog .l-mainContent .c-pageTitle,.oa2026.archive .l-mainContent .c-pageTitle,.oa2026.search .l-mainContent .c-pageTitle{display:none}
.oa2026:not(.oa-custom) .l-content{padding-top:40px}
.oa2026:not(.oa-custom) .c-pageTitle,.oa2026:not(.oa-custom) .c-postTitle__ttl{color:var(--ink)}
.oa2026 .p-postList__item .p-postList__thumb,.oa2026 .p-postList__thumb img{border-radius:18px}
.oa2026 .p-postList.-type-card .p-postList__link,.oa2026 .p-postList.-type-list .p-postList__link{border-radius:20px}
.oa2026 .c-categoryList__link,.oa2026 .c-tagList__link{border-radius:20px}
.oa2026 .l-mainContent .post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)){border-radius:16px}
.oa2026 .l-mainContent .post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before{content:none}
.oa2026 .c-pagination .page-numbers.current{background:var(--ink)}
.oa2026 .p-articleThumb__img,.oa2026 .p-articleThumb img{border-radius:24px}
.oa2026 .l-sidebar .c-widget__title{background:var(--soft);color:var(--ink);border-radius:14px}

/* 箱の中の○×の箇条書きは枠を付けない（二重の枠にしない・2026-10-20 オーナー） */
.oa-prose .cap_box_content .is-style-good_list,.oa-prose .cap_box_content .is-style-bad_list{border:0;background:transparent;padding:0 0 0 26px;margin:0}
/* STEP の中の区切り線は出さない（本文の1つ目のSTEPにだけ入っていて意味の無い線に見える・2026-10-20 オーナー） */
.oa-prose .swell-block-step__body hr.wp-block-separator{display:none}
/* お支払い方法：丸い2つの絵（2026-10-20 オーナー・サイトの色に合わせる） */
.oa-pay{display:flex;justify-content:center;gap:56px;flex-wrap:wrap;margin:34px auto 10px;padding:34px 20px;background:var(--soft);border-radius:36px;max-width:720px}
.oa-pay__item{text-align:center}
.oa-pay__circle{width:170px;height:170px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:4px solid #fff;box-shadow:0 8px 22px rgba(51,24,51,.12)}
.oa-pay__circle svg{width:86px;height:86px}
.oa-pay__circle--cash{background:#F7CC4A;color:#331833}
.oa-pay__circle--card{background:#9b6fb3;color:#fff}
.oa-pay__label{margin:14px 0 0;font-weight:800;font-size:18px}
@media(max-width:700px){.oa-pay{gap:24px;padding:24px 12px}.oa-pay__circle{width:124px;height:124px}.oa-pay__circle svg{width:62px;height:62px}.oa-pay__label{font-size:15px}}
/* 見出し付きの箱の中では、飾りの形（方眼・ストライプ・ステッチ・枠つき段落・○×の箇条書き）に枠を付けない＝二重の枠にしない（2026-10-20 オーナー） */
.oa-prose .cap_box_content p.has-border,.oa-prose .cap_box_content .is-style-bg_grid,.oa-prose .cap_box_content .is-style-bg_stripe,.oa-prose .cap_box_content .is-style-stitch{background:transparent;border:0!important;border-radius:0;padding:0;box-shadow:none}
/* 採用ページ（2026-10-20 オーナー「文章やデザインをもっと魅力的に」） */
.oa-rec{--purple2:#9b6fb3}
.oa-rec-intro{text-align:center;background:#fff;border-radius:40px;padding:48px 28px 40px;margin:10px 0 50px;border:3px solid var(--soft)}
.oa-rec-label{display:inline-block;background:var(--soft);color:#684278;font-weight:800;letter-spacing:.2em;font-size:12px;padding:6px 16px;border-radius:30px}
.oa-rec-catch{font-size:clamp(26px,3.2vw,40px);line-height:1.5;margin:18px 0 18px!important;border:0!important;padding:0!important;background:none!important}
.oa-rec-catch:before,.oa-rec-catch:after{content:none!important}
.oa-rec-intro p{line-height:2;margin:0 auto 24px;max-width:640px}
.oa-rec-jump{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.oa-rec-jump .button{display:inline-flex;padding:14px 26px;border-radius:40px;background:var(--accent);color:#fff;font-weight:700;text-decoration:none}
.oa-rec-jump .button.line{background:#06C755}
.oa-rec-section{margin:0 0 56px}
.oa-rec-h2{text-align:center;font-size:clamp(22px,2.4vw,30px);margin:0 0 26px!important;border:0!important;padding:0!important;background:none!important}
.oa-rec-h2:before,.oa-rec-h2:after{content:none!important}
.oa-rec-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.oa-rec-card{background:#fff;border:2px solid var(--soft);border-radius:26px;padding:22px 20px;text-align:center}
.oa-rec-ico{display:inline-flex;width:64px;height:64px;border-radius:50%;background:#F7CC4A;align-items:center;justify-content:center;font-size:30px}
.oa-rec-card h3{font-size:17px;margin:12px 0 6px!important;border:0!important;padding:0!important;background:none!important}
.oa-rec-card h3:before,.oa-rec-card h3:after{content:none!important}
.oa-rec-card p{font-size:14px;margin:0;line-height:1.8}
.oa-rec-jobs{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.oa-rec-job{background:#fff;border:3px solid var(--purple2);border-radius:30px;padding:28px}
.oa-rec-job h3{font-size:24px;margin:0 0 12px!important;border:0!important;padding:0!important;background:none!important;color:#684278}
.oa-rec-job h3:before,.oa-rec-job h3:after{content:none!important}
.oa-rec-tags{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0!important;margin:0 0 18px!important}
.oa-rec-tags li{background:var(--soft);border-radius:30px;padding:5px 12px;font-size:13px;font-weight:700;margin:0!important}
.oa-rec-tags li:before{content:none!important}
.oa-rec-pay{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}
.oa-rec-pay div{background:#FFF6D9;border-radius:18px;padding:14px;text-align:center}
.oa-rec-pay dt{font-size:13px;font-weight:700;color:#684278}
.oa-rec-pay dd{margin:4px 0 0;font-size:22px;font-weight:800}
.oa-rec-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:22px;overflow:hidden;border:2px solid var(--soft)}
.oa-rec-table th,.oa-rec-table td{padding:16px 18px;border-bottom:1px solid var(--soft);text-align:left;vertical-align:top}
.oa-rec-table th{width:22%;background:#faf5fc;font-weight:700;white-space:nowrap}
.oa-rec-table tr:last-child th,.oa-rec-table tr:last-child td{border-bottom:0}
.oa-rec-note{font-size:13px;color:#7a6b7d;margin-top:10px}
.oa-rec-flow{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:0!important;margin:0!important;counter-reset:none}
.oa-rec-flow li{background:#fff;border-radius:26px;padding:24px 20px;position:relative;border:2px solid var(--soft);margin:0!important}
.oa-rec-flow li:before{content:none!important}
.oa-rec-flow b{display:inline-flex;width:40px;height:40px;border-radius:50%;background:var(--accent);color:#fff;align-items:center;justify-content:center;font-size:18px}
.oa-rec-flow h3{font-size:18px;margin:10px 0 6px!important;border:0!important;padding:0!important;background:none!important}
.oa-rec-flow h3:before,.oa-rec-flow h3:after{content:none!important}
.oa-rec-flow p{font-size:14px;margin:0;line-height:1.8}
.oa-rec-lead{text-align:center;margin:-10px 0 20px}
.oa-rec-form{background:#fff;border:3px solid var(--purple2);border-radius:32px;padding:32px 36px;max-width:760px;margin:0 auto}
.oa-f-row{margin:0 0 20px!important}
.oa-f-label{display:block;font-weight:700;margin-bottom:8px}
.oa-f-label em{font-style:normal;background:#e2524a;color:#fff;font-size:11px;border-radius:6px;padding:2px 7px;margin-left:6px;vertical-align:middle}
.oa-rec-form input[type=text],.oa-rec-form input[type=email],.oa-rec-form input[type=tel],.oa-rec-form textarea{width:100%;border:2px solid #e3d6ea;border-radius:14px;padding:12px 14px;font-size:16px;background:#fffdf8}
.oa-rec-form textarea{min-height:140px}
.oa-rec-form .wpcf7-radio,.oa-rec-form .wpcf7-checkbox{display:flex;flex-wrap:wrap;gap:10px}
.oa-rec-form .wpcf7-list-item{margin:0}
.oa-rec-form .wpcf7-list-item label{display:inline-flex;align-items:center;gap:8px;border:2px solid #e3d6ea;border-radius:30px;padding:10px 18px;cursor:pointer;font-weight:700;background:#fff}
.oa-rec-form .wpcf7-list-item label:has(input:checked){border-color:var(--purple2);background:var(--soft)}
.oa-f-submit{text-align:center;margin:28px 0 0!important}
.oa-rec-form input[type=submit]{background:var(--accent);color:#fff;border:0;border-radius:40px;padding:16px 46px;font-size:17px;font-weight:800;cursor:pointer}
.sp-only{display:none}
@media(max-width:860px){.oa-rec-cards,.oa-rec-flow{grid-template-columns:1fr 1fr}.oa-rec-jobs{grid-template-columns:1fr}}
@media(max-width:600px){.sp-only{display:inline}.oa-rec-cards,.oa-rec-flow{grid-template-columns:1fr}.oa-rec-intro{padding:34px 18px 28px;border-radius:28px}.oa-rec-form{padding:22px 16px;border-radius:24px}.oa-rec-table th{width:30%;white-space:normal}.oa-rec-pay dd{font-size:18px}}
.oa-prose .oa-rec h2.oa-rec-catch,.oa-prose .oa-rec h2.oa-rec-h2{color:var(--ink)!important;text-align:center}
/* 採用：スマホは働きやすさを2列で小さく・応募の流れは横に絵＋文で詰める（2026-10-20 オーナー「並びすぎ・一つずつを小さく」） */
@media(max-width:600px){
.oa-rec-cards{grid-template-columns:1fr 1fr;gap:10px}
.oa-rec-card{padding:14px 10px;border-radius:18px}
.oa-rec-ico{width:44px;height:44px;font-size:22px}
.oa-rec-card h3{font-size:14px;margin:8px 0 4px!important}
.oa-rec-card p{font-size:12px;line-height:1.6}
.oa-rec-flow{gap:10px}
.oa-rec-flow li{display:grid;grid-template-columns:36px 1fr;column-gap:12px;padding:14px 16px;border-radius:18px}
.oa-rec-flow b{width:36px;height:36px;font-size:16px;grid-row:1/3}
.oa-rec-flow h3{margin:4px 0 2px!important;font-size:16px}
.oa-rec-flow p{font-size:13px}
.oa-rec-section{margin-bottom:40px}
}
/* 採用フォーム：個人情報の説明と同意（2026-10-20 オーナー） */
.oa-f-privacy{background:#faf5fc;border-radius:16px;padding:16px 18px;margin:10px 0 0}
.oa-f-privacy p{font-size:13px;line-height:1.8;margin:0 0 10px!important}
.oa-f-privacy .wpcf7-acceptance .wpcf7-list-item label{border:0;padding:0;background:none;font-weight:700}
.oa-rec-form input[type=submit]:disabled{opacity:.45;cursor:not-allowed}
.oa-rec-job-tag{display:inline-block;background:var(--soft);color:#684278;font-size:12px;font-weight:800;border-radius:20px;padding:2px 10px;margin-right:8px}
/* 採用：職種ごとに条件の表（2026-10-20 オーナー「歯科医師と歯科衛生士それぞれ分けて」） */
.oa-rec-jobs{align-items:start}
.oa-rec-table--job{margin-top:18px;border-width:1px}
.oa-rec-table--job th,.oa-rec-table--job td{padding:12px 14px;font-size:14px}
.oa-rec-table--job th{width:26%}
@media(max-width:600px){.oa-rec-job{padding:20px 16px}.oa-rec-table--job th,.oa-rec-table--job td{padding:10px;font-size:13px}.oa-rec-table--job th{width:30%}}
/* アクセス欄の地図（2026-10-20 オーナー「すぐに場所見たくない？」） */
.access .oa-map{margin-top:28px}
.access .oa-map iframe{display:block;width:100%;height:340px;border:0;border-radius:16px;background:var(--soft)}
.access .oa-map .text-link{display:inline-block;margin-top:10px}
@media(max-width:600px){.access .oa-map iframe{height:260px}}
/* 特徴の札を大きく（2026-10-20 オーナー「小さくない？」） */
.oa-prose .swell-block-box-menu .swell-block-box-menu__inner{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.oa-prose .swell-block-box-menu .swell-block-box-menu__item{width:auto;border-radius:20px}
.oa-prose .swell-block-box-menu .swell-block-box-menu__link{gap:16px;padding:18px 22px}
.oa-prose .swell-block-box-menu .swell-block-box-menu__figure{width:64px;height:64px;flex:0 0 64px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center}
.oa-prose .swell-block-box-menu .swell-block-box-menu__figure img{width:44px;height:44px}
.oa-prose .swell-block-box-menu .swell-block-box-menu__text{font-size:18px;line-height:1.4}
@media(max-width:600px){.oa-prose .swell-block-box-menu .swell-block-box-menu__inner{grid-template-columns:1fr 1fr;gap:10px}.oa-prose .swell-block-box-menu .swell-block-box-menu__link{flex-direction:column;text-align:center;gap:8px;padding:16px 10px}.oa-prose .swell-block-box-menu .swell-block-box-menu__figure{width:56px;height:56px;flex-basis:56px}.oa-prose .swell-block-box-menu .swell-block-box-menu__figure img{width:38px;height:38px}.oa-prose .swell-block-box-menu .swell-block-box-menu__text{font-size:15px}}
.oa-prose .swell-block-box-menu .swell-block-box-menu__link{justify-content:flex-start}
.oa-prose .swell-block-box-menu .swell-block-box-menu__text{flex:1;text-align:left;font-size:19px!important}
@media(max-width:600px){.oa-prose .swell-block-box-menu .swell-block-box-menu__link{justify-content:center}.oa-prose .swell-block-box-menu .swell-block-box-menu__text{flex:none;text-align:center;font-size:15px!important}}
/* ブログ記事の監修の欄（2026-10-20） */
.oa-sv{margin:48px 0 8px;border:2px solid #a98ac3;border-radius:20px;background:#fff;padding:22px 24px}
.oa-sv__label{display:inline-block;margin:0 0 14px;background:var(--soft);color:#684278;font-weight:800;font-size:13px;border-radius:20px;padding:3px 14px}
.oa-sv__body{display:flex;gap:20px;align-items:flex-start}
.oa-sv__photo{width:96px;height:96px;border-radius:50%;object-fit:cover;object-position:50% 30%;flex:0 0 96px;margin:0!important}
.oa-sv__name{margin:0 0 6px!important;font-size:20px;font-weight:800;color:var(--ink)}
.oa-sv__name span{display:block;font-size:13px;font-weight:700;color:#684278;margin-top:2px}
.oa-sv__creds{list-style:none;margin:0 0 8px!important;padding:0!important;display:flex;flex-wrap:wrap;gap:6px}
.oa-sv__creds li{margin:0!important;font-size:12px;background:var(--paper);border:1px solid #e5d6eb;border-radius:14px;padding:2px 10px}
.oa-sv__creds li::before{display:none}
.oa-sv__career{font-size:14px;line-height:1.8;margin:0 0 8px!important}
@media(max-width:600px){.oa-sv{padding:18px 16px}.oa-sv__body{flex-direction:column;align-items:center;text-align:center}.oa-sv__creds{justify-content:center}.oa-sv__career{text-align:left}}
/* ページ上へのボタンをロゴの虎に（2026-10-20 オーナー「これロゴにして上に行くように」） */
#pagetop.c-fixBtn{width:76px;height:76px;background:url(../img/tiger.png) center 2px/66px no-repeat!important;border:0!important;box-shadow:none!important;border-radius:0;opacity:1;overflow:visible}
#pagetop.c-fixBtn .c-fixBtn__icon{display:none}
#pagetop.c-fixBtn::after{content:"TOP";position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);background:#a98ac3;color:#fff;font-size:11px;font-weight:800;letter-spacing:.08em;line-height:1;padding:4px 9px 3px;border-radius:12px}
#pagetop.c-fixBtn:hover{transform:translateY(-4px);transition:transform .2s}
@media(max-width:959px){#pagetop.c-fixBtn{width:62px;height:62px;background-size:54px!important}}
#pagetop.c-fixBtn{filter:drop-shadow(0 3px 6px rgba(80,50,100,.25))}
/* 目次で飛んだ見出しが固定ヘッダーの裏に隠れない（2026-10-20 オーナー「H2じゃなくてH3にとんでない？」） */
[id^="sec-"],.oa-prose h2[id],.oa-prose h3[id]{scroll-margin-top:24px}
@media(max-width:959px){[id^="sec-"],.oa-prose h2[id],.oa-prose h3[id]{scroll-margin-top:24px}}
/* 「こんな場合は」の印を丸からチェックに（2026-10-20 オーナー「チェックマークの方が良くない？」） */
.oa-prose .is-style-check_list>li::before{width:22px!important;height:22px!important;border-radius:0!important;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='12' fill='%23ffcf38'/%3E%3Cpath d='M6.5 12.5l3.6 3.6 7.4-7.6' fill='none' stroke='%23331833' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat!important}
/* 正式なロゴ（トラ＋大阪あわじ歯科＋OSAKA AWAJI DENTAL CLINIC・看板と同じ）に差し替え（2026-10-20 オーナー「ヘッダーの文字あってない」） */
.site-header .brand-logo{width:auto;height:60px;max-width:300px}
.oa-footer .footer-logo{display:block;width:240px;height:auto;margin:0 0 10px}
@media(max-width:959px){.site-header .brand-logo{width:auto;height:46px;max-width:210px}.oa-footer .footer-logo{width:200px}}
