@charset "UTF-8";
.center{text-align: center;}

/*下層共通*/
.slideIN{display:flex;align-items:center;justify-content:space-between;}
.slideLEFT , .slideRIGHT{width:50%;padding:100px;box-sizing:border-box;}
.slideLEFT:has(img) , .slideRIGHT:has(img){padding:0!important;}
.slideLEFT img , .slideRIGHT img{width:100%;}
.slideLEFT{transform:translateX(-150%);}
.slideRIGHT{transform:translateX(150%);}
.slideIN.fade .slideLEFT , .slideIN.fade .slideRIGHT{animation:slideIN 0.6s ease-out 0s 1 forwards;}
@keyframes slideIN{100%{transform:translateX(0%);opacity:1;}}

section#titleIMG{width:100%;height:400px;background:url(../layout/titleIMG/menu.webp) no-repeat center / cover;position:relative;}
section#titleIMG.privacy-policy{background-image:url(../layout/titleIMG/privacy-policy.webp);}
section#titleIMG.terms-of-service{background-image:url(../layout/titleIMG/terms-of-service.webp);}
section#titleIMG.contact{background-image:url(../layout/titleIMG/contact.webp);}
section#titleIMG.news{background-image:url(../layout/titleIMG/news.webp);}

section#titleIMG h2{width:fit-content;min-width:340px;margin:0 auto;padding:30px 40px;background:#fff;line-height:1;text-align:center;text-transform:uppercase;font-size:60px;font-family:"Oswald", sans-serif;position:absolute;bottom:calc(0px - 100px);left:0;right:0;margin:0 auto;z-index:1;}
section#titleIMG h2 em{display:block;width:fit-content;min-width:200px;margin:30px auto 0 auto;padding:15px 20px;background:#000;border-radius:10px;color:#fff;font-size:25px;text-align:center;line-height:1;}

ul.imgContainer{display:flex;flex-wrap:wrap;margin-top:50px;}
ul.imgContainer li{width:calc(100% / 4 - 20px);height:auto;aspect-ratio:4/3;margin:10px;}
ul.imgContainer li img{width:100%;}

#description{width:100%;background:#333;padding:160px 0 80px 0;position: relative;}
#description .inner{width:900px;margin:0 auto;}
#description .inner *{color:#fff;font-size:18px;}
#description .inner p{animation:fadeIN 1s ease-in-out 0s 1 forwards;opacity: 0;}

#textList{width:1200px;margin:0 auto 150px auto;}
#textList h3{margin:80px auto 30px auto;font-size:25px;color:#a59759;opacity:0;transform:translateY(10px);}
#textList li.fade h3{animation:fadeUP 0.3s ease-in-out forwards;}
#textList h3:after{content:'';display:block;width:100%;height:2px;margin-top:7px;background:#a59759;clip-path:inset(0 100% 0 0);}
#textList li.fade h3:after{animation:line 0.25s ease-in-out 0.3s 1 forwards;}
@keyframes line{100%{clip-path:inset(0 0 0 0);}}



#textList p{margin: 10px auto 20px auto;}
#textList > li li{text-indent:-1em;padding-left:1em;}
#textList > li li:not(:last-child){margin-bottom:15px;}
#textList > li li > ol{margin:20px auto 40px auto;}
#textList a.BTN{width:230px;margin:20px auto 0 0;padding:8px;font-size:15px;}


#comLink{background:url(../layout/about.webp) no-repeat top center / cover;height:600px;background-attachment:fixed;position:relative;}
#comLink:before{content:'';display:block;width:100%;height:100%;background:rgba(0,0,0,.5);position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;z-index:1;}
#comLink .comWrap{display:block;width:fit-content;height:fit-content;padding: 0 20px;position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;z-index:3;}
#comLink h3{margin-bottom:40px;color:#fff;text-align:center;font-size:30px;line-height:1.5;}
#comLink h3 em{display:block;margin-top:20px;font-size:60px;}
#comLink a.BTN{border-radius:100px;}



/*トップと共通*/
ul#fBanner{display:flex;padding:0;margin:0;}
ul#fBanner li{width:calc(100% / 3);height:auto;line-height:1;}
ul#fBanner li a{width:100%;height:auto;display:block;}
ul#fBanner li a img{width:100%;height:auto;border:2px solid #ccc;vertical-align:top;}

