@charset "UTF-8";

/*共通
---------------------------------------------------------------------------*/
:root {
--maincolor: #222;
--goldcolor: #ad7d43;
--section-space: 90px;
--inner-space: 50px;
}

/*footer設定
---------------------------------------------------------------------------*/
#footer {
color: var(--maincolor);
}
#footer a {
color:var(--maincolor);
text-decoration:none;
transition: 0.5s;
}
#footer a:hover {
color:#848484;
text-decoration:none;
transition: 0.5s;
}

/*リンク（page）設定
---------------------------------------------------------------------------*/
.tex a img {
border: 0;
}
.tex a:hover,
.tex a:hover img {
opacity: 0.6;
}
.tex a {
color:var(--maincolor);
text-decoration: underline;
text-decoration-style: dotted;
text-decoration-color: #ccc;
transition: 0.5s;
}
.tex_archive a {
color:var(--maincolor);
text-decoration:none;
transition: 0.5s;
}
.tex_archive a:hover {
color:#848484;
}

/*ページ内リンクずれ
---------------------------------------------------------------------------*/
html {
scroll-padding-top: 200px;
}
#main {
width: 100%;
box-sizing: border-box;
margin: 0 auto;
padding: 80px 0;
overflow: hidden;
}
@media screen and (min-width: 1200px) {
.container{
max-width: 1200px;
margin: 0 auto;
padding: 0;
}}

/*google-maps
---------------------------------------------------------------------------*/
.google-maps {
position: relative;
padding-bottom: 75%;
height: 0;
overflow: hidden;
}
.google-maps iframe {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}

/*hr
---------------------------------------------------------------------------*/
hr {
border-width: 1px 0 0 0; /* 太さ */
border-style: dotted; /* 線種 */
border-color: var(--maincolor);
height: 1px; /* 高さ */
max-width: 100%;
clear:both;
margin: 4% 0px;
}


/*title
---------------------------------------------------------------------------*/
#title {
position: relative;
}
#title .bg_img {
position: relative;
overflow: hidden;
}
#title .bg_img::after {
content: "";
position: absolute;
inset: 0;

pointer-events: none;
}
#title .bg_img img{
width:100%;
height:400px;
object-fit:cover;
display:block;
}
#title .titleh2{
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 100%;
max-width: 1200px;
box-sizing: border-box;
padding: 0 20px;
text-align: left;
z-index: 3;
}
#title .titleh2 h2{
margin:0;
font-size:47px;
line-height:1.6;
color:#fff;
text-align:left;
}
#title .titleh2 span {
display: block;
margin-top: 5px;
font-size:14px;
color:#fff;
}
@media screen and (max-width:1200px){
#title .bg_img img{
height:300px;
}
#title .titleh2 h2{
font-size: 30px;
}
#title .titleh2 {
padding: 0 6%;
}}
@media screen and (max-width:767px){
#title .titleh2 h2{
font-size: 26px;
}
#title .titleh2 span {
font-size: 12px;
margin-top: 3px;
}
}

/* タイトル：ふわっと表示 */
#title .titleh2 {
opacity: 0;
animation: titleText 1s ease-out .4s forwards;
}
@keyframes titleText {
from {
opacity: 0;
transform: translate(-50%, -40%);
}
to {
opacity: 1;
transform: translate(-50%, -50%);
}
}

/*tex
---------------------------------------------------------------------------*/
/* 共通 */
.tex {
width: 100%;
text-align: justify;
text-justify: inter-ideograph;
overflow: hidden;
font-weight: 500;
padding: 50px 0;
}
.tex img {
border: 0;
max-width: 100%;
height: auto;
box-sizing: border-box;
border-radius: 12px;
}
.tex p {
margin: 0;
padding: 0;
}
/* アーカイブだけ */
.tex_archive {
padding: 10% 0;
}
/* 商品紹介 */
.tex_product {
padding-bottom: 0
}
@media screen and (min-width:768px) {
.tex {
padding: 60px 0
}
.tex_archive {
padding: 5% 0
}
.tex_product {
padding-bottom: 0;
}
}


