@charset "utf-8";
/*
Theme Name:orimo
Theme URI:https://orimo-oricham.jp
Description:orimo
Author:株式会社リッシン
Author URI:https://rissin-corp.co.jp
Version:1.0
*/
/* =====================
   Color Variables
   ===================== */
:root {
  /* 単色使用OK */
  --color-light:  #EDD84A; /* ハイライトゴールド */
  --color-pale:   #fffbf1; /* クリーム（背景用） */
  --color-bg:     #0D0800; /* 漆黒 */
  --color-white:  #FFFFFF; /* 白 */

  /* グラデーションのみ使用 */
  --color-main:   #C8900A; /* メインゴールド */
  --color-dark:   #8B5E08; /* ダークゴールド */

  /* グラデーション定義 */
  --grad-gold:        linear-gradient(135deg, var(--color-dark) 0%, var(--color-main) 55%, var(--color-light) 100%);
  --grad-gold-v:      linear-gradient(180deg,  var(--color-dark) 0%, var(--color-main) 55%, var(--color-light) 100%);
  --grad-gold-shine:  linear-gradient(135deg, var(--color-dark) 0%, var(--color-light) 45%, var(--color-main) 100%);
  --grad-dark:        linear-gradient(135deg, var(--color-bg)   0%, var(--color-dark)  100%);
}

/* 非表示セクション（準備中） */
.OptionArea,.PortfolioArea,.VoiceArea,.LineupArea{display:none}

