/*
Theme Name:switch_tcd063_child
Template:switch_tcd063
Version:3.1.2
*/

.p-entry__body p {
    font-size: 18px;
}

*, *:before, *:after {
	box-sizing: border-box;
}
.col_2{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_2 > div{
	width: 50%;
	padding: 10px;
}
@media screen and (max-width: 960px) {
	.col_2 > div{
		width: 100%;
	}
}


.p-entry__body h2.kuhi{
    font-size: 2.0em!important;
}

.kuhi_right{
    text-align: right;
    margin: 50px 130px 80px;
    font-size: 1.4em!important;
}

@media screen and (max-width: 780px) {
    .kuhi_right {
        margin: 0px 16px 0px;
        font-size: 1.0em !important;
    }
}


.p-social-nav__item--pinterest a::before {
  font-family: 'Material Icons';
  content: '\e873';
  display: inline-block;
  margin-right: 5px;
  vertical-align: sub;
  color: #111;
    font-size: 20px;
}


/* 余白調整 */

.mt100{
    margin-top: 100px;
}


.mt80{
    margin-top: 80px;
}

.ml50{
    margin-left: 50px;
}

@media screen and (max-width: 780px) {
    .ml50 {
        margin-left: 16px !important;
    }
}


.mb150{
    margin-bottom: 150px;
}

@media screen and (max-width: 780px) {
    .mb150 {
        margin-bottom: 80px;
    }
}


.mb80{
    margin-bottom: 80px;
}

.center{
	text-align:center;
}

/* 余白調整 */


/*/////////////////////お問い合わせフォームのcssはじまり////////////////////////*/

/* 同意ボタンにチェックが入ったら色が変わる */
div.wpcf7 .wpcf7-submit:disabled {
    background: #aaa;
    border-color: #aaa;
    color: #ddd;
}

.wpcf7-form input[type=button], .wpcf7-form input[type=submit] {
    font-size: 20px;
    height: 60px;
    width:60%;
    background: #00884f;
    transition: all 0.3s;
    margin: 0px auto;
    color: #fff;
    display: inline-block;
    cursor: pointer;
    border-radius: 10px;
    box-shadow: 2px 2px 2px #ddd;
}

.wpcf7 input.wpcf7-submit:hover {
    background-color: #015501;
}

/*全体*/
.wpcf7 {
border: none !important;
background: none !important;
max-width:1200px;
margin: auto!important;
}

#page_content .wpcf7 {
    width: auto;
    margin: 0 auto !important;
    padding: 0;
}

/*見出し欄*/
.inquiry th {
    font-size: 18px;
    text-align: left !important;
    color: #333 !important;
    font-weight: bold;
    width: 30%;
    background: #fff !important;
    border: solid 2px #fff !important;
    vertical-align: middle !important;
    padding: 10px 15px 7px !important;
    line-height: 2.2 !important;
}

/*通常欄*/
.inquiry td {
    font-size: 16px;
    color: #111;
    border: solid 2px #fff !important;
    padding: 20px !important;
    line-height: 2.2 !important;
    background-color: #fff;
}

/*入力欄*/
input.wpcf7-form-control.wpcf7-text, textarea.wpcf7-form-control.wpcf7-textarea {
    width: 95% !important;
    padding: 8px 15px ;
    margin-right: 10px !important;
    border: 1px solid #d7d7d7 ;
    border-radius: 10px !important;
}

/* 必須 */
.hissu {
    font-size: 0.8em;
    color: #fff;
    display: block;
    float: right;
    margin-right: 18px;
    background-color: #ca2a2a;
    padding: 0px 10px;
    border-radius: 10px;
}

/* チェックボックスラジオボタン */
span.wpcf7-list-item {margin: 0 20px 0 0;}
.wpcf7-list-item-label {font-size: 16px!important;}