section#fContact{background:url(../top/contactBG.jpg) no-repeat bottom center / cover;padding:80px 0;background-attachment:fixed;}
section#fContact h2.title{font-size:80px;line-height:1;color:#fff;font-family:"Oswald", sans-serif;letter-spacing:normal;text-shadow:3px 3px 5px rgba(0,0,0,0.5);}





/*事業案内ページ 地図部分*/
#jMap .jMap01{width:1200px;margin:0 auto;text-align:left;padding-right:500px;box-sizing:border-box;display:flex;justify-content:center;flex-direction:column;z-index:3;position:relative;mix-blend-mode:difference;}
#jMap .jMap01 h2{font-size:30px;margin-bottom:60px;letter-spacing:0.15em;text-align:left;transform:translateX(-200%);}
#jMap .jMap01 h2 span{font-size:50px;}
#jMap .jMap01 h3{font-size:30px;letter-spacing:0.13em;margin:40px 0;line-height:1.75;width:500px;transform:translateX(-200%);}
#jMap.fade .jMap01 h2{animation:slideIN 0.8s ease-out 0.5s 1 forwards;}
#jMap.fade .jMap01 h3{animation:slideIN 0.8s ease-out 0.9s 1 forwards;}
#jMap{background:#000;padding:200px 0 50px 0;height:1000px;position:relative;}
#jMap > *{color:#a59759;}
#jMap .jMap02 .img01{display:block;height:751px;width:779px;position:absolute;top:auto;bottom:100px;right:250px;margin:auto 0;transform:translateX(150%);z-index:2;}
#jMap .jMap02 .img02{display:block;height:256px;width:418px;position:absolute;top:720px;bottom:0;right:150px;margin:auto 0;transform:translateX(150%);z-index:2;}
#jMap .jMap02 .img02:before{content:'';display:block;width:330px;height:330px;position:absolute;right:-40px;top:-40px;background:url(../top/top01-1-3.png) no-repeat center center / contain;animation:Rotate 4s ease-in-out infinite;transform:rotate(360deg);}
@keyframes Rotate{from{transform:rotate(360deg)}to{transform:rotate(0deg)}}
#jMap.fade .jMap02 .img01{animation:slideIN 0.6s ease-out 0.5s 1 forwards;}
#jMap.fade .jMap02 .img02{animation:slideIN 0.6s ease-out 1.2s 1 forwards;}
#jMap div.future{width:1200px;margin:0 auto;z-index:3;position:relative;mix-blend-mode:difference;}
#jMap div.future p{width:fit-content;margin:0 0 0 auto;font-size:46px;letter-spacing:0.1em;transform:translateX(200%);}
#jMap div.future em{display:block;font-size:100px;letter-spacing:0;line-height:1;}
#jMap.fade div.future p{animation:slideIN 0.8s ease-out 0s 1 forwards;}
#jMap p.scroll{color:#fff;top:100px;bottom:auto;}
 /*事業案内ページ*/
#business-page .menuBOX{margin:150px 0;}
#business-page .menuBOX:not(section.processing){opacity:0;transform:translateY(60px);}
#business-page .menuBOX.fade:not(section.processing){animation:fadeUP 1s ease-in-out forwards;}
#business-page .menuBOX.processing > div.wrap{opacity:0;transform:translateY(60px);}
#business-page .menuBOX.processing.fade > div.wrap{animation:fadeUP 1s ease-in-out forwards;}
#business-page .menuBOX h3{width:100%;margin:0 auto 60px auto;font-size:50px;font-weight:600;color:#069ee5;text-align:center;position:relative;}
#business-page .menuBOX h3:before,
#business-page .menuBOX h3:after{content:'';display:block;width:100%;height:10px;background:#069ee5;position:absolute;top:-10px;}
#business-page .menuBOX.fade h3:after{top:auto;bottom:-10px;}
/*#business-page .menuBOX.fade h3:before,
#business-page .menuBOX.fade h3:after{content:'';display:block;width:100%;height:10px;background:#069ee5;position:absolute;top:-10px;/*animation:line 1s 1 ease-in-out forwards;transform: translateX(-100%);}
@keyframes line{100%{transform: translateX(0%);opacity:1;}}*/
#business-page .menuBOX .detail{width:100%;margin-bottom:50px;background:#a59759;padding:100px 0;}
#business-page .menuBOX .detail > *{width:1200px;margin:0 auto;color:#fff;}
#business-page .menuBOX .detail h4{margin-bottom:30px;text-align:center;font-size:35px;font-weight:normal;line-height: 1.6;}
#business-page .menuBOX h4:after{content:'';display:block;width:100%;height:3px;margin-top: 20px;;background:#fff;clip-path:inset(0 100% 0 0);}
#business-page .menuBOX.fade h4:after{animation:line 0.5s ease-in-out 0.7s forwards;}



