@charset "UTF-8";
 /* -----------------------------------------------------------
	reset
----------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
caption, tbody, tfoot, thead,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
}
html, body {
	height: 100%;
}
table, tr, th, td{
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

 /* -----------------------------------------------------------
	共通装飾等
----------------------------------------------------------- */
body{
font-family: "Kiwi Maru", serif;
  font-weight: 400;
  font-style: normal;
	line-height: 1.7em;
	color:#333;
    background: none;
}
body.home{
    background: url("/images/bg.jpg") no-repeat top center;
    background-size:100%;
}
@media screen and (max-width:680px){
body.home{
    background: url("/images/bg_sp.jpg") no-repeat top center;
    background-size:100%;
}
}

a img:hover{
	filter:alpha(opacity=70);
    opacity:0.70;
}
.inner{
	max-width:1200px;
	margin:0 auto;
	width:100%;
	box-sizing: border-box;
}
img {
    image-rendering: -webkit-optimize-contrast;
}
@media screen and (max-width:1080px){
.inner{
	width:95%;
	margin:0 auto;
}
}
img{
max-width: 100%;
height: auto;
width /***/:auto;
}

/* -----------------------------------------------------------
	ゴシックフオント
----------------------------------------------------------- */
.zen-kaku-gothic-new-regular {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
}

/* -----------------------------------------------------------
	ヘッダー
----------------------------------------------------------- */
header{
	text-align: center;
}

/* -----------------------------------------------------------
	コピー
----------------------------------------------------------- */
.copy{
    text-align: center;
    padding: 80px 24px;
    box-sizing: border-box;
    font-size: 2.6rem;
    color: #fff;
    line-height:1.6em;
    background: linear-gradient(90deg, #ff743c 55%, #F8C748 100%);
    letter-spacing: 4px;
    position: relative;
}
.copy_text_normal{
    margin-top: 50px;
    font-weight: normal;
    font-size: 1.3rem;
    line-height:2em;
}
.copy_text_normal p{
    margin-bottom: 32px;
}
.copy_text_large{
    font-size: 120%;
}
.copy img{
    position: absolute;
    bottom: -25px;
    left:50%;
    right:50%;
}
.spbr{
    display: none;
}
@media screen and (max-width:768px){
.copy{
    font-size: 1.8rem;
    line-height:1.4em;
    letter-spacing:0px;
    padding: 80px 16px;
}
.copy_text_normal{
    margin-top: 30px;
    font-size: 1.1rem;
    line-height:2em;
}
.copy_text_normal p{
    margin-bottom: 16px;
}
.copy_text_large{
    font-size: 120%;
}
.spbr{
    display: block;
}
}

/* -----------------------------------------------------------
	案内
----------------------------------------------------------- */
.info{
    background: #FEF6F0;
    padding: 80px 24px;
    box-sizing: border-box;
    font-size: 1.3rem;
     line-height:2em;
}
.info table {
	margin:0 auto;
	border-collapse: separate;
    border-spacing: 0;
    border: 1px solid #FF743B;
	width:100%;
    border-radius: 10px;
  overflow: hidden;
}
.info table td {
	padding: 16px;
	vertical-align: middle;
	text-align:left;
	background-color: #fff;
    box-sizing: border-box;
    border-bottom: 1px dotted #FF743B;
}
.info table th {
	padding: 16px;
	text-align: center;
	vertical-align: middle;
  font-weight:bold;
    background-color: #FEF7F4;
	width: 30%;
		box-sizing: border-box;
    border-bottom: 1px dotted #FF743B;
}
.info table tr:last-child th,
.info table tr:last-child td{
    border-bottom: none;
}
@media screen and (max-width:768px){
.info{
    font-size: 1.1rem;
}
}
@media only screen and (max-width:480px){
.info table {
	width:100%;
	margin:15px auto;
}
.info table th,
.info table td{
	width: 100%;
	display: block;
	border-top: none;
    padding: 8px;
}
.info table tr:first-child th{
	border-top:none;
}
}

/* -----------------------------------------------------------
	ボタン
----------------------------------------------------------- */
.btn{
    padding: 80px 24px;
    box-sizing: border-box;
}
.button {
  display: flex;
  align-items: center;
  justify-content: center;
    box-sizing: border-box;
  gap: 8px;
  width: 100%;
  max-width: 330px;
  padding: 20px 20px;
  background: linear-gradient(90deg, #ff743c, #F8C748);
  color: #fff;
  font-size: 1.8rem;
    font-weight: bold;
letter-spacing: 5.5px;
  text-decoration: none;
  border-radius: 30px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.2);
  transition: opacity 0.3s;
  margin:16px auto 0 auto;
}
.button:hover {
  opacity: 0.8;
}
.banner {
  text-align: center;
  font-size: 1.3rem;
  font-weight: bold;
  color: #00A381;
}
.button.campaign {
  max-width: 600px;
}
@media screen and (max-width: 768px){
    .button.campaign {
    line-height: 1.4em;
        text-align: center;
        font-size: 1.6rem;
}
}

/*トップへ戻る
----------------------------------------*/
#pagetop {
	position: fixed;
	bottom:50px;
	right:3%;
	z-index:9000;
}
#pagetop a {
	display:block;
	background: url(/images/pagetop.png) no-repeat right bottom;
	width:30px;
	height:20px;
	overflow:hidden;
	text-indent: -9999px;
}
#pagetop a span{
	display:none;
}
#pagetop a:hover {
	filter: alpha(opacity=80);
	-ms-filter: “alpha(opacity=80)”;
	opacity:0.8;
}
@media screen and (max-width: 736px){
}

