/* ==============================================================
   共通部品の CSS(15、2026-10-19): グローバルメニュー(cnt/Cnt_Gmenu.php)・ドロワー(cnt/Cnt_Drawer.php)・
   右側の固定ボタン(.SideBnr1 / .SideBnr2)・フッター(cnt/Cnt_Footer.php)
   - mainstyle.css(基底・SP・PC)と mainstyle202103.css(固定ボタンの CSS 化)から、並び順を保ったまま移した。
     全ページで mainstyle202103.css の直後に読む(functions.php acmssa_enqueue_styles)。
   - 回ごとの LP(single-business/lp/sNN.php)はテーマの CSS を読まないので、この 1 本だけ読んで共通部品を出す。
     LP だけに効く「下地」(html5reset / default.css の代わり)とヘッダーの常時固定は末尾の .lp ブロック
   ============================================================== */

/* ---- mainstyle.css: 固定ボタン(基底・SP) ---- */

.SideBnr1 {
    position: fixed;
    z-index: 50;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .SideBnr1{
        left: 0;
        width: 50%;
        bottom: -1px;
        background-color: rgba(224,7,27,1.00);
    }
}

.SideBnr2 {
    position: fixed;
    right: 0;
    z-index: 50;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .SideBnr2{
        width: 50%;
        bottom: -1px;
        background-color: rgba(224,7,27,1.00);
    }
    .SideBnr1 img, .SideBnr2 img{
        width: 100%;
    }
}

/* ---- mainstyle.css: メニューの固定(cnfg.js がスクロールで #GmenuWrap に付ける) ---- */
.gmenufixed {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 900;
	box-shadow: 0px 10px 40px -10px rgba(0,0,0,0.3);
}

/* ---- mainstyle.css: フッター(基底・SP) ---- */
/* #FooterWrapB .FooterBrand は 15(2026-10-19)で追加した別名: 回ごとの LP では h1 の代わりに <p class="FooterBrand"> を使う */
#FooterWrap {
    color: rgba(98,98,98,1.00);
    background-color: rgba(0,0,0,1.00);
    display: table;
    width: 100%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FooterWrap{
        margin-top: 0em;
        padding-top: 2em;
    }
}
.FooterCntA {
display: none;
margin-left: auto;
margin-right: auto;
width: 90%;
}
#FooterWrap ul {
	display: block;
	margin-right: auto;
	margin-top: 1em;
	margin-bottom: 1em;
	float: left;
	padding-left: 1%;
	padding-right: 1%;
	color: rgba(255,255,255,1.00);
	margin-left: auto;
	width: -webkit-calc(96%/2);
	width: -moz-calc(96%/2);
	width: calc(96%/2);
	}
#FooterWrap ul li  {
font-size: 1rem;
line-height: 1em;
padding-top: 0.5em;
display: inline-block;
width: 100%;
text-align: center;
padding-bottom: 0.5em;
}
#FooterWrap ul li a:hover {
	background-color: rgba(224,7,27,0.80);
}

#FooterWrap ul li a {
    color: rgba(255,255,255,1.00);
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    font-size: 0.7rem;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FooterWrap ul li a{
        padding-right: 0.3em;
        padding-left: 0.3em;
    }
}
.FooterCntBSet {
	display: table;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 2em;
	padding-top: 2em;
}

.FooterCntB {
    margin-right: auto;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .FooterCntB{
        display: table;
        margin-left: auto;
        text-align: center;
        margin-bottom: 2em;
    }
}

.FooterCntB h3 , .FooterCntC h3{
    color: #FFFFFF;
    font-size: 0.95rem;
    margin-bottom: 1svh;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .FooterCntB h3 , .FooterCntC h3{
        text-align: center;
    }
}
.FooterCntBBtn   {
	background-color: #E0071B;
	color: #FFFFFF;
	display: table;
	float: left;
	margin-right: clamp(0.2344rem, 1vw, 0.8rem);
}
.FooterCntBBtn em {
	display: none;
}
.FooterCntBBtn a {
	background-color: #E0071B;
	width: clamp(2.3438rem, 10vw, 8rem);
	height: clamp(2.3438rem, 10vw, 8rem);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 60% auto;
	display: block;
}
.FooterCntBBtn2   {
	background-color: #E0071B;
	color: #FFFFFF;
	display: table;
	float: left;
	margin-right: clamp(0.2344rem, 1vw, 0.8rem);
}
.FooterCntBBtn2 a {
	background-color: #E0071B;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 60% auto;
	display: table;
	font-size: 0.8rem;
	font-weight: bold;
	color: #FFFFFF;
	padding: 0.5em;
}