/* 記入例の文字色 */
::placeholder {color: #ccc!important;}
:-ms-input-placeholder {color: #ccc!important;}
::-ms-input-placeholder {color: #ccc!important;}

.p-entry__body table {width:100%;}
.wpcf7 .wpcf7-list-item {display:inline-block;}
.wpcf7-validates-as-date {margin-bottom: 10px;}

/*スマホContact Form 7カスタマイズ*/
@media(max-width:767px) {
.inquiry th,.inquiry td {
    display:block !important;
    width:100% !important;
    border-top:none !important;
    -webkit-box-sizing:border-box !important;
    -moz-box-sizing:border-box !important;
    box-sizing:border-box !important;
}
.inquiry tr:first-child th{
    border-top:1px solid #d7d7d7!important !important;
}
.wpcf7 form {margin: 1.5em 0;}
.wpcf7-form input[type=button], .wpcf7-form input[type=submit] {width: 100%;}
.inquiry th { padding: 0 !important; line-height: 1 !important;}
.wpcf7 p {margin-bottom: 0em;}	
.inquiry td { padding: 0px !important; margin-bottom: 30px;}
.wpcf7 .wpcf7-list-item {display: inline-block;}
input.wpcf7-form-control.wpcf7-text, textarea.wpcf7-form-control.wpcf7-textarea { border-radius: 10px !important;}
}

.wpcf7 p {font-size: 18px;}


/*/////////////////////お問い合わせフォームのcss終わり////////////////////////*/

/* -----------------------------------------
    .style_h2: セクション見出し（曲線装飾・強化版）
    赤を廃止し、優美な曲線で品格を表現
----------------------------------------- */


:root {
    --primary-navy: #001f43;    /* サイトのメインカラー（紺） */
    --accent-gold: #c4a47c;     /* アクセントカラー（金茶） */
    --text-black: #333333;      /* 文字色 */
    --bg-light: #f9f9f9;        /* 背景色（微かなグレー） */
}

.style_h2 {
    position: relative;
    text-align: left;
    padding: 20px 0 20px 45px; /* 左側に装飾用の余白を十分に確保 */
    margin: 80px 0 40px;
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0.3em;
    line-height: 1.4;
    color: var(--primary-navy);
    display: inline-block;
}

/* 左側のメイン曲線（筆の払い・風のゆらぎ） */
.style_h2::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 30px;
    height: 100%;
    /* 二重の曲線を作る */
    border-left: 2px solid var(--accent-gold);
    border-top-left-radius: 100% 50%;
    border-bottom-left-radius: 100% 50%;
    opacity: 0.6;
}

/* 重なる細い曲線（水の流れをイメージ） */
.style_h2::after {
    content: '';
    position: absolute;
    left: 12px;
    top: 15%;
    width: 15px;
    height: 70%;
    border-left: 1px solid var(--primary-navy);
    border-top-left-radius: 80% 50%;
    border-bottom-left-radius: 80% 50%;
    opacity: 0.4;
}

/* 下部の繊細な曲線アンダーライン */
.style_h2-underline {
    position: absolute;
    bottom: -5px;
    left: 35px;
    width: 100%;
    height: 10px;
    border-bottom: 1px solid var(--accent-gold);
    border-bottom-right-radius: 50% 100%; /* 右側に向けて緩やかに消える曲線 */
    opacity: 0.3;
}

/* -----------------------------------------
    .style_h3: コンテンツ見出し
    （左ライン・短冊イメージ）
----------------------------------------- */
.style_h3 {
    position: relative;
    padding: 10px 0 10px 25px;
    margin: 50px 0 25px;
    font-size: 1.45rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    border-bottom: 1px solid #eeeeee;
    line-height: 1.6;
}

.style_h3::before {
    content: '';
    position: absolute;
    left: 0;
    top: 20%;
    width: 4px;
    height: 60%;
    background-color: var(--primary-navy);
}

/* -----------------------------------------
    .style_h4: 小見出し
    （和紙の質感・点線）
----------------------------------------- */
.style_h4 {
    display: inline-block;
    padding: 5px 0;
    margin: 30px 0 15px;
    font-size: 1.15rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    border-bottom: 2px dotted var(--accent-gold);
    line-height: 1.6;
}


/* ------- スマホのみ改行 ------- */
@media screen and (min-width: 650px){	
  .pconly { display:block; }
  .sponly { display:none; }
}

@media screen and (max-width: 650px){	
  .pconly { display:none; }
  .sponly { display:block; }
}


/* ------- リンクホバー ------- */
.banner{
margin: 0px 0px 0px 0px;
text-align:left;
}

.banner a:hover img{
  opacity:0.7;
  filter: alpha(opacity=70); 
}

/* ------- 沖ダイジェスト一覧 ------- */
body.post-type-archive-event .p-hover-effect--type1 img {
    width: 160px;
    height: 226px;
    margin: 0 auto;
    object-fit: cover;
}

body.post-type-archive-event .p-article05__img {
    text-align: center;
    background-color: #f8f8f8;
}


/* ------- 3並び ------- */
*, *:before, *:after {
	box-sizing: border-box;
}
.col_3{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_3 > div{
	width: 33.33333%;
	padding: 10px;
}
@media screen and (max-width: 960px) {
	.col_3 > div{
		width: 50%;
	}
}
@media screen and (max-width: 480px) {
	.col_3 > div{
		width: 100%;
	}
}
/* ------- 3並び ------- */


/* ------- TOP沖バックナンバー ------- */
.p-article10__img {
    width: 100px;
}
/* ------- TOP沖バックナンバー ------- */




/* --- 一覧ページのカードデザイン変更 --- */

/* リストアイテムの枠線とフレックスボックス化（並び替えの準備） */
.p-blog-list .p-blog-list__item.p-article01 {
    display: flex;
    flex-direction: column;
    border: 1px solid #e0e0e0; /* 薄いグレーの枠線 */
    background-color: #0000;
}

/* 1. 画像を一番上に配置し、高さを揃えて余白をつける */
.p-blog-list .p-article01__img {
    order: 1;
    height: 250px; /* ★画像の高さをここで一括指定（お好みで変更してください） */
    background-color: #f5f5f5; /* 余白部分の背景色（薄いグレー） */
}

/* 画像の比率を保ちながら枠内に収める */
.p-blog-list .p-article01__img img {
    width: 100%;
    height: 100%;
    object-fit: contain; /* 比率を崩さずに枠内に収める（自動で余白ができます） */
	z-index: -1;
}

/* 2. タイトル部分を2番目に配置 */
.p-blog-list .p-article01__content {
    order: 2;
    padding: 20px 20px 5px !important; /* タイトル周りの余白 */
}

/* 3. 左上の三角だった日付部分を一番下に配置 */
.p-blog-list .p-article01__date.p-triangle {
    order: 3;
    position: static;
    width: auto;
    height: auto;
    background: none;
    clip-path: none;
    padding: 0 20px 20px;
    text-align: left;
}

/* 三角形の装飾（疑似要素）を消去 */
.p-blog-list .p-article01__date::before,
.p-blog-list .p-article01__date::after,
.p-blog-list .p-triangle::before,
.p-blog-list .p-triangle::after {
    display: none !important;
}

/* 元の「◯月 ◯日 YYYY」の大きなテキストを隠す */
.p-blog-list .p-date {
    font-size: 0;
}

/* HTMLのdatetime属性（2012-05-01など）を呼び出して表示する */
.p-blog-list .p-date::before {
    content: attr(datetime);
    font-size: 14px;
    color: #999;
}

.p-blog-list .p-article01__img img {
    border: solid 1px #e0e0e0;
}