/*会員の方はこちらフローティングボタン
----------------------------------------*/
#floating {
	position: fixed;
	top:20%;
	right:0;
	z-index:9000;
}
#floating a {
	display:block;
	width:53px;
	height:263px;
	overflow:hidden;
}
#floating a span{
	display:none;
}
#floating a:hover {
	filter: alpha(opacity=80);
	-ms-filter: “alpha(opacity=80)”;
	opacity:0.8;
}
#floating_sp{
    display: none;
}
@media screen and (max-width: 736px){
#floating_sp{
    display: block;
    position: fixed;
	top:5px;
	right:5px;
	z-index:9000;
}
#floating {
    display: none;
    }
}

/*----------------------
footer
------------------------*/
footer{
	padding:8px;
	font-size:80%;
	margin-top: 20px;
	overflow: hidden;
    text-align: center;
    background: #002929;
    color: #fff;
}

/*----------------------
お問い合わせ
------------------------*/
.inquiry a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  padding: 0.8em 2em;
  max-width: 250px;
    box-sizing: border-box;
    font-weight: bold;
    border-radius: 5px;
  color: #00A381;
  border: 2px solid #00A381;
    text-decoration: none;
}

.inquiry a::after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #00A381;
  border-right: 3px solid #00A381;
  transform: rotate(45deg);
}

.inquiry a:hover {
  color: #00A381;
  text-decoration: none;
  background-color: #DEF3EF;
}

.inquiry a:hover::after {
  border-top: 3px solid #00A381;
  border-right: 3px solid #00A381;
}

/*----------------------
文字装飾
------------------------*/
.t-center{
    margin-top: 50px;
    text-align: center;
}

