/* uaplus.css version 0.3.0 */
@layer{*,*::after,*::before{box-sizing:border-box}:focus-visible{outline-offset:3px}html{-webkit-text-size-adjust:none;text-size-adjust:none}html{line-height:1.5}html{scrollbar-gutter:stable}h1{font-size:2em;margin-block:.67em}abbr[title]{cursor:help;text-decoration-line:underline;text-decoration-style:dotted}@media (forced-colors:active){mark{color:HighlightText;background-color:Highlight}}audio,iframe,img,svg,video{max-block-size:100%;max-inline-size:100%}fieldset{min-inline-size:0}label:has(+input:not([type="radio"],[type="checkbox"]),select,textarea){display:block}textarea:not([rows]){min-block-size:6em}button,input,select,textarea{font-family:inherit;font-size:inherit}[type="search"]{-webkit-appearance:textfield}@supports (-webkit-touch-callout:none){[type="search"]{border:1px solid -apple-system-secondary-label;background-color:canvas}}input:where([type="tel"],[type="url"],[type="email"],[type="number"]):not(:placeholder-shown){direction:ltr}table{border-collapse:collapse;border:1px solid}th,td{border:1px solid;padding:.25em .5em;vertical-align:top}dialog::backdrop{background:oklch(0% 0 0 / .3)}dialog,[popover],dialog::backdrop{opacity:0;transition:opacity 150ms ease-out,display 150ms allow-discrete,overlay 150ms allow-discrete}dialog[open],:popover-open,dialog[open]::backdrop{opacity:1}@starting-style{dialog[open],:popover-open,dialog[open]::backdrop{opacity:0}}[hidden]:not([hidden="until-found"]){display:none!important}img{display:block}summary{cursor:default}iframe{border:none}@supports(position-area:block-end span-inline-end){[popover]{margin:0;position-area:block-end span-inline-end}}}

/* pc-min:1100px */
/* tablet:750-1099px */
/* smartphone:749px */
/* mini-smartphone:419px */
/* variables  ***** */
:root {
	--page-width: 1100px;
	--font-title: "Noto Serif JP", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	--font-text: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	--font-bold: "Noto Sans JP", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	--font-mincho: "Noto Serif JP", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	--fontsize-b: 1.1em;
	--fontsize-s: 0.9em;
	--fontsize-ss: 0.8em;
	--color-brown: #5e3909;
	--color-lbrown: #a1966e;
	--color-green: #92ba34;
	--color-lgreen: #e7f2cb;
	--color-ivory: #f5f0e0;
	--eyecatch-margin: 130px;
}

/* globals  ***** */
* { font-size:16px; font-family:var(--font-text); font-feature-settings:"palt"; -webkit-font-smoothing: antialiased; letter-spacing:0.03em; margin:0; padding:0; box-sizing:border-box; }
ul { padding:0; list-style-type:none; }
em { font-size:1.05em; font-style:normal; font-family:inherit; display:inline-block; margin:0 5px; padding:3px 10px 0px 18px; background:url(pointer-l.png) left top no-repeat, url(pointer-r.png) right top no-repeat; }
section { width:100%; margin-top:60px; }
section .section-inner { max-width:var(--page-width); margin:0 auto; padding:60px 50px; overflow:hidden; }
section h2 { margin:0 0 60px 0; font-size:32px; font-family:var(--font-title); color:var(--color-brown); word-break:keep-all; line-height:140%; text-align:center; }
section p { margin-top:15px; line-height:150%; }

.link-button-area { display:flex; justify-content:space-around; align-items:center; flex-wrap:wrap; margin-top:60px; }
.link-button { display:flex; justify-content:center; align-items:center; position:relative; width:400px; max-width:100%; margin-bottom:30px; padding:17px 20px 13px 20px; color:var(--color-ivory); font-size:20px; text-decoration:none; border-radius:15px; background:var(--color-brown); }
.link-button:hover { opacity: 0.8; }
.link-button:after { content:""; position:absolute; right:20px; width:12px; height:12px; border-top:2px solid var(--color-ivory); border-right:2px solid var(--color-ivory); transform: rotate(45deg); }
@media screen and (max-width: 949px) {
	section { margin-top:0; }
	section .section-inner { padding-left:30px; padding-right:30px; }
}
@media screen and (max-width: 749px) {
	* { font-size:16px; }
	section .section-inner { padding-left:20px; padding-right:20px; }
	section h2 { font-size:26px; }
}