/* 商品紹介ボタン
---------------------------------------------------------------------------*/
.page-btn {
width:100%;
max-width:600px;
height:80px;
margin:50px auto;
background-color:#a47200;
overflow:hidden;
}
.page-btn a {
display:flex;
align-items:center;
justify-content:center;
width:100%;
height:100%;
text-decoration:none;
color:#fff;
letter-spacing:0.15em;
position:relative;
box-sizing:border-box;
transition:opacity .3s ease;
}
.page-btn a::after {
content:"";
position:absolute;
right:20px;
top:50%;
width:45px;
height:1px;
background:#fff;
transition:.3s ease;
}
.page-btn a::before {
content:"";
position:absolute;
right:20px;
top:50%;
width:10px;
height:1px;
background:#fff;
transform-origin:right center;
transform:translateY(-0.5px) rotate(25deg);
transition:.3s ease;
}
.page-btn a:hover {
opacity:.7;
}
.page-btn a:hover::after,
.page-btn a:hover::before {
transform:translateX(5px);
}

.page-btn a:hover::before {
transform:translateX(5px) translateY(-0.5px) rotate(25deg);
}
/* 左寄せ */
.page-btn.left {
	margin-left:0;
	margin-right:auto;
}


/* 等分
---------------------------------------------------------------------------*/
.boxA {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-between;
column-gap: 3%;
row-gap: 40px;
}
/* 5個並び用 */
.boxA.boxA-5 {
justify-content: flex-start;
}
.boxA4 {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 20px;
}

.box2 {
flex: 0 0 100%;
box-sizing: border-box;
}

.box3 {
flex: 0 0 100%;
box-sizing: border-box;
}

.box23-2 {
flex: 0 0 100%;
box-sizing: border-box;
}

.box23-3 {
flex: 0 0 100%;
box-sizing: border-box;
}
.box4 {
width: 100%;
	box-sizing: border-box;
}
@media screen and (min-width: 768px) {
.boxA {
column-gap: 4%;
row-gap: 40px;
}
.boxA.boxA-5 {
		justify-content: flex-start;
		column-gap: 5%;
	}
.box2 {
flex: 0 0 46%;
}

.box3 {
flex: 0 0 30%;
}

.box23-2 {
flex: 0 0 38%;
}

.box23-3 {
flex: 0 0 55%;
}
}
@media screen and (max-width: 767px) {
.boxA4 {
grid-template-columns: repeat(2, 1fr);
gap: 15px;
}
}

/* ボックス*/
.box_nuri {
padding: 1.5em 2em;
margin: 2em 0;
background: #fff;/*背景色*/
box-sizing: border-box;
overflow: hidden;
}
.box_nuri2 {
padding: 2em;
background: #eeede8;/*背景色*/
box-sizing: border-box;
}
.box_nuri p,
.box_nuri2 p,
.box_waku p{
margin: 0; 
padding: 0;
}
.box_nuri img,
.box_nuri2 img,
.box_waku img {
max-width: 100% !important;
width: auto !important;
height: auto !important;
box-sizing: border-box;
}
.box_waku {
padding: 2em 2em 0;
margin: 2em 0;
border: 1px solid var(--maincolor);
}
@media screen and (min-width: 768px) {
.box_nuri2 {
padding: 6em;
}
}

/*商品の会場
---------------------------------------------------------------------------*/
.box_venue {
width: 100%;
max-height: 600px;
overflow: hidden;
margin: 0 0 50px 0;
border-radius: 12px;
}
.box_venue img {
width: 100%;
height: auto;
object-fit: cover;
display: block;
}

@media screen and (max-width: 767px) {
.box_venue {
height: auto;
}
.box_venue img {
width: 100%;
height: auto;
object-fit: initial;
}
}