/*Element reset*/
html{font-feature-settings:"palt"; scroll-behavior:smooth}
body,div,h1,h2,h3,h4,h5,h6,p,ol,ul,li,dl,dt,dd,button,small,strong,table,input{margin:0; font-size:1em}
body,pre{font-family:-apple-system, BlinkMacSystemFont,'Helvetica Neue', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN',"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; -webkit-font-smoothing:antialiased; line-height:1.75; color:var(--color-bg)}
ul,ol{padding:0; list-style:none}
i,em,var,address{font-style:normal}
img{max-width:100%; height:auto}
a{display:block; color:inherit; text-decoration:none}
pre{white-space:pre-line; margin:0}
button{background:none; border:0; outline:0; appearance:none}
.lineclamp{line-height:1.5em; max-height:3em; background-color:inherit; position:relative; overflow:hidden; text-align:justify; display:block}
.lineclamp::before{content:"..."; position:absolute; right:0; top:1.5em; display:inline-block; width:1em; height:1.5em; background-color:inherit; line-height:1.5em; color:inherit}
.lineclamp::after{content:""; position:relative; float:right; width:1em; height:1.5em; background-color:inherit; margin-bottom:-1.5em}
body > *{font-family:"Hiragino Sans", "Helvetica Neue", "Helvetica", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif; letter-spacing:1rem}
body a{transition:all .3s}
body a:hover{opacity:.5}
body.Hbfixed{position:fixed}
.splide__list{margin: 0; padding: 0;}

@keyframes zoomUp {
  0% {
    -webkit-transform:scale(1);
    transform:scale(1);
  }
  100% {
    -webkit-transform:scale(1.15);
    transform:scale(1.15);
  }
}

@keyframes animeUp {
	0% {-webkit-top: 0; top: -6rem;}
	30%{-webkit-top: 0; top: -12rem;}
	45%{-webkit-top: 0; top: -6rem;}
	60%{-webkit-top: 0; top: -12rem;}
	100%,
	75%{-webkit-top: 0; top: -5rem;}
}

@media(max-width:789.9px){
	html.html{font-size:calc(100vw / 750); margin-top:0!important}
	html #wpadminbar{position:absolute; bottom:0; display:none}
	body{font-size:24rem}
	main{padding-top:110rem; font-size:30rem; margin-bottom:100rem}
	h1,h2,h3,h4,h5,div,p{font-weight:500}
	.PcOnly{display:none}
	body{font-size:16rem}
	h1,h2,h3,h4,h5,div,p{line-height:1; font-weight:500}
	.Header{display:flex; height:110rem; width:100%; justify-content:space-between; align-items:center; position:fixed; top:0; z-index:2; background:#fff; border-bottom:solid 1rem var(--color-light)}
	.HeaderInnear{display:flex; justify-content:center; align-items:center; width:100%; height:100%; margin:0 auto;  color:#000}
	.HeaderLogoWrap{display:flex; align-items:center; width:100%; height:110rem;width:100%; height:100%; z-index:3; background:#fff}
	.HeaderLogo{line-height:0; }
	.HeaderLogoAnc{margin-left:24rem}
	.HeaderLogoAnc img{width:230rem}
	.HeaderNav{display:none}
	.HeaderNav .HeaderLogo{position:absolute}
	#GlobalMenuInput{display:block; position:absolute; right:0; width:120rem; height:110rem; z-index:4; opacity:0}
	#GlobalMenu{position:fixed; right:0; width:120rem; height:110rem; z-index:3; text-align:center}
	.GlobalMenuRect{position:relative; width:60rem; height:3rem; border-radius: 30rem; top:30rem; left:calc(50% - 30rem); margin-bottom:14rem; background:var(--grad-gold); border-radius:10rem; transition:all .2s}
	.GlobalMenuWords{position:relative; top:35rem; color:var(--color-light); text-align:center; font-size:18rem; font-weight:bold; letter-spacing:2rem; transition:all .2s}
	#GlobalMenuInput:checked{top:0}
	#GlobalMenuInput:checked~#GlobalMenu{position:fixed}
	#GlobalMenuInput:checked~#GlobalMenu .Rect1{top:42rem; left:30rem; transform:translateY(0) rotate(145deg)}
	#GlobalMenuInput:checked~#GlobalMenu .Rect2{top:25rem; left:30rem; transform:translateY(0) rotate(-145deg)}
	#GlobalMenuInput:checked~.HeaderNavSp{visibility:visible; opacity:1; overflow-y:scroll}
	.HeaderNavSp{position:absolute; top:0; width:100%; height:100vh; opacity:0; visibility:hidden; background:var(--grad-gold); transition:.5s}
	.HeaderNavSpUl{position:relative; padding-top:150rem}
	.HeaderNavSpUl .HeaderNavLi{position:relative; display:flex; justify-content:flex-start; align-items:center; width:100%; height:140rem; padding:0 112rem; line-height:3.9; font-size:32rem; border-bottom:solid 1rem rgba(255,255,255,.4)}
	.HeaderNavSpUl .HeaderNavLi:nth-child(1):before{content:""; position:absolute; top:40rem; left:55rem; width:47rem; height:50rem; background:url(images/OfficeFooter.svg) no-repeat}
	.HeaderNavSpUl .HeaderNavLi:nth-child(2):before{content:""; position:absolute; top:44rem; left:49rem; width:48rem; height:47rem; background:url(images/ProgressFooter.svg) no-repeat}
	.HeaderNavSpUl .HeaderNavLi:nth-child(3):before{content:""; position:absolute; top:45rem; left:55rem; width:43rem; height:48rem; background:url(images/ColumnFooter.svg) no-repeat}
	.HeaderNavSpUl2{margin-top:40rem}
	.HeaderNavSpUl2 .HeaderNavLi{position:relative; display:flex; justify-content:flex-start; align-items:center; width:100%; height:85rem; padding:0 52rem; font-size:28rem}
	.HeaderNav:first-child{margin-bottom:25rem}
	.HeaderNavLiAnc{color:#fff; font-weight:500; height:75rem; line-height:75rem}
	.HeaderNavSp p{text-align:center; margin:40rem 0 60rem}
	.HeaderNavSp p img{width:300rem}
	.Container{width:650rem; margin:0 auto}
	.H2Span{position:relative; display:inline-block}
	.Btn1{width:220rem; height:42rem; line-height:44rem; margin:50rem auto; border-radius:50rem; box-shadow:none; font-family:inherit; font-size:16rem; font-weight:normal; color:#fff; text-align:center; letter-spacing:.5rem}
	
	/*トップページ*/
	.TopPage{margin-bottom:120rem}
	.MvArea .splide__arrow--prev, .MvArea .splide__arrow--next{ position:absolute; top:220rem; width:68rem; height:68rem; line-height:0; padding:0; z-index:1; border:solid 4rem var(--color-light); border-radius:35rem; background:#fff}
	.MvArea .splide__arrow--prev{left:calc(50% - 358rem)}
	.MvArea .splide__arrow--prev svg{transform:rotate(180deg)}
	.MvArea .splide__arrow--next{left:calc(50% + 292rem)}
	.MvArea .splide__arrow--prev svg,.MvArea .splide__arrow--next svg{width:24rem; height:24rem; fill:var(--color-light)}
	#Splide1{margin:50rem 0 80rem}
	.MvArea .splide__pagination{position:relative; top:30rem}
	.MvArea .splide__pagination button{background:#ccc; border-radius:30rem; padding:0; height:22rem; width:22rem; margin:0 10rem}
	.MvArea .splide__pagination button.is-active{background:var(--grad-gold)}
	
	.ContetArea{display:flex; justify-content:center}
	.AdSideArea{display: none}
	.MainContent{width:100%}
	.ArticleArea{width:92%; margin:0 auto}
	.SideBar{width:88%; margin:0 auto; padding-top:60rem}
	.TopPage .ArticleArea h2{padding:15rem 45rem; margin:42rem 0; font-size:32rem; font-weight:bold; color:#444; border-bottom:solid 3rem var(--color-light)}
	h2.ArticleAreaTtl.TtlColumn{position:relative; margin-top:0}
	.ArticleAreaTtl.TtlColumn::before{content:""; position:absolute; top:11rem; left:0; width:34rem; height:36rem; background:url(images/Column.svg) no-repeat}
	.ArticleList{display:flex; flex-wrap:wrap}
	.ArticleItem{width:48%; margin-bottom:50rem}
	.ArticleItem:nth-last-child(even){margin-right: 4%}
	.ArticleImg{width:100%; line-height:0}
	.ArticleDate{position:relative; margin:20rem 0 10rem; padding:0 10rem 0 32rem; color:#666; font-size:20rem}
	.ArticleDate::before{content:""; position:absolute; top:-4rem; left:0; width:24rem; height:24rem; background:url("images/Clock.svg") no-repeat}
	.SubPage .ArticleArea div.ArticleList .ArticleTtlWrap{margin-bottom:12rem; text-decoration: none}
	.ArticleTtlWrap:hover{opacity:1}
	.ArticleTtlWrap:hover h3{color:var(--color-light)}
	.ArticleTtl{margin:12rem 0 12rem; font-size:28rem; font-weight:bold; letter-spacing:.5rem; line-height:42rem; overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; color:#444;}
	.ArticleArea .ArticleItem ul.ArticleCatUl{display: flex; flex-wrap:wrap; padding:0; height:46rem}
	.ArticleArea ul.ArticleCatUl{padding:0; height:112rem; overflow:hidden}
	.ArticleCatLi{display:inline-block; padding:15rem 18rem 12rem; margin-right:16rem; margin-bottom: 16rem; border-radius:5rem; background:var(--grad-gold); color:#fff; font-size:22rem; line-height:15rem}
	.ArticleCatLi a{display:inline; font-weight:500; line-height: 15rem;}
	.ArticleArea ul.ArticleTagUl{ padding: 0 15rem; margin-top: 15rem; border-top: solid 1rem #ddd; background: #fafafa; border-bottom: solid 1rem #ddd;}
	.ArticleArea ul .ArticleTagLi{list-style: none; padding: 15rem 0 7rem; font-size: 20rem;}
	.ArticleArea ul .ArticleTagLi:last-child{padding: 7rem 0 12rem}
	
	h2.PopularAreaTtl{position:relative; padding:15rem 45rem; margin:42rem 0; font-size:35rem; font-weight:bold; color:var(--color-bg)}
	h2.PopularAreaTtl::before{content:""; position:absolute; top:11rem; left:0; width:38rem; height:40rem; background:url(images/Column.svg) no-repeat}
	.PopularList{width:100%; margin:0 auto}
	.PopularTtl{padding:0 10rem; margin:18rem 0 50rem; font-size:30rem; font-weight:bold; letter-spacing:1.25rem; line-height:42rem; overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; color:#444}
	
	/*サイドバー*/
	.SearchArea{margin-top: 35rem;}
	.SearchTtl{margin-bottom: 30rem; font-size: 35rem; font-weight: bold; color: var(--color-bg);}
	.SearchTxtArea input{width: 100%; height: 80rem; font-size: 26rem; padding: 6rem 15rem 2rem; border: none; outline: solid 1rem #999; background: #fafafa; border-radius: 8rem;}
	.SearchTxtArea input::placeholder{color: #777;}
	.SearchTxtArea button{position: absolute; right: 0; background:var(--grad-gold); width: 80rem; height: 100%; padding: 20rem 20rem 18rem}
	.SearchTxtArea button:hover{cursor: pointer; background: var(--color-bg);}
	.searchform{position: relative;}
	.TagArea{margin-top: 60rem;}
	.TagAreahTtl{margin-bottom: 30rem; font-size: 35rem; font-weight: bold; color: var(--color-bg);}
	.TagAreaUl{display:flex; flex-wrap:wrap}
	.TagArea li{display:flex; margin:0 24rem 24rem 0; border-radius:3rem; color:#fff; font-size:24rem}
	.TagArea li a{color: #fff; padding: 17rem 26rem 13rem; background:var(--grad-gold); border-radius: 5rem; text-decoration: none;}
	
	footer{font-family:"Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"}
	.FooterLogo{display:inline-block; width:270rem; margin-top:20rem}
	.FooterLogoimg{height:150rem; width:auto; aspect-ratio:auto 640 / 360}
	.FooterFlex{display:flex; flex-direction:column; justify-content:space-between; align-items:center; padding:70rem 0 75rem; align-items:center; font-weight:normal; background:var(--color-bg); color:#fff}
	.FooterFlex1{display:flex; flex-direction:column; justify-content:center; width:100%}
	.FooterFlex1 a{display:inline-block; color:#fff}
	.FooterNav1,.FooterNav2{width:100%}
	.FooterNavUl{display:flex; justify-content:flex-start; flex-direction:column; align-items:center; flex-wrap:wrap; width:100%}
	.FooterNavUl:last-child{justify-content:flex-start}
	.FooterNavLi{width:100%; position:relative; letter-spacing:.5rem; line-height:54rem; font-size:26rem; font-weight:normal}
	.FooterNav2{display:flex; flex-direction:row; padding:30rem 50rem; border-bottom:solid 1rem #444; margin-bottom:50rem}
	.FooterNav2 .FooterNavUl{flex-direction:row}
	.FooterNav2 .FooterNavLi{width:50%; line-height:80rem}
	.FooterNav1 .FooterNavLi{line-height:110rem; padding:5rem 50rem 0; font-size:32rem; font-weight:500; letter-spacing:1rem; border-bottom:solid 1rem #444}
	.FooterNavAnc{display:flex; align-items:center; gap:16rem}
	.FooterNavIcon{width:36rem; height:36rem; flex-shrink:0}
	.FooterNavLi:last-child{border-right:0}
	.FooterFlex2{display:flex; justify-content:center; width:48%}
	.CopyRight{text-align:center; color:#fff; font-size:20rem; margin-top:30rem}
	
	.SubPage h1.ArticleAreaTtl{position:relative; padding:15rem 58rem; margin-top:60rem; font-size:44rem; font-weight:bold; color:#444}
	.SubPage h1.ArticleAreaTtl::before{content:""; position:absolute; top:10rem; left:0; width:46rem; height:48rem; background:url(images/Column.svg) no-repeat}
	.SubPage h1.ArticleAreaTtl.TtlEstablishment{padding-left:45rem}
	.SubPage h1.ArticleAreaTtl.TtlEstablishment::before{content:""; position:absolute; top:7rem; left:0; width:38rem; height:50rem; background:url(images/Office.svg) no-repeat}
	.SubPage h1.ArticleAreaTtl.TtlProgress{padding-left:62rem}
	.SubPage h1.ArticleAreaTtl.TtlProgress::before{content:""; position:absolute; top:9rem; left:0; width:50rem; height:50rem; background:url(images/Progress.svg) no-repeat}
	.SubPage h1.ArticleAreaTtl.TtlSearch{padding: 0; line-height: 55rem;}
	.SubPage h1.ArticleAreaTtl.TtlSearch::before{content: none}
	.SubPage h1.ArticleAreaTtl.TtlTaxonomy{padding-left:0}
	.ArticlePage .ArticleItem:nth-last-child(odd){margin-right: 4%}
	.ArticlePage .ArticleItem:nth-last-child(even){margin-right: 0}
	
	.SinglePage .ContentArea{margin-top:35rem}
	.SinglePage h1.ArticleAreaTtl{padding:25rem 0 45rem; line-height:66rem; font-weight:bold; font-size:45rem; letter-spacing:2rem; text-align: justify;}
	.SinglePage .ArticleArea .ArticleCatUl{display:flex; flex-wrap:wrap; line-height:58rem; font-weight:bold; height:124rem; font-size:38rem; letter-spacing:1rem; text-align:justify; border-top:solid 3rem var(--color-light)}
	.SinglePage .ContentArea p.ArticleDate{width:100%; padding:0 10rem 0 30rem; margin:34rem 0 15rem; line-height:22rem; font-size:22rem} 
	.SinglePage .ContentArea p.ArticleDate::before{content:""; position:absolute; top:-2rem; left:0; width:24rem; height:23rem; background:url(images/Clock.svg) no-repeat}
	.SinglePage .Thumbnail{margin: 20rem 0 70rem}
	.SinglePage .ContentArea p{line-height:55rem}
	.SinglePage .ArticleArea h2{font-size:40rem; font-weight:bold; margin:80rem 0 25rem; letter-spacing:1.75rem; line-height:60rem; text-align:justify; background:var(--color-pale); padding:25rem 32rem 20rem}
	.SinglePage .ArticleArea h3{position:relative; font-size:40rem; font-weight:bold; margin:80rem 0 30rem; letter-spacing:1rem; line-height:60rem; text-align:justify; border-bottom:solid 4rem #eee; padding-bottom:25rem}
	.SinglePage .ArticleArea h3:after{content:""; position:absolute; left:0; bottom:-4rem; display:block; border-bottom:solid 4rem var(--color-light); width:20%}
	.SinglePage .ArticleArea h4{display:inline-block; background:var(--color-pale); padding:20rem 25rem 16rem; margin:45rem 0 20rem; font-weight:bold}
	.SinglePage .ArticleArea p,.SinglePage .ArticleArea ul{font-size:32rem; line-height:68rem}
	.ArticleArea ul{padding-left:35rem; list-style:disc; margin-top:5rem}
	.ArticleArea p a {display:inline-block; color:var(--color-light); text-decoration:underline}
	.SinglePage .ArticleArea p strong{background: linear-gradient(transparent 60%,#fcfea7 0%)}
	.PointArea{position:relative; border:solid 3rem var(--color-light); border-radius:8rem; padding:40rem 30rem 33rem; margin-bottom: 55rem;}
	.PointAreaTtl{position:absolute; top:-22rem; display:inline-block; padding:5rem 25rem; margin-left:10rem; background:#fff; font-size:32rem; font-weight:bold}
	.SinglePage p.PointCenter{font-weight:bold; line-height: 58rem; letter-spacing: 2rem; text-align:center}
	.SinglePage .ArticleArea p br{display: block; content: ""; margin: -12rem 0;}
	.PointMarkar{background:linear-gradient(transparent 60%,#fcfea7 0%)}
	.TxtMarkar{background:linear-gradient(transparent 50%,#fcfea7 0%); font-weight:bold}
	.SinglePage blockquote{margin: 45rem 0;}
	.SinglePage .ArticleArea blockquote p{font-size: 24rem; line-height: 52rem;}
	.SinglePage blockquote a{display: inline}
	.SinglePage .ArticleArea table{width:100%; margin-bottom: 85rem;}
	.SinglePage .ArticleArea table tr{display:flex; flex-direction:column}
	.SinglePage .ArticleArea table th,td{display:flex; align-items:center; min-height:85rem}
	.SinglePage .ArticleArea table th{width:100%; padding:0 25rem; background:#f9f9f9; border-top:1rem solid #ddd; border-left:1rem solid #ddd; border-right:1rem solid #ddd}
	.SinglePage .ArticleArea table td{width:100%; padding:25rem 30rem; line-height:48rem; text-align:initial;  border-top:1rem solid #ddd; border-left:1rem solid #ddd; border-right:1rem solid #ddd}
	.SinglePage .ArticleArea table tr:last-child td{border-bottom:1rem solid #ddd}
	.GoTop{display: none}
	
	.SingleEstablishment .MainContent{margin-bottom: 50rem;}
	.SinglePage .ArticleArea a.PostBtnContact{display: block; position: relative; width: 600rem; font-size: 30rem; font-weight: bold; color: #fff; cursor: pointer; margin: 20rem auto 0; height: 110rem; line-height: 115rem; text-align: center; border: none; background-size: 300% 100%; border-radius: 60rem; background-image: var(--grad-gold); box-shadow: 0 3rem 12rem 0 rgba(200, 144, 10, 0.4); text-decoration: none}
	
	#toc_container.toc_white{width:100%!important; padding:10rem 25rem 40rem; margin:30rem 0 60rem}
	div#toc_container p.toc_title{padding:8rem}
	.toc_toggle a{display:inline-block}
	#toc_container .toc_list{margin-top:0}
	.ArticleArea #toc_container p.toc_title+ul.toc_list{line-height:50rem; margin-top:0; border:0}
	ul.toc_list>li>a{font-size:20rem; font-weight:bold; margin-top:25rem}
	#toc_container a{color:var(--color-light); font-size:30rem}
	#toc_container ul ul{border:0;}
	#toc_container ul.toc_list li ul li a{font-size:26rem; line-height: 48rem;}
	
	.ShareArea{display: flex; flex-direction: column; align-items: center; margin-top: 120rem;}
	.ShareTxt{position: relative; text-align: center; font-weight: bold; color: #333; font-size: 32rem; margin-bottom: 38rem;}
	.ShareTxt::before{content: ""; position: absolute; top: -6rem; left: -50rem; width: 2rem; height: 48rem; background:var(--grad-gold); transform: rotate(-20deg); animation: animeUp 2.8s ease-in-out infinite;}
	.ShareTxt::after{content: ""; position: absolute; top: -6rem; right: -50rem; width: 2rem; height: 48rem; background:var(--grad-gold); transform: rotate(20deg); animation: animeUp 2.8s ease-in-out infinite;}
	.ShareFlex{display: flex; justify-content: center}
	.ShareFlex > div{width: 100rem; height: 100rem; border-radius: 50%; background-size: cover; margin: 0 28rem}
	.ShareFlex > div a{width: 100%; height: 100%;}
	.ShareFlex div.ShareFB{background:no-repeat url("images/FB.svg");}
	.ShareFlex div.ShareX{background: #000; background-image:url("images/X.svg"); background-position: center; background-size:52%; background-repeat: no-repeat}
	.ShareFlex div.ShareLinkdIn{background:no-repeat url("images/Linkedin.svg"); background-size: cover;}
	.ShareFlex div.ShareLine{background:no-repeat url("images/Line.svg");}
	
	/*下層ページ*/
	/*共通・ヘッダー設定*/
	.SubPage{position:relative; min-height:calc(100vh - 383rem); padding-bottom:10rem}
	.SubPage .MainContent{width:88%; margin:0 auto}
	.SubPageTtlArea{position:relative; width:100%; margin:0 auto; margin-bottom:90rem; color:#fff}
	.ArticlePage .SubPageTtlArea{width:100%; border-bottom:solid 3rem var(--color-light); padding-bottom:60rem; margin-bottom:60rem}
	.ArticlePage .ArticleArea{width:100%; min-height: 500rem}
	.SubPage h1.SubPageTtl{position:relative; padding:15rem 0; margin-top:70rem; font-size:45rem; line-height:60rem; font-weight:bold; color:var(--color-bg)}
	.SubPageTtl span{color:#fff; display:block; font-size:16rem; margin-top:10rem}
	.SubPageTtl span a{color:#fff}
	.SubContentsTtl{position:relative; font-size:36rem; font-weight:500; margin-bottom:80rem; padding-bottom:20rem; border-bottom:solid 1.5rem #eee}
	.SubPage + footer{margin-top:100rem}
	#breadcrumb{display:flex; align-items:center; background:#f3f3f3; height:70rem}
	.SubPage #breadcrumb{height:40rem; background:#fff}
	#breadcrumb ul{width:92%; margin:0 auto; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
	.SubPage #breadcrumb ul{width:100%}
	.SubPage .ArticleArea.TxtArea p{line-height: 50rem;}
	.SubPage .ArticleArea.TxtArea a{color: var(--color-light); text-decoration: underline; margin-top: 20rem;}
	.SubPage .ArticleArea .ArticleCatLi a{color: #fff; text-decoration: none; margin-top: 20rem;}
	#breadcrumb li{display:inline-block; position:relative; padding-right:45rem; color:#fff; letter-spacing:.5rem; font-size:24rem}
	#breadcrumb li:last-child{display:contents}
	#breadcrumb li::before{content:">"; display:block; position:absolute; right:10rem; color:#000}
	#breadcrumb li:last-child::before{display:none}
	#breadcrumb a{text-decoration:underline; color:#000}
	#breadcrumb span{color:#000}

	/*各ページ設定*/
	/* 会社情報 */
	.CompanyTable{width:100%}
	.CompanyTable tr{display:flex; flex-direction:column}
	.CompanyTable th,td{display:flex; align-items:center; min-height:80rem}
	.CompanyTable th{width:100%; padding:0 25rem; background:#f9f9f9; border-top:1rem solid #ddd; border-left:1rem solid #ddd; border-right:1rem solid #ddd}
	.CompanyTable td{width:100%; padding:25rem 30rem; line-height:48rem; text-align:initial;  border-top:1rem solid #ddd; border-left:1rem solid #ddd; border-right:1rem solid #ddd}
	.CompanyTable tr:last-child td{border-bottom:1rem solid #ddd}
	
	/* ポリシー */
	.PrivacyPage .SubPageTtlArea{position:relative; margin-bottom:100rem; height:320rem; color:#000; background:transparent; border-bottom:dotted 2rem #ddd}
	.PrivacyPage .SubPageTtlArea .Container{top:140rem}
	.SubPageTtleArea img{position:absolute; top:0; right:0; width:80rem}
	.PrivacyPage .SubPageTtl:before{background:#000}
	.PrivacyPage #breadcrumb li{color:#000}
	.PrivacyPage #breadcrumb span{color:#000}
	.PrivacyPolicy h2{font-size:35rem; font-weight:bold; line-height:50rem; margin:70rem 0 28rem; padding-bottom:28rem; border-bottom:solid 1rem #333}
	.PrivacyPolicy p{margin-bottom:37rem; line-height:52rem}
	.PrivacyPolicy ul{line-height:52rem; padding-left:38rem; margin:-18rem 0 28rem}
	.PrivacyPolicy ul li{list-style:disc}
	p.PrivacyDesc{margin-bottom:100rem}
	.Page404 h3{text-align:center; padding:30rem; background:#eee; font-size:24rem; line-height:1; border:none}
	.Page404 p{text-align:center}
	
	/* お問い合わせ */
	.FormArea{background:#f7f7f7; border-radius:10rem}
	.FormWrap{padding:75rem 40rem}
	.FormWrap .FormTtl{text-align:center; font-weight:bold; margin-bottom:50rem}
	.FormWrap dl{display:flex; flex-direction:column; margin-bottom:28rem; font-size:18rem}
	.FormWrap dt{flex:0 0 25%}
	.FormWrap dd{flex:0 0 75%}
	.FormWrap dd span{width:100%; font-size:24rem; line-height:50rem}
	.FormWrap dd input,textarea{width:100%; padding:15rem; background:#fff; border:solid 1px #ddd; border-radius:3rem; font-size:24rem; font-family:YuGothic}
	.FormWrap dd input[name="your-name"]{width:300rem}
	.FormWrap dd textarea{height:380rem; font-size:24rem; overflow-wrap:revert}
	.FormWrap input::placeholder,.FormWrap textarea::placeholder {color:#e0e0e0}
	.FormWrap dt p{position:relative; font-size:30rem; margin:15rem 0} 
	.Hissu{position:relative; top:-5rem; font-size:24rem; padding:5rem 10rem; border-radius:3rem; line-height:1; color:#ff0000}
	.wpcf7-radio{display:block; padding-top:16rem}
	.wpcf7-radio label{display:flex; margin-bottom:16rem}
	.wpcf7-radio span{margin:0}
	.wpcf7-radio span:last-child label{margin-bottom:12rem}
	.wpcf7-radio label:hover{cursor:pointer}
	.wpcf7-radio label input{width:auto}
	.wpcf7-radio label input[type="radio"]{width:34rem; height:44rem}
	.wpcf7-radio label span{margin-left:15rem; font-size:30rem; line-height:45rem}
	.ContactConfirm{margin:60rem 0 30rem; text-align:center; font-size:28rem; line-height:50rem}
	.ContactConfirm a{display:inline; color:var(--color-light); text-decoration:underline}
	.ContactBtn{height:90rem; width:480rem; margin:0 auto; font-size:28rem; color:#fff; background:var(--grad-gold); border:solid 1rem #ddd; border-radius:50rem; text-align:center; transition:all .2s}
	.ContactBtn:hover{background:#fff; border:solid 1.5rem var(--color-dark)}
	.ContactBtn p{height:90rem}
	.ContactBtn:hover input{color:var(--color-dark)}
	.ContactBtn input{width:100%; height:100%; border:none; background:none; color:#fff; line-height:2.6; cursor:pointer}
	.ContactConfirmPage h1,.ThanksPage h1,.Page404 h1{padding:100rem 0 15rem; margin-left:0; text-align:center}
	.ContactConfirmPage h1:before,.ThanksPage h1:before{display:none}
	.ContactDesc{padding:0 52rem 20rem}
	.ContactConfirmPage .FormRadio{margin-top:60rem}
	.ContactConfirmPage .ContactName{height:auto}
	.ContactConfirmPage .FormBtnArea{margin-top:60rem}
	.ContactConfirmPage .FormBtnArea p{padding:10rem 0 40rem}
	.ContactConfirmPage p.Submit.Previous input{background:#f0f0f0; color:#000}
	.ContactConfirmPage p.Submit.Next{padding-bottom:0}
	.ContactConfirmPage p.Submit.Next input{background:#f7931e; color:#fff}
	.ThanksPage .SubPageTtl{text-align:center}
	.ThanksPage .ContactDesc,.Page404Desc{text-align:center}
	.ThanksDesc{line-height:42rem}
	.ThanksBackTop{width:575rem; height:88rem; line-height:88rem; margin:0 auto; text-align:center; background:#f7931e; color:#fff}
	a.BtnBack{width:540rem; height:90rem; line-height:90rem; margin:80rem auto; border-radius:50rem; box-shadow:none; font-family:inherit; font-size:30rem; text-align:center; letter-spacing:.5rem; background:var(--grad-gold); color:#fff}
	
	/*お知らせ関連ページ設定*/
	.NewsFilter{display:flex; margin-top:40rem}
	.NewsFilter li{background:#f5f5f5; border-radius:5rem; margin-right:24rem; font-size:28rem; line-height:28rem}
	.NewsFilter li a{padding:15rem 24rem}
	.NewsFilter .Active{background:#000; padding:15rem 24rem; color:#fff; line-height:28rem}
	.NewsUl{margin-top:40rem}
	.NewsLi{border-top:solid 1rem #ddd}
	.NewsUl .NewsLi:last-child{border-bottom:solid 1rem #ddd}
	.NewsLiAnc{display:flex; flex-wrap:wrap; padding:35rem 30rem; font-size:24rem}
	.NewsDate{line-height:40rem}
	.NewsCatUl{display:flex; margin-left:30rem}
	.NewsCatLi {min-width:150rem; margin-right:20rem; text-align:center; height:100%; line-height:1.6; background:#f5f5f5}
	.NewsAreaLi:first-child{border-top:solid 1px #dedede; border-bottom:solid 1px #dedede}
	.NewsAreaLi + .NewsAreaLi{border-bottom:solid 1px #dedede}
	.NewsTtl{width:100%; font-size:30rem; padding-top:10rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
	
	.SinglePage .ArticleArea .PostCardWrap{display:block; text-decoration:none}
	.PostCard{display:flex; justify-content:center; width:100%; padding:22rem; margin:40rem 0 60rem; border:solid 2.5rem var(--color-light); background:var(--color-pale); border-radius:15rem}
	.PostCardImg{height:fit-content; width:45%; padding-right:12rem}
	.PostCardTxt{width:55%; padding-left:8rem}
	.SinglePage .ArticleArea .PostCardTxt{color:var(--color-bg)}
	.SinglePage .ArticleArea .PostCardTxt:hover{color:var(--color-light); text-decoration:underline}
	.SinglePage .ArticleArea p.PostCardTtl{letter-spacing:.5rem; overflow:hidden; display:-webkit-box; text-overflow:ellipsis; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:28rem; font-weight:bold; line-height:38rem; margin:16rem 0}
	.SinglePage .ArticleArea p.PostCardDesc{line-height:19rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:19rem}
	.SinglePage .ArticleArea p.ProfileTtl{font-size: 35rem; font-weight: bold; line-height: 1; margin-bottom: 30rem;}
	.SinglePage .ArticleContent ul{padding: 30rem 25rem 28rem 60rem; margin: 35rem 0 37rem; border: solid 3rem var(--color-light);}
	
	.ResultTtl{font-size: 32rem; margin-bottom: 38rem; font-weight: bold;}
	
	/*pagenation*/
	.nav-links{display:flex; justify-content:center; align-items:baseline; margin-bottom:80rem}
	.nav-links *{margin:0 8rem; font-size:17rem}
	.screen-reader-text{display:none}
	a.page-numbers{text-decoration:underline}
	.nav-links .next{font-size:13rem}	
}

@media(min-width:790px){
	/*共通*/
	html{font-size:.1vw; margin-top:0!important; position: relative;}
	html.html{scroll-padding-top:162rem}
	.SpOnly{display:none}
	body{font-size:16rem}
	h1,h2,h3,h4,h5,div,p{line-height:1; font-weight:500}
	blockquote{margin:30rem 0; font-size:14rem}
	.Header{position: relative; display:flex; height:80rem; width:100%; justify-content:space-between; align-items:center; box-shadow:0 0 10rem rgba(0,0,0,.1); z-index:2; background:#fff}
	.HeaderInnear{display:flex; justify-content:center; align-items:center; width:100%; height:100%; margin:0 auto;  color:#000}
	.HeaderLogo{width:165rem; line-height:0; margin:0 50rem}
	.HeaderLogoAnc{display:flex}
	.HeaderLogoimg{height:32rem; width:auto; aspect-ratio:auto 640 / 360}
	.HeaderNav{width:100%}
	.HeaderNavUl{display:flex; justify-content:end; margin-right:172rem}
	.HeaderNavLi{position:relative}
	.HeaderNavLi04{position:absolute; top:0; right:20rem; height:95rem; border-radius:0 0 10rem 10rem; width:140rem; background:var(--grad-gold); text-align:center}
	.HeaderNavLi04 .HeaderNavLiAnc{display:flex; flex-direction:column; justify-content:center; height:100%; font-weight:bold; color:#fff; font-size:20rem; padding-left:0; line-height:30rem; letter-spacing:2rem}
	.HeaderNavLi04 .HeaderNavLiAnc span{position:relative; display:block; font-size:11rem; font-weight:500; letter-spacing:1rem; line-height:23rem}
	.HeaderNavLi04 .HeaderNavLiAnc span::before{content:""; position:absolute; top:3rem; left:-8rem; height:15rem; width:1rem; background:#fff; transform:rotate(-15deg)}
	.HeaderNavLi04 .HeaderNavLiAnc span::after{content:""; position:absolute; top:3rem; right:-8rem; height:15rem; width:1rem; background:#fff; transform:rotate(15deg)}
	.HeaderNavLiAnc{display:flex; flex-direction:row; align-items:center; gap:10rem; font-size:14rem; font-weight:bold; color:var(--color-dark); margin:0 20rem; padding:0}
	.HeaderNavIcon{width:22rem; height:22rem; display:block; color:var(--color-dark); transition:color .3s}
	.HeaderNavLiAnc:hover .HeaderNavIcon{color:var(--color-light)}
	.HeaderNavSp{display:none}
	.HeaderNav:first-child{margin-bottom:25rem}
	#GlobalMenuInput{display:none}
	#GlobalMenu{display:none}
	.Container{width:760rem; margin:0 auto}
	.H2Span{position:relative; display:inline-block}
	.Btn1{width:220rem; height:42rem; line-height:44rem; margin:50rem auto; border-radius:50rem; box-shadow:none; font-family:inherit; font-size:16rem; font-weight:normal; color:#fff; text-align:center; letter-spacing:.5rem}
	
	/*トップページ*/
	.TopPage{}
	.MvArea{padding:40rem 30rem 32rem; background:#f5f5f5; overflow:hidden; max-height: 520rem; height: 50vh;}
	.MvArea .splide__slide{text-align:center}
	.MvArea .splide__slide img{height:auto; width:100%}
	.MvArea .splide__arrows{position:absolute; width:100%; z-index:1}
	.MvArea .splide__arrow--prev,.MvArea .splide__arrow--next{position:absolute; top:calc(8vw -  15rem); width:35rem; height:35rem; line-height:0; padding:0; border:solid 2.5rem var(--color-light); border-radius:30rem; background:#fff}
	.MvArea .splide__arrow--prev{left:calc(50% - 420rem); transform:rotate(180deg)}
	.MvArea .splide__arrow--next{left:calc(50% + 325rem)}
	.MvArea .splide__arrow--prev:hover,.MvArea .splide__arrow--next:hover{cursor:pointer; opacity:.5; transition:.3s}
	.MvArea .splide__arrow--prev svg,.MvArea .splide__arrow--next svg{width:15rem; height:15rem; fill:var(--color-light)}
	.MvArea .splide__pagination{position:relative; top:15rem}
	.MvArea .splide__pagination button{background:#ccc; border-radius:30rem; height:12rem; width:12rem; margin:0 8rem; cursor: pointer}
	.MvArea .splide__pagination button.is-active{background:var(--grad-gold)}
	
	/* メインカラム */
	.ContentArea{display:flex; justify-content:center; width:900rem; padding-bottom:100rem; margin:45rem auto 0}
	.AdSideArea{display: none}
	.MainContent{width:630rem; padding:0 0 10rem; margin-right:45rem; background:#fff}
	.SideBar{width:220rem}
	.TopPage .ArticleArea h2{padding:12rem 30rem; margin:42rem 0; font-size:20rem; font-weight:bold; color:var(--color-bg); border-bottom:solid 2rem var(--color-light)}
	h2.ArticleAreaTtl.TtlColumn{position:relative; margin-top:0}
	.ArticleAreaTtl.TtlColumn::before{content:""; position:absolute; top:10rem; left:0; width:20rem; height:22rem; background:url(images/Column.svg) no-repeat}
	.ArticleList{display:flex; flex-wrap:wrap}
	.ArticleItem{width:300rem; margin-right:30rem; margin-bottom:32rem}
	.ArticleList .ArticleItem:nth-child(2n){margin-right:0}
	.ArticleImg{width:100%; line-height:0}
	.ArticleImg img{height:auto; box-shadow: 2rem 5rem 8rem rgba(0,0,0,.05)}
	.ArticleImg:hover img{opacity: .6; box-shadow: 0}
	.ArticleDate{position:relative; margin-top:13rem; padding:0 10rem 0 15rem; color:var(--color-bg); font-size:11rem; line-height:12rem;}
	.ArticleDate::before{content:""; position:absolute; top:0; left:0; width:12rem; height:12rem; background:url("images/Clock.svg") no-repeat}
	.ArticleTtlWrap{margin:8rem 0 10rem}
	.ArticleTtlWrap:hover{opacity:1}
	.ArticleTtlWrap:hover h3{color:var(--color-light); text-decoration: underline;}
	.ArticleTtl{font-size:16rem; font-weight:bold; letter-spacing:1rem; line-height:22rem; overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; color:var(--color-bg)}
	.TopPage .ArticleArea .ArticleCatUl{padding-left:0}
	.ArticleCatUl{display:flex; flex-wrap:wrap; height:23rem; overflow:hidden}
	.ArticleCatLi{display:flex; margin:0 7rem 10rem 0; border-radius:3rem; color:#fff; font-size:12rem}
	.BtnMore{position: relative; width: 242rem; font-size: 16rem; font-weight: bold; color: #fff; cursor: pointer; margin: 20rem auto 0; height: 52rem; line-height: 52rem; text-align: center; border: none; background-size: 300% 100%; border-radius: 50rem; background-image: var(--grad-gold); box-shadow: 0 3rem 12rem 0 rgba(200, 144, 10, 0.4)}
	.BtnMore::after{content: ""; position: absolute; width: 10rem; height: 10rem; top:20.5rem; right:26rem; border: solid 2rem #fff; border-left: 0; border-top: 0; transform: rotate(-45deg)}
	
	/* サイドバー */
	#Splide2{height:300rem; margin-bottom: 60rem;}
	#Splide2 .splide__arrows{position:absolute; width:100%; z-index:1}
	#Splide2 .splide__arrow--prev,#Splide2 .splide__arrow--next{position:absolute; top:125rem; width:35rem; height:35rem}
	#Splide2 .splide__arrow--prev{left:calc(50% - 110rem); transform:rotate(180deg)}
	#Splide2 .splide__arrow--next{left:calc(50% + 75rem)}
	#Splide2 .splide__arrow--prev:hover,#Splide2 .splide__arrow--next:hover{cursor:pointer; opacity:.5; transition:.3s}
	#Splide2 .splide__arrow--prev svg,#Splide2 .splide__arrow--next svg{width:18rem; height:18rem}
	#Splide2 .splide__pagination{position:relative; top:12rem}
	#Splide2 .splide__pagination button{background:#ccc; border-radius:30rem; height:12rem; width:12rem; margin:0 5rem}
	#Splide2 .splide__pagination button.is-active{background:var(--grad-gold)}
	.SearchTtl{margin-bottom: 15rem; font-size: 14rem; font-weight: bold; color: var(--color-bg);}
	.SearchTxtArea input{width: 100%; height: 35rem; font-size: 12.5rem; padding: 2rem 8rem 0; border: none; outline: solid 1rem #999; background: #fafafa; border-radius: 3rem;}
	.SearchTxtArea input::placeholder{color: #777;}
	.SearchTxtArea button{position: absolute; right: 0; background:var(--grad-gold); width: 32rem; height: 100%; padding: 9rem 7.5rem 8rem;}
	.SearchTxtArea button:hover{cursor: pointer; background: var(--color-bg);}
	.searchform{position: relative;}
	.TagArea{margin-top: 28rem;}
	.TagAreahTtl{margin-bottom: 15rem; font-size: 14rem; font-weight: bold; color: var(--color-bg);}
	.TagAreaUl{display:flex; flex-wrap:wrap}
	.TagArea li{display:flex; margin:0 7rem 12rem 0; border-radius:3rem; color:#fff; font-size:12rem}
	.TagArea li a{color: #fff; padding: 5.5rem 8rem 5rem; background:var(--grad-gold); border-radius: 4rem; text-decoration: none;}
	.SideBarAd{margin-top: 15rem;}
	
	.PopularList{padding:10rem 0; background:#fff}
	.PopularAreaTtl{padding:10rem; margin:5rem 0 20rem ; font-size:14rem; font-weight:bold; color:var(--color-bg); border-bottom:solid 1.5rem var(--color-light)}
	.PopularItem{width:100%; margin-bottom:18rem}
	.PopularImg{width:100%; line-height:0}
	.PopularTtl{margin-top:8rem; font-size:12rem; font-weight:bold; letter-spacing:.75rem; line-height:17rem; overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; color:var(--color-bg)}
	
	footer{position: relative; background:var(--color-bg); color:#fff}
	footer::after{content:""; position: absolute; bottom: 0; left: 0; height: 6rem; width: 100%; background-image: var(--grad-gold);}
	.FooterFlex{padding:80rem 20rem}
	.FooterCatch{text-align:center; font-size:26rem; letter-spacing:2rem; margin-bottom:40rem}
	.FooterNav{display:flex}
	.FooterNav1{margin-bottom:20rem}
	.FooterNavUl{display:flex; justify-content:center; align-items:center}
	.FooterNavLi{text-align:center; margin:12rem 20rem; position:relative; font-size:17rem}
	.FooterNavLi:last-child{border-right:0}
	.FooterNav1 .FooterNavLi{padding-left:0}
	.FooterNavAnc{display:inline-flex; align-items:center; gap:10rem}
	.FooterNavIcon{width:20rem; height:20rem; flex-shrink:0}
	.FooterNav2 .FooterNavLi{width:auto; text-align:center; margin:12rem 15rem; position:relative; font-size:13rem}
	.FooterLogo{display:block; width:160rem; margin:50rem auto 20rem}
	.CopyRight{font-size:14rem; text-align:center}
	
	/*下層ページ*/
	#breadcrumb{background:#f3f3f3; padding:20rem}
	#breadcrumb ul{display:flex; width:90%; margin:0 auto}
	#breadcrumb li{position:relative; padding-right:30rem; letter-spacing:.5rem; font-size:13rem}
	#breadcrumb li::before{content:">"; display:block; position:absolute; right:10rem; color:#999}
	#breadcrumb li:last-child::before{display:none}
	#breadcrumb a{color:#000; text-decoration:underline; text-underline-offset:2.5rem}
	#breadcrumb .breadhome{position:relative}
	#breadcrumb .breadhome::before{content:""; position:absolute; left:-25rem; top:0; width:15rem; height:15rem; background:url("images/Home.svg") no-repeat}
	.SubPage{position:relative; padding-bottom:10rem; padding-top:80rem}
	.SubPageTtlArea{position:relative; display:flex; flex-direction:column; margin-bottom:30rem; color:#333; border-bottom: solid 2rem var(--color-light);}
	.SubPageTtlArea #breadcrumb{background:none; padding:25rem 0 40rem 0}
	.SubPageTtlArea #breadcrumb ul{margin-left:25rem}
	.SubPageTtl{margin-top:8rem; font-size:36rem; font-weight:bold}
	.TagPageTtl{font-size:30rem; margin:15rem 0 10rem}
	.TtlTag{background:var(--grad-gold); color:#fff; padding:12rem 18rem 10rem; margin-right:5rem; border-radius:10rem}
	.SubContentsTtl{position:relative; font-size:18rem; font-weight:500; margin-bottom:70rem; padding-bottom:30rem; border-bottom:solid 1.5rem #eee}
	.SubPageH2{padding-bottom:65rem; font-size:42rem; font-family:"Abel", sans-serif; letter-spacing:8rem; text-align:center}
	.SubPageTxt{text-align:center; margin-bottom:80rem; letter-spacing:2rem}
	
	/*記事一覧ページ設定*/
	.ArticlePage .SubPageTtlArea{ border-bottom:solid 2rem var(--color-light); margin-bottom:42rem}
	.SubPage h1.ArticleAreaTtl{position:relative; margin-top:8rem; padding-left:45rem; font-size:35rem; font-weight:bold}
	.SubPage h1.ArticleAreaTtl.TtlColumn{padding-left:42rem}
	.SubPage h1.ArticleAreaTtl.TtlColumn::before{content:""; position:absolute; top:0; left:0; width:33rem; height:34rem; background:url(images/Column.svg) no-repeat}
	.SubPage h1.ArticleAreaTtl.TtlEstablishment{padding-left:35rem}
	.SubPage h1.ArticleAreaTtl.TtlEstablishment::before{content:""; position:absolute; top:0; left:0; width:22rem; height:34rem; background:url(images/Office.svg) no-repeat}
	.SubPage h1.ArticleAreaTtl.TtlProgress::before{content:""; position:absolute; top:0; left:0; width:36rem; height:36rem; background:url(images/Progress.svg) no-repeat}
	.SubPage h1.ArticleAreaTtl.TtlSearch::before{content:""; position:absolute; top:0; left:0; width:30rem; height:36rem; background:url(images/SearchBlack.svg) no-repeat}
	.SubPage h1.ArticleAreaTtl.TtlTaxonomy{padding-left:0}
	
	/*投稿ページ設定*/
	.SinglePage .MainContent{margin-right:50rem}
	.SinglePage{padding-top:0}
	.SinglePage .BreadAera{height:80rem; display:flex; justify-content:flex-start; align-items:center; background:#f0f0f0}
	.SinglePage .BreadAera #breadcrumb{width:1045rem; margin:0 auto}
	.SinglePage .ContentArea{margin-top:50rem}
	.SinglePage h1.ArticleAreaTtl{margin-bottom:15rem; font-size:33rem; letter-spacing:1.5rem; line-height:47rem; font-weight:bold; color:var(--color-bg)}
	.SinglePage .ArticleCatUl{display:flex; align-items:center; height:50rem; margin-bottom:20rem; padding:18rem 0 0; border-top:solid 1.5rem var(--color-light)}
	.Thumbnail{margin-bottom:50rem}
	.Thumbnail img{width:100%; height:auto}
	.SinglePage .ArticleArea h2{font-size:26rem; font-weight:bold; margin:40rem 0 25rem; letter-spacing:1.75rem; line-height:40rem; text-align:justify; background:var(--color-pale); padding:18rem 15rem 15rem}
	.SinglePage .ArticleArea h3{position:relative; font-size:22rem; font-weight:bold; margin:35rem 0 20rem; letter-spacing:1rem; line-height:34rem; text-align:justify; padding:12rem 0; border-bottom:solid 2rem #eee}
	.SinglePage .ArticleArea h3:after{content:""; position:absolute; left:0; bottom:-2rem; display:block; border-bottom:solid 2rem var(--color-light); width:20%}
	.SinglePage .ArticleArea h4{display:inline-block; background:var(--color-pale); font-weight:bold; padding:10rem 12rem 8rem; margin:25rem 0 12rem}
	.SinglePage .ArticleArea p strong{background:linear-gradient(transparent 58%, #fcfea7 0%); background-position:100% 0}
	.SinglePage .ArticleArea p img{margin-bottom: 20rem}
	.SinglePage .ArticleCatUl p.ArticleDate{position:relative; padding-left:17rem; margin:0;font-size:13rem; text-align:justify; letter-spacing:1rem; line-height:28rem}
	.SinglePage .ArticleCatUl p::before{content:""; position:absolute; top:8rem; left:0; width:13rem; height:13rem; background:url("images/Clock.svg") no-repeat}
	.SinglePage .ArticleCatLi{margin:0 8rem 0 0}
	.SinglePage .ArticleArea p,.SinglePage .ArticleArea ul{line-height:35rem}
	.ArticleArea ul.ArticleCatUl{line-height:12rem; padding-left:0}
	.ArticleArea ul.ArticleCatUl a{color:#fff; padding:5.5rem 8rem 5rem; background:var(--grad-gold); border-radius:4rem; text-decoration:none}
	.ArticleArea ul.ArticleTagUl{ padding: 0 12rem; margin-top: 10rem; border-top: solid 1rem #ddd; background: #fafafa; border-bottom: solid 1rem #ddd;}
	.ArticleArea ul .ArticleTagLi{list-style: none; padding: 10rem 0 5rem; font-size: 13rem;}
	.ArticleArea ul .ArticleTagLi:last-child{padding: 5rem 0 8rem}
	.PointArea{position:relative; border:solid 3rem var(--color-light); border-radius:8rem; padding:28rem 20rem 26rem; margin-bottom: 40rem;}
	.PointAreaTtl{position:absolute; top:-16rem; display:inline-block; padding:5rem 15rem; margin-left:10rem; background:#fff; font-size:20rem; font-weight:bold}
	.SinglePage .ArticleArea p.PointCenter{font-weight:bold; text-align:center}
	.SinglePage .ArticleArea p br{display: block; content: ""; margin: -6rem 0;}
	.PointMarkar{padding:5rem 0; background:linear-gradient(transparent 70%,#fcfea7 0%); background-position:100% -4rem}
	.TxtMarkar{background:linear-gradient(transparent 50%,#fcfea7 0%); font-weight:bold}
	.ArticleArea ul{padding-left:22rem; list-style:disc}
	.SinglePage .ArticleArea a{display:inline-block; color:var(--color-light); text-decoration:underline}
	.SinglePage .SideBar{margin-top:2rem}
	.SinglePage .ArticleArea .PostCardWrap{display:block; text-decoration:none}
	.PostCard{display:flex; justify-content:center; width:100%; padding:13rem 18rem; margin:20rem 0 30rem; border:solid 2.5rem var(--color-light); background:var(--color-pale); border-radius:15rem}
	.PostCardImg{height:fit-content; width:27%; padding-right:12rem}
	.PostCardTxt{width:73%; padding:0 12rem}
	.SinglePage .ArticleArea .PostCardTxt{display:flex; flex-direction:column; justify-content:center; color:var(--color-bg)}
	.SinglePage .ArticleArea .PostCardTxt:hover{color:var(--color-light); text-decoration:underline}
	.SinglePage .ArticleArea p.PostCardTtl{font-size:18rem; font-weight:bold; line-height:24rem; margin:8rem 0 5rem}
	.SinglePage .ArticleArea p.PostCardDesc{overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13rem}
	.SinglePage .ArticleContent ul{padding:20rem 40rem 18rem; margin:15rem 0 17rem; border:solid 1.5rem var(--color-light);}
	.SinglePage .ArticleContent ol{padding:20rem 55rem 18rem; margin:15rem 0 17rem; border:solid 1.5rem var(--color-light);line-height: 35rem; list-style: auto}
	.SinglePage .ArticleArea ul li{font-weight:500!important}
	.SinglePage .ArticleArea blockquote p{line-height:26rem}
	.SinglePage .ArticleArea blockquote p a{display:inline}
	.SinglePage .ArticleArea blockquote.ImgQuote{margin: 0;}
	.SinglePage .ArticleArea blockquote.ImgQuote p{line-height:20rem; text-align: center;}
	.SinglePage .ArticleArea blockquote.ImgQuote p a{display:inline}
	.SinglePage .ArticleArea table{width:100%}
	.SinglePage .ArticleArea table tr{display:flex}
	.SinglePage .ArticleArea table th,td{display:flex; align-items:center; min-height:52rem}
	.SinglePage .ArticleArea table th{width:28%; padding:15rem 25rem; background:#f9f9f9; text-align: left; line-height: 28rem; border-top:1rem solid #ddd; border-left:1rem solid #ddd}
	.SinglePage .ArticleArea table td{width:72%; padding:15rem 30rem; line-height:32rem; text-align:initial;  border-top:1rem solid #ddd; border-left:1rem solid #ddd; border-right:1rem solid #ddd}
	.SinglePage .ArticleArea table tr:last-child th,.SinglePage .ArticleArea table tr:last-child td{border-bottom:1rem solid #ddd}
	.ProfileTtl{font-size: 22rem; font-weight: bold; margin-bottom: 8rem;}
	.SinglePage .ArticleArea a.PostBtnContact{display: block; position: relative; width: 280rem; font-size: 16rem; font-weight: bold; color: #fff; cursor: pointer; margin: 20rem auto 0; height: 55rem; line-height: 55rem; text-align: center; border: none; background-size: 300% 100%; border-radius: 50rem; background-image: var(--grad-gold); box-shadow: 0 3rem 12rem 0 rgba(200, 144, 10, 0.4); text-decoration: none}
	.AuthorAreaTtl{font-size: 20rem; font-weight: bold; letter-spacing:1.75rem; line-height:35rem; text-align: justify;  padding-left:15rem; margin:50rem 0 25rem; border-left:solid 5rem var(--color-light)}
	.AuthorArea{display:flex; justify-content:flex-start; align-items:center; border-radius:10rem; border:solid 1rem #ddd; background:#fbfbfb; padding:18rem 0}
	.AuthorTtl{display:block; width:25%; text-align:center; margin-bottom:10rem; border-right:solid 1rem #ddd}
	.AuthorIcon{width:100rem; height:100rem; border-radius:50%; margin-bottom:10rem}
	.AuthorProfile{width:75%; padding:0 40rem; line-height:28rem}
	.ShareArea{display: flex; flex-direction: column; align-items: center; margin-top: 100rem;}
	.ShareTxt{position: relative; text-align: center; font-weight: bold; color: #333; font-size: 20rem; margin-bottom: 30rem;}
	.ShareTxt::before{content: ""; position: absolute; top: -5rem; left: -25rem; width: 2rem; height: 25rem; background:var(--grad-gold); transform: rotate(-15deg); animation: animeUp 2.8s ease-in-out infinite;}
	.ShareTxt::after{content: ""; position: absolute; top: -5rem; right: -25rem; width: 2rem; height: 25rem; background:var(--grad-gold); transform: rotate(15deg); animation: animeUp 2.8s ease-in-out infinite;}
	.ShareFlex{display: flex; justify-content: center}
	.ShareFlex > div{width: 55rem; height: 55rem; border-radius: 50%; background-size: cover; margin: 0 16rem; transition: .3s}
	.ShareFlex > div a{position: relative; width: 100%; height: 100%;}
	.ShareFlex > div:has(a:hover){opacity: .65}
	.ShareFlex > div a:hover{width: 100%; height: 100%;}
	.ShareFlex div.ShareFB{background:no-repeat url("images/FB.svg");}
	.ShareFlex div.ShareX{background: #000; background-image:url("images/X.svg"); background-position: center; background-size:52%; background-repeat: no-repeat}
	.ShareFlex div.ShareLinkdIn{background:no-repeat url("images/Linkedin.svg"); background-size: cover;}
	.ShareFlex div.ShareLine{background:no-repeat url("images/Line.svg");}
	
	.NewsFilter{display:flex; margin-top:40rem}
	.NewsFilter li{background:#f5f5f5; border-radius:5rem; margin-right:10rem; font-size:14rem; line-height:14rem}
	.NewsFilter li a{padding:7rem 12rem}
	.NewsFilter .Active{background:#000; padding:7rem 12rem; color:#fff}
	.NewsUl{margin-top:25rem}
	.NewsLi{border-top:solid 1rem #ddd}
	.NewsUl .NewsLi{border-bottom:solid 1rem #ddd}
	.NewsLiAnc{display:flex; flex-wrap:wrap; align-items:center; padding:22rem 0}
	.NewsDate{color:#888; margin-right:15rem}
	.NewsCatUl{display:flex}
	.NewsCatLi{padding:4rem 8rem; background:#f5f5f5; font-size:13rem; margin-right:10rem}
	.NewsCatUl .NewsCatLi:last-child{margin-right:20rem}
	.NewsTtl{width:100%; padding-top:18rem}
	.ArchivePage h1{margin-bottom:50rem}
	
	#toc_container.toc_white{width:100%!important; padding:10rem 30rem; margin-top:35rem; border: 2rem solid var(--color-main)}
	.SinglePage .ArticleArea p+ul.toc_list{border:0}
	div#toc_container p.toc_title{padding:8rem; font-size:18rem}
	#toc_container .toc_list{margin-top:0; line-height:28rem}
	.ArticleArea #toc_container p.toc_title+ul.toc_list{margin-top:0}
	.ArticleArea #toc_container ul.toc_list ul {border:0}
	.ArticleArea #toc_container ul.toc_list ul li{line-height:28rem}
	.ArticleArea #toc_container ul.toc_list ul li ul li span{display:none}
	.ArticleArea #toc_container ul.toc_list ul li ul li a{position:relative; padding-left:15rem}
	.ArticleArea #toc_container ul.toc_list ul li ul li a:before{content:"・"; position:absolute; left:0}
	.ArticleArea #toc_container ul.toc_list>li:last-child{margin-bottom:20rem}
	ul.toc_list>li>a{font-size:19rem; font-weight:bold; margin-top:12rem}
	#toc_container a{color:var(--color-dark)}
	#toc_container a span{margin-right: 5rem;}
	#toc_container .toc_toggle a{color:var(--color-dark); text-decoration:underline}
	#toc_container a:hover{color:#333; opacity: 1}
	
	/*各ページ設定*/
	
	/* 会社情報 */
	.CompanyTable{width:100%}
	.CompanyTable tr{display:flex}
	.CompanyTable th,td{display:flex; align-items:center; min-height:52rem}
	.CompanyTable th{width:28%; padding:0 25rem; background:#f9f9f9; border-top:1rem solid #ddd; border-left:1rem solid #ddd}
	.CompanyTable td{width:72%; padding:10rem 30rem; line-height:32rem; text-align:initial;  border-top:1rem solid #ddd; border-left:1rem solid #ddd; border-right:1rem solid #ddd}
	.CompanyTable tr:last-child th,.CompanyTable tr:last-child td{border-bottom:1rem solid #ddd}
	
	/* お問い合わせ */
	.FormWrap{padding:50rem; border-radius:10rem; background:#fafafa; border:solid 1rem #ddd}
	.FormTtl{font-size:22rem; margin:10rem 0 50rem; text-align:center; font-weight:bold}
	.FormWrap form{padding:2rem 0; overflow:hidden}
	.FormWrap dl{display:flex; margin-bottom:25rem; font-size:17rem}
	.FormWrap dt{flex:0 0 35%; padding-top:15rem}
	.FormWrap dd{flex:0 0 65%}
	.FormWrap dd span{display:block; width:100%; font-size:16rem}
	.FormWrap dd input,textarea{width:100%; padding:8rem 10rem; background:#fff; border:solid 1px #ddd; border-radius:3rem; font-size:16rem; font-family:'Yu Gothic'; font-weight:500}
	.FormWrap dd input:focus,.FormWrap dd textarea:focus{outline:solid 1rem var(--color-light)}
	.FormWrap dd textarea{height:280rem; font-size:16rem; overflow-wrap:revert}
	.FormWrap input::placeholder,.FormWrap textarea::placeholder {color:#e0e0e0; font-family:Yu Gothic}
	.FormWrap dt p{position:relative; display:flex} 
	.Hissu{position:relative; top:-7rem; font-size:17rem; padding:4rem 7rem; border-radius:3rem; line-height:1; color:#ff0000}
	.wpcf7-radio{padding-top:16rem}
	.wpcf7-radio label{display:flex; margin-bottom:16rem}
	.wpcf7-radio span{margin:0}
	.wpcf7-radio span:last-child label{margin-bottom:12rem}
	.wpcf7-radio label:hover{cursor:pointer}
	.wpcf7-radio label input{width:auto}
	.wpcf7-radio label input[type="radio"]{background-color:#f7931e; width:18rem}
	.wpcf7-radio label span{margin-left:15rem}
	.ContactConfirm{margin:50rem 0 30rem; text-align:center; justify-content:center; font-size:17rem}
	.ContactConfirm a{display:inline; color:var(--color-light); text-decoration:underline}
	.ContactBtn{height:50rem; width:260rem; margin:0 auto 5rem; font-size:17rem; color:#fff; background:var(--grad-gold); border:solid 1rem #ddd; letter-spacing:1.5rem; border-radius:5rem; text-align:center; transition:all .2s; line-height:48rem}
	.ContactBtn:hover{background:#fff; border:solid 1rem var(--color-light); color:var(--color-light)}
	.ContactBtn p{height:50rem}
	.ContactBtn:hover input{color:var(--color-dark)}
	.ContactBtn input{width:100%; height:100%; border:none; background:none; color:#fff; line-height:2.6; cursor:pointer}
	.screen-reader-response{display:none}
	.wpcf7-not-valid-tip{height:25rem; margin-top:12rem; color:#ff0000}
	.wpcf7-acceptance label{display:flex; align-items:center; justify-content:center; font-size:17rem; letter-spacing:1rem}
	.wpcf7-acceptance input{width:24rem; height:24rem; margin-top:2rem; margin-right:12rem}
	.wpcf7-acceptance span{margin:0}
	.wpcf7-spinner{display:none}
	.ThanksDesc{margin-top:45rem; line-height:28rem}
	a.BtnBack{width:220rem; height:42rem; line-height:44rem; margin:50rem auto; border-radius:50rem; box-shadow:none; font-family:inherit; font-size:16rem; text-align:center; letter-spacing:.5rem; background:var(--grad-gold); color:#fff}
	.GoTop{position: fixed; bottom: 24rem; right: 24rem; width: 42rem; height: 42rem; border-radius: 30rem; background: #fff; border: solid 2.5rem var(--color-light);}
	.GoTop::before{content: ""; position: absolute; top:16rem; left: 12.5rem; width: 13rem; height: 13rem; border-top: 3rem solid var(--color-light); border-right: 3rem solid var(--color-light); border-radius: 2rem; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); z-index: 3;}
	
	/* ポリシー */
	.PrivacyPolicy h2{font-size:20rem; font-weight:bold; margin-bottom:18rem; padding-bottom:18rem; border-bottom:solid 1rem #333}
	.PrivacyPolicy h2:first-child{margin-top: 50rem;}
	.PrivacyPolicy p{font-size:15rem; line-height:26rem; margin-bottom:37rem}
	.PrivacyPolicy ul{font-size:15rem; line-height:26rem; padding-left:20rem; margin:-18rem 0 28rem}
	.PrivacyPolicy ul li{list-style:disc}
	p.PrivacyDesc{font-size:15rem; margin-bottom:100rem}
	
	.Page404 h3{text-align:center; padding:30rem; background:#eee; font-size:24rem; line-height:1; border:none}
	.Page404 p{text-align:center; font-size:18rem}
	
	/*お知らせ関連ページ設定*/
	.SinglePage #breadcrumb li{color:#000}
	.SinglePage #breadcrumb span{color:#000}
	.ArchivePage .SubPageTtlArea{position:relative; margin-bottom:120rem; height:320rem; color:#000; background:transparent; border-bottom:dotted 2rem #ddd}
	.ArchivePage .SubPageTtlArea .Container{top:140rem}
	.ArchivePage .SubPageTtl:before{background:#000}
	.ArchivePage #breadcrumb li{color:#000}
	.ArchivePage #breadcrumb span{color:#000}
	.Container.NewsFlex{width:970rem}
	.NewsFlex{display:flex; justify-content:space-between; min-height:400rem}
	.NewsFlexPost{width:76%; padding-right:calc(3% - 1rem); padding-left:20rem; border-right:solid 1rem #c9c9c9}
	.NewsFlexArchive{width:24%; padding:12rem 20rem 12rem 3%}
	.ArchiveItemUl{margin-bottom:30rem; padding:0 5rem}
	.NewsFlexPost .NewsAreaLi{padding:0 18rem}
	.NewsFlexPost .NewsAreaLiAnc{padding:20rem 0}
	.NewsAreaLi h2{font-size:16rem; margin:0; border:none; padding:0}
	.NewsAreaLi h2:before{border:0}
	.SubPage .NewsAreaUl{margin-bottom:35rem}
	.ArchiveAreaTtl{background:#f8f8f8; padding:3rem 5rem; margin-bottom:10rem}
	.ArchiveAreaTtl:nth-of-type(2n){margin-top:30rem}
	.ArchiveItem{margin-top:8rem}
	.ArchiveItem li{}
	/*pagenation*/
	.nav-links{display:flex; justify-content:center; align-items:baseline; margin-bottom:80rem}
	.nav-links *{margin:0 8rem; font-size:17rem}
	.screen-reader-text{display:none}
	a.page-numbers{text-decoration:underline}
	.nav-links .next{font-size:13rem}	
	
	.ResultTtl{font-size: 20rem; margin-bottom: 40rem; font-weight: bold;}
	
	.Page404 h1.SubPageTtl{text-align:center; font-size:45rem; margin:100rem 0 40rem}
	.Page404 h2{font-size:18rem; text-align:center; margin-bottom:70rem; padding-bottom:50rem; border-bottom:solid 1.5rem #eee}
	.Page404 a.BtnBack{width:220rem; height:42rem; line-height:44rem; margin:50rem auto; border-radius:50rem; box-shadow:none; font-family:inherit; font-size:16rem; text-align:center; letter-spacing:.5rem; background:var(--grad-gold); color:#fff}
}

@media(min-width:1000px){
	html{font-size:1px}
	.Container{width:940rem}
}

@media (min-width:1000px) and (max-width:1279.9px){
	.HeaderNavUl{margin-right:200rem}
	.HeaderNavLi04{right:15rem}
	.TopPage .ContentArea,.SubPage .ContentArea{width:940rem}
	.SinglePage .ContentArea{width:95%}
	.MainContent{width:calc(100% - 310rem)}
	.ArticleItem{width:300rem}
}

@media (min-width:1152px){
	.TopPage .ContentArea,.SubPage .ContentArea{width:1040rem}
	.SinglePage .ContentArea{width:1040rem}
	.MainContent{width:770rem; margin-right:50rem}
	.ArticleItem{width:238rem}
	.ArticleList .ArticleItem:nth-child(2n){margin-right:25rem}
	.ArticleList .ArticleItem:nth-child(3n){margin-right:0}
}

@media(min-width:1280px){
	.HeaderNavUl{margin-right:220rem}
	.HeaderNavLiAnc{margin:0 20rem}
	.HeaderNavLi04{width:160rem; right:5%}
	.ContentArea{width:1120rem}
	.MainContent{width:770rem; padding:0 0 10rem; margin-right:50rem}
	.SinglePage .MainContent{width: 730rem;}
	.ArticleItem{width:240rem; margin-right:25rem}
	.SinglePage .ContentArea{width: 1180rem;}
	.SinglePage .AdSideArea{display: block; width: 120rem; margin-right: 50rem;}
}

@media(min-width:1366px){
	header{padding:0 5%}
	#breadcrumb{padding:20rem 5%}
	.HeaderNavLi04{right:8%}
	.TopPage .ContentArea,.SubPage .ContentArea{width: 1210rem;}
	.AdSideArea{display: block; width: 120rem; margin-right: 50rem;}
}

@media(min-width:1520px){
	.MvArea .splide__arrow--prev,.MvArea .splide__arrow--next{top:calc(6vw - 10rem)}
}

@media(min-width:1920px){
	.MvArea{padding:40rem 100rem}
	.MvArea .splide__arrow--prev,.MvArea .splide__arrow--next{top:calc(5vw -  20rem)}
	header{padding:0 10%}
	#breadcrumb{padding:20rem 10%}
	.HeaderNavLi04{right:12%}
}

/* =====================
   TOP PAGE
   ===================== */

/* -- Common -- */
.MvArea{position:relative; overflow:hidden; padding:0 !important; background:none !important; max-height:none !important; height:auto !important}
.BtnMore{display:block}
.TopPage{margin-bottom:0}

@media(max-width:789.9px){
	/* MV */
	.MvImg{width:100%; height:100svh; display:block; object-fit:cover; object-position:center}
	.MvTxtWrap{position:absolute; bottom:80rem; left:40rem}
	.MvTxt{font-size:42rem; font-weight:bold; color:var(--color-white); line-height:1.5; text-shadow:0 2rem 12rem rgba(0,0,0,.7); margin-bottom:30rem}
	.MvBtn{display:block; width:260rem; height:70rem; line-height:70rem; text-align:center; border-radius:50rem; background:var(--grad-gold); color:var(--color-white); font-size:26rem; font-weight:bold}

	/* Reason */
	.ReasonArea{padding:80rem 30rem; background:var(--color-white)}
	.FeatureArea{padding:80rem 30rem; background:var(--color-white)}
	.ReasonAreaTtl{font-size:52rem; font-weight:bold; text-align:center; margin-bottom:60rem; color:var(--color-bg)}
	.ReasonUl{display:flex; flex-direction:column; gap:30rem}
	.ReasonLi{text-align:center; padding:50rem 30rem; border-radius:16rem; border:solid 1rem var(--color-light)}
	.ReasonIcon{width:90rem; height:90rem; margin:0 auto 20rem; display:block; color:var(--color-main)}
	.ReasonTtl{font-size:32rem; font-weight:bold; margin-bottom:16rem; color:var(--color-bg); line-height:1.7}
	.ReasonTxt{font-size:26rem; color:#666; line-height:1.8}

	/* Option */
	.OptionArea{padding:80rem 30rem; background:var(--color-pale)}
	.OptionAreaTtl{font-size:52rem; font-weight:bold; text-align:center; margin-bottom:60rem; color:var(--color-bg)}
	.OptionUl{display:flex; flex-direction:column; gap:24rem}
	.OptionLi{border-radius:12rem; overflow:hidden; position:relative}
	.OptionImg{width:100%; display:block}
	.OptionTtl{font-size:26rem; font-weight:bold; color:var(--color-white); text-align:center; padding:20rem; background:rgba(13,8,0,.6)}

	/* PriceCta */
	.PriceCtaArea{padding:80rem 30rem; background:var(--grad-gold)}
	.PriceCtaInner{text-align:center}
	.PriceCtaTxt{font-size:36rem; font-weight:bold; color:var(--color-white); margin-bottom:40rem}
	.PriceCtaBtnWrap{display:flex; flex-direction:column; align-items:center; gap:20rem}
	.PriceCtaBtn{display:block; width:340rem; height:80rem; line-height:80rem; text-align:center; border-radius:50rem; background:var(--color-white); color:var(--color-bg); font-size:28rem; font-weight:bold}

	/* Flow */
	.FlowArea{padding:80rem 30rem; background:var(--color-white)}
	.FlowAreaTtl{font-size:52rem; font-weight:bold; text-align:center; margin-bottom:60rem; color:var(--color-bg)}
	.FlowOl{display:flex; flex-direction:column; gap:20rem}
	.FlowLi{display:flex; align-items:flex-start; gap:24rem; padding:36rem 30rem; background:var(--color-white); border-radius:12rem}
	.FlowNum{font-size:52rem; font-weight:bold; background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; line-height:1; flex-shrink:0; width:80rem}
	.FlowIcon{width:48rem; height:48rem; color:var(--color-main); flex-shrink:0; margin-top:4rem}
	.FlowTtl{font-size:30rem; font-weight:bold; margin-bottom:12rem; color:var(--color-bg)}
	.FlowTxt{font-size:24rem; color:#666; line-height:1.7}

	/* Design */
	.DesignArea{padding:80rem 30rem; background:var(--color-white)}
	.DesignAreaTtl{font-size:52rem; font-weight:bold; text-align:center; margin-bottom:60rem; color:var(--color-bg)}
	.DesignList{display:grid; grid-template-columns:1fr 1fr; gap:12rem; margin-bottom:50rem}
	.DesignItem{display:block; border-radius:8rem; overflow:hidden}
	.DesignItem img{width:100%; display:block}

	/* Lineup */
	.LineupArea{padding:80rem 30rem; background:var(--color-white)}
	.LineupAreaTtl{font-size:52rem; font-weight:bold; text-align:center; margin-bottom:60rem; color:var(--color-bg)}
	.LineupUl{display:grid; grid-template-columns:1fr 1fr; gap:24rem; margin-bottom:50rem}
	.LineupAnc{display:block; text-align:center}
	.LineupImg{width:100%; border-radius:8rem; display:block; margin-bottom:14rem}
	.LineupName{font-size:26rem; font-weight:bold; color:var(--color-bg)}

	/* News */
	.NewsArea{padding:80rem 30rem; background:var(--color-pale)}
	.NewsAreaTtl{font-size:52rem; font-weight:bold; text-align:center; margin-bottom:60rem; color:var(--color-bg)}
	.NewsUl{margin-bottom:50rem}
	.NewsLi{border-bottom:solid 1rem #e8e0d0; padding:28rem 0}
	.NewsAnc{display:flex; flex-wrap:wrap; align-items:center; gap:8rem 16rem}
	.NewsDate{font-size:22rem; color:var(--color-main); flex-shrink:0}
	.NewsCat{font-size:20rem; padding:4rem 14rem; flex-shrink:0; white-space:nowrap}
	.NewsCat--information{background:#e8f0fb; color:#1a4a8a}
	.NewsCat--topics{background:#fbe8e8; color:#8a1a1a}
	.NewsTtl{font-size:28rem; color:var(--color-bg); line-height:1.5; width:100%}

	/* Column */
	.ColumnArea{padding:80rem 30rem; background:var(--color-pale)}
	.ColumnAreaTtl{font-size:52rem; font-weight:bold; text-align:center; margin-bottom:60rem; color:var(--color-bg)}
	.ColumnList{display:grid; grid-template-columns:1fr 1fr; gap:30rem; margin-bottom:50rem}
	.ColumnItem{display:flex; flex-direction:column}
	.ColumnImg{display:block; border-radius:8rem; overflow:hidden; margin-bottom:16rem}
	.ColumnImg img{width:100%; display:block}
	.ColumnDate{font-size:20rem; color:#999; margin-bottom:8rem}
	.ColumnTtlWrap{display:block}
	.ColumnTtl{font-size:26rem; font-weight:bold; color:var(--color-bg); line-height:1.5}

	/* Flavor */
	.FlavorArea{padding:80rem 30rem; background:var(--color-bg)}
	.FlavorAreaTtl{font-size:52rem; font-weight:bold; text-align:center; margin-bottom:16rem; color:var(--color-light)}
	.FlavorAreaSub{font-size:24rem; color:#aaa; text-align:center; margin-bottom:60rem}
	.FlavorUl{display:grid; grid-template-columns:repeat(2,1fr); gap:20rem}
	.FlavorLi{text-align:center; background:#1a1200; border-radius:12rem; padding:36rem 20rem; border:1px solid #333}
	.FlavorLi:last-child{grid-column:1 / -1; max-width:calc(50% - 10rem); margin:0 auto; width:100%}
	.FlavorName{font-size:30rem; font-weight:bold; color:var(--color-white); margin-bottom:10rem}
	.FlavorAlc{font-size:22rem; color:var(--color-light); margin-bottom:10rem}
	.FlavorTxt{font-size:22rem; color:#888}

	/* Base */
	.BaseArea{padding:80rem 30rem; background:#0a0600}
	.BaseAreaTtl{font-size:52rem; font-weight:bold; text-align:center; margin-bottom:16rem; color:var(--color-light)}
	.BaseAreaSub{font-size:24rem; color:#aaa; text-align:center; margin-bottom:60rem}
	.BaseUl{display:grid; grid-template-columns:repeat(2,1fr); gap:20rem}
	.BaseLi{text-align:center; background:#1a1200; border-radius:12rem; padding:30rem 20rem; border:1px solid #333}
	.BaseImg{width:100%; max-width:160rem; aspect-ratio:2/3; object-fit:cover; border-radius:8rem; margin:0 auto 16rem; display:block}
	.BaseImgSoon{width:100%; max-width:160rem; aspect-ratio:2/3; background:#1e1800; border:1px dashed #444; border-radius:8rem; margin:0 auto 16rem; display:flex; align-items:center; justify-content:center}
	.BaseImgSoon span{font-size:20rem; color:#555; letter-spacing:.05em}
	.BaseName{font-size:28rem; font-weight:bold; color:var(--color-white); margin-bottom:8rem}
	.BaseAlc{font-size:22rem; color:var(--color-light); margin-bottom:6rem}
	.BaseTxt{font-size:20rem; color:#888}

	/* LineCta */
	.LineCtaArea{padding:80rem 30rem; background:var(--color-bg); border-top:2px solid var(--color-main); position:relative; overflow:hidden}
	.LineCtaArea::before{content:''; position:absolute; top:0; left:0; right:0; height:3px; background:var(--grad-orimo-gold)}
	.LineCtaInner{text-align:center; position:relative; z-index:1}
	.LineCtaSubTxt{font-size:22rem; color:var(--color-light); letter-spacing:.1em; margin-bottom:16rem; opacity:.8}
	.LineCtaTxt{font-size:36rem; font-weight:bold; color:var(--color-white); margin-bottom:40rem; line-height:1.5}
	.LineCtaTxt span{color:var(--color-light)}
	.LineCtaBtn{display:flex; align-items:center; justify-content:center; gap:16rem; width:360rem; height:84rem; border-radius:50rem; background:#06C755; color:var(--color-white); font-size:28rem; font-weight:bold; margin:0 auto; box-shadow:0 4px 20px rgba(6,199,85,.4); transition:.3s}
	.LineCtaBtn:hover{opacity:.85; transform:translateY(-2px)}
	.LineCtaBtnIcon{width:44rem; height:44rem}
}

@media(min-width:790px){
	/* MV */
	.MvImg{width:100%; height:70vh; display:block; object-fit:cover; object-position:center}
	.MvTxtWrap{position:absolute; bottom:80rem; left:8%}
	.MvTxt{font-size:32rem; font-weight:bold; color:var(--color-white); line-height:1.5; text-shadow:0 2rem 16rem rgba(0,0,0,.7); margin-bottom:28rem}
	.MvBtn{display:inline-block; padding:0 48rem; height:58rem; line-height:58rem; text-align:center; border-radius:50rem; background:var(--grad-gold); color:var(--color-white); font-size:18rem; font-weight:bold}

	/* Reason */
	.ReasonArea{padding:120rem 0; background:var(--color-white)}
	.FeatureArea{padding:120rem 0; background:var(--color-white)}
	.ReasonInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.ReasonAreaTtl{font-size:36rem; font-weight:bold; text-align:center; margin-bottom:70rem; color:var(--color-bg)}
	.ReasonUl{display:flex; gap:40rem}
	.ReasonLi{flex:1; text-align:center; padding:50rem 30rem; border-radius:16rem; border:solid 1.5rem var(--color-light)}
	.ReasonIcon{width:70rem; height:70rem; margin:0 auto 24rem; display:block; color:var(--color-main)}
	.ReasonTtl{font-size:20rem; font-weight:bold; margin-bottom:16rem; color:var(--color-bg); line-height:1.7}
	.ReasonTxt{font-size:15rem; color:#666; line-height:1.9}

	/* Option */
	.OptionArea{padding:120rem 0; background:var(--color-pale)}
	.OptionInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.OptionAreaTtl{font-size:36rem; font-weight:bold; text-align:center; margin-bottom:70rem; color:var(--color-bg)}
	.OptionUl{display:flex; gap:30rem}
	.OptionLi{flex:1; border-radius:12rem; overflow:hidden; position:relative}
	.OptionImg{width:100%; display:block}
	.OptionTtl{font-size:16rem; font-weight:bold; color:var(--color-white); text-align:center; padding:18rem; background:rgba(13,8,0,.65)}

	/* PriceCta */
	.PriceCtaArea{padding:100rem 0; background:var(--grad-gold)}
	.PriceCtaInner{text-align:center}
	.PriceCtaTxt{font-size:28rem; font-weight:bold; color:var(--color-white); margin-bottom:40rem}
	.PriceCtaBtnWrap{display:flex; justify-content:center; gap:24rem}
	.PriceCtaBtn{display:inline-block; padding:0 60rem; height:64rem; line-height:64rem; text-align:center; border-radius:50rem; background:var(--color-white); color:var(--color-bg); font-size:20rem; font-weight:bold}

	/* Flow */
	.FlowArea{padding:120rem 0; background:var(--color-pale)}
	.FlowInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.FlowAreaTtl{font-size:36rem; font-weight:bold; text-align:center; margin-bottom:70rem; color:var(--color-bg)}
	.FlowOl{display:flex; gap:24rem}
	.FlowLi{flex:1; padding:50rem 30rem; background:var(--color-white); border-radius:16rem; text-align:center}
	.FlowNum{display:block; font-size:44rem; font-weight:bold; background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; margin-bottom:16rem}
	.FlowIcon{width:56rem; height:56rem; color:var(--color-main); display:block; margin:0 auto 20rem}
	.FlowTtl{font-size:18rem; font-weight:bold; margin-bottom:14rem; color:var(--color-bg)}
	.FlowTxt{font-size:14rem; color:#666; line-height:1.9; text-align:left}

	/* Design */
	.DesignArea{padding:120rem 0; background:var(--color-white)}
	.DesignInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.DesignAreaTtl{font-size:36rem; font-weight:bold; text-align:center; margin-bottom:70rem; color:var(--color-bg)}
	.DesignList{display:grid; grid-template-columns:repeat(3,1fr); gap:24rem; margin-bottom:60rem}
	.DesignItem{display:block; border-radius:10rem; overflow:hidden}
	.DesignItem img{width:100%; display:block}

	/* Lineup */
	.LineupArea{padding:120rem 0; background:var(--color-white)}
	.LineupInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.LineupAreaTtl{font-size:36rem; font-weight:bold; text-align:center; margin-bottom:70rem; color:var(--color-bg)}
	.LineupUl{display:grid; grid-template-columns:repeat(2,1fr); gap:40rem; margin-bottom:60rem}
	.LineupAnc{display:block; text-align:center}
	.LineupImg{width:100%; border-radius:12rem; display:block; margin-bottom:20rem}
	.LineupName{font-size:22rem; font-weight:bold; color:var(--color-bg); margin-bottom:12rem}
	.LineupTxt{font-size:14rem; color:#666; line-height:1.8; text-align:left}

	/* News */
	.NewsArea{padding:120rem 0; background:var(--color-pale)}
	.NewsInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.NewsAreaTtl{font-size:36rem; font-weight:bold; text-align:center; margin-bottom:70rem; color:var(--color-bg)}
	.NewsUl{margin-bottom:60rem}
	.NewsLi{border-bottom:solid 1rem #e8e0d0; padding:24rem 0}
	.NewsAnc{display:flex; align-items:baseline; gap:30rem}
	.NewsDate{font-size:13rem; color:var(--color-main); flex-shrink:0; width:110rem}
	.NewsCat{font-size:12rem; padding:3rem 12rem; flex-shrink:0; white-space:nowrap}
	.NewsCat--information{background:#e8f0fb; color:#1a4a8a}
	.NewsCat--topics{background:#fbe8e8; color:#8a1a1a}
	.NewsTtl{font-size:16rem; color:var(--color-bg); line-height:1.6; flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}

	/* Column */
	.ColumnArea{padding:120rem 0; background:var(--color-pale)}
	.ColumnInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.ColumnAreaTtl{font-size:36rem; font-weight:bold; text-align:center; margin-bottom:70rem; color:var(--color-bg)}
	.ColumnList{display:grid; grid-template-columns:repeat(3,1fr); gap:40rem; margin-bottom:60rem}
	.ColumnItem{display:flex; flex-direction:column}
	.ColumnImg{display:block; border-radius:8rem; overflow:hidden; margin-bottom:16rem}
	.ColumnImg img{width:100%; display:block}
	.ColumnDate{font-size:12rem; color:#999; margin-bottom:8rem}
	.ColumnTtlWrap{display:block}
	.ColumnTtl{font-size:15rem; font-weight:bold; color:var(--color-bg); line-height:1.6}

	/* Flavor */
	.FlavorArea{padding:120rem 0}
	.FlavorInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.FlavorAreaTtl{font-size:36rem; margin-bottom:12rem}
	.FlavorAreaSub{font-size:15rem; margin-bottom:60rem}
	.FlavorUl{display:grid; grid-template-columns:repeat(5,1fr); gap:20rem}
	.FlavorLi{text-align:center; background:#1a1200; border-radius:12rem; padding:36rem 20rem; border:1px solid #333}
	.FlavorLi:last-child{grid-column:auto; max-width:none; margin:0; width:auto}
	.FlavorName{font-size:17rem; font-weight:bold; color:var(--color-white); margin-bottom:8rem}
	.FlavorAlc{font-size:13rem; color:var(--color-light); margin-bottom:6rem}
	.FlavorTxt{font-size:13rem; color:#888}

	/* Base */
	.BaseArea{padding:120rem 0}
	.BaseInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.BaseAreaTtl{font-size:36rem; margin-bottom:12rem}
	.BaseAreaSub{font-size:15rem; margin-bottom:60rem}
	.BaseUl{display:grid; grid-template-columns:repeat(3,1fr); gap:24rem}
	.BaseLi{text-align:center; background:#1a1200; border-radius:12rem; padding:30rem 20rem; border:1px solid #333}
	.BaseImg{width:100%; max-width:140rem; aspect-ratio:2/3; object-fit:cover; border-radius:8rem; margin:0 auto 16rem; display:block}
	.BaseImgSoon{width:100%; max-width:140rem; aspect-ratio:2/3; background:#1e1800; border:1px dashed #444; border-radius:8rem; margin:0 auto 16rem; display:flex; align-items:center; justify-content:center}
	.BaseName{font-size:16rem; font-weight:bold; color:var(--color-white); margin-bottom:6rem}
	.BaseAlc{font-size:13rem; color:var(--color-light); margin-bottom:4rem}
	.BaseTxt{font-size:12rem; color:#888}
	.BaseImgSoon span{font-size:13rem; color:#555}

	/* LineCta */
	.LineCtaArea{padding:100rem 0; background:var(--color-bg); border-top:2px solid var(--color-main)}
	.LineCtaInner{text-align:center; position:relative; z-index:1}
	.LineCtaSubTxt{font-size:14rem; color:var(--color-light); letter-spacing:.15em; margin-bottom:12rem; opacity:.8}
	.LineCtaTxt{font-size:28rem; font-weight:bold; color:var(--color-white); margin-bottom:40rem; line-height:1.6}
	.LineCtaTxt span{color:var(--color-light)}
	.LineCtaBtn{display:inline-flex; align-items:center; justify-content:center; gap:16rem; padding:0 60rem; height:64rem; border-radius:50rem; background:#06C755; color:var(--color-white); font-size:18rem; font-weight:bold; box-shadow:0 4px 24px rgba(6,199,85,.35); transition:.3s}
	.LineCtaBtn:hover{opacity:.85; transform:translateY(-2px)}
	.LineCtaBtnIcon{width:28rem; height:28rem}

	/* Scene */
	.SceneArea{padding:120rem 0; background:var(--color-pale)}
	.SceneInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.SceneAreaTtl{font-size:36rem; font-weight:bold; text-align:center; margin-bottom:70rem; color:var(--color-bg)}
	.SceneUl{display:grid; grid-template-columns:repeat(3,1fr); gap:32rem}
	.SceneLi{border-radius:16rem; overflow:hidden; background:var(--color-white); box-shadow:0 4rem 24rem rgba(0,0,0,.08)}
	.SceneImg{width:100%; display:block; aspect-ratio:4/2.5; object-fit:cover}
	.SceneTxtWrap{padding:28rem}
	.SceneTtl{font-size:20rem; font-weight:bold; margin-bottom:12rem; color:var(--color-bg)}
	.SceneTxt{font-size:14rem; color:#666; line-height:1.8}

	/* Delivery */
	.DeliveryArea{padding:120rem 0; background:var(--color-white)}
	.DeliveryInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.DeliveryAreaTtl{font-size:36rem; font-weight:bold; text-align:center; margin-bottom:70rem; color:var(--color-bg)}
	.DeliveryUl{display:flex; gap:32rem}
	.DeliveryLi{flex:1; text-align:center; padding:50rem 30rem; border-radius:16rem; border:solid 1.5rem var(--color-pale)}
	.DeliveryIcon{font-size:40rem; display:block; margin-bottom:16rem}
	.DeliveryTtl{font-size:14rem; color:#999; margin-bottom:12rem; letter-spacing:2rem}
	.DeliveryNum{font-size:18rem; font-weight:bold; color:var(--color-bg); margin-bottom:16rem}
	.DeliveryNum span{background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-size:28rem}
	.DeliveryTxt{font-size:13rem; color:#666; line-height:1.8}

	/* Portfolio */
	.PortfolioArea{padding:120rem 0; background:var(--color-pale)}
	.PortfolioInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.PortfolioAreaTtl{font-size:36rem; font-weight:bold; text-align:center; margin-bottom:70rem; color:var(--color-bg)}
	.PortfolioList{display:grid; grid-template-columns:repeat(3,1fr); gap:20rem; margin-bottom:60rem}
	.PortfolioItem{border-radius:10rem; overflow:hidden; aspect-ratio:1; background:var(--color-white)}
	.PortfolioItem img{width:100%; height:100%; object-fit:cover; display:block}

	/* Voice */
	.VoiceArea{padding:120rem 0; background:var(--color-white)}
	.VoiceInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.VoiceAreaTtl{font-size:36rem; font-weight:bold; text-align:center; margin-bottom:70rem; color:var(--color-bg)}
	.VoiceUl{display:flex; gap:32rem}
	.VoiceLi{flex:1; padding:40rem; border-radius:16rem; background:var(--color-pale); position:relative}
	.VoiceLi::before{content:'"'; font-size:80rem; line-height:1; background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; position:absolute; top:10rem; left:24rem}
	.VoiceTxt{font-size:15rem; color:var(--color-bg); line-height:1.9; margin-bottom:20rem; padding-top:40rem}
	.VoiceName{font-size:12rem; color:#999; text-align:right}

	/* FAQ */
	.FaqArea{padding:120rem 0; background:var(--color-pale)}
	.FaqInner{max-width:800rem; margin:0 auto; padding:0 40rem}
	.FaqAreaTtl{font-size:36rem; font-weight:bold; text-align:center; margin-bottom:70rem; color:var(--color-bg)}
	.FaqList{margin-bottom:60rem}
	.FaqItem{border-bottom:solid 1rem #e8e0d0; padding:0}
	.FaqItem summary{list-style:none}
	.FaqItem summary::-webkit-details-marker{display:none}
	.FaqQ{font-size:16rem; font-weight:bold; color:var(--color-bg); padding:24rem 40rem 24rem 0; cursor:pointer; position:relative; display:block}
	.FaqQ::after{content:'＋'; position:absolute; right:0; top:50%; transform:translateY(-50%); background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-size:20rem; transition:transform .3s}
	.FaqItem[open] .FaqQ::after{content:'－'}
	.FaqA{font-size:14rem; color:#666; line-height:1.9; padding:0 0 24rem 0}
}

@media(max-width:789.9px){
	/* Scene SP */
	.SceneArea{padding:80rem 30rem; background:var(--color-pale)}
	.SceneAreaTtl{font-size:52rem; font-weight:bold; text-align:center; margin-bottom:60rem; color:var(--color-bg)}
	.SceneUl{display:flex; flex-direction:column; gap:30rem}
	.SceneLi{border-radius:16rem; overflow:hidden; background:var(--color-white); box-shadow:0 4rem 20rem rgba(0,0,0,.08)}
	.SceneImg{width:100%; display:block; aspect-ratio:16/9; object-fit:cover}
	.SceneTxtWrap{padding:30rem}
	.SceneTtl{font-size:30rem; font-weight:bold; margin-bottom:14rem; color:var(--color-bg)}
	.SceneTxt{font-size:24rem; color:#666; line-height:1.8}

	/* Delivery SP */
	.DeliveryArea{padding:80rem 30rem; background:var(--color-pale)}
	.DeliveryAreaTtl{font-size:52rem; font-weight:bold; text-align:center; margin-bottom:60rem; color:var(--color-bg)}
	.DeliveryUl{display:flex; flex-direction:column; gap:24rem}
	.DeliveryLi{text-align:center; padding:40rem 30rem; border-radius:16rem; border:solid 1.5rem var(--color-pale)}
	.DeliveryIcon{font-size:60rem; display:block; margin-bottom:20rem}
	.DeliveryTtl{font-size:22rem; color:#999; margin-bottom:14rem; letter-spacing:2rem}
	.DeliveryNum{font-size:28rem; font-weight:bold; color:var(--color-bg); margin-bottom:16rem}
	.DeliveryNum span{background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-size:48rem}
	.DeliveryTxt{font-size:24rem; color:#666; line-height:1.8}

	/* Portfolio SP */
	.PortfolioArea{padding:80rem 30rem; background:var(--color-pale)}
	.PortfolioAreaTtl{font-size:52rem; font-weight:bold; text-align:center; margin-bottom:60rem; color:var(--color-bg)}
	.PortfolioList{display:grid; grid-template-columns:1fr 1fr; gap:16rem; margin-bottom:50rem}
	.PortfolioItem{border-radius:8rem; overflow:hidden; aspect-ratio:1; background:var(--color-white)}
	.PortfolioItem img{width:100%; height:100%; object-fit:cover; display:block}

	/* Voice SP */
	.VoiceArea{padding:80rem 30rem; background:var(--color-white)}
	.VoiceAreaTtl{font-size:52rem; font-weight:bold; text-align:center; margin-bottom:60rem; color:var(--color-bg)}
	.VoiceUl{display:flex; flex-direction:column; gap:24rem}
	.VoiceLi{padding:40rem; border-radius:16rem; background:var(--color-pale); position:relative}
	.VoiceLi::before{content:'"'; font-size:100rem; line-height:1; background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; position:absolute; top:10rem; left:24rem}
	.VoiceTxt{font-size:26rem; color:var(--color-bg); line-height:1.9; margin-bottom:20rem; padding-top:50rem}
	.VoiceName{font-size:22rem; color:#999; text-align:right}

	/* FAQ SP */
	.FaqArea{padding:80rem 30rem; background:var(--color-pale)}
	.FaqAreaTtl{font-size:52rem; font-weight:bold; text-align:center; margin-bottom:60rem; color:var(--color-bg)}
	.FaqList{margin-bottom:50rem}
	.FaqItem{border-bottom:solid 1rem #e8e0d0}
	.FaqItem summary{list-style:none}
	.FaqItem summary::-webkit-details-marker{display:none}
	.FaqQ{font-size:28rem; font-weight:bold; color:var(--color-bg); padding:30rem 60rem 30rem 0; cursor:pointer; position:relative; display:block}
	.FaqQ::after{content:'＋'; position:absolute; right:0; top:50%; transform:translateY(-50%); background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-size:36rem}
	.FaqItem[open] .FaqQ::after{content:'－'}
	.FaqA{font-size:26rem; color:#666; line-height:1.9; padding:0 0 30rem 0}
}

/* =============================================
   LineupPage
   ============================================= */
@media(max-width:789.9px){
	.LineupPageHero{padding:100rem 30rem 80rem; background:var(--color-bg); text-align:center}
	.LineupPageTtl{font-size:56rem; font-weight:bold; color:var(--color-white); margin-bottom:20rem}
	.LineupPageLead{font-size:26rem; color:rgba(255,255,255,.7)}
	.LineupTypeSection{padding:80rem 30rem; background:var(--color-white)}
	.LineupTypeUl{display:flex; flex-direction:column; gap:60rem}
	.LineupTypeLi{}
	.LineupTypeAnc{display:block; border-radius:16rem; overflow:hidden; border:solid 1.5rem var(--color-pale)}
	.LineupTypeImgWrap{aspect-ratio:16/9; overflow:hidden}
	.LineupTypeImg{width:100%; height:100%; object-fit:cover; display:block}
	.LineupTypeTxtWrap{padding:40rem 30rem}
	.LineupTypeLabel{display:inline-block; padding:6rem 20rem; background:var(--grad-gold); color:var(--color-white); font-size:20rem; font-weight:bold; border-radius:50rem; margin-bottom:16rem}
	.LineupTypeTtl{font-size:44rem; font-weight:bold; color:var(--color-bg); margin-bottom:20rem}
	.LineupTypeTxt{font-size:26rem; color:#666; line-height:1.8; margin-bottom:24rem}
	.LineupTypeTagUl{display:flex; flex-wrap:wrap; gap:12rem; margin-bottom:30rem}
	.LineupTypeTagLi{padding:8rem 20rem; background:var(--color-pale); border-radius:50rem; font-size:22rem; color:var(--color-bg)}
	.LineupTypeBtn{display:inline-block; padding:20rem 50rem; background:var(--grad-gold); color:var(--color-white); font-size:26rem; font-weight:bold; border-radius:50rem}
	.LineupFlavorSection{padding:80rem 30rem; background:var(--color-pale)}
	.LineupFlavorTtl{font-size:44rem; font-weight:bold; color:var(--color-bg); text-align:center; margin-bottom:20rem}
	.LineupFlavorLead{font-size:24rem; color:#666; text-align:center; margin-bottom:50rem; line-height:1.8}
	.LineupFlavorUl{display:grid; grid-template-columns:1fr 1fr; gap:20rem; margin-bottom:30rem}
	.LineupFlavorLi{background:var(--color-white); border-radius:12rem; padding:30rem 20rem; text-align:center}
	.LineupFlavorIcon{font-size:50rem; display:block; margin-bottom:12rem}
	.LineupFlavorName{font-size:28rem; font-weight:bold; color:var(--color-bg); margin-bottom:8rem}
	.LineupFlavorAlc{font-size:22rem; color:#999}
	.LineupFlavorNote{font-size:22rem; color:#999; line-height:1.8}
	.LineupOptionSection{padding:80rem 30rem; background:var(--color-white)}
	.LineupOptionTtl{font-size:44rem; font-weight:bold; color:var(--color-bg); text-align:center; margin-bottom:20rem}
	.LineupOptionLead{font-size:24rem; color:#666; text-align:center; margin-bottom:50rem; line-height:1.8}
	.LineupOptionUl{display:grid; grid-template-columns:1fr 1fr; gap:20rem; margin-bottom:50rem}
	.LineupOptionLi{background:var(--color-pale); border-radius:12rem; padding:40rem 20rem; text-align:center}
	.LineupOptionIcon{width:50rem; height:50rem; color:var(--color-main); display:block; margin:0 auto 16rem}
	.LineupOptionName{font-size:24rem; font-weight:bold; color:var(--color-bg)}
	.LineupCtaSection{padding:80rem 30rem; background:var(--grad-gold); text-align:center}
	.LineupCtaTxt{font-size:34rem; font-weight:bold; color:var(--color-white); margin-bottom:40rem}
	.LineupCtaBtn{display:inline-block; padding:24rem 60rem; background:var(--color-white); color:var(--color-main); font-size:28rem; font-weight:bold; border-radius:50rem}
}
@media(min-width:790px){
	.LineupPageHero{padding:100rem 0 80rem; background:var(--color-bg); text-align:center}
	.LineupPageTtl{font-size:48rem; font-weight:bold; color:var(--color-white); margin-bottom:16rem}
	.LineupPageLead{font-size:16rem; color:rgba(255,255,255,.7)}
	.LineupTypeSection{padding:120rem 0; background:var(--color-white)}
	.LineupTypeInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.LineupTypeUl{display:flex; flex-direction:column; gap:60rem}
	.LineupTypeAnc{display:flex; align-items:stretch; border-radius:20rem; overflow:hidden; border:solid 1.5rem var(--color-pale)}
	.LineupTypeImgWrap{width:45%; flex-shrink:0; overflow:hidden}
	.LineupTypeImg{width:100%; height:100%; object-fit:cover; display:block}
	.LineupTypeTxtWrap{padding:50rem 48rem; display:flex; flex-direction:column; justify-content:center}
	.LineupTypeLabel{display:inline-block; padding:6rem 20rem; background:var(--grad-gold); color:var(--color-white); font-size:12rem; font-weight:bold; border-radius:50rem; margin-bottom:14rem; width:fit-content}
	.LineupTypeTtl{font-size:32rem; font-weight:bold; color:var(--color-bg); margin-bottom:18rem}
	.LineupTypeTxt{font-size:14rem; color:#666; line-height:1.9; margin-bottom:24rem}
	.LineupTypeTagUl{display:flex; flex-wrap:wrap; gap:10rem; margin-bottom:28rem}
	.LineupTypeTagLi{padding:6rem 18rem; background:var(--color-pale); border-radius:50rem; font-size:13rem; color:var(--color-bg)}
	.LineupTypeBtn{display:inline-block; padding:14rem 40rem; background:var(--grad-gold); color:var(--color-white); font-size:15rem; font-weight:bold; border-radius:50rem; width:fit-content}
	.LineupFlavorSection{padding:120rem 0; background:var(--color-pale)}
	.LineupFlavorInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.LineupFlavorTtl{font-size:32rem; font-weight:bold; color:var(--color-bg); text-align:center; margin-bottom:16rem}
	.LineupFlavorLead{font-size:14rem; color:#666; text-align:center; margin-bottom:60rem; line-height:1.9}
	.LineupFlavorUl{display:grid; grid-template-columns:repeat(4,1fr); gap:20rem; margin-bottom:24rem}
	.LineupFlavorLi{background:var(--color-white); border-radius:12rem; padding:40rem 20rem; text-align:center}
	.LineupFlavorIcon{font-size:40rem; display:block; margin-bottom:12rem}
	.LineupFlavorName{font-size:18rem; font-weight:bold; color:var(--color-bg); margin-bottom:8rem}
	.LineupFlavorAlc{font-size:13rem; color:#999}
	.LineupFlavorNote{font-size:13rem; color:#999; line-height:1.8; text-align:center}
	.LineupOptionSection{padding:120rem 0; background:var(--color-white)}
	.LineupOptionInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.LineupOptionTtl{font-size:32rem; font-weight:bold; color:var(--color-bg); text-align:center; margin-bottom:16rem}
	.LineupOptionLead{font-size:14rem; color:#666; text-align:center; margin-bottom:60rem; line-height:1.9}
	.LineupOptionUl{display:grid; grid-template-columns:repeat(4,1fr); gap:20rem; margin-bottom:60rem}
	.LineupOptionLi{background:var(--color-pale); border-radius:12rem; padding:40rem 20rem; text-align:center}
	.LineupOptionIcon{width:36rem; height:36rem; color:var(--color-main); display:block; margin:0 auto 14rem}
	.LineupOptionName{font-size:14rem; font-weight:bold; color:var(--color-bg)}
	.LineupCtaSection{padding:100rem 0; background:var(--grad-gold); text-align:center}
	.LineupCtaTxt{font-size:24rem; font-weight:bold; color:var(--color-white); margin-bottom:40rem}
	.LineupCtaBtn{display:inline-block; padding:18rem 60rem; background:var(--color-white); color:var(--color-main); font-size:18rem; font-weight:bold; border-radius:50rem}
}

/* =============================================
   PricePage
   ============================================= */
@media(max-width:789.9px){
	.PricePageHero{padding:100rem 30rem 80rem; background:var(--color-bg); text-align:center}
	.PricePageTtl{font-size:56rem; font-weight:bold; color:var(--color-white); margin-bottom:20rem}
	.PricePageLead{font-size:26rem; color:rgba(255,255,255,.7)}
	.PriceSectionTtl{font-size:44rem; font-weight:bold; color:var(--color-bg); text-align:center; margin-bottom:50rem}
	.PriceMainSection{padding:80rem 30rem; background:var(--color-white)}
	.PriceTypeWrap{display:flex; flex-direction:column; gap:50rem; margin-bottom:30rem}
	.PriceCard{border:solid 2rem var(--color-pale); border-radius:16rem; overflow:hidden}
	.PriceCardPremium{border-color:var(--color-main)}
	.PriceCardHead{padding:40rem 30rem; background:var(--color-pale); text-align:center}
	.PriceCardPremium .PriceCardHead{background:var(--grad-gold)}
	.PriceCardLabel{display:inline-block; padding:6rem 20rem; background:var(--color-bg); color:var(--color-white); font-size:20rem; border-radius:50rem; margin-bottom:16rem}
	.PriceCardPremium .PriceCardLabel{background:var(--color-white); color:var(--color-main)}
	.PriceCardTtl{font-size:40rem; font-weight:bold; color:var(--color-bg); margin-bottom:16rem}
	.PriceCardPremium .PriceCardTtl{color:var(--color-white)}
	.PriceCardFrom{font-size:28rem; color:var(--color-main)}
	.PriceCardPremium .PriceCardFrom{color:var(--color-white)}
	.PriceCardFrom span{font-size:52rem; font-weight:bold}
	.PriceTable{width:100%; border-collapse:collapse}
	.PriceTable th,.PriceTable td{padding:20rem 24rem; border-bottom:solid 1rem #f0ebe0; font-size:26rem}
	.PriceTable th{background:var(--color-pale); font-weight:bold; color:var(--color-bg)}
	.PriceTable td{text-align:center; color:var(--color-bg)}
	.PriceCardBtn{display:block; margin:30rem; padding:24rem; text-align:center; background:var(--grad-gold); color:var(--color-white); font-size:26rem; font-weight:bold; border-radius:50rem}
	.PriceNote{font-size:22rem; color:#999; line-height:1.8}
	.PriceOptionSection{padding:80rem 30rem; background:var(--color-pale)}
	.PriceOptionTable{width:100%; border-collapse:collapse; margin-bottom:20rem}
	.PriceOptionTable th,.PriceOptionTable td{padding:20rem 16rem; border-bottom:solid 1rem #e8e0d0; font-size:24rem; vertical-align:middle}
	.PriceOptionTable th{background:var(--color-bg); color:var(--color-white); font-weight:bold; text-align:center}
	.PriceFlavorSection{padding:80rem 30rem; background:var(--color-white)}
	.PriceFlavorLead{font-size:24rem; color:#666; line-height:1.8; text-align:center; margin-bottom:40rem}
	.PriceFlavorUl{display:flex; flex-wrap:wrap; justify-content:center; gap:20rem}
	.PriceFlavorLi{font-size:28rem; font-weight:bold; color:var(--color-bg); display:flex; align-items:center; gap:10rem}
	.PriceDeliverySection{padding:80rem 30rem; background:var(--color-pale)}
	.PriceCtaSection{padding:80rem 30rem; background:var(--grad-gold); text-align:center}
	.PriceCtaSectionTxt{font-size:34rem; font-weight:bold; color:var(--color-white); margin-bottom:40rem}
	.PriceCtaBtnWrap{display:flex; flex-direction:column; gap:20rem; align-items:center}
	.PriceCtaSectionBtn{display:inline-block; padding:24rem 60rem; background:var(--color-white); color:var(--color-main); font-size:28rem; font-weight:bold; border-radius:50rem}
	.PriceCtaSectionBtnLine{display:inline-block; padding:24rem 60rem; background:#00b900; color:var(--color-white); font-size:28rem; font-weight:bold; border-radius:50rem}
}
@media(min-width:790px){
	.PricePageHero{padding:100rem 0 80rem; background:var(--color-bg); text-align:center}
	.PricePageTtl{font-size:48rem; font-weight:bold; color:var(--color-white); margin-bottom:16rem}
	.PricePageLead{font-size:16rem; color:rgba(255,255,255,.7)}
	.PriceSectionTtl{font-size:32rem; font-weight:bold; color:var(--color-bg); text-align:center; margin-bottom:60rem}
	.PriceMainSection{padding:120rem 0; background:var(--color-white)}
	.PriceMainInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.PriceTypeWrap{display:flex; gap:40rem; margin-bottom:40rem; align-items:flex-start}
	.PriceCard{flex:1; border:solid 2rem var(--color-pale); border-radius:20rem; overflow:hidden}
	.PriceCardPremium{border-color:var(--color-main)}
	.PriceCardHead{padding:40rem 30rem; background:var(--color-pale); text-align:center}
	.PriceCardPremium .PriceCardHead{background:var(--grad-gold)}
	.PriceCardLabel{display:inline-block; padding:5rem 18rem; background:var(--color-bg); color:var(--color-white); font-size:12rem; border-radius:50rem; margin-bottom:12rem}
	.PriceCardPremium .PriceCardLabel{background:var(--color-white); color:var(--color-main)}
	.PriceCardTtl{font-size:28rem; font-weight:bold; color:var(--color-bg); margin-bottom:12rem}
	.PriceCardPremium .PriceCardTtl{color:var(--color-white)}
	.PriceCardFrom{font-size:16rem; color:var(--color-main)}
	.PriceCardPremium .PriceCardFrom{color:var(--color-white)}
	.PriceCardFrom span{font-size:40rem; font-weight:bold}
	.PriceTable{width:100%; border-collapse:collapse}
	.PriceTable th,.PriceTable td{padding:14rem 20rem; border-bottom:solid 1rem #f0ebe0; font-size:14rem}
	.PriceTable th{background:var(--color-pale); font-weight:bold; color:var(--color-bg)}
	.PriceTable td{text-align:center; color:var(--color-bg)}
	.PriceCardBtn{display:block; margin:24rem; padding:16rem; text-align:center; background:var(--grad-gold); color:var(--color-white); font-size:16rem; font-weight:bold; border-radius:50rem}
	.PriceNote{font-size:12rem; color:#999; line-height:1.8; text-align:center}
	.PriceOptionSection{padding:120rem 0; background:var(--color-pale)}
	.PriceOptionInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.PriceOptionTable{width:100%; border-collapse:collapse; margin-bottom:24rem}
	.PriceOptionTable th,.PriceOptionTable td{padding:16rem 24rem; border-bottom:solid 1rem #e8e0d0; font-size:14rem; vertical-align:middle}
	.PriceOptionTable th{background:var(--color-bg); color:var(--color-white); font-weight:bold; text-align:center}
	.PriceFlavorSection{padding:120rem 0; background:var(--color-white)}
	.PriceFlavorInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.PriceFlavorLead{font-size:14rem; color:#666; line-height:1.9; text-align:center; margin-bottom:40rem}
	.PriceFlavorUl{display:flex; justify-content:center; gap:32rem}
	.PriceFlavorLi{font-size:18rem; font-weight:bold; color:var(--color-bg); display:flex; align-items:center; gap:8rem}
	.PriceDeliverySection{padding:120rem 0; background:var(--color-pale)}
	.PriceDeliveryInner{max-width:800rem; margin:0 auto; padding:0 40rem}
	.PriceCtaSection{padding:100rem 0; background:var(--grad-gold); text-align:center}
	.PriceCtaSectionInner{display:flex; flex-direction:column; align-items:center}
	.PriceCtaSectionTxt{font-size:24rem; font-weight:bold; color:var(--color-white); margin-bottom:40rem}
	.PriceCtaBtnWrap{display:flex; gap:24rem}
	.PriceCtaSectionBtn{display:inline-block; padding:18rem 50rem; background:var(--color-white); color:var(--color-main); font-size:18rem; font-weight:bold; border-radius:50rem}
	.PriceCtaSectionBtnLine{display:inline-block; padding:18rem 50rem; background:#00b900; color:var(--color-white); font-size:18rem; font-weight:bold; border-radius:50rem}
}

/* PricePage 新レイアウト追加 */
@media(max-width:789.9px){
	.PriceLeadTxt{font-size:26rem; color:#666; line-height:1.8; margin-bottom:60rem; text-align:center}
	.PriceSection{margin-bottom:80rem}
	.PriceSectionTtl{font-size:36rem; font-weight:bold; color:var(--color-bg); margin-bottom:12rem; border-left:solid 6rem var(--color-light); padding-left:20rem; text-align:left}
	.PriceSectionSub{font-size:24rem; color:#666; line-height:1.8; margin-bottom:30rem}
	.PriceTableWrap{overflow-x:auto; -webkit-overflow-scrolling:touch; margin:0 -30rem; padding:0 30rem 10rem}
	.PriceTable{width:100%; min-width:700rem; border-collapse:collapse}
	.PriceTable th,.PriceTable td{padding:18rem 16rem; border-bottom:solid 1rem #f0ebe0; font-size:22rem; white-space:nowrap}
	.PriceTable thead th{background:var(--color-bg); color:var(--color-white); font-weight:bold; text-align:center}
	.PriceThBottle{text-align:left !important; min-width:180rem}
	.PriceTdBottle{text-align:left; background:var(--color-pale)}
	.PriceBottleName{display:block; font-weight:bold; font-size:24rem; color:var(--color-bg)}
	.PriceBottleAlc{display:block; font-size:20rem; color:#888; margin-top:4rem}
	.PriceTdNum{text-align:center; font-weight:bold; color:var(--color-bg)}
	.PriceNoteUl{list-style:none; display:flex; flex-direction:column; gap:16rem}
	.PriceNoteUl li{font-size:26rem; color:#555; line-height:1.7; padding-left:28rem; position:relative}
	.PriceNoteUl li::before{content:"・"; position:absolute; left:0; color:var(--color-light)}
}
@media(min-width:790px){
	.PriceLeadTxt{font-size:15rem; color:#666; line-height:1.9; margin-bottom:60rem; text-align:center}
	.PriceSection{margin-bottom:80rem}
	.PriceSectionTtl{font-size:22rem; font-weight:bold; color:var(--color-bg); margin-bottom:10rem; border-left:solid 4rem var(--color-light); padding-left:16rem; text-align:left}
	.PriceSectionSub{font-size:13rem; color:#666; line-height:1.9; margin-bottom:24rem}
	.PriceTableWrap{overflow-x:auto; margin-bottom:8rem}
	.PriceTable{width:100%; border-collapse:collapse}
	.PriceTable th,.PriceTable td{padding:14rem 18rem; border-bottom:solid 1rem #f0ebe0; font-size:13rem}
	.PriceTable thead th{background:var(--color-bg); color:var(--color-white); font-weight:bold; text-align:center}
	.PriceThBottle{text-align:left !important; min-width:200rem}
	.PriceTdBottle{text-align:left; background:var(--color-pale)}
	.PriceBottleName{display:block; font-weight:bold; font-size:14rem; color:var(--color-bg)}
	.PriceBottleAlc{display:block; font-size:11rem; color:#888; margin-top:3rem}
	.PriceTdNum{text-align:center; font-weight:bold; color:var(--color-bg)}
	.PriceNoteUl{list-style:none; display:flex; flex-direction:column; gap:10rem}
	.PriceNoteUl li{font-size:13rem; color:#555; line-height:1.8; padding-left:20rem; position:relative}
	.PriceNoteUl li::before{content:"・"; position:absolute; left:0; color:var(--color-light)}
}

/* LegalTable（特定商取引法テーブル）*/
@media(max-width:789.9px){
	.LegalTable tr{display:flex; flex-direction:column}
	.LegalTable th{width:100%}
	.LegalTable td{width:100%}
}

/* =============================================
   FaqPage
   ============================================= */
@media(max-width:789.9px){
	.FaqPageHero{padding:100rem 30rem 80rem; background:var(--color-bg); text-align:center}
	.FaqPageTtl{font-size:56rem; font-weight:bold; color:var(--color-white); margin-bottom:20rem}
	.FaqPageLead{font-size:26rem; color:rgba(255,255,255,.7)}
	.FaqPageSection{padding:80rem 30rem; background:var(--color-white)}
	.FaqPageInner{display:flex; flex-direction:column; gap:60rem}
	.FaqPageCatTtl{font-size:36rem; font-weight:bold; color:var(--color-bg); padding-bottom:20rem; border-bottom:solid 3rem var(--color-light); margin-bottom:30rem}
	.FaqPageList{display:flex; flex-direction:column; gap:0}
	.FaqPageItem{border-bottom:solid 1rem #e8e0d0}
	.FaqPageItem summary{list-style:none}
	.FaqPageItem summary::-webkit-details-marker{display:none}
	.FaqPageQ{font-size:28rem; font-weight:bold; color:var(--color-bg); padding:30rem 60rem 30rem 0; cursor:pointer; position:relative; display:block; line-height:1.6}
	.FaqPageQ::before{content:'Q'; position:absolute; left:-40rem; top:30rem; background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-size:30rem; font-weight:bold}
	.FaqPageQ::after{content:'＋'; position:absolute; right:0; top:50%; transform:translateY(-50%); background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-size:36rem}
	.FaqPageItem[open] .FaqPageQ::after{content:'－'}
	.FaqPageA{font-size:26rem; color:#666; line-height:1.9; padding:0 0 30rem 0}
	.FaqPageCta{padding:80rem 30rem; background:var(--grad-gold); text-align:center}
	.FaqPageCtaTxt{font-size:34rem; font-weight:bold; color:var(--color-white); margin-bottom:40rem}
	.FaqPageCtaBtn{display:inline-block; padding:24rem 60rem; background:var(--color-white); color:var(--color-main); font-size:28rem; font-weight:bold; border-radius:50rem}
}
@media(min-width:790px){
	.FaqPageHero{padding:100rem 0 80rem; background:var(--color-bg); text-align:center}
	.FaqPageTtl{font-size:48rem; font-weight:bold; color:var(--color-white); margin-bottom:16rem}
	.FaqPageLead{font-size:16rem; color:rgba(255,255,255,.7)}
	.FaqPageSection{padding:120rem 0; background:var(--color-white)}
	.FaqPageInner{max-width:860rem; margin:0 auto; padding:0 40rem; display:flex; flex-direction:column; gap:80rem}
	.FaqPageCatTtl{font-size:22rem; font-weight:bold; color:var(--color-bg); padding-bottom:16rem; border-bottom:solid 3rem var(--color-light); margin-bottom:24rem}
	.FaqPageList{}
	.FaqPageItem{border-bottom:solid 1rem #e8e0d0}
	.FaqPageItem summary{list-style:none}
	.FaqPageItem summary::-webkit-details-marker{display:none}
	.FaqPageQ{font-size:16rem; font-weight:bold; color:var(--color-bg); padding:24rem 40rem 24rem 32rem; cursor:pointer; position:relative; display:block; line-height:1.7}
	.FaqPageQ::before{content:'Q'; position:absolute; left:0; top:24rem; background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-size:18rem; font-weight:bold}
	.FaqPageQ::after{content:'＋'; position:absolute; right:0; top:50%; transform:translateY(-50%); background:var(--grad-gold); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-size:20rem}
	.FaqPageItem[open] .FaqPageQ::after{content:'－'}
	.FaqPageA{font-size:14rem; color:#666; line-height:1.9; padding:0 0 24rem 32rem}
	.FaqPageCta{padding:100rem 0; background:var(--grad-gold); text-align:center}
	.FaqPageCtaTxt{font-size:24rem; font-weight:bold; color:var(--color-white); margin-bottom:40rem}
	.FaqPageCtaBtn{display:inline-block; padding:18rem 60rem; background:var(--color-white); color:var(--color-main); font-size:18rem; font-weight:bold; border-radius:50rem}
}

/* =============================================
   DesignPage
   ============================================= */
@media(max-width:789.9px){
	.DesignPageHero{padding:100rem 30rem 80rem; background:var(--color-bg); text-align:center}
	.DesignPageTtl{font-size:56rem; font-weight:bold; color:var(--color-white); margin-bottom:20rem}
	.DesignPageLead{font-size:26rem; color:rgba(255,255,255,.7)}
	.DesignTypeSection{padding:30rem; background:var(--color-pale)}
	.DesignTypeUl{display:flex; gap:16rem; justify-content:center; flex-wrap:wrap}
	.DesignTypeLi{padding:14rem 30rem; border-radius:50rem; background:var(--color-white); font-size:26rem; font-weight:bold; color:var(--color-bg); cursor:pointer}
	.DesignTypeActive{background:var(--grad-gold); color:var(--color-white)}
	.DesignGallerySection{padding:60rem 30rem 80rem; background:var(--color-pale)}
	.DesignGalleryList{display:grid; grid-template-columns:1fr 1fr; gap:16rem}
	.DesignGalleryItem{border-radius:10rem; overflow:hidden; aspect-ratio:3/4; position:relative; background:#f5f0e8}
	.DesignGalleryItem img{width:100%; height:100%; object-fit:cover; display:block}
	.DesignGalleryOverlay{position:absolute; bottom:0; left:0; right:0; padding:16rem; background:linear-gradient(to top,rgba(0,0,0,.6),transparent)}
	.DesignGalleryTag{font-size:20rem; color:#fff; font-weight:bold}
	.DesignPageCta{padding:80rem 30rem; background:var(--color-bg); text-align:center}
	.DesignPageCtaTxt{font-size:34rem; font-weight:bold; color:var(--color-white); margin-bottom:40rem}
	.DesignPageCtaBtnWrap{display:flex; flex-direction:column; gap:20rem; align-items:center}
	.DesignPageCtaBtn{display:inline-block; padding:24rem 60rem; background:var(--grad-gold); color:var(--color-white); font-size:28rem; font-weight:bold; border-radius:50rem}
	.DesignPageCtaBtnSub{display:inline-block; padding:24rem 60rem; border:solid 2rem rgba(255,255,255,.4); color:var(--color-white); font-size:26rem; border-radius:50rem}
}
@media(min-width:790px){
	.DesignPageHero{padding:100rem 0 80rem; background:var(--color-bg); text-align:center}
	.DesignPageTtl{font-size:48rem; font-weight:bold; color:var(--color-white); margin-bottom:16rem}
	.DesignPageLead{font-size:16rem; color:rgba(255,255,255,.7)}
	.DesignTypeSection{padding:24rem 0; background:var(--color-pale)}
	.DesignTypeInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.DesignTypeUl{display:flex; gap:12rem}
	.DesignTypeLi{padding:10rem 28rem; border-radius:50rem; background:var(--color-white); font-size:14rem; font-weight:bold; color:var(--color-bg); cursor:pointer}
	.DesignTypeLi:hover{background:var(--color-light); color:var(--color-bg)}
	.DesignTypeActive{background:var(--grad-gold); color:var(--color-white)}
	.DesignTypeActive:hover{background:var(--grad-gold); color:var(--color-white)}
	.DesignGallerySection{padding:60rem 0 120rem; background:var(--color-pale)}
	.DesignGalleryInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.DesignGalleryList{display:grid; grid-template-columns:repeat(4,1fr); gap:20rem}
	.DesignGalleryItem{border-radius:12rem; overflow:hidden; aspect-ratio:3/4; position:relative; background:#f5f0e8}
	.DesignGalleryItem img{width:100%; height:100%; object-fit:cover; display:block; transition:transform .4s}
	.DesignGalleryItem:hover img{transform:scale(1.05)}
	.DesignGalleryOverlay{position:absolute; bottom:0; left:0; right:0; padding:16rem; background:linear-gradient(to top,rgba(0,0,0,.7),transparent); opacity:0; transition:opacity .3s}
	.DesignGalleryItem:hover .DesignGalleryOverlay{opacity:1}
	.DesignGalleryTag{font-size:13rem; color:#fff; font-weight:bold}
	.DesignPageCta{padding:100rem 0; background:var(--color-bg); text-align:center}
	.DesignPageCtaTxt{font-size:24rem; font-weight:bold; color:var(--color-white); margin-bottom:40rem}
	.DesignPageCtaBtnWrap{display:flex; justify-content:center; gap:24rem}
	.DesignPageCtaBtn{display:inline-block; padding:18rem 50rem; background:var(--grad-gold); color:var(--color-white); font-size:18rem; font-weight:bold; border-radius:50rem}
	.DesignPageCtaBtnSub{display:inline-block; padding:18rem 50rem; border:solid 2rem rgba(255,255,255,.4); color:var(--color-white); font-size:16rem; border-radius:50rem}
}

/* =============================================
   LineupDetailPage（2D / フルラッピング詳細）
   ============================================= */
@media(max-width:789.9px){
	.LineupDetailHero{padding:100rem 30rem 80rem; background:var(--color-bg); text-align:center}
	.LineupDetailHeroFull{background:var(--color-dark)}
	.LineupDetailBadge{display:inline-block; padding:8rem 24rem; background:var(--color-pale); color:var(--color-main); font-size:22rem; font-weight:bold; border-radius:50rem; margin-bottom:20rem}
	.LineupDetailBadgePremium{background:var(--grad-gold); color:var(--color-white)}
	.LineupDetailTtl{font-size:56rem; font-weight:bold; color:var(--color-white); margin-bottom:20rem}
	.LineupDetailLead{font-size:26rem; color:rgba(255,255,255,.75); line-height:1.8; margin-bottom:40rem}
	.LineupDetailHeroBtn{display:inline-block; padding:24rem 60rem; background:var(--grad-gold); color:var(--color-white); font-size:28rem; font-weight:bold; border-radius:50rem}
	.LineupDetailSectionTtl{font-size:40rem; font-weight:bold; color:var(--color-bg); text-align:center; margin-bottom:50rem}
	.LineupDetailFeature{padding:80rem 30rem; background:var(--color-white)}
	.LineupDetailFeatureUl{display:flex; flex-direction:column; gap:40rem}
	.LineupDetailFeatureLi{text-align:center; padding:40rem 20rem; background:var(--color-pale); border-radius:16rem}
	.LineupDetailFeatureIcon{width:48rem; height:48rem; color:var(--color-main); display:block; margin:0 auto 16rem}
	.LineupDetailFeatureTtl{font-size:30rem; font-weight:bold; color:var(--color-bg); margin-bottom:16rem}
	.LineupDetailFeatureTxt{font-size:26rem; color:#666; line-height:1.8}
	.LineupDetailFlavor{padding:80rem 30rem; background:var(--color-pale)}
	.LineupDetailFlavorLead{font-size:24rem; color:#666; line-height:1.8; text-align:center; margin-bottom:40rem}
	.LineupDetailFlavorUl{display:grid; grid-template-columns:1fr 1fr; gap:20rem; margin-bottom:20rem}
	.LineupDetailFlavorLi{background:var(--color-white); border-radius:12rem; padding:30rem 20rem; text-align:center}
	.LineupDetailFlavorEmoji{font-size:50rem; display:block; margin-bottom:12rem}
	.LineupDetailFlavorName{font-size:28rem; font-weight:bold; color:var(--color-bg); margin-bottom:8rem}
	.LineupDetailFlavorAlc{font-size:22rem; color:#999}
	.LineupDetailPrice{padding:80rem 30rem; background:var(--color-white)}
	.LineupDetailPricePremium{background:var(--color-pale)}
	.LineupDetailPriceInner{text-align:center}
	.LineupDetailOption{padding:80rem 30rem; background:var(--color-pale)}
	.LineupDetailOptionInner{}
	.LineupDetailPricePremium + .LineupDetailOption{background:var(--color-white)}
	.LineupDetailCta{padding:80rem 30rem; background:var(--grad-gold); text-align:center}
	.LineupDetailCtaTxt{font-size:34rem; font-weight:bold; color:var(--color-white); margin-bottom:40rem}
	.LineupDetailCtaBtn{display:inline-block; padding:24rem 60rem; background:var(--color-white); color:var(--color-main); font-size:28rem; font-weight:bold; border-radius:50rem; margin-bottom:20rem}
	.LineupDetailCtaSub{display:block; color:rgba(255,255,255,.8); font-size:24rem; margin-top:16rem}
}
@media(min-width:790px){
	.LineupDetailHero{padding:120rem 0 100rem; background:var(--color-bg); text-align:center}
	.LineupDetailHeroFull{background:var(--color-dark)}
	.LineupDetailHeroInner{max-width:800rem; margin:0 auto; padding:0 40rem}
	.LineupDetailBadge{display:inline-block; padding:6rem 20rem; background:var(--color-pale); color:var(--color-main); font-size:13rem; font-weight:bold; border-radius:50rem; margin-bottom:16rem}
	.LineupDetailBadgePremium{background:var(--grad-gold); color:var(--color-white)}
	.LineupDetailTtl{font-size:52rem; font-weight:bold; color:var(--color-white); margin-bottom:20rem}
	.LineupDetailLead{font-size:16rem; color:rgba(255,255,255,.75); line-height:1.9; margin-bottom:48rem}
	.LineupDetailHeroBtn{display:inline-block; padding:18rem 60rem; background:var(--grad-gold); color:var(--color-white); font-size:18rem; font-weight:bold; border-radius:50rem}
	.LineupDetailSectionTtl{font-size:32rem; font-weight:bold; color:var(--color-bg); text-align:center; margin-bottom:60rem}
	.LineupDetailFeature{padding:120rem 0; background:var(--color-white)}
	.LineupDetailFeatureInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.LineupDetailFeatureUl{display:flex; gap:32rem}
	.LineupDetailFeatureLi{flex:1; text-align:center; padding:50rem 30rem; background:var(--color-pale); border-radius:16rem}
	.LineupDetailFeatureIcon{width:40rem; height:40rem; color:var(--color-main); display:block; margin:0 auto 16rem}
	.LineupDetailFeatureTtl{font-size:18rem; font-weight:bold; color:var(--color-bg); margin-bottom:16rem}
	.LineupDetailFeatureTxt{font-size:14rem; color:#666; line-height:1.9}
	.LineupDetailFlavor{padding:120rem 0; background:var(--color-pale)}
	.LineupDetailFlavorInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.LineupDetailFlavorLead{font-size:14rem; color:#666; line-height:1.9; text-align:center; margin-bottom:60rem}
	.LineupDetailFlavorUl{display:grid; grid-template-columns:repeat(4,1fr); gap:20rem; margin-bottom:24rem}
	.LineupDetailFlavorLi{background:var(--color-white); border-radius:12rem; padding:40rem 20rem; text-align:center}
	.LineupDetailFlavorEmoji{font-size:40rem; display:block; margin-bottom:12rem}
	.LineupDetailFlavorName{font-size:18rem; font-weight:bold; color:var(--color-bg); margin-bottom:8rem}
	.LineupDetailFlavorAlc{font-size:13rem; color:#999}
	.LineupDetailPrice{padding:120rem 0; background:var(--color-white)}
	.LineupDetailPricePremium{background:var(--color-pale)}
	.LineupDetailPriceInner{max-width:600rem; margin:0 auto; padding:0 40rem; text-align:center}
	.LineupDetailOption{padding:120rem 0; background:var(--color-pale)}
	.LineupDetailOptionInner{max-width:1120rem; margin:0 auto; padding:0 40rem}
	.LineupDetailCta{padding:100rem 0; background:var(--grad-gold); text-align:center}
	.LineupDetailCtaTxt{font-size:24rem; font-weight:bold; color:var(--color-white); margin-bottom:40rem}
	.LineupDetailCtaBtn{display:inline-block; padding:18rem 60rem; background:var(--color-white); color:var(--color-main); font-size:18rem; font-weight:bold; border-radius:50rem}
	.LineupDetailCtaSub{display:block; color:rgba(255,255,255,.8); font-size:14rem; margin-top:20rem}
}