/* header ***** */
header { position:sticky; top:-40px; display:flex; width:100%; height:120px; align-items:center; background:rgba(255,255,255,0.85); z-index:100; }
header .header_inner { position:sticky; top:0; display:flex; width:100%; max-width:var(--page-width); height:80px; justify-content:space-between; align-items:center; margin:0 auto; padding:10px 15px; }
header img { max-width:150px; }
header a { display:inline-block; margin-right:20px; padding-left:30px; color:var(--color-brown); font-size:36px; font-family:var(--font-text); font-weight:bold; text-decoration:none; background:url(svg-freedial.svg) left 0.4em / 24px no-repeat; }
header a span { display:block; margin-top:-10px; font-size:13px; line-height:120%; font-family:var(--font-bold); }
header.scroll a { margin-top:-10px; font-size:32px; }
@media screen and (max-width:639px) {
	header img { max-width:120px; }
	header a { margin:0 !important; font-size:26px !important; }
}

/* #EYECATCH ***** */
#EYECATCH { position:relative; max-width:var(--page-width); min-width:320px; height:650px; margin:0 auto; border-radius:20px; background:#EEE; }
#EYECATCH .bg {
	width: 100%;
	height: 100%;
	background:
		url(eyecatch-diamond.png) calc(18% - var(--eyecatch-margin)) calc(18% - 130px) no-repeat,
		url(eyecatch-vuitton.png) calc(30% - var(--eyecatch-margin)) calc(66% - 130px) no-repeat,
		url(eyecatch-jewelry.png) calc(54% - var(--eyecatch-margin)) calc(41% - 130px) no-repeat,
		url(eyecatch-vca.png) calc(80% - var(--eyecatch-margin)) calc(3% - 130px) no-repeat,
		url(eyecatch-cartier.png) calc(75% - var(--eyecatch-margin)) calc(76% - 130px) no-repeat,
		url(eyecatch-rolex.png) right calc(-2% + var(--eyecatch-margin)) top calc(62% - 130px) no-repeat,
		url(eyecatch-ingot.png) right calc(-28% + var(--eyecatch-margin)) top calc(42% - 130px) no-repeat,
		url(eyecatch-chanel.png) right calc(10% - var(--eyecatch-margin)) top calc(110% - 130px) no-repeat;
	background-size: 24% auto;
	z-index: -1;
}
#EYECATCH .staff { position:absolute; bottom:0; width:185px; height:600px; background:url(staff.png) left 0px bottom -50px / 100% auto no-repeat; }
#EYECATCH .fg { width:100%; padding-bottom:10px; z-index:1; }

