/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Aug 04 2025 | 02:54:42 */
/********************
root設定
画像の設定
フォント設定
アニメーション設定
共通スタイル
headerスタイル
footerスタイル
top - MAINスタイル
archive - 共通スタイル
single - 共通スタイル
page - 共通スタイル
page - GALLERYスタイル
page - CONTACTスタイル
********************/

/********************
* root設定
********************/
:root {
  /* カラー */
  /* --color_main: #5E514F; */
  /* --color_text: #5E514F; */
  /* --color_bg: #ffffff; */
  --color_accent: #5E514F;
  --color_white: #ffffff;
  --color_black: #333333;
}


/********************
* フォント設定
********************/
.zen-maru-gothic-light {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.zen-maru-gothic-regular {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.zen-maru-gothic-medium {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.zen-maru-gothic-bold {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.zen-maru-gothic-black {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 900;
  font-style: normal;
}


/********************
* 共通スタイル
********************/
* {
    box-sizing: border-box;
	font-feature-settings: "palt";
}

/* デフォルトのフォント設定 */
body {
  font-feature-settings: "palt";
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
    
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

a:hover {
  color: var(--color_accent);
}

.post_content h2 {
    font-size: 28px;
	color: #ff4f4e !important;
}

/* パンくずリストを非表示 */
#breadcrumb {
	display:none;
}

/* 子ページの下部マージンを非表示 */
#before_footer_widget {
	margin: 0 auto !important;
}

/* reCAPTCHAマークの非表示 */
.grecaptcha-badge { 
	visibility: hidden;
}

/* デフォルトSPメニューの非表示 */
.c-widget__title.-spmenu, .p-spMenu__nav {
	display:none;
}


/********************
* footerスタイル
********************/
#footer {
	display:none;
}


/********************
* top - MAINスタイル
********************/
.top-main {
	min-height: 400px;
}

.top-link-h2 {
	font-family: "Zen Maru Gothic", sans-serif !important;
    font-weight: 700;
    font-style: normal;
}

.top-link-p p {
    font-family: "Zen Maru Gothic", sans-serif !important;
    font-weight: 500;
    font-style: normal;
}

.top-link-btn div {
	font-family: "Zen Maru Gothic", sans-serif !important;
    font-weight: 700;
    font-style: normal;
}

.top-link-image {
	position:relative;
}


/********************
* archive - 共通スタイル
********************/
.news-h2 {
	padding-bottom:0 !important;
}


/********************
* single - 共通スタイル
********************/
.single .l-content {
	padding-top: 2em;
}

.p-articleFoot {
	display:none;
}


/********************
* page - 共通スタイル
********************/

/* 子ページのh1を非表示 */
.c-pageTitle {
	display:none;
}

.l-mainContent__inner>.post_content {
	margin-top: 0;
}

.l-content {
	padding-top: 0;
	margin: 0 auto;
}

.post_content {
	padding-top: 20px;
}


/********************
* page - GALLERYスタイル
********************/
.u-lb-on figure img {
	border-radius:10px;
}


/********************
* page - CONTACTスタイル
********************/
/* 以下、問い合わせページ */
#cf-tbl{
    width: 800px;
	background-color:#fff;
	margin: 0 auto;
}

#cf-tbl table{
 width: 100%;
 border-collapse: collapse;
 border: solid #CCC;
 border-width: 1px;
 color: #444;
}

#cf-tbl table tr th,
#cf-tbl table tr td{
 padding: 0.5em;
 text-align: left;
 vertical-align: top;
 border: solid #CCC;
 border-width: 1px;
 vertical-align: middle;
}

#cf-tbl table tr th{
 width: 35%;
 background: #eee;
}

@media screen and (max-width:768px){
 #cf-tbl{
  width: 100%;
 }
 #cf-tbl table,
 #cf-tbl table tbody,
 #cf-tbl table tr,
 #cf-tbl table tr th,
 #cf-tbl table tr td{
  display: block;
 }
 #cf-tbl table{
  width: 100%;
  border-width: 0 0 1px 0;
 }
 #cf-tbl table tr th,
 #cf-tbl table tr td{
  width: 100%;
  padding: 3% 5%;
 }
 #cf-tbl table tr td{
  border-width: 0px 1px 0px 1px;
 }
}

/*「必須」文字デザイン*/
.required {
 font-size:.8em;
 padding: 5px;
 background-color: #ff4f4e;
 color: #fff;
 border-radius: 3px;
 margin-right: 7px;
}

/*「任意」文字デザイン*/
.optional {
	font-size:.8em;
 padding: 5px;
 background-color: #707070;
 color: #fff;
 border-radius: 3px;
 margin-right: 7px;
}

/* 入力項目を見やすく */
input.wpcf7-form-control.wpcf7-text,
textarea.wpcf7-form-control.wpcf7-textarea {
	width: 100%;
	padding: 8px 15px;
	margin-right: 10px;
	margin-top: 10px;
	border: 1px solid #d0d5d8;
	border-radius: 3px;
	background-color: #eff1f5;
}
textarea.wpcf7-form-control.wpcf7-textarea {
	height: 200px;
}

/* 「送信する」ボタン */
input.wpcf7-submit {
 display: block;
 padding: 15px;
 width: 400px;
 background-color: #ff4f4e;
 color: #fff;
 font-size: 18px;
 font-weight: 600;
 border-radius: 30px;
 margin: 20px auto 0
}
@media screen and (max-width:768px){
 input.wpcf7-submit {
  width: 250px;
 }
}

input.wpcf7-submit:hover {
	box-shadow: 0 15px 30px -5px rgba(0,0,0,.15), 0 0 5px rgba(0,0,0,.1);
	transform: translateY(-4px);
	opacity:0.7;
}

/* エラーメッセージを見やすく */
span.wpcf7-not-valid-tip,
.wpcf7-response-output.wpcf7-validation-errors {
	color: red;
	font-weight: 600;
}

/* ラジオボタンを見やすく */
.wpcf7-radio {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.wpcf7-radio .wpcf7-list-item {
  margin: 0 10px 0 0;
}