/*見出し
---------------------------------------------------------------------------*/
h3.midasi {
color: var(--maincolor);
font-size:clamp(1.5em, 2.5vw, 30px);
line-height: 1.2em;
font-weight: 500;
margin-bottom: 15px;
padding: 0 .7em;
margin: 0 0 1em 0;
border-left: 1px solid var(--maincolor);
}
h3.midasi-center {
color: var(--maincolor);
font-size: clamp(1.5em, 2.5vw, 30px);
line-height: 1.2em;
font-weight: 500;
margin: 20px 0;
text-align: center;
}
h4.midasi {
font-size: clamp(1.3em, 2.5vw, 1.4em);
font-weight: 500;
line-height: 1.4em;
margin: 0.5em 0;
padding: 0.5em 0;
border-bottom: 1px dotted var(--maincolor);
}
h4.midasi-sub-copy {
font-size: clamp(1.3em, 2.5vw, 1.4em);
font-weight: 500;
line-height: 1.5em;
margin: 0.5em 0;
padding: 0.5em 0;
}
h5.midasi {
color: var(--maincolor);
font-size: clamp(1.2em, 2.5vw, 1.3em);
font-weight: 500;
line-height: 1.3em;
padding: 0.3em 0;
margin: 1em 0 0.5em 0;
}
@media screen and (min-width:768px) {
h3.midasi{line-height: 1.6em;}
h3.midasi-center{line-height: 1.6em;margin: 30px 0;}
h4.midasi{line-height: 1.5em;}
h4.midasi-sub-copy{line-height: 1.8em;}
h5.midasi {line-height: 1.4em;}
}

/* お買い上げプレゼント */
.purchase-present {
display: inline-block;
padding: 5px 0;
color: #fff;
font-size: 1.1rem;
font-weight: bold;
letter-spacing: 0.05em;
text-align: center;
border-radius: 3px;
box-sizing: border-box;
width: 100%;
margin-bottom: 20px;
}
/* ピンク */
.purchase-present--pink {
background: #f29b84;
}
/* 緑 */
.purchase-present--green {
background: #78AA8C;
}
/* 紫 */
.purchase-present--blue {
background: #968cc8;
}


/* ---------------------------------------------------------------------------------------------

　 table

--------------------------------------------------------------------------------------------- */
/* 必須マーク */
.must {
background: #ee8880;
}
/* 任意マーク */
.free {
background: #bbbbbb;
}
.must,
.free {
color: #FFF;
font-size: 10px;
margin-right: 10px;
padding: 5px;
letter-spacing: 0.2em;
}
/* 入力確認のチェックボックスを大きく */
form .wpcf7-acceptance input[type="checkbox"] {
transform: scale(2.0);
margin-right: 0.5em;
accent-color: #fff;
}
/* CF7チェックボックスを縦並びに */
.wpcf7-checkbox .wpcf7-list-item {
margin-top:5px;
display: block;
}
/* CF7ラジオボタンを縦並びに */
.wpcf7-radio .wpcf7-list-item {
margin-top:5px;
display: block;
}
.font-s {
font-size: 80%;
line-height: 1.3;
}

/* input・textarea */
.wpcf7 td input[type="text"],
.wpcf7 td input[type="tel"],
.wpcf7 td input[type="email"],
.wpcf7 td textarea {
width: 100%;
padding: 20px;
background: #d6d3caEEE;
box-sizing: border-box;
border: 1px solid #d6d3caEEE;
outline: none;
}

.wpcf7 td textarea {
font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
}

.wpcf7 td input[type="text"]:focus,
.wpcf7 td input[type="tel"]:focus,
.wpcf7 td input[type="email"]:focus,
.wpcf7 td textarea:focus {
background: #fff;
border: 1px solid #333;
outline: 0;
}