/* clampは720pxで計算 */
#EYECATCH .copybox { position:absolute; left:0; right:0; bottom:100px; width:100%; max-width:770px; height:220px; margin:0 auto; padding:20px 40px; color:#5e3909; text-align:center; background:rgba(255,255,255,0.85); }
#EYECATCH .copybox .copy { padding-bottom:5px; border-bottom:10px solid #92ba34; font-size:clamp(32px, 6.66vw, 48px); font-family:var(--font-mincho); font-weight:600; line-height:115%; word-break:keep-all;  }
#EYECATCH .copybox h1 { display:flex; justify-content:center; align-items:center; height:70px; margin:0; font-size:clamp(20.5px, 3.61vw, 26px); line-height:125%; word-break:keep-all; }
#EYECATCH .pickup { position:absolute; left:0; right:0; bottom:10px; display:flex; justify-content:space-between; width:100%; max-width:820px; margin:0 auto; color:var(--color-brown);  text-align:center; }
#EYECATCH .pickup li { width:100%; min-width:95px; max-width:150px; display:flex; justify-content:center; align-items:center; margin:0 2%; border:3px solid var(--color-brown); border-radius:50%; background:#FFF; box-shadow: 4px 4px 0px rgba(94, 57, 9, 0.5);  }
#EYECATCH .pickup li:before { content:""; padding-top:100%; }
#EYECATCH .pickup li p { margin-top:5px; font-family:var(--font-bold); font-size:clamp(18px, 3.75vw,27px); font-weight:bold; line-height:110%; }
#EYECATCH .pickup li p small { display:block; font-size:clamp(14px, 2.57vw,18px); }
@media screen and (max-width:1099px) {
	#EYECATCH { border-radius:0; }
}
@media screen and (min-width: 750px) and (max-width: 949px) {
	:root { --eyecatch-margin: 115px; }
	#EYECATCH .bg { background-size: 224px auto; }
}
@media screen and (min-width: 640px) and (max-width: 749px) {
	:root { --eyecatch-margin: 80px; }
	#EYECATCH .bg { background-size: 200px auto; }
}
@media screen and (max-width:639px) {
	:root { --eyecatch-margin: 0px; }
	#EYECATCH { border-radius:0; }
	#EYECATCH .bg {
		background:
			url(eyecatch-diamond.png) calc(0% - var(--eyecatch-margin)) calc(-10%) no-repeat,
			url(eyecatch-vuitton.png) calc(28% - var(--eyecatch-margin)) calc(39%) no-repeat,
			url(eyecatch-jewelry.png) calc(36% - var(--eyecatch-margin)) calc(80%) no-repeat,
			url(eyecatch-cartier.png) right calc(36% - var(--eyecatch-margin)) top calc(60%) no-repeat,
			url(eyecatch-vca.png) right calc(0% - var(--eyecatch-margin)) top calc(-12%) no-repeat,
			url(eyecatch-ingot.png) right calc(-20% - var(--eyecatch-margin)) top calc(28%) no-repeat,
			url(eyecatch-rolex.png) right calc(4% - var(--eyecatch-margin)) top calc(53%) no-repeat,
			url(eyecatch-chanel.png) right calc(12% - var(--eyecatch-margin)) top calc(88%) no-repeat;
		background-size:33% auto;
		opacity: 0.5;
	}
	#EYECATCH .copybox { top:40px; padding:20px; background:none; }
	#EYECATCH .copybox .copy { border-width:8px; }
	#EYECATCH .pickup { bottom:20px; padding:10px; }
	#EYECATCH .pickup li { margin: 0 1%; }
	#EYECATCH .staff { width:170px; left:-25px; }
}
@media screen and (max-width:419px) {
	:root { --eyecatch-margin: 10px; }
	#EYECATCH .bg { background-size:155px auto; }
	#EYECATCH .pickup { bottom:0px; width:auto; margin-left:100px; padding:10px; flex-wrap:wrap; justify-content:space-evenly; }
	#EYECATCH .pickup li { width:45%; max-width:120px; margin-bottom:10px; }
}

/* #SERVICE ***** */
#SERVICE { background:var(--color-lgreen); }
#SERVICE .service-menu { display:flex; gap:20px; justify-content:space-around; }
#SERVICE .service-menu li { max-width:400px; padding:220px 30px 30px 30px; background:#FFF center -40px / auto 270px no-repeat; border-radius:20px; text-align:center; }
#SERVICE .service-menu li.buy { background-image:url(service-buy.jpg); }
#SERVICE .service-menu li.consult { background-image:url(service-consult.jpg); }
#SERVICE .service-menu li h3 { display:inline-block; color:var(--color-brown); font-size:28px; font-family:var(--font-mincho); margin:20px 0 0 0; padding:0 10px; background: linear-gradient(transparent 75%, var(--color-green) 75%), rgba(255,255,255,0.75); }
#SERVICE .service-menu li p { text-align:left; }
#SERVICE .service-description { margin-top: 40px; line-height:175%; }
#SERVICE .service-description p { line-height:175%; }
@media screen and (max-width: 749px) {
	#SERVICE .service-menu { gap:20px; margin:0 -20px; }
	#SERVICE .service-menu li { width:calc((100% - 20px ) / 2); padding-left:15px; padding-right:15px; }
	#SERVICE .service-menu li.buy { border-radius:0; border-top-right-radius:20px; border-bottom-right-radius:20px; }
	#SERVICE .service-menu li.consult { border-radius:0; border-top-left-radius:20px; border-bottom-left-radius:20px; }
	#SERVICE .service-menu li h3 { font-size:22px; min-width:140px; padding-top:5px; padding-bottom:15px; text-align:center; background: linear-gradient(transparent 80%, var(--color-green) 80%), rgba(255,255,255,0.65); }
}


/* #SERVICE > #STORE-IMAGE ***** */
#SERVICE #STORE-IMAGE { display:flex; }
#SERVICE #STORE-IMAGE img { display:block;  width:100%; height:auto; }
#SERVICE #STORE-IMAGE .swiper-prev, #SERVICE #STORE-IMAGE .swiper-next { position:absolute; top:0; bottom:0; display:flex; width:3em; height:3em; margin:auto; justify-content:center; align-items:center; border-radius:50%; background:rgba(255,255,255,0.75); z-index:100;  }
#SERVICE #STORE-IMAGE .swiper-prev img, #SERVICE #STORE-IMAGE .swiper-next img { width:75%; }
#SERVICE #STORE-IMAGE .swiper-prev { left:1em; }
#SERVICE #STORE-IMAGE .swiper-next { right:1em; }
@media screen and (max-width: 749px) {
	#SERVICE { padding-bottom: 40px; }
	#SERVICE #STORE-IMAGE { margin:0 20px; overflow:hidden; border-radius:20px; }
}