/* Pick up */
.pickup {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.pickup > h2 {
  margin: 0 0 24px;
}
.pickup > h2 img {
  display: block;
  max-width: 100%;
  height: auto;
}

.pickup article {
  margin-bottom: 24px;
}

.pickup article > a {
  display: block;
  text-decoration: none;
  color: inherit;
}

/* ★ ここが画像枠：278×200 のトリミング枠 */
.pickup article figure {
  margin: 0;
  width: 100%;
  max-width: 278px;
  height: 200px;
  overflow: hidden;
}

/* ★ pickup-thumb だけをトリミング（重要） */
.pickup article figure .pickup-thumb {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pickup article > a > div {
  background: #FEF6F0;
  padding: 16px 18px 20px;
  min-height: 160px;
}


/* カテゴリーリスト */
.pickup .category {
  list-style: none;
  margin: 0 0 10px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.pickup .category li {
  display: inline-block;
}
.pickup article p {
  margin: 0 0 10px;
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.pickup article p span img {
  display: inline-block;
  width: 16px;
  height: 16px;
}
.pickup article h3 {
  margin: 0;
  font-size: 15px;
  line-height: 1.6;
}
@media (min-width: 1024px) {
  .pickup {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 24px;
    row-gap: 32px;
  }
  .pickup > h2 {
    grid-column: 1 / -1;
    margin-bottom: 8px;
  }

  .pickup article {
    margin: 0;
  }
}
@media (min-width: 600px) and (max-width: 1023px) {
  .pickup {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 24px;
    row-gap: 24px;
  }
  .pickup > h2 {
    grid-column: 1 / -1;
    margin-bottom: 8px;
  }
  .pickup article {
    margin: 0;
  }
}
@media (max-width: 599px) {
  .pickup {
    padding: 24px 16px;
  }
    .pickup article > a > div {
    min-height:inherit
}
}




/******* News セクション *******/
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
  overflow: hidden;
}

/* ===== News セクション全体 ===== */
.news-section {
    font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px 60px;
  display: flex;
  gap: 40px;
}

/* ===== 左：フィルタエリア ===== */
.news-filters {
  width: 220px;
  flex-shrink: 0;
}

.news-filters h2 {
  margin: 0 0 24px;
}

.news-filters form ul {
  list-style: none;
  margin: 0 0 32px;
  padding: 0;
}
.news-filters form li {
  margin-bottom: 12px;
}
.news-filters label {
  display: flex;
  align-items: center;
  cursor: pointer;
}
.news-filters input[type="checkbox"] {
  position: absolute;
  opacity: 0;
}
.news-filters input[type="checkbox"] + span {
  position: relative;
  padding-left: 24px;
}
.news-filters input[type="checkbox"] + span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 2px;
  width: 14px;
  height: 14px;
  border: 1px solid #ccc;
  background: #fff;
}

.news-filters input[type="checkbox"]:checked + span::before {
  background: #ff7b54;
  border-color: #ff7b54;
}

.news-filters input[type="checkbox"]:checked + span::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 6px;
  width: 6px;
  height: 3px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
}

.news-more {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
}

/* ===== 右：ニュース一覧 ===== */
.news-list {
  flex: 1;
}

.news-list ul {
  list-style: none;
  margin: 0;
  padding: 0;
    font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.news-list li {
  padding: 16px 0 18px;
  border-bottom: 1px solid #ddd;
}

.news-list a {
  text-decoration: none;
  color: inherit;
  display: block;
}

/* 上段：日付 + カテゴリバッジ */
.news-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 16px;
  margin-bottom: 6px;
}

/* 日付 */
.news-date {
  display: inline-flex;
  align-items: center;
  gap: 6px;
    font-size: 0.9em;
}

.news-date img {
  width: 16px;
  height: 16px;
  display: inline-block;
}

/* カテゴリバッジ */
.news-categories {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
  padding: 0;
}

.news-categories li {
  margin: 0;
}
.news-list .news-categories li  {
  padding: 16px 0 18px;
  border-bottom:none;
}
.cat-badge {
  display: inline-block;
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1.2;
  color: #fff;
}


/* タイトル */
.news-title {
  margin: 0;
  line-height: 1.7;
    text-decoration: underline;
}
.news-title:hover{
color: #FF743C
}

/* =========================
   スマホレイアウト調整
   ========================= */
@media (max-width: 768px) {
  .news-section {
    flex-direction: column;
    padding: 24px 16px 40px;
    gap: 20px;
  }
  .news-filters {
    width: 100%;
  }
  .news-filters h2 {
    margin-bottom: 12px;
  }

  /* チェックボックスを横並びで折り返し */
  .news-filters form ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    margin: 0 0 0;
    padding: 0;
  }
  .news-filters form li {
    margin: 0;
  }
  .news-filters label {
    font-size: 1.2rem;
  }
  .news-filters input[type="checkbox"] + span {
    padding-left: 20px;
  }
  .news-filters input[type="checkbox"] + span::before {
    width: 12px;
    height: 12px;
    top: 3px;
  }
  .news-list li {
    padding: 0 0 16px;
  }
  .news-meta {
    gap: 6px 12px;
  }
  .news-title {
    line-height: 1.6;
  }
  .news-more {
    display: none;
  }
}

 /* -----------------------------------------------------------
	記事投稿
----------------------------------------------------------- */
.single-post{
font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.single-post h1{
    background: url("/images/title_bg.jpg") no-repeat;
    background-size: cover;
    padding: 16px;
    box-sizing: border-box;
}
.single-post h1 img{
    width: 200px;
}
.single-post .title{
    background: linear-gradient(to right, #FF7A3A 0%, #F9C449 100%);
    padding: 24px;
    box-sizing: border-box;
}
.single-post .title h2{
    font-size: 2rem;
    font-weight: bold;
    color: #fff;
    max-width: 1200px;
    margin: 0 auto 32px auto;
    line-height: 1.4em;
    position: relative;
}
.single-post .title h2::after{
    content:url("/images/title_h2.png");
    position: absolute;
    left: 0;
    bottom:-50px;
}
.single-post p{
	margin-bottom:24px;
}
/* メタ情報行全体 */
.single-post .post-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 12px 0 0;
    border-bottom: 1px solid #e3e3e3;
    font-size: 0.9rem;
    margin-bottom: 32px;
}

/* 左側：日付＋カテゴリー */
.single-post .post-meta-left {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

/* 日付（カレンダーアイコン風） */
.single-post .post-date {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #555;
}

.single-post .post-date::before {
    content:url("/images/ic_calendar.png");
    font-size: 1rem;
}

/* カテゴリーラベル（以前のピル型と同じイメージ） */
.single-post .post-categories {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    padding-bottom: 8px;
}

.single-post .cat-label {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 999px;
    font-size: 0.8rem;
    color: #fff;
    text-decoration: none;
    line-height: 1.2;
}

.single-post .cat-news {
    background-color: #f26c23;
}

.single-post .cat-campaign {
    background-color: #ff6b7c;
}

.post-meta-right {
    display: flex;
    align-items: center;
    gap: 8px;
}

.post-meta-right .share-img img {
    height: 20px;
    width: auto;
    display: block;
}

.post-meta-right .share-img:hover {
    opacity: 0.85;
}
.single-post .entry-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 24px;
    font-size: 1rem;
    line-height: 1.8;
    color: #333;
}

@media (max-width: 768px) {
.single-post h1{
    padding:3px;
}
.single-post h1 img{
    width: 150px;
}
.single-post .title h2{
    font-size: 1.5rem;
    font-weight: bold;
    color: #fff;
    max-width: 1200px;
    margin: 0 auto 32px auto;
    line-height: 1.4em;
    position: relative;
}
.single-post .post-meta {
    display: block;
    gap:8px;
}
.post-meta .share-img img {
    margin:10px auto 10px auto!important;
}
.single-post .entry-content {
    padding:0 24px;
}
}

/* ------------------------------
   h3 見出し（緑の下線＋太ライン）
------------------------------ */
.single-post .entry-content h3 {
    font-size: 1.6rem;
    font-weight: 700;
    margin: 48px 0 24px;
    padding-bottom: 8px;
    border-bottom: 4px solid #EEEEEE;
    position: relative;
}

/* 左の太ライン（緑） */
.single-post .entry-content h3::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 30%;
    height: 4px;
    background-color: #00A282;
}
/* --- 見出しデザイン H4〜H6 --- */
.single-post .entry-content h4 {
    padding: 8px 0 8px 12px;
    border-left: 5px solid #FF7E3B;
    font-size: 1.3em;
    font-weight: bold;
    color: #333; 
    margin-top: 30px;
    margin-bottom: 15px;
}
.single-post .entry-content h5 {
    padding-bottom: 5px;
    border-bottom: 2px dashed #ccc;
    font-size: 1.1em;
    font-weight: bold;
    color: #333;
    margin-top: 25px;
    margin-bottom: 10px;
}
.single-post .entry-content h6 {
    position: relative;
    padding-left: 20px;
    font-size: 1em;
    font-weight: bold;
    color: #555;
    margin-top: 20px;
    margin-bottom: 10px;
}