/* table */
table {
width: 100%;
border-collapse: collapse;
margin: 10px 0;
border-style: solid;
border-width: 0;
border-bottom: 1px solid #d6d3ca;
text-align: left;
}
table th,table#otoiawase th {
vertical-align: middle;
box-sizing: border-box;
}
table th,
table td {
font-weight:normal;
padding: 8px;
border-top: 1px solid #d6d3ca;
border-bottom: 1px solid #d6d3ca;
vertical-align: middle;
}
table#otoiawase th {
font-weight:normal;
padding: 8px;
border-bottom: 1px solid #d6d3ca;
}
table#otoiawase td {
font-weight:normal;
padding: 8px 0;
border-bottom: 1px solid #d6d3ca;
}
table.mobile-block {
border-left: none;
}
table td img {
margin: 0 0 10px 0;
margin-bottom: 0;
}
.red {
color: red;
}
.form_moji {
font-size: 130%;
}
textarea{
width:100%;
padding:5px;
box-sizing:border-box;
}
input[type="text"] ,input[type="email"] ,input[type="tel"] {
width:100%;
padding:5px;
box-sizing:border-box;
}
/* お問い合わせボタン */
.buttonContainer {
text-align: center;
padding: 20px 0 0 0;
}
#button {
width: 100%;
display: inline-block;
font: normal normal 300 1.3em '';
text-decoration: none;
color:#fff;
border: 1px solid var(--goldcolor);
padding: 1em 0;
margin: 5px 0;
background-size: 200% 100%;
background-color: var(--goldcolor);
transition: background-position .3s cubic-bezier(0.19, 1, 0.22, 1) .1s, color .5s ease 0s, background-color .5s ease;
}
#button:hover {
color: var(--goldcolor);
border: 1px solid var(--goldcolor);
background-position: -100% 100%;
background-color:#fff;
}
.contactform-width {
max-width: 100%;
}
/* 確認赤枠 */
.red_line {
margin: 2em 0;
padding:2em;
border: solid 1px red;
text-align: center;
font-weight:normal
}
.red_line p {
margin: 0; 
padding: 0;
}
/* 会社概要テーブル */
table.company-table td:first-child {
width: 30%;
}
@media screen and (min-width: 768px) {
table#otoiawase {
border-top: 1px solid #d6d3ca;
}
table#otoiawase th,
table#otoiawase td {
padding: 20px;
}
table#otoiawase th {
width:30%;
}
#button {
width: 240px;}
}
@media all and (max-width: 767px) {
table.mobile-block,
table.mobile-block th,
table.mobile-block td{border:none;}
table.mobile-block th,
table.mobile-block td{width:100%;display:block;}
table.mobile-block th,
table#otoiawase th,
table#otoiawase td{border-bottom:none;}
table#otoiawase td{margin-bottom: 15px}
	table.company-table td {
		display: block;
		width: 100%;
		border:none;
	}
	
	table.company-table td:first-child {
		width: 100%;
		border-top: 1px solid #d6d3ca;
	}
	
	table.company-table td:last-child {
		width: 100%;
		border-bottom: none;
	}
}


/*　フォーム
---------------------------------------------------- */
.contactform-width {
max-width: 100%;
}
.cf7__list {
display: flex;
flex-wrap: wrap;
margin-bottom: 60px;
}
.cf7__list dt:nth-of-type(n + 2),
.cf7__list dd:nth-of-type(n + 2) {
margin-top: 50px;
}
.cf7__list dt {
width: 35%;
padding-top: 15px;
font-weight: 700
}
.cf7__list dd {
width: 65%;
}

/* 必須・任意 */
.cf7__required,
.cf7__optional {
margin-left: 15px;
padding: 3px 10px;
color: var(--maincolor);
font-size: 10px;
vertical-align: 1px;
font-weight:600
}
.cf7__required {
background: var(--maincolor);
}

/* input・textarea */
.cf7__list dd input[type="text"],
.cf7__list dd input[type="tel"],
.cf7__list dd input[type="email"],
.cf7__list dd textarea {
width: 100%;
padding: 20px;
background: var(--maincolor);
box-sizing: border-box;
border: 1px solid var(--maincolor);
outline: none;
}

