@charset "utf-8";
/* CSS Document */
.pcno { display:none;}
img { max-width:100%;}
#navArea{ display:none;}
/*▼ 初期化 ▼*/
body, div, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, ul, li, blockquote, th, td, tr, img { padding:0px; margin:0px; font-size:16px; line-height:1.5em; letter-spacing:1px; color:#000000;-webkit-text-size-adjust:100%; font-weight:400;font-family:"Noto Serif JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;}
table { border-collapse:collapse; }
ul, li { list-style:none; }
h1, h2, h3, h4, h5, h6{ padding:0px; margin:0px; font-size:100%; font-weight:normal;}
a { overflow:hidden; outline:none; }
img { border:none; vertical-align:bottom; }
table td { border:none; vertical-align:top; }
.text99 { text-indent:-9999px; }
a{-webkit-transition:0.5s; -moz-transition:0.5s; -ms-transition:0.5s; transition:0.5s; }
a:hover { opacity:0.5; filter:alpha(opacity=50);-webkit-transition:0.5s; -moz-transition:0.5s; -ms-transition:0.5s; transition:0.5s;text-decoration:none; }
/*▲ 初期化 ▲*/


/*▼エリア・背景設定▼*/
body{ min-width:1200px;}
#body-top{overflow:hidden;}
#home #body-top{overflow:hidden;}



h1{background: #86b81b; padding: 6px 0px 5px;text-align: center; font-size: 12px;color: #f7f5ef;}

/*▼ヘッダー▼*/
#header{ max-width:1800px; min-width:1100px; margin:auto;position:relative; margin-bottom:20px;}
#header #hmid{ overflow:hidden;display:flex;align-items: center; padding-top:20px;}
#header .left{ float:left; padding-top:15px; display:inline-block;}
#header .left a{text-decoration:none;}
#header .left a img{ vertical-align:middle; margin-right:15px;}
#header .left a .inner{ vertical-align:middle; display:inline-block;}
#header .left a .inner p{ font-size:36px; font-weight:bold; color:#5a4c42;font-family: "EB Garamond", serif; color:#86b81b; line-height:1em;}
#header .left a .inner p span{ color:#000000; display:block; letter-spacing:normal; font-size:12px;line-height:1.5em;}


#header .right{ margin-left:auto;display:flex;align-items: center;}
#header .right .ico-area{ display:inline-block;}
#header .right .ico-area .btn-01{ display:inline-block; text-align:center; margin-left:10px;}
#header .right .ico-area .btn-01 img{ margin-bottom:1px;}
#header .right .ico-area .btn-01 p{ font-size:14px; font-weight:bolder;}
#header .right .ico-area .btn-01 a{ text-decoration:none;}

/* 横幅が1330px以下の場合に適用するスタイル */
@media (max-width:1330px) {
#header .bnr{ width:15%; position:relative; top:30px; transition:.5s; margin-right:10px;}
#header .bnr img{ transition:.5s;}
}



/*▼メインナビゲーション▼*/
#navi{ text-align:center; margin-right:20px;}
#navi ul{ height: 45px;}
#navi li { display:inline-block; font-size:18px; font-weight:600; text-align:center; padding:0 5px; position:relative;}
#navi li a{ color:#333; text-decoration:none; position:relative; display:block; padding:0px 10px 20px;}
#navi li a:hover{ opacity:1; transition:0.3s; color:#86B81B;}
#navi li a:after /*ナビ下線*/{ content:""; position:absolute; left:0; bottom:0px;width:100%; height:3px;background:#86B81B;transform:scale(0, 1);transition:0.3s;}
#navi li a:hover:after{ transform:scale(1);}
#navi li:last-child{ margin-right:0px;}



/*▼メインビジュアル▼*/

/*★★★★★カラーミー用★★★★★

★★★★★カラーミー用★★★★★*/

#hmp { display:none;}
.mp{ display:none;}

#hmp { padding: 0 40px 0px;}
#hmp .area-01 { max-width: 1820px; margin:auto; position: relative; border-radius: 16px; overflow: hidden;}
#hmp .area-01 .mp-copy { position: absolute; left: 5.5%; top: 35%; text-align: left;pointer-events: none; }
#hmp .area-01 .mp-copy .p-01 { margin: 0 0 14px;font-size: 40px; font-weight: 600; line-height: 1.35; color: #fff; text-shadow: 0 0 2px rgba(0, 0, 0, 0.95),  0 0 10px rgba(0, 0, 0, 0.65),  0 0 24px rgba(0, 0, 0, 0.48),  0 0 48px rgba(0, 0, 0, 0.36),  0 0 72px rgba(0, 0, 0, 0.26),  0 0 100px rgba(0, 0, 0, 0.18); }
#hmp .area-01 .mp-copy .p-01 .mp-em { font-size: 60px; font-weight: 600; }
#hmp .area-01 .mp-copy .p-01:last-child { margin-bottom: 0; }
#hmp .mp-lead { padding: 50px 0;text-align: center; border-bottom: 1px solid #cccccc;}


.mp { padding: 0 40px 0px; position: relative; }
.mp p { position: absolute; left: 0; right: 0; top: 0; bottom: 0; color: #fff; font-weight: bold; font-size: 48px; display: flex; align-items: center; justify-content: center; margin: 0; }




/*▼フッター▼*/
#footer-top{ background:#86b81b; text-align:center; padding:10px 0px; color:#FFF; font-size:14px;}
#footer { width:1100px; margin:auto; padding-top:50px;}
#footer #fmid{ overflow:hidden; margin-bottom:50px;}



#footer .left{ float:left;display:inline-block;}
#footer .left .flogo{ margin-bottom:10px;}
#footer .left .flogo a{text-decoration:none;}
#footer .left .flogo a img{ vertical-align:middle; margin-right:15px;}
#footer .left .flogo a .inner{ vertical-align:middle; display:inline-block;}
#footer .left .flogo a .inner p{ font-size:36px; font-weight:bold; color:#5a4c42;font-family: "EB Garamond", serif; color:#86b81b; line-height:1em;}
#footer .left .flogo a .inner p span{ color:#000000; display:block; letter-spacing:normal; font-size:12px;line-height:1.5em;}

#footer .left .tb-01{ margin-left:88px;}
#footer .right{ display:inline-block; float:right;}
#footer .right ul{ display:inline-block; margin-left:50px; vertical-align:top;}
#footer .right ul li a{ display:block; margin-bottom:10px; text-decoration:none; color:#000;}

#footer .right ul.ul-02 li{ font-size:14px;}

#footer #tamonten { clear:both; text-align:center; font-size:10px; color:#666666; padding:10px 0;}
#footer #tamonten a { display:block; cursor:default; color:#666666; text-decoration:none; opacity:1; filter:alpha(opacity=100);}


.page-top {
	position:fixed;
    bottom:70px;
    right:20px;
	background-image:url(../images/common/totop.png);
	width:70px; height:70px; text-indent:-9999px;
    -ms-filter:"alpha(opacity=80)";
    -moz-opacity:1;
    -khtml-opacity:1;
    opacity:1;
	z-index:10;
	-webkit-transition:0s; -moz-transition:0s; -ms-transition:0s; transition:0s;}

/*▼エリア・共通設定▼*/

.box{ width:1100px; margin:auto; padding:70px 0;}
.area-pink{ background:#faf1f0; padding:50px 50px; border-radius:30px; overflow:hidden; margin-bottom:50px;}
.area-white{ background:#fff; border:3px solid #de7f88; padding:50px 50px; border-radius:30px; overflow:hidden; margin-bottom:50px;}

.h2-01 { font-size:34px; font-weight:600; margin-bottom:50px; padding-bottom: 8px; text-align:center;}
.h2-02 { font-size:60px; font-weight:600; margin-bottom:50px;text-align:center; color:#2a6541;}
.h2-02 span{ font-size:18px; font-weight:600;color:#000; display:block; line-height:1em;}

.h3-01 { font-size:24px; font-weight:600; margin-bottom:30px; padding-bottom: 8px; border-bottom:#86b81b solid 3px;}

.more { text-align:center; clear:both;}
.more a{ background: url(../images/common/tomore.png) right 10px top 50% no-repeat #2A6541; color:#fff; padding:20px 0; text-decoration:none; display:block;border-radius:10px; width:300px; display:inline-block;}



.more-01{clear:both;}
.more-01 a{ background: url(../images/common/tomore.png) right 10px top 50% no-repeat #86B81B; color:#fff; padding:20px 0; text-decoration:none; display:block;border-radius:10px; width:300px; display:inline-block; text-align:center;}


/*▼ホーム　home▼*/
#home .bk-01{ position:relative;}
#home .bk-01 .circle-01 { position: absolute; top: 450px; right: -300px; z-index: 1; pointer-events: none; overflow: visible; }
#home .bk-01 .circle-01 .circle-01-frame { position: absolute; right: 0; top: 50%; margin-top: 330px; left: auto; width: 820px; height: 820px; pointer-events: none; }
#home .bk-01 .circle-01-svg { position: absolute; left: 0; top: 0; display: block; width: 820px; height: 820px; font-family: inherit; overflow: visible; transform-origin: 410px 410px; -webkit-transform-origin: 410px 410px; animation: box01-circle-rotation 45s linear infinite; -webkit-animation: box01-circle-rotation 45s linear infinite; }
#home .bk-01 .circle-01-path { fill: transparent; }
#home .bk-01 .circle-01-text { fill: #84a90f; font-size: 74px; letter-spacing: 1px; }
@keyframes box01-circle-rotation { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
@-webkit-keyframes box01-circle-rotation { from { -webkit-transform: rotate(0deg); } to { -webkit-transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { #home .bk-01 .circle-01-svg { animation: none; -webkit-animation: none; } }

#home #box-01{min-height:1000px;}
#home #box-01 .h2-01{ margin-bottom:16px;}
#home #box-01 .p-read{text-align: center;margin: 0 0 60px;}
#home #box-01 .area-01{ position:relative; text-align:center;}
#home #box-01 .area-01 .inner{ display:inline-block; text-align:left; padding-top:80px; position:relative; z-index:2;margin-right:50px;}
#home #box-01 .area-01 .inner p{ line-height:2em;}


#home #box-01 .area-01 img{ position:absolute;}
#home #box-01 .area-01 img:first-of-type{ top:0; right:0;}
#home #box-01 .area-01 img:nth-of-type(2){ top:50px; left:0;}
#home #box-01 .area-01 img:nth-of-type(3){ top:480px; right:0;}
#home #box-01 .area-01 img:nth-of-type(4){ top:620px; left:300px;}


#home #box-02{}

#home #box-02 .tb-01 p{ line-height:2em;}
#home #box-02 .tb-01 h3 { font-size: 24px; font-weight: bold;}
#home #box-02 .tb-01 .price { font-size: 20px; font-weight: bold;}
#home #box-02 .tb-01 .price span { font-size: 16px; font-weight: 500; }

#home #box-02 .area-01{ margin-bottom:50px;}
#home #box-02 .area-01 img{ margin-bottom:10px;}
#home #box-02 .area-02 .entry{ width:356px; float:left; margin-bottom:50px;margin-right:16px;}
#home #box-02 .area-02 .entry:nth-child(3n){margin-right:0px;}


#home .bk-03{ position:relative; background:url(../images/home/bk-03.png) left -100px top 0 no-repeat;}

#home #box-03{ height:630px; padding-top:200px; margin-bottom:100px;}

#home #box-03 .bk-about { position: relative; padding: 60px 0 50px; }
#home #box-03 .bk-about .vertical-logo {position: absolute; left: 0; top: 0; writing-mode: vertical-lr; text-orientation: mixed;font-family: "EB Garamond", serif; font-size: 80px;color: #fff; letter-spacing:4px;}
#home #box-03 .bk-about .h2-about { font-size:36px; font-weight:600;padding-left: 100px;}

#home #box-03 .area-01 ul{border-top: 1px solid #c8d8c0; margin-left:200px;}
#home #box-03 .area-01 ul li { border-bottom: 1px solid #c8d8c0; }
#home #box-03 .area-01 ul li a { display: flex; align-items: center; gap: 8px; padding: 50px 16px; text-decoration: none;}
#home #box-03 .area-01 ul li .ep-label { font-family: 'Times New Roman', serif; font-size:24px; color: #2A6541;}
#home #box-03 .area-01 ul li .ep-num { font-family: 'Times New Roman', serif; font-size: 60px;color: #2A6541;margin-right: 12px; }
#home #box-03 .area-01 ul li .ep-title {flex: 1; color:#000;}
#home #box-03 .area-01 ul li .ep-arrow { font-size:20px; color: #2A6541; margin-left: auto; }


.bk-access{ background:#F6F6F6;}
#box-access .area-01{ margin-bottom:5px;}
#box-access .area-01 .googlemap{height: 0;overflow: hidden;padding-bottom: 46.25%;position: relative;}
#box-access .area-01 .googlemap iframe {position: absolute;left: 0;top: 0;height: 100%;width: 100%;}
#box-access .area-02 { display: flex; gap: 60px; align-items: flex-start; padding: 20px 0;}
#box-access .area-02 .tb-01 { display:inline-block; }
#box-access .area-02 .tb-01 .p-01 { font-size:18px; color:#2a6541; font-weight:bold; border-bottom:#2a6541 solid 1px; display:inline-block; line-height:2em; margin-bottom:10px;}
#box-access .area-02 .tb-01 .p-02 { display:block;}
#box-access .area-02 .tb-01 .p-02 span { margin-right: 20px; display:inline-block;}


#about{}
#about p{ line-height:2em;}
#about #box-01{}
#about #box-01 .area-01{ display:flex;align-items: center;}
#about #box-01 .area-01 .tb-01{ margin-left:auto; width:540px;}


#about #box-02{}
#about #box-02 .area-01{ margin-bottom:50px;}
#about #box-02 .area-01 .tb-01{ margin-bottom:30px;}
#about #box-02 .area-01 .tb-01 span{ font-size:18px; font-weight:bold;}


#about #box-02 .area-02 .entry { display: flex; align-items: flex-start; gap: 40px; margin-bottom: 60px; }
#about #box-02 .area-02 .entry .left { flex: 1; }
#about #box-02 .area-02 .entry .left .tb-01 { display: flex; align-items: center; gap: 16px; margin-bottom: 24px; }
#about #box-02 .area-02 .entry .left .tb-01 .maru { display: flex; flex-direction: column; align-items: center; justify-content: center; background: #84a90f; border-radius: 50%; width: 90px; height: 90px; flex-shrink: 0; }
#about #box-02 .area-02 .entry .left .tb-01 .maru .label { font-size: 18px; color: #fff; margin-bottom:5px;}
#about #box-02 .area-02 .entry .left .tb-01 .maru .num { font-size: 36px; font-weight: 700; color: #fff; }
#about #box-02 .area-02 .entry .left .tb-01 h4 { font-size: 24px; font-weight: bold;}
#about #box-02 .area-02 .entry .left p { }
#about #box-02 .area-02 .entry img { width: 380px; flex-shrink: 0; }



#about .bk-03{ background:#F6FCE3;}
#about #box-03{}
#about #box-03 .more-01{ text-align:center;}
#about #box-03 .area-01 { display: flex; gap: 24px; align-items: flex-start; margin-bottom:70px;}
#about #box-03 .area-01 .entry { flex:1; display: flex;background: #fff; box-shadow: 0px 0px 8px rgba(0,0,0,0.2); position: relative; height: 100%; }
#about #box-03 .area-01 .entry .num { width: 64px; height: 64px; background: #84a90f; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 24px; font-weight: 700; color: #fff; position: absolute; left: 0; right: 0; top: -30px; margin: auto; }
#about #box-03 .area-01 .entry .tb-01 { padding: 48px 24px 24px; display: flex; flex-direction: column; flex: 1;}
#about #box-03 .area-01 .entry .tb-01 p { flex: 1; }
#about #box-03 .area-01 .entry .tb-01 img {margin-top: 15px; }



#about #box-04{}
#about #box-04 .area-01{}
#about #box-04 .area-01 table { width: 100%; border-collapse: collapse; }
#about #box-04 .area-01 table tr { border-bottom: 1px solid #ddd; }
#about #box-04 .area-01 table td { padding: 24px 0;}
#about #box-04 .area-01 table td:first-child{ width: 200px; font-weight:bold;}
#about #box-04 .area-01 table{ }


#guide{}
#guide #box-01 { margin-bottom: 60px; }
#guide #box-01 .area-01{ display: flex; align-items: flex-start;margin-bottom: 24px; }
#guide #box-01 .area-01 .num { width:65px; height:65px; background: #84a90f; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 36px;color: #fff; flex-shrink: 0; margin-right:20px;}
#guide #box-01 .area-01 .tb-01 h3 { font-size: 20px; font-weight: bold; margin-bottom:10px; padding-top:20px;}


#guide #box-01 .area-02 {margin-left:70px; margin-bottom:100px;}
#guide #box-01 .area-02:last-child{margin-bottom:0px;}
#guide #box-01 .area-02.area-03{ margin-left:0px;} 
#guide #box-01 .area-02 .tb-01{background: #f0f5e0; margin-bottom: 40px; position:relative; padding-bottom:10px;}
#guide #box-01 .area-02 .tb-01 .table-title { text-align: center; font-size: 20px; font-weight: bold; color: #fff; background:#86B81B; padding:15px 0px;}
#guide #box-01 .area-02 .tb-01 table.ta-01 {width: calc(100% - 60px); margin: 30px;}
#guide #box-01 .area-02 .tb-01 table.ta-01 tr { border-bottom: 1px solid #d0dfa0; }
#guide #box-01 .area-02 .tb-01 table.ta-01 td { padding: 15px;}
#guide #box-01 .area-02 .tb-01 table.ta-01 td:first-child{ width:300px; font-size:18px; font-weight:bold;}
#guide #box-01 .area-02 .tb-01 table.ta-01 .dot { display: inline-block; width:18px; height: 18px; background: #84a90f; border-radius: 50%; margin-right:10px;}

#guide #box-01 .area-02 .tb-01 .maru-waku{ width: 200px;background: #fff; border-radius: 50%; width:300px; height:300px; display: flex; flex-direction: column; align-items: center; justify-content: center;box-sizing: border-box; text-align: center; align-self: center; padding:30px; border:#86b81b solid 3px; position:absolute; top:150px; right:30px;}
#guide #box-01 .area-02 .tb-01 .maru-waku .note-title { font-size:20px; font-weight: bold;margin: 0 0 20px; padding-bottom:5px;display:inline-block; border-bottom:#86b81b solid 2px;}

#guide #box-01 .area-02 .tb-02{}
#guide #box-01 .area-02 .p-01{ text-indent:-1.5em; padding-left:1.5em;}
#guide #box-01 .area-02 .p-02{ text-indent:-1.5em; padding-left:1.5em; margin-bottom:30px; line-height:2em;}
#guide #box-01 .area-02 .tb-02 .info-block { margin-bottom: 40px; }
#guide #box-01 .area-02 .tb-02 .info-block h3 {font-size:20px; font-weight: bold;margin: 0 0 20px; padding-bottom:5px;display:inline-block; border-bottom:#86b81b solid 2px;}

#guide #box-01 .area-02 .tb-02 .info-block ul li{ text-indent:-1.5em; padding-left:1.5em; margin-bottom:10px; line-height:1.8em;}

#guide #box-01 .area-02 .tb-02 table.ta-02{ width:100%; margin-top:20px;}
#guide #box-01 .area-02 .tb-02 table.ta-02 td{ border:#CCC solid 1px; padding:10px;}
#guide #box-01 .area-02 .tb-02 table.ta-02 tr:first-child td{ background: #86B81B; color:#FFF; font-weight:bold; text-align:center;}
#guide #box-01 .area-02 .tb-02 table.ta-02 tr:nth-child(3) td{ background: #F6FCE3; text-align:center;}

#guide #box-01 .area-02 .tb-01.padding-top{ padding-top:1px;}
#guide #box-01 .area-02 .tb-01 table.ta-03 {width: calc(100% - 60px); margin: 30px; }
#guide #box-01 .area-02 .tb-01 table.ta-03 tr { border-bottom: 1px solid #d0dfa0; }
#guide #box-01 .area-02 .tb-01 table.ta-03 td { padding: 15px;}
#guide #box-01 .area-02 .tb-01 table.ta-03 td:first-child{ width:100px; font-size:18px; font-weight:bold;}

#guide #box-01 .area-02 .tb-02 table.ta-04{ width:100%; margin-top:20px;}
#guide #box-01 .area-02 .tb-02 table.ta-04 td{ padding:20px; border:#666 solid 1px;text-align:center;}

#guide #box-01 .area-02 table.ta-05{ width:100%; margin-top:50px;}
#guide #box-01 .area-02 table.ta-05 tr:first-child{ border-top:#CCCCCC solid 1px;}
#guide #box-01 .area-02 table.ta-05 tr{ border-bottom:#CCCCCC solid 1px;}
#guide #box-01 .area-02 table.ta-05 td{ padding:30px 0px;}
#guide #box-01 .area-02 table.ta-05 td:frist-child{ width:200px;}


#list{}
#list #box-01{}
#list #box-01 .area-01{ overflow:hidden; margin-bottom:40px;}
#list #box-01 .area-01 .narabikae{ width:200px; float:right;}


#list #box-01 .area-02 { overflow: hidden; display: flex; flex-wrap: wrap; gap: 30px;}
#list #box-01 .area-02 .entry { width: calc(33.333% - 20px); box-sizing: border-box; margin-bottom:50px;}
#list #box-01 .area-02 .entry a{ color:#86B81B; font-size:18px; font-weight:bold;}
#list #box-01 .area-02 .entry img.img-01{ width:100%; height:450px;object-fit: cover; margin-bottom:10px;}


#list #box-01 .margintop100{ margin-top:100px;}
#list #box-01 .area-03 { overflow: hidden; display: flex; flex-wrap: wrap; gap: 30px; margin-top:100px;}
#list #box-01 .area-03 .entry { width: calc(24% - 12px); box-sizing: border-box; margin-bottom:50px;}
#list #box-01 .area-03 .entry a{ color:#86B81B; font-size:18px; font-weight:bold;}
#list #box-01 .area-03 .entry img{ width:100%; height:300px;object-fit: cover; margin-bottom:10px;}

#detail{}
#detail #box-01{}

#tokutei{}
#tokutei .section__block{margin-bottom:50px;}
#tokutei .section__title-h2{font-size:18px;font-weight:700;margin-bottom:15px;padding-left:10px;border-left:4px solid #333;}
#tokutei .shop-info-list{border-top:1px solid #ddd;}
#tokutei .shop-info-list__title{padding:20px 10px 0px 10px; font-weight: bold; font-size:18px;}
#tokutei .shop-info-list__note{padding:12px 10px 20px 10px;border-bottom:1px solid #ddd;}
#tokutei .shop-info-list:after{content:"";display:block;clear:both;}
#tokutei a{color:#333;text-decoration:underline;}
@media screen and (max-width:768px){
#tokutei .shop-info-list__title,#tokutei .shop-info-list__note{width:100%;float:none;}
}


#policy .section__block{}

#policy .shop-info__lead{margin:0 0 40px;font-size:15px;line-height:2;color:#444;}
#policy .shop-info__lead a{color:#7aa33d;text-decoration:underline;transition:0.3s;}
#policy .shop-info__lead a:hover{opacity:0.7;text-decoration:none;}
#policy .shop-info-list{margin:0;padding:0;border-top:1px solid #ddd;}
#policy .shop-info-list__title{margin:0;padding:22px 20px;font-size:18px;font-weight:700;line-height:1.6;color:#222;background:#f3f6ed;border-bottom:1px solid #ddd;}
#policy .shop-info-list__note{margin:0;padding:22px 20px 30px;font-size:15px;line-height:2;color:#444;border-bottom:1px solid #ddd;background:#fff;}
#policy .shop-info-list__note a{color:#7aa33d;text-decoration:underline;transition:0.3s;}
#policy .shop-info-list__note a:hover{opacity:0.7;text-decoration:none;}