/* H6の前の四角いアイコン */
h6::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%); /* 上下中央揃え */
    width: 12px; /* 四角の幅 */
    height: 12px; /* 四角の高さ */
    background-color: #1e73be; /* アイコンの色 */
    border-radius: 2px; /* 少し角を丸くする */
}

/* aタグ（本文リンク） */
.single-post .entry-content a {
    color: #FF7A3A;
    text-decoration: underline;
}
.single-post .entry-content a:hover {
    opacity: 0.8;
}

/* --------------------------------------
   単体画像・ギャラリー・動画サイズ調整
-------------------------------------- */
.single-post .entry-content img {
    max-width: 684px;
    width: 100%;
    height: auto;
    display: block;
    margin:50px auto 24px auto;
}
.single-post .wp-block-image{
    text-align: center;
}
.wp-block-gallery{
    margin-top: 80px!important;
}
.wp-block-gallery img {
    max-width: none !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
}
.single-post .entry-content iframe {
    max-width: 684px;
    width: 100%;
    display: block;
    margin: 0 auto 24px;
}
.single-post .entry-content .wp-block-embed,
.single-post .entry-content .wp-block-embed__wrapper {
    max-width: 684px;
    margin-left: auto;
    margin-right: auto;
}




 /* ---パンナビ--- */