#business-page .menuBOX .detail p{font-size:20px;white-space:pre-wrap;text-align:center;}
#business-page .menuBOX.processing .img{width:50%;height:auto;margin:0!important;aspect-ratio:;background:#ccc url() no-repeat center center / cover;}
#business-page .menuBOX .imgBOX{display:flex;flex-wrap:wrap;margin:30px auto;width:1200px;}
#business-page .menuBOX .imgBOX li{width:calc(100% / 2 - 40px);height:auto;aspect-ratio:4/2.5;margin:0 20px;background:#eee url() no-repeat center;}
@keyfram fadeUP{100%{opacity:1;transform:translateY(0);}}


 /*newsページ archive,single共通*/
main#news-page{padding-top:100px;}
main#news-page > div.wrap{display:flex;width:1200px;margin:0 auto 150px auto;}
main#news-page > div.wrap > #archive,
main#news-page > div.wrap > #singlePost{width:calc(100% - 200px - 60px);margin-left:60px;}
main#news-page > div.wrap > #sort > div,
main#news-page > div.wrap > #archive,
main#news-page > div.wrap > #singlePost{animation:fadeUP 1s ease-in-out 0.3s forwards;opacity:0;transform:translateY(60px);}
main#news-page h2{margin-bottom:80px;font-size:80px;font-weight:600;font-family:"Oswald", sans-serif;letter-spacing:normal;line-height:1;animation:slideIN 0.7s ease-out 1 forwards;transform:translateX(-150%);opacity: 0;}
main#news-page h2.tblet{display:none!important;}
main#news-page time{display:inline-block;font-size:16px;font-weight:normal;font-family:"Noto Sans JP",YuGothic, "Yu Gothic",meiryo,"ＭＳ Ｐゴシック",  "ヒラギノ角ゴ Pro W3", sans-serif;margin-right:10px;}
#news-page span.cate{display:inline-block;min-width:66px;height:21px;line-height:21px;text-align:center;background:#a59759;border-radius:4px;color:#fff;font-size:13px;}
#news-page span.cate a{color:#fff;}

#news-page #sort{position: relative;box-sizing: border-box;padding-left: 60px;}
#news-page #sort h3{width:100%;height:40px;line-height:40px;margin:50px auto 30px auto;padding-left:15px;box-sizing:border-box;background:#a59759;border-radius:6px;color:#fff;font-size:16px;}
#news-page #sort ul.sort li a{padding-left: 30px;position: relative;}
#news-page #sort ul.sort li a:before{content:'';display: block;width:19px;height:19px;border-radius:50%;border: 1px solid #666;position: absolute;top: 0;bottom: 0;left: 0;margin: auto 0;}
#news-page #sort ul.sort li.active a:after{content:'';display: block;width:13px;height:13px;;border-radius:50%;background: #a59759;position: absolute;top: 0;bottom: 0;left: 4px;margin: auto 0;}
#news-page #sort p.scroll{color: #a59759;bottom: auto;top:0;left:0;right: auto;}
#news-page #sort p.scroll:after{background: #a59759;}



 /*newsページ single*/
