/*
Theme Name: ystandard-child
Template: ystandard
Theme URI: https://wp-ystandard.com
Author: yosiakatsuki
Author URI: https://yosiakatsuki.net
Description:「自分色に染めた、自分だけのサイトを作る楽しさ」を感じてもらうために作った一風変わったWordPressテーマ「ystandard」の子テーマ
Version: 4.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

/*共通設定*/

/* 全要素＋疑似要素に適用（推奨） */
*, *::before, *::after {
  box-sizing: border-box;
}

/* サイトタイトル非表示（全ページ共通） */
.site-title{
  display:none !important;
}
.site-content {
    margin-top: var(--ystd-container-margin-vertical);
    margin-bottom: var(--ystd-container-margin-vertical);
    margin-top : 0!important;
}

/* =======================================
   LP 基本スタイル（ワイド幅＋レスポンシブ）
======================================= */
body.lp-page {
  margin: 0;
  padding: 0;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.8;
  color: #333;
}
.lp-wrapper {
  width: 100%;
  overflow-x: hidden;
}

h1,h2,h3,h4,h5,h6 {
    margin: 0!important;
    padding: 0!important;
}
/* PC表示 / SP非表示 */
.pc {
  display: block;
}

/* SP表示 / PC非表示 */
.sp {
  display: none;
}

/* 899px以下をスマホ扱い */
@media screen and (max-width: 899px) {
  .pc {
    display: none;
  }

  .sp {
    display: block;
  }
}

/* PCで表示、スマホで非表示 */
.br-pc {
  display: block;
}

.br-sp {
  display: none;
}

/* スマホ時（899px以下など自由に調整可能） */
@media screen and (max-width: 899px) {
  .br-pc {
    display: none;
  }

  .br-sp {
    display: block;
  }
}

.last-bunner{
	width : auto;
	text-align : center;
	margin : 0 20px;
}

/* ===========================
   上部ヘッダー
=========================== */

.site-title{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip: rect(0,0,0,0);
}

.site-header__content{
	height : 0!important;
}

.site-top-header{
  width:100%;
  background:#cfe9f7;
  height : auto;
}

.site-top-inner{
  max-width:1080px;
  margin:0 auto;
  padding:10px 0 0 10px;

  display:flex;
  justify-content:space-between;
  align-items:center;
}

.site-logo img{
  height:70px;
  width:auto;
}
.center{
	text-align : center;
}
.lp-label { display:none; }
.space-m{
	height : 25px;
}
.space-l{
	height : 40px;
}
.font-110{
	font-size : 110%;
}
.font-120{
	font-size : 120%;
}
.font-130{
	font-size : 130%;
}
.red{
	color : #cc0000;
}
.hissu,
.nashi{
	color : #cc0000;
	font-size : 80%;
	font-weight : 600;
}


/* 筆文字風タイトル */
.rinen-top-font{
  font-family: 'Noto Serif JP', serif;
  font-size:1.6em;
  font-weight:700;
  letter-spacing:0.05em;
}



/**************************************
 * 特商法・プライバシーポリシー
 * ************************************/
.tokusyou-ttl{
background : #333;
color : #fff;
font-size : 24px;
text-align : center;
	padding : 35px 0px;
}

h4.policy-wrapper{
	font-size : 18px;
	font-weight : 600;
	margin : 15px 0px;
}
h5.policy-wrapper{
	font-size : 16px;
	font-weight : 600;
	margin : 15px 0px;
}

/* 全体 */
.tokusho-wrapper {
  width: 100%;
  max-width: 980px;
  margin: 40px auto;
  border: 1px solid #ccc;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
  font-size: 16px;
  line-height: 1.6;
}
.policy-wrapper {
  width: 100%;
  max-width: 980px;
  margin: 40px auto;
	padding : 20px!important;
  border: 1px solid #ccc;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
  font-size: 16px;
  line-height: 1.6;
}

.policy-link{
	text-align : center;
}
.policy-link a{
	text-decoration : none;
	color : #092c66;	
}

/* 1行ごとの枠 */
.tokusho-row {
  display: flex;
  border-bottom: 1px solid #ddd;
}

/* 最終行の線なし */
.tokusho-row:last-child {
  border-bottom: none;
}

/* 左側（項目） */
.tokusho-title {
  width: 30%;
  padding: 14px;
  background: #f4f4f4;   /* ← 項目の背景色 */
  font-weight: 700;      /* 太字 */
  border-right: 1px solid #ddd;
  box-sizing: border-box;
}

/* 右側（内容） */
.tokusho-text {
  width: 70%;
  padding: 14px;
  box-sizing: border-box;
}