/* #JISSEKI ***** */
#JISSEKI { margin-top:0; }
#JISSEKI .jisseki-category-container { width:100%; overflow:hidden; overflow-x:auto; padding-bottom:10px; }
#JISSEKI .jisseki-category-container::-webkit-scrollbar{ height:6px; }
#JISSEKI .jisseki-category-container::-webkit-scrollbar-track{ background:#fff; border:none; border-radius:10px; box-shadow:inset 0 0 2px #777; }
#JISSEKI .jisseki-category-container::-webkit-scrollbar-thumb{ background:var(--color-brown); border-radius:10px; box-shadow:none; }
#JISSEKI .jisseki-category { text-align:center; white-space:nowrap; }
#JISSEKI .jisseki-category a { display:inline-block; vertical-align:top; text-decoration:none; }
#JISSEKI .jisseki-category a .icon { display:flex; width:60px; height:60px; position:relative; margin:0 10px; justify-content:center; align-items:center; background:var(--color-ivory); border-radius:10px; }
#JISSEKI .jisseki-category a .icon img { width:60%; height:auto; }
#JISSEKI .jisseki-category a .text { display:block; margin-top:5px; color:var(--color-brown); font-size:12px; font-weight:bold; line-height:120%; text-align:center;  }
#JISSEKI .jisseki-category a.now .icon { background:var(--color-lgreen); }
#JISSEKI .jisseki-category.bottom a .icon:before { content:""; position:absolute; top:-15px; width:30px; height:calc(tan(60deg) * 30px / 3); background:var(--color-ivory); clip-path: polygon(50% 0, 100% 100%, 0 100%); }
#JISSEKI .jisseki-category.bottom a.now .icon:before { background:var(--color-lgreen); }

#JISSEKI .jisseki-container { display:flex; flex-wrap:wrap; margin:40px 0; }
#JISSEKI .jisseki-container.hide { display:none !important; }
#JISSEKI .jisseki-container .item { width:calc((100% - 2px) / 3); padding:10px; border-right:1px dotted #999; border-bottom:1px dotted #999; }
#JISSEKI .jisseki-container .item:nth-child(3n) { border-right:none; }
#JISSEKI .jisseki-container .item a { color:#000; text-decoration:none; text-align:center; }
#JISSEKI .jisseki-container .item a:hover { opacity:0.85; }
#JISSEKI .jisseki-container .item a p { margin-top:5px; text-align:center; font-size:var(--fontsize-s); letter-spacing:0em; word-break:keep-all; }
#JISSEKI .jisseki-container .item .image { display:block; position:relative; margin-top:0; overflow:hidden; border-radius:3px; }
#JISSEKI .jisseki-container .item .image:before { content:""; display:block; padding-top:75%; }
#JISSEKI .jisseki-container .item .image img { display: block; position:absolute; top:50%; left:50%; width:110%; height:auto; filter:brightness(1.05); transform:translate(-50%, -50%); }
#JISSEKI .jisseki-container .item .price { display:block; margin-top:5px; }
#JISSEKI .jisseki-container .item .price .label { display:inline-block; color:#FFF; font-weight:bold; margin-right:10px; padding:4px 10px 2px 10px; border-radius:5px; background:var(--color-brown); }
#JISSEKI .jisseki-container .item .price .yen { display:inline-block; color:#C00; font-size:var(--fontsize-b); font-family:var(--font-bold); }
#JISSEKI .jisseki-container .item .date { display:block; margin-top:10px; font-size:var(--fontsize-ss); text-align:center; line-height:125%; }

@media screen and (max-width: 749px) {
	/* カテゴリ */
	#JISSEKI .jisseki-category a .icon { margin:0 5px; }

	/* 2列 */
	#JISSEKI .jisseki-container .item { width:calc((100% - 1px) / 2); }
	#JISSEKI .jisseki-container .item:nth-child(3n) { border-right:1px dotted #999; }
	#JISSEKI .jisseki-container .item:nth-child(2n) { border-right:none; }
}