.breadcrumb {
    font-size: 0.9rem;
    margin: 16px auto;
    padding: 0 16px;
    color: #999;
     max-width: 1200px;
    box-sizing: border-box;
}
.breadcrumb ol {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.breadcrumb li {
    display: flex;
    align-items: center;
}
.breadcrumb li + li::before {
    content: "–";
    margin: 0 8px;
    color: #FF7A3A;
}
.breadcrumb a {
    text-decoration: underline;
    color: #FF7A3A;
    font-weight: 500;
}
.breadcrumb a:hover {
    text-decoration: underline;
}
.breadcrumb .current {
    color: #555;
    pointer-events: none;
}


 /* ---リンク--- */
.link li a {
	background-image:url(/images/link_allow.png);
	background-repeat: no-repeat;
	background-position: 1px 0.4em;
	padding:0 0 1px 24px;
}

 /* ---News一覧へ戻る--- */
.footerlink{
    margin-top: 100px;
    border-top: 1px #ccc solid;
}
.footerlink a {
	background-image:url(/images/btn_ic_allow.png);
	background-repeat: no-repeat;
	background-position: 1px 0.4em;
	padding:3px 0 1px 32px;
    display: block;
    text-decoration: none!important;
    color: #333!important;
    margin-top: 8px;
}

 /* -----------------------------------------------------------
	News一覧
----------------------------------------------------------- */
.page-template-page-news{
font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.page-template-page-news h1{
    background: url("/images/title_bg.jpg") no-repeat;
    background-size: cover;
    padding: 16px;
    box-sizing: border-box;
}
/* タイトルバー本体 */
.page-template-page-news .title{
    background: linear-gradient(to right, #FF7A3A 0%, #F9C449 100%);
    padding: 46px 0;
    box-sizing: border-box;
}

/* 「News一覧」の文字 */
.page-template-page-news .title h2{
    color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
    position: relative;
    line-height: 1.4;
    display: block;
}
.page-template-page-news .title h2::after{
    content: "";
    display: inline-block;
    width:43px;
    height: 5px;
    margin-left: 12px;
    background: url("/images/title_img.png") no-repeat center center;
    background-size: contain;
    vertical-align: middle;
}
@media (max-width: 768px) {
.page-template-page-news h1{
    padding:3px;
}
.page-template-page-news h1 img{
    width: 150px;
}}

/* -----------------------------------------------------------
   News一覧（検索・タブ・ページネーション）
----------------------------------------------------------- */

/* 一覧ページ本体の余白 */
.page-template-page-news .news-archive {
  max-width: 1200px;
  margin: 40px auto;
  padding: 0 24px;
    box-sizing: border-box;
}

/* ===== 記事検索ボックス ===== */

.page-template-page-news .news-search-title {
  font-size: 1.2rem;
  margin-bottom: 8px;
}

.page-template-page-news .news-search-box-inner {
    border: #EEEEEE 3px solid;
  padding: 24px;
  border-radius: 4px;
}
.page-template-page-news .news-search-box-inner h3{
    background: #eee;
    padding: 8px;
    margin-bottom: 16px;
}
.page-template-page-news .news-search-keyword label {
  display: block;
  font-size: 0.9rem;
  margin-bottom: 6px;
  color: #777;
}

.page-template-page-news .news-search-row {
  display: flex;
  gap: 12px;
}

.page-template-page-news .news-search-row input[type="text"] {
  flex: 1;
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 10px;
  font-size: 0.95rem;
}

.page-template-page-news .news-search-row button {
  min-width: 96px;
  padding: 10px 16px;
  border: none;
  border-radius: 3px;
  background: #ff743c;
  color: #fff;
  font-size: 0.95rem;
  cursor: pointer;
}

.page-template-page-news .news-search-row button:hover {
  opacity: 0.85;
}

/* ===== カテゴリータブ（一覧 / お知らせ / …） ===== */


/* -----------------------------------------------------------
   News一覧：カテゴリー絞り込みタブ
   （.news-filter-line の見た目調整）
----------------------------------------------------------- */
.page-template-page-news .news-filter-line {
  margin: 24px 0 8px;
  font-family: "Zen Kaku Gothic New", sans-serif;
    border-bottom: 1px #ccc solid;
    padding-bottom: 16px;
    width: 100%;
    margin-top: 100px;
}

.page-template-page-news .news-filter-line-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px 24px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.page-template-page-news .news-filter-all span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #ff743c;
}
.page-template-page-news .news-filter-all span::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ff743c;
  display: inline-block;
}
.page-template-page-news .news-filter-line .news-filters {
  width: auto;
}
.page-template-page-news .news-filter-line .news-filters form ul {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  padding: 0;
  margin: 0;
  list-style: none;
}
.page-template-page-news .news-filter-line .news-filters form li {
  margin: 0;
}

/* チェックボックスを丸ポチ＋テキストに見せる */
.page-template-page-news .news-filter-line .news-filters label {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  color: #999; /* デフォルトはグレー */
}

/* 本物のチェックボックスは隠す */
.page-template-page-news .news-filter-line .news-filters input[type="checkbox"] {
  position: absolute;
  opacity: 0;
}
.page-template-page-news .news-filter-line .news-filters input[type="checkbox"] + span {
  position: relative;
  padding-left: 16px;
}

.page-template-page-news .news-filter-line .news-filters input[type="checkbox"] + span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #bfbfbf;
}
.page-template-page-news .news-filter-line .news-filters input[type="checkbox"]:checked + span {
  color: #ff743c;
}

.page-template-page-news .news-filter-line .news-filters input[type="checkbox"]:checked + span::before {
  background: #ff743c;
}

/* スマホで少し詰める */
@media (max-width: 768px) {
  .page-template-page-news .news-filter-line-list {
    gap: 8px 16px;
  }

  .page-template-page-news .news-filter-line .news-filters form ul {
    gap: 8px 16px;
  }
}


/* ===== ページネーション ===== */

.page-template-page-news .news-pagination {
  margin: 40px 0 0;
  text-align: center;
    position: relative;
}

.page-template-page-news .news-pagination ul {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.page-template-page-news .news-pagination a {
  text-decoration: none;
  color: #ff743c;
  font-weight: 500;
}

/* PREV / NEXT */
.page-template-page-news .news-pagination .prev a{
  display: inline-flex;
  align-items: center;
  gap: 8px;
    position: absolute;
    left: 0;
    top: 0;
}
.page-template-page-news .news-pagination .next a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
    position: absolute;
    right: 0;
    top: 0;
}

/* 丸いページ番号 */
.page-template-page-news .news-pagination .page a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid #ff743c;
  color: #ff743c;
}
.page-template-page-news .news-pagination .page a:hover{
    background: #ff743c;
  color: #fff;
}

/* 現在ページ */
.page-template-page-news .news-pagination .page.is-current {
  background: #ff743c;
  color: #fff;
    display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid #ff743c;
}

/* 矢印の丸 */
.page-template-page-news .news-pagination .page-arrow {
  display: inline-block;
  position: relative;
}

.page-template-page-news .news-pagination .next .page-arrow::after {
  transform: translate(-50%, -50%) rotate(-45deg); /* → */
}

/* ===== SP 調整 ===== */