.FooterCntC {
    margin-right: auto;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .FooterCntC{
        display: table;
        margin-left: auto;
    }
}
.FooterCntBBtn3 a {
	color: #FFFFFF;
	font-size: 0.9rem;
}
#FooterWrapB {
	background-color: rgba(0,0,0,1.00);
	position: relative;
	padding-bottom: 2svh;
}

#FooterWrapB h1, #FooterWrapB .FooterBrand  {
    display: table;
    width: 70%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FooterWrapB h1, #FooterWrapB .FooterBrand{
        margin-left: auto;
        margin-right: auto;
    }
}

#FooterWrapB h1 a img, #FooterWrapB .FooterBrand a img {
    display: table;
    width: 60%;
    margin-bottom: 1em;
    padding-bottom: 0px;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FooterWrapB h1 a img, #FooterWrapB .FooterBrand a img{
        margin-left: auto;
        margin-right: auto;
    }
}
#FooterWrapB h1 a em, #FooterWrapB .FooterBrand a em {
	display: none;
}

#FooterWrapB small {
    display: table;
    font-size: 0.75rem;
    color: rgba(250,250,250,1.00);
    text-align: center;
    padding-bottom: 2em;
    width: 100%;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FooterWrapB small{
        padding-top: 2em;
    }
}

#FooterWrapB .Powered a {
    text-align: right;
    position: absolute;
    bottom: clamp(0.2344rem, 1vw, 0.8rem);
    color: rgba(255,255,255,0.10);
    font-size: clamp(0.1875rem, 0.8vw, 0.64rem);
    display: block;
}


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    #FooterWrapB .Powered a{
        left: clamp(0.2344rem, 1vw, 0.8rem);
    }
}

/* ---- mainstyle.css: グローバルメニュー(基底) ---- */
#GmenuWrap {
	width: 100%;
	background-color: rgba(0,0,0,1);
	border-bottom: 1px solid rgba(207,0,14,1);
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#GmenuBox {
	width: 100%;
	max-width: 1280px;
	background-color: rgba(0,0,0,0.70);
	position: relative;
	z-index: 100;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	padding: 0;
}
.GmenuBrand {
	max-width: 9em;
	padding: 0.5em;
	display: flex;
	align-items: center;
}
.SiteTagline {
	display: none;
}
.SiteTitle .BrandLink img {
	display: block;
	height: 44px;
}
#GmenuWrap ul {
list-style: none;
padding: 0;
margin: 0 auto;
display: none;
justify-content: center;
align-items: stretch;
height: 100%;
}
#GmenuWrap li {
	display: flex;
	align-items: stretch;
	line-height: 1;
	text-align: center;
	font-size: 0.8rem;
	border-left: 1px solid rgba(207,0,14,1);
}
#GmenuWrap li:last-child {
	border-right: 1px solid rgba(207,0,14,1);
}
#GmenuWrap li a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: 0 1em;
	color: rgba(255,255,255,1);
	text-decoration: none;
	line-height: 1;
}
#GmenuWrap li a:visited {
	color: rgba(255,255,255,1);
}
#GmenuWrap li a:hover {
	background-color: rgba(207,0,14,0.70);
}