/* #VOICE ***** */
#VOICE { position:relative; margin-top:50px; overflow:hidden; background: url(bg-items.png), var(--color-lgreen); }
#VOICE .voice-container { height:500px; overflow-y:scroll; padding:0px 10px; }
#VOICE .voice-container::-webkit-scrollbar{ width:12px; }
#VOICE .voice-container::-webkit-scrollbar-track{ background:#fff; border:none; border-radius:10px; box-shadow:inset 0 0 2px #777; }
#VOICE .voice-container::-webkit-scrollbar-thumb{ background:#50480a; border-radius:10px; box-shadow:none; }
#VOICE .voice-container .voice { width:100%; text-align:center; margin-bottom:20px; }
#VOICE .voice-container .voice img { display:inline-block; width:100%; max-width:500px; height:auto; border:1px solid #CCCCCC; }
#VOICE .voice-container .voice .description { max-width:600px; font-size:var(--fontsize-ss); line-height:150%; margin:0px auto; }
@media screen and (max-width: 749px) {
	#VOICE .voice-container { margin:0 12px; }
	#VOICE .voice-container .voice img { max-width:450px; }
}

/* #REASON ***** */
#REASON { }
#REASON ul { display:flex; flex-wrap:wrap; justify-content:space-between; margin-bottom:-80px; padding:0; }
#REASON ul li { position:relative; display:flex; justify-content:space-between; width:46%; margin-bottom:80px; }
#REASON ul li .reason-box { width:100%; padding:25px 8%; border:4px solid var(--color-brown); background:#FFF; z-index:1; }
#REASON ul li .reason-box h3 { margin:0 0 0 23%; color:var(--color-brown); font-size:clamp(24px, 2.61vw, 28px); font-family:var(--font-bold); line-height:130%; text-align:center; word-break:keep-all; }
#REASON ul li .reason-box h4 { margin:0; color:var(--color-brown); font-size:clamp(22px, 2.61vw,26px); font-family:var(--font-mincho); line-height:130%; }

/* #REASON ul li:before/after */
#REASON ul li:before { content:""; position:absolute; top:-28px; left:-28px; display:flex; justify-content:center; align-items:center; width:70px; height:70px; padding-bottom:5px; color:var(--color-brown); font-size:48px; font-family:var(--font-mincho); background:url(pointer-l.png) left 5px top 5px no-repeat, linear-gradient(135deg, #FFF 75%, transparent 75%); z-index:10; }
#REASON ul li:after { content:""; position:absolute; top:10px; left:10px; display:block; width:100%; height:100%; background:url(bg-stripe.png), var(--color-lbrown); z-index:-1; }

/* #REASON ul li:first-child */
#REASON ul li:first-child:before { content:none; }
#REASON ul li:first-child:after { top:0; left:0; }
#REASON ul li:first-child .reason-box { display:flex; align-items:center; margin:12px; padding-right:5%; background:url(staff.png) left 0 bottom 100% / auto 190% no-repeat, #FFF; }

/* #REASON ul:counter */
#REASON ul { counter-reset:cnt -1; }
#REASON ul li { counter-increment:cnt; }
#REASON ul li:before { content:counter(cnt); }

@media screen and (max-width: 949px) {
	/* flexbox解除 縦並び */
	#REASON { margin-bottom:60px; }
	#REASON ul li { width:90%; margin:0 auto 40px auto; }
	#REASON ul li .reason-box { padding-bottom:15px; }
	#REASON ul li .reason-box .reason p { margin:10px 0; }
	#REASON ul li:before { top:-18px; }
	#REASON ul li:first-child .reason-box { margin:12px; background-size:auto 280%; }
	#REASON ul li:first-child .reason-box h3 { width:100%; margin-top:30px; margin-bottom:30px; text-align:center; }
}
@media screen and (max-width: 749px) {
	/* flexbox解除 アコーディオン */
	#REASON { margin-bottom:80px; }
	#REASON ul {}
	#REASON ul li { width:100% !important; margin-bottom:10px; border-bottom:4px solid var(--color-brown); }
	#REASON ul li:before { position:static; width:60px; }
	#REASON ul li:after { content:""; position:static; width:40px; height:40px; margin-top:15px; border-radius:50%; background:none; }
	#REASON ul li .reason-box { width:calc(100% - 100px); padding:5px 10px; border:none !important; }
	#REASON ul li .reason-box h4 { position:relative; font-size:22px; }
	#REASON ul li .reason-box .reason { display:grid; grid-template-rows:0fr; overflow:hidden; transition:0.3s grid-template-rows, 0.3s margin; }
	#REASON ul li .reason-box .reason p { overflow:hidden; }
	#REASON ul li .reason-box h4:before, #REASON ul li .reason-box h4:after { content:""; display:block; width:25px; height:3px; position:absolute; top:1.2em; right:-2em; background:var(--color-brown); transition:all 0.3s; }
	#REASON ul li .reason-box h4:after { transform:rotate(90deg); }

	#REASON ul li:first-child .reason-box { width:100%; margin-bottom:0; background-size:auto 280%; }
	#REASON ul li:first-child:after { content:none; }

	#REASON ul li.open .reason-box h4:after { transform:rotate(0deg); }
	#REASON ul li.open .reason-box .reason { grid-template-rows:1fr; }
}
@media screen and (max-width: 419px) {
	#REASON ul li .reason-box { padding:5px 0; }
	#REASON ul li .reason-box h4 { font-size:20px; }
}