.cf7__list dd textarea {
font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
}

.cf7__list dd input[type="text"]:focus,
.cf7__list dd input[type="tel"]:focus,
.cf7__list dd input[type="email"]:focus,
.cf7__list dd textarea:focus,
.cf7__list dd select:focus{
background: var(--maincolor);
border: 1px solid var(--maincolor);
outline: 0;
}

/* select枠 */
.wpcf7 select {
width: 50%;
max-width: 50%;
padding: 20px;
border: 0;
}

/* チェックボックス・ラジオボタン */
.cf7__list dd .wpcf7-checkbox,
.cf7__list dd .wpcf7-radio {
display: block;
padding: 15px 0 10px;
}

/* 縦並び（チェックボックス・ラジオボタン） */
.cf7__list dd .wpcf7-list-item {
display: block;
margin: 0;
}

.cf7__list dd .wpcf7-list-item:nth-child(n + 2) {
margin-top: 18px;
}

/* マウスカーソル（チェックボックス・ラジオボタン） */
.cf7__list dd .wpcf7-list-item label {
cursor: pointer;
}

/* チェックボックス・ラジオボタン */
input[type="checkbox"],
input[type="radio"] {
position: relative;
width: 18px;
height: 18px;
margin-right: 8px;
border: 1px solid #bcbcbc;
vertical-align: -3px;
cursor: pointer;
-webkit-appearance: none;
 -moz-appearance: none;
appearance: none;
}

/* チェックボックス */
input[type="checkbox"]:checked {
border: 1px solid #000;
background: #fff;
}

input[type="checkbox"]:checked:before {
position: absolute;
top: 2px;
left: 5px;
transform: rotate(50deg);
width: 6px;
height: 10px;
border-right: 2px solid var(--maincolor);
border-bottom: 2px solid var(--maincolor);
content: '';
}

/* ラジオボタン */
input[type="radio"] {
border-radius: 50%;
}

input[type="radio"]:checked:before {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 9px;
height: 9px;
border-radius: 50%;
background: #000;
content: '';
}

/* プレースホルダー */
/* Google Chrome / Safari / Mozilla Firefox / Opera */
.cf7__list dd input[type="text"]::placeholder,
.cf7__list dd input[type="tel"]::placeholder,
.cf7__list dd input[type="email"]::placeholder,
.cf7__list dd textarea::placeholder {
color: #a5a5a5;
}

/* Microsoft Edge */
.cf7__list dd input[type="text"]::-ms-input-placeholder,
.cf7__list dd input[type="tel"]::-ms-input-placeholder,
.cf7__list dd input[type="email"]::-ms-input-placeholder,
.cf7__list dd textarea::-ms-input-placeholder {
color: #a5a5a5;
}

/* Internet Explorer */
.cf7__list dd input[type="text"]:-ms-input-placeholder,
.cf7__list dd input[type="tel"]:-ms-input-placeholder,
.cf7__list dd input[type="email"]:-ms-input-placeholder,
.cf7__list dd textarea:-ms-input-placeholder {
color: #a5a5a5;
}

/* 送信ボタン */
.cf7__button {
width: 40%;
margin: 0;
text-align: center;
}

.cf7__button input[type="submit"] {
width: 100%;
height: 60px;
background: #000;
color: var(--maincolor);
transition: opacity .6s;
outline: none;
font-weight: 700;
}

.cf7__button input[type="submit"]:hover {
opacity: .6;
background-color:#ffffff;
border: 2px solid #000;
color:#000;
}

/* ajax-loader */
.wpcf7-spinner {
vertical-align: middle;
}
.wpcf7-spinner {
display: none!important;
}
@media screen and (max-width: 767px) {

.cf7__list dt {
width: 100%;
margin-bottom: 15px;
padding-top: 0;
}

.cf7__list dd {
width: 100%;
}

.cf7__list dd:nth-of-type(n + 2) {
margin-top: 0;
}

.cf7__list dd .wpcf7-checkbox,
.cf7__list dd .wpcf7-radio {
padding: 15px 0 0;
}

/* 送信ボタン */
.cf7__button input[type="submit"] {
width: 200px;
height: 56px;
font-size: 100%;
}
}