/* ---- mainstyle.css: ドロワー(基底・SP) ---- */
.drawer_Title {
background-color: rgba(0,0,0,1.00);
display: block;
}
.drawer_Title img {
width: 13em;
padding-left: 1em;
}
.zdo_drawer_menu * {
	margin: 0;
	padding: 0;
	outline: none;
	border: none;
	font: inherit;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	appearance: none;
	text-align: left;
	text-decoration: none;
	list-style: none;
}
.zdo_drawer_menu a {
	color: inherit;
	text-decoration: none;
}
.zdo_drawer_menu a:visited {
	color: rgba(255,255,255,1.00);
}
.zdo_drawer_menu .zdo_drawer_bg {
	width: 100%;
	height: 100%;
	position: fixed;
	z-index: 999;
	background-color: rgba(51, 51, 51, 0.5);
	display: none;
	top: 0;
	left: 0;
}
.zdo_drawer_menu .zdo_drawer_button {
display: block;
background-image: none;
border: 0px solid rgba(255,255,255,1.00);
padding: 5px;
width: 40px;
letter-spacing: 0.1em;
cursor: pointer;
position: fixed;
top: 5px;
right: 5px;
z-index: 1001;
text-align: center;
outline: none;
background-color: #E0071B;
box-sizing: border-box;
box-shadow: 0px 0px 10px rgba(0,0,0,0.50);
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar {
	width: 39px;
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar1 {
	transform: rotate(30deg);
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar2 {
	opacity: 0;
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar3 {
	transform: rotate(-30deg);
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_menu_text {
	display: none;
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_close {
	display: block;
}

.zdo_drawer_menu .zdo_drawer_bar {
    display: block;
    height: 2px;
    transition: all 0.2s;
    transform-origin: 0 0;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .zdo_drawer_menu .zdo_drawer_bar{
        margin: 7px 0;
    }
}
.zdo_drawer_menu .zdo_drawer_text {
	text-align: center;
	font-size: 0.5rem;
}
.zdo_drawer_menu .zdo_drawer_close {
	display: none;
}
.zdo_drawer_menu .zdo_drawer_menu_text {
	display: block;
}
.zdo_drawer_menu .zdo_drawer_nav_wrapper {
	width: 80%;
	height: 100%;
	transition: all 0.2s;
	transform: translate(100%);
	position: fixed;
	top: 0;
	right: 0;
	z-index: 1000;
	background: #E0071B;
}
.zdo_drawer_menu .zdo_drawer_nav_wrapper.open {
	transform: translate(0);
}
.zdo_drawer_menu.left .zdo_drawer_button {
	right: auto;
	left: 32px;
}
.zdo_drawer_menu.left .zdo_drawer_nav_wrapper {
	transform: translate(-30%);
	right: auto;
	left: 0;
}
.zdo_drawer_menu.left .zdo_drawer_nav_wrapper.open {
	transform: translate(0);
}
/*+++ Default Navigation CSS +++*/


/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .zdo_drawer_menu .zdo_drawer_nav{
        padding: 112px 24px;
    }
}
.zdo_drawer_menu .zdo_drawer_nav li {
	font-size: 16px;
	margin-bottom: 15px;
}
/*+++ Default Button Color +++*/
.zdo_drawer_menu .zdo_drawer_button {
	color: #ffffff;
}
.zdo_drawer_menu .zdo_drawer_button .zdo_drawer_bar {
	background-color: #ffffff;
}
.zdo_drawer_menu .zdo_drawer_button.active {
	color: #ffffff;
	background-color: #E0071B;
	border-style: none;
	box-shadow: 0px 0px 0;
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar {
	background-color: #ffffff;
}


.side-menu__ul {
width: 100%;
height: 100%;
display: block;
overflow: auto;
font-size: 0.85rem;
padding-top: 1em;
padding-bottom: 5em;
}
.side-menu__ul--child {
	display: none;
}
.active .side-menu__ul--child {
	display: block;
}
.side-menu__ul--child li a {
display: block;
padding-top: 1em;
padding-right: 0;
padding-left: 2em;
padding-bottom: 1em;
font-size: 1em;
color: #cccccc;
}
.side-menu__ul > li > a, .side-menu__ul > li h2 {
	display: block;
	padding-top: 0.75em;
	padding-right: 0;
	padding-left: 1em;
	padding-bottom: 0.75em;
	color: #ffffff;
}
.side-menu__ul > li h3 {
	display: block;
	padding-top: 0.75em;
	padding-right: 0;
	padding-left: 1em;
	padding-bottom: 0.75em;
	color: #ffffff;
}
.side-menu__ul h2 {
	cursor: pointer;
	transition: all .5s;
}
.side-menu__ul .drawer_SubList  > li > a {
	display: block;
	padding-top: 0.5em;
	padding-right: 0;
	padding-left: 2em;
	padding-bottom: 0.5em;
	color: #ffffff;
font-size: 0.75rem;
}
.side-menu__ul .drawer_SubList {
	margin-bottom: 1em;
}


.side-menu__ul > li > h2:hover, .side-menu__ul > li a:hover {
	background-color: #3E0005;
	color: #ffffff;
}

#DrawerSns {
	width: 100%;
	display: table;
}
.DrawerSnsCnt a {
	display: table;
	width: calc(100%/3);
	text-align: center;
	float: left;
	height: 2em;
	padding-top: 1em;
	padding-bottom: 1em;
}
.DrawerSnsCnt .FooterCntBBtn {
margin-right: 1em;
}

.side-menu__ul li .drawer_SubList .FooterCntBBtn a {
    margin-left: 0em;
    background-color: #000000;
}

/* SP のみ(PC 側に対応する宣言が無いため max-width に残す) */
@media (max-width: 767px) {
    .side-menu__ul li .drawer_SubList .FooterCntBBtn a{
        width: 2.2em;
        height: 2.2em;
    }
}
.side-menu__ul li .drawer_SubList .FooterCntBBtn {
margin-left: 1em;
	background-color: none;
}
.side-menu__ul--child p {
	color: #FFFFFF;
	padding-left: 32px;
	padding-top: 8px;
	padding-bottom: 8px;
}
.zdo_drawer_button.zdo_drawer_button-Color {
background-color: rgba(212,208,207,1.00);
}
.side-menu__ul li .discli {
	display: none;
}

.drawer_Space {
margin-bottom: 10em;
}

/* ---- mainstyle.css: PC(768px〜) ---- */
@media (min-width: 768px){

.SideBnr1 {
        right: -5px;
        top: calc(50% - 190px );
    }
.SideBnr2 {
        right: -5px;
        top: calc(50% );
    }

.FooterCntA {
        display: table;
        width: 100%;
        max-width: 1080px;
    }
#FooterWrap ul {
        margin-top: 3em;
        margin-bottom: 3em;
        width: 18%;
    }
#FooterWrap ul li  {
        font-size: 1.15rem;
    }

#FooterWrap ul li a {
        font-size: 0.85rem;
    }
.FooterCntBSet {
        padding-bottom: 6em;
        padding-top: 4em;
    }
.FooterCntB {
	float: left;
	margin-right: 2.5em;
}
.FooterCntB h3 , .FooterCntC h3{
        font-size: 1.15rem;
        margin-bottom: 0.8em;
    }
.FooterCntBBtn   {
        margin-right: 0.85rem;
    }

.FooterCntBBtn a {
        width: 2.5em;
        height: 2.5em;
    }
.FooterCntBBtn2   {
        margin-right: 0.85rem;
    }
.FooterCntBBtn2 a {
        font-size: 0.95rem;
        padding: 0.85rem;
    }
.FooterCntC {
	float: left;
	margin-right: 0.85rem;
}
.FooterCntBBtn3 a {
        font-size: 1.1rem;
        line-height: 1.6em;
    }
#FooterWrapB {
        padding-bottom: 2em;
    }
#FooterWrapB h1, #FooterWrapB .FooterBrand  {
        width: 20%;
        max-width: 300px;
        padding-left: 2em;
        padding-top: 2em;
    }
#FooterWrapB h1 a img, #FooterWrapB .FooterBrand a img {
        width: 100%;
        margin-bottom: 2em;
    }

