@charset "utf-8";
/* CSS Document */
.pcno { display:none;}
img { max-width:100%;}
#navArea{ display:none;}
html,body{overflow-x:hidden;}
*,
*::before,
*::after {
  box-sizing: border-box;
}

/*▼ 初期化 ▼*/
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:18px; line-height:2em; letter-spacing:1px; color:#ebebeb;-webkit-text-size-adjust:100%; font-weight:400;font-family:'futura-pt', 'Noto Sans 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; font-family: "Zen Old Mincho", serif; line-height:1.5em; }
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 { text-decoration:none; }
a:hover { opacity:0.7; filter:alpha(opacity=50);-webkit-transition:0.5s; -moz-transition:0.5s; -ms-transition:0.5s; transition:0.5s; }
.kadomaru{-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;}
/*▲ 初期化 ▲*/
.mb30{ margin-bottom:30px;}
.mb50{ margin-bottom:50px;}


/*▼エリア・背景設定▼*/
body{ background:#181818;}
#body-top{overflow:hidden;}
#home #body-top{ background:url(../images/home/mv.png) center top no-repeat;}
h1{ text-indent:-9999px; height:0;}

/*▼ヘッダー▼*/
#header a{ text-decoration:none;}
#header p{ font-family: "Zen Old Mincho", serif; line-height:1.5em;}
#header{ max-width:1500px; min-width:1100px; margin:auto; position:relative;}
#header{max-width:1500px;width:100%;margin:auto;}
#header #hmid{ overflow:hidden;}
#header .left{ float:left; display:inline-block; padding-top:45px;}
#header .left .p-01{ color:#449044; font-size:14px; line-height:1em; padding:6px 20px; text-align:center; border:#449044 solid 1px;}
#header .left .tb-01 .name{ display:inline-block; text-align:center;}
#header .left .tb-01 .name .p-02{ font-weight:bold;}
#header .left .tb-01 .name .p-03{ font-weight:bold; padding:0 50px 0 54px; position:relative; color:#449044;}
#header .left .tb-01 .name .p-03::after{ content:""; position:absolute; height:1px; width:43px; background:#449044; top:50%; right:0;}
#header .left .tb-01 .name .p-03::before{ content:""; position:absolute; height:1px; width:43px; background:#449044; top:50%; left:0;}
#header .left .tb-01 .logo{ font-family: "Italianno", cursive; font-size:70px; display:inline-block;}

#header .right{ float:right; display:inline-block; padding-top:45px;}
#header .right .tel{ display:inline-block; text-align:center; margin-right:30px; vertical-align:top;}
#header .right .tel .p-01{ color:#449044; font-size:30px; font-weight:bold; line-height:1em;}
#header .right .tel .p-01 span{ font-size:20px;}
#header .right .tel .p-02{ font-size:16px; color:#449044; font-weight:bold;}
#header .right .contact{ display:inline-block; vertical-align:top;}
#header .right .contact a{ display:block; padding:10px 70px; border:#b3a26b solid 1px; text-align:center; color:#b3a26b; font-size:18px;}


/*▼メインナビゲーション▼*/
#navi{ float:right; padding-top:20px;}
@media only screen and (max-width:1269px){
#navi{ float:right; padding-top:0px;}
    
    }
#navi li{ display:inline-block; font-weight:600; text-align:center; padding:0 5px; position:relative; font-family: "Zen Old Mincho", serif;}
#navi li a{ color:#fff; text-decoration:none; position:relative; display:block; padding:0px 10px 20px;}
#navi li a:hover{ transition:0.3s; color:#98754a;}
#navi li a:after{ content:""; position:absolute; left:0; bottom:0px; width:100%; height:3px; background:#98754a; transform:scale(0, 1); transition:0.3s;}
#navi li a:hover:after{ transform:scale(1);}
#navi li:last-child{ margin-right:0px;}


/*▼メインビジュアル▼*/
#mp-ue{ height:280px; background:url(../images/common/mp-kirakira.png) center top 50% no-repeat; display:flex; align-items:center; justify-content:center; flex-direction:column;}
#mp-ue p{ font-family: "Zen Old Mincho", serif;}
#mp-ue p.p-01{ text-shadow:0 0 20px #385d38,0 0 20px #385d38,0 0 20px #385d38; font-size:48px;}
#mp-ue p.p-02{ color:#449044; font-size:20px;}
#mp{ position:relative; text-align:center;}

#hmp{position:relative; padding-bottom:194px;}
#hmp p{ font-family: "Zen Old Mincho", serif;height:1.2em;}
#hmp .area-01{ text-align:center; padding-top:200px;}




#hmp .area-01 .tb-01{ margin-bottom:80px;}
#hmp .area-01 .tb-01 .p-01{ font-size:60px; text-shadow:0 0 20px #385d38,0 0 20px #385d38,0 0 20px #385d38,0 0 20px #385d38;letter-spacing:10px;margin-bottom:20px;white-space: nowrap;height: auto; line-height:1.4em;}
#hmp .area-01 .tb-01 .p-02{ font-size:30px;letter-spacing:5px;}
#hmp .area-01 .tb-02{ display:flex; justify-content:center;}
#hmp .area-01 .tb-02 .entry{ width:300px; height:302px; background:url(../images/home/hmp-hana.png) center top no-repeat; display:flex; align-items:center; flex-direction:column; padding-top:60px; margin:0 30px;}
#hmp .area-01 .tb-02 .entry:nth-child(2){ padding-top:50px;}
#hmp .area-01 .tb-02 .entry img{ margin-bottom:6px;}
#hmp .area-01 .tb-02 .entry .p-01{ font-size:24px;height: auto;}
#hmp .area-01 .tb-02 .entry .p-02{ font-size:36px;height: auto; line-height:1em;}

.area-btn{ position:absolute; bottom:0; right:30px;}
.area-btn .btn-line a{ background:#137B13;}
.area-btn .btn-tel a{ background:#A59253;}
.area-btn .btn-tel, .area-btn .btn-line{ display:inline-block; margin:0 10px;}
.area-btn .btn-tel a, .area-btn .btn-line a{ color:#FFF; text-decoration:none; font-size:18px; font-weight:bold; border-radius:20px 20px 0px 0px; text-align:center; padding:10px 0; width:350px; display:flex; align-items:center; justify-content:center;font-family: "Zen Old Mincho", serif;}
.area-btn .btn-tel a img, .area-btn .btn-line a img{ margin-right:10px;}
@media screen and (max-width:1269px){
  #hmp .area-01{padding-top:100px !important;}
}


/*▼フッター▼*/
#footer{ max-width:1500px; min-width:1100px; margin:auto; position:relative;}
#footer #fmid{ max-width:1500px; min-width:1200px; margin:auto; padding:0px 0 100px; overflow:hidden;}
#footer a{ text-decoration:none;}
#footer p{ font-family: "Zen Old Mincho", serif; line-height:1.5em;}
#footer #hmid{ overflow:hidden;}
#footer .left{ float:left; display:inline-block; padding-top:45px;}
#footer .left .p-01{ color:#449044; font-size:14px; line-height:1em; padding:6px 20px; text-align:center; border:#449044 solid 1px;}
#footer .left .tb-01 .name{ display:inline-block; text-align:center;}
#footer .left .tb-01 .name .p-02{ font-weight:bold;}
#footer .left .tb-01 .name .p-03{ font-weight:bold; padding:0 50px 0 54px; position:relative; color:#449044;}
#footer .left .tb-01 .name .p-03::after{ content:""; position:absolute; height:1px; width:43px; background:#449044; top:50%; right:0;}
#footer .left .tb-01 .name .p-03::before{ content:""; position:absolute; height:1px; width:43px; background:#449044; top:50%; left:0;}
#footer .left .tb-01 .logo{ font-family: "Italianno", cursive; font-size:70px; display:inline-block;}

#footer .right{ float:right; display:inline-block; padding-top:45px; text-align:right;}
#footer .right .tel{ display:inline-block; text-align:center; margin-bottom:15px;}
#footer .right .tel .p-01{ color:#449044; font-size:30px; font-weight:bold; line-height:1em;}
#footer .right .tel .p-01 span{ font-size:20px;}
#footer .right .tel .p-02{ font-size:16px; color:#449044; font-weight:bold;}
#footer .right .snsbox{ display:flex; align-items:center; justify-content:flex-end; margin-bottom:50px;}
#footer .right .snsbox img{ margin-left:15px;}

#footer #tamonten{ clear:both; text-align:center; font-size:10px; color:#999999; padding:10px 0;}
#footer #tamonten a{ display:block; cursor:default; color:#999999; text-decoration:none;}

.page-top{ position:fixed; bottom:70px; right:20px; background-image:url(../images/common/totop.png); width:60px; height:60px; text-indent:-9999px; opacity:0.8; z-index:10; transition:0s;}


/*▼エリア・共通設定▼*/
#main{ position:relative;}
.bk-main{ background:url(../images/common/spotslight-ue.png) center top no-repeat, url(../images/common/spotslight-sita.png) center bottom no-repeat; padding-top:100px;}
.box{max-width:1500px; margin:auto ; padding:70px 10px;}
.box1024{ width:1024px; margin:auto; padding:70px 0;}
#home .h2-01{ margin-bottom:150px;}

.h2-01{ font-size:48px; text-shadow:0 0 20px #385d38,0 0 20px #385d38,0 0 20px #385d38,0 0 20px #385d38; text-align:center; font-family: "Zen Old Mincho", serif; margin-bottom:70px;}
.h2-01 span{ font-size:72px; display:inline-block; padding:0 15px;}

.h3-01{ font-size:36px; text-shadow:0 0 20px #fff,0 0 20px #fff; font-family: "Zen Old Mincho", serif; margin-bottom:20px;}
.h3-01 span{ font-size:26px; margin-left:20px;}

.more{ text-align:center;}
.more a{ display:inline-block; padding:10px 0px; border:#b3a26b solid 1px; text-align:center; color:#b3a26b; font-size:24px; width:500px; text-decoration:none; font-family: "Zen Old Mincho", serif;}

.more-01{ text-align:center;}
.more-01 a{ background:#181818; display:inline-block; padding:10px 0px; border:#b3a26b solid 1px; text-align:center; color:#b3a26b; font-size:24px; width:500px; text-decoration:none; font-family: "Zen Old Mincho", serif;}


/*▼ホーム　home▼*/
#home .bk-01{ background:url(../images/home/bk-01.png) center top no-repeat; height:1125px; position:relative; z-index:2;}



#home #box-01{ padding-top:150px;}
#home #box-01 .area-01{ margin-bottom:100px;}
#home #box-01 .area-01 .p-01{ font-size:48px; font-family: "Zen Old Mincho", serif; text-shadow:0 0 20px #385d38,0 0 20px #385d38,0 0 20px #385d38,0 0 20px #385d38; line-height:1.5em;}
#home #box-01 .area-01 p{ font-family: "Zen Old Mincho", serif; line-height:2em;}

#home #box-01 .area-02{ display:flex;gap:20px; justify-content:center;}
#home #box-01 .area-02 .entry{ width:400px; text-align:center; margin:0 10px;}
#home #box-01 .area-02 .entry img{ margin-bottom:5px;}
#home #box-01 .area-02 .entry p{ font-family: "Zen Old Mincho", serif; font-size:20px;}
#home .bk-01 .banner-01{ position:absolute; left:0; right:0; margin:auto; bottom:-200px;}





#home .bk-02{ background:url(../images/home/bk-02.png) center top no-repeat;position:relative; z-index:1;}

#home #box-02{ padding-top:300px;}
#home #box-02 .area-01{ height:400px; display:flex; align-items:center; position:relative; margin-bottom:100px;}
#home #box-02 .area-01 .oukan{ background:url(../images/home/oukan.png); width:150px; height:151px; display:flex; justify-content:center; margin-right:50px;}
#home #box-02 .area-01 .oukan p{ font-family: "Zen Old Mincho", serif; font-size:60px; color:#b3a26b;}
#home #box-02 .area-01 .tb-01{ display:inline-block; width:570px;}
#home #box-02 .area-01 .img-bk{ position:absolute; right:-400px;}
#home #box-02 .area-01:nth-of-type(2) .img-bk{ left:-400px;}
#home #box-02 .area-01:nth-of-type(2){ padding-left:250px;}

#home .slider-wrap{ overflow:hidden; width:100%; margin-bottom:70px;}
#home .slider-track{ display:flex; gap:30px; animation:slide 20s linear infinite;}
#home .slider-track img{ width:280px; height:280px; object-fit:cover; flex-shrink:0;}
@keyframes slide{
  0%{ transform:translateX(0);}
  100%{ transform:translateX(calc(-280px * 5 - 10px * 5));}
}


@media only screen and (max-width:1500px){
#home .bk-01{height:auto;}
#home .bk-01 .banner-01{ position: static; left:0; right:0; margin:auto; bottom:0px; clear:both;}
#home #box-01{}
#home #box-02{ padding-top:100px;}

#home .h2-01{ margin-bottom:100px;}

    }
    
    @media only screen and (max-width:1824px){
        #home #box-02 .area-01 .img-bk{ position:absolute; right:-23vw; width:35vw}
        #home #box-02 .area-01:nth-of-type(2) .img-bk{ left:-23vw;}
    }

#home .bk-03{ background:url(../images/home/bk-03.png) center top no-repeat; height:1200px; position:relative; z-index:1;}

#home #box-03{ padding-top:150px;}
#home #box-03 .area-01{ position:relative;}
#home #box-03 .area-01 .tb-01{ width:615px;}
#home #box-03 .area-01 .tb-01 .p-01{ font-family: "Zen Old Mincho", serif; font-size:30px; border-bottom:#FFF solid 1px; padding-bottom:5px; margin-bottom:10px;}
#home #box-03 .area-01 .tb-01 .p-02{ padding:10px 0px; border:#fff solid 1px; text-align:center; color:#fff; font-size:24px; font-family: "Zen Old Mincho", serif;}
#home #box-03 .area-01 .tb-01 .text{ margin-bottom:70px;}
#home #box-03 .area-01 img.img-bk{ position:absolute; right:-238px; top:0;}

#home .bk-04{ background:url(../images/home/bk-04.png) center top no-repeat; height:1200px; position:relative; z-index:1;}

#home #box-04{ padding-top:150px;}
#home #box-04 .area-01{ position:relative; padding-left:400px; min-height:600px;}
#home #box-04 .area-01 .tb-01 .p-01{ font-family: "Zen Old Mincho", serif; font-size:30px; border-bottom:#FFF solid 1px; padding-bottom:5px; margin-bottom:10px;}
#home #box-04 .area-01 .tb-01 .p-02{ padding:10px 0px; border:#fff solid 1px; text-align:center; color:#fff; font-size:24px; font-family: "Zen Old Mincho", serif;}
#home #box-04 .area-01 .tb-01 .text{ margin-bottom:70px;}
#home #box-04 .area-01 img.img-bk{ position:absolute; left:-400px; top:0;}

#home .bk-05{ background:#1a3d28; padding:80px 0;}

#home #box-05 .area-lead{ text-align:center; font-size:18px; margin-bottom:60px; margin-top:-120px; font-family:"Zen Old Mincho", serif;}
#home #box-05 .area-01{ display:flex; align-items:center; justify-content:space-between;}
#home #box-05 .area-01 .left{ width:500px;}
#home #box-05 .area-01 .right{ width:480px;}
#home #box-05 .area-01 .right img{ width:100%;}
#home #box-05 .area-list{ margin-bottom:30px; border-bottom:#4a7a5a solid 1px; padding-bottom:20px;}
#home #box-05 .area-list h4{ font-family:"Zen Old Mincho", serif; font-size:30px; display:flex; align-items:center; margin-bottom:10px;}
#home #box-05 .area-list h4 small{ font-size:18px; margin-left:10px;}
#home #box-05 .area-list p{ font-size:16px; color:#ccc; padding-left:30px;}
#home #box-05 .dot{ display:inline-block; width:30px; height:30px; border-radius:50%; margin-right:12px; flex-shrink:0;}
#home #box-05 .dot-01{ background:#1a6644;}
#home #box-05 .dot-02{ background:#2d8a5e;}
#home #box-05 .dot-03{ background:#5abfb0;}
#home #box-05 .dot-04{ background:#c8e06a;}

#box-contact{ background:url(../images/common/bk-contact.png) center top no-repeat; height:684px; display:flex; align-items:center;}
#box-contact .h2-01{ text-shadow:0 0 20px #385d38,0 0 20px #385d38,0 0 20px #385d38; margin-bottom:60px;}
#box-contact .contact-tb{ display:flex; justify-content:space-between; gap:20px;}
#box-contact .contact-tb .entry{ flex:1; border:#b3a26b solid 1px; padding:30px; text-align:center;}
#box-contact .contact-tb .entry .p-01{ font-family:"Zen Old Mincho", serif; font-size:20px; line-height:1.8em; margin-bottom:15px;}
#box-contact .contact-tb .entry .line{ border-bottom:#fff solid 1px; margin-bottom:20px;}
#box-contact .contact-tb .entry .p-tel{ font-family:"Zen Old Mincho", serif; font-size:30px; font-weight:bold; line-height:1.5em; margin-bottom:10px;}
#box-contact .contact-tb .entry .p-tel img{ vertical-align:middle; margin-right:8px; position:relative; bottom:6px;}
#box-contact .contact-tb .entry .p-02{ color:#ccc;}
#box-contact .contact-tb .entry .btn-mail{ border:#b3a26b solid 1px; display:inline-block; background:#181818; color:#b3a26b; font-family:"Zen Old Mincho", serif; font-size:16px; padding:12px 40px; text-decoration:none; margin-bottom:15px;}
#box-contact .contact-tb .entry .btn-mail img{ vertical-align:middle; margin-right:8px; position:relative; bottom:3px;}
#box-contact .contact-tb .entry .qr{ width:160px; margin-top:10px;}

#kotei-btn{ position:fixed; bottom:0; left:0; width:100%; z-index:100; display:none; background:rgba(0,0,0,0.85); padding:12px 0; backdrop-filter:blur(4px);}
#kotei-btn .inner{ display:flex; justify-content:center; gap:20px;}
#kotei-btn .btn-line a{ background:#137B13;}
#kotei-btn .btn-tel a{ background:#A59253;}
#kotei-btn .btn-line, #kotei-btn .btn-tel{ display:inline-block;}
#kotei-btn .btn-line a, #kotei-btn .btn-tel a{ color:#FFF; text-decoration:none; font-size:18px; font-weight:bold; border-radius:50px; text-align:center; padding:10px 0; width:320px; display:flex; align-items:center; justify-content:center; font-family:"Zen Old Mincho", serif;}
#kotei-btn .btn-line a img, #kotei-btn .btn-tel a img{ margin-right:10px;}


#about .bk-01{ background:url(../images/about/bk-01.png) center top no-repeat; height:738px; position:relative; z-index:1;}

#about #box-01{ padding-top:150px;}
#about #box-01 .area-01{ position:relative;}
#about #box-01 .area-01 .tb-01{ padding-top:80px;}
#about #box-01 .area-01 .tb-01 .p-01{ font-family: "Zen Old Mincho", serif; font-size:30px; border-bottom:#FFF solid 1px; padding-bottom:5px; margin-bottom:10px;}
#about #box-01 .area-01 .tb-01 .text{ margin-bottom:70px;}
#about #box-01 .area-01 img.img-bk{ position:absolute; right:-238px; top:0;}

#about #box-02{ padding-top:150px;}
#about #box-02 .area-01{ position:relative; min-height:400px; margin-bottom:80px;}
#about #box-02 .area-01 .tb-01{ padding-left:295px;}
#about #box-02 .area-01 .tb-01 .text{ margin-bottom:70px;}
#about #box-02 .area-01 img.img-bk{ position:absolute; left:-400px; top:0;}
#about #box-02 .area-01:nth-of-type(2){ margin-bottom:0px;}
#about #box-02 .area-01:nth-of-type(2) .tb-01{ padding-left:0; width:750px;}
#about #box-02 .area-01:nth-of-type(2) img.img-bk{ right:-400px; left:auto;}

#about #box-03 .area-01 .tb-01{ margin-bottom:70px;}
#about #box-03 .area-01 .tb-01 p{ font-family: "Zen Old Mincho", serif; font-size:20px; text-align:center;}
#about #box-03 .area-01 .tb-02{ display:flex; align-items:center; justify-content:center; flex-wrap:nowrap;}
#about #box-03 .area-01 .tb-02 img{ width:24%; height:auto;}

#recruit #box-01{ padding-top:150px;}
#recruit #box-01 .area-01{ position:relative; min-height:400px; margin-bottom:80px;}
#recruit #box-01 .area-01 .tb-01{ padding-left:295px;}
#recruit #box-01 .area-01 .tb-01 .p-01{ font-family: "Zen Old Mincho", serif; font-size:26px;}
#recruit #box-01 .area-01 .tb-01 .more{ text-align:left;}
#recruit #box-01 .area-01 .tb-01 .text{ margin-bottom:70px;}
#recruit #box-01 .area-01 img.img-bk{ position:absolute; left:-400px; top:0;}
#recruit #box-01 .area-01:nth-of-type(2){ margin-bottom:0px;}
#recruit #box-01 .area-01:nth-of-type(2) .tb-01{ padding-left:0; width:750px;}
#recruit #box-01 .area-01:nth-of-type(2) img.img-bk{ right:-400px; left:auto;}

#recruit #box-01 .area-02 .tb-01{ overflow:hidden;}
#recruit #box-01 .area-02 .tb-01 .entry{ width:48%; float:left; margin-bottom:20px;}
#recruit #box-01 .area-02 .tb-01 .entry:nth-child(2n){ float:right;}
#recruit #box-01 .area-02 .tb-01 .entry .youtube{ height:0; overflow:hidden; padding-bottom:177.86%; position:relative; width:100%; max-width:935px; margin-bottom:50px;}
#recruit #box-01 .area-02 .tb-01 .entry .youtube iframe{ position:absolute; left:0; top:0; height:100%; width:100%;}

#recruit .bk-02{ background:url(../images/recruit/bk-02.png) left 50px top no-repeat #042A17;}

#recruit #box-02 .area-01 .entry{ padding:50px 60px; background:#FFF; margin-bottom:20px;}
#recruit #box-02 .area-01 .entry:last-child{ margin-bottom:0px;}
#recruit #box-02 .area-01 .entry h4{ font-family: "Zen Old Mincho", serif; font-size:28px; color:#449044; font-style:italic; margin-bottom:10px; font-weight:bold;}
#recruit #box-02 .area-01 .entry .text p{ font-size:18px; color:#000;}


/*▼フォーム▼*/
.area-mailform table{ width:100%; margin-bottom:50px; border-collapse:collapse;}
.area-mailform table tr{ border-bottom:1px solid #A2A2A2;}
.area-mailform table tr:first-child{ border-top:1px solid #A2A2A2;}
.area-mailform table td{ padding:20px 8px; vertical-align:middle; color:#000;}
.area-mailform table td.td-01{ width:240px; font-size:16px; font-weight:bold; vertical-align:middle; padding-left:15px; color:#FFF;}
.area-mailform table ul{ list-style:none; padding:0; margin:0;}
.area-mailform table ul li{ margin-bottom:7px;}
.area-mailform table ul li:last-of-type{ margin-bottom:0;}
.area-mailform table select{ padding:8px; font-size:15px; border:1px solid #ccc; border-radius:4px;}
.area-mailform table label,
.area-mailform table input{ color:#000;}
.area-mailform table input[type="text"],
.area-mailform table input[type="email"],
.area-mailform table input[type="tel"]{ padding:10px 12px; font-size:15px; border:1px solid #ccc; border-radius:4px; box-sizing:border-box; color:#000;}
.area-mailform table textarea{ padding:10px 12px; font-size:15px; border:1px solid #ccc; border-radius:4px; box-sizing:border-box; color:#000;}
.area-mailform table label{ display:inline-flex; align-items:center; gap:6px; margin-right:25px; font-size:15px; cursor:pointer;}
.area-mailform .chui{ font-weight:bold; display:inline-block; padding:3px 10px; line-height:1em; margin-left:8px; background:#449044; color:#FFF; float:right;}
.area-mailform .w01{ width:98%;}
.area-mailform .w02{ width:43.7%;}
.area-mailform .w03{ width:10%;}
.area-mailform .border-left{ border-left:#FFF solid 1px; padding-left:20px;}

.area-mailform .privacy-title{ font-size:20px; font-weight:bold; color:#449044; margin:0 0 15px;}
.area-mailform .privacy-lead{ margin-bottom:15px; line-height:2em;}
.area-mailform .tb-04{ height:200px; overflow-y:scroll; padding:20px; border:#999 solid 1px; background:#fff; margin:auto; margin-bottom:30px; font-size:14px; line-height:2em;}
.area-mailform .tb-04 p{ margin-bottom:1em; color:#000;}
.area-mailform .tb-04 p:last-child{ margin-bottom:0;}

.area-mailform .tb-02{ text-align:center; margin-bottom:30px; font-size:15px;}
.area-mailform .tb-02 input{ margin-right:8px; width:16px; height:16px; vertical-align:middle; position:relative; top:-1px;}
.area-mailform .tb-02 a{ color:#2059a6;}

.area-mailform .btn{ width:350px; font-size:18px; font-weight:bold; color:#b3a26b; background:#000; text-align:center; border:1px solid #b3a26b; padding:25px 0; display:block; text-decoration:none; margin:0 auto; cursor:pointer;}
.area-mailform .btn:hover{ opacity:0.5; transition:0.5s;}


#menu .bk-01{ background:url(../images/menu/bk-01.png) center top no-repeat; height:738px; position:relative; z-index:1;}

#menu #box-01{ padding-top:150px;}
#menu #box-01 .area-01{ position:relative;}
#menu #box-01 .area-01 .tb-01{ padding-top:80px; padding-left:290px;}
#menu #box-01 .area-01 .tb-01 .p-01{ font-weight:bold;}
#menu #box-01 .area-01 .tb-01 .text{ margin-bottom:70px;}
#menu #box-01 .area-01 img.img-bk{ position:absolute; left:-238px; top:0;}

#menu #box-02{ padding-top:150px;}
#menu #box-02 .area-01{position: relative;}
#menu #box-02 .area-01 .tb-01 .price-entry{ padding:30px 0; margin-bottom:0;}
#menu #box-02 .price-title{ font-family:"Zen Old Mincho", serif; font-size:24px; display:inline-block; margin-bottom:15px; border-bottom:#b5b5b5 solid 1px; padding-bottom:5px;}
#menu #box-02 .dot{ display:inline-block; width:16px; height:16px; border-radius:50%; background:#449044; margin-right:12px; flex-shrink:0;}
#menu #box-02 .area-01 .tb-01 .price-text{ font-size:20px; color:#ebebeb; font-family: "Zen Old Mincho", serif;}
#menu #box-02 .area-01 .tb-01 .price-num{ margin-left:40px; color:#ebebeb; font-family: "Zen Old Mincho", serif;}
#menu #box-02 .area-01 .tb-01 .zeikomi{ font-size:16px;}
#menu #box-02 .area-01 img.img-bk{ position:absolute; right:-400px; top:0;}

#menu #box-02 .area-02 .price-entry{ margin-bottom:60px;}
#menu #box-02 .area-02 .price-entry .price-title{ margin-bottom:35px;}
#menu #box-02 .area-02 .price-entry:last-child{ margin-bottom:0;}
#menu #box-02 .area-02 .price-table{ width:100%; border-collapse:collapse; border:#b5b5b5 solid 1px;}
#menu #box-02 .area-02 .price-table tr{ border-bottom:#b5b5b5 solid 1px;}
#menu #box-02 .area-02 .price-table tr:last-child{ border-bottom:none;}
#menu #box-02 .area-02 .price-table td{ padding:20px 30px; font-family:"Zen Old Mincho", serif; font-size:20px; color:#ebebeb; vertical-align:middle;}
#menu #box-02 .area-02 .price-table .td-area{ width:330px;}
#menu #box-02 .area-02 .price-table .line{ display:block; border-left:#FFF solid 1px; padding-left:40px;}

#menu #box-03 .area-01{ overflow:hidden;}
#menu #box-03 .area-01 .entry{ width:320px; float:left; margin-right:32px; background:rgba(255,255,255,0.3); border-radius:0 0 20px 20px;}
#menu #box-03 .area-01 .entry:last-child{ margin-right:0px;}
#menu #box-03 .area-01 .entry .tb-01{ padding:20px;}
#menu #box-03 .area-01 .entry .tb-01 h4{ font-family: "Zen Old Mincho", serif; font-size:20px; border-bottom:#FFF solid 1px; margin-bottom:15px; padding-bottom:10px; text-align:center;}
#menu #box-03 .area-01 .entry .tb-01 p{ font-size:16px;}

#menu .bk-04{ background:url(../images/recruit/bk-02.png) left 50px top no-repeat #042A17;}

#menu #box-04 .area-01 .p-lead{ font-family:"Zen Old Mincho", serif; font-size:20px; margin-bottom:40px; line-height:2em;}
#menu #box-04 .area-01 .kinshi-list{ margin-bottom:60px;}
#menu #box-04 .area-01 .kinshi-list li{ padding-left:1em; position:relative;}
#menu #box-04 .area-01 .kinshi-list li::before{ content:"・"; position:absolute; left:0;}
#menu #box-04 .area-01 .kinshi-box{ border:#A99652 solid 2px; background:#0D3C24; padding:40px 50px;}
#menu #box-04 .area-01 .kinshi-box p{ font-family:"Zen Old Mincho", serif; font-size:20px;}

#menu #box-05 .area-01 .p-lead{ font-family:"Zen Old Mincho", serif; font-size:17px; line-height:2em; margin-bottom:5px;}
#menu #box-05 .area-01 .mochikomi-table{ width:100%; border-collapse:collapse; border:#b5b5b5 solid 1px; margin-top:40px;}
#menu #box-05 .area-01 .mochikomi-table tr{ border-bottom:none;}
#menu #box-05 .area-01 .mochikomi-table td{ padding:25px 30px; font-size:20px; color:#ebebeb; vertical-align:middle;}
#menu #box-05 .area-01 .mochikomi-table .td-area{ width:200px;}
#menu #box-05 .area-01 .mochikomi-table .td-price p{ font-size:18px; color:#ebebeb;}
#menu #box-05 .area-01 .mochikomi-table .td-price .line{ border-left:#b5b5b5 solid 1px; padding-left:30px;}
#menu #box-05 .area-01 .mochikomi-table .td-price .p-note{ font-size:16px; color:#aaa;}

#menu #box-06 .area-01 .p-lead{ font-family:"Zen Old Mincho", serif; font-size:20px; text-align:center; margin-bottom:5px;}
#menu #box-06 .area-01 .p-note{ font-family:"Zen Old Mincho", serif; font-size:16px; text-align:center; margin-bottom:40px;}
#menu #box-06 .area-01 .card-title{ font-family:"Zen Old Mincho", serif; font-size:24px; display:inline-block; margin-bottom:15px; border-bottom:#b5b5b5 solid 1px; padding-bottom:5px;}
#menu #box-06 .area-01 .card-title .dot{ display:inline-block; width:16px; height:16px; border-radius:50%; background:#449044; margin-right:12px; flex-shrink:0;}
#menu #box-06 .area-01 .card-name-list{ font-size:20px; color:#ccc; margin-bottom:30px; letter-spacing:3px; font-family:"Zen Old Mincho", serif;}
#menu #box-06 .area-01 .card-logos{ display:flex; align-items:center; gap:20px; margin-bottom:50px;}
#menu #box-06 .area-01 .card-logos img{ height:80px; width:auto; object-fit:contain;}
#menu #box-06 .area-01 .text .p-note{ padding-left:1em; text-indent:-1em; text-align:left;}


#guide #box-01{ padding-top:150px;}
#guide #box-01 .area-01{ text-align:center; margin-bottom:50px;}
#guide #box-01 .area-01 p{ font-family: "Zen Old Mincho", serif; font-size:20px; color:#ebebeb;}
#guide #box-01 .area-02 .p-01{ font-family:"Zen Old Mincho", serif; font-size:24px; display:inline-block; margin-bottom:15px; border-bottom:#b5b5b5 solid 1px; padding-bottom:5px;}
#guide #box-01 .area-02 .tb-01{ overflow:hidden;}
#guide #box-01 .area-02 .tb-01 .entry{ width:316px; float:left; padding:20px 0px; margin-right:20px; margin-bottom:40px; border:#A99652 solid 2px; border-radius:20px; background:#444444;}
#guide #box-01 .area-02 .tb-01 .entry:nth-child(3n){ margin-right:0px;}
#guide #box-01 .area-02 .tb-01 .entry .inner{ width:272px; margin:auto; text-align:center;}
#guide #box-01 .area-02 .tb-01 .entry .inner img{ margin-bottom:10px;}
#guide #box-01 .area-02 .tb-01 .entry .inner h4{ font-family: "Zen Old Mincho", serif; font-size:20px; margin-bottom:5px;}
#guide #box-01 .area-02 .tb-01 .entry .inner p{ font-family: "Zen Old Mincho", serif; font-size:16px;}

#guide #box-02 .area-01{ text-align:center; margin-bottom:50px;}
#guide #box-02 .area-01 p{ font-family: "Zen Old Mincho", serif; font-size:20px; color:#ebebeb;}
#guide #box-02 .area-02 .p-01{ font-family:"Zen Old Mincho", serif; font-size:30px; display:inline-block; margin-bottom:35px; border-bottom:#b5b5b5 solid 1px; padding-bottom:5px;}
#guide #box-02 .area-02 .p-01 .dot{ display:inline-block; width:30px; height:30px; border-radius:50%; background:#449044; margin-right:12px; position:relative; top:5px;}
#guide #box-02 .area-02 .tb-01{ overflow:hidden;}
#guide #box-02 .area-02 .tb-01 .entry{ width:238px; float:left; margin-right:20px; margin-bottom:40px;}
#guide #box-02 .area-02 .tb-01 .entry:last-child{ margin-right:0px;}
#guide #box-02 .area-02 .tb-01 .entry img{ margin-bottom:10px;}
#guide #box-02 .area-02 .tb-01 .entry h4{ font-family: "Zen Old Mincho", serif; font-size:20px; margin-bottom:5px; text-align:center;}

#guide #box-03{ padding-top:0px;}
#guide #box-03 .area-01{ position:relative; background:#dfd3ab; overflow:hidden; padding:50px 100px;}
#guide #box-03 .area-01::before{ content:''; position:absolute; inset:0; background:linear-gradient(329deg,#ffffff 0%,#000000 48%,#ffffff 88%,transparent 100%); opacity:0.2; pointer-events:none; z-index:1;}
#guide #box-03 .area-01::after{ content:''; position:absolute; inset:0; background:url(../images/guide/kinsi.png) right 50px bottom no-repeat; pointer-events:none; z-index:2;}
#guide #box-03 .area-01 *{ position:relative; z-index:3;}
#guide #box-03 .area-01 .left{ display:inline-block; position:relative; top:10px;}
#guide #box-03 .area-01 .left .moji-wrap{ display:flex; flex-wrap:wrap; width:194px; gap:10px;}
#guide #box-03 .area-01 .left .moji{ background:#D32121; width:87px; height:87px; display:flex; align-items:center; justify-content:center; color:#FFF; font-family: "Zen Old Mincho", serif; font-size:39px; font-weight:bold;}
#guide #box-03 .area-01 .left .moji.mojimidori{ background:#449044;}
#guide #box-03 .area-01 .right{ display:inline-block; width:950px; vertical-align:top;}
#guide #box-03 .area-01 .right p{ color:#000;}
#guide #box-03 .area-01 .right .p-01{ font-family: "Zen Old Mincho", serif; font-size:36px; text-shadow:0 0 10px #fff,0 0 10px #fff,0 0 10px #fff,0 0 10px #fff; line-height:1.5em; margin-bottom:10px;}
#guide #box-03 .area-01 .right .p-02{ font-family: "Zen Old Mincho", serif; font-size:20px;}

#guide .bk-04{ background:url(../images/recruit/bk-02.png) left 50px top no-repeat #042A17;}

#guide #box-04 .area-01 .entry{ display:flex; align-items:stretch; background:#fff; margin-bottom:30px; position:relative;}
#guide #box-04 .area-01 .entry::after{ content:""; display:block; width:0; height:0; border-left:30px solid transparent; border-right:30px solid transparent; border-top:30px solid #fff; position:absolute; bottom:-30px; left:50%; transform:translateX(-50%); z-index:1;}
#guide #box-04 .area-01 .entry:last-child::after{ display:none;}
#guide #box-04 .area-01 .entry img{ width:240px; height:auto; object-fit:cover; flex-shrink:0;}
#guide #box-04 .area-01 .entry .tb-01{ padding:30px 40px; flex:1;}
#guide #box-04 .area-01 .entry .tb-01 h4{ font-family:"Zen Old Mincho", serif; font-size:30px; font-weight:bold; margin-bottom:15px; display:flex; align-items:center; gap:8px; color:#449044;}
#guide #box-04 .area-01 .entry .tb-01 h4 .num{ color:#b3a26b; font-size:34px;}
#guide #box-04 .area-01 .entry .tb-01 .text p{ color:#333;}
#guide #box-04 .area-01 .entry .tb-01 .text a{ color:#449044;}
#guide #box-04 .area-01 .entry .tb-01 .text .p-note{ font-size:14px; color:#333; padding-left:1em; text-indent:-1em;}

#guide #box-05 .area-01{ text-align:center;}
#guide #box-05 .area-01 p{ margin-bottom:50px; font-size:20px;}


#contact #box-01 .area-01{ text-align:center; margin-bottom:70px;}
#contact #box-01 .area-01 p{ margin-bottom:50px; font-size:20px;}
#contact #box-01 .area-02 .contact-tb{ display:flex; justify-content:space-between; gap:20px;}
#contact #box-01 .area-02 .contact-tb .entry{ flex:1; border:#b3a26b solid 1px; padding:30px; text-align:center; background:#414141; border-radius:20px;}
#contact #box-01 .area-02 .contact-tb .entry .p-01{ font-family:"Zen Old Mincho", serif; font-size:26px; line-height:1.8em; margin-bottom:15px;}
#contact #box-01 .area-02 .contact-tb .entry .line{ border-bottom:#fff solid 1px; margin-bottom:20px;}
#contact #box-01 .area-02 .contact-tb .entry .p-tel{ font-family:"Zen Old Mincho", serif; font-size:38px; font-weight:bold; line-height:1.5em; margin-bottom:10px;}
#contact #box-01 .area-02 .contact-tb .entry .p-tel img{ vertical-align:middle; margin-right:8px; position:relative; bottom:6px;}
#contact #box-01 .area-02 .contact-tb .entry .p-02{ color:#ccc;}
#contact #box-01 .area-02 .contact-tb .entry .btn-mail{ border:#b3a26b solid 1px; display:inline-block; background:#181818; color:#b3a26b; font-family:"Zen Old Mincho", serif; font-size:16px; padding:12px 40px; text-decoration:none; margin-bottom:15px;}
#contact #box-01 .area-02 .contact-tb .entry .btn-mail img{ vertical-align:middle; margin-right:8px; position:relative; bottom:3px;}
#contact #box-01 .area-02 .contact-tb .entry .qr{ width:160px; margin-top:10px;}


#faq{}
/* =========================
   FAQ
========================= */



/*▼ FAQ設定 ▼*/
.faq-list { margin-top: 50px; }
.faq-item { border-bottom: 1px solid #444; /* 落ち着いた境界線 */}
.faq-q { position: relative; padding: 25px 60px 25px 20px; cursor: pointer; display: flex; align-items: center; transition: background 0.3s; }
.faq-q:hover { background: rgba(255, 255, 255, 0.05); }
/* QとAのアイコン */
.faq-icon { font-family: "Italianno", cursive; font-size: 32px; margin-right: 20px; flex-shrink: 0; width: 30px; }
.faq-q .faq-icon { color: #449044; /* 指定のグリーン */ }
.faq-a .faq-icon { color: #b3a26b; /* 指定のゴールド */ }
.faq-txt { font-family: "Zen Old Mincho", serif; font-size: 18px; line-height: 1.6em; }
/* 開閉矢印 */
.faq-arrow { position: absolute; right: 25px; top: 50%; width: 12px; height: 12px; border-top: 2px solid #b3a26b; border-right: 2px solid #b3a26b; transform: translateY(-50%) rotate(135deg); transition: 0.3s; }
/* 開いている時の矢印 */
.faq-q.is-open .faq-arrow { transform: translateY(-20%) rotate(-45deg); }
/* 回答エリア */
.faq-a { display: none; /* 初期状態は非表示 */ background: #222; /* 質問より少し明るい背景 */ }
.faq-a-inner { padding: 30px 20px; display: flex; align-items: flex-start; }
.faq-a .faq-txt { color: #ccc; /* 回答文は少しトーンを落とす */ }


/* =========================
   コンパニオン一覧
========================= */
#box-companion .companion-list { display: flex; flex-wrap: wrap; gap: 20px; }
#box-companion .companion-item { width: 31%; background: rgba(255,255,255,0.04); border: 1px solid rgba(179,162,107,0.3); border-radius: 20px; overflow: hidden; transition: 0.4s; }
/*#box-companion .companion-item:hover { transform: translateY(-5px); box-shadow: 0 10px 30px rgba(0,0,0,0.4); }*/
#box-companion .photo img { width: 100%; height: 250px; object-fit: cover; }
#box-companion .info { padding: 25px; }
#box-companion .name { font-family: "Zen Old Mincho", serif; font-size: 28px; margin-bottom: 10px; }
#box-companion .name span { font-size: 16px; color: #449044; margin-left: 10px; }
#box-companion .meta { color: #b3a26b; margin-bottom: 15px; }
#box-companion .text {color: #dcdcdc; }

/*▼ブログ共通　bl▼*/

/* 全体背景 */
.bl #wrper { width: 1024px; margin: auto; overflow: hidden; padding: 70px 0; background: #0f1b12; color: #ddd; }
/* =========================
   左カラム
========================= */

.bl #mleft { width:700px; float: left; }
.bl #mleft .box {padding-top: 0;}
/* 記事 */

.bl #mleft .date{ text-align:right;}
.bl #mleft .area-01 { overflow: hidden; }
.bl #mleft .tb-01 { overflow: hidden; clear: both; padding-bottom: 30px; margin-bottom: 30px; border-bottom: rgba(179,162,107,0.3) dotted 1px; transition: 0.3s; }

.bl #mleft .tb-01 .contents-right {
    overflow: hidden;    /* 画像の横に独立したブロックを作り、回り込みを防ぐ */
    zoom: 1;             /* 古いブラウザ（IE等）対策（念のため） */
}

/* --- 微調整：日付やタイトルの余白を整える --- */
.bl #mleft .tb-01 .contents-right strong {
    display: inline-block;
    vertical-align: middle;
}

/* 画像とテキストの間に少し余裕を持たせる（必要に応じて調整） */
.bl #mleft .tb-01 img {
    margin-right: 25px; 
}



/* 画像 */

.bl #mleft .tb-01 img { width: 170px; height: 170px; object-fit: cover; float: left; margin-right: 20px; background: #222; }
/* タイトル */
.bl #mleft .tb-01 .p-01 { font-size: 19px; font-weight: bold; margin-bottom: 15px; }
/* リンクカラー */
.bl #mleft .tb-01 a { color: #FFF; text-decoration: none; }
.bl #mleft .tb-01 .p-01 a { color: #449044; font-weight: bold; }
/* 見出し */
.bl #mleft #catego-title { position: relative;  padding:1rem .5rem;
font-size: 30px; margin-bottom: 30px; font-family: "Zen Old Mincho", serif;line-height: 1em; color: #fff; }
/* グラデーションライン */
.bl #mleft #catego-title:after { position: absolute; bottom: 0; left: 0; width: 100%; height: 5px; content: ''; background: linear-gradient(to right, #449044 0%, #b3a26b 100%); }
/* カテゴリ */
.bl #mleft .catego { padding: 0px 20px; border-radius: 20px; display: inline-block; text-align: center; font-weight: bold; font-size: 14px; color: #fff; }
/* カテゴリ色 */
.bl #mleft a.news { background: #b3a26b; }
.bl #mleft a.blog { background: #449044; }
.bl #mleft a.color-03 { background: #2f6f2f; }
.bl #mleft ul.listcatego { display: inline-block; position: relative; top: 8px; margin-bottom: 10px; }


/* =========================
   右カラム
========================= */

#mright { width: 270px; float: right; color: #ddd; }
#mright .sbox { margin-bottom: 40px; }
/* 見出し */
#mright h2 { font-size: 19px; font-weight: bold; padding-bottom: 3px; position: relative; margin-bottom: 10px; color: #fff; }
#mright h2 span { font-size: 14px; font-weight: bold; color: #449044; margin-left: 10px; }
/* 見出しライン */
#mright h2:before { display: block; height: 1px; position: absolute; content: ""; bottom: 0; left: 0; width: 40%; z-index: 1; background: #b3a26b; }
#mright h2:after { content: ""; bottom: 0; left: 0; width: 100%; background: #333; display: block; height: 1px; position: absolute; }
/* 新着記事 */
#mright #sbox-01 ul li { overflow: hidden; margin-bottom: 7px; }
#mright #sbox-01 ul li a { display: block; text-decoration: none; transition: 0.2s; }
#mright #sbox-01 ul li .img { width: 80px; height: 80px; float: left; overflow: hidden; border: 1px solid #333; }
#mright #sbox-01 ul li img { width: 80px; height: 80px; object-fit: cover; transition: 0.3s; }
#mright #sbox-01 ul li p { width: 180px; font-size: 14px; color: #ccc; float: right; }
#mright #sbox-01 ul li a:hover img { transform: scale(1.05); }
/* カテゴリー */
#mright #sbox-02 ul li { border-bottom: 1px solid #333; }
#mright #sbox-02 ul li a { font-size: 15px; color: #ccc; padding: 10px 10px 10px 25px; display: block; text-decoration: none; transition: 0.2s; }
#mright #sbox-02 ul li a:hover { background: rgba(68,144,68,0.1); }

#mright #sbox-02 ul li:after{display:block;content:'';width:0;height:0;position:absolute;top:18px;left:0px;border-width:10px 5px;border-style:solid;border-color:transparent;border-top-color:#fff;}


/* =========================
   ドロップダウン
========================= */

.widget_inner .screen-reader-text{display:none;height:50px;}
.widget_inner .dd_wrap{width:100%;box-sizing:border-box;display:block;border-width:1px;border-style:solid;border-color:#e2e2e2;position:relative;}
.widget_inner select{font:inherit;padding:0 0.625rem;box-sizing:border-box;width:100%;height:46px;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;border:none;background:none;cursor:pointer; color:#FFF;}
.widget_inner option{ background:#000;}
::-ms-expand{display:none;}
.widget_inner select:focus{outline:none;}
.widget_inner label:after{display:block;content:'';width:0;height:0;position:absolute;top:18px;right:12px;border-width:10px 5px;border-style:solid;border-color:transparent;border-top-color:#fff;}
/* =========================
   ページネーション

========================= */

.pagination { margin: 40px 0 0; text-align: center; }
.pagination .page-numbers { display: inline-block; margin: 0 5px; padding: 10px 15px; color: #ddd; background: #222; border-radius: 3px; }
.pagination .current { background: #449044; color: #fff; }
.pagination .prev, .pagination .next { color: #449044; background: none; }
/* =========================
   前後記事
========================= */

.postNavi { overflow: hidden; margin-top: 50px; }
.postNavi a { color: #449044; }




/*color:#449044;  font-family: "Zen Old Mincho", serif; font-size:60px;  */
/* 横幅が1330px以下の場合に適用するスタイル */