/* ---------------------------------------------
 font
--------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Zen+Kurenaido&family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap');
/* <weight>: Use a value from 100 to 900
<uniquifier>: Use a unique and descriptive class name
.noto-sans-jp-<uniquifier> {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
} */
/* .zen-kurenaido-regular {
  font-family: "Zen Kurenaido", sans-serif;
  font-weight: 400;
  font-style: normal;
} */
/* .zen-maru-gothic {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 300,400,700,900;
  font-style: normal;
} */



body {
    font-size:1.5rem; color:#000;
    font-family:"Zen Maru Gothic", sans-serif,"游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
    font-weight:400;
}
select,input,button,textarea {
    font-size:1.6rem; color:#000;
    font-family:"Noto Sans JP", sans-serif,"游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
    font-weight:400;
}

.f_serif { font-family:'Noto Serif JP', serif; }
.f_letterspace { letter-spacing:.3em; margin-left:.3em; }
.l-s_0 {letter-spacing:0;}

/* ---------------------------------------------
 text
--------------------------------------------- */
p { margin:0 0 1.2em 0; padding:0; font-size:min(2.0rem,5vw); font-weight: 400; font-family: "Zen Maru Gothic", sans-serif; line-height: 1.4; }

@media screen and (max-width:767px) {

}