/*pagination
---------------------------------------------------------------------------*/
.pagination {
clear: both;
padding: 20px 0;
position: relative;
font-size: 12px;
line-height: 12px;
text-align: center;
margin-bottom:3%
}
.pagination-box {
display: inline-block;
}
.pagination span, .pagination a {
display: block;
float: left;
margin: 2px 2px 2px 0;
padding: 8px 10px 8px 10px;
text-decoration: none;
width: auto;
color: var(--maincolor);
background: #c5c5c5;
}
.pagination a:hover {
color: var(--maincolor);
background: #848484;
}
.pagination .current {
padding: 8px 10px 8px 10px;
background: var(--maincolor);
color: var(--maincolor);
}
.page_box {
float: left;
width: 100%;
margin-top:20px
}

@media screen and (min-width: 768px) {
.pagination {
font-size: 14px;
line-height: 14px;
}
.pagination span, .pagination a {
padding: 10px 15px 10px 15px;
}
.pagination .current {
padding: 10px 15px 10px 15px;
}}

/* editボタン
---------------------------------------------------- */
small:has(.post-edit-link) {
display: block;
clear: both;
}
small .post-edit-link {
display: inline-block;
padding: 0.4em 1.6em;
color: #fff;
background: #999;
text-decoration: none;
transition: opacity .2s ease;
border-radius: 3px;
}
small .post-edit-link:hover {
opacity: .6;
}

/*ギャラリー
---------------------------------------------------------------------------*/
.gallery {
display: flex;
flex-wrap: wrap;
gap: 2%;
margin-bottom: 20px;
}
.gallery br {
display: none;
}
.gallery-item {
margin: 0;
}
.gallery-icon {
text-align: center;
}
.gallery-icon img {
width: 100%;
height: auto;
display: block;
}
/* キャプション */
.gallery-caption,
.wp-caption-text {
color: #222;
font-size: 14px;
text-align: center;
margin-top: 5px;
}
/* カラム */
.gallery-columns-1 .gallery-item { width:100%; }
.gallery-columns-2 .gallery-item { width:49%; }
.gallery-columns-3 .gallery-item { width:32%; }
.gallery-columns-4 .gallery-item { width:23.5%; }
.gallery-columns-5 .gallery-item { width:18.4%; }
.gallery-columns-6 .gallery-item { width:15%; }
.gallery-columns-7 .gallery-item { width:12.5%; }

/* SP */
@media screen and (max-width:767px) {
.gallery-columns-3 .gallery-item,
.gallery-columns-4 .gallery-item {
width:49%;
}
.gallery-columns-5 .gallery-item,
.gallery-columns-6 .gallery-item {
width:32%;
}
.gallery-columns-7 .gallery-item {
width:18.4%;
}
}


/*キャプション
---------------------------------------------------------------------------*/
figure {
background: var(--maincolor);
padding: 5px;
margin: 1.5em 0;
}
figure img {
width: 100%;
height: auto;
display: block;
}
/* キャプション */
figcaption {
text-align: center;
margin-top: 5px;
}
/* SP */
@media screen and (max-width:60em) {
figure {
text-align: center;
margin: 0 auto;
}
figure .alignright img,
figure .alignleft img {
float: none;
}
}