#FooterWrapB small {
        font-size: 0.9rem;
        padding-bottom: 0px;
        width: 25%;
    }
#FooterWrapB .Powered a {
        right: 0.85rem;
        bottom: 0.85rem;
        color: rgba(255,255,255,0.50);
        font-size: 0.85rem;
    }

.SiteTitle .BrandLink img {
        height: 64px;
    }
#GmenuWrap ul {
        display: flex;
    }

.drawer_Title img {
        width: 10em;
    }
.zdo_drawer_menu * {
        margin: 0;
        padding: 0;
        font: inherit;
        font-family: inherit;
        font-size: 100%;
        font-style: inherit;
        font-weight: inherit;
        -webkit-appearance: none;
        -moz-appearance: none;
        width: auto;
    }


.zdo_drawer_menu .zdo_drawer_button {
        padding: 10px;
        width: 72px;
        top: 8px;
        right: 20px;
    }
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar {
	width: 49px;
}


.zdo_drawer_menu .zdo_drawer_bar {
        margin-top: 10px;
        margin-right: 0;
        margin-left: 0;
        margin-bottom: 10px;
    }
.zdo_drawer_menu .zdo_drawer_text {
        font-size: 0.7rem;
    }
.zdo_drawer_menu .zdo_drawer_close {
        letter-spacing: 0.08em;
    }