/* #BROKEN ***** */
#BROKEN { text-align:center; background:url(bg-matelasse.png); }
#BROKEN .summary { margin-top:-20px; font-weight:bold; word-break:keep-all; }
#BROKEN #BROKEN-LIST { position:relative; width:100%; margin:60px auto 0 auto; }
#BROKEN #BROKEN-LIST img { width:100%; height:auto; border-radius:50%; }
#BROKEN #BROKEN-LIST .description { font-size:var(--fontsize-s); text-align:center; }
#BROKEN #BROKEN-LIST .swiper-wrapper { display:flex; justify-content:space-between; flex-wrap:wrap; }
#BROKEN #BROKEN-LIST .swiper-wrapper .swiper-slide { width:21%; margin-bottom:20px; }
#BROKEN #BROKEN-LIST .swiper-prev,
#BROKEN #BROKEN-LIST .swiper-next { display:none; position:absolute; width:3em; height:3em; top:calc(50% - 2em); transform: translateY(-50%); z-index:100; }
#BROKEN #BROKEN-LIST .swiper-prev { left:-2.5em; transform-origin:2px 50%; }
#BROKEN #BROKEN-LIST .swiper-next { right:-2.5em; transform-origin:calc(100% - 1.5em) 50%; }
@media screen and (max-width: 749px) {
	#BROKEN #BROKEN-LIST { width:85%; }
	#BROKEN #BROKEN-LIST .description { font-size:15px; font-weight:bold; }
	#BROKEN #BROKEN-LIST .swiper-wrapper { flex-wrap:nowrap; }
	#BROKEN #BROKEN-LIST .swiper-prev, #BROKEN #BROKEN-LIST .swiper-next { display:block; }
	#BROKEN #BROKEN-LIST .swiper-prev { left:-3.5em; }
	#BROKEN #BROKEN-LIST .swiper-next { right:-3.5em; }
}


/* #QUESTION ***** */
#QUESTION {}
#QUESTION ul.qa {}
#QUESTION ul.qa > li { position:relative; margin-bottom:20px; }
#QUESTION a.question { display:block; position:relative; width:100%; padding:10px 15px; color:#000; text-decoration:none; background:var(--color-ivory); border-radius:10px; }
#QUESTION a.question:before, #QUESTION a.question:after { content:""; position:absolute; right:1.25em; top:calc(50% - 0.25em); width:2px; height:0.75em; background-color:var(--color-brown); transition:all 0.3s; }
#QUESTION a.question:after { transform: rotate(90deg); }
#QUESTION .answer-box { display:grid; grid-template-rows:0fr; overflow:hidden; margin:0 20px; border-radius:5px; transition:0.3s grid-template-rows, 0.3s margin; }
#QUESTION .answer-box .answer { padding:0 25px; overflow:hidden; background:#f7f6f3; transition:0.3s padding; }
#QUESTION ul.qa li.open a.question:before { transform:rotate(90deg); }
#QUESTION ul.qa li.open .answer-box { grid-template-rows:1fr; margin-top:20px; }
#QUESTION ul.qa li.open .answer-box .answer { padding-top:5px; padding-bottom:20px; }

/* #PAWN ***** */
#PAWN { background: url(bg-items.png), var(--color-lgreen); }
#PAWN .pawn-box { padding:12px; background:url(bg-stripe.png), var(--color-lbrown); }
#PAWN .pawn-box .pawn-box-inner { padding:20px 30px; background:#FFF; }
#PAWN .pawn-box .pawn-box-inner img { float:right; margin:20px; }
@media screen and (max-width: 949px) {
	#PAWN .pawn-box .pawn-box-inner img { float:none; display:block; margin:20px auto; }
}