/*arvhive
/* ------------------------------------- */
.info_box a{
text-decoration:none;
}
.i_date{
margin: 0 10px 0 0;
font-size: 85%;
min-width: 100px;
}
.i_text{
margin: 0;
text-decoration: none;
line-height: 150%;
padding:5px 0;
width: 100%;
}
.i_title{
font-size: 1.6em;
line-height: 1.7;
margin: 10px 0 30px 0;
padding: 5px 0 5px 0;
}
.i_text_box{
margin: 0 0 30px 0;
padding: 0 0 30px 0;
}
.i_text_box:after {
content: "";
display: block;
clear: both;
height: 0;
visibility: hidden;
}
/* カテゴリタグ */
.info_meta_page span.cat_info{
display:inline-block;
padding:1px 10px;
font-size:75%;
background:var(--maincolor);
color:var(--maincolor);
width: 80px;
text-align: center
}
@media screen and (min-width:981px) {
.i_title{
font-size: 1.8em;
line-height: 1.9;
}
}


/* 戻る（黒色）
---------------------------------------------------- */
.read_btn a {
position: relative;
display: inline-block;
padding-left: 80px;
text-decoration: none !important;
color: var(--maincolor);
}
/* 矢印の直線 */
.read_btn a::after {
content: "";
position: absolute;
left: 20px;
top: 50%;
width: 45px;
height: 1px;
background: var(--maincolor);
transition: .3s ease;
}
/* 矢印の先端 */
.read_btn a::before {
content: "";
position: absolute;
left: 20px;
top: 50%;
width: 10px;
height: 1px;
background: var(--maincolor);
transform-origin: left center;
transform: translateY(-0.5px) rotate(-25deg);
transition: .3s ease;
}
.read_btn a:hover {
opacity: .7;
}
.read_btn a:hover::after,
.read_btn a:hover::before {
transform: translateX(-5px);
}
.read_btn a:hover::before {
transform: translateX(-5px) translateY(-0.5px) rotate(-25deg);
}

/*商品紹介 ACF
---------------------------------------------------------------------------*/
.furigana{
font-size: 0.7em;
line-height: 1.2;
}

/*内容
---------------------------------------------------------------------------*/
.products_naiyo {
margin: 0 0 50px 0;
}


/*詳細
---------------------------------------------------------------------------*/
.box_data_spot {
width: 100%;
margin: 50px 0 20px 0;
}
.box_data_spot .spot_midasi {
display: flex;
margin-bottom: 5px;
}
.spot_midasi dt, .spot_midasi dd {
display: flex;
align-items: center;
}
.spot_midasi dt {
width: 30%;
padding: 10px 0;
text-align: left;
border-bottom: 1px solid #bbbbbb;
}
.spot_midasi dd {
width: 70%;
margin-left: 0;
padding: 10px 0 10px 20px;
border-bottom: 1px solid #bbbbbb;
}
.spot_midasi dd a {
word-break: break-all;
text-decoration: underline;
}
.spot_midasi:first-child dt,
.spot_midasi:first-child dd {
border-top: 1px solid #bbbbbb;
}
@media screen and (max-width: 768px) {
.box_data_spot {
margin: 30px 0 0 0;
}
.spot_midasi {
flex-direction: column;
align-items: flex-start; /* 左寄せ */
}
.spot_midasi dt,
.spot_midasi dd {
width: 100%;
border-bottom: none; /* 重複するので消す */
}
.spot_midasi dt {
font-weight: bold;
padding: 10px 0 0 0;
}
.spot_midasi dd {
padding: 5px 0 15px 0;
border-bottom: 1px solid #bbbbbb; /* 行ごとに線を付けたい場合 */
}
.spot_midasi:first-child dd {
border-top: none;
}
}
/*スライドイメージ
---------------------------------------------------------------------------*/
.slider-spot {
width: 100%;
margin: 0 auto;
position: relative;
overflow: hidden;
padding: 0
}
.slider-spot img {
width: 100%; /* 画像をスライダーの幅いっぱいに */
aspect-ratio:4 / 3;
display: block;
margin: 0 auto;
padding: 0;/* 余白を消す */
box-sizing: border-box; /* 幅の計算に余白を含める */
object-fit: cover;
object-position: center;
}

