@charset "UTF-8";

/* Normalize.css
======================================================== */
html { line-height: 1.15; -webkit-text-size-adjust: 100%; }
body { margin: 0; }
main { display: block; }
h1 { font-size: 2em; margin: 0.67em 0; }
hr { box-sizing: content-box; height: 0; overflow: visible; }
pre { font-family: monospace, monospace; font-size: 1em; }
a { background-color: transparent; }
abbr[title] { border-bottom: none; text-decoration: underline; text-decoration: underline dotted; }
b, strong { font-weight: bolder; }
code, kbd, samp { font-family: monospace, monospace; font-size: 1em; }
small { font-size: 80%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sub { bottom: -0.25em; }
sup { top: -0.5em; }
img { border-style: none; }
button, input, optgroup, select, textarea { font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0; }
button, input { overflow: visible; }
button, select { text-transform: none; }
button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; }
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }
fieldset { padding: 0.35em 0.75em 0.625em; }
legend { box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; }
progress { vertical-align: baseline; }
textarea { overflow: auto; }
[type="checkbox"], [type="radio"] { box-sizing: border-box; padding: 0; }
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }
[type="search"] { -webkit-appearance: textfield; outline-offset: -2px; }
[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
::-webkit-file-upload-button { -webkit-appearance: button; font: inherit; }
details { display: block; }
summary { display: list-item; }
template { display: none; }
[hidden] { display: none; }
/* Soft reset */
figure { margin: 0; }
ul, ol, dd { margin: 0; padding: 0; list-style: none; }
h1, h2 h3, h4, h5, h6 { margin: 0; font-size: inherit; font-weight: inherit; }
p { margin: 0; }

/* Common
======================================================== */
html { font-size: 62.5%; }
body { font-family: "メイリオ",Meiryo,"Hiragino Kaku Gothic ProN","Hiragino Sans","ＭＳ Ｐゴシック","MS PGothic",Arial, Helvetica,sans-serif; font-size: 1.6rem; /* 16px */ letter-spacing: 0; /* letter-spacing: 0.05em; */ color: #333; overflow-x: hidden; position: relative; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
a { color: #2a7607; text-decoration: underline; }
a:hover { cursor: pointer; text-decoration: none; opacity: 0.7; }
#toc_container a, #ez-toc-container a { color: #2a7607; }
p { font-size: 1.6rem; line-height: 1.6; }
header, main section, main div { gap: 0; }
/* Heading */
main h2, section h2 { clear: both; margin: 0 auto 3rem; padding: 15px 2%; width: 96%; color: #fff; font-size: 2.5rem; font-weight: bold; line-height: 1.3; background: linear-gradient(to bottom, #2a7607, #285f0f); background: -moz-linear-gradient(top, #2a7607, #285f0f); background: -webkit-linear-gradient(top, #2a7607, #285f0f); }
main h3 { clear: both; position: relative; margin: 5rem auto 3rem; padding: 12px 2%; width: 96%; color: #333; font-size: 2.2rem; font-weight: bold; line-height: 1.3; background: #f5faf0; border-bottom: 2px solid #2a7607; }
main h4 { clear: both; position: relative; margin: 5rem auto 3rem; padding: 6px 0; width: 100%; color: #333; font-size: 2.0rem; font-weight: bold; line-height: 1.3; border-bottom: 2px solid #ff9128; }
main h5 { clear: both; margin: 5rem auto 3rem; padding: 4px 2%; width: 96%; color: #333; font-size: 1.8rem; font-weight: bold; line-height: 1.3; border-left: 5px solid #ff9128; }
main h6 { clear: both; margin: 5rem auto 3rem; padding: 14px 2%; width: 96%; color: #333; font-size: 1.6rem; font-weight: normal; line-height: 1.3; background: #fffcdf; }
main blockquote { font-style: italic; line-height: 1.6; margin: 0 auto 3rem; padding: 50px 50px 30px; background-color: #f8f8f8; background-image:  /* 1枚目の背景画像のパス */ url(/wp/wp-content/uploads/2023/11/blockquote_bg1.png.webp), /* 2枚目の背景画像のパス */ url(/wp/wp-content/uploads/2023/11/blockquote_bg2.png.webp); background-position: /* 1枚目の背景画像の表示位置 */ left 20px top 10px, /* 2枚目の背景画像の表示位置 */ right 20px bottom 10px; background-repeat: /* 1枚目の背景画像の設定 */ no-repeat, /* 2枚目の背景画像の設定 */ no-repeat; background-size: /* 1、2枚目の背景画像の共通サイズ */ 40px auto; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  main h2, section h2 { padding: 1.5vw 2%; font-size: 2.5vw; }
}

@media screen and (max-width: 600px) {
  html { font-size: 50%; }
  body { width: 100%; text-size-adjust: 100%; -webkit-text-size-adjust: 100%; }
  html.open { height: 100%; overflow: hidden; }
  body.open { position: fixed; width: 100%; height: 100%; left: 0; overflow: hidden; }
  p { font-size: 1.7rem; line-height: 1.5; }
  /* Heading */
  main h2 { padding: 3vw 4%; width: 92%; }
  main h3 { padding: 3vw 2%; }
  main h4 {  }
  main h5 {  }
  main h6 {  }
  main blockquote { padding: 9vw 6vw; background-position: left 2vw top 3vw, right 2vw bottom 3vw; background-size: 6vw auto; }
}

/* WordPress Default
======================================================== */
.has-text-align-left { text-align: left; }
.has-text-align-center { text-align: center; }
.has-text-align-right { text-align: right; }
.aligncenter { display: block; margin-right: auto; margin-left: auto; }
.alignright { float: right; margin-bottom: 20px; margin-left: 20px; }
.alignleft { float: left; margin-right: 20px; margin-bottom: 20px; }
.wp-caption, [class*='wp-image'] { display: block; max-width: 100% !important; margin-top: 1.5em; text-align: center; }
.wp-caption-text { margin-top: 0; }
.mce-item-table { max-width: 100% !important; border-collapse: collapse; margin-bottom: 2rem; }
.mce-item-table th { padding: 1rem 2rem; border: 1px solid #eaeaea; word-break: break-all; }
.mce-item-table td { padding: 1rem 2rem; border: 1px solid #eaeaea; line-height: 1.5; word-break: break-all; }
/* TinyMCEのマーカー */
.red_marker { background:rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #FFABCE 0%) repeat scroll 0 0; }
.blue_marker { background:rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #A7F1FF 0%) repeat scroll 0 0; }
.yellow_marker { background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #FFFF88 0%) repeat scroll 0 0; }
/* テーブル */
table { max-width: 100% !important; border-collapse: collapse; margin-bottom: 2rem; }
table tbody { max-width: 100% !important; }
table th { padding: 1rem 2rem; border: 1px solid #eaeaea; word-break: break-all; }
table td { padding: 1rem 2rem; border: 1px solid #eaeaea; line-height: 1.5; word-break: break-all; }
table th p,
table td p { margin-bottom: 0 !important; }
table.mainstyle th { background: #ffffCC; }
table.NoLine th { border: none; }
table.NoLine td { border: none; }
@media screen and (max-width: 600px) {
  table { width: 100% !important; table-layout: fixed; }
}

/* Utility classes
======================================================== */
.--PC { display: block; }
.--SP {  display: none !important; }
@media screen and (max-width: 600px) {
  .--PC { display: none !important; }
  .--SP { display: block !important; }
}
.--Wrap { margin: 0 auto !important; width: 1000px; }
.--PositionFixed { position: fixed; z-index: 99; }
/* Top Heading */

/* Font */
.--Mincho { font-family: "Hiragino Mincho ProN","Hiragino Mincho Pro",游明朝,"Yu Mincho",YuMincho,HGS明朝E,メイリオ,Meiryo,serif; }
.--HiraginoKakuGothic { font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HiraKakuPro-W3",sans-serif; }
/* Color */
.--ColorOrange { color: #ff7800; }
.--ColorGreen { color: #2a7607; }
.--ColorRed { color: #cd1010; }
/* Alignment */
.--AlignLeft { text-align: left; }
.--AlignCenter { text-align: center; }
.--AlignRight { text-align: right; }
/* Image */
.--ObjectFitCover { position: relative; display: block; width: 100%; background: #eaeaea; overflow: hidden; object-fit: cover; }
.--ObjectFitCover:before { content: ""; display: block; }
.--ObjectFitCover img { position: absolute; width: 100%; height: 100%; top: 0; right: 0; bottom: 0; left: 0; margin: auto; object-fit: cover; }
@media only screen and (min-width:600px) and (max-width:1100px) {
  .--Wrap { width: 100%; }
}
@media screen and (max-width: 600px) {
  .--Wrap { width: 90%; }
  /* アコーディオン */
  .--Accordion { position: absolute; display: block; width: 100%; height: 100%; cursor: pointer; white-space: nowrap; overflow: hidden; right: 0; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); text-align: right; }
	.--Accordion:before { content: ""; position: absolute; right: 2vw; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); display: inline-block; width: 7vw; height: 7vw; background: #fff; }
  .--Accordion:after { position: absolute; right: 3.3vw; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); color: #2a8ceb; content: "\2b"; font-family: "Font Awesome 5 Free"; font-size: 2.4rem; font-weight: bold; line-height: 2.5; }
  .--Accordion.Selected:after { content: "\f068"; }
  .--TopHeading { font-size: 2.8rem; }
  .--TopHeading small { margin: 0 0 9vw; padding: 4vw 0 0; font-size: 1.4rem; }
  .--TopHeading:after { bottom: 5vw; width: 26vw; height: 1vw; }
}

/* GlobalLayout
======================================================== */
.Body__TwoColumn { margin: 0 auto; padding: 50px 0; width: 1000px; display: flex; justify-content: space-between; flex-direction: row-reverse; align-items: flex-start; }
.Body__Top, .Body__Page, .Body__Archive, .Body__Single { margin: 0; padding: 0 0 40px; width: 740px; }
.Body__Sidebar { gap: 0; margin: 0; }
.Body__Top img, .Body__Page img, .Body__Single img { max-width: 100%; height: auto; }
.Body__Page iframe { max-width: 100%; }
.Body__Page img, .Body__Page iframe, .Body__Page p, .Body__Archive p, .Body__Single p { margin-bottom: 3rem; }
.Body__Single .Thumbnail { display: block; margin: 0 auto; padding: 0; text-align: center; }
/* Table */
.Body__Page .mainstyle, .Body__Archive .mainstyle, .Body__Single .mainstyle { border-collapse: collapse; width: 100%; margin-bottom: 3rem; }
.Body__Page .mainstyle th, .Body__Archive .mainstyle th, .Body__Single .mainstyle th { padding: 2rem; border: 1px solid #b9b9b9; }
.Body__Page .mainstyle td, .Body__Archive .mainstyle td, .Body__Single .mainstyle td { padding: 2rem; border: 1px solid #b9b9b9; }
.Body__Page .mainstyle th p, .Body__Archive .mainstyle th p, .Body__Single .mainstyle th p, 
.Body__Page .mainstyle td p, .Body__Archive .mainstyle td p, .Body__Single .mainstyle td p { margin-bottom: 0; }
/* List */
.Body__Page ul, .Body__Single ul { list-style: disc; padding: 0 0 3rem 3rem; }
.Body__Page ol, .Body__Single ol { list-style: decimal; padding: 0 0 3rem 3rem; }
.Body__Page ul li, .Body__Page ol li,
.Body__Single ul li, .Body__Single ol li { padding: 0 0 1rem; line-height: 1.6; }
/* Bold */
.Body__Page strong, .Body__Page b,
.Body__Single strong, .Body__Single b { color: #db600e; }
/* Thumbnail */
.Body__Single .Thumbnail { display: block; margin: 0 auto 4rem; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .Body__TwoColumn { padding: 5vw 0; width: 100%; }
  .Body__Sidebar { display: none !important; }
  .Body__Top, .Body__Page, .Body__Archive, .Body__Single { margin: 0 auto; padding: 0 0 8vw; width: 90%; }
}

@media screen and (max-width: 600px) {
  .Body__TwoColumn { padding: 10vw 0; width: 100%; }
  .Body__Page, .Body__Archive, .Body__Single { margin: 0 auto; padding: 0 0 8vw; width: 90%; }
  .Body__Top { margin: 0 auto; padding: 0 0 8vw; width: 100%; }
  .Body__Sidebar { display: none !important; }
}

/* Header, Footer
======================================================== */
.Body__Header { }
.CatchCopy { padding: 10px 0; width: 100%; background: #2a7607; }
.CatchCopy h1 { margin: 0 auto; width: 1100px; color: #fff; font-size: 1.4rem; }
.Header { gap: 0; justify-content: space-between; margin: 0 auto; padding: 10px 0; width: 1100px; }
.Header__Primary { gap: 0; }
.Header__Sitename { padding: 0; width: 440px; }
.Header__Sitename img { margin: 0; width: 100%; height: auto; }
.Header__Sitename img:hover { opacity: 0.7; }
.Header__Secondary { gap: 0; align-items: stretch !important; }
.Header__Button { gap: 0; display: flex; justify-content: center; }
.Header__ButtonOnline { display: flex; justify-content: center; align-items: center; margin: 0 10px 0 0 !important; width: 185px; height: 80px; text-align: center; background: #f5800d; border-radius: 5px; }
.Header__ButtonOnline a { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; padding: 14px 0 10px; width: 100%; color: #fff; font-size: 1.6rem; font-weight: bold; text-align: center; text-decoration: none; }
.Header__ButtonOnline a small { display: block; font-size: 1.3rem; width: 100%; }
.Header__ButtonOnline a em { display: inline-block; padding: 0 5px 0 0; font-style: normal; }
.Header__ButtonOnline a strong { font-size: 2.2rem; }
.Header__Contact { gap: 0; justify-content: center; align-items: center !important; margin: 0 10px 0 0 !important; padding: 0; width: 275px; text-align: center; border: 1px solid #f5800d; border-radius: 5px; }
.Header__ReceptionHours p { display: inline-block; padding: 0 10px 0 0; font-size: 1.3rem; line-height: 1.2; }
.Header__ReceptionHours strong { font-weight: normal; }
.Header__ReceptionHours small { font-size: 1.3rem; }
.Header__ReceptionHours small:after { content: "\A"; white-space: pre; }
.Header__PhoneNumber { position: relative; }
.Header__PhoneNumber:before { position: absolute; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); display: inline-block; padding: 0 5px 0 0; color: #333; font-size: 2.4rem; content: '\f095'; font-family: "Font Awesome 6 Free"; font-weight: bold; }
.Header__PhoneNumber p { display: inline-block; padding: 0 0 0 30px; font-size: 3.6rem; font-family: 'Roboto Condensed', sans-serif; font-weight: 700; line-height: 1; }
.Header__PhoneNumber p a { pointer-events: none; color: #ff7500; text-decoration: none; }
.Header__ButtonLine { display: flex; justify-content: center; width: 90px; height: 80px; text-align: center; background: #00b900; border-radius: 5px; }
.Header__ButtonLine a { position: relative; display: flex; justify-content: center; align-items: flex-end; padding: 0 0 3px; width: 100%; color: #fff; font-size: 1.3rem; font-weight: bold; line-height: 1.1; text-decoration: none; }
.Header__ButtonLine a:before { position: absolute; top: 7px; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); content: ""; display: inline-block; width: 36px; height: 36px; background: url(/wp/wp-content/uploads/2023/11/header_button_line.png.webp) no-repeat center top; background-size: 100% auto; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .CatchCopy { padding: 1vw 0; }
  .CatchCopy h1 { width: 96%; font-size: 1.4vw; }
  .Header { padding: 1vw 0; width: 96%; }
  .Header__Sitename { width: 38vw; margin-bottom: 0.5vw !important; }
  .Header__ButtonOnline { margin: 0 1vw 0 0 !important; width: 18.5vw; height: 8vw; }
  .Header__ButtonOnline a { padding: 1.4vw 0 1vw; font-size: 1.6vw; }
  .Header__ButtonOnline a small { font-size: 1.3vw; }
  .Header__ButtonOnline a em { padding: 0 0.5vw 0 0; }
  .Header__ButtonOnline a strong { font-size: 2.2vw; }
  .Header__Contact { margin: 0 1vw 0 0 !important; width: 27.5vw; }
  .Header__ReceptionHours p { padding: 0 1vw 0 0; font-size: 1.3vw; }
  .Header__ReceptionHours small { font-size: 1.3vw; }
  .Header__PhoneNumber p { padding: 0 0 0 3vw; font-size: 3.6vw; }
  .Header__PhoneNumber:before { padding: 0 0.5vw 0 0; font-size: 2.4vw; }
  .Header__ButtonLine { width: 9vw; height: 8vw; }
  .Header__ButtonLine a { padding: 0 0 1vw; font-size: 1.3vw; }
  .Header__ButtonLine a:before { top: 0.7vw; width: 2.5vw; height: 2.5vw; }
}

@media screen and (max-width: 600px) {
  .CatchCopy { padding: 1.5vw 0; }
  .CatchCopy h1 { width: 94%; font-size: 1.3rem; }
  .Header { position: relative; padding: 0; width: 100%; }
  .Header__Sitename { padding: 2.5vw; width: 84%; }
  .Header__Secondary { display: none !important; }
}

/* GlobalNavi
======================================================== */
.HeaderNavi.--PositionFixed { top: 0; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); width: 100%; z-index: 99; }
.HeaderNavi a { color: #fff; font-size: 1.5rem; text-decoration: none; }
.GlobalNaviPrimary { display: flex; justify-content: center; align-items: stretch; width: 100%; background: #2a7607; }
.GlobalNaviSecondary { display: flex; justify-content: center; align-items: center; width: 100%; background: #12958b; }
.GlobalNaviPrimary li a { display: flex; justify-content: center; align-items: center; padding: 15px 0; width: 110px; text-align: center; }
.GlobalNaviPrimary li a i { display: none; }
.GlobalNaviSecondary li a { display: flex; justify-content: center; align-items: center; padding: 15px 0; width: 143px; text-align: center; }
.GlobalNaviPrimary li,
.GlobalNaviSecondary li { position: relative; display: flex; }
.GlobalNaviPrimary li:before,
.GlobalNaviSecondary li:before { content: ""; display: inline-block; position: absolute; left: -1px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); width: 1px; height: 70%; background: #6ea257; }
.GlobalNaviPrimary li:last-child:after,
.GlobalNaviSecondary li:last-child:after { content: ""; display: inline-block; position: absolute; right: -1px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); width: 1px; height: 90%; background: #6ea257; }
.GlobalNavi a { display: block; padding: 25px 5px; width: 100%; color: #fff; font-size: 1.5rem; text-decoration: none; }
.GlobalNavi a i { display: inline-block; margin-right: 5px; }
.HeaderNavi li a:hover .sub-menu { transform: scaleY(1); /* ドロップダウンメニュー(PC) */ }
.HeaderNavi .sub-menu { z-index: 100; display: none; position: absolute; top: 64px; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); }
.HeaderNavi .sub-menu li { position: relative; margin: 0; padding: 0; width: 240px; text-align: center; white-space: nowrap; }
.HeaderNavi .sub-menu li:before,
.HeaderNavi .sub-menu li:last-child:after { display: none; }
.HeaderNavi .sub-menu li a { display: block; margin: 0 auto; padding: 10px 10%; width: 80%; color: #fff; font-size: 1.3rem; text-align: left; background: rgba(102,102,102,0.95); border-bottom: 1px solid #ccc; }
.HeaderNavi .sub-menu li:first-child a { border-top: 1px solid #ccc; }
.HeaderNavi .sub-menu li a:hover { background: #999; opacity: 1.0; }
.HeaderNavi .sub-menu li a:after { display: none; }
.HeaderNavi .open { display: block !important; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .HeaderNavi a { font-size: 1.5vw; }
  .GlobalNaviPrimary li a { padding: 1.5vw 0; width: 11vw; }
  .GlobalNaviSecondary li a { padding: 1.5vw 0; width: 14vw; }
  .GlobalNaviPrimary li:first-child:before,
  .GlobalNaviSecondary li:first-child:before,
  .GlobalNaviPrimary li:last-child:after,
  .GlobalNaviSecondary li:last-child:after { display: none; }
  .GlobalNaviPrimary li:before,
  .GlobalNaviSecondary li:before { left: -0.1vw; }
  .GlobalNavi a { padding: 25vw 0.5vw; font-size: 1.5vw; }
  .GlobalNavi a i { margin-right: 0.5vw; }
}

@media screen and (max-width: 600px) {
  .Header { position: relative; }
  .HeaderNavi a { font-size: 1.3rem; }
  .GlobalNaviPrimary { flex-wrap: wrap; align-items: flex-start; }
  .GlobalNaviPrimary.--PositionFixed { top: 0; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); width: 100%; z-index: 99; }
  .GlobalNaviPrimary li:nth-child(2):before { display: none; }
  .GlobalNaviPrimary li a { flex-direction: column; padding: 2vw 0 1vw; width: 16vw; /* width: 19vw; */ }
  .GlobalNaviPrimary li:before,
  .GlobalNaviSecondary li:before { background: -moz-linear-gradient(to bottom,#6ea257,#eef2ec 50%,#6ea257); background: -webkit-linear-gradient(to bottom,#6ea257,#eef2ec 50%,#6ea257);  background: linear-gradient(to bottom,#6ea257,#eef2ec 50%,#6ea257) }
  .GlobalNaviPrimary li:first-child,
  .GlobalNaviPrimary li:nth-last-child(3),
  .GlobalNaviPrimary li:nth-last-child(2),
  .GlobalNaviPrimary li:nth-last-child(1) { display: none; }
  .GlobalNaviPrimary li a i { display: flex; font-size: 2.0rem; padding-bottom: 1vw; }
  .GlobalNaviPrimary li a span { display: flex; align-items: center; height: 3rem; }
  .GlobalNaviSecondary { display: none; }
  .NaviSP li a span .--SP { display: none !important; }
  .NaviSP li a i { width: 6vw; text-align: center; }
  .NaviSP li a span { width: 26vw; }

  /* ハンバーガーボタン */
  header .menu-btn { position: absolute; top: 2vw; right: 2vw; width: 14vw; height: 14vw; cursor: pointer; z-index: 101; -webkit-transition: all 3s ease-in-out; transition: all .3s ease-in-out; background: -moz-linear-gradient(top, #fff, #eee); background: -webkit-linear-gradient(top, #fff, #eee); background: linear-gradient(to bottom, #fff, #eee); border: 1px solid #333; border-radius: 1vw; }
  header .menu-btn:after { position: absolute; bottom: 1.5vw; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); z-index: 0; content: "メニュー"; display: block; color: #333; font-size: 1.2rem; font-weight: bold; white-space: nowrap; }
  body.open header .menu-btn { background: none; }
  body.open header .menu-btn:after { display: none; }
  header .menu-btn-line { position: absolute; top: -3vw; bottom: 0; left: 0; right: 0; margin: auto; height: 3px; width: 40%; background: #2a7607; -webkit-transition: all 3s ease-in-out; transition: all .3s ease-in-out; }
  header .menu-btn-line:before,
  header .menu-btn-line:after { content: ""; height: 3px; width: 100%; background: #2a7607; position: absolute; left: 0; -webkit-transition: inherit; transition: inherit; }
  header .menu-btn-line:before { top: -2vw; }
  header .menu-btn-line:after { top: 2vw; }
  body.open header .sp-nav-item { -webkit-transition: all .5s; transition: all .5s; visibility: visible; opacity: 1; overflow-y: auto; }
  body.open header .menu-btn { border-color: #2a7607; }
  body.open header .menu-btn-line { background-color: transparent; }
  body.open header .menu-btn-line:before,
  body.open header .menu-btn-line:after { top: 0; background: #fff; }
  body.open header .menu-btn-line:before { -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }
  body.open header .menu-btn-line:after { -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); }
  .NaviSP { display: none; }
  body.open .NaviSP { display: block; }
  .sp-nav-item { position: fixed; display: flex; justify-content: center; top: 0; left: 0; width: 100%; height: 100%; background: rgba(42,118,7,0.95); visibility: hidden; opacity: 0; z-index: 100; }
  .sp-nav-item ul { transform: translateY(30%); margin: 25vw 0 0; padding: 0; width: 100vw; list-style-type: none; }
  .sp-nav-item li { width: 100%; text-align: center; }
  /* モーダルウィンドウ */
  body.open { position: fixed; width: 100%; height: 100%; }
  .NaviSP { transform: initial !important; margin: 0; padding: 0; list-style-type: none; display: flex; flex-direction: column; border-top: 1px solid #285f0f; /*▼グロナビ(SP) */ }
  .NaviSP li { width: 100%; text-align: left; border-bottom: 1px solid #285f0f; }
  .NaviSP li:after { display: none; }
  .NaviSP li a { position: relative; display: flex; justify-content: center; margin: 0; padding: 4vw 0; font-size: 2.0rem; font-weight: bold; color: #fff; text-decoration: none; white-space: nowrap; }
  .NaviSP li a:hover { transform: initial; -webkit-transition: initial; transition: initial; opacity: 1.0; margin: 0; padding: 4vw 0; text-indent: initial; }
  .NaviSP li a i { padding-right: 2vw; }
  .NaviSP li.menu-item-has-children a:after { position: absolute; right: 2vw; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); content: "\f107"; font-family: "Font Awesome 6 Free"; font-weight: bold; }
  .NaviSP li.menu-item-has-children a.on { color: #f5800d; }
  .NaviSP li.menu-item-has-children a.on:after { content: "\f106"; }
  .NaviSP .sub-menu { z-index: initial; background: initial; position: initial; top: initial; left: initial; transform: initial; -webkit-transform: initial; -ms-transform: initial; width: initial; box-shadow: initial; margin: initial; }
  .NaviSP .sub-menu li:first-child { border-top: 1px solid #285f0f; }
  .NaviSP .sub-menu li:last-child { border-bottom: none; }
  .NaviSP .sub-menu li a { font-size: 1.8rem; font-weight: normal; padding: 3.5vw 0; background: #285f0f; }
  .NaviSP .sub-menu li a:after { display: none; }
  .NaviSP .open { display: block; margin: 0; padding: 0; }
}

/* PageTitle
======================================================== */
.Body__PageTitle { gap: 0; background: #f5faf0; }
.PageTitle { min-height: 290px !important; width: 100%; margin: 0 auto !important; padding: 0 !important; }
.PageTitle__BreadCrumbs { position: absolute; /* top: 5px; */ top: -100%; left: 50%; transform: translateX(-50%); }
.PageTitle__BreadCrumbs .breadcrumbs { display: block; margin: 0 auto; padding: 1rem 0; width: 1000px; font-size: 1.2rem; white-space: nowrap; overflow-x: auto; }
.wp-block-lazyblock-page-title { display: flex; flex-direction: column; }
.PageTitle__Output { margin: 0 auto; width: 1000px; }
.PageTitle__Output .breadcrumbs { padding: 2rem 0; }
.PageTitle__Primary { display: flex; flex-direction: column; margin: 0 auto; width: 1000px; }
.PageTitle__Primary h2 { margin-bottom: 0; color: #2a7607 !important; font-size: 4.0rem; font-weight: 700; line-height: 1.3; text-align: center; background: none; border: none; }
.PageTitle__Secondary, .PageTitle__Secondary p { margin: 0 auto; width: 640px; font-size: 2.0rem; font-weight: 500; line-height: 1.2; text-align: center; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .PageTitle__BreadCrumbs { width: 90%; }
  .PageTitle__BreadCrumbs .breadcrumbs { width: 100%; }
  .PageTitle__Output,
  .PageTitle__Primary { width: 100%; }
}

@media screen and (max-width: 600px) {
  .PageTitle { min-height: 50vw !important; background: url(/wp/wp-content/uploads/2024/01/page_header_bg_sp.jpg.webp) no-repeat center top; background-size: auto 100%; }
  .PageTitle span.wp-block-cover__background { opacity: 0 !important; }
  .PageTitle img.wp-block-cover__image-background { display: none; }
  .PageTitle__Output { margin: 0 auto; width: 90%; }
  .PageTitle__Primary { width: 100%; }
  .PageTitle__Primary h2 { font-size: 2.8rem; }
  .PageTitle__BreadCrumbs { width: 90%; overflow-x: auto; }
  .PageTitle__BreadCrumbs .breadcrumbs { width: 100%; white-space: nowrap; }
  .PageTitle__Primary h2 { margin-bottom: 0; }
  .PageTitle__Secondary, .PageTitle__Secondary p { margin: 0 auto; width: 90%; font-size: 2.0rem; }
}

/* Sidebar　
======================================================== */
.Sidebar { gap: 0; width: 230px; }
.Sidebar .wp-block-cover__inner-container { position: initial !important; }
.Sidebar .wp-block-cover__inner-container a { position: absolute; z-index: 2; top: 0; left: 0; width: 100%; height: 100%; }

.SidebarContact { align-items: flex-start !important; margin: 0 0 12px !important; padding: 0 !important; width: 230px; min-height: 230px !important; }
.SidebarContact img { height: auto !important; }
.SidebarContact__Heading { display: flex; flex-direction: column; margin: 0 auto; }
.SidebarContact__Heading li:first-child { display: flex; justify-content: center; align-items: center; padding: 12px 0 10px; color: #fff; font-size: 1.9rem; font-weight: bold; }
.SidebarContact__Heading li:nth-child(2) { padding: 5px 0; font-size: 1.7rem; font-weight: bold; text-align: center; text-shadow: 0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff; }
.SidebarContact__Heading li:nth-child(2) em { font-style: normal; }
.SidebarContact__Heading li:nth-child(2) strong { color: #ff8315; }
.SidebarContact__PhoneNumber { display: block; margin: 0 auto; padding: 0; text-align: center; white-space: nowrap; }
.SidebarContact__PhoneNumber p { position: absolute; width: 100%; font-size: 3.2rem; line-height: 1; font-family: 'Roboto Condensed', sans-serif; font-weight: 700; text-align: center; }
.SidebarContact__PhoneNumber p a { color: #333; text-decoration: none; pointer-events: none; }
.SidebarContact__ReceptionHours { display: block; margin: 30px auto 0; padding: 15px 15px 0; }
.SidebarContact__ReceptionHours p { font-size: 1.2rem; line-height: 1.75; text-shadow: 0 0 5px #fffbee,0 0 5px #fffbee,0 0 5px #fffbee,0 0 5px #fffbee,0 0 5px #fffbee,0 0 5px #fffbee,0 0 5px #fffbee,0 0 5px #fffbee,0 0 5px #fffbee,0 0 5px #fffbee,0 0 5px #fffbee,0 0 5px #fffbee,0 0 5px #fffbee,0 0 5px #fffbee,0 0 5px #fffbee,0 0 5px #fffbee; }
.SidebarContact__ReceptionHours p strong { display: block; }
.SidebarContact__ReceptionHours p small { display: none; }

.Sidebar__TaxAccountant { margin: 0 0 12px !important; padding: 0 !important; width: 230px; min-height: 60px !important; }
.Sidebar__Banner { margin: 0 0 12px !important; padding: 0 !important; width: 230px; min-height: 142px !important; }
.Sidebar__TaxAccountant img,
.Sidebar__Banner img { height: auto !important; }
.Sidebar__TaxAccountant:hover,
.Sidebar__Banner:hover { opacity: 0.7; }

.Sidebar__Search { padding: 20px 0; width: 100%; background: #fffbf0; border: 1px solid #2a7607; }
.Sidebar__Search label { display: block; padding: 0 0 10px; color: #2a7607; font-size: 2.2rem; font-weight: bold; text-align: center; }
.Sidebar__Search .wp-block-search__inside-wrapper { /* padding: 4%; */ margin: 0 auto; max-width: 94%; }
.Sidebar__Search .wp-block-search__input { width: 160px; border: 1px solid #dbdbdb; }
.Sidebar__Search .wp-block-search__button { color: #fff; font-size: 1.4rem; background: #2a7607; border: none; white-space: nowrap; }
.Sidebar__Search .wp-block-search__button:hover { cursor: pointer; opacity: 0.7; }

.Sidebar__ContentMenu.wp-block-lazyblock-content-menu { width: 100%; }
.Sidebar__ContentMenu.menu-sidemenu-container { margin: 0; padding: 0; }
.Sidebar__Menu { margin: 0 auto 30px; padding: 0; width: 100%; }
.Sidebar__Menu li { margin: 0 0 -1px; padding: 0; width: 100%; text-align: left; }
.Sidebar__Menu li a { display: flex; align-items: flex-start; padding: 15px 5%; width: 90%; color: #333; font-size: 1.4rem; text-decoration: none; border: 1px solid #e2e2e2; }
.Sidebar__Menu li a:hover { background: #f5faf0; }
.Sidebar__Menu li:last-child a {  }
.Sidebar__Menu li a:before { display: inline-block; margin: 2px 5px 0 0; content: "\f105"; color: #2a7607; font-size: 1.0rem; font-family: "Font Awesome 6 Free"; font-weight: bold; }
.Sidebar__Menu li.menu-item-has-children ul.sub-menu { display: none; margin: 10px 0 0 20px; }
.Sidebar__Menu li.menu-item-has-children ul.sub-menu li a { padding-left: 20px; }

.Sidebar__Menu li.Sidebar__Heading { margin: 0 0 -1px !important; padding: 0; background: none; }
.Sidebar__Menu li.Sidebar__Heading a { justify-content: center; margin: 0; padding: 10px 5%; width: 90%; color: #fff; font-size: 1.6rem; font-weight: bold; text-align: center; background: #2a7607; border-radius: 0; pointer-events: none; }
.Sidebar__Menu li.Sidebar__Heading a:before { display: none; }

.Sidebar__Heading { padding: 10px 5%; width: 90%; color: #fff; font-size: 1.6rem; font-weight: bold; text-align: center; background: #2a7607; }

.SidebarOffice { gap: 0; margin: 0 0 25px !important; }
.SidebarOffice__Image img { margin: 0 auto 1rem !important; width: 100%; }
.SidebarOffice__Text { margin: 0 auto !important; padding: 0 0 1rem; width: 90%; font-size: 1.3rem; line-height: 1.5; text-align: left; }
.SidebarOffice__Text strong { display: block; padding: 0 0 0.5rem; color: #ff8315; font-size: 1.5rem; }

.SidebarArea { margin: 0 !important; padding: 0; width: 100%; border: 1px solid #e2e2e2; }
.SidebarArea__Text { display: block; padding: 15px 3%; width: 94%; font-size: 1.6rem; line-height: 1.2; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  
}

/* Footer　
======================================================== */
.Body__Footer { gap: 0; margin: 0 0 110px !important; width: 100%; background: #f5faf0; border-top: 1px solid #2a7607; }
.Footer { gap: 0; margin: 0 auto; padding: 0 0 30px; }
.FooterPrimary { gap: 0; padding: 10px 0 0; width: 600px; }
.FooterPrimary__Sitename { padding: 0 0 10px; width: 440px; }
.FooterPrimary__Sitename img { width: 100%; height: auto; }
.FooterPrimary__Sitename img:hover { opacity: 0.7; }
.FooterPrimary__Administrator { padding: 0 0 20px; font-size: 2.0rem; }
.FooterPrimary__Text { font-size: 1.3rem; line-height: 1.5; }
.FooterSecondary { gap: 0; padding: 40px 0 0; width: 400px; }
.FooterSecondary__Heading { padding: 5px 0; width: 100%; color: #fff; font-size: 1.8rem; text-align: center; text-shadow: 1px 1px 0 #156a64; background: #2a7607; }
.FooterSecondary__Contact { gap: 0; padding: 10px 0; width: 100%; background: #fff; }
.FooterSecondary__PhoneNumber,
.FooterSecondary__ReceptionHours { width: 100%; }
.FooterSecondary__PhoneNumber p { display: inline-block; padding: 0; width: 100%; font-size: 3.5rem; font-family: 'Roboto Condensed', sans-serif; font-weight: 700; line-height: 1; text-align: center; }
.FooterSecondary__PhoneNumber p:before { display: inline-block; padding: 0 5px 0 0; color: #333; font-size: 3.0rem; content: '\f098'; font-family: "Font Awesome 6 Free"; font-weight: bold; }
.FooterSecondary__PhoneNumber p a { pointer-events: none; color: #f5800d; text-decoration: none; }
.FooterSecondary__ReceptionHours p { display: inline-block; padding: 0 0 0 80px; font-size: 1.2rem; line-height: 1.2; text-align: left; }
.FooterSecondary__ReceptionHours strong { font-weight: normal; }
.FooterSecondary__ReceptionHours small { font-size: 1.3rem; }
.FooterSecondary__ReceptionHours small:after { content: "\A"; white-space: pre; }

.FooterSecondary__Button { padding: 15px 0 0; width: 100%; }
.FooterSecondary__Button a { position: relative; display: inline-block; padding: 5px 0; width: 100%; color: #fff; font-size: 1.6rem; text-decoration: none; text-align: center; background: #f5800d; border-radius: 10px; }
.FooterSecondary__Button a:after { position: absolute; right: 70px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); display: inline-block; content: '\f0da'; font-family: "Font Awesome 6 Free"; font-weight: bold; font-size: 1.2rem; }

.FooterSitemap { gap: 0; padding: 40px 0; }
.FooterSitemap__Item { width: 24%; }
.FooterSitemap__Item li { position: relative; margin: 0 0 1rem; padding: 0 0 0 15px; font-size: 1.5rem; line-height: 1.3; }
.FooterSitemap__Item li a { display: block; color: #333; text-decoration: none; }
.FooterSitemap__Item li:before { position: absolute; top: 2px; left: 0; display: inline-block; content: '\f054'; font-family: "Font Awesome 6 Free"; font-weight: bold; color: #2a7607; font-size: 1.0rem; }

.Copyright { padding: 15px 0; width: 100%; text-align: center; background: #2a7607; }
.Copyright p { color: #fff; font-size: 1.1rem; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .Body__Footer { margin: 0 0 11vw !important; }
  .Footer { margin: 0 auto !important; padding: 0 0 3vw; width: 90%; }
  .FooterPrimary { padding: 1vw 0 0; width: 48vw; }
  .FooterPrimary__Sitename { padding: 0 0 1vw; width: 42vw; }
  .FooterPrimary__Administrator { padding: 0 0 2vw; font-size: 2.0vw; }
  .FooterPrimary__Text { font-size: 1.3vw; }
  .FooterSecondary { padding: 4vw 0 0; width: 40vw; }
  .FooterSecondary__Heading { padding: 0.5vw 0; font-size: 1.8vw; }
  .FooterSecondary__Contact { padding: 1vw 0; }
  .FooterSecondary__PhoneNumber p { font-size: 3.4vw; }
  .FooterSecondary__PhoneNumber p:before { padding: 0 0.5vw 0 0; font-size: 3.0vw; }
  .FooterSecondary__ReceptionHours p { padding: 0 0 0 7.5vw; font-size: 1.3vw; }
  .FooterSecondary__ReceptionHours span { padding-left: 1vw; }
  .FooterSecondary__ReceptionHours small { font-size: 1.3vw; }
  .FooterSecondary__Button { padding: 1.5vw 0 0; }
  .FooterSecondary__Button a { padding: 1vw 0; font-size: 1.6vw; }
  .FooterSecondary__Button a:after { right: 7vw; font-size: 1.2vw; }
  .FooterSitemap { margin: 0 auto !important; padding: 4vw 0; width: 90%; }
  .FooterSitemap__Item li { margin: 0 0 1vw; padding: 0 0 0 1.5vw; font-size: 1.5vw; }
  .FooterSitemap__Item li:before { top: 0.2vw; font-size: 1.0vw; }
  .Copyright { padding: 1.5vw 0; }
  .Copyright p { font-size: 1.1vw; }
}

@media screen and (max-width: 600px) {
  .Body__Footer { margin: 0 0 23vw !important; border-top: none; }
  .Footer { flex-direction: column; padding: 0 0 5vw; width: 84%; }
  .FooterPrimary { padding: 0; width: 100%; }
  .FooterPrimary__Sitename { padding: 0 0 3vw; width: 100%; }
  .FooterPrimary__Administrator { padding: 0 0 3vw; font-size: 1.9rem; }
  .FooterPrimary__Text { font-size: 1.4rem; }
  .FooterPrimary__Text span { display: block; padding: 0 0 0 5.5rem; }
  .FooterSecondary { padding: 4vw 0 0; width: 100%; }
  .FooterSecondary__Heading { padding: 0.5vw 0; font-size: 2.2rem; }
  .FooterSecondary__Heading { font-weight: normal; }
  .FooterSecondary__Contact { padding: 2vw 0; border: 1px solid #ddd; }
  .FooterSecondary__PhoneNumber p { font-size: 3.8rem; }
  .FooterSecondary__PhoneNumber p:before { padding: 0 2vw 0 0; font-size: 3.4rem; }
  .FooterSecondary__PhoneNumber p a { pointer-events: initial; }
  .FooterSecondary__ReceptionHours p { font-size: 1.4rem; padding: 0 0 0 15vw; }
  .FooterSecondary__Button { padding: 4vw 0 0; }
  .FooterSecondary__Button a { padding: 1.5vw 0; font-size: 1.8rem; border-bottom: 1px solid #787b76; border-radius: 1vw; }
  .FooterSecondary__Button a:after { right: 12vw; font-size: 1.4rem; }
  .FooterSitemap { flex-direction: column; padding: 0; width: 100%; border-top: 1px solid #2a7607; }
  .FooterSitemap__Item { width: 100%; }
  .FooterSitemap__Item li { margin: 0; padding: 0; font-size: 1.9rem; }
  .FooterSitemap__Item li a { padding: 3.5vw 5%; width: 90%; background: #fff; border-bottom: 1px solid #2a7607; }
  .FooterSitemap__Item li:after { position: absolute; right: 4vw; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); display: inline-block; content: '\f054'; font-family: "Font Awesome 6 Free"; font-weight: bold; color: #2a7607; font-size: 1.6rem; }
  .FooterSitemap__Item li:before { display: none; }
  .Copyright { padding: 3vw 0; }
  .Copyright p { font-size: 1.3rem; }
}

/* FloatingFooter　
======================================================== */
.Body__FloatingFooter { position: fixed; z-index: 99; bottom: 0; padding: 10px 0; width: 100%; background: #f7f7f7; }
.FloatingFooter { gap: 0; }
.FloatingFooter__Times { display: flex;  justify-content: center; align-items: center; width: 80px; height: 80px; color: #fff; font-size: 1.8rem; line-height: 1.1; text-align: center; background: #f5b10d; border-radius: 50%; }
.FloatingFooter__Info { gap: 0; padding: 0 0 0 10px; width: 340px; }
.FloatingFooter__Text { font-size: 1.4rem; }
.FloatingFooter__PhoneNumber p { display: inline-block; padding: 0; font-size: 3.6rem; line-height: 1; font-family: 'Roboto Condensed', sans-serif; font-weight: 700; }
.FloatingFooter__PhoneNumber p:before { display: inline-block; padding: 0 5px 0 0; font-size: 3.0rem; content: '\f098'; font-family: "Font Awesome 6 Free"; font-weight: bold; }
.FloatingFooter__PhoneNumber p a { pointer-events: none; color: #333; text-decoration: none; }
.FloatingFooter__ReceptionHours p { display: inline-block; padding: 0; font-size: 1.3rem; line-height: 1.2; }
.FloatingFooter__ReceptionHours strong { font-weight: normal; }
.FloatingFooter__ReceptionHours small { font-size: 1.2rem; }
.FloatingFooter__ReceptionHours small:after { content: "\A"; white-space: pre; }
.FloatingFooter__Mail,
.FloatingFooter__Line { position: relative; display: flex; }
.FloatingFooter__Mail a,
.FloatingFooter__Line a { display: flex; justify-content: center; padding: 17px 0 17px 35px; width: 245px; font-size: 1.6rem; text-decoration: none; border-radius: 10px; }
.FloatingFooter__Mail a { margin-right: 10px !important; color: #fff; background: #f5800d url(/wp/wp-content/uploads/2023/11/floating_footer_mail.png.webp) no-repeat left 35px center; background-size: 31px auto; }
.FloatingFooter__Line a { color: #009b00; background: #fff url(/wp/wp-content/uploads/2023/11/floating_footer_line.png.webp) no-repeat left 40px center; background-size: 31px auto; border: 2px solid #009b00; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .Body__FloatingFooter { padding: 1vw 0; }
  .FloatingFooter { margin: 0 auto !important; width: 96%; }
  .FloatingFooter__Times { width: 8vw; height: 8vw; font-size: 1.6vw; }
  .FloatingFooter__Info { padding: 0 0 0 1vw; width: 34vw; }
  .FloatingFooter__Text { font-size: 1.4vw; }
  .FloatingFooter__PhoneNumber p { font-size: 3.6vw; }
  .FloatingFooter__PhoneNumber p:before { padding: 0 0.5vw 0 0; font-size: 3.0vw; }
  .FloatingFooter__ReceptionHours p { font-size: 1.3vw; }
  .FloatingFooter__ReceptionHours span { padding-left: 1vw; }
  .FloatingFooter__ReceptionHours small { font-size: 1.3vw; }
  .FloatingFooter__Mail a,
  .FloatingFooter__Line a { padding: 1.7vw 0 1.7vw 3.5vw; width: 22vw; font-size: 1.6vw; border-radius: 1vw; }
  .FloatingFooter__Mail a { margin-right: 1vw !important; background: #f5800d url(/wp/wp-content/uploads/2023/11/floating_footer_mail.png.webp) no-repeat left 1.5vw center; background-size: 3.1vw auto; }
  .FloatingFooter__Line a { background: #fff url(/wp/wp-content/uploads/2023/11/floating_footer_line.png.webp) no-repeat left 2.0vw center; background-size: 3.1vw auto; }
}

@media screen and (max-width: 600px) {
  .FloatingFooter.--SP { display: flex !important; padding: 3vw 0; background: #eef2ec; }
  .FloatingFooter { position: fixed; z-index: 99; bottom: 0; width: 100%; }
  .FloatingFooter__Button { margin: 0 0.5vw !important; padding: 0 !important; width: 16vw; min-height: 16vw !important;}
  .FloatingFooter__Text { padding: 7vw 0 0; font-size: 1.6rem; }
  .FloatingFooter__Tel { margin: 0 0.5vw !important; padding: 0 !important; width: 42vw; min-height: 16vw !important; }
  .FloatingFooter__Button img,
  .FloatingFooter__Tel img { width: 100%; height: auto; }
  .FloatingFooter__Tel .wp-block-cover__inner-container,
  .FloatingFooter__Button .wp-block-cover__inner-container { position: relative; }
  .FloatingFooter__Button .wp-block-cover__inner-container a,
  .FloatingFooter__Tel .wp-block-cover__inner-container a { position: absolute; z-index: 2; left: 0; top: 0; width: 100%; height: 100%; }
  .FloatingFooter__TelText { padding: 0 0 2vw 2vw; color: #fff !important; font-size: 2.0rem; line-height: 2.0; }
  .FloatingFooter__TelText strong span { font-size: 1.8rem; }
  .FloatingFooter__TelText small { display: block; font-size: 1.2rem; }
}

/* SideFloating　
======================================================== */
.SideFloating { /* display: none !important; */ gap: 0; position: fixed; z-index: 99; right: -1px; top: 400px; padding: 5px 5px 15px; width: 160px; background: #fff; border: 1px solid #efefef; border-radius: 5px 0 0 5px; }
.SideFloating__Times { display: flex;  justify-content: center; align-items: center; margin: 0 0 10px !important; width: 80px; height: 80px; color: #fff; font-size: 1.8rem; line-height: 1.1; text-align: center; background: #f5b10d; border-radius: 50%; }
.SideFloating__PhoneNumber p { display: inline-block; padding: 0 0 5px; font-size: 1.8rem; line-height: 1; font-family: 'Roboto Condensed', sans-serif; font-weight: 700; }
.SideFloating__PhoneNumber p a { pointer-events: none; color: #333; text-decoration: none; }
.SideFloating__ReceptionHours p { display: inline-block; padding: 0 0 10px; font-size: 1.1rem; line-height: 1.25; text-align: center; }
.SideFloating__ReceptionHours p strong { font-weight: bold; }
.SideFloating__ReceptionHours p small { font-size: 1.1rem; }
.SideFloating__ReceptionHours p small:after { content: "\A"; white-space: pre; }
.SideFloating__ReceptionHours span { display: block; }
.SideFloating__Button { gap: 0; }
.SideFloating__Icon img { width: 36px; margin: 0 5px; }
.SideFloating__Icon img:hover { opacity: 0.7; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .SideFloating { display: none !important; }
}

/* MainVisual
======================================================== */
.Body__MainVisual { margin: 0 auto; padding: 30px 0; width: 100%; background: url(/wp/wp-content/uploads/2023/11/mv_bg_pc.jpg.webp) no-repeat center top; background-size: cover; }
.MainVisual { position: relative; display: flex; justify-content: space-between; margin: 0 auto; width: 1100px; }
.MainVisual__Primary { margin: 0; padding: 0 0 0 50px; }
.MainVisual__Heading { margin: 0; padding: 0 0 10px; width: 100%; color: #333; font-size: 3.3rem; line-height: 1.3; font-weight: bold; background: none; border: none; text-shadow: 0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff; }
.MainVisual__Heading .--ColorOrange { font-size: 4.6rem; }
.MainVisual__Heading .--ColorGreen { font-size: 4.5rem; }
.MainVisual__Heading small { font-size: 3.1rem; }
.MainVisual__SubHeading { margin: 0 0 10px; padding: 5px 0; font-size: 3.1rem; font-weight: bold; line-height: 1; text-align: center; background: -moz-linear-gradient(to right,rgba(226,185,64,0) 0%,#e2b940 15%,#e2b940 85%,rgba(226,185,64,0) 100%); background: -webkit-linear-gradient(to right,rgba(226,185,64,0) 0%,#e2b940 15%,#e2b940 85%,rgba(226,185,64,0) 100%);  background: linear-gradient(to right,rgba(226,185,64,0) 0%,#e2b940 15%,#e2b940 85%,rgba(226,185,64,0) 100%); text-shadow: 0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff; }
.MainVisual__SubHeading .--ColorOrange { font-size: 5.1rem; }
.MainVisual__SubHeading .--ColorRed { font-size: 4.8rem; }
.MainVisual__List { margin: 0; padding: 10px 15px; width: 540px; background: #fff; border-radius: 20px; box-shadow: 0px 0px 3px 0 #ccc; }
.MainVisual__List li { position: relative; margin: 0; padding: 10px 0 10px 50px; font-size: 2.6rem; font-weight: bold; counter-increment: strengths-num; border-bottom: 1px solid #d5d5d5; }
.MainVisual__List li span { color: #cd1010; }
.MainVisual__List li small { font-size: 1.5rem; }
.MainVisual__List li:last-child { border-bottom: none; }
.MainVisual__List li:before { position: absolute; display: inline-block; width: 34px; height: 27px; color: #f5800d; font-size: 1.9rem; line-height: 27px; text-align: center; background: url(/wp/wp-content/uploads/2023/11/mv_bg_num.png.webp) no-repeat left center; background-size: 100% auto; content: counter(strengths-num); left: 0; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }
.MainVisual__Image { margin: 0; padding: 0; width: 463px; }
.MainVisual__Image img { width: 100%; height: auto; }
.MainVisual__Button { position: absolute; right: 20px; bottom: 0; }
.MainVisual__Button a { position: relative; display: block; margin: 0; padding: 5px 40px 5px 20px; color: #fff; font-size: 1.3rem; text-decoration: none; background: #2a7607; border: 1px solid #fff; border-radius: 5px; }
.MainVisual__Button a:after { position: absolute; right: 20px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); display: inline-block; font-size: 1.2rem; content: '\f054'; font-family: "Font Awesome 6 Free"; font-weight: bold; }
.MainVisual__Button a:hover { opacity: 1; filter:brightness(1.1); -webkit-filter:brightness(1.2); -moz-filter:brightness(1.2); filter:brightness(1.2); }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .Body__MainVisual { padding: 3vw 0; }
  .MainVisual { width: 96%; align-items: center; }
  .MainVisual__Primary { padding: 0; }
  .MainVisual__Heading { padding: 0 0 1vw; font-size: 3.3vw; }
  .MainVisual__Heading .--ColorOrange { font-size: 4.6vw; }
  .MainVisual__Heading .--ColorGreen { font-size: 4.5vw; }
  .MainVisual__Heading small { font-size: 3.1vw; }
  .MainVisual__SubHeading { margin: 0 0 1vw; padding: 0.5vw 0; font-size: 3.1vw; }
  .MainVisual__List { padding: 1vw 1.5vw; width: 54vw; }
  .MainVisual__List li { padding: 1vw 0 1vw 5vw; font-size: 2.6vw; }
  .MainVisual__List li:before { width: 3.4vw; height: 2.7vw; font-size: 1.9vw; line-height: 2.7vw; }
  .MainVisual__List li small { font-size: 1.5vw; }
  .MainVisual__Image { width: 46vw; }
  .MainVisual__Button { right: 2vw; }
  .MainVisual__Button a { padding: 0.5vw 4vw 0.5vw 2vw; font-size: 1.3vw; }
  .MainVisual__Button a:after { right: 2vw; font-size: 1.2vw; }
}

@media screen and (max-width: 600px) {
  .Body__MainVisual { padding: 7vw 0 13vw; background: #9cc9df url(/wp/wp-content/uploads/2023/12/mv_bg_sp.jpg.webp) no-repeat center top; background-size: 100% auto; }
  .MainVisual {  flex-direction: column; width: 100%; }
  .MainVisual__Primary { padding: 0 0 3vw; }
  .MainVisual__Heading { margin: 0 auto; padding: 0 0 2vw; width: 90%; font-size: 2.6rem; letter-spacing: -0.05rem; white-space: nowrap; }
  .MainVisual__Heading .--ColorOrange { font-size: 3.6rem; }
  .MainVisual__Heading .--ColorGreen { font-size: 3.5rem; }
  .MainVisual__Heading small { font-size: 2.5rem; }
  .MainVisual__SubHeading { margin: 0 auto 3vw; padding: 1vw 0; width: 96%; font-size: 2.6rem; background: -moz-linear-gradient(to right,rgba(226,185,64,0) 0%,#e2b940 15%,#e2b940 85%,rgba(226,185,64,0) 100%); background: -webkit-linear-gradient(to right,rgba(226,185,64,0) 0%,#e2b940 15%,#e2b940 85%,rgba(226,185,64,0) 100%);  background: linear-gradient(to right,rgba(226,185,64,0) 0%,#e2b940 15%,#e2b940 85%,rgba(226,185,64,0) 100%); }
  .MainVisual__SubHeading .--ColorOrange { font-size: 4.0rem; }
  .MainVisual__SubHeading .--ColorRed { font-size: 3.4rem; }
  .MainVisual__List { margin: 0 auto; padding: 2.5vw 2vw; width: 90%; border-radius: 4vw; }
  .MainVisual__List li { padding: 1.5vw 0 1.5vw 8vw; font-size: 2.0rem; }
  .MainVisual__List li:before { width: 6vw; height: 5vw; font-size: 1.4rem; line-height: 5vw; }
  .MainVisual__List li small { font-size: 1.3rem; }
  .MainVisual__Image { margin: 0 auto; width: 90%; }
  .MainVisual__Button { white-space: nowrap; bottom: -4vw; right: initial; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); }
  .MainVisual__Button a { padding: 1.5vw 10vw 1.5vw 6vw; font-size: 2.0rem; border-radius: 1vw; }
  .MainVisual__Button a:after { right: 4vw; font-size: 1.6rem; }
}

.Body__TopIntro { padding: 25px 0; background: #e9f4f3; /* ▼相続のご相談は地域密着の法律事務所へご相談ください */ }
.TopIntro {}
.TopIntro p { color: #333; font-size: 3.4rem; font-weight: bold; line-height: 1.6; text-align: center; }
.TopIntro p strong { color: #25b7ac; font-size: 4.0rem; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .Body__TopIntro { padding: 2.5vw 0; }
  .TopIntro p { font-size: 3.4vw; }
  .TopIntro p strong { font-size: 4.0vw; }
}

@media screen and (max-width: 600px) {
  .Body__TopIntro { padding: 3vw 0 5vw; }
  .TopIntro { width: 100%;}
  .TopIntro p { font-size: 2.5rem; line-height: 1.4; }
  .TopIntro p strong { font-size: 3.0rem; }
  .TopIntro p span { display: block; }
  .TopIntro p br { content: ""; display: block; margin: 0; }
}

/* Front Page
======================================================== */
.Body__Products { padding: 40px 0; background: #eef2ec; }
.Body__Products p,
.Body__Products img { margin-bottom: 0 !important; }
.ProductsPrimary { display: flex; justify-content: flex-start; align-items: stretch; flex-wrap: wrap; margin: 0 auto; padding: 0; width: 1000px; /* ▼商品バナー(小) */ }
.ProductsPrimary__Item { position: relative; display: flex; justify-content: flex-end; margin: 0 12px 12px 0; padding: 3px; width: 317px; background: #fff; border: 1px solid #548235; }
.ProductsPrimary__Item:nth-of-type(3n) { margin-right: 0; }
.ProductsPrimary__Item:before { content: ""; position: absolute; top: 2px; left: 2px; border-bottom: 15px solid transparent; border-left: 15px solid #548235; }
.ProductsPrimary__Info { display: flex; flex-direction: column; justify-content: center; padding: 0 15px; width: 146px; }
.ProductsPrimary__Heading { display: flex; justify-content: center; align-items: center; margin: 0; padding: 0; height: 60px; color: #333; font-size: 2.1rem; font-weight: bold; line-height: 1.2; text-align: center; }
.ProductsPrimary__Text { display: flex; justify-content: center; margin: 0; padding: 0; font-size: 1.4rem; line-height: 1.2; text-align: center; }
.ProductsPrimary__Image { width: 140px; }
.ProductsPrimary__Image:before { padding-top: 79%; }
.ProductsSecondary { position: relative; display: flex; flex-direction: column; justify-content: flex-start; flex-wrap: wrap; margin: 0 auto; padding: 0; width: 1000px; /* ▼商品バナー(大) */ }
.ProductsSecondary__Item { position: relative; display: flex; justify-content: flex-start; margin: 8px auto; padding: 3px 3px 0; width: 992px; background: #fff; border: 1px solid #548235; }
.ProductsSecondary__Item:before { content: ""; position: absolute; top: 2px; left: 2px; border-bottom: 15px solid transparent; border-left: 15px solid #548235; }
.ProductsSecondary__Item:after { position: absolute; right: 20px; bottom: 15px; display: inline-block; padding: 10px 55px 10px 35px; color: #fff; font-size: 1.3rem; content: "詳しくはこちら"; background: #ff7800 url(/wp/wp-content/uploads/2023/11/products_secondary_button.png.webp) no-repeat right 25px center; background-size: 15px auto; border-radius: 4px; }
.ProductsSecondary__Image { margin: 15px 20px 0; width: 170px; background: none; }
.ProductsSecondary__Image:before { padding-top: 88%; }
.ProductsSecondary__Info { display: flex; flex-direction: column; justify-content: center; padding: 0 15px; width: 540px; }
.ProductsSecondary__Heading { display: flex; justify-content: center; align-items: center; margin: 0; padding: 0 0 10px; color: #f5800d; font-size: 4.3rem; font-weight: bold; line-height: 1.2; text-align: center; }
.ProductsSecondary__Text { display: flex; justify-content: center; margin: 0; padding: 0; color: #333; font-size: 2.4rem; font-weight: bold; line-height: 1.2; text-align: center; }

.ProductsPrimary__URL a,
.ProductsSecondary__URL a { position: absolute; z-index: 1; top: 0; left: 0; display: block; width: 100%; height: 100%; background: #fff; opacity: 0; }
.ProductsPrimary__URL a:hover,
.ProductsSecondary__URL a:hover { opacity: 0.3; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .Body__Products { padding: 4vw 0; }
  .ProductsPrimary { width: 96%; }
  .ProductsPrimary__Item { margin: 0 1.2vw 1.2vw 0; padding: 0.3vw; width: 31.5%; }
  .ProductsPrimary__Item:before { top: 0.2vw; left: 0.2vw; border-bottom: 1.5vw solid transparent; border-left: 1.5vw solid #548235; }
  .ProductsPrimary__Info { padding: 0 1.5vw; width: 14.6vw; }
  .ProductsPrimary__Heading { height: 6vw; font-size: 2.1vw; }
  .ProductsPrimary__Text { font-size: 1.3vw; }
  .ProductsPrimary__Image { width: 14vw; }
  .ProductsSecondary { width: 96%; }
  .ProductsSecondary__Item { margin: 0.8vw auto; padding: 0.3vw 0.3vw 0; width: 99%; }
  .ProductsSecondary__Item:after { right: 2vw; bottom: 1.5vw; padding: 1vw 5.5vw 1vw 3.5vw; font-size: 1.3vw; background: #ff7800 url(/wp/wp-content/uploads/2023/11/products_secondary_button.png.webp) no-repeat right 2.5vw center; background-size: 1.5vw auto; }
  .ProductsSecondary__Item:before { top: 0.2vw; left: 0.2vw; border-bottom: 1.5vw solid transparent; border-left: 1.5vw solid #548235; }
  .ProductsSecondary__Image { margin: 1.5vw 2vw 0; width: 17vw; }
  .ProductsSecondary__Info { padding: 0 1.5vw; width: 54vw; }
  .ProductsSecondary__Heading { padding: 0 0 1vw; font-size: 4.3vw; }
  .ProductsSecondary__Text { font-size: 2.4vw; }
}

@media screen and (max-width: 600px) {
  .Body__Products { padding: 8vw 0; }
  .ProductsPrimary { justify-content: space-between; width: 90%; }
  .ProductsPrimary__Item { flex-direction: column-reverse; margin: 0 0 2vw 0; padding: 2vw; width: 44%; }
  .ProductsPrimary__Item:nth-of-type(even) { margin-right: 0; }
  .ProductsPrimary__Item:before { top: 0.5vw; left: 0.5vw; border-bottom: 3vw solid transparent; border-left: 3vw solid #548235; }
  .ProductsPrimary__Image { margin: 0 auto; width: 56%; }
  .ProductsPrimary__Info { margin: 0 auto; padding: 0; width: 100%; }
  .ProductsPrimary__Heading { height: initial; padding: 3vw 0 2vw; font-size: 2.1rem; white-space: nowrap; }
  .ProductsPrimary__Text { font-size: 1.7rem; }
  .ProductsSecondary { width: 90%; }
  .ProductsSecondary__Item { margin: 2vw auto; padding: 2vw 2% 0; width: 96%; }
  .ProductsSecondary__Item:before { top: 0.5vw; left: 0.5vw; border-bottom: 3vw solid transparent; border-left: 3vw solid #548235; }
  .ProductsSecondary__Item:after { right: 18vw; bottom: 2vw; padding: 1.5vw 7vw 1.5vw 4vw; font-size: 1.3rem; background: #ff7800 url(/wp/wp-content/uploads/2023/11/products_secondary_button.png.webp) no-repeat right 2.5vw center; background-size: 2.5vw auto; }
  .ProductsSecondary__Image { margin: 0; width: 34%; }
  .ProductsSecondary__Info { justify-content: flex-start; padding: 1vw 0 9vw; width: 60%; }
  .ProductsSecondary__Heading { padding: 0 0 1vw; font-size: 2.8rem; }
  .ProductsSecondary__Text { font-size: 1.5rem; }
}

.Body__Worries { margin: 0 auto; padding: 50px 0; width: 96%; /* ▼このようなお悩みはありませんか？ */ }
.Body__Worries h2 { position: relative; margin: 0 auto 55px; padding: 0 0 20px; color: #2a7607; font-size: 3.4rem; font-weight: bold; text-align: center; background: none; }
.Body__Worries h2:after { position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); content: ""; display: inline-block; width: 70px; height: 5px; background: #2a7607; }
.Worries1, .Worries2 { height: 10vw !important; }
.Worries__Item { position: relative; display: flex !important; justify-content: flex-start; align-items: center; border: 3px solid #2a7607; box-sizing: border-box; }
.Worries__Item:after { position: absolute; bottom: -1px; right: -1px; display: inline-block; width: 26px; height: 26px; background: #2a7607; line-height: 26px; text-align: center; color: #fff; content: '\f054'; font-size: 1.0rem; font-family: "Font Awesome 6 Free"; font-weight: bold; }
.Worries__Item a { position: absolute; z-index: 1; top: 0; left: 0; display: block; width: 100%; height: 100%; background: #fff; opacity: 0; }
.Worries__Item a:hover { opacity: 0.3; }
.Worries__Image { margin: 12px 3%; width: 26%; background: none; }
.Worries__Image:before { padding-top: 100%; }
.Worries__Heading { width: 63%; font-size: 2.0rem; font-weight: bold; line-height: 1.2; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .Body__Worries { padding: 5vw 0; width: 100%; }
  .Body__Worries h2 { margin: 0 auto 5.5vw; padding: 0 0 2vw; font-size: 3.4vw; }
  .Body__Worries h2:after { width: 7vw; height: 0.5vw; }
  .Worries1, .Worries2 { margin-left: -55px !important; height: 16vw !important; }
  .Worries__Item { margin: 1.2vw; padding: 1.2vw 0; width: 31.6vw; }
  .Worries__Heading { font-size: 2.0vw; }
  .Worries__Item:after { width: 2.6vw; height: 2.6vw; line-height: 2.6vw; font-size: 1.0vw; }
}

@media screen and (max-width: 600px) {
  .Body__Worries { padding: 9vw 0; width: 100%; }
  .Body__Worries h2 { margin: 0 auto 5vw; padding: 0 0 4vw; font-size: 2.6rem; }
  .Body__Worries h2:after { width: 12vw; height: 1vw; }
  .Worries1, .Worries2 { margin-left: 17vw !important; height: 28vw !important; }
  .Worries__Item { margin-left: 0 !important; padding: 2vw 0; /* width: 8% !important; */ border: 2px solid #2a7607; }
  .Worries__Item:after { width: 5vw; height: 5vw; font-size: 1.2rem; line-height: 5vw; }
  .Worries__Image { margin: 0 3%; }
}

.Body__TopContact { padding: 40px 0; background: #f5800d; /* ▼60分無料相談予約／メール・LINEで24時間受付中 */ }
.TopContact { display: flex; justify-content: space-between; }
.TopContact__Item:nth-of-type(1) { }
.TopContact__Item:nth-of-type(2) { width: 480px; justify-content: space-between; }
.TopContact__Heading { display: flex; justify-content: center; color: #fff; font-size: 2.9rem; }
.TopContact__Tel { gap: 0; width: 480px; min-height: 170px; background: #fff; border-radius: 10px; }
.TopContact__PhoneNumber p { display: inline-block; padding: 10px 0; font-size: 5.6rem; font-family: 'Roboto Condensed', sans-serif; font-weight: 700; line-height: 1; }
.TopContact__PhoneNumber p:before { display: inline-block; padding: 0 15px 0 0; color: #f5800d; font-size: 4.8rem; content: '\f098'; font-family: "Font Awesome 6 Free"; font-weight: bold; }
.TopContact__PhoneNumber p a { pointer-events: none; color: #333; text-decoration: none; }
.TopContact__ReceptionHours p { position: relative; padding: 10px 60px 20px 80px; font-size: 1.5rem; line-height: 1.2; text-align: center; }
.TopContact__ReceptionHours p strong { font-weight: normal; }
.TopContact__ReceptionHours p small { font-size: 1.5rem; }
.TopContact__ReceptionHours p small:after { content: "\A"; white-space: pre; }
.TopContact__MailLine { gap: 0; justify-content: space-between; width: 480px; }
.TopContact__Mail,
.TopContact__Line { width: 230px; min-height: 170px !important; align-items: flex-end !important; }
.TopContact__MailText,
.TopContact__LineText { font-size: 2.2rem; line-height: 1.3; text-align: center; }
.TopContact__Mail:hover,
.TopContact__Line:hover { opacity: 0.7 !important; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .Body__TopContact { padding: 4vw 0; }
  .TopContact { gap: 0; margin: 0 auto !important; width: 90%; }
  .TopCotact__Item { margin-right: 1vw !important; width: 100%; }
  .TopContact__Item:nth-of-type(2) { margin-right: 0.5vw !important; width: 48vw; }
  .TopContact__Heading { font-size: 2.9vw; }
  .TopContact__Tel { width: 43vw; min-height: 15.5vw; border-radius: 1.0vw; }
  .TopContact__PhoneNumber p { padding: 1.0vw 0; font-size: 5.6vw; }
  .TopContact__PhoneNumber p:before { padding: 0 1.5vw 0 0; font-size: 4.8vw; }
  .TopContact__ReceptionHours p { padding: 1vw 6vw 2vw 8vw; font-size: 1.5vw; }
  .TopContact__ReceptionHours p:before { top: 0.5vw; padding: 0.5vw 2.0vw; font-size: 1.6vw; }
  .TopContact__ReceptionHours p small { font-size: 1.5vw; }
  .TopContact__MailLine { width: 43vw; }
  .TopContact__Mail,
  .TopContact__Line { width: 21vw; min-height: 15.5vw !important; }
  .TopContact__MailText,
  .TopContact__LineText { font-size: 2.2vw; }
}

@media screen and (max-width: 600px) {
  .Body__TopContact { padding: 4vw 0; }
  .TopContact { flex-direction: column; padding: 0 0 3vw; }
  .TopCotact__Item { padding: 0 0 1vw; width: 100%; }
  .TopContact__Heading { padding: 0 0 1vw; font-size: 2.5rem; }
  .TopContact__Tel { padding: 3vw 0 3vw; width: 100%; min-height: initial; border-radius: 1vw; }
  .TopContact__PhoneNumber p { padding: 2vw 2vw 0 0; font-size: 5.0rem; }
  .TopContact__PhoneNumber p:before { padding: 0 3vw 0 0; font-size: 4.2rem; }
  .TopContact__PhoneNumber p a { pointer-events: initial; }
  .TopContact__ReceptionHours p { padding: 2vw 0 0 3vw; font-size: 1.3rem; }
  .TopContact__ReceptionHours p:before { top: 1vw; padding: 1vw 4vw; font-size: 1.5rem; }
  .TopContact__Item:nth-of-type(2) { width: 100%; }
  .TopContact__MailLine { width: 100%; }
  .TopContact__Mail,
  .TopContact__Line { padding: 0 !important; width: 43vw; min-height: 32vw !important; }
  .TopContact__MailText,
  .TopContact__LineText { padding: 0 0 2vw; line-height: 1.2; }
}

.Body_Contact { margin: 0; padding: 0 0 50px; /* 相続でお悩みの方は一度お話をお聞かせください */ }


@media only screen and (min-width:600px) and (max-width:1100px) {

}

@media screen and (max-width: 600px) {

}

.TopCase  { margin: 0 auto; padding: 0 0 40px; /* ▼当事務所の豊富な解決事例 */ }
.SubPageCase { margin: 0 auto; padding: 80px 0 40px; }
.SubPageCase h2 { margin-bottom: 30px !important; }

.SlickSupportCase { margin: 0 auto; padding: 0 0 30px; }
.SlickSupportCase .slick-track { display: flex; }
.SlickSupportCase .slick-slide { display: flex !important; }
.SlickSupportCase .slick-slide > div { display: flex; margin: 4%; padding: 0; width: 92%; }
.SlickSupportCase .slick-prev { left: -1.5rem; width: 34px; height: 34px; background: #fff; border-radius: 50%; z-index: 1; }
.SlickSupportCase .slick-next { right: -1.5rem; width: 34px; height: 34px; background: #fff; border-radius: 50%; }
.SlickSupportCase .slick-prev:hover,
.SlickSupportCase .slick-next:hover { opacity: 1; filter:brightness(1.1); -webkit-filter:brightness(1.1); -moz-filter:brightness(1.1); filter:brightness(1.1); }
.SlickSupportCase .slick-prev:before,
.SlickSupportCase .slick-next:before { color: #2a7607; font-size: 3.4rem; font-family: "Font Awesome 6 Free"; font-weight: bold; }
.SlickSupportCase .slick-prev:before { content: "\f137"; }
.SlickSupportCase .slick-next:before { content: "\f138"; }
.SupportCase { position: relative; display: flex !important; justify-content: flex-start; flex-direction: column; border: 1px solid #2a7607; }
.SupportCase__Link { position: absolute; display: block; width: 100%; height: 100%; background: #fff; opacity: 0; z-index: 1; }
.SupportCase__Link:hover { opacity: 0.3; }
.SupportCase__Image { position: relative; display: block; margin: 5%; width: 90%; background: #e3e3e3; overflow: hidden; object-fit: cover; }
.SupportCase__Image:before { content: ""; display: block; padding-top: 65%; }
.SupportCase__Image img { position: absolute; width: 100%; height: 100%; top: 0; right: 0; bottom: 0; left: 0; margin: auto; object-fit: cover; }
.SupportCase__Category { /* flex-grow: 1; */ padding: 5px 5% 0; }
.SupportCase__Category span { display: inline-block; margin: 0 8px 8px 0; padding: 5px 10px; color: #fff; font-size: 1.2rem; text-align: center; background: #2a7607; }
.SupportCase__Date { padding: 0 0 25px; color: #9e9e9e; font-size: 1.3rem; }
.SupportCase__Title { display: flex; align-items: flex-start; margin: 0 auto; padding: 0 5%; min-height: 80px; }
.SupportCase__Title h3 { display: inline-block; margin: 0; padding: 0; width: 100%; color: #333; font-size: 1.8rem; font-weight: 900; line-height: 1.3; text-align: left; background: none; border: none; }
.SupportCase__Title h3:before, .SupportCase__Title h3:after { display: none; }
.SupportCase__Info { display: flex; flex-wrap: wrap; margin: 0 auto; padding: 0 15px 20px; width: 100%; font-size: 1.6rem; font-weight: 500; line-height: 1.4; }
.SupportCase__Info dt { width: 27%; }
.SupportCase__Info dd { width: 65%; }
.SupportCase__Text { flex-grow: 1; padding: 0 5%; }
.SupportCase__Text p { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; font-size: 1.4rem; line-height: 1.5; }
.SupportCase__Button { margin: 15px auto; width: 90%; }
.SupportCase__Button p { position: relative; padding: 10px 0; width: 100%; color: #fff; font-size: 1.3rem; text-align: center; background: #ff7800; border-radius: 4px; }
.SupportCase__Button p:after { position: absolute; right: 25px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); display: inline-block; font-size: 1.4rem; content: '\f138'; font-family: "Font Awesome 6 Free"; font-weight: bold; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .TopCase { padding: 0 0 4vw; }
  .SubPageCase { padding: 8vw 0 4vw; }
  .TopCase__Button a { margin: 0 19vw; padding: 1.5vw 0; width: 50vw; font-size: 2.1vw; border-radius: 3vw; }
  .TopCase__Button a:after { right: 5.5vw; font-size: 1.9vw; }

  .SlickSupportCase { width: 100%; }
  .SupportCase a { font-size: 1.7vw; }
  .SupportCase__Category { padding: 0.5vw 5% 0; }
  .SupportCase__Category span { margin: 0 0.8vw 0.8vw 0; padding: 0.5vw 1vw; font-size: 1.2vw; }
  .SupportCase__Date { padding: 0.5vw 0 1.5vw; font-size: 1.3vw; }
  .SupportCase__Title { min-height: 9vw; }
  .SupportCase__Title h3 { font-size: 2.2vw; }
  .SupportCase__Text p { font-size: 1.4vw; }
  .SupportCase__Button { margin: 1.5vw auto; }
  .SupportCase__Button p { padding: 1vw 0;  font-size: 1.3vw; }
  .SupportCase__Button p:after { right: 2.5vw; font-size: 1.4vw; }
  .SlickSupportCase .slick-prev { left: -2vw; width: 4vw; height: 4vw; }
  .SlickSupportCase .slick-next { right: -2vw; width: 4vw; height: 4vw; }
}

@media screen and (max-width: 600px) {
  .TopCase { margin: 0 auto; padding: 0 0 4vw; }
  .SubPageCase { margin: 0 calc(50% - 50vw); padding: 8vw 0 4vw; width: 100vw; }
  .TopSupportCase { padding: 4vw 0 12vw; width: 100%; }
  .SlickSupportCase .slick-slide > div { margin: 0; width: 100%; }
  .TopSupportCase h2 small { margin: 0 0 2vw; }
  .TopSupportCase h2:after { bottom: 7vw; }
  .TopCase__Button a { margin: 0 5%; padding: 2.5vw 0; width: 90%; }
  .TopCase__Button a:after { right: 4vw; font-size: 1.6rem; }
  .SlickSupportCase { margin: 3vw 0 0; width: 100%; }
  .SlickSupportCase .slick-prev { left: 6vw; width: 10vw; height: 10vw; background: #fff; }
  .SlickSupportCase .slick-next { right: 6vw; width: 10vw; height: 10vw; background: #fff; }
  .SupportCase { margin: 0 5%; width: 90% !important; }
  .SupportCase__Category { padding: 0 5%; }
  .SupportCase__Category span { margin: 0 0 3vw 0; padding: 1vw 2vw; font-size: 1.4rem; }
  .SupportCase__Title { padding: 0 3vw 2vw; min-height: 16vw; }
  .SupportCase__Title h3 { font-size: 2.1rem; }
  .SupportCase__Info { padding: 0 3vw 4vw; }
  .SupportCase__Text { padding: 0 3vw; }
  .SupportCase__Text p { font-size: 1.9rem; line-height: 1.6; }
  .SupportCase__Button { margin: 3vw auto; width: 100%; }
  .SupportCase__Button p { margin: 0 auto 2vw; padding: 2vw 0; width: 90%; font-size: 1.7rem; }
  .SupportCase__Button p:after { right: 9vw; font-size: 1.8rem; }
  .TopSupportCase__Button,
  .TopSupportCase__Button p { width: 100%; }
  .TopSupportCase__Button a { margin: 0 5%; padding: 3.5vw 0; width: 90%; font-size: 2.1rem; }
  .TopSupportCase__Button a:after { right: 4vw; font-size: 1.8rem; }
  .SlickSupportCase .slick-prev,
  .SlickSupportCase .slick-next { width: 8vw; height: 8vw; }
  .SlickSupportCase .slick-prev:before,
  .SlickSupportCase .slick-next:before { font-size: 4.0rem; }
  .SlickSupportCase .slick-prev { left: 11vw; }
  .SlickSupportCase .slick-next { right: 11vw; }
}

.TopSearch { padding: 0 0 50px; /* ▼解決事例・Q＆A検索 */ }
.SearchCase { margin: 0 auto; padding: 15px; background: #f5faf0; }
.SearchCase__Heading { margin: 0 auto 10px !important; padding: 10px 0; width: 100%; color: #fff; font-size: 2.0rem; font-weight: bold; text-align: center; border: none; }
.SearchCase h3:nth-of-type(1) { background: #97a5d9; }
ul#menu-search-case1 li:before { color: #97a5d9; }
.SearchCase h3:nth-of-type(2) { background: #8dc07d; }
ul#menu-search-case2 li:before { color: #8dc07d; }
.SearchCase h3:nth-of-type(3) { background: #987b62; }
ul#menu-search-case3 li:before { color: #987b62; }
ul.SearchCase__Navi { display: flex; justify-content: flex-start; flex-wrap: wrap; list-style: none; margin: 0 auto 6px; padding: 0; width: 712px; }
ul.SearchCase__Navi li { position: relative; margin: 0 18px 12px 0; }
ul.SearchCase__Navi li:nth-child(3n) { margin-right: 0; }
ul.SearchCase__Navi li:before { position: absolute; left: 12px; top: 12px; display: inline-block; content: "\f0da"; font-size: 1.2rem; font-family: "Font Awesome 6 Free"; font-weight: bold; }
ul.SearchCase__Navi li a { display: block; padding: 10px 0 10px 25px; width: 198px; color: #333; font-size: 1.5rem; font-weight: normal; text-decoration: none; background: linear-gradient(to bottom, #fff, #ededed); background: -moz-linear-gradient(top, #fff, #ededed); background: -webkit-linear-gradient(top, #fff, #ededed); border: 1px solid #e3e3e3; }
ul.SearchCase__Navi li a small { font-size: 1.0rem; }
ul.SearchCase__Navi ul.sub-menu { display: none; position: absolute; top: 38px; left: 0; right: 0; margin: auto; padding:0; width: 300px; background: #fff; border: 1px solid #e3e3e3; z-index: 1; overflow: hidden; }
ul.SearchCase__Navi ul.sub-menu li { margin: 0; padding: 0; border-bottom: 1px solid #ccc; }
ul.SearchCase__Navi ul.sub-menu li:last-child { border-bottom: none; }
ul.SearchCase__Navi ul.sub-menu li:before { display: none; }
ul.SearchCase__Navi ul.sub-menu li a { padding: 10px 30px; font-size: 1.4rem; font-weight: normal; background: none; border: none; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .TopSearch { padding: 0 0 5vw; }
  .SearchCase { padding: 1.5vw; }
  .SearchCase__Heading { margin: 0 auto 1vw !important; padding: 1vw 0; font-size: 2.2vw; }
  ul.SearchCase__Navi { margin: 0 auto 0.6vw; width: 100%; }
  ul.SearchCase__Navi li { margin: 0 1.8vw 1.2vw 0; }
  ul.SearchCase__Navi li:before { left: 1.2vw; top: 1.2vw; font-size: 1.2vw; }
  ul.SearchCase__Navi li a { padding: 1vw 0 1vw 2.5vw; width: 25vw; font-size: 1.7vw; }
  ul.SearchCase__Navi li a small { font-size: 1.2vw; }
  ul.SearchCase__Navi ul.sub-menu { top: 5.2vw; width: 30vw; }
  ul.SearchCase__Navi ul.sub-menu li a { padding: 1vw 3vw; font-size: 1.7vw; }
}

@media screen and (max-width: 600px) {
  .SearchCase { margin: 0 auto !important; padding: 0; width: 90%; background: none; }
  .SearchCase__Heading { position: relative; margin: 0 auto 3vw!important; padding: 0 0 2vw; color: #333; font-size: 2.2rem; text-align: left; border-bottom: 1px solid #2a7607; }
  .SearchCase h3:nth-of-type(1) { background: none; }
  ul#menu-search-case1 li:before { display: none; }
  .SearchCase h3:nth-of-type(2) { background: none; }
  ul#menu-search-case2 li:before { display: none; }
  .SearchCase h3:nth-of-type(3) { background: none; }
  ul#menu-search-case3 li:before { display: none; }
  .SearchCase .--Accordion { position: absolute; display: block; width: 100%; height: 100%; cursor: pointer; white-space: nowrap; overflow: hidden; right: 0; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); text-align: right; }
  .SearchCase .--Accordion:after { content: "\f107"; margin-right: 0; padding: 0 0 2vw; color: #3b2300; font-size: 2.8rem; font-family: "Font Awesome 5 Free"; font-weight: bold; line-height: 1; }
  .SearchCase .--Accordion.--Selected:after { content: "\f106"; }
  ul.SearchCase__Navi { display: flex; justify-content: space-between; flex-wrap: wrap; padding: 0 0 6vw; width: 100%; }
  ul.SearchCase__Navi li { display: flex; margin: 0 0 2vw; width: 49%; }
  ul.SearchCase__Navi li a { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: 0 2vw; width: 100%; height: 14vw; color: #333; font-size: 1.9rem; font-weight: 400; text-decoration: none; border: 1px solid #a6a6a6; border-radius: 5px; }
  ul.SearchCase__Navi li a small { font-size: 1.4rem; }
  ul#menu-search-case1 li a { background: -moz-linear-gradient(top, #fff, #e0ecf5); background: -webkit-linear-gradient(top, #fff, #e0ecf5); background: linear-gradient(to bottom, #fff, #e0ecf5); }
  ul#menu-search-case2 li a { background: -moz-linear-gradient(top, #fff, #e0f5e1); background: -webkit-linear-gradient(top, #fff, #e0f5e1); background: linear-gradient(to bottom, #fff, #e0f5e1); }
  ul#menu-search-case3 li a { background: -moz-linear-gradient(top, #fff, #f5efe0); background: -webkit-linear-gradient(top, #fff, #f5efe0); background: linear-gradient(to bottom, #fff, #f5efe0); }
  #search-case1, #search-case2, #search-case3 { display: none; }
}

.TopVoice { padding: 0 0 50px; /* ▼お客様から頂いた感謝の声 */ }
.TopVoice__Feature { display: flex; justify-content: space-evenly; padding: 0 0 30px;
}
.TopVoice__FeatureImage { width: 35%; }
.TopVoice__FeatureImage:before { padding-top: 61%; }
.TopVoice__Button { display: block; margin: 0 auto; width: 50%; }
.TopVoice__Button a { position: relative; display: inline-block; margin: 0 auto; padding: 15px 0; width: 100%; color: #fff; font-size: 1.7rem; font-weight: bold; text-decoration: none; text-align: center; background: #ff7800; border-radius: 8px; }
.TopVoice__Button a:after { position: absolute; right: 60px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); display: inline-block; font-size: 1.4rem; content: '\f138'; font-family: "Font Awesome 6 Free"; font-weight: bold; }
/* モダール追加 */
.modal-voice__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  display: flex;
  justify-content: center;
  align-items: center;
	z-index:998;
}
.modal-voice__content {
  display: none;
}
.modal-voice__container {
  background-color: #fff;
  padding: 30px;
  max-width: 500px;
  max-height: 100vh;
  border-radius: 4px;
  overflow-y: auto;
  box-sizing: border-box;
   position: absolute;
   z-index: 999;
}
button.modal-voice__button {
  width: auto;
  padding: 0;
  margin: 0;
  background: none;
  border: 0;
  font-size: 0;
  line-height: 0;
  overflow: visible;
  cursor: pointer;
  transition: all 0.2s ease-out;
}
button.modal-voice__button:hover {
  opacity: 0.8;
}
.CustomerVoice { display: flex; justify-content: flex-start; align-items: stretch; }
.CustomerVoice dl { position: relative; display: flex; flex-direction: column; margin: 0 30px 30px 0; padding: 0; width: 230px; border: 1px solid #a8a8a8; }
.CustomerVoice dl:nth-last-of-type(1) { margin-right: 0; }
.CustomerVoice dl a { position: absolute; z-index: 1; top: 0; left: 0; width: 100%; height: 100%; background: #fff; opacity: 0; }
.CustomerVoice dl a:hover { opacity: 0.3; }
.CustomerVoice__Heading { margin: 5px auto 15px; padding: 10px 0; width: 92%; color: #2a7607; font-size: 1.7rem; font-weight: bold; border-bottom: 1px solid #458826; }
.CustomerVoice__Text { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; margin: 0 auto; padding: 0; width: 92%; font-size: 1.3rem; line-height: 1.7; }
.CustomerVoice__Button { position: relative; display: block; margin: 20px auto 15px; padding: 10px 0; width: 88%; color: #fff; font-size: 1.3rem; text-align: center; background: #ff7800; border-radius: 4px; }
.CustomerVoice__Button:after { position: absolute; right: 25px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); display: inline-block; font-size: 1.4rem; content: '\f138'; font-family: "Font Awesome 6 Free"; font-weight: bold; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .TopVoice { padding: 0 0 5vw; }
  .TopVoice__Feature { padding: 0 0 3vw; }
  .TopVoice__FeatureImage { width: 48%; }
  .CustomerVoice dl { margin: 0 3vw 3vw 0; width: 100%; }
  .CustomerVoice__Heading { margin: 0.5vw auto 1.5vw; padding: 1vw 0; font-size: 1.9vw; }
  .CustomerVoice__Text { font-size: 1.5vw; }
  .CustomerVoice__Button { margin: 2vw auto 1.5vw; padding: 1vw 0; font-size: 1.5vw; }
  .CustomerVoice__Button:after { right: 2.5vw; font-size: 1.6vw; }
  .TopVoice__Button a { padding: 1.5vw 0; font-size: 1.9vw; }
  .TopVoice__Button a:after { right: 6vw; font-size: 1.6vw; }
}

@media screen and (max-width: 600px) {
  .TopVoice { padding: 0 0 10vw; }
  .TopVoice__Feature { flex-direction: column; align-items: center; margin: 0 auto; padding: 1vw 0 1vw; }
  .TopVoice__FeatureImage { width: 74%; margin-bottom: 5vw; }
  .CustomerVoice { flex-direction: column; align-items: center; margin: 0 auto 4vw; width: 74%; }
  .CustomerVoice dl { margin: 0 0 5vw; width: 100%; }
  .CustomerVoice__Heading { margin: 3vw auto 3vw; padding: 2.5vw 0; width: 86%; font-size: 2.0rem; }
  .CustomerVoice__Text { width: 86%; font-size: 1.7rem; line-height: 1.5; }
  .CustomerVoice__Button { margin: 3vw auto 5vw; padding: 3vw 0; width: 62%; font-size: 1.7rem; }
  .CustomerVoice__Button:after { right: 5vw; font-size: 1.8rem; }
  .TopVoice__Button { width: 74%; }
  .TopVoice__Button a { padding: 3.5vw 0; font-size: 1.9rem; }
  .TopVoice__Button a:after { right: 7vw; font-size: 1.9rem; }
}

.TopMessage { margin: 0; padding: 0 0 40px; /* 相続でお悩みの方は一度お話をお聞かせください */ }
.TopMessage h2 { letter-spacing: -0.025em; }
.Message { position: relative; margin: 0; padding: 0; width: 100%; height: 595px; background: #e4e4e4 url(/wp/wp-content/uploads/2023/11/message_img_pc.jpg.webp) no-repeat right top; background-size: auto 100%; }
.Message__Text { position: absolute; z-index: 1; top: 15px; left: 15px; margin: 0; padding: 20px 15px; width: 380px; font-size: 1.5rem; line-height: 1.85; background: rgba(255,255,255,0.9); }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .TopMessage { padding: 0 0 4vw; }
  .Message { height: 60vw; }
  .Message__Text { top: 1.5vw; left: 1.5vw; padding: 2vw 1.5vw; width: 44vw; font-size: 1.6vw; }
}

@media screen and (max-width: 600px) {
  .TopMessage { padding: 0 0 8vw; }
  .Message { height: initial; background: none; display: flex; flex-direction: column-reverse; }
  .Message__Image { display: block; margin: 2vw auto 7vw; width: 60%; }
  .Message__Text { position: initial; display: block; margin: 0 auto; padding: 0; width: 90%; font-size: 1.9rem; line-height: 1.6; }
}

.Strengths { margin: 0 0 40px; padding: 30px 0 30px; background: #f5faf0; /* ３つの強み */ }
.Strengths p,
.Strengths img { margin-bottom: 0 !important; }
.Strengths h2 { margin: 0; padding: 0 0 20px; width: 100%; text-align: center; background: none; }
.Strengths h2 small { display: block; padding: 0 0 15px; color: #333; font-size: 2.8rem; }
.Strengths h2 span { display: inline-block; margin: 0 5px; padding: 0; width: 60px; height: 60px; color: #2a7607; font-size: 5.4rem; line-height: 65px; background: #fff; border: 4px solid #2a7607; }

.Strengths__Item { position: relative; display: flex; justify-content: space-between; align-items: flex-start; margin: 0 auto 20px; padding: 15px 10px; width: 680px; background: #fff; border: 2px solid #2a7607; counter-increment: strengths-num; }
.Strengths__Item:before { position: absolute; top: 13px; left: 18px; display: inline-block; width: 38px; height: 38px; color: #fff; font-size: 2.0rem; font-weight: bold; line-height: 40px; text-align: center; background: #ff7800; border-radius: 50%; content: counter(strengths-num); }
.Strengths__Info { display: flex; flex-direction: column; margin: 0; padding: 5px 0 5px 10px; width: 420px; }
.Strengths__Heading { margin: 0; padding: 0 0 20px 45px; width: 94%; color: #333; font-size: 2.0rem; line-height: 1.2; text-align: left; background: none; border: none; }
.Strengths__Heading small { font-size: 1.2rem; }
.Strengths__Heading:before, .Strengths__Heading:after { display: none; }
.Strengths__Text { font-size: 1.5rem; line-height: 1.6; }
.Strengths__Image { width: 220px; }
.Strengths__Image:before { padding-top: 70%; }
.Strengths__Button { display: block; margin: 0 auto; }
.Strengths__Button a { position: relative; display: inline-block; margin: 0 140px; padding: 10px 0; width: 460px; color: #fff; font-size: 2.1rem; font-weight: 900; text-decoration: none; text-align: center; background: #ea6c46; border-radius: 30px; }
.Strengths__Button a:after { position: absolute; right: 35px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); display: inline-block; font-size: 1.9rem; content: '\f138'; font-family: "Font Awesome 6 Free"; font-weight: bold; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .Strengths { margin: 0 0 3vw; padding: 3vw 0 3vw; }
  .Strengths h2 { padding: 0 0 2vw; }
  .Strengths h2 small { padding: 0 0 1.5vw; font-size: 2.8vw; }
  .Strengths h2 span { margin: 0 0.5vw; width: 6vw; height: 6vw; font-size: 5.4vw; line-height: 6.5vw; border: 0.4vw solid #2a7607; }
  .Strengths__Item { margin: 0 auto 2vw; padding: 1.5vw 1vw; width: 80vw; border: 0.2vw solid #2a7607; }
  .Strengths__Item:before { top: 1.3vw; left: 1.8vw; width: 3.8vw; height: 3.8vw; font-size: 2.4vw; line-height: 3.8vw; }
  .Strengths__Info { padding: 0.5vw 0 0.5vw 1vw; width: 54vw; }
  .Strengths__Heading { padding: 0 0 2vw 4.5vw; font-size: 2.2vw; }
  .Strengths__Heading small { font-size: 1.4vw; }
  .Strengths__Text { font-size: 1.7vw; }
  .Strengths__Image { width: 24vw; }
  .Strengths__Button a { margin: 0 19vw; padding: 1.5vw 0; width: 50vw; font-size: 2.1vw; }
  .Strengths__Button a:after { right: 3.5vw; font-size: 1.9vw; }
}

@media screen and (max-width: 600px) {
  .Strengths { margin: 0; padding: 6vw 0 6vw; }
  .Strengths h2 { padding: 0 0 6vw; }
  .Strengths h2 small { padding: 0 0 3vw; }
  .Strengths h2 span { margin: 0 1.5vw; width: 12vw; height: 12vw; line-height: 13vw; border: 3px solid #2a7607; }
  .Strengths__Item { flex-direction: column; margin: 0 auto 6vw; padding: 4vw 3% 5vw; width: 84%; }
  .Strengths__Item:before { top: 3.5vw; left: 2.5vw; width: 7vw; height: 7vw; line-height: 7vw; }
  .Strengths__Info { padding: 0; width: 100%; }
  .Strengths__Heading { padding: 0.5vw 0 4vw 8vw; width: 94%; font-size: 2.3rem; }
  .Strengths__Heading small { display: block; font-size: 1.4rem; }
  .Strengths__Text { padding: 0 0 5vw; font-size: 1.8rem; line-height: 1.4; }
  .Strengths__Image { margin: 0 auto; width: 74%; }
  .Strengths__Button a { margin: 0 5%; padding: 2.5vw 0; width: 90%; }
  .Strengths__Button a:after { right: 4vw; font-size: 1.6rem; }
}


.WhatsNew { margin: 0; padding: 0 0 40px; /* 新着情報 */ }
.WhatsNew h2 { margin-bottom: 0; }
.WhatsNew__List { width: 100%; height: 320px; border: 1px solid #e2e2e2; overflow-y: scroll; }
.WhatsNew__List a { position: relative; display: flex; margin: 0 auto; padding: 20px 0; width: 100%; color: #141313; font-size: 1.6rem; text-decoration: none; }
.WhatsNew__List a:after { position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); content: ""; display: inline-block; width: 98%; height: 1px; background: #e7e7e7; }
.WhatsNew__List a:hover { background: #f5faf0; }
.WhatsNew__List a dl { display: flex; justify-content: flex-start; margin: 0 auto; width: 94%; }
.WhatsNew__Date { flex-basis: 14%; color: #333; font-size: 1.5rem; padding-right: 1rem; }
.WhatsNew__Type { flex-basis: 22%; white-space: nowrap; }
.WhatsNew__Type span { display: inline-block; margin-top: -0.5rem; padding: 0.5rem 0; width: 100%; color: #fff; font-size: 1.4rem; text-align: center; }
.WhatsNew__Type span.news { background: #999; /* 新着情報ラベル */ }
.WhatsNew__Type span.voice { background: #63a939; /* お客様の声ラベル */ }
.WhatsNew__Type span.jirei { background: #df2f2f; /* 解決事例ラベル */ }
.WhatsNew__Type span.seminar { background: #4669af; /* セミナーラベル */ }
.WhatsNew__Type span.qa { background: #f98a1e; /* 相続なんでもQ＆Aラベル */ }
.WhatsNew__Title { flex-basis: 65%; padding-left: 2rem; flex-grow: 1; line-height: 1.3; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .WhatsNew { padding: 0 0 4vw; }
  .WhatsNew__List  { height: 32vw; }
  .WhatsNew__List a { padding: 2vw 0; font-size: 1.6vw; }
  .WhatsNew__Date { font-size: 1.7vw; }
  .WhatsNew__Type span { font-size: 1.6vw; }
  .WhatsNew__Title { font-size: 1.9vw; }
}

@media screen and (max-width: 600px) {
  .WhatsNew { width: 100%; padding: 0 0 10vw; }
  .WhatsNew__List { margin: 2vw auto 0; width: 90%; height: 64vw; border: none; }
  .WhatsNew__List a { padding: 4vw 0; }
  .WhatsNew__List a dl { flex-wrap: wrap; }
  .WhatsNew__Date { display: flex; align-items: center; }
  .WhatsNew__Title { flex-basis: 100%; padding: 3vw 0 0 0; font-size: 1.8rem; }
  .WhatsNew__Type { flex-basis: 34%; }
  .WhatsNew__Type span { margin-top: 0; }
}

.CallToAction { flex-wrap: wrap !important; margin: 0 auto 80px; padding: 0; width: 100%; background: #f5faf0; border: 2px solid #2a7607; /* 相続・遺産分割に関するご相談は初回60分無料です。 */ }
.CallToAction p,
.CallToAction img { margin-bottom: 0 !important; }
.CallToAction__Heading { margin: 0 auto; padding: 20px 0; width: 100%; color: #fff; font-size: 2.5rem; font-weight: bold; text-align: center; background: #2a7607; border: none; }
.CallToAction__Info { padding: 15px 0; width: 420px; }
.CallToAction__IntroText { width: 100%; font-size: 1.7rem; font-weight: bold; text-align: center; }
.CallToAction__PhoneNumber,
.CallToAction__ReceptionHours { width: 100%; }
.CallToAction__PhoneNumber p { position: relative; margin: 0 0 0 20px; padding: 0 0 0 40px; width: 100%; font-size: 5.4rem; font-family: 'Roboto Condensed', sans-serif; font-weight: 700; line-height: 1; }
.CallToAction__PhoneNumber p:before { position: absolute; left: 0; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); display: inline-block; padding: 0 15px 0 0; color: #333; font-size: 3.0rem; content: '\f095'; font-family: "Font Awesome 6 Free"; font-weight: bold; }
.CallToAction__PhoneNumber p a { pointer-events: none; color: #ff7500; text-decoration: none; }
.CallToAction__ReceptionHours p { position: relative; padding: 5px 0; font-size: 1.4rem; line-height: 1.5; text-align: center; }
.CallToAction__ReceptionHours p strong { color: #333 !important; font-weight: normal; }
.CallToAction__ReceptionHours p small { font-size: 1.5rem; }
.CallToAction__ReceptionHours p small:after { content: "\A"; white-space: pre; }
.CallToAction__AccessText { width: 100%; color: #2a7607; font-size: 1.5rem; text-align: center; }
.CallToAction__Button { display: flex; flex-direction: column; list-style: none !important; margin: 0 !important; padding: 25px 0 !important; width: 295px; }
.CallToAction__Button li { padding: 0 !important; }
.CallToAction__Button li a { position: relative; display: block; padding: 20px 0 20px 85px; font-size: 1.9rem; font-weight: bold; text-decoration: none; border-radius: 8px; }
.CallToAction__Button li a:before { content: ""; position: absolute; left: 15px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); display: inline-block; width: 47px; height: 40px; }
.CallToAction__Button li a:after { content: ""; position: absolute; right: 15px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); font-size: 1.8rem; content: '\f0da'; font-family: "Font Awesome 6 Free"; font-weight: bold; }
.CallToAction__ButtonMail a { color: #fff; background: #f5800d; border: 2px solid #f5800d; margin-bottom: 15px; }
.CallToAction__ButtonMail a:before { background: url(/wp/wp-content/uploads/2023/11/call_to_action_mail.png.webp) no-repeat left center; background-size: 100% auto; }
.CallToAction__ButtonMail a:after { color: #fff; }
.CallToAction__ButtonFlow a { color: #2a7607; background: #fff; border: 2px solid #2a7607; }
.CallToAction__ButtonFlow a:before { background: url(/wp/wp-content/uploads/2023/11/call_to_action_flow.png.webp) no-repeat left center; background-size: 100% auto; }
.CallToAction__ButtonFlow a:after { color: #2a7607; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .CallToAction { margin: 0 auto 8vw; }
  .CallToAction__Heading { padding: 2.5vw 0; font-size: 2.9vw; }
  .CallToAction__Info { padding: 1.5vw 0; width: 52vw; }
  .CallToAction__IntroText { font-size: 1.9vw; }
  .CallToAction__PhoneNumber p { margin: 0 0 0 5vw; padding: 0 0 0 4vw; font-size: 5.8vw; }
  .CallToAction__PhoneNumber p:before { padding: 0; font-size: 3.4vw; }
  .CallToAction__ReceptionHours p { padding: 0.5vw 0; font-size: 1.6vw; }
  .CallToAction__AccessText { font-size: 1.7vw; }
  .CallToAction__Button { padding: 1.5vw 0; width: 30vw; }
  .CallToAction__Button li a { padding: 2.5vw 0 2.5vw 8.5vw; font-size: 2.1vw; }
  .CallToAction__Button li a:before { left: 1.5vw; width: 4.7vw; height: 4.0vw; }
  .CallToAction__Button li a:after { right: 1.5vw; font-size: 2.0vw; }
  .CallToAction__ButtonMail a { margin-bottom: 1.5vw; }
}

@media screen and (max-width: 600px) {
  .CallToAction { margin: 0 auto 20vw; padding: 0 0 4vw; width: 100%; }
  .CallToAction__Heading { padding: 2.5vw 0; font-size: 2.4rem; line-height: 1.2; }
  .CallToAction__Info { padding: 3vw 0; width: 100%; }
  .CallToAction__PhoneNumber p { margin: 0 0 0 4vw; padding: 0 0 0 8vw; width: 88%; }
  .CallToAction__PhoneNumber p:before { padding: 0; }
  .CallToAction__ReceptionHours p { padding: 0; }
  .CallToAction__Button { flex-direction: row; justify-content: space-between; align-items: center; margin: 0 auto !important; padding: 0 !important; width: 90%; }
  .CallToAction__Button li { width: 49%; }
  .CallToAction__Button li a { padding: 3vw 0 3vw 10vw; font-size: 1.8rem; }
  .CallToAction__Button li a:before { left: 2vw; width: 7vw; height: 6vw; }
  .CallToAction__Button li a:after { right: 2vw; font-size: 1.6rem; }
  .CallToAction__ButtonMail a { margin-bottom: 0; }
}

.TopOffice { margin: 0 auto; padding: 0 0 40px; /* ▼事務所ビル */ }
.Office__Intro { display: flex; align-items: center; }
.Office__Intro dt { margin-right: 55px; width: 275px; }
.Office__Intro dt img { width: 100%; height: auto; }
.Office__Text { font-size: 1.5rem; line-height: 1.65; }
.Office__Counseling { display: flex; padding: 40px 0 0; }
.Office__Counseling li { width: 178px; margin-right: 13px; }
.Office__Counseling li img { width: 100%; height: auto; }
.Office__Counseling li:last-child { margin-right: 0; }
.Office__Room { display: flex; }
.Office__Room li { width: 369px; margin-right: 12px; }
.Office__Room li img { width: 100%; height: auto; }
.Office__Room li:last-child { margin-right: 0; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .TopOffice { padding: 0 0 4vw; }
  .Office__Text { font-size: 1.9vw; }
  .Office__Counseling { padding: 4vw 0 0; }
  .Office__Counseling li { width: 100%; margin-right: 1.3vw; }
  .Office__Room li { width: 100%; margin-right: 1.2vw; }
}

@media screen and (max-width: 600px) {
  .TopOffice { padding: 0 0 12vw; }
  .TopOffice h3 { margin: 1vw 0 4vw; }
  .Office { margin: 0 auto; width: 90%; }
  .Office__Intro dt { margin-right: 5%; width: 39%; }
  .Office__Intro dd { width: 56%; }
  .Office__Text { font-size: 1.8rem; }
  .Office__Counseling { justify-content: space-between; flex-wrap: wrap; margin: 0 auto; padding: 6vw 0 4vw; width: 82%; }
  .Office__Counseling li { width: 48%; margin: 0 0 2vw 0; }
}

.TopPublication { margin: 0 auto; padding: 0 0 40px; /* ▼出版情報 */ }
.TopPublication dl { display: flex; align-items: center; }
.TopPublication dl dt { margin-right: 25px; width: 200px; }
.TopPublication dl dt img { width: 100%; height: auto; }
.TopPublication dl dd { font-size: 1.5rem; line-height: 1.65; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .TopPublication { padding: 0 0 4vw; }
  .TopPublication dl dt { margin-right: 5%; width: 23%; }
  .TopPublication dl dd { width: 72%; font-size: 1.9vw; }
}

@media screen and (max-width: 600px) {
  .TopPublication { padding: 0 0 8vw; }
  .TopPublication dl { margin: 0 auto; width: 90%; }
  .TopPublication dl dt { margin-right: 5%; width: 29%; }
  .TopPublication dl dd { width: 66%; font-size: 1.8rem; line-height: 1.5; }
}

.TopAccess { margin: 0 auto; padding: 0 0 60px; /* ▼アクセスマップ */ }
.Access iframe { margin-bottom: 15px; }
.Access__Text { padding: 0 0 30px; font-size: 1.5rem; line-height: 1.65; }
.Access__Button { display: block; margin: 0 auto; width: 50%; }
.Access__Button a { position: relative; display: inline-block; margin: 0; padding: 10px 0; width: 100%; color: #fff; font-size: 1.7rem; font-weight: bold; text-decoration: none; text-align: center; background: #f5800d; border-radius: 8px; }
.Access__Button a:after { position: absolute; right: 60px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); display: inline-block; font-size: 1.4rem; content: '\f138'; font-family: "Font Awesome 6 Free"; font-weight: bold; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .TopAccess { padding: 0 0 6vw; }
  .Access iframe { margin-bottom: 1.5vw; }
  .Access__Text { padding: 0 0 3vw; font-size: 1.7vw; }
  .Access__Button a { padding: 1.5vw 0; font-size: 1.9vw; }
  .Access__Button a:after { right: 6vw; font-size: 1.6vw; }
}

@media screen and (max-width: 600px) {
  .TopAccess { padding: 0 0 8vw; }
  .Access { margin: 0 auto; width: 90%; }
  .Access iframe { height: 54vw; margin-bottom: 4vw; }
  .Access__Text { padding: 0 0 6vw; font-size: 1.8rem; line-height: 1.5; }
  .Access__Button { width: 100%; }
  .Access__Button a { padding: 3.5vw 0; font-size: 1.9rem; }
  .Access__Button a:after { right: 16vw; font-size: 1.9rem; }
}

.CoverArea { margin: 0 auto; padding: 0; /* ▼対応地域 */ }
.CoverArea h2 { margin: 0 0 20px; }
.CoverArea dl { padding: 0 0 5px; }
.CoverArea dl dt { margin: 0 0 15px; padding: 0 0 10px; color: #25b7ac; font-size: 1.9rem; font-weight: bold; border-bottom: 2px solid #25b7ac; }
.CoverArea dl dd { font-size: 1.5rem; line-height: 1.6; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .CoverArea h2 { margin: 0 0 2vw; }
  .CoverArea dl { padding: 0 0 0.5vw; }
  .CoverArea dl dt { margin: 0 0 1.5vw; padding: 0 0 1vw; font-size: 1.9vw; }
  .CoverArea dl dd { font-size: 1.5vw; }
}

@media screen and (max-width: 600px) {
  .CoverArea { width: 100%; }
  .CoverArea dl { margin: 0 auto; padding: 0 0 2vw; width: 90%; }
  .CoverArea dl dt { margin: 0 0 3vw; padding: 0 0 2vw; }
  .CoverArea dl dd { padding: 0 0 4vw; font-size: 1.7rem; line-height: 1.5; }
  .CoverArea dl:nth-last-of-type(1) dd:last-child { padding-bottom: 0; }
}

/* PageTop　
======================================================== */
.PageTop { position: fixed; bottom: 120px; right: 30px; z-index: 99; }
.PageTop__Button { position: relative; display: inline-block; width: 60px; height: 60px; background: #333; border-radius: 50%; opacity: 0.7; }
.PageTop__Button:before { position: absolute; display: inline-block; top: 50%; left: 50%; transform: translate(-50%, -50%); content: "\f077"; color: #fff; font-size: 2.4rem; font-family: "Font Awesome 6 Free"; font-weight: bold; line-height: 0.9; text-align: center; }
.PageTop__Button:hover { background: #666; /* filter:brightness(1.1); -webkit-filter:brightness(1.1); -moz-filter:brightness(1.1); filter:brightness(1.1); */ }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .PageTop { bottom: 12vw; right: 3vw; }
  .PageTop__Button { width: 6vw; height: 6vw; }
  .PageTop__Button:before { font-size: 2.4vw; }
}

@media screen and (max-width: 600px) {
  .PageTop { position: fixed; bottom: 22vw; right: 2vw; z-index: 99; }
  .PageTop__Button { position: relative; display: inline-block; width: 15vw; height: 15vw; background: #666; border-radius: 50%; opacity: 0.7; }
  .PageTop__Button:before { position: absolute; display: inline-block; top: 53%; left: 50%; transform: translate(-50%, -47%); content: "PAGE\ATOP"; white-space: pre; color: #fff; font-size: 1.4rem; font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HiraKakuPro-W3",sans-serif; line-height: 1.15; text-align: center; }
}

/* Contact Form7　
======================================================== */
.ContactForm {}
.ContactForm dl { display: flex; flex-wrap: wrap; border: 1px solid #eaeaea; border-bottom: none; }
.ContactForm dl dt { display: flex; align-items: flex-start; position: relative; margin: 0; padding: 2%; width: 26%; background: #eef2ec; font-size: 1.7rem; line-height: 1.2; border-bottom: 1px solid #eaeaea; }
.ContactForm dl dt:after { position: absolute; top: 0; right: 0; content: ""; display: inline-block; width: 1px; height: 100%; background: #eaeaea; }
.ContactForm dl dd { display: flex; align-items: flex-start; margin: 0; padding: 2%; width: 66%; border-bottom: 1px solid #eaeaea; }
.ContactForm dl dd.your-date-selection {flex-wrap: wrap;}
.ContactForm dl dt p small { color: #ff0000; font-size: 1.7rem; }
.ContactForm dl dt p,
.ContactForm dl dd p { margin: 0; width: 100%; }
.ContactForm .wpcf7-list-item { margin-left: 0; }
.ContactForm input[type="text"],
.ContactForm input[type="email"],
.ContactForm input[type="tel"] { width: 95%; padding: 2%; margin: 0; border: 1px solid #ccc; }
.ContactForm textarea { width: 95%; padding: 2%; margin: 0; border: 1px solid #ccc; }
.ContactForm input[type="submit"] { display: block; margin: 2rem auto; padding: 2rem 0; width: 50%; color: #fff; font-size: 2.4rem; font-weight: bold; background: #f5800d; border: none; border-radius: 10px; }
.ContactForm input[type="submit"]:hover { opacity: 0.7; cursor: pointer; }
.ContactForm .wpcf7-radio span { margin-right: 5px;}
.ContactForm__Date { width: 30% !important; }

@media screen and (max-width: 600px) {
  .ContactForm dl dt,
  .ContactForm dl dd { width: 96%; }
  .ContactForm dl dt:after { display: none; }
  .ContactForm dl dd { padding: 2rem 2%; }
  .ContactForm input[type="submit"] { width: 80%; }
  .ContactForm dl dd.your-date-selection { flex-wrap: wrap;}
}

/* archive.php
======================================================== */
.ArchiveNews { position: relative; padding: 1rem 0; border-bottom:1px  #eaeaea solid; }
.ArchiveNews a:after { content: "続きを読む »"; position: absolute; right: 0; bottom: 2rem; padding: 10px 30px; color: #fff; font-size: 1.6rem; font-weight: 500; background: #f5800d; border-radius: 5px; }
.ArchiveNews a { display: flex; flex-direction: column; padding: 20px 0; color: #333; text-decoration: none; }
.ArchiveNews h3 { margin: 0; padding: 0 0 10px; color: #2a7607; font-size: 2.0rem; background: none; border: none; }
.ArchiveNews h3:before { display: none; }
.ArchiveNews__Date { padding: 0 0 10px; color: #666; font-size: 1.3rem;}
.ArchiveNews__Text { padding: 0 0 4rem; font-size: 1.6rem; line-height: 1.5; }
@media screen and (max-width: 600px) {
  .ArchiveNews__Text { padding: 0 0 6rem; }
}

/* archive-customer.php
======================================================== */
.ArchiveCustomer { position: relative; padding: 0 0 1rem; border-bottom:1px  #eaeaea solid; }
.ArchiveCustomer a { display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; padding: 20px 0; color: #333; text-decoration: none; }
.ArchiveCustomer h3 { margin: 0 0 2rem; /* padding: 0 0 20px; width: 100%; color: #e85224; font-size: 2.0rem; background: none; border: none; */ }
.ArchiveCustomer h3:before { display: none; }
.ArchiveCustomer__Primary { width: 20%; }
.ArchiveCustomer__Image { width: 100%; }
.ArchiveCustomer__Image figure:before { padding-top: 140%; }
.ArchiveCustomer__Date { padding: 10px 0; color: #666; font-size: 1.3rem;}
.ArchiveCustomer__Category { display: flex; justify-content: flex-start; align-items: center; flex-wrap: wrap; }
.ArchiveCustomer__Category span { display: inline-block; margin: 0 0.5rem 0.5rem 0; padding: 4px 8px; border-radius: 2px; background: #eaeaea; font-size: 1.4rem; }
.ArchiveCustomer__Info { width: 77%; display: flex; flex-direction: column; }
.ArchiveCustomer a:after { content: "続きを読む »"; position: absolute; right: 0; bottom: 4rem; padding: 10px 30px; color:#fff; font-size: 1.6rem; font-weight: 500; background: #f5800d; border-radius: 5px; }
.ArchiveCustomer__Text { padding: 0 0 6rem; font-size: 1.6rem; line-height: 1.5; }
@media screen and (max-width: 600px) {
  .ArchiveCustomer { padding: 0 0 4rem; }
  .ArchiveCustomer a { flex-direction: column; }
  .ArchiveCustomer__Primary { width: 100%; }
  .ArchiveCustomer__Date { position: absolute; bottom: 5rem }
  .ArchiveCustomer__Category { position: absolute; bottom: 2rem; }
  .ArchiveCustomer__Image { margin: 0 auto 3rem; width: 50%; }
  .ArchiveCustomer__Info { width: 100%; }
  .ArchiveCustomer__Text { padding: 1rem 0 5rem; }
}

/* archive-jirei.php
======================================================== */
.ArchiveCase { position: relative; padding: 0; border-bottom:1px  #eaeaea solid; }
.ArchiveCase a { display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; padding: 20px 0; color: #333; text-decoration: none; }
.ArchiveCase h3 { margin: 0 0 2rem; /* padding: 0 0 20px; width: 100%; color: #e85224; font-size: 2.0rem; background: none; border: none; */ }
.ArchiveCase h3:before { display: none; }
.ArchiveCase__Primary { width: 20%; }
.ArchiveCase__Image { width: 100%; }
.ArchiveCase__Image figure:before { padding-top: 100%; }
.ArchiveCase__Date { padding: 10px 0; color: #666; font-size: 1.3rem;}
.ArchiveCase__Category { display: flex; justify-content: flex-start; align-items: center; flex-wrap: wrap; padding: 10px 0 0; }
.ArchiveCase__Category span { display: inline-block; margin: 0 0.5rem 0.5rem 0; padding: 4px 8px; border-radius: 2px; background: #eaeaea; font-size: 1.4rem; }
.ArchiveCase__Info { position: absolute; left: 0; bottom: 2.5rem; width: 77%; display: flex; flex-direction: column; }
.ArchiveCase a:after { content: "続きを読む »"; position: absolute; right: 0; bottom: 3rem; padding: 10px 30px; color:#fff; font-size: 1.6rem; font-weight: 500; background: #f5800d; border-radius: 5px; }
.ArchiveCase__Text { padding: 1rem 0 7rem; font-size: 1.6rem; line-height: 1.5; }
@media screen and (max-width: 600px) {
  .ArchiveCase { padding: 0 0 4rem; }
  .ArchiveCase a { flex-direction: column; }
  .ArchiveCase a:after { padding: 10px 4vw; }
  .ArchiveCase__Primary { width: 100%; }
  .ArchiveCase__Date { position: absolute; bottom: 5rem }
  .ArchiveCase__Category { position: absolute; bottom: -2vw; padding: 0; width: 70%; }
  .ArchiveCase__Category span { font-size: 1.3rem; }
  .ArchiveCase__Image { margin: 0 auto 3rem; width: 50%; }
  .ArchiveCase__Info { width: 100%; }
  .ArchiveCase__Text { padding: 1rem 0 5rem; }
}
.searchandfilter div > ul { display: block; width: 100%; }
.searchandfilter div > ul li { display: block; width: 100%; }
.searchandfilter div > ul li ul { display: flex; justify-content: flex-start; flex-wrap: wrap; }
.searchandfilter input[type="checkbox"],
.searchandfilter input[type="radio"] { display: none; }
.searchandfilter div > ul li.cat-item { position: relative; display: flex; margin: 0 1% 1% 0; padding: 0; width: 32%; font-size: 1.5rem; font-weight: 500; background: -moz-linear-gradient(top, #fff, #ededed); background: -webkit-linear-gradient(top, #fff, #ededed); background: linear-gradient(to bottom, #fff, #ededed); border: 1px solid #e3e3e3; }
.searchandfilter div > ul li.cat-item:nth-child(3n) { margin-right: 0; }
.searchandfilter div > ul li.cat-item:before { position: absolute; right: 0; top: 50%; transform: translate(-50%, -50%); content: " \f0da";
  font-family: "Font Awesome 5 Free"; font-weight: bold; color: #fff; font-size: 1.0rem; z-index: 1; }
.searchandfilter div > ul li.cat-item:after { content: ""; position: absolute; top: 0; right: 0; width: 8px; height: 100%; }
.searchandfilter div > ul li.cat-item label { display: block; width: 100%; padding: 10px 20px 10px 10px; }
.searchandfilter div > ul li.cat-item label:hover { cursor: pointer; opacity: 0.7; }
.searchandfilter input[type="submit"] { display: none; }
.searchandfilter ul li.cat-item:after { background: #2a7607; }
@media screen and (max-width: 600px) {
  .searchandfilter div > ul li ul { justify-content: space-between; }
  .searchandfilter div > ul li.cat-item { width: 49%; margin: 0 0 2vw; }
}

/* archive-qa.php
======================================================== */
.ArchiveQA { position: relative; padding: 0; border-bottom:1px  #eaeaea solid; }
.ArchiveQA a { display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; padding: 20px 0; color: #333; text-decoration: none; }
.ArchiveQA h3 { margin: 0 0 2rem; /* padding: 0 0 20px; width: 100%; color: #e85224; font-size: 2.0rem; background: none; border: none; */ }
.ArchiveQA h3:before { display: none; }
.ArchiveQA__Primary { width: 20%; }
.ArchiveQA__Image { width: 100%; }
.ArchiveQA__Image figure:before { padding-top: 100%; }
.ArchiveQA__Date { padding: 10px 0; color: #666; font-size: 1.3rem;}
.ArchiveQA__Category { display: flex; justify-content: flex-start; align-items: center; flex-wrap: wrap; padding: 10px 0 0; }
.ArchiveQA__Category span { display: inline-block; margin: 0 0.5rem 0.5rem 0; padding: 4px 8px; border-radius: 2px; background: #eaeaea; font-size: 1.4rem; }
.ArchiveQA__Info { position: absolute; left: 0; bottom: 3rem; width: 77%; display: flex; flex-direction: column; }
.ArchiveQA a:after { content: "続きを読む »"; position: absolute; right: 0; bottom: 3rem; padding: 10px 30px; color:#fff; font-size: 1.6rem; font-weight: 500; background: #f5800d; border-radius: 5px; }
.ArchiveQA__Text { padding: 1rem 0 7rem; font-size: 1.6rem; line-height: 1.5; }
@media screen and (max-width: 600px) {
  .ArchiveQA { padding: 0 0 4rem; }
  .ArchiveQA a { flex-direction: column; }
  .ArchiveQA a:after { padding: 10px 4vw; }
  .ArchiveQA__Primary { width: 100%; }
  .ArchiveQA__Date { position: absolute; bottom: 5rem }
  .ArchiveQA__Category { position: absolute; bottom: 0; padding: 0; width: 70%; }
  .ArchiveQA__Image { margin: 0 auto 3rem; width: 50%; }
  .ArchiveQA__Info { width: 100%; }
  .ArchiveQA__Text { padding: 1rem 0 5rem; }
}

/* Page Navi　
======================================================== */
.PageNavi { display: flex; flex-direction: column; width: 100%; margin: 0 auto; padding: 30px 0 60px; /* border-top: 1px solid #dedede; */ }
.PageNavi__Info { padding-bottom: 20px; }
.PageNavi__Info, .wp-pagenavi { display: flex; justify-content: center; margin: 0; width: 100%; }
.wp-pagenavi .pages, .wp-pagenavi .previouspostslink .wp-pagenavi .nextpostslink { display: none; }
.wp-pagenavi a, .wp-pagenavi span { padding: 0.5vw 0.75vw !important; border: 1px solid #cacaca !important; border-radius: 3px; }
.wp-pagenavi span.current { color: #fff; background: #2a7607; }
.wp-pagenavi a:hover, .wp-pagenavi span.current { border-color: #cacaca; }
.wp-pagenavi a, .wp-pagenavi span { font-weight: bold; color: #333; }
.wp-pagenavi a:hover { background: #f5f4f0; }

@media screen and (max-width: 600px) {
  .PageNavi { margin: 0 auto; padding: 2rem 0 6rem; width: 100%; flex-direction: column; }
  .PageNavi div { text-align: center; font-size: 1.6rem; flex-wrap: wrap; }
  .PageNavi__Info { padding-bottom: 4vw; }
  .wp-pagenavi { width: 100%; }
  .wp-pagenavi a, .wp-pagenavi span { padding: 2vw 3vw !important; font-size: 1.8rem !important; }
}

/* この記事は約●分で読めます　
======================================================== */
.span-reading-time { display: block; padding: 0 0 30px; }
.span-reading-time .rt-time:first-letter { display: none; }

/*下層親子ページ*/
.page_under01 { clear: both; margin: 50px 0; border-bottom: none; }
.page_under01 a { text-decoration: none; }
.page_footer_contents.pc { margin-top: 40px; }
.page .page_under01 ul li a { display: block; padding: 13px 10px; color: #333; text-decoration: none; font-size: 1.6rem; }
.page .page_under01 ul li:last-child a { border-bottom: none; }
.page_under01 ul.parent li a { padding: 15px 10px; color: #fff; }
.page_under01 ul.child li a:before { content: " \f105"; font-family: "Font Awesome 5 Free"; font-weight: 900; padding: 0 5px 0 0; }
.page_under01 ul.child li a { display: block; padding: 13px 35px; }
.page_under01 ul.child li a:hover { background: #eefffe; }
@media screen and (max-width: 600px) {
  .page_under01 { margin-bottom: 6vw; }
  .page_under01 ul.child li a { padding: 5vw; }
  .pagenation li { display: inline-block; padding: 0 0.67vw; }
  .pagenation li a { display: block; padding: 2vw 1.73vw; color: #4c4c4c !important; text-decoration: none; padding: 2vw 4vw !important; font-size: 1.3rem !important; }
  .page_under01 ul.children { margin-left: 0 !important; }
}

/* 親子孫ページのリスト */
.ParentChild { margin: 40px auto; width: 100%; font-size: 1.6rem; border: 1px solid #2a7607; }
.ParentChild__Heading a { display: block; padding: 1.5rem 1rem; color: #fff; text-decoration: none; background: #2a7607; /* pointer-events: none; */ }
.ParentChild ul { margin: 0; padding: 0; list-style: none; }
.ParentChild ul li { padding-bottom: 0; }
.ParentChild ul li a { display: block; padding: 1.5rem 2.5rem; color: #3f3f3f; text-decoration: none; border-bottom: 1px solid #2a7607; }
.ParentChild ul li a:before { display: inline-block; color: #2a7607; content: " \f105"; font-family: "Font Awesome 6 Free"; font-size: 1.4rem; font-weight: 700; padding: 0 0.5rem 0 0; }
.ParentChild ul li a:hover { background: #e9f4f3; }
.ParentChild ul li:last-child a { border-bottom: none; }
.ParentChild ul li.page_item_has_children ul li a { padding: 1.5rem 3.5rem; border-bottom: 1px solid #2a7607; }
.ParentChild ul li.page_item_has_children ul li a:before { content: " \f0da"; }
.ParentChild dl { margin: 0; padding: 0; /* ▼定義型リスト */ }
.ParentChild dl dt a { padding: 1.5rem 2.5rem; }
.ParentChild dl dd a { padding: 1.5rem 2.5rem 1.5rem 5rem; }
.ParentChild dl dt a,
.ParentChild dl dd a { display: block; color: #333; text-decoration: none; border-bottom: 1px solid #1aa99e; }
.ParentChild dl dt a:before { content: " \f105"; }
.ParentChild dl dd a:before { content: " \f0da"; }
.ParentChild dl dt a:before,
.ParentChild dl dd a:before { display: inline-block; color: #1aa99e; font-family: "Font Awesome 6 Free"; font-size: 1.4rem; font-weight: 700; padding: 0 0.5rem 0 0; }
.ParentChild dl dt:last-child a,
.ParentChild dl dd:last-child a { border-bottom: none; }
.ParentChild dl dt a:hover,
.ParentChild dl dd a:hover { background: #e9f4f3; }

/* ページネーション */
ul.pagenation { display: flex; justify-content: space-between; border-top: 1px solid #efefef; text-align: center; margin: 50px 0 0; padding: 20px 0 60px; }
.pagenation li { display: inline-block; padding: 0 5px; }
.pagenation li a { display: block; padding: 12px 30px;font-size: 1.4rem; color: #000; text-decoration: none; border: 1px solid #2a7607; }
.pagenation li a:hover { color: #fff; background: #2a7607; opacity: 1.0; }
@media screen and (max-width: 600px) {
  ul.pagenation { padding: 2rem 0 6rem; }
}

/* Author
======================================================== */
.SubPage__Author { position: relative; margin: 0 auto; padding: 30px 15px; width: 710px; border: 1px solid #bababa; }
.SubPage__AuthorHeading { position: absolute; top: -90px; left: -1px; display: flex; justify-content: center; align-items: center; padding: 0; width: 160px; height: 40px; color: #fff; font-size: 1.4rem; text-align: center; background: #aaa; border: none; }
.Author__Info { display: flex; justify-content: space-between; align-items: flex-start; padding: 0 0 15px; width: 100%; }
.Author__Primary { width: 200px; background: none; border: 1px solid #bababa; }
.Author__Primary:before { padding-top: 105%; }
.Author__Primary img { margin: 0; }
.Author__Secondary { margin: 0 10px 0 0; width: 480px; }
.Author__SubHeading { display: flex; align-items: center; justify-content: flex-start; margin: 0 0 10px !important; padding: 0; font-size: 1.5rem; font-weight: bold; background: none; border: none; }
.Author__SubHeading:after { content: ""; border-top: 1px solid #e6e6e6; flex-grow: 1; margin-left: 1rem; }
.Author__Name { display: block; margin-bottom: 0 !important; padding: 5px 0 25px; font-size: 1.7rem; }
.Author__Name strong { color: #333 !important; }
.Author__Text { margin-bottom: 0 !important; font-size: 1.4rem; line-height: 1.65; }
.Author__Secondary .Author__Text { padding: 0 10px 0 0; }
.Author__Activity .Author__Text { padding: 0 30px 0 0; }

@media only screen and (min-width:600px) and (max-width:1100px) {
  .SubPage__Author { padding: 3vw 2%; width: 96%; }
  .SubPage__AuthorHeading { top: -5vw; width: 18vw; height: 5vw; font-size: 1.7vw; margin: 0 !important; }
  .Author__Info { padding: 0 0 1.5vw; }
  .Author__Primary { width: 28%; }
  .Author__Secondary { width: 66%; }
  .Author__Name { padding: 0.5vw 0 2.5vw; font-size: 2.1vw; }
  .Author__SubHeading { margin: 0 0 1vw !important; font-size: 1.8vw; }
  .Author__Text { font-size: 1.7vw; }
  .Author__Activity { width: 98%; }
}

@media screen and (max-width: 600px) {
  .SubPage__Author { padding: 6vw 0; width: 100%; }
  .SubPage__AuthorHeading { top: -8vw; width: 36vw; height: 8vw; font-size: 1.6rem; margin: 0 !important; }
  .Author__Info { flex-direction: column; padding: 0 0 5vw; }
  .Author__Primary { margin: 0 auto !important; width: 50%; }
  .Author__Secondary { margin: 0 auto !important; width: 90%; }
  .Author__Name { padding: 3vw 0 5vw; width: 100%; font-size: 1.9rem; text-align: center; }
  .Author__SubHeading { margin: 0 0 2vw !important; font-size: 1.8rem; }
  .Author__Text { font-size: 1.7rem; line-height: 1.5; }
  .Author__Activity { margin: 0 auto !important; width: 90%; }
}

/* Search Results
======================================================== */
.SearchResults li { margin: 0; }
.SearchResults li a { display: block; padding: 1.5rem 0; border-bottom: 1px dotted #eee; }

/* TOC＋
======================================================== */
#toc_container.no_bullets li, #toc_container.no_bullets ul, #toc_container.no_bullets ul li, .toc_widget_list.no_bullets, .toc_widget_list.no_bullets li { padding: 0.4em; }

/* Slick
======================================================== */
.slick-prev, .slick-next { font-size: 0; line-height: 0; position: absolute; top: 50%; display: block; width: 12vw; height: 12vw; padding: 0; -webkit-transform: translate(0, -50%); -ms-transform: translate(0, -50%); transform: translate(0, -50%); cursor: pointer; color: transparent; border: none; outline: none; background: transparent; }
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus { color: transparent; outline: none; background: transparent; }
.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before { opacity: 1; }
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before { opacity: .25; }
.slick-prev:before, .slick-next:before { font-family: 'slick'; font-size: 20px; line-height: 1; opacity: 1; color: white; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.slick-prev { left: -25px; }
[dir='rtl'] .slick-prev { right: -25px; left: auto; }
.slick-prev:before { content: '←'; }
[dir='rtl'] .slick-prev:before { content: '→'; }
.slick-next { right: -25px; }
[dir='rtl'] .slick-next { right: auto; left: -25px; }
.slick-next:before { content: '→'; }
[dir='rtl'] .slick-next:before { content: '←'; }
.slick-dotted.slick-slider { margin-bottom: 30px; }
.slick-dots { position: absolute; bottom: -2vw; display: block; width: 100%; padding: 0; margin: 0; list-style: none; text-align: center; }
.slick-dots li { position: relative; display: inline-block; width: 20px; height: 20px; margin: 0 5px; padding: 0; cursor: pointer; }
.slick-dots li { background: none !important; border: none !important; }
.slick-dots li button { font-size: 0; line-height: 0; display: block; width: 20px; height: 20px; padding: 5px; cursor: pointer; color: transparent; border: 0; outline: none; background: transparent; }
.slick-dots li button:hover, .slick-dots li button:focus { outline: none; }
.slick-dots li button:hover:before, .slick-dots li button:focus:before { color: #917b00; opacity: 0.7; }
.slick-dots li button:before { font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 1.5rem; line-height: 20px; position: absolute; top: 0; left: 0; width: 20px; height: 20px; content: '\f111'; text-align: center; opacity: .25; color: black; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.slick-dots li.slick-active button:before { opacity: 1; color: #917b00; }
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }
.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }
.slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
.slick-track { position: relative; top: 0; left: 0; display: block; margin-left: auto; margin-right: auto; }
.slick-track:before, .slick-track:after { display: table; content: ''; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }
.slick-slide { display: none; float: left; min-height: 1px; }
[dir='rtl'] .slick-slide { float: right; }
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }
.slick-arrow.slick-hidden { display: none; }
.slider .slick-arrow { width: 1.75vw; height: auto; position: absolute; z-index: 1; top: 47%; opacity: 0.5; }
.slider .slick-arrow:hover { opacity: 1; cursor: pointer; }
.slider .prev-arrow { left: 0; }
.slider .next-arrow { right: 0; }

.column-h1{
    clear: both;
    margin: 0 auto 3rem;
    padding: 15px 2%;
    width: 96%;
    color: #fff;
    font-size: 2.5rem;
    font-weight: bold;
    line-height: 1.3;
    background: linear-gradient(to bottom, #2a7607, #285f0f);
    background: -moz-linear-gradient(top, #2a7607, #285f0f);
    background: -webkit-linear-gradient(top, #2a7607, #285f0f);
}

.column-title{
	margin: 0 auto;
    width: 1100px;
    color: #fff;
    font-size: 1.4rem;
}