/* #ACCESS ***** */
#ACCESS { margin-top:0; }
#ACCESS  h3 { margin:0; color:var(--color-brown); font-size:24px; font-weight:bold; text-align:center; }
#ACCESS .access-menu { display:none; }
#ACCESS .access-ways { display:flex; justify-content:space-between; flex-wrap:wrap; }
#ACCESS .access-ways .access { width:45%; padding:40px 30px; border-radius:10px; border:1px solid var(--color-brown); }
#ACCESS .access-ways .access p { margin-top:30px; }
#ACCESS .access-ways .access.train { background:url(svg-access-train.svg) -100px -100px / 75% no-repeat; }
#ACCESS .access-ways .access.car { background:url(svg-access-car.svg) -120px -50px / 75% no-repeat; }
#ACCESS .access-hattori { position:relative; margin-top:60px; }
#ACCESS .access-hattori #HATTORI-ROUTE { width:100%; max-width:800px; margin:20px auto 0 auto; padding-bottom:35px; }
#ACCESS .access-hattori #HATTORI-ROUTE img { width:100%; height:auto; }
#ACCESS .access-hattori #HATTORI-ROUTE .description { font-size:var(--fontsize-s); text-align:center; }
#ACCESS .access-hattori #HATTORI-ROUTE .swiper-prev,
#ACCESS .access-hattori #HATTORI-ROUTE .swiper-next { position:absolute; width:3em; height:3em; top:50%; transform: translateY(-50%); z-index:100; }
#ACCESS .access-hattori #HATTORI-ROUTE .swiper-prev { left:3em; transform-origin:2px 50%; }
#ACCESS .access-hattori #HATTORI-ROUTE .swiper-next { right:3em; transform-origin:calc(100% - 2px) 50%; }
#ACCESS .access-map { width:100%; max-width:800px; height:500px; margin:60px auto 0 auto; border:1px solid var(--color-brown); }
#ACCESS .access-map iframe { width:100%; height:100%; }
@media screen and (max-width:949px) {
	#ACCESS .access-ways .access { width:48%;}
}
@media screen and (max-width: 749px) {
	#ACCESS .access-menu { display:flex; justify-content:center; width:100%; border-bottom:5px solid var(--color-green); }
	#ACCESS .access-menu a { display:inline-block; width:100%; max-width:40%; margin:0 5px; padding:10px 20px 5px 20px; color:#a39888; font-size:18px; font-weight:bold; text-align:center; text-decoration:none; border-top-left-radius:20px; border-top-right-radius:20px; background:#d9dbd4;  }
	#ACCESS .access-ways .access { display:none; width:100%; padding:0 20px; background:none !important; border:none; }
	#ACCESS .access-ways .access h3 { display:none; }
	#ACCESS .access-menu a.now { color:#FFF; background:var(--color-green); }
	#ACCESS .access-menu a:not(.now):hover { background:var(--color-lgreen); }
	#ACCESS .access-ways .access.now { display:block; }
	#ACCESS .access-hattori #HATTORI-ROUTE .swiper-prev { left:0; filter:brightness(100); }
	#ACCESS .access-hattori #HATTORI-ROUTE .swiper-next { right:0; filter:brightness(100); }
}

/* #MARUKA ***** */
#MARUKA { background:url(bg-paper.gif); }
#MARUKA .company-info { padding:40px 3%; }
#MARUKA dl { display:flex; margin:0; font-size:inherit; }
#MARUKA dl dt { flex-basis:120px; padding:12px 20px 8px 20px; border-bottom:2px solid var(--color-brown); }
#MARUKA dl dd { flex-basis:calc(100% - 100px); margin-left:5px; padding:10px 20px; border-bottom:1px solid var(--color-brown); }
#MARUKA dl dd ol { margin-left:20px; }
@media screen and (max-width: 749px) {
	#MARUKA dl { display:block; }
	#MARUKA dl dt { padding:2px 10px; color:var(--color-brown); font-weight:bold; }
	#MARUKA dl dd { border-bottom:none; }
}

/* #CONTACT ***** */
#CONTACT { margin:0; background:var(--color-brown); }

/* footer ***** */
footer { padding:40px 0; }
footer .footer_container { display:flex; flex-wrap:wrap; width:100%; max-width:var(--page-width); justify-content:space-between; margin:0 auto; }
footer .logo { width:140px; }
footer .logo img { max-width:140px; }
footer .address { }
footer .address p { font-size:var(--fontsize-s); }
footer .address a { font-size:var(--fontsize-s); }
footer .permittion { }
footer .permittion dl {  margin-bottom:5px; }
footer .permittion dl dt, footer .permittion dl dd, footer .permittion a { font-size:var(--fontsize-s); white-space:nowrap; }
@media screen and (max-width:1099px) {
	footer { padding:40px; }
}
@media screen and (max-width:949px) {
	footer .logo { width:100%; margin-bottom:20px; }
	footer address { margin-bottom:20px; }
	footer p { margin-bottom:10px; }
	footer .permittion { margin-bottom:20px; }
}
@media screen and (max-width:419px) {
	footer { padding:20px; }
}