.zdo_drawer_menu .zdo_drawer_nav_wrapper {
        width: 30%;
    }


/*+++ Default Navigation CSS +++*/
.zdo_drawer_menu .zdo_drawer_nav {
    padding-top: 112px;
    padding-right: 24px;
    padding-left: 24px;
    padding-bottom: 112px;
}

/*+++ Default Button Color +++*/


.zdo_drawer_menu .zdo_drawer_button.active {
        -webkit-box-shadow: 0px 0px 0;
    }


.side-menu__ul {
        width: 100%;
        font-size: 0.9rem;
        padding-top: 3em;
        padding-bottom: 5em;
    }


.side-menu__ul .drawer_SubList  > li > a {
        padding-left: 2.5em;
        color: #ffffff;
        font-size: 0.85rem;
    }
.side-menu__ul .drawer_SubList {
	margin-bottom: 1.5em;
}


    
    
.side-menu__ul > li > h2:hover, .side-menu__ul > li a:hover {
        color: #ffffff;
    }
    


    
.drawer_Space {
    margin-bottom: 10em;
}

}

/* ---- mainstyle202103.css: 固定ボタンの CSS 化(2026-09-16) ---- */
/* ==============================================================
   固定ボタン(cnt/Cnt_Gmenu.php の .SideBnr1 / .SideBnr2)を画像(PrtsCmm12・13・16・17.svg)から CSS に(2026-09-16)
   - 元 SVG の寸法どおり: PC タブ = 幅 60px・高さ 190 / 200px・左角丸 17px・右端は画面端、縦書き 14px 太字、下に r10.6 の丸 + 大きめの矢印、左下に影
             SP ボタン = 200 × 40(半分幅 × 2.5rem)、右端から 7px に丸い矢印、右ボタンは 1px の赤枠
   - 色は元 SVG のグラデーション(#cd000e 25% → #8a0009)と赤(#cd000e)。配置(fixed の位置)は mainstyle.css の .SideBnr1/2 を上書き
   ============================================================== */