#news-page #singlePost{opacity:0;transform:translateY(60px);animation:fadeUP 1s ease-in-out forwards;}
#news-page #singlePost .titleBOX{width:100%;margin-bottom:80px;padding:30px 60px;box-sizing:border-box;background:#4d4d4d;border-radius:10px 10px 0px 0;}
#news-page #singlePost .titleBOX > *{color:#fff;}
#news-page #singleField{min-height:400px;padding:0 40px;} 
#news-page #singleField figure{width:fit-content;margin:0 auto 50px auto;}
#news-page #singleField figure img{width:500px;border:5px solid #fff;box-shadow:0 0 5px rgba(0,0,0,0.15);box-sizing:border-box;}
#news-page #singleField h4{margin:50px 0 30px 0;font-size:35px;font-weight:bold;color:#a59759;border-bottom:3px solid #a59759;line-height:1.6;}
#news-page #singleField h5{margin:30px 0 20px 0;font-size:25px;font-weight:bold;position:relative;padding-left:18px;line-height:1.6;}
#news-page #singleField h5:before{content:'';display:block;width:10px;height:100%;background:#a59759;position:absolute;left:0;}
#news-page #singleField h6{margin:20px 0 10px 0;font-size:20px;font-weight:bold;font-family:"Noto Sans JP",YuGothic, "Yu Gothic",meiryo,"ＭＳ Ｐゴシック",  "ヒラギノ角ゴ Pro W3", sans-serif;}
#news-page #singleField strong{color:#c00;}

 /*newsページ archive*/
#news-page #archive .list-archive > li{position:relative;transition:transform 0.3s ease;border-top:1px solid #666;padding:20px 10px;}
#news-page #archive .list-archive > li:hover{background:#fafafa;}
#news-page #archive .list-archive > li > a{display:flex;width:100%;align-items:center;}
/*#news-page #archive .list-archive > li:before{content:'';display:block;width:30px;height:30px;background:url(../layout/arrowBLK.svg) no-repeat center / 15px auto;}
#news-page #archive .list-archive > li:hover:before{background:#666 url(../layout/arrowWHT.svg) no-repeat center / 15px auto;rotate:180deg;}*/
#news-page #archive .list-archive > li span.arrow{display:block;width:30px;height:30px;border:1px solid #666;border-radius:50%;position:absolute;right:10px;top:0;bottom:0;margin:auto 0;}
#news-page #archive .list-archive > li span.arrow:before{content:'';display:block;width:30px;height:30px;background:url(../layout/arrowBLK.svg) no-repeat center / 15px auto;position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;}
#news-page #archive .list-archive > li:hover span.arrow{background:#666;}
#news-page #archive .list-archive > li:hover span.arrow:before{background:url(../layout/arrowWHT.svg) no-repeat center / 15px auto;rotate:180deg;animation:arrowRIGHT 0.5s ease-in-out forwards;}
@keyframes arrowRIGHT{50%{transform:translateX(-200%);}75%{transform:translateX(200%);opacity:0;}100%{transform:translateX(0);opacity:1;}}
#news-page #archive .list-archive > li > time{width:20%;}
#news-page #archive .list-archive > li:last-child{border-bottom:1px solid #333;}
#news-page #archive .list-archive em{width:700px;padding:0 40px 0 20px;box-sizing:border-box;font-size:20px;}
#news-page #archive span.cate{margin:0 10px;}