/* #PAGETOP ***** */
#PAGETOP { display:block; width:60px; height:60px; position:fixed; right:20px; bottom:20px; white-space:nowrap; text-indent:101%; overflow:hidden; border-radius:10px; background:rgba(255,255,255,0.85); }
#PAGETOP:before, #PAGETOP:after { content:""; position:absolute; top:30%; left:calc(50% - 2px); width:8%; height:40%; border-radius:10px; background:var(--color-brown); transform-origin:50% 2px; }
#PAGETOP::before { transform: rotate(45deg); }
#PAGETOP::after { transform: rotate(-45deg); }
@media screen and (max-width:749px) {
	#PAGETOP { display:none; }
}

/* .contactbox ***** */
.contactbox { width:100%; max-width:var(--page-width); margin:0 auto; border-radius:10px; background:url(staff.png) 5% 50px / 160px no-repeat, var(--color-brown); }
.contactbox .contactbox-container { display:flex; justify-content:flex-end; align-items:center; margin-top:-10px; }
.contactbox * { color:#FFF; font-family:var(--font-mincho); }
.contactbox .summary { margin:0 20px 0 0; font-size:26px; text-align:center; }
.contactbox .summary strong { font-size:1.4em; font-family:inherit; }
.contactbox .action-info { margin-top:10px; text-align:center; }
.contactbox .action-info .action { display:inline-block; }
.contactbox .action-info .action a.freedial { display:flex; align-items:center; font-size:clamp(30px, 5.2vw, 40px); text-decoration:none; }
.contactbox .action-info .action a.freedial:before { content:""; display:block; width:1.1em; height:1.1em; margin:0.15em 10px 0 0; object-fit:cover; background:#FFF; mask-image:url(svg-freedial.svg); -webkit-mask-image: url(svg-freedial.svg); }
.contactbox .action-info .action a.tel { display:inline-block; margin:-5px 0 0 -3.8em; font-size:18px; text-decoration:none;}
.contactbox .action-info .hr { height:2px; margin-top:12px; background-image: radial-gradient(circle, var(--color-ivory) 1px, transparent 1px); background-position: left top; background-repeat: repeat-x; background-size: 12px 2px; }
.contactbox .action-info .info { display:inline-block; margin-top:5px; padding:10px 0; }
.contactbox .action-info .info dl { display:flex; margin:0; font-size:17px; }
.contactbox .action-info .info dl dt { width:80px; text-align:right; white-space:nowrap; }
.contactbox .action-info .info dl dd { margin-left:20px; text-align:left; word-break:keep-all; }
.contactbox .action-info .info dl dd small { display:inline-block; font-size:0.9em; }
.contactbox .link-button-area { margin-top:30px; margin-bottom:-30px; }
.contactbox .link-button { width:30%; min-width:280px; font-size:18px; font-weight:bold; font-family:var(--font-text); background-color:rgba(255,255,255,0.25); background-repeat:no-repeat; background-position:6% center; background-size:auto 60%; }
.contactbox .link-button.home { background-image:url(svg-home.svg) ; }
.contactbox .link-button.map { background-image:url(svg-map.svg) ; }
.contactbox .link-button.mail { background-image:url(svg-mail.svg) ; }
@media screen and (max-width:1099px) {
	.contactbox { padding:40px 0; border-radius:0; }
	.contactbox .section-inner { padding:20px; }
	.contactbox .contactbox-container { display:block; margin-left:200px; }
}
@media screen and (max-width:949px) {
	.contactbox { background-position:3% 50px; background-size:auto 100%; }
	.contactbox .link-button-area { display:block; margin-left:200px; }
	.contactbox .link-button-area .link-button { width:85%; margin:12px auto; }
}
@media screen and (max-width:749px) {
	.contactbox { background-position:left 0 bottom -50%; background-size:130px auto; }
	.contactbox .summary { font-size:clamp(20px, 5.2vw, 26px); margin:0; }
	.contactbox .contactbox-container { margin-left:0; }
	.contactbox .link-button-area { margin-left:100px; }
}