.SideBnr1, .SideBnr2 { background-color: transparent !important; }
.SideBnr__link {
  position: relative; display: flex; align-items: center; justify-content: center;
  box-sizing: border-box; width: 100%; height: 2.5rem; padding: 0 2.2rem 0 0.6rem;   /* 文字は矢印の左側の領域で中央(元 SVG と同じ)。矢印は右端 */
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif; font-weight: 700; font-size: 1rem; letter-spacing: .02em; line-height: 1;
  text-decoration: none; white-space: nowrap;
}
.SideBnr__link--red   { color: #FFFFFF; background: linear-gradient(to bottom, #cd000e 0%, #cd000e 25%, #8a0009 100%); }
.SideBnr__link--white { color: #cd000e; background: #FFFFFF; box-shadow: inset 0 0 0 1px #cd000e; font-size: 0.85rem; }   /* SP: 10 文字が矢印の左に収まる大きさ(元 SVG は約 13.5px) */
.SideBnr__t { display: block; }
.SideBnr__br { display: none; }   /* 「ジュニア / サッカー教室」の改行は PC の縦書きだけ(元 SVG どおり 2 列) */
.SideBnr__ic { position: absolute; right: 0.45rem; top: 50%; translate: 0 -50%; display: block; width: 1.35rem; height: 1.35rem; border: 1.5px solid currentColor; border-radius: 50%; box-sizing: border-box; }
.SideBnr__ic::before { content: ""; position: absolute; top: 50%; left: 50%; width: 0.62rem; height: 0.62rem; border-top: 1.5px solid currentColor; border-right: 1.5px solid currentColor; translate: -70% -50%; rotate: 45deg; }
@media (min-width: 768px) {
  .SideBnr1, .SideBnr2 { width: auto; right: 0; }
  .SideBnr1 { top: calc(50% - 10.8rem); }   /* 元 SVG: 画像の上端 = 50% - 190px、タブは画像内 y = 17 から */
  .SideBnr2 { top: calc(50% + 1rem); }      /* 元 SVG: 画像の上端 = 50%、タブは画像内 y = 15 から */
  .SideBnr__link {
    flex-direction: column; justify-content: flex-start;
    width: 3.75rem; height: auto; min-height: 11.9rem; padding: 1.7rem 0 1.55rem;   /* 元 SVG: 丸の下端から底まで 25px */
    font-size: 1.125rem; letter-spacing: 0;   /* 元 SVG: 「スクール体験」6 文字で約 117px(≒ 18px 太字)、上端から 27px */
    border-radius: 1.08rem 0 0 1.08rem; box-shadow: -0.15rem 0.15rem 0.45rem rgba(0,0,0,0.35);
  }
  .SideBnr__br { display: inline; }
  .SideBnr__t { line-height: 1.15; }
  .SideBnr__link--white { min-height: 12.5rem; padding: 1.55rem 0 1.5rem; font-size: 1.125rem;   /* 元 SVG: 文字は上のタブと同じ大きさで 2 列(ジュニア / サッカー教室)、上端から 25px */ box-shadow: inset 0 0 0 1.5px #cd000e, -0.15rem 0.15rem 0.45rem rgba(0,0,0,0.35); }   /* 元 SVG: 「ジュニアサッカー教室」10 文字で約 120px */
  .SideBnr__t { writing-mode: vertical-rl; text-orientation: mixed; }
  .SideBnr__ic { position: relative; right: auto; top: auto; translate: none; margin-top: 0.55rem; width: 1.35rem; height: 1.35rem; }   /* 文字の直下(元 SVG: 文字の終わりから丸まで約 9px) */
}

/* ==============================================================
   回ごとの LP(body.lp。single-business/lp/sNN.php)だけに効く部分(15、2026-10-19)
   - LP はテーマの html5reset / default.css / mainstyle*.css を読まない(inc/business-lp.php)。共通部品はそれらの「下地」
     (margin/padding 0・list-style none・下線なし・content-box・body の line-height 1・見出しは bold)を前提に書かれているので、
     ここで部品の中だけに同じ下地を敷く。
   - 詳細度の都合: 下地は部品の指定(#id / .class)より弱く、LP の要素セレクタ(* / a / p / h1〜h3 / img)より強くなければならない。
     そのため LP 側(css/lp/sNN.css)は要素セレクタを @layer lp-base に入れる(層に入った規則は、層に入っていない規則に必ず負ける)。
     ここの下地は :where() で詳細度を要素 1 つ分(0,0,1)以下に抑えてあるので、部品の指定には負ける
   - ヘッダーは LP では JS(cnfg.js)を使わず常時固定。高さは中身で決まる(ロゴ 44px / 64px + 上下 0.5em + 下線 1px)ので
     --hdr-h に同じ値を持ち、LP の固定画面(sNN.css の .scene__sticky)はその分だけ下から始まる
   ============================================================== */
.lp { --hdr-h: calc(44px + 1rem + 1px); }
@media (min-width: 768px) { .lp { --hdr-h: calc(64px + 1rem + 1px); } }
:where(.lp #GmenuWrap, .lp #FooterWrap, .lp #FooterWrapB) { line-height: 1; }
:where(.lp #GmenuWrap, .lp #FooterWrap, .lp #FooterWrapB) :where(*) { box-sizing: content-box; }
:where(.lp #GmenuWrap, .lp #FooterWrap, .lp #FooterWrapB) :where(h1, h3, p, ul, li, small, em) { margin: 0; padding: 0; font-size: 100%; }
:where(.lp #GmenuWrap, .lp #FooterWrap, .lp #FooterWrapB) :where(ul, li) { list-style: none; }
:where(.lp #GmenuWrap, .lp #FooterWrap, .lp #FooterWrapB) :where(a) { color: inherit; text-decoration: none; }
:where(.lp #GmenuWrap, .lp #FooterWrap, .lp #FooterWrapB) :where(h1, h3) { font-weight: bold; }
:where(.lp #GmenuWrap, .lp #FooterWrap, .lp #FooterWrapB) :where(img) { max-width: none; }
.lp #GmenuWrap { position: fixed; top: 0; left: 0; z-index: 900; box-shadow: 0px 10px 40px -10px rgba(0,0,0,0.3); }
.lp.admin-bar #GmenuWrap { top: var(--wp-admin--admin-bar--height, 32px); }
/* ドロワーは .zdo_drawer_menu * の自前リセット(font: inherit など)があるので下地は要らない */