/* ---------------------------------------------
 h
--------------------------------------------- */
/* h1 */
h1 {}
h2 { width: 100%; background-color: #4b9c59; color: #fff; padding: 20px 0; text-align: center; font-size:min(3.4rem,6vw); font-family: "Zen Kurenaido", sans-serif; font-weight: bold; font-style: normal; letter-spacing: 0.1em; }
h2:before {content: ''; margin-right: 10px;
  display: inline-block;
  width: 85px;/*画像の幅*/
  height: 70px;/*画像の高さ*/
  background-image: url(/img/yamadamaya/h2_img01.webp);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;}
h2:after {content: ''; margin-left: 10px;
  display: inline-block;
  width: 100px;/*画像の幅*/
  height: 70px;/*画像の高さ*/
  background-image: url(/img/yamadamaya/h2_img02.webp);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;}
@media screen and (max-width:767px) {
  h2:before { width: 10vw; height: 10vw; margin-right: 1vw;}
  h2:after { width: 12vw; height: 12vw; margin-left: 1vw; background-position-y: 1vw; }
}

h3 { color:#000; font-weight:bold; font-size:min(2.6rem,6vw); margin:2em 0 0 0; padding:0.3em 0 1em 60px; font-family: "Zen Maru Gothic", sans-serif; font-weight:600; letter-spacing: 0.1em; position: relative; }
h3:before {content: ''; margin-right: 10px;
  /* display: inline-block; */
position: absolute;
top:0; left: 0;
  width: 50px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  background-image: url(/img/yamadamaya/form_img_stamp.webp);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  background-position: center 0.2em; }
h4 { color:#000; font-weight:bold; font-size:2rem; margin:0em 0 0.8em 0; border-bottom: 3px solid #eee; padding: 0 0 0.2em 0; }
h5 { color:#000; font-weight:bold; font-size:2rem; margin:0em 0 0.8em 0; padding: 0 0 0.2em 0; }
h6 { color:#333; font-weight:bold; font-size:1.6rem; margin-top:1em; color: #333; }
@media only screen and (max-width:1024px) {

}
@media only screen and (max-width:767px) {
  h3 { padding:0.3em 0 1em 11vw;  letter-spacing: 0; }
  h3:before { width: 10vw; height: 10vw; margin-right: 0;}
}

/* ---------------------------------------------
 a
--------------------------------------------- */
a { color:#00a0e9; transition:color .2s; text-decoration:none; }
a:hover { color:#135f36; }
a > img { transition:transform .2s; }
a:hover > img {
  /*
  opacity: 0.7;
  transform:translateY(-2px);
  */
  transform:scale(0.98);
}

a.link { margin-top:0.5em; display:inline-block; font-family:'Noto Sans JP', sans-serif; }
a.link:before { font-family:"Font Awesome 5 Free"; content:'\f061'; font-weight:900; margin-right:5px; }

a.newwin { text-decoration:none; margin-top:0.5em; display:inline-block; font-family:'Noto Sans JP', sans-serif; }
a.newwin:after { font-family:"Font Awesome 5 Free"; content:'\f24d'; font-weight:400; margin-left:5px; }

a.img  { overflow:hidden; display:block; }
a.img img  { transition:transform .2s; width:100%; height:100%; }
a.img_hover:hover img  { transform:scale(1.05); }

/* add 202509 */
a.link1 { vertical-align:middle; }
a.link1::before { content:""; width:1.2em; height:1.2em; display:inline-block; margin:0 0 0 .2em; transform:translateY(.21em);
  background:url(/images/icon_right_triangle.svg) center center no-repeat; background-size:contain; filter:brightness(100);
  transition:all .2s; }
a.link1:hover::before { transform:translate(.11em,.21em); }


/* ---------------------------------------------
 list
--------------------------------------------- */
ul.caution { margin:0 auto 10px auto; padding:0 0 0 2.5rem; text-align:left; font-size:min(1.8rem,4.5vw); color: #4b9c59; }
ul.caution li { list-style-type:none; padding:0 0 0.5rem 0; margin-left:0rem; }
ul.caution li:before { content:"※"; font-weight:bold; margin:0 0.5rem 0 -2.2rem; position:relative; }

ul.list_dot { margin:0 auto 20px auto; padding:7px 0 0 4rem; text-align:left; font-size:1.5rem; max-width:1024px;}
ul.list_dot li { list-style-type:none; padding:0 0 10px 0; margin-left:-2rem; }
ul.list_dot li:before { content:"・"; color:#000; font-size:1.5rem; font-weight:bold; margin:0 0.5rem 0 -2.0rem; position:relative; top:0px; }

ul.list0 { padding-top:7px; text-align:left; font-size:1.5rem; }
ul.list0 li { padding:0 0 10px 0.3em; line-height:1.5; list-style:none; }

ol { margin:0 0 20px 1.7em; list-style:decimal outside; }
ol li { padding:0 0 10px 2px; line-height:1.5; }

ol.num { margin:0 auto 20px auto; padding:0 0 0 5rem; list-style:decimal outside; font-size:1.5rem; list-style:none; counter-reset:num; max-width:950px; /*width:100%;*/ }
ol.num li { padding:0 0 10px 0; line-height:1.8; margin-left:-2rem; }
ol.num li:before { counter-increment:num; content:counter(num)"."; color:#000; margin:0 1rem 0 -2.2rem; font-size:1.5rem; }
    ul.list2 li ol.num li:before { top:0px; }
ol.num li.num_k:before { counter-increment:num; content:counter(num)"."; color:#000; margin:0.1rem 1rem 0 -2.2rem; }

ol.circle  { position: relative; margin: 5px 0; padding: 0 }
ol.circle li  { list-style: none; list-style-position: outside; margin: 0; padding:0 0 3px 1.25em; }
ol.circle li span { position: absolute; left: 0; margin: 0 }

.list_caution-wrap { list-style: none; margin: 0 0 0 2em; padding: 0; counter-reset: li_count; }
.list_caution { padding:  0px; margin-bottom: 10px; font-size:  1.5rem; }
.list_caution:before  { counter-increment: li_count; content: "※"counter(li_count); color: #333; margin:0 0 0 -2em; padding: 0 0.5em 0 0; }

.box_option { background-color: #f9f9f9; padding: 0; border-radius: 10px; margin: 0 0 80px 0; }
.box_option h6 { text-align: center; font-weight: 400; border-radius: 10px 10px 0 0; color: #136136; background-color: #ebebeb; padding: 1.5em 2em; }
.list_option { display: flex; justify-content: center; align-items: center; padding: 3em 0; }
.list_option li { padding: 0 2em; }
.list_option li a { color: #136136; font-weight: 600; }
.list_option li a:hover { color: #219153; }
.list_option li a.orange { color:#f55100; }
.list_option li a.orange:hover { color:#f70; }
.list_option li a:before { position: relative; content: '\f35a'; display: inline-block; margin-right: 0.3em; font-family: "Font Awesome 5 Free"; font-weight: 900; transition: transform .2s; }
.list_option li a:hover::before { transform: translatex(0.1em); }
@media only screen and (max-width:767px) {
	.box_option h6 { text-align: left; padding: 1.0em 1.5em; }
	.list_option { display: block; padding: 1em 0; }
	.list_option li { padding: 0.3em 2em; }
}

/* ---------------------------------------------
 btn
--------------------------------------------- */
a.btn_w { margin:10px auto; width:100%; /* width: calc(100% - 10px); */ display:block; color:#000; text-align:center; font-weight:bold; text-decoration:none; transition: .2s; background-color:#fff;
position:relative; padding:10px 5px; border-radius: 50px;}
a.btn_w:hover { background-color:#135f36; color:#fff; text-decoration:none; }
a.btn_w::after { content:'\f107'; display:inline-block; margin-left:0.3em; font-family:"Font Awesome 5 Free"; font-weight:900; }

a.btn1{ margin:10px auto; width: 350px; max-width:100%; display:block; color:#fff; text-align:center; font-weight:bold; text-decoration:none; transition: .2s; background-color:#f55100;
position:relative; padding:10px 30px; border-radius: 50px;}
a.btn1:hover { background-color:#f70; color:#fff; text-decoration:none; /* box-shadow:0 0 1px rgba(0,0,0,0.1); transform:translate(1px,1px); */ }
a.btn1::after { content:'\f078'; display:inline-block; margin-left:0.5em; font-family:"Font Awesome 5 Free"; font-weight:900; }

.btns { text-align:center; margin-bottom:50px; }
@media only screen and (max-width:767px) {
  .btns { margin-bottom:20px; }
}
.btns a.btn1 { display:inline-block; width:320px; padding-right:10px; padding-left:10px; margin-left:10px; margin-right:10px; }

/* ------------------------------------
header
------------------------------------ */
#header { width: 100%; background-color: #4b9c59; margin: 0 auto;}
#header .header_inner { max-width: 1024px; width:95%; margin: 0 auto; padding: 10px 0; }
#header .header_inner .title { color: #fff;font-size:min(5.0rem,8vw); font-family: "Zen Kurenaido", sans-serif; font-weight: bold; font-style: normal; text-align: center; }
#header .header_inner .title span { display: block; font-size: 0.5em; }
@media screen and (max-width:767px) {

}

/* -----------------------------------
container
-------------------------------------*/
#container { padding:0 0 0px 0; margin:0; max-width:none; position: relative; }
article { margin:0 auto; max-width:100%; }
section { width:100%; margin:0 auto; padding:20px 0; }
section .section_inner { width:100%; width:90vw; max-width:1024px; margin: 0 auto; }
/* section:last-child { margin-bottom:30px; } */
section:after { content:''; display:block; clear:both; }

@media only screen and (max-width:767px) {
  .section_inner { width: 90vw; }
}

/* ---------------------------------------------
main
--------------------------------------------- */
.mainv { display: flex; margin: 0 auto 50px auto; }
.mainv .mainv_img { width: calc(100% / 4); }
.mainv .mainv_img img { width: 100%; }

.txt_area { max-width: 700px; margin:0 auto 50px auto; }
.txt_area p {font-size:min(2.2rem,5vw); }

.mainv_foot { display: flex; margin: 0 auto; }
.mainv_foot .mainv_img { width: calc(100% / 16); }
.mainv_foot .mainv_img img { width: 100%; }
@media only screen and (max-width:767px) {
  .mainv_foot { flex-wrap:wrap; }
  .mainv_foot .mainv_img { width: calc(100% / 8); }
}

/* ---------------------------------------------
 form
--------------------------------------------- */
section.form {}

.form_flex { display: flex; margin: 20px auto }
.form_flex .form_flex_img { width: calc(100% / 2); }
.form_flex .form_flex_img img { width: 100%; }

.form_flex1 { display: flex; align-items:center; margin: 20px auto }
.form_flex1 .form_flex1_img { width: 150px; margin-right: 30px; }
.form_flex1 .form_flex1_img img { width: 100%; }
.form_flex1 .form_flex1_txt p { margin: 0; font-size:min(2.2rem,5vw); }
@media only screen and (max-width: 767px) {
  .form_flex1 .form_flex1_img { width: 20vw; margin-right: 2vw; }
}

.form_area { margin-left: 65px; position: relative; }
.form_area img { position: absolute; max-width: 300px; }
img.form_img04 { width: 22vw; top:-3vw; right: 0; }
img.form_img05 { width: 14vw; max-width: 150px; top:-7vw; right: 0; }
img.form_img06 { width: 14vw; max-width: 150px; top:-6vw; right: 0; }
img.form_img07 { width: 22vw; top:-3vw; right: 0; }
img.form_img08 { width: 20vw; top:8vw; right: 0; z-index: -1; }
/* contact form 7 pタグ無効 */
.cf7_area p { display: inline; width: 0; height: 0; }
@media only screen and (max-width: 767px) {
  .form_area { margin-left: 5vw; }
  img.form_img08 { top:16vw; width: 22vw; }
}

.custom-checkbox { display: flex; align-items: center; cursor: pointer; font-size:min(2.0rem,5vw); margin-bottom: 0.2em; }
.custom-checkbox input { position: absolute; opacity: 0; cursor: pointer; height: 0; width: 0; }
.checkmark {
  width: 20px; /* チェックマークの幅 */
  height: 20px; /* チェックマークの高さ */
  border: 2px solid #333; /* 枠の色 */
  border-radius: 4px; /* 角を丸くする */
  position: relative;
  margin-right: 10px; /* ラベルとのスペース */
  transition: background-color 0.3s; /* 背景色のアニメーション */
  /* top: -0.6em; */
}
.custom-checkbox input:checked + .checkmark {
  background-color: #333; /* 選択時の背景色 */
}
.checkmark:after {
  content: ""; /* コンテンツを生成 */
  position: absolute;
  left: 5px; /* チェックマークの位置調整 */
  top: 0px; /* チェックマークの位置調整 */
  width: 7px; /* チェックマークの幅 */
  height: 12px; /* チェックマークの高さ */
  border: solid white; /* チェックマークの色 */
  border-width: 0 2px 2px 0; /* チェックマークの形状 */
  transform: rotate(45deg); /* チェックマークの回転 */
  opacity: 0; /* 初期状態では透明 */
  transition: opacity 0.3s; /* チェックマークのフェードイン */
}
.custom-checkbox input:checked + .checkmark:after {
  opacity: 1; /* 選択時に表示 */
}
input.kazu { width: 20px; }
.price_num { width: 3em; padding:0.2em 0.3em; margin-right: 0.2em; }
.form_area .cap { margin-left: 1.2em; padding-bottom: 0.5em; }
.file_photo::file-selector-button { /* 「ファイルを選択」ボタンのスタイル */
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 600;
  color: #333;
  background: #fff;
  font-size: 1.8rem;
  border: 1px solid #10a857;
  border-radius: 3px;
  padding: 5px 15px;
  text-align: center;
  cursor: pointer;
}
.file_photo::file-selector-button:hover { background: #10a857; color: #fff; }
.form_area .file_photo { display: block; margin-bottom: 10px; }
textarea.message { width: 100%; border: 1px solid #10a857; border-radius: 3px; padding: 0.5em; }
.info.form_area div { font-size:min(2.0rem,5vw); margin-bottom: 10px; }
.info.form_area label { width: 240px; display: inline-block; }
.info.form_area input { max-width: 400px; width: 80vw; border: 1px solid #10a857; border-radius: 3px; padding: 0.5em; }
button { display:block; width: 300px;
    height: 50px;
    margin: 30px auto;
    padding: 0.2em 1em;
    background-color: #4b9c59;
    border: none;
    border-radius: 30px;
    cursor: pointer;
    color: #FFFFFF;
    font-size: 1.8rem;
    font-weight: bold;}
button:hover { opacity: 0.8; }

input[type="submit"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  display:block;
  font-size: 20px;
  font-weight: bold;
  width: 300px;
  padding: 10px;
  margin: 30px auto;
  border-radius: 30px;
  background-color: #4b9c59;
  border: none;
  color: #fff;
  cursor: pointer;
}
input[type="submit"]:hover { opacity: 0.8; }
span.wpcf7-spinner { display: none; }
.wpcf7-list-item { display: block; margin: 0 0 0 0em !important; line-height: 1.8; }


/* ------------------------------------
  ThankYouページ
------------------------------------ */
section .section_inner { margin:min(50px,5vw) auto; width:min(1000px,90vw); }


/* ------------------------------------
  footer
------------------------------------ */
footer { padding:30px 0; margin: 0; position: relative; background:#4b9c59; color: #fff; }
footer a { text-decoration:none; }

footer .foot_inner { max-width: 1024px; width: 90vw; margin: 0 auto; display: flex; justify-content: space-between; align-items:flex-end; }
footer .foot_inner div {}
footer .foot_inner div.profile { background-color: #fff; border-radius: 10px; padding: 10px; display: flex; }
footer .foot_inner div.profile .img { width: 110px; margin-right: 20px; }
footer .foot_inner div.profile .img img { width: 100%; }
footer .foot_inner div.profile .txt { color: #333; font-size:min(1.7rem,4vw); line-height: 1.8; padding-right: 0.5em; }
footer .foot_inner div.profile .txt span { font-size: 1.3em; font-weight: 400; padding-bottom: 0.3em; }

footer #copyright { text-align: right; padding-top: 20px; font-size: 1.3rem; }

@media only screen and (max-width:767px) {
  footer { padding:30px 0 20px 0; }
  footer .foot_inner { display: block; }
  footer .foot_inner div.profile .img { width: 100%; }
  footer #copyright { text-align:center; margin: 0; }
}


/*トップへ戻るボタン*/
.topBtn {
  position:fixed; /*固定*/
  bottom:10px; /*場所を右下に移動*/
  right:10px; /*場所を右下に移動*/
  display:block; /*aタグをblock要素に変更*/
  width: 50px; height: 50px; background-color:#4b9c59; border-radius: 50%;
  transition:background-color .2s;
  z-index:1000; }
.topBtn:before {
    position: absolute;
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    background-image: url('/img/yamadamaya/chevron-up-solid.svg');
    background-position: center;
    background-size: contain;
  transition:transform .2s;
  }
.topBtn:hover { opacity:1.0; /*background-color:#138836;*/ }
.topBtn:hover:before { transform:translateY(-2px); }

@media only screen and (max-width: 767px) {
  .topBtn { width: 40px; height: 40px; }
  .topBtn:before { width: 25px; height: 25px; }
  .topBtn:hover { background: #69B2BD; }
}

/* 前に戻るボタン */
#js_back_button { position:fixed; top:min(390px,44vh); left:max(-45px,-9vw); }
#js_back_button a { cursor: pointer;
	display:block; height:min(100px,20vw); width:min(100px,20vw); line-height:70px; text-align:center;
	border-radius:70px; background:#135f36;
	box-shadow:1px 1px 5px rgba(150,150,150,1);
	transition:all .1s; }
#js_back_button a:hover {
	transform:translateX(-2px);
	/*border:1px solid #fff;*/
	}
#js_back_button a::after { content:''; display:block; transform:rotate(180deg);
	position:absolute; top:0; bottom:0; left:min(15px,3vw); right:0; width:min(50px,10vw); height:min(50px,10vw); margin:auto;
	 background:url(/images/icon_chevron.svg) center center no-repeat; background-size:contain; filter:invert(1) brightness(2);
	 transition:left .1s; }


/* ---------------------------------------------
  横並びグリッド
--------------------------------------------- */
.cols { display:flex; flex-wrap:wrap; }
.cols .col { box-sizing:border-box; position: relative; }
.cols .col:after { content:""; display:table; clear:both; }

/* レイアウト:横2つ  */
.cols2 { margin-right:0; }
.cols2 .col { width:calc(50% - 20px); }
.cols2 .col { margin:0 40px 40px 0; }
.cols2 .col:nth-child(even) { margin:0 0 40px 0; }

/* レイアウト:横3つ  */
.cols3 { margin-right:-40px; margin-bottom: 10px; }
.cols3 .col { width:calc(33.3% - 40px); }
.cols3 .colspan2 { width:66.6%; }
.cols3 .col { margin:0 40px 40px 0; }
.cols3 .col h5 { text-align: center; border: none; margin: 0; padding: 0.5em 0; }
.cols3 .col img { width: 100%; }

/* レイアウト:横3つ Navi  */
.cols3_navi { margin-right:-10px; margin-bottom: 10px; }
.cols3_navi .col { width:calc(33.3% - 10px); }
.cols3_navi .col { margin:0 10px 10px 0; }
.cols3_navi .col .frm1 { color:#056437; font-size: 1.6rem; font-weight: 800; border:3px solid #056437; border-radius: 5px; }
.cols3_navi .col .frm1 a { display: block; padding: 0; margin: 0; color: #056437; transition:background-color .2s; }
.cols3_navi .col .frm1pri { border:3px solid #eeeee4; }
.cols3_navi .col .frm1pri a { background:#eeeee4; }
.cols3_navi .col .frm1pri a img { margin-right:7px; }
.cols3_navi .col .frm1 a:hover { background-color:#f8f8f8; }
.cols3_navi .col .frm1 img { max-width: 175px; margin-right: 5px; transform:none; }
.cols3_navi .col .frm2 { background-color: #056437; font-size: 1.6rem; font-weight: 800; border:3px solid #056437; border-radius: 5px; transition: .2s; }
.cols3_navi .col .frm2:hover { background-color: #10a857; border:3px solid #10a857; }
.cols3_navi .col .frm2 a { color:#fff; display: block; padding: 0; margin: 0; }
.cols3_navi .col .frm2 img { max-width: 75px; margin-right: 10px; }

/* レイアウト:横3つ  */
.cols3_pri_type { margin-right:-40px; margin-bottom: 10px; }
.cols3_pri_type .col { width:calc(33.3% - 40px); }
.cols3_pri_type .col { margin:0 40px 40px 0; }
.cols3_pri_type .col .frm { border:3px solid #056437; border-radius: 5px; display:block; }
.cols3_pri_type .col .frm h5 { text-align: center; border: none; margin: 0; padding: 0.5em; color:#fff; background-color: #056437; font-size: 1.6rem; font-weight: 800;  }
.cols3_pri_type .col .frm img { width: 100%; }
@media only screen and (max-width:767px) {
  .cols3_pri_type { margin-right:0px; margin-bottom: 0px; }
  .cols3_pri_type .col { width:calc(50% - 10px); }
  .cols3_pri_type .col { margin:0 10px 20px 0; }
  .cols3_pri_type .col:nth-of-type(2n) { margin:0 0px 20px 0;}
}

/* レイアウト:横2つ  */
.cols2_pri_type { margin-right:-40px; }
.cols2_pri_type .col { width:calc(50% - 40px); }
.cols2_pri_type .col { margin:0 40px 40px 0; }
.cols2_pri_type .col .frm { border:3px solid #056437; border-radius: 5px; display:block; }
.cols2_pri_type .col .frm h5 { text-align: center; border: none; margin: 0; padding: 0.5em; color:#fff; background-color: #056437; font-size: 1.6rem; font-weight: 800;  }
.cols2_pri_type .col .frm img { width: 100%; max-width: 440px; margin: 0 auto; display: block; }
@media only screen and (max-width:767px) {
  .cols2_pri_type { margin-right:0px; margin-bottom: 0px; }
  .cols2_pri_type .col { width:calc(50% - 10px); }
  .cols2_pri_type .col { margin:0 20px 20px 0; }
  .cols2_pri_type .col:nth-child(even) { margin:0 0px 20px 0;}
}


/* レイアウト:横4つ  */
.cols4 { margin-right:-20px; }
.cols4 .col { width:calc(25% - 20px); }
.cols4 .colspan2 { width:50%;}
.cols4 .col { margin:0 20px 20px 0;}
.cols4 .col h5 { text-align: center; border: none; margin: 0; padding: 0.5em 0; }
.cols4 .col img { width: 100%; }
.plating_area,
.attachment_area { margin: 0 0 50px 0;}
.plating_area .cols4 .col img,
.attachment_area .cols4 .col img { max-width: fit-content; margin: 0 auto; display: block; }
@media only screen and (max-width:1080px) {
    .cols3 { margin-right:-15px; }
    .cols3 .col { margin-right:15px; margin-bottom:15px; }
}

@media only screen and (max-width:767px) {
    .cols2,
    .cols3,
    .cols3_navi,
    .cols4 { margin-left:auto; margin-right:auto; }
    .cols.cols2 .col,
    .cols.cols3 .col { width:100%; margin:0 auto 30px; }
    .cols.cols3_navi .col { width:100%; margin:0 auto 10px; }
    .cols.cols4 .col { width:calc(50% - 5px); margin:0 10px 20px 0; }
    .cols.cols4 .col:nth-child(even) { margin-right: 0; }
    .cols2,
    .cols3,
    .cols4 { margin:0 0 10px !important; }
    .cols.cols1sp { margin-left:auto; margin-right:auto; }
    .cols.cols1sp .col {width:100%; margin:0 auto; }
    .cols1sp { margin:0 0 10px !important; }
    .cols2sp { margin-right:-3vw; }
    .cols2sp .col { width:50%; margin:0; }
    .cols2sp .col { margin:0 3vw 3vw 0 !important; }
}

/* レイアウト:横5つ  */
.cols5 { margin-right:0; }
.cols5 .col { width:calc(20% - 5px); }
.cols5 .col { margin:0 5px 30px 0; }
.cols5 .col:nth-child(5n) { margin:0 0 30px 0; }
.cols5 .col img { width: 100%; }
.cols5 .col p { text-align: center; }
@media only screen and (max-width:767px) {
  .cols5 { margin-right:-5px; }
  .cols5 .col { width:calc(50% - 5px); }
  .cols5 .col { margin:0 5px 5px 0; }
  .cols5 .col:nth-child(5n) { margin:0 5px 5px 0; }
  .cols5 .col:nth-child(even) { margin:0 0 5px 0; }
  .cols5 .col p { margin: 0; }
}

/* ---------------------------------------------
 PC/SP
--------------------------------------------- */
.hidePC { display:none; }
.hideSP { display:block; }
@media only screen and (max-width: 767px) {
    .hidePC { display:block !important; }
    .hideSP { display:none !important; }
}
.hidePC_1024 { display:none; }
.hideSP_1024 { display:block; }
@media only screen and (max-width: 1024px) {
    .hidePC_1024 { display:block !important; }
    .hideSP_1024 { display:none !important; }
}



/* 調整 */
table tr.noborder { border:none;}
table th.noborder-bottom,
table td.noborder-bottom { border-bottom:none;}
table .blankLefttop { border-left:0; border-top:0; background:none; }

thead.inlineL th,
tr.inlineL th,
tr.inlineL td { text-align:left;}

table.inlineC th,
table.inlineC td,
thead.inlineC th,
tr.inlineC th,
tr.inlineC td { text-align:center; padding-left:3px; padding-right:3px;}

.tbl p,
.tbl ul {font-size:100%; padding-bottom:6px;}

table ul.list1 { margin-bottom:0;}

table.th10p th { width:10%;}
table.th20p th { width:20%;}
table.th30p th { width:30%;}
table.th40p th { width:40%;}
table.th50p th { width:50%;}

.th_td_w1 th { width:18%; }
.th_td_w1 td { width:32%; }

.min-w-100px th { min-width:100px; }