@media (max-width: 768px) {
  .page-template-page-news .news-archive {
    padding: 0 16px 32px;
    margin: 24px auto 60px;
  }

  .page-template-page-news .news-search-row {
    gap: 8px;
  }

  .page-template-page-news .news-category-filter ul {
    gap: 8px 16px;
    font-size: 0.9rem;
  }

  .page-template-page-news .news-pagination ul {
    gap: 6px;
  }

  .page-template-page-news .news-pagination .page a {
    width: 28px;
    height: 28px;
  }
}



 /* ---下層フッター--- */
.single-post .btn,
  .page-template-page-news .btn{
    border-top: 24px #FEF6F0 solid;
    margin-top: 100px;
}

 /* ---下層フッター--- */
/* 共通ラベルスタイル */
.cat-label {
    display: inline-block;
    padding: 2px 10px;
    border-radius: 16px;
    font-size: 0.8rem;
    color: #fff;
    margin-right: 6px;
}

/* カラー別 */
.cat-color-default {
  background-color: #666666;
}
.cat-color-orange { background-color: #ff7a3a; }
.cat-color-pink   { background-color: #ff7a8a; }
.cat-color-green  { background-color: #2fab66; }
.cat-color-blue   { background-color: #3b82f6; }
.cat-color-yellow { background-color: #fbbf24; }





/* News：カテゴリバッジを必ず表示する */
.news-list .news-categories {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.news-list .news-categories li {
  display: inline-block !important;  /* ← inline の display:none を上書き */
}

.news-list .news-categories .cat-badge {
  display: inline-block;
}



 /* -----------------------------------------------------------
	固定ページデフォルト
----------------------------------------------------------- */
.page-template-default{
font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.page-template-default #floating,
.page-template-default #floating_sp{
    display: none;
}
.page-template-default h1{
    background: url("/images/title_bg.jpg") no-repeat;
    background-size: cover;
    padding: 16px;
    box-sizing: border-box;
}
/* タイトルバー本体 */
.page-template-default .title{
    background: linear-gradient(to right, #FF7A3A 0%, #F9C449 100%);
    padding: 46px 0;
    box-sizing: border-box;
}

/* 「News一覧」の文字 */
.page-template-default .title h2{
    color: #fff;
    font-size: 1.8rem;
    font-weight: bold;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
    position: relative;
    line-height: 1.4;
    display: block;
}
.page-template-default .title h2::after{
    content: "";
    display: inline-block;
    width:43px;
    height: 5px;
    margin-left: 12px;
    background: url("/images/title_img.png") no-repeat center center;
    background-size: contain;
    vertical-align: middle;
}
.page-template-default a{
    color: #333;
}
.page-buttons {
  display: flex;
  gap: 60px;
  justify-content: center;
  margin: 60px 0;
  padding: 0;
  list-style: none;
}
.page-buttons li{
     width: 50%;
}
.page-buttons li a {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 28px 40px;
    box-sizing: border-box;
  border: 5px solid #eeeeee;
  border-radius: 20px;
  font-size: 28px;
  font-weight: 600;
  text-decoration: none;
  background: #fff;
  transition: 0.2s ease;
  color: #333;
}
.page-buttons li a::before {
  content: "";
  display: inline-block;
  width:38px;
  height:38px;
  background: url("/images/btn_ic_mypage_allow.png") no-repeat center
}
.page-buttons li a:hover {
  border-color: #ffb28a;
  background: #fff8f2;
}
.mt100{
    margin-top: 100px;
}

@media (max-width: 768px) {
.page-template-default h1{
    padding:3px;
}
.page-template-default h1 img{
    width: 150px;
}
.page-buttons {
  display: block;
}
.page-buttons li{
     width: 100%;
    margin-bottom: 16px;
}
}

/* 埋め込みフォームのタイトル */
@media (min-width: 576px) {
.css-1cwfzql-Content-MainContent h1 {
    background-color: #FF743C!important;
    }
}
.css-1cwfzql-Content-MainContent h1 {
    background-color: #FF743C!important;
}
.page-template-default .css-1cwfzql-Content-MainContent h1,
.single-post .css-1cwfzql-Content-MainContent h1{
    background-image: none;
}
