/* ページネーション(お知らせ記事ページに使用) */
.pagenation{height:90px;margin:80px auto 100px auto;padding:23px 0;line-height:1;vertical-align:middle;text-align:center;border-block: 2px solid #a59759;position:relative;}
.pagenation li.prev,
.pagenation li.next{width:30%;height:40px;padding-left:50px;line-height:40px;margin:auto 0;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:absolute;left:0;}
.pagenation li.next{padding-right:50px;left:auto;right:0;}
.pagenation li.next a:before{left:auto;right:0;rotate:180deg;}
.pagenation li.prev a:hover b,.pagenation li.next a:hover b{color:#0cf;}
.pagenation li.home{display:inline-block;width:fit-content;height:fit-content;position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;}
.pagenation li.home a{display:block;box-sizing:border-box;width:auto;height:auto;margin:0 auto;padding:10px 40px;background-color:#a59759;border-radius:50%;border:2px solid #a59759;font-size:15px;color:#fff;border-radius:6px;}
.pagenation li.home a:hover{background:#fff;color:#a59759;}
.pagenation li.home span{display:block;}
.pagenation b{font-family:"Noto Sans JP", YuGothic, "Yu Gothic", meiryo, "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";font-weight:400;color:#666;}
.pagenation li span.arrow{display:block;width:34px;height:34px;background:#a59759;border:2px solid #a59759;border-radius:6px;position:absolute;left:10px;top:0;bottom:0;margin:auto 0;overflow:hidden;}
.pagenation li span.arrow:before{content:'';display:block;width:30px;height:30px;background:url(../layout/arrowWHT.svg) no-repeat center / 15px auto;position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;}
.pagenation li:hover span.arrow{background:#fff;border-color:#a59759;}
.pagenation li:hover span.arrow:before{background:url(../layout/arrowGLD.svg) no-repeat center / 15px auto;animation:arrow 0.5s ease-in-out 0.3s forwards;rotate:180deg;}
@keyframes arrow{50%{transform:translateX(200%);}75%{transform:translateX(-200%);opacity:0;}100%{transform:translateX(0);opacity:1;}}
.pagenation li.next span.arrow{left:auto;right:0;}
.pagenation li.next span.arrow:before{rotate:-180deg;}
.pagenation li.next:hover span.arrow:before{animation:arrow 0.75s ease-in-out 0.3s forwards;rotate:360deg;}
.pagenation li em{position:relative;}
.pagenation li em:before{content:'';display:block;width:100%;height:1px;background:#a59759;position:absolute;bottom:-2px;left:0;right:0;margin:0 auto;clip-path:inset(0 0 0 100%);}
.pagenation li.next em:before{clip-path:inset(0 100% 0 0);}
.pagenation li:hover em:before{animation:line 0.25s 1 ease-in-out forwards;}
@keyframes line{100%{clip-path:inset(0 0 0 0);}}


/* ページャー(お知らせアーカイブに使用) */
.pager{position:relative;margin:100px auto 50px auto;width:auto;display:block;box-sizing:border-box;max-width:95%;}
.pager > *{font-family:Arial, Helvetica, sans-serif;font-size:15px;vertical-align:middle;display:inline-block;box-sizing:border-box;line-height:30px;height:30px;width:30px;vertical-align:middle;border:1px solid #999;}
.pager a.prev.page-numbers,.pager a.next.page-numbers{position:absolute;top:0;bottom:0;margin:auto 0;border:0;width:auto;padding:0 25px;border:0;color:#a59759;}
.pager a.prev,.pager a.next{padding-top:1px!important;color:#a59759!important;}
.pager a.prev:hover,.pager a.next:hover{text-decoration:underline;}
.pager a.prev{left:0;background:url(../layout/arrow-prev.svg) no-repeat left 2px center / 7px auto;}
.pager a.next{right:0;background:url(../layout/arrow-next.svg) no-repeat right 2px center / 7px auto;}
.pager a.prev:hover,.pager a.next:hover{color:#a59759!important;text-decoration:underline;border:0;}
.pager a.page-numbers{margin:0 2px;color:#999;}
.pager a.page-numbers:hover{border-color:#a59759;color:#a59759;}
.pager span.current:hover{border-color:#a59759;}
.pager span.current,.pager span.current:hover{background:#a59759;color:#fff;border-color:#a59759;cursor:default;}

/* サイトマップ */
section#titleIMG.sitemap  h2{background:#000;color: #fff;}
section#titleIMG.sitemap h2 em{background: #fff;color: #000;}

#sitemap-page #wrap{width:1200px;margin: 0 auto;padding:200px 0 50px 0;}
#sitemap-page #wrap nav{;display:flex;flex-wrap:wrap;justify-content: space-around;}
#sitemap-page nav ul{width:400px;}
#sitemap-page nav ul li{margin:0 0 20px 20px;}
#sitemap-page nav ul li a{display:block;position: relative;padding-left: 10px;}
#sitemap-page nav ul li a:before{content:'';display:block;width:5px;height: 5px;background: #aaa;position:absolute;left: 0;top: 0;bottom: 0;margin:auto 0;}
#sitemap-page nav ul li a:after{content:'';display:block;width: 20px;height: 20px;background:url(../layout/arrowBLK.svg) no-repeat right center / 20px auto;position: absolute;right:10px;top: 0;bottom: 0;margin:auto 0;}
#sitemap-page nav ul li:hover a:after{transform:translateX(10px);}
#sitemap-page nav ul li:after{content:'';display:block;width:100%;height:1px;background:#aaa;margin-top:5px;}
#sitemap-page nav ul li.parent{margin-left:0;font-size:20px;}
#sitemap-page nav ul li.parent a{padding-left:15px;}
#sitemap-page nav ul li.parent a::before{width: 8px;height: 8px;background:#999;}
#sitemap-page nav ul li.parent:not(:first-of-type){margin-top:60px;}
#sitemap-page nav ul li.parent:after{height:2px;background: #999;}