/* 丸数字リスト */
ol  {
  margin: 0;
  padding: 0
}
ol li  {
  list-style: none;
  padding-left: 1.3em;
  text-indent: -1.3em;
}


/* スマホ（縦並び） */
@media (max-width: 767px) {
.tokusho-wrapper {
  width: auto;
  margin: 40px 20px;
}
.policy-wrapper {
  width: auto;
  margin: 40px 15px;
}
  .tokusho-row {
    display: block;
  }

  .tokusho-title {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #ddd;
  }

  .tokusho-text {
    width: 100%;
  }
}

.lp-content-link{
	width : 100%;
	background : #f4f4f4!important;
	padding : 30px 0px;
}

/* =========================
   news一覧・詳細の幅調整
========================= */

body.post-type-archive-news .container,
body.single-news .container{
  max-width:1080px;
  margin:0 auto;
}

/* カードの左右余白 */
body.post-type-archive-news .archive-list,
body.single-news .single-area{
  padding:0 20px;
}

/* =========================
   news 記事ページ 980px幅制御
========================= */

/* PC・タブレット */
body.single-news #primary{
  max-width:980px;
  margin:0 auto;
}

/* 左右余白 */
body.single-news .news-single{
  padding:0 20px;
}

/* スマホ */
@media(max-width:767px){
  body.single-news #primary{
    max-width:100%;
  }
  body.single-news .news-single{
    padding:0 12px;
  }
}

.news-single h1{
	background : #333;
	color : #fff;
	padding : 10px!important;
	margin-top : 40px!important;
}
.news-content{
	margin : 30px 0;
}

/* =================================
   /news 完全 3列 強制FIX
================================= */
.archive__header {
    margin-bottom: var(--ystd-archive-padding);
    padding-top : 40px!important;
}
/* 2カラムflex殺し */
body.post-type-archive-news.has-sidebar .content__wrap{
  display:block !important;
}

/* メイン幅確保 */
body.post-type-archive-news .archive__main,
body.post-type-archive-news .content__main{
  width:100% !important;
  max-width:1200px !important;
  margin:0 auto !important;
}

/* ------ カード2列指定の完全破壊 ------ */
body.post-type-archive-news .archive-entry{
  width:100% !important;
  float:none !important;
  margin:0 !important;
}

/* ------ グリッドを3列で再定義 ------ */
body.post-type-archive-news .archive__entries{
  display:grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap:20px !important;
}

/* タブレット 2列 */
@media(max-width:1024px){
  body.post-type-archive-news .archive__entries{
    grid-template-columns:repeat(2,1fr) !important;
  }
}

/* スマホ 1列 */
@media(max-width:767px){
  body.post-type-archive-news .archive__entries{
    grid-template-columns:1fr !important;
  }
.site-logo img{
  height:50px;
  width:auto;
}
.news-single h1{
	background : #333;
	color : #fff;
	padding : 10px!important;
	margin-top : 40px!important;
	font-size : 18px;
}
}

/*ラストプロフィール*/
.last-profile-box {
  width: auto;
	margin-top : 30px!important;
  box-sizing: border-box;
  padding: 2em 1.5em;
  position: relative;
  border: 8px solid #c9c3b8;
  z-index: 0;
  background: #fff; /* あった方が綺麗 */
}

/* ワンポイント装飾（そのまま使えます） */
.last-profile-box::before {
  content: '';
  display: block;
  position: absolute;
  top: -8px;
  left: -8px;
  width: 8px;
  height: 8px;
  background-color: #1248ac;
  z-index: 1;
}

.last-profile-img {
  display: flex;
  justify-content: space-between; /* 2枚を横に配置 */
  gap: 6px;                       /* すき間 */
  width: 100%;
  margin-top: 30px;
  margin-bottom: 30px;
}

/* 画像サイズ（PC） */
.last-profile-img img {
  width: 50%;
  height: auto;
  object-fit: cover;
  border-radius: 8px;
}

/* スマホ（縦並び） */
@media (max-width: 767px) {
  .last-profile-img {
    flex-direction: column;
    gap: 0px;
    width: 100%;
    margin: 20px auto;
  }

  .last-profile-img img {
    width: 100%;
  }
}

/* =======================================
   フッター
======================================= */
.lp-footer {
  background: #333;
	color : #fff;
  text-align: center;
  padding: 20px;
  font-size: 14px;
}

.footer-main {
    padding-top: 1em;
    padding-bottom: 1em;
    overflow: hidden;
    background-color: #333;
    color: #f4f4f4;
}
