@charset "utf-8";
/* 基本・リセット */
html {scroll-behavior:smooth; height:100%; background:#fff;}
body {margin:0px; padding:0; -webkit-text-size-adjust:none; font:13px/23px "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,ＭＳ Ｐゴシック,sans-serif; height:100%;}
body > #body {height:auto;}
#wrapper {margin:0 auto; padding:0; position:relative; height:auto; min-height:100%;}
.container {width:100%; height:100%;}
h1,
h2,
h3,
h4,
h5,
h6,
p {margin:0 0 20px;}
ul,
ol {padding:0; margin:0;}
#description h1,
#description p {font-size:12px; font-weight:normal; text-align:center;}
img {border:none; padding:0; margin:0; vertical-align:bottom;}
a:link,
a:visited {color:#000; text-decoration:none;}
a:hover {color:#666; text-decoration:none;}
a:active {color:#333; text-decoration:none;}
a {-webkit-transition:0.3s ease-in-out; transition:0.3s ease-in-out;}
.entry-title a:link,
.entry-title a:visited,
.entry-title a:hover,
.entry-title a:active {color:#4A381C; text-decoration:none;}
.screen-reader-text {display:none;}
.clear {clear:both;}
.clear hr {display:none;}
hr {background-color:#ddd; border:0; height:1px; clear:both; margin:30px auto;}
blockquote {margin:0px 0px 20px; padding:10px 20px 10px 20px; background-color:#fff; border:1px solid #4A381C; border-radius:5px;}
blockquote h5 {color:#4A381C;}
blockquote blockquote {margin:20px 0; background-color:#000;}
blockquote blockquote blockquote {margin:20px 0; background-color:#f4f4f4;}
blockquote p {padding:0px; margin:0px;}
table {width:100%; margin-bottom:20px;}
th {padding:0 10px; border-bottom:1px solid #C8C4C4; color:#4A381C; font-weight:normal; width:11em;}
td {padding:0 10px; border-bottom:1px solid #C8C4C4;}
object,
embed {display:block; margin:auto;}
li {list-style-type:none;}
/* ユーティリティ */
.float_left {display:inline; float:left;}
.float_right {display:inline; float:right;}
.p0 {padding:0px;}
.pt0 {padding-top:0px;}
.pt3 {padding-top:3px;}
.pt4 {padding-top:4px;}
.pt5 {padding-top:5px;}
.pt7 {padding-top:7px;}
.pt10 {padding-top:10px;}
.pt15 {padding-top:15px;}
.pt16 {padding-top:16px;}
.pt18 {padding-top:18px;}
.pt20 {padding-top:20px;}
.pt25 {padding-top:25px;}
.pt30 {padding-top:30px;}
.pt40 {padding-top:40px;}
.pt50 {padding-top:50px;}
.pt60 {padding-top:60px;}
.pt70 {padding-top:70px;}
.pb7 {padding-bottom:7px;}
.pb15 {padding-bottom:15px;}
.pb20 {padding-bottom:20px;}
.pb30 {padding-bottom:30px !important;}
.pl10 {padding-left:10px;}
.pl20 {padding-left:20px;}
.pl50 {padding-left:50px;}
.pl100 {padding-left:100px;}
.pr0 {padding-right:0px !important;}
.pr5 {padding-right:5px !important;}
.pr7 {padding-right:7px !important;}
.pr10 {padding-right:10px !important;}
.pr20 {padding-right:20px;}
.m0 {margin:0px;}
.mt0 {margin-top:0px !important;}
.mt5 {margin-top:5px;}
.mt10 {margin-top:10px;}
.mt15 {margin-top:15px;}
.mt20 {margin-top:20px !important;}
.mt25 {margin-top:25px !important;}
.mt30 {margin-top:30px !important;}
.mt40 {margin-top:40px !important;}
.mt50 {margin-top:50px;}
.mt80 {margin-top:80px;}
.mt100 {margin-top:100px;}
.mt180 {margin-top:180px;}
.mt-5 {margin-top:-5px;}
.mt-6 {margin-top:-6px;}
.mt-25 {margin-top:-25px !important;}
.ml5 {margin-left:5px;}
.ml10 {margin-left:10px !important;}
.ml20 {margin-left:20px !important;}
.ml-5 {margin-left:-5px;}
.mr0 {margin-right:0px !important;}
.mb0 {margin-bottom:0px !important;}
.mb10 {margin-bottom:10px !important;}
.mb15 {margin-bottom:15px !important;}
.mb20 {margin-bottom:20px !important;}
.mb25 {margin-bottom:25px;}
.mb27 {margin-bottom:27px;}
.mb28 {margin-bottom:28px;}
.mb30 {margin-bottom:30px;}
.mb40 {margin-bottom:40px;}
.mb50 {margin-bottom:50px;}
.mb60 {margin-bottom:60px;}
.mb70 {margin-bottom:70px;}
.mb80 {margin-bottom:80px;}
.mb13em {margin-bottom:1.3em;}
.mb-10 {margin-bottom:-10px;}
.mb-15 {margin-bottom:-15px;}
.mb-20 {margin-bottom:-20px;}
.mb-25 {margin-bottom:-25px;}
.mb-27 {margin-bottom:-27px;}
.mb-28 {margin-bottom:-28px;}
.mb-30 {margin-bottom:-30px;}
.mb-40 {margin-bottom:-40px;}
.mb-50 {margin-bottom:-50px;}
.mb-60 {margin-bottom:-60px;}
.fs8 {font-size:8px !important;}
.fs9 {font-size:9px !important;}
.fs10 {font-size:10px !important;}
.fs11 {font-size:11px !important;}
.fs14 {font-size:14px !important;}
.fs15 {font-size:15px !important;}
.bold {font-weight:bold;}
.normal {font-weight:normal;}
.lh05 {line-height:0.5em;}
.lh1 {line-height:1em;}
.lh13 {line-height:1.3em;}
.lh14 {line-height:1.4;}
.lh15 {line-height:1.5em;}
.lh2 {line-height:2em;}
.lh25 {line-height:2.5em;}
.w150 {width:150px;}
.yellow {color:#fbc200;}
.times {font-family:Georgia, "Times New Roman", Times, serif;}
.relative {position:relative;}
.align_center {text-align:center !important;}
.align_right {text-align:right !important;}
/* 大枠PCレイアウト */
.l-header,
#header {width:1100px; position:relative; padding:38px 0 46px; margin:0 auto; text-align:center;}
#logo p {margin:0 0 10px;}
#lastUpdate {position:absolute; bottom:46px; left:0; margin:0;}
#lastUpdate p {margin:0; line-height:1; font-size:10px;}
.search1 {position:absolute; bottom:0; right:0;}
.search2 {position:absolute; bottom:0; left:0;}
#searchform {border:1px solid #ddd; padding:0 10px 0 22px; border-radius:15px; line-height:1; background-color:#fff; background-image:url(img/ico_search.png); background-position:2px 50%; background-repeat:no-repeat; position:absolute; bottom:46px;}
.search1 #searchform {right:0;}
.dark-style #searchform {border-color:#555; background-color:#484848; color:#eee;}
#searchform:hover {border-color:#999;}
#searchform label,
#searchform input#searchsubmit {display:none;}
#searchform input#s {outline:none; padding:5px; width:138px; border-style:none; color:#999; box-shadow:none; font-size:14px;}
#searchform.focused {border-color:#333;}
#searchform.focused input#s {color:inherit;}
#search3 {padding-top:0px; padding-bottom:0px;}
#search3 #searchform2 {width:210px; color:#333; background-color:#fff; font-size:14px; position:relative;}
#search3 #searchsubmit {position:absolute; top:0; left:210px;}
*:first-child + html #search3 #searchsubmit {top:1px;}
#search3 #search #searchform {position:relative;}
.error404 h3 {margin-bottom:20px; font-size:15px; border-bottom:1px solid #000; padding-bottom:5px;}
.anime02a {width:213px; margin:0 auto; transition:1s ease-in-out;}
.anime02a:hover {transform:rotate(360deg);}
#contentsArea,
.l-wrapper {display:flex; justify-content:space-between; width:1100px; margin:0 auto; box-sizing:border-box;}
#sideLeft {width:181px; padding:0; position:relative; flex-shrink:0; box-sizing:border-box;}
#sideRight {width:183px; padding:0; position:relative; flex-shrink:0; box-sizing:border-box;}
#contents {width:auto; flex-grow:1; display:flex; justify-content:space-between; padding:0; box-sizing:border-box;}
#main,
.l-main {width:736px; padding:0 40px; box-sizing:border-box; flex-shrink:0;}
.main_in {margin:0 auto; min-height:500px;}
/* 下層パーツ・汎用 */
.indexTitle {margin:15px 0 10px; line-height:30px;}
.c-index-title {display:flex; align-items:center; flex-wrap:wrap; gap:10px;}
.indexTitleSub {font-size:14px; margin-left:0;}
.c-index-title__main {display:inline-block; font-size:26px; font-weight:bold; color:#000; letter-spacing:0.03em; line-height:1.2; vertical-align:middle;}
.c-index-title__badge {flex-shrink:0;}
/* 見出しの黄色い英語バッジ(元title-about.png等のCSS化) */
.c-title-badge {display:inline; background-image:linear-gradient(#FFF100, #FFF100); background-repeat:no-repeat; background-size:150% 50%; background-position:bottom; color:#000; font-weight:bold; font-size:14px; padding:0; margin-left:8px; letter-spacing:0.03em; white-space:nowrap;}
.c-title-badge--pickup {margin-left:0; font-size:11px;}
.responsive-img,
.responsive-title {max-width:100%; height:auto; display:block;}
.c-card-grid {display:grid; grid-template-columns:repeat(3, 1fr); gap:20px;}
.c-card__inner {text-decoration:none; color:inherit; display:flex; flex-direction:column; height:100%;}
.c-card__thumb {overflow:hidden; margin-bottom:10px;}
.c-card__thumb img {width:100%; height:auto; transition:transform 0.4s ease; display:block;}
.c-card__content {transition:opacity 0.3s ease;}
.c-card__inner:hover .c-card__thumb img {transform:scale(1.05);}
.c-card__inner:hover .c-card__content {opacity:0.7;}
.c-card__title,
.mainNews h3 {font-size:15px; margin:0; padding:0 0 11px 0;}
.mainNews {display:flex; flex-wrap:wrap; justify-content:space-between; margin:0; padding:0;}
.mainNewsIn {width:31%; margin-left:0; display:flex; flex-direction:column;}
.MN_txt {line-height:1.3em; width:100%; box-sizing:border-box;}
.MN_cate {font-size:12px; font-weight:bold; color:#fbc200; margin:0; padding:10px 0 3px 0;}
.MN_cateBorder {border-bottom:1px solid #000;}
.MN_day {font-size:9px; font-weight:bold;}
a.article-inner {text-decoration:none; color:inherit; display:block; height:100%;}
a.article-inner:hover .article-thumb img {transform:scale(1.05);}
a.article-inner:hover .article-content {opacity:0.7;}
.bl-hover {cursor:pointer; opacity:.50; filter:alpha(opacity=50); transition:0.3s;}
h4.sideTitle {margin:0; padding:0; line-height:1;}
.sideTitleTxt {line-height:2em; font-size:15px;}
.play {position:relative;}
.playIco {position:absolute; top:35%; left:40%;}
ul.arrowlist {margin:0; padding-top:10px;}
ul.arrowlist li {margin:0; padding:0; list-style-type:none; padding:4px 0 4px 8px; background-image:url(img/arrow_s.png); background-repeat:no-repeat; background-position:left center; letter-spacing:-0.8px; line-height:1.3em;}
ol.arrowlist li {list-style-type:decimal-leading-zero; list-style-position:inside; padding:4px 0; background-repeat:no-repeat; background-position:left center; letter-spacing:-0.8px; line-height:1.3em;}
.sideTokusyu {font-size:18.5px; letter-spacing:0.07em; position:relative;}
.a-btn2,
.a-btn4 {padding:0;}
.a-btn-symbol2,
.a-btn-symbol3 {font-family:'WebSymbolsRegular', cursive; color:#555; font-size:20px; text-shadow:1px 1px 2px rgba(255,255,255,0.5); position:absolute; right:20px; line-height:32px; transition:opacity 0.3s ease-in-out;}
.a-btn-slide-icon2 {position:absolute; width:10px; height:10px; background:transparent url(img/arrow_side.png) no-repeat top left; right:-5px; bottom:10px;}
.a-btn-slide-icon3 {position:absolute; width:10px; height:10px; background:transparent url(img/arrow_side.png) no-repeat top left; right:-5px; bottom:8px;}
.a-btn2:hover .a-btn-symbol2 {opacity:0;}
.a-btn2:hover .a-btn-slide-icon2 {animation:slideRight 0.5s linear infinite; opacity:0.4;}
.a-btn-slide-icon4:after {content:""; width:10px; height:10px; background:transparent url(img/arrow_side.png) no-repeat top left; position:absolute; bottom:10px; right:-5px;}
.a-btn-slide-icon4:hover {opacity:0.4;}
@keyframes slideRight {
  0% {right:-5px;}
  100% {right:-15px;}
}
/* 右サイドバー共通の見出し(youtube・人気の記事・SUGGEST A SHOPで統一)
   文字の下半分だけに黄色いマーカー(ハイライター)を引いて、少し遊び心のある見た目にする */
.c-side-heading {display:flex; align-items:center; justify-content:center; gap:6px; margin:0 0 10px; font-size:14px; font-weight:bold; color:#1a1a1a; letter-spacing:0.03em;}
.c-side-heading span {color:#1a1a1a; background-image:linear-gradient(#FFF100,#FFF100); background-repeat:no-repeat; background-size:100% 45%; background-position:bottom; padding:0 3px;}

/* 動画(YouTube遷移用サムネイル) */
.c-movie-thumb-link {display:block; text-decoration:none; margin-bottom:30px; transition:opacity 0.3s ease;}
.c-movie-thumb-link:hover {opacity:0.85;}
.c-movie-thumb {display:block; width:100%; aspect-ratio:16/9; position:relative; background-color:#000; background-size:cover; background-position:center; border-radius:4px; overflow:hidden;}
.c-movie-thumb__play {position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:0; height:0; border-style:solid; border-width:11px 0 11px 18px; border-color:transparent transparent transparent rgba(255,255,255,0.92); filter:drop-shadow(0 1px 2px rgba(0,0,0,0.6));}
.c-movie-thumb__title {display:block; margin-top:8px; font-size:12px; line-height:1.4; color:#333; text-align:left;}
.c-movie-thumb__more {display:block; font-size:11px; color:#999; text-align:end;}

#movieArchive {margin:12px 0 30px; border:none; width:180px; position:relative;}
/* 記事一覧ページ下部(スマホ専用)に表示する「人気の記事」。
   右サイドバー(180px幅)と違い、本文幅いっぱいに使えるので2列表示にする */
.c-popular-articles-mobile {margin:40px 0; padding-top:20px; border-top:1px solid #eee;}
.c-popular-articles-mobile .c-popular-articles__list {display:grid; grid-template-columns:repeat(2, 1fr); gap:16px 12px;}
.c-popular-articles__list {list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:14px;}
.c-popular-articles__item {font-size:11px; line-height:1.3em;}
.c-popular-articles__link {display:block; text-decoration:none; color:#333; border-radius:6px; transition:opacity 0.2s ease;}
.c-popular-articles__link:hover {opacity:0.8;}
.c-popular-articles__thumb-wrap {display:block; position:relative;}
.c-popular-articles__thumb {display:block; width:100%; aspect-ratio:16/9; border-radius:6px; overflow:hidden;}
.c-popular-articles__thumb img {width:100%; height:100%; object-fit:cover; display:block;}
.c-popular-articles__rank {position:absolute; top:6px; left:6px; display:flex; align-items:center; justify-content:center; width:20px; height:20px; border-radius:50%; background:rgba(0,0,0,0.55); color:#fff; font-size:11px; font-weight:bold; line-height:1;}
.c-popular-articles__rank--1 {background:#F8B62B;}
.c-popular-articles__rank--2 {background:#B0B0B0;}
.c-popular-articles__rank--3 {background:#C08A4E;}
.c-popular-articles__title {display:block; margin-top:6px; font-size:11px; line-height:1.4; text-align:left;}

/* 「お店の推薦」募集バナー: 見出しは.c-side-headingに統一し、その下に
   三角屋根の家のような黄色い土台(ストライプ)+白い中身のボックスを配置する */
.c-boshuu-banner {display:block; text-decoration:none; transition:opacity 0.3s ease;}
.c-boshuu-banner:hover {opacity:0.85;}
.c-boshuu-banner__roof {display:block; width:0; height:0; margin:0 auto; border-left:92px solid transparent; border-right:92px solid transparent; border-bottom:24px solid #FFF100;}
.c-boshuu-banner__body {display:block; border-radius:0 0 4px 4px; background-color:#FFF100;}
.c-boshuu-banner__inner {display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; text-align:center; border-radius:2px; padding:14px 10px;}
.c-boshuu-banner__main {font-size:12px; font-weight:bold; color:#1a1a1a;}
.c-boshuu-banner__sub {font-size:15px; font-weight:bold; color:#1a1a1a; line-height:1.3;}
.borderBox {background:url(img/bg_border.png) repeat; padding:20px 18px 20px 20px; margin-top:2px;}
.sideArea {padding:0;}
.sideArea .sideIndexMenu {padding:40px 0 0 0; position:relative;}
#sideFloatMenu {width:96px; height:100px; text-align:center; padding-top:100px;}
#floatMenu {width:96px; position:absolute; text-align:center; padding-top:100px; left:10px;}
#floatMenu2 {width:96px; position:absolute; text-align:center; left:10px; bottom:0;}
#sideIndex {background:url(img/bg_masu.png) repeat;}
.sideIndexIn {padding:18px;}
h2.sideIndexTitle {background-color:#fff; width:72px; height:24px;}
.sideIndexMenu {font-size:15px; position:relative; font-weight:bold;}
.sideIndexMenu2 {font-size:15px; position:relative; padding-top:5px;}
.sideIndexMenu .sText {font-size:11px; line-height:0.5em;}
.sideIndexMenu li {line-height:1.3em; cursor:pointer; list-style-type:none; position:relative; padding:6px 10px;}
.sideIndexMenu2 li {line-height:1.3em; cursor:pointer; list-style-type:none; position:relative; padding:6px 0;}
.sideIndexMenu li:first-child {padding-top:0;}
.sideIndexMenu li a:hover {color:#666;}
.sideMenuArea2 {padding-top:12px;}
.sideMenuContact p {margin:0; line-height:1; padding-top:10px;}
.sideBackno_title {margin:22px 0 12px;}
#sideBackno li {padding-bottom:6px; list-style-type:none;}
#sitsumon h2 {text-align:center;}
.graf {padding-top:48px; text-align:center;}
.qaBox {width:613px; padding-top:40px;}
.q_left {float:left; display:inline; width:148px;}
.q_right {float:right; display:inline; width:433px; padding-left:30px; font-size:12px; text-align:justify; text-justify:inter-ideograph;}
.q_right p {margin-top:-5px;}
.qa_day {padding-top:10px; text-align:right; font-size:9px; font-weight:bold;}
#report {padding-bottom:5px; text-align:left;}
#report h1 {font-size:36px; font-weight:bold; line-height:1.3em; letter-spacing:0.1em; margin:0 0 7px 0;}
#report h2 {font-size:20px; font-weight:bold; line-height:1.3em; letter-spacing:0.1em; margin:-10px 0 7px 0;}
.tenpoTitle {font-size:210%; line-height:1.5; padding-bottom:10px;}
.sCopy {font-size:15px; letter-spacing:0.1em; padding-bottom:8px; line-height:1em; font-weight:bold; margin:-20px 0 5px;}
.sCopy2 {font-size:14px; letter-spacing:0.1em; padding-bottom:8px; line-height:2.3em;}
.tBox_Read {padding:8px 0 45px 0;}
.tBox_Read2 {padding:0 0 45px 0;}
.tBox_Rtxt {padding:0; text-align:justify; text-justify:inter-ideograph;}
.editor {font-size:9px; font-weight:bold; margin-bottom:20px; display:block;}
.tBox_sTitle {display:flex; padding-bottom:6px; align-items:center;}
.tBox {text-align:justify; text-justify:inter-ideograph; padding-bottom:30px;}
.tLink {padding-left:15px; float:right; position:relative;}
.tBox_txt {padding:30px 0 0 0;}
.tBox_txt p {margin:0;}
.tShop {padding-bottom:7px;}
.tShopBox {margin-bottom:7px; background-color:#efefef; padding:25px 23px;}
.tShopNo {line-height:1.2em; width:45px; padding-right:20px; flex-shrink:0;}
.tShopPh {padding-right:9px;}
.tShopInfo {font-size:11px; line-height:1.4; padding-left:8px; width:220px;}
.tShopInfo_tokusyus {font-size:11px; line-height:1.4; padding-left:8px; width:200px; flex-grow:1;}
.tShopInfo h5 {font-size:15px; margin-bottom:13px;}
.tShopInfo p {margin:0; word-wrap:break-word; width:212px; font-size:13px; line-height:1.6;}
.tShopInfo_tokusyus p a,
.tShopInfo p a {text-decoration:none; padding-top:5px; display:block;}
.tShopInfo_tokusyus h5 {font-size:15px;}
.tShopBox2 {background-color:#efefef; padding:30px 20px 30px 27px;}
.repoline {border:2px solid #000; margin-bottom:85px; height:0;}
.repoline2 {border:2px solid #000; margin:50px 0; height:0;}
.vol {letter-spacing:0.1em; vertical-align:top;}
.nengouL {float:left; width:120px;}
.nengouR {float:left; width:525px; padding-left:10px;}
.itemBox2 {border-bottom:1px solid; padding:10px 0; position:relative;}
.atarashimon .itemBox2 {border-bottom:1px solid; padding:40px 0; position:relative;}
.articleTitle {padding-bottom:10px;}
.date {font-size:11px; padding-top:10px; color:#fbc200;}
.nextPage {position:absolute; right:175px; bottom:0;}
#product .pTitle {background-color:#ae9150; padding:5px 0; font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif; border-bottom:none;}
.pTitle_in {border-bottom:1px solid #fff; font-weight:bold; font-size:130%; padding-top:4px;}
.arrow {padding:8px; text-align:right; padding-top:5px;}
.pcL-48 {height:auto; float:left; width:75%;}
.pcR-48 {float:right;}
.post-date2 {font-size:1.1rem; font-weight:normal; display:block; padding-top:0.2em; padding-right:15px;}
.post-title {border-bottom:1px solid #666; padding-bottom:0; margin-bottom:1.5em;}
.archive .post-date2 {font-size:0.8rem; font-weight:normal; display:inline; padding-top:0.2em; padding-right:20px;}
.archive .post-title {padding:20px 0; font-size:15px; margin:0;}
.border2 {border-bottom:2px solid #000; padding-bottom:5px;}
h1.arTitle {color:#000; margin-bottom:30px;}
.archive .arTitle {margin-bottom:0;}
span.arTitle {border-bottom:2px solid #000; padding-left:20px; font-weight:bold;}
.titleIcon {padding:0.3em 0 0.3em 20px;}
.arTitle {font-size:23px; padding-bottom:5px; margin:0; border-bottom:2px solid #000; letter-spacing:0.07em; line-height:1;}
.arContent {min-height:200px; margin-top:20px; word-wrap:break-word;}
.arContent p {word-wrap:break-word;}
.arContent a {background-repeat:no-repeat; background-position:left center;}
.siTitle {font-size:19px; letter-spacing:0.1em; line-height:1.5; margin-bottom:30px;}
.single-post .date {padding-top:0; margin-bottom:5px;}
.blogL {float:left; display:inline; width:475px;}
.blogR {float:right; display:inline; margin-left:20px;}
.profile {border:2px solid #000; padding:15px; width:105px;}
.blogR_wid {margin-bottom:30px;}
.blogR_wid h3 {font-size:16px; margin:0; padding-bottom:3px; line-height:0.7; font-family:Georgia, "Times New Roman", Times, serif;}
.blogR_wid .date {margin:-3px 0 0 0; padding:0;}
.name {font-size:16px; line-height:2; margin:-5px 0 0 0px;}
.profile p {margin:0; font-size:10px; line-height:1.5;}
.border3 {border-bottom:2px solid #000;}
.menuTop {margin-top:-180px; padding-top:180px;}
/* モダンUI対応 (PC用設定) */
@media (min-width: 769px) {
  div.c-sp-nav,
  label.c-nav-toggle-btn,
  nav.c-global-nav,
  input.c-nav-toggle,
  div.l-footer__banner,
  .u-sp-only {display:none !important;}
  .u-pc-only {display:block !important;}
  span.u-pc-only,
  a.u-pc-only,
  img.u-pc-only {display:inline-block !important;}
  footer.l-footer,
  div#footer {width:736px; margin:0 auto; padding:40px 0 20px; box-sizing:border-box; clear:both; display:block;}
  div.l-footer__inner {display:flex; flex-direction:column; align-items:center; margin-bottom:20px;}
  ul.l-footer__social {display:flex; justify-content:center; padding:0; margin:0 0 15px; list-style:none;}
  ul.l-footer__social li {padding:0 10px;}
  ul.l-footer__social img {width:auto; height:auto; vertical-align:middle;}
  ul.l-footer__menu {display:flex; justify-content:center; padding:0; margin:0 0 15px; list-style:none; border:none;}
  ul.l-footer__menu li {border-left:1px solid #000; padding:0 10px; line-height:1; display:flex; align-items:center;}
  ul.l-footer__menu li:last-child {border-right:1px solid #000;}
  ul.l-footer__menu li a {color:#000; font-size:11px; text-decoration:none; padding:0;}
  p.l-footer__copy {font-size:10px; color:#000; margin:0; text-align:center;}
}
/* 左サイドバー */
#sideLeft li {padding-bottom:10px;}
#sideLeft .cat-item a {display:block; padding:7px 10px; font-size:12px; position:relative; border-bottom:1px dotted #CCC; text-decoration:none; background:none; transition:background 0.3s;}
#sideLeft .cat-item a:hover {background:#eee;}
#sideLeft .cat-item a::after {content:''; display:block; width:10px; height:10px; background:transparent url(img/arrow_side.png) no-repeat center center; position:absolute; right:5px; top:50%; margin-top:-5px;}
/* サイドバーバナー(元sidebtn_bn01〜06画像のCSS化。色・寸法は元画像から実測) */
.c-side-banner {display:flex; align-items:center; gap:10px; width:181px; min-height:65px; padding:0 12px; box-sizing:border-box; background-color:#fff; background-image:repeating-linear-gradient(-52deg, #fff, #fff 5px, #ededed 5px, #ededed 9px); text-decoration:none; cursor:pointer;}
.c-side-banner--accent {flex-direction:column; align-items:flex-start; justify-content:center; gap:6px; min-height:84px; padding:10px; background-color:#fff; background-image:none; border:1px solid #000;}
.c-side-banner--stripe {flex-direction:column; align-items:flex-start; justify-content:center; gap:6px; min-height:84px; padding:10px; border:none; background-color:#fff; background-image:repeating-linear-gradient(-52deg, #fff, #fff 5px, #fff099 5px, #fff099 9px);}
.c-side-banner__row {display:flex; align-items:center; gap:8px; width:100%;}
.c-side-banner--accent .c-side-banner__row {padding-left:0; margin-left:-10px;}
.c-side-banner__badge {flex-shrink:0; width:42px; height:42px; border-radius:50%; background:#F8B62B; color:#000; font-weight:bold; font-size:20px; display:flex; align-items:center; justify-content:center; transition:background-color 0.25s ease;}
.c-side-banner__badge--ribbon {width:46px; height:38px; border-radius:0; padding-right:6px; clip-path:polygon(0 0, 100% 0, 80% 50%, 100% 100%, 0 100%);}
.c-side-banner__badge--yellow {background-color:#FFF100 !important;}
.c-side-banner--accent .c-side-banner__main,
.c-side-banner--stripe .c-side-banner__main {font-size:16px;}
a.c-side-banner:hover .c-side-banner__badge {background-color:#F39800;}
.c-side-banner__label {min-width:0;}
.c-side-banner__sub {display:block; font-size:13px; color:#333; line-height:1.5; font-weight:bold;}
.c-side-banner__main {display:block; font-weight:bold; font-size:17px; color:#211816; line-height:1.4;}
.c-side-banner__main rt {font-size:12px; font-weight:bold; color:#666; letter-spacing:0.05em; margin-bottom:7px;}
/* 下層ページのモダンリスト化 */
.c-ar-title {display:flex; align-items:center; flex-wrap:wrap; margin-bottom:20px; border-bottom:2px solid #000; padding-bottom:10px;}
.c-ar-title__img {margin-right:5px;}
.c-ar-title__text {font-size:20px; font-weight:bold; line-height:1;}
.c-ar-title__cat {font-size:20px; font-weight:bold; line-height:1; color:#000; white-space:nowrap;}
.c-ar-title__chip {display:inline-flex; align-items:center; background:hwb(46 40% 0% / 1); color:#000; font-weight:bold; font-size:16px; padding:5px 16px; border-radius:999px; line-height:1.3; vertical-align:middle; margin-left:1em;}
.c-ar-title__suffix {font-size:13px; font-weight:normal; color:#888; margin-left:10px; letter-spacing:0.02em; vertical-align:middle;}
.c-ar-card {display:flex; justify-content:space-between; padding:25px 0; border-bottom:1px solid #ccc;}
.c-ar-card__content {flex:1; display:flex; flex-direction:column; justify-content:space-between; padding-right:25px; box-sizing:border-box;}
.c-ar-card__thumb {flex:0 0 150px; width:150px; height:150px; text-align:right;}
.c-ar-card__thumb img {width:150px; height:150px; object-fit:cover; display:block;}
.c-ar-card__header {display:flex; align-items:baseline; margin-bottom:12px; border:none; padding-bottom:0;}
.c-ar-card__title {font-size:18px; margin:0; padding-right:15px; width:auto; border:none;}
.c-ar-card__title a {text-decoration:none; color:#000; font-weight:bold; line-height:1.4;}
.c-ar-card__meta {width:auto;}
.c-ar-card__meta .date {font-size:12px; color:#fbc200; font-weight:normal; margin:0; padding:0;}
.c-ar-card__sp-icon {height:14px; width:auto; margin-left:10px;}
.c-ar-card__excerpt {font-size:12px; line-height:1.6; color:#333; margin-bottom:15px; text-align:justify;}
.c-ar-card__footer {display:flex; justify-content:space-between; align-items:flex-end; position:relative;}
.c-ar-card__tags {flex-grow:1; font-size:11px; color:#999;}
.c-ar-card__tags ul {display:inline-flex; flex-wrap:wrap; padding:0; margin:0; list-style:none;}
.c-ar-card__tags ul li {margin:0; padding:0;}
.c-ar-card__tags ul li::before {content:"| "; color:#ccc;}
.c-ar-card__tags ul li:last-child::after {content:" |"; color:#ccc;}
.listTag li a {color:#999; text-decoration:underline !important;}
.listTag li a:hover {text-decoration:none !important;}
.c-ar-card__more {font-size:13px; font-weight:bold; color:#000; text-decoration:none; display:inline-flex; align-items:center;}
.c-ar-card__more::after {content:''; display:inline-block; width:10px; height:10px; background:transparent url(img/arrow_side.png) no-repeat center center; background-size:contain; margin-left:5px; position:static !important;}
/* 個別記事・関連記事 */
.tShopBox,
.tShopBox2 {display:flex; background:#f3f3f3; padding:20px; margin-bottom:20px; align-items:flex-start; gap:25px;}
.tShopPh {display:flex; gap:15px; flex-shrink:0;}
.tShopPh > div {line-height:0;}
.tShopInfo {flex-grow:1;}
.tShopInfo h5,
.tShopInfo_tokusyus h5 {font-size:18px; font-weight:bold; margin:0 0 10px 0; border:none;}
.tShopInfo_tokusyus p {font-size:13px; line-height:1.6; margin:0;}
ul.social {display:flex; justify-content:flex-start; align-items:center; flex-wrap:wrap; padding:0; margin:0 0 40px 0; gap:15px; list-style:none;}
ul.social li {margin:0; padding:0; display:block; line-height:1;}
.kanrenBox {margin-bottom:40px; clear:both;}
.kanrenBox h4 {border-bottom:2px solid #000 !important; font-size:18px !important; font-weight:bold !important; padding-bottom:8px !important; margin-bottom:20px !important;}
.kanrenBox ul {display:flex !important; flex-wrap:wrap !important; justify-content:space-between !important; padding:0 !important; margin:0 !important; list-style:none !important;}
.kanrenBox ul::before,
.kanrenBox ul::after {display:none !important;}
.kanrenBox ul li.clickBox {width:48% !important; margin-bottom:25px !important; float:none !important; box-sizing:border-box !important;}
.kanrenBox ul li.clickBox a {display:flex !important; align-items:flex-start !important; text-decoration:none !important; color:#333 !important;}
.kanrenBox ul li.clickBox a:hover {opacity:0.7 !important;}
.kanrenBox ul li.clickBox img {width:90px !important; height:90px !important; object-fit:cover; margin-right:15px !important; flex-shrink:0 !important; float:none !important;}
.kanrenBox ul li.clickBox h5 {font-size:14px !important; font-weight:bold !important; margin:0 !important; line-height:1.4 !important; border:none !important;}
.kanrenBox ul li.clickBox .sCopysub {font-size:11px !important; color:#777 !important; font-weight:normal !important; display:block !important; margin-bottom:5px !important;}
.clearfix::after {content:""; display:block; clear:both;}
#report .tBox {clear:both; overflow:hidden; padding-bottom:30px;}
#report .float_left {float:left; max-width:48%; margin-right:2%; margin-bottom:15px;}
#report .float_right {float:right; max-width:48%; margin-left:2%; margin-bottom:15px;}
#report .float_left img,
#report .float_right img {max-width:100%; height:auto; display:block;}
#report .video-container {position:relative !important; width:100% !important; padding-top:56.25% !important; height:0 !important; margin-bottom:30px !important;}
#report .video-container iframe {position:absolute !important; top:0 !important; left:0 !important; width:100% !important; height:100% !important;}
#report .video-container center {display:block !important; position:static !important;}
/* あたらしもん・ランキング */
.rankArea .c-rank-title {font-size:15px; font-weight:bold; color:#1a1a1a;}
.rankArea {margin:auto; padding:25px; background:#F7F7F7; box-sizing:border-box; margin-bottom:40px;}
.popular-posts.wpp-ajax,
#popular-post.rankList {margin:0; padding:0; width:100%; display:block;}
#popular-post ul.wpp-list {display:flex; gap:20px; margin:0; padding:0; list-style:none;}
.rankArea .bl-hot {background-color:transparent;}
#popular-post ul.wpp-list > li {flex:1; min-width:0; padding:0; position:relative; margin-top:36px;}
a.rank-inner {text-decoration:none !important; color:inherit; display:block; height:100%;}
.rank-thumb {overflow:hidden; margin-bottom:10px;}
.rank-thumb img {max-width:100%; height:auto; display:block; width:100%; transition:transform 0.4s ease;}
.rank-content {transition:opacity 0.3s ease;}
#popular-post ul.wpp-list > li h3 {font-size:13px; margin-bottom:0; line-height:1.4; word-break:break-word;}
a.rank-inner:hover .rank-thumb img {transform:scale(1.05);}
a.rank-inner:hover .rank-content {opacity:0.7;}
#popular-post ul.wpp-list > li:nth-child(-n+5)::before {content:""; position:absolute; top:-35px; left:10px; width:77px; height:29px; background-repeat:no-repeat; background-size:contain; z-index:999; pointer-events:none;}
#popular-post ul.wpp-list > li:nth-child(1)::before {background-image:url("img/rank-no1.png");}
#popular-post ul.wpp-list > li:nth-child(2)::before {background-image:url("img/rank-no2.png");}
#popular-post ul.wpp-list > li:nth-child(3)::before {background-image:url("img/rank-no3.png");}
#popular-post ul.wpp-list > li:nth-child(4)::before {background-image:url("img/rank-no4.png");}
#popular-post ul.wpp-list > li:nth-child(5)::before {background-image:url("img/rank-no5.png");}
@media screen and (max-width: 768px) {
  #popular-post ul.wpp-list {flex-direction:column;}
}
.atarashimon .itemBox2,
.itemBox2 {border-bottom:1px solid #333;}
.atarashimon .col2Box {display:flex; gap:30px; align-items:flex-start;}
.atarashimon .col2Box-img {flex-shrink:0; width:206px;}
.atarashimon .col2Box-img img {width:100%; height:auto; display:block;}
.atarashimon .col2Box-text {flex-grow:1;}
.atarashimon .col2Box-text.is-full {width:100%;}
.atarashimon .open,
.itemBox2 .open {color:#F6AD3C; font-size:30px; font-weight:bold; margin-bottom:20px; line-height:1.4; background:transparent; padding:0;}
.atarashimon .copy_text,
.itemBox2 .copy_text {font-size:18px; font-weight:normal; margin:0 0 10px; color:#333; line-height:1.6;}
.atarashimon h2,
.itemBox2 h2 {font-size:19px; font-weight:bold; line-height:1.4; margin:0;}
.atarashimon h2 a,
.itemBox2 h2 a {color:#000; text-decoration:none;}
.atarashimon h2 a:hover {opacity:0.7;}
.atarashimon .more {text-align:right; margin-top:15px;}
.c-ata-more {font-size:12px; font-weight:bold; color:#000; text-decoration:none; display:inline-flex; align-items:center;}
.c-ata-more::after {content:''; display:inline-block; width:10px; height:10px; background:transparent url(img/arrow_side.png) no-repeat center center; background-size:contain; margin-left:5px;}
.c-ata-more:hover {opacity:0.7;}
.privilege_wrap {border-top:1px solid #FFF100; border-bottom:1px solid #FFF100; border-right:1px solid #FFF100; margin-bottom:20px; width:100%; display:flex; align-items:stretch; box-sizing:border-box;}
.privilege_wrap h3 {background:#FFF100; font-size:18px; color:#000; padding:8px 10px; margin:0; display:flex; align-items:center; justify-content:center; width:75px; flex-shrink:0; text-align:center;}
.recruit_wrap {border-top:1px solid #97CBF1; border-bottom:1px solid #97CBF1; border-right:1px solid #97CBF1; margin-bottom:20px; width:100%; display:flex; align-items:stretch; box-sizing:border-box;}
.recruit_wrap h3 {background:#97CBF1; font-size:18px; color:#fff; padding:8px 10px; margin:0; display:flex; align-items:center; justify-content:center; width:75px; flex-shrink:0; text-align:center;}
.recruit_wrap a {color:#97CBF1; text-decoration:underline;}
.privilege {font-size:17px; font-weight:bold; padding:8px 15px; margin:0; display:flex; flex-direction:column; justify-content:center;}
.privilege p {margin-bottom:0; font-size:12px; font-weight:normal; margin-top:5px; color:#666;}
.col2Link {margin:20px 0 40px;}
/* あたらしもんページ見出し(元pageTitle_atarashimon.png・-2.pngのCSS化) */
h1.c-atarashimon-title {display:flex; flex-wrap:wrap; align-items:center; gap:10px 16px; border-bottom:none; padding-bottom:0; letter-spacing:normal;}
.c-atarashimon-title__badge {flex-shrink:0; width:40px; height:40px; border-radius:50%; background:#F8B62B; color:#000; font-weight:bold; font-size:17px; display:flex; align-items:center; justify-content:center;}
.c-atarashimon-title__main {font-weight:bold; font-size:26px; color:#211816; line-height:1;}
.c-atarashimon-title__sub {font-weight:bold; font-size:18px; color:#211816; line-height:1;}
/* あたらしもんページ クーポン/求人バナー(元atarashiLink01/02.pngのCSS化) */
.c-atarashimon-link {display:flex; align-items:center; justify-content:center; width:301px; max-width:100%; height:69px; box-sizing:border-box; padding:0 30px 0 15px; text-decoration:none; font-weight:bold; font-size:19px; color:#211816; background-color:#fff; clip-path:polygon(0 0, 82% 0, 100% 50%, 82% 100%, 0 100%); text-align:center;}
.c-atarashimon-link--yellow {background-image:repeating-linear-gradient(-52deg, #fff, #fff 5px, #fff099 5px, #fff099 9px);}
.c-atarashimon-link--blue {background-image:repeating-linear-gradient(-52deg, #fff, #fff 5px, #d5f0fc 5px, #d5f0fc 9px);}
.c-atarashimon-link:hover {opacity:0.85;}
/* パンくずリスト */
.breadcrumbsArea {text-align:right; padding:5px 0; box-sizing:border-box;}
.breadcrumbs {font-size:11px; color:#666;}
.breadcrumbs a {color:#333; text-decoration:none; transition:all 0.3s ease;}
.breadcrumbs a:hover {color:#fbc200; text-decoration:underline;}
.breadcrumbs span {color:#999;}
/* お問い合わせフォーム */
table.contact input[type="text"],
table.contact input[type="email"],
table.contact input[type="tel"],
table.contact select,
table.contact textarea {width:100%; padding:12px 15px; border:1px solid #ddd; border-radius:4px; background-color:#fafafa; box-sizing:border-box; font-size:16px; transition:border-color 0.3s, background-color 0.3s;}
table.contact input:focus,
table.contact select:focus,
table.contact textarea:focus {border-color:#fbc200; background-color:#fff; outline:none;}
table.contact {width:100%; border-collapse:collapse; margin-bottom:30px; box-sizing:border-box;}
table.contact th,
table.contact td {padding:20px 15px; border-bottom:1px solid #eee; line-height:1.6; vertical-align:middle; box-sizing:border-box;}
table.contact th {width:30%; background-color:#fcfcfc; font-weight:bold; text-align:left;}
.red {color:#E4232A; font-size:11px; margin-left:5px; vertical-align:top;}
input.wpcf7-submit {display:block; width:100%; max-width:400px; margin:40px auto 0; padding:18px 20px; border:none; border-radius:50px; background-color:#fbc200; color:#000; font-size:16px; font-weight:bold; letter-spacing:0.1em; cursor:pointer; box-shadow:0 4px 10px rgba(0,0,0,0.1); transition:all 0.3s ease;}
input.wpcf7-submit:hover {background-color:#e6b200; transform:translateY(-2px); box-shadow:0 6px 15px rgba(0,0,0,0.15);}
/* サイトマップ */
.c-sitemap {margin:0 0 40px 0;}
.c-sitemap__group {margin-bottom:25px; background:#fafafa; border-radius:6px; padding:20px; box-shadow:0 2px 4px rgba(0,0,0,0.05);}
.c-sitemap__group-title {font-size:18px; font-weight:bold; margin:0 0 15px 0; padding-bottom:10px; border-bottom:2px solid #fbc200;}
.c-sitemap__group-title a {display:block; color:#333; text-decoration:none; transition:opacity 0.3s ease;}
.c-sitemap__group-title a:hover {opacity:0.7;}
.c-sitemap__links {list-style:none; padding:0; margin:0;}
.c-sitemap__link-item {width:100%; box-sizing:border-box; margin:0 0 40px 0;}
.c-sitemap__link-item:last-child {margin-bottom:0;}
.c-sitemap__link {position:relative; display:flex; align-items:center; padding:14px 40px 14px 18px; background:#fff; border:1px solid #eee; border-radius:4px; font-size:15px; color:#333; text-decoration:none; transition:all 0.3s ease;}
.c-sitemap__link:hover {border-color:#fbc200; background:#fffdf5; color:#000;}
.c-sitemap__link::after {content:"\276F"; font-size:11px; color:#ccc; position:absolute; right:18px; top:50%; transform:translateY(-50%); transition:color 0.3s ease;}
.c-sitemap__link:hover::after {color:#fbc200;}
.c-sitemap__badge {display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; width:22px; height:22px; margin-right:10px; border-radius:50%; background:#F39800; color:#fff; font-size:12px; font-weight:bold; line-height:1;}
.c-sitemap__badge--ribbon {border-radius:0; width:20px; height:22px; padding-right:2px; clip-path:polygon(0 0, 100% 0, 80% 50%, 100% 100%, 0 100%);}
.c-sitemap__cats {list-style:none; padding:0; margin:10px 0 0 32px; display:flex; flex-wrap:wrap; gap:6px 8px;}
.c-sitemap__cats a {display:inline-block; padding:4px 12px; background:#fff8e1; border:1px solid #fbc200; border-radius:999px; font-size:12px; color:#555; text-decoration:none; transition:all 0.3s ease;}
.c-sitemap__cats a:hover {background:#fbc200; color:#000;}
/* かいもん基礎・サイドバー */
.kaimon #main {width:736px; padding:0 40px; flex-shrink:0;}
.kaimon #main:has(.kImgMask) {width:714px; padding:0px 11px 30px; box-sizing:content-box;}
.kaimonBox {width:676px; margin:0px auto; box-sizing:content-box;}
.kaimon_bn {width:181px; height:181px; overflow:hidden;}
.kaimon_bn img {transition:transform 0.2s linear;}
.kaimon_bn img:hover {transform:scale(0.96);}
.kaimon .main_in {margin:0 auto;}
.kaimon .container {background:url(img/kaimon_img/bg_kHeadBgS.png) repeat-x top center;}
.kaimon #header {padding:22px 0px 36px;}
.kaimon #description {text-align:left; position:absolute; left:0; top:95px; font-weight:bold;}
#sliderWrap {background-color:#fff; width:100%; overflow:hidden; position:relative;}
section#slider div.caroufredsel_wrapper {width:100% !important;}
#prev {display:block; height:426px; width:50%; top:0; position:absolute; background-size:100% 100%; left:-375px;}
#next {display:block; height:426px; width:50%; top:0; position:absolute; background-size:100% 100%; right:-375px;}
#pager {margin-left:-470px; position:absolute; left:50%; bottom:10px;}
#pager a {border:2px solid #fff; border-radius:10px; display:inline-block; width:10px; height:10px; margin:0 5px 0 0;}
#pager a.selected {background-color:#fff;}
.sideListIn {position:relative; overflow:hidden;}
.sideSingle .contenthoverIn {display:table-cell; vertical-align:middle; width:183px; height:120px; padding:0px 20px; box-sizing:border-box;}
.sideSingle .contenthover h4 {text-align:center; line-height:1.4em; font-size:15px; margin:0px 0px 12px;}
.sideSingle .contenthover p {text-align:center; line-height:1.4em;}
.sideSingle .contenthover .MN_shop {margin:0px 0px 5px !important; padding:0;}
.sideSingle .contenthover .MN_price {margin:0 !important;}
.btn_buy {text-align:center; margin:0 0 66px;}
.k_read {font-size:19px; letter-spacing:0.1em; margin:65px 0px 25px; line-height:1.9;}
.kaimonBox p {margin:30px 0;}
.sideBn li {margin-top:13px;}
.sideBn li:first-child,
.sideBn2 li:first-child {margin-top:0px;}
.sideBn2 {margin-top:40px;}
.sideBn2 li {margin-top:20px;}
.sideBn2 li a {font-weight:bold; text-decoration:underline;}
#sideNews {margin-top:40px;}
#sideNews li {line-height:1.5; font-size:12px; margin-top:13px;}
#sideNews li:first-child {margin-top:0px;}
#sideNews .day {font-size:10px; display:block;}
.k_sideTitle {font-size:15px; font-weight:normal; border-bottom:1px solid #000; padding-bottom:9px;}
.sideSingle h3 span {display:block; margin:-7px 0 5px;}
.sideList li:before {content:url(img/kaimon_img/ico_sideSquare.png); margin:8px auto; display:block; text-align:center;}
.sideList li:first-child:before {display:none;}
.banner {background:url(img/bg_kHeadBgL.png) repeat-x fixed 50% top; height:280px; position:absolute; overflow:hidden; width:100%; z-index:99;}
h4.termlistTitle {padding-bottom:8px; border-bottom:1px solid #000; margin-bottom:0; cursor:default; font-size:14px; font-weight:bold; color:#1a1a1a;}
h4.termlistTitle:first-letter {background-color:#FFF100; border-radius:50%; padding:0.2em 0.35em;}
.atarasiImgList {list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(3, 1fr); gap:20px;}
.atarasiImgList li {width:100%;}
.atarasiImgList li img {width:100%; height:auto; display:block;}
/* ★ ヘッダーの中央揃え改修（PC） ★ */
.kaimon #header.header-flex {display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; position:relative; padding-top:30px 0;}
.kaimon #header.header-flex #description,
.kaimon #header.header-flex #YLink {position:static !important; top:auto !important; left:auto !important; right:auto !important;}
.kaimon .header-left {flex:1 1 0; min-width:0; text-align:left;}
.kaimon .header-left h1,
.kaimon .header-left p {margin:0; font-size:11px; line-height:1.8;}
.kaimon .header-center {flex:none; margin:0 20px; z-index:10;}
.kaimon .arTitle {padding-bottom:6px; margin-bottom:30px;}
/* 前へ・次へ・戻る ボタンの共通デザイン */
.sideIndexMenuL {margin:0 auto; display:flex; justify-content:center; width:100%;}
.sideIndexMenuL li {float:none !important; margin:0 auto;}
.a-btn4L,
.navigation a {display:inline-flex; align-items:center; justify-content:center; padding:12px 30px; background:#fff; border:1px solid #ccc; border-radius:50px; color:#555 !important; font-size:14px; font-weight:bold; text-decoration:none !important; transition:all 0.3s ease; box-sizing:border-box; box-shadow:0 2px 4px rgba(0,0,0,0.02); min-width:180px; cursor:pointer;}
.a-btn4L:hover,
.navigation a:hover {background:#fafafa; border-color:#999; color:#000 !important; transform:translateY(-1px); box-shadow:0 4px 8px rgba(0,0,0,0.05);}
.a-btn4L .float_left,
.a-btn4L .float_right {float:none !important;}
.a-btn-slide-icon4L {display:none;}
.navigation {display:flex; justify-content:space-between; align-items:center; width:100%; margin-top:40px; clear:both;}
.navigation > div {float:none !important;}
/* Swiper・スライダー */
.swiper-button-next,
.swiper-button-prev {width:47px !important; height:47px !important; background-repeat:no-repeat; background-position:0 0; outline:0; z-index:500;}
.swiper-button-next::after,
.swiper-button-prev::after {content:none !important;}
.swiper-button-prev {background-image:url('img/sliderPrev.png'); left:-23px !important;}
.swiper-button-next {background-image:url('img/sliderNext.png'); right:-23px !important;}
.swiper-container-wrapper {position:relative; margin-bottom:60px; overflow:visible; width:100%;}
.kaimon-swiper {width:100%; height:428px; overflow:hidden;}
.kaimon-swiper .swiper-slide {width:714px; height:428px;}
.kaimon-swiper .swiper-slide img {width:100%; height:100%; object-fit:cover; display:block;}
/* 完成版グリッド・台形切り抜き・ホバーアニメーション */
.kaimon-grid {display:flex; flex-wrap:wrap; justify-content:flex-start; gap:30px 20px; margin-bottom:40px;}
.kaimon-grid-item {display:flex; width:calc((100% - 40px) / 3); box-sizing:border-box; position:relative; background:#fff;}
.kaimon-item-link {display:flex; flex-direction:column; width:100%; height:100%; text-decoration:none !important; color:inherit; cursor:pointer; outline:none;}
.kaimon-thumb {position:relative; overflow:hidden; margin-bottom:10px; width:100%;}
.kaimon-thumb img.d2 {width:100%; height:auto; display:block;}
.kaimon-meta {display:flex; flex-direction:column; flex-grow:1; padding:0 5px;}
.MN_shop {font-size:11px; font-weight:bold; color:#666; margin:0 0 5px;}
.kaimon-grid-item h3 {font-size:14px; font-weight:bold; margin:0 0 10px; line-height:1.4; color:#000;}
.MN_price {font-size:14px; font-weight:bold; text-align:right; margin-top:auto; padding-top:10px;}
/* メイン画像・ホバーのマスク */
.k-indexMask1,
.k-indexMask2 {display:none !important;}
.kImg {position:relative; overflow:hidden; clip-path:polygon(0% 0%, 100% 0%, 95% 100%, 5% 100%); width:100%;}
.kImg img {width:100%; height:auto; display:block;}
.contenthover {position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(0, 0, 0, 0.8); color:#fff; opacity:0; transform:translateY(100%); transition:all 0.3s ease; z-index:2;}
.kaimon-thumb .contenthover {padding:15px; box-sizing:border-box; font-size:12px; display:flex; align-items:center; justify-content:center; clip-path:polygon(0% 0%, 100% 0%, 95% 100%, 5% 100%);}
.kaimon-item-link:hover .contenthover,
.side-item-link:hover .contenthover,
.kImg:hover .contenthover,
.rank-inner:hover .contenthover,
.sideListIn:hover .contenthover,
.clickBox a:hover .contenthover {opacity:1; transform:translateY(0);}
/* ★ サイドバー画像のマスク復活 ★ */
.k-sideMask1 {position:absolute; top:0; z-index:10; left:0;}
.k-sideMask2 {position:absolute; top:0; z-index:10; right:0;}
@media screen and (min-width: 769px) {
  .kaimon .header-right {display:flex; flex-direction:column; align-items:flex-end; gap:5px; flex:1 1 0; min-width:0;}
  .kaimon .breadcrumbsArea {width:auto; margin:0; padding:0; text-align:right;}
}
/* =========================================================
   共通スマホ用メディアクエリ集約 (768px以下)
========================================================= */
@media screen and (max-width: 768px) {
  /* 全体・ヘッダー・フッター等汎用 */
  .u-pc-only {display:none !important;}
  .u-sp-only {display:block !important;}
  span.u-sp-only,
  a.u-sp-only,
  img.u-sp-only {display:inline-block !important;}
  br.u-sp-only {display:inline !important;}
  #sideLeft,
  #sideRight {display:none !important;}
  #wrapper,
  .container,
  .l-wrapper,
  #contentsArea {display:block; width:100%; padding:0; box-sizing:border-box; overflow:hidden;}
  #contents {width:100%; padding:0; margin:0; box-sizing:border-box; display:block;}
  #main,
  .l-main {width:100%; padding:0 10px; box-sizing:border-box; margin:0;}
  .l-header,
  #header {display:flex; flex-direction:column; padding:15px 10px 0; position:relative; width:100%; box-sizing:border-box; margin:0;}
  #description {margin-bottom:5px; order:1;}
  #description p {font-size:10px; margin:0; line-height:1.4; text-align:center;}
  #logo {width:100%; text-align:center; margin-bottom:10px; order:2;}
  #logo img {max-width:180px;}
  #lastUpdate {position:static; margin:0; bottom:auto; left:auto; order:3; text-align:center;}
  div.c-sp-nav {order:4;}
  .search1,
  .search2,
  #searchform {display:none !important;}
  .c-nav-toggle {display:none;}
  .c-nav-toggle-btn {display:flex; flex-direction:column; align-items:center; justify-content:center; position:fixed; top:40px; right:10px; width:44px; height:44px; background:#ccc; border-radius:4px; z-index:9999; cursor:pointer;}
  .c-hamburger-icon {display:block; width:20px; height:2px; background:#fff; position:relative; margin-bottom:4px; top:6px;}
  .c-hamburger-icon::before {content:''; position:absolute; width:20px; height:2px; background:#fff; left:0; transition:0.3s; top:-6px;}
  .c-hamburger-icon::after {content:''; position:absolute; width:20px; height:2px; background:#fff; left:0; transition:0.3s; top:6px;}
  .c-hamburger-text {color:#fff; font-size:9px; font-weight:bold; line-height:1; margin-top:14px;}
  .c-global-nav {display:block; position:fixed; top:0; right:-300px; width:280px; height:100vh; background:rgba(255,255,255,0.98); border-left:2px solid #fbc200; box-shadow:-2px 0 10px rgba(0,0,0,0.1); transition:right 0.3s ease; z-index:9998; overflow-y:auto; padding-top:60px; box-sizing:border-box;}
  .c-nav-toggle:checked ~ .c-global-nav {right:0;}
  .c-global-nav__list {list-style:none; padding:0; margin:0; border-top:1px solid #ccc;}
  .c-global-nav__list li {margin:0;}
  .nav-main-link {display:flex; justify-content:space-between; align-items:center; padding:15px 20px; color:#000; font-size:14px; font-weight:bold; border-bottom:1px solid #ccc; background-image:repeating-linear-gradient(-45deg, #fff, #fff 3px, #f4f4f4 3px, #f4f4f4 6px); transition:background 0.3s, color 0.3s;}
  .nav-main-left {display:flex; align-items:center;}
  .nav-arrow {font-size:10px; color:#666;}
  .nav-accordion summary {cursor:pointer; outline:none; list-style:none;}
  .nav-accordion summary::-webkit-details-marker {display:none;}
  .nav-accordion summary::after {content:'▼'; font-size:10px; color:#666;}
  .nav-accordion[open] summary.nav-main-link {background:#333; color:#fff; background-image:none;}
  .nav-accordion[open] summary.nav-main-link::after {content:'▲'; color:#fff;}
  .nav-main-link--atarashi {background-image:repeating-linear-gradient(-45deg, #fff, #fff 3px, #fff100 3px, #fff100 6px); border-bottom:1px solid #ccc;}
  .nav-main-left--atarashi {display:flex; flex-direction:column; align-items:flex-start;}
  .nav-sub-text {font-size:10px; color:#000; margin-bottom:2px; margin-left:2px;}
  .nav-sub-text span {border-bottom:1px solid #000; margin-right:4px; padding-bottom:1px; display:inline-block; line-height:1;}
  .nav-main-text {display:flex; align-items:center;}
  .nav-sub-grid {display:grid; grid-template-columns:1fr 1fr; background:#f4f4f4; border-bottom:1px solid #ccc;}
  .nav-sub-grid a {background:#f4f4f4; border-bottom:1px solid #ddd; border-right:1px solid #ddd; padding:12px 5px; text-align:center; font-size:12px; color:#333; font-weight:bold; display:block; transition:background-color 0.3s ease, color 0.3s ease;}
  .nav-sub-grid a:nth-child(even) {border-right:none;}
  .nav-sub-grid a:hover {background-color:#fbc200; color:#000; text-decoration:none;}
  .c-sp-nav {display:grid; grid-template-columns:1fr 2fr; width:100%; border-top:1px solid #ccc; border-bottom:1px solid #ccc; margin:15px 0 40px; background:#fff;}
  .c-sp-nav__left {border-right:1px solid #ccc; padding:15px 5px; color:#000; display:flex; flex-direction:column; justify-content:center; align-items:center;}
  .c-sp-nav__ribbon {background:#fbc200; display:inline-block; width:40px; height:40px; line-height:40px; font-size:24px; font-weight:bold; text-align:center; position:relative; margin-bottom:10px;}
  .c-sp-nav__ribbon::after {content:''; position:absolute; right:-10px; top:0; border-top:20px solid #fbc200; border-bottom:20px solid #fbc200; border-right:10px solid transparent;}
  .c-sp-nav__sub {font-size:9px; line-height:1.2; margin-bottom:4px; text-align:center;}
  .c-sp-nav__main {font-size:14px; font-weight:bold; line-height:1; text-align:center;}
  .c-sp-nav__right {display:grid; grid-template-columns:1fr 1fr; grid-template-rows:1fr 1fr;}
  .c-sp-nav__right a {background-image:repeating-linear-gradient(-45deg, #fff, #fff 3px, #f4f4f4 3px, #f4f4f4 6px); display:flex; align-items:center; justify-content:flex-start; padding-left:10px; border-right:1px solid #ccc; border-bottom:1px solid #ccc; color:#000; font-size:13px; font-weight:bold;}
  .c-sp-nav__right a:nth-child(even) {border-right:none;}
  .c-sp-nav__right a:nth-child(3),
  .c-sp-nav__right a:nth-child(4) {border-bottom:none;}
  .c-sp-nav__circle {background:#fbc200; width:24px; height:24px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; font-size:12px; margin-right:8px; color:#000;}
  /* お問い合わせフォームのはみ出し防止 */
  table.contact,
  table.contact tbody,
  table.contact tr,
  table.contact th,
  table.contact td {display:block; width:100%; box-sizing:border-box;}
  table.contact th {border-bottom:none; padding-bottom:5px; background-color:transparent;}
  table.contact td {padding-top:0; margin-bottom:15px;}
  .c-sitemap__cats {margin-left:0;}
  .breadcrumbsArea {width:100%; padding:5px 15px; text-align:left;}
  .breadcrumbs {font-size:10px; overflow-x:auto; white-space:nowrap; -webkit-overflow-scrolling:touch; padding-bottom:5px;}
  /* ヘッダーの中央揃え解除（スマホ） */
  .kaimon #header.header-flex {flex-direction:column-reverse; justify-content:center; padding-top:30px;}
  .kaimon .header-left,
  .kaimon .yomimon-btn {display:none !important;}
  .kaimon .header-center {position:relative; left:auto; transform:none; margin:0 auto;}
  .kaimon .header-right {width:100%; display:block; margin-top:15px; min-width:auto;}
  .kaimon .breadcrumbsArea {width:100% !important; margin:0 !important; padding:0 10px !important; text-align:left;}
  .kaimon #main,
  .kaimon #main:has(.kImgMask) {width:100%; padding:0 15px 30px; box-sizing:border-box;}
  .kaimon .main_in {width:100%; padding:0;}
  .kaimonBox {width:100%; padding:0; box-sizing:border-box;}
  .k_read {font-size:15px !important; margin:30px 0 20px !important; line-height:1.6 !important;}
  .btn_buy {margin:0 0 30px !important;}
  .btn_buy img {max-width:100%; height:auto;}
  .tShopBox2 {flex-direction:column !important; padding:15px !important;}
  .tShopPh {padding-right:0; width:100% !important; flex-direction:column !important; gap:10px !important;}
  .tShopPh > div {width:100% !important; margin-bottom:0;}
  .tShopPh img {width:100% !important; height:auto !important; object-fit:cover;}
  .tShopPh iframe {width:100% !important; height:250px !important;}
  .tShopInfo {width:100% !important; padding-left:0 !important;}
  #sideNews,
  .sideBn2 {width:100% !important;}
  .sideSingle .contenthoverIn {width:100% !important; height:auto !important; padding:20px !important;}
  .fb-commentBoxArea {width:100% !important; overflow:hidden;}
  #carousel li {width:100vw; height:auto; margin:0;}
  #carousel li img {width:100%; height:auto;}
  .banner {display:none;}
  .atarasiImgList {grid-template-columns:1fr; gap:15px;}
  /* ボタンのスマホ調整 */
  .a-btn4L {width:100%; padding:15px 10px; font-size:14px;}
  .sideIndexMenuL li {width:100%;}
  .navigation {flex-direction:row; gap:10px; justify-content:space-between;}
  .navigation > div {width:48%;}
  .navigation a {width:100%; padding:12px 5px; font-size:12px; min-width:auto;}
  /* ★ スライダーのスマホ調整（JSによるmarginを上書きしない） ★ */
  .swiper-button-next,
  .swiper-button-prev {display:none !important;}
  .kaimon-swiper,
  .kaimon-swiper .swiper-slide {height:auto;}
  .kaimon-swiper .swiper-slide {width:100% !important;}
  .kaimon-swiper .swiper-slide img {height:auto; width:100%; display:block;}
  /* スマホ専用のホバー代替テキスト */
  .sp-hover-text {font-size:10px; color:#555; line-height:1.4; margin:5px 0 8px;}
  /* かいもん グリッド (トップページ用 2カラム) */
  .kaimon-grid {gap:20px 4%;}
  .kaimon-grid-item {width:48%; margin-bottom:20px;}
  .kaimon-grid-item h3 {font-size:11px; margin-bottom:5px; line-height:1.3;}
  .MN_price {font-size:12px;}
  .kaimon-thumb {width:100%; margin-bottom:0;}
  .kaimon-meta {width:100%; padding:0; text-align:left;}
  /* かいもん グリッド (アーカイブ用 1カラム横並び) */
  .archive .kaimon-grid {display:block;}
  .archive .kaimon-grid-item {width:100%; border-bottom:1px solid #ccc; padding:20px 0 15px; margin:0;}
  .archive .kaimon-item-link {display:flex; flex-direction:row-reverse; justify-content:space-between; align-items:flex-start; gap:15px;}
  .archive .kaimon-thumb {width:40%; margin:0; flex-shrink:0;}
  .archive .kaimon-meta {width:56%; padding:0; text-align:left; justify-content:flex-start;}
  .archive .kaimon-grid-item h3 {font-size:13px; margin-bottom:5px;}
  .archive .MN_price {text-align:left; padding-top:0;}
  /* WPML言語切り替え(スマホ) */
  .wpml-ls-legacy-list-horizontal {padding:10px 0; border:none;}
  .wpml-ls-legacy-list-horizontal > ul {display:flex; flex-wrap:wrap; justify-content:center; gap:8px;}
  .wpml-ls-legacy-list-horizontal .wpml-ls-item {display:block;}
  .wpml-ls-legacy-list-horizontal a.wpml-ls-link {display:flex; align-items:center; padding:6px 12px; border:1px solid #ccc; border-radius:20px; background:#fff;}
  .wpml-ls-legacy-list-horizontal .wpml-ls-display {display:none;}
  .wpml-ls-legacy-list-horizontal .wpml-ls-native {font-size:11px; font-weight:bold; color:#000;}
}
/* ページ右下固定のGO TO TOPボタン(元btn_gotop.png画像のCSS化) */
.c-gototop {position:fixed; right:15px; bottom:15px; z-index:999; width:50px; height:50px; border-radius:50%; background:#F39800; display:flex; flex-direction:column; align-items:center; justify-content:center; text-decoration:none; box-shadow:0 2px 6px rgba(0,0,0,0.3); transition:background-color 0.25s ease, opacity 0.25s ease;}
.c-gototop:hover {background:#211816;}
.c-gototop__arrow {width:0; height:0; border-left:6px solid transparent; border-right:6px solid transparent; border-bottom:8px solid #fff; margin-bottom:2px;}
.c-gototop__text {color:#fff; font-size:8px; font-weight:bold; letter-spacing:0.05em; line-height:1;}
@media screen and (max-width: 768px) {
  .c-gototop {right:10px; bottom:10px; width:44px; height:44px;}
}
/* フッターのレイアウト維持用（スマホ） */
@media screen and (max-width: 768px) {
  footer.l-footer,
  div#footer {width:100%; padding:20px 10px; box-sizing:border-box; text-align:center; margin:0; clear:both; display:block;}
  div.l-footer__banner {margin-bottom:20px; width:100%; text-align:center;}
  div.l-footer__banner img {max-width:100%; width:auto; height:auto; display:inline-block; border:none;}
  ul.l-footer__menu {display:flex; flex-wrap:wrap; justify-content:center; padding:0; margin:0 0 15px; list-style:none; border:none;}
  ul.l-footer__menu li {border-left:1px solid #666; padding:0 8px; line-height:1; display:flex; align-items:center;}
  ul.l-footer__menu li:last-child {border-right:1px solid #666;}
  ul.l-footer__menu li a {font-size:10px; color:#000; padding:0;}
  ul.l-footer__social {display:flex; justify-content:center; flex-wrap:wrap; padding:0; margin:0 0 15px; list-style:none;}
  ul.l-footer__social li {padding:0 10px; display:flex; align-items:center;}
  p.l-footer__copy {font-size:9px; margin:0; text-align:center;}
}
/* 記事下の3分割ページネーション (Prev / List / Next) */
.c-single-nav {display: flex; justify-content: space-between; align-items: stretch; margin: 40px 0; background: #f9f9f9; border: 1px solid #ddd; border-radius: 6px; overflow: hidden;}
.c-single-nav > div {flex: 1; text-align: center;}
.c-single-nav__back {border-left: 1px solid #ddd; border-right: 1px solid #ddd; background: #fff;}
.c-single-nav a {display: flex; align-items: center; justify-content: center; padding: 15px 5px; font-size: 14px; font-weight: bold; color: #555; text-decoration: none !important; height: 100%; transition: all 0.3s ease; box-sizing: border-box;}
.c-single-nav a:hover {background: #fbc200; color: #000;}
@media screen and (max-width: 768px) {
  .c-single-nav {margin: 30px 0;}
  .c-single-nav a {padding: 12px 2px; font-size: 11px;}
}
/* スマホ表示時、関連する記事・新着ピックアップ・人気の記事などのセクション間の余白を少し広げる */
@media screen and (max-width: 768px) {
  .kanrenBox {margin-bottom: 60px;}
  .c-popular-articles-mobile {margin: 60px 0;}
}

/* フッターSNSアイコン(設定 > 一般 で入力されたものだけ表示される) */
.c-sns-icon {display:inline-flex; align-items:center; justify-content:center; transition:opacity 0.2s ease;}
.c-sns-icon svg {width:32px; height:32px;}
.c-sns-icon:hover {opacity:0.75;}
.c-sns-icon--facebook svg {fill:#0866FF;}
.c-sns-icon--x svg {fill:#000;}
.c-sns-icon--instagram svg {fill:#FF0069;}
.c-sns-icon--line svg {fill:#00C300;}
.c-sns-icon--youtube svg {fill:#FF0000;}
.c-sns-icon--threads svg {fill:#000;}