/*slick設定
---------------------------------------------------------------------------*/
.slider-spot .slick-slide {
margin: 0 1vw !important; /* 左右余白をまとめた */
position: relative;
}
.slider-spot .slick-slide::after {
content: "";
position: absolute;
inset: 0;
background: rgba(0, 0, 0, .45);
transition: background .3s ease;
pointer-events: none;
}
.slider-spot .slick-center::after {
background: transparent;
}
@media screen and (max-width: 767px) {
.slider-spot img {
aspect-ratio:1 / 1;/* 正方形 */
}
.slider-spot .slick-slide {
margin: 0 !important; /* 左右余白をまとめた */
}
.slider-spot .slick-slide::after {
display: none;
}
}

/*商品紹介
---------------------------------------------------------------------------*/
/*表具作成
---------------------------------------------------------------------------*/
.message {
padding: 0 0 40px 0;
width:100%;
box-sizing:border-box;
text-align: center;
overflow: hidden
}
.message h3 {
font-weight: normal;
font-size: 150%;
line-height: 1.5;
margin: 0 0 20px 0;
}
.message_t {
font-weight: normal;
text-align: left;
line-height: 2;
}
.br_hidden{
display: none;
}

@media screen and (min-width: 768px) {
.message {
padding: 0 0 50px 0;
}
.message h3 {
font-size: 190%;
line-height: 1.7;
}
.message_t {
text-align: center;
line-height: 2.1;
padding: 0
}
.br_hidden{
display: block;
}
}


/* リスト
---------------------------------------------------------------------------*/
.list-1 {
list-style-type: disc;
padding-left: 1.4em;
}
.list-1 li {
padding: .3em 0;
}
.list-1 li::marker {
color: #968cc8;
}

/*商品紹介menu
---------------------------------------------------------------------------*/
.menu_product{
display:grid;
grid-template-columns: repeat(4, 1fr);/* メニューの数 */
gap: 16px;
margin:0 0 60px 0;
font-family: "Yu Gothic", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
}
.menu_product a{
display:flex;
align-items:center;
justify-content:center;
width:100%;
padding:10px 0;
border:1px solid var(--maincolor);
border-radius:30px;
text-decoration:none !important;
font-size:16px;
color:var(--maincolor);
transition: .3s ease;
font-weight: 500;
letter-spacing: 0; 
}
.menu_product a:hover{
background:var(--maincolor);
color:#fff;
}
@media(max-width:980px){
.menu_product{
gap: 14px;
}
.menu_product a{
font-size:15px;
}
}
@media(max-width:768px){
.menu_product{
grid-template-columns: repeat(2, 1fr);/* 2等分 */
gap:12px;
margin:0 0 50px 0;
}
}

/*作家紹介
---------------------------------------------------------------------------*/
/* 文章 */
.artist-text {
width: 100%;
padding: 30px 0;
box-sizing: border-box;
}
.artist-text h4 {
margin: 0;
font-size: 30px;
font-weight: 500;
line-height: 1.5;
}
/* 英語 */
.artist-en {
display: block;
margin-top: 8px;
font-size: 11px;
letter-spacing: 0.2em;
color: #9a8f82;
font-family: Arial, sans-serif;
}
/* 説明文 */
.artist-text p {
margin: 30px 0 0;
}
/* 画像 */
.artist-image {
width: 100%;
}
.artist-image img {
display: block;
width: 100%;
height: auto;
}
@media screen and (max-width: 767px) {
.artist-text {
width: 100%;
padding: 20px 0 0;
}
.artist-text h4 {
font-size: 1.6em;
}
.artist-en {
margin-top: 6px;
font-size: 10px;
}
.artist-text p {
margin-top: 20px;
}
}

/*ミニ屏風
---------------------------------------------------------------------------*/
.box_venue-logo {
position: relative;
}
.box_venue-logo .venue-logo {
position: absolute;
left: 50px;
bottom: 20px;
width: 300px;
height: auto;
}
@media screen and (max-width: 767px) {
.box_venue-logo .venue-logo {
left: 30px;
bottom: 10px;
width: 180px;
}
}