/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&family=Oswald:wght@200..700&family=Shippori+Mincho&display=swap");
*, ::before, ::after { box-sizing: border-box; border-style: solid; border-width: 0; }

/* Document */
/* ============================================ */
/** 1. Correct the line height in all browsers. 2. Prevent adjustments of font size after orientation changes in iOS. 3. Remove gray overlay on links for iOS. */
html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ -webkit-tap-highlight-color: transparent; /* 3*/ }

/* Sections */
/* ============================================ */
/** Remove the margin in all browsers. */
body { margin: 0; }

/** Render the `main` element consistently in IE. */
main { display: block; }

/* Vertical rhythm */
/* ============================================ */
p, table, blockquote, address, pre, iframe, form, figure, dl { margin: 0; }

/* Headings */
/* ============================================ */
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; margin: 0; }

/* Lists (enumeration) */
/* ============================================ */
ul, ol { margin: 0; padding: 0; list-style: none; }

/* Lists (definition) */
/* ============================================ */
dt { font-weight: bold; }

dd { margin-left: 0; }

/* Grouping content */
/* ============================================ */
/** 1. Add the correct box sizing in Firefox. 2. Show the overflow in Edge and IE. */
hr { box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ border-top-width: 1px; margin: 0; clear: both; color: inherit; }

/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
pre { font-family: monospace, monospace; /* 1 */ font-size: inherit; /* 2 */ }

address { font-style: inherit; }

/* Text-level semantics */
/* ============================================ */
/** Remove the gray background on active links in IE 10. */
a { background-color: transparent; text-decoration: none; color: inherit; }

/** 1. Remove the bottom border in Chrome 57- 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */
abbr[title] { text-decoration: underline dotted; /* 2 */ }

/** Add the correct font weight in Chrome, Edge, and Safari. */
b, strong { font-weight: bolder; }

/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: inherit; /* 2 */ }

/** Add the correct font size in all browsers. */
small { font-size: 80%; }

/** Prevent `sub` and `sup` elements from affecting the line height in all browsers. */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -0.25em; }

sup { top: -0.5em; }

/* Replaced content */
/* ============================================ */
/** Prevent vertical alignment issues. */
svg, img, embed, object, iframe { vertical-align: bottom; }

/* Forms */
/* ============================================ */
/** Reset form fields to make them styleable. 1. Make form elements stylable across systems iOS especially. 2. Inherit text-transform from parent. */
button, input, optgroup, select, textarea { -webkit-appearance: none; /* 1 */ appearance: none; vertical-align: middle; color: inherit; font: inherit; background: transparent; padding: 0; margin: 0; border-radius: 0; text-align: inherit; text-transform: inherit; /* 2 */ }

/** Correct cursors for clickable elements. */
button, [type="button"], [type="reset"], [type="submit"] { cursor: pointer; }

button:disabled, [type="button"]:disabled, [type="reset"]:disabled, [type="submit"]:disabled { cursor: default; }

/** Improve outlines for Firefox and unify style with input elements & buttons. */
:-moz-focusring { outline: auto; }

select:disabled { opacity: inherit; }

/** Remove padding */
option { padding: 0; }

/** Reset to invisible */
fieldset { margin: 0; padding: 0; min-width: 0; }

legend { padding: 0; }

/** Add the correct vertical alignment in Chrome, Firefox, and Opera. */
progress { vertical-align: baseline; }

/** Remove the default vertical scrollbar in IE 10+. */
textarea { overflow: auto; }

/** Correct the cursor style of increment and decrement buttons in Chrome. */
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }

/** Correct the outline style in Safari. */
[type="search"] { outline-offset: -2px; /* 1 */ }

/** Remove the inner padding in Chrome and Safari on macOS. */
[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

/** 1. Correct the inability to style clickable types in iOS and Safari. 2. Fix font inheritance. */
::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }

/** Fix appearance for Firefox */
[type="number"] { -moz-appearance: textfield; }

/** Clickable labels */
label[for] { cursor: pointer; }

/* Interactive */
/* ============================================ */
/* Add the correct display in Edge, IE 10+, and Firefox. */
details { display: block; }

/* Add the correct display in all browsers. */
summary { display: list-item; }

/* Remove outline for editable content. */
[contenteditable]:focus { outline: auto; }

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table { border-color: inherit; /* 1 */ border-collapse: collapse; }

caption { text-align: left; }

td, th { vertical-align: top; padding: 0; }

th { text-align: left; font-weight: bold; }

html { font-size: 11px; background: #fff; }

/*
.anc-sec{
	padding-top: 150px;
	margin-top: -150px;
	@media screen and (max-width: 768px) {
		padding-top: 80px;
		margin-top: -80px;
	}
}
*/
body { font-family: "Shippori Mincho", serif; font-weight: 400; font-style: normal; background: #fff; color: #222; -webkit-box-sizing: border-box; box-sizing: border-box; }
body::before { content: ""; width: 100%; height: 100%; position: fixed; top: 0; left: 0; display: block; z-index: 0; background-image: url("../img/common/background_texture.webp"); background-size: cover; background-repeat: no-repeat; background-position: center center; }
body *, body *:before, body *:after { -webkit-box-sizing: border-box; box-sizing: border-box; }

a { color: #222; text-decoration: none; transition: 200ms linear; }
a[href*="tel:"] { pointer-events: none; }
@media screen and (max-width: 768px) { a { pointer-events: initial; } }

.aw { display: inline-block; }

.note, .cap { font-size: 11px; line-height: 1.8; }

.pc { display: block !important; }
@media screen and (max-width: 768px) { .pc { display: none !important; } }

.sp { display: none !important; }
@media screen and (max-width: 768px) { .sp { display: block !important; } }

.gnav ul li { display: inline-block; }
.gnav ul li .soon { display: inline-block; }
.gnav ul li .soon .txt { opacity: .3; }
.gnav ul li .txt { font-size: 1.4rem; line-height: 1; }
.gnav ul li a .en, .gnav ul li .soon .en { display: none; }

.en { font-family: "Oswald", sans-serif; font-optical-sizing: auto; font-weight: 500; font-style: normal; letter-spacing: 0.05em; }

.en2 { font-family: "Cormorant Garamond", serif; font-optical-sizing: auto; font-weight: bold; font-style: normal; letter-spacing: 0.05em; }

.gothic { font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; }

.page-ttl { padding: 10rem 0 4rem; font-size: 1.6rem; font-weight: bold; line-height: 1.5; text-align: center; position: relative; }
@media screen and (max-width: 1200px) { .page-ttl { padding: 6rem 0 4rem; } }
@media screen and (max-width: 768px) { .page-ttl { padding: 6rem 0 3rem; font-size: 1.4rem; } }

/* ================== header ================== */
#header { width: 100%; position: fixed; top: 0; left: 0; z-index: 99; }
#header::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: url("../img/common/background_texture.webp"); background-size: cover; background-repeat: no-repeat; background-position: center center; opacity: 0; transition: 0.4s linear 0s opacity; }
#header.bg::before { opacity: 1; }
#header .header-inner img { width: 100%; height: auto; }
#header .header-inner a { display: block; }
#header .header-inner .header-btns { position: absolute; top: 2.3rem; /*right: 7rem;*/ right: 6rem; z-index: 1; }
#header .header-inner .header-btns ul li { display: inline-block; margin-right: 1rem; }
#header .header-inner .header-btns ul li:last-of-type { margin-right: 0; }
#header .header-inner .header-btns ul li a { color: #222; font-size: 1.4rem; line-height: 1; position: relative; }
#header .header-inner .header-btns ul li.top, #header .header-inner .header-btns ul li.outline, #header .header-inner .header-btns ul li.map { position: relative; margin-right: 2rem; padding-right: 1rem; font-size: 0.8rem; font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; }
#header .header-inner .header-btns ul li.top::after, #header .header-inner .header-btns ul li.outline::after, #header .header-inner .header-btns ul li.map::after { content: ""; width: .7rem; height: .7rem; display: inline-block; border-top: solid 1px #222; border-right: solid 1px #222; position: absolute; right: 0; top: 40%; transform: rotate(45deg) translateY(-50%); }
#header .header-inner .header-btns ul li.ent, #header .header-inner .header-btns ul li.res, #header .header-inner .header-btns ul li.limited { margin-right: 0.5rem; }
#header .header-inner .header-btns ul li.ent a, #header .header-inner .header-btns ul li.res a, #header .header-inner .header-btns ul li.limited a { display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: center; justify-content: center; -webkit-box-align: center; align-items: center; padding: 1.0rem 0; width: 140px; text-align: center; transition: .5s linear; color: #fff; }
#header .header-inner .header-btns ul li.ent a *, #header .header-inner .header-btns ul li.res a *, #header .header-inner .header-btns ul li.limited a * { min-height: 0%; }
#header .header-inner .header-btns ul li.ent a:hover, #header .header-inner .header-btns ul li.res a:hover, #header .header-inner .header-btns ul li.limited a:hover { filter: brightness(120%); }
#header .header-inner .header-btns ul li.ent a img, #header .header-inner .header-btns ul li.res a img, #header .header-inner .header-btns ul li.limited a img { width: 1.5rem; margin-right: .5rem; display: inline-block; vertical-align: middle; }
#header .header-inner .header-btns ul li.ent a .txt, #header .header-inner .header-btns ul li.res a .txt, #header .header-inner .header-btns ul li.limited a .txt { font-size: 1.1rem; display: inline-block; }
#header #line-gnav { padding-bottom: 1rem; position: relative; }
#header #line-gnav .gnav { padding-top: 9.5rem; }
#header #line-gnav .gnav ul { display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: center; justify-content: center; -webkit-box-align: center; align-items: center; gap: 1rem 0; }
#header #line-gnav .gnav ul * { min-height: 0%; }
#header #line-gnav .gnav ul li { display: inline-block; border-right: solid 1px rgba(0, 0, 0, 0.5); border-left: none; /*&.top,*/ /*&.top{
	display: none;
}*/ }
#header #line-gnav .gnav ul li a .txt, #header #line-gnav .gnav ul li .soon .txt { text-align: center; color: #222; padding: 0 1.5rem; transition: .3s linear; }
#header #line-gnav .gnav ul li.outline, #header #line-gnav .gnav ul li.map, #header #line-gnav .gnav ul li.conv { display: none; }
#header #line-gnav .gnav ul li.current a, #header #line-gnav .gnav ul li:hover a { position: relative; }
#header #line-gnav .gnav ul li.current a .txt, #header #line-gnav .gnav ul li:hover a .txt { color: #e7d9a7; }
#header #line-gnav .gnav ul li.current a::before { content: ""; display: block; width: 80%; height: 2px; background-color: #555; position: absolute; bottom: -5px; left: 50%; transform: translateX(-50%); }
#header #line-gnav .gnav ul li:first-child { border-left: solid 1px rgba(0, 0, 0, 0.5); }
@media screen and (max-width: 1200px) { #header #line-gnav .gnav { width: 700px; margin: 0 auto; }
  #header #line-gnav .gnav ul li:nth-child(7) { border-left: solid 1px rgba(0, 0, 0, 0.5); } }
@media screen and (max-width: 960px) { #header .header-inner .header-btns { right: 5.5rem; }
  #header .header-inner .header-btns ul li a { font-size: 1rem; }
  #header .header-inner .header-btns ul li.outline, #header .header-inner .header-btns ul li.map { margin-right: 1rem; padding-right: 0.5rem; }
  #header .header-inner .header-btns ul li.ent, #header .header-inner .header-btns ul li.res, #header .header-inner .header-btns ul li.limited { margin-right: 0.25rem; }
  #header .header-inner .header-btns ul li.ent a, #header .header-inner .header-btns ul li.res a, #header .header-inner .header-btns ul li.limited a { width: 110px; }
  #header .header-inner .header-btns ul li.ent a .txt, #header .header-inner .header-btns ul li.res a .txt, #header .header-inner .header-btns ul li.limited a .txt { font-size: 1rem; } }
@media screen and (max-width: 768px) { #header { padding: 5rem 0 0 0; background-color: #fff; }
  #header::before { display: none; }
  #header .header-inner img { width: 100%; height: auto; }
  #header .header-inner a { display: block; }
  #header .header-inner .header-btns { top: .5rem; }
  #header .header-inner .header-btns { display: none; }
  #header .line-border { display: none; }
  #header #line-gnav { padding-bottom: 0rem; }
  #header #line-gnav .gnav { display: none; } }

#logo { display: inline-block; width: 260px; position: fixed; top: 3rem; left: 3rem; z-index: 99999; }
#logo a { display: block; }
#logo a img { width: 100%; height: auto; }
@media screen and (max-width: 768px) { #logo { top: 1rem; left: .5rem; } }

body.no-scroll { overflow: hidden; }

#sp-btn-area { display: inline-block; position: fixed; top: 2.5rem; right: 1.5rem; z-index: 99999; }
#sp-btn-area .sp-menu { display: block; width: 40px; height: 40px; cursor: pointer; position: relative; transition: margin 0.5s ease-in-out 0s; overflow: hidden; }
#sp-btn-area .sp-menu > div { display: block; width: 100%; height: 2px; background: #222; transition: 0.3s ease-out 0s transform, 0.3s ease-out 0s opacity, 0.3s ease-out 0s position; position: absolute; left: 0%; }
#sp-btn-area .sp-menu > div:first-of-type { top: 10%; }
#sp-btn-area .sp-menu > div:nth-of-type(2) { top: 50%; opacity: 1; }
#sp-btn-area .sp-menu > div:nth-of-type(3) { bottom: 10%; }
#sp-btn-area .sp-menu > div.cross-1 { top: 10%; left: 20%; transform: rotate(45deg); transform-origin: left center; background: transparent; width: 102%; }
#sp-btn-area .sp-menu > div.cross-1::before { content: ""; display: block; transform: scale(0, 1); transform-origin: left center; width: 100%; height: 2px; background-color: #222; transition: 0.3s ease-out 0s transform; }
#sp-btn-area .sp-menu > div.cross-2 { bottom: 10%; left: 15%; transform: rotate(-45deg); transform-origin: left center; background: transparent; width: 102%; }
#sp-btn-area .sp-menu > div.cross-2::before { content: ""; display: block; transform: scale(0, 1); transform-origin: left center; width: 100%; height: 2px; background-color: #222; transition: 0.3s ease-out 0s transform; }
#sp-btn-area .sp-menu.open { margin-right: 20px; }
#sp-btn-area .sp-menu.open div:first-of-type { transform: translateX(100%); }
#sp-btn-area .sp-menu.open div:nth-of-type(2) { transform: scaleX(0); }
#sp-btn-area .sp-menu.open div:nth-of-type(3) { transform: translateX(-100%); }
#sp-btn-area .sp-menu.open div.cross-1::before { transform: scale(1, 1); transition-delay: 0.5s; }
#sp-btn-area .sp-menu.open div.cross-2::before { transform: scale(1, 1); transition-delay: 0.5s; }
@media screen and (max-width: 768px) { #sp-btn-area { top: 1rem; }
  #sp-btn-area .sp-menu { height: 30px; }
  #sp-btn-area .sp-menu.open { margin-right: 0px !important; }
  #sp-btn-area .sp-menu.open > div.cross-1 { width: 80%; left: 17%; }
  #sp-btn-area .sp-menu.open > div.cross-2 { width: 80%; } }

body.bhead #header .header-inner .header-btns ul li a, body.bhead #header .header-inner .header-btns ul li .soon { color: #fff; }
body.bhead #header .header-inner .header-btns ul li.top a, body.bhead #header .header-inner .header-btns ul li.top .soon, body.bhead #header .header-inner .header-btns ul li.outline a, body.bhead #header .header-inner .header-btns ul li.outline .soon, body.bhead #header .header-inner .header-btns ul li.map a, body.bhead #header .header-inner .header-btns ul li.map .soon { color: #000; }
body.bhead #header .header-inner .header-btns ul li.top::after, body.bhead #header .header-inner .header-btns ul li.outline::after, body.bhead #header .header-inner .header-btns ul li.map::after { border-top: solid 1px #000; border-right: solid 1px #000; }
body.bhead #header .line-border { width: 100%; border: 1px solid #000; border-width: 1px 0 2px; position: fixed; top: 8rem; height: 6px; }
body.bhead #header #line-gnav .gnav ul li a .txt, body.bhead #header #line-gnav .gnav ul li .soon .txt { color: #000; }
body.bhead #sp-btn-area .sp-menu span { background: #000; }

#toggle-gnav { display: none; position: fixed; top: 0; left: 0; overflow: hidden; width: 100%; height: 100%; min-height: 100vh; z-index: 999; }
#toggle-gnav::before, #toggle-gnav::after { content: ""; display: block; position: fixed; top: 0%; left: 0%; width: 100%; height: 100%; min-height: 100vh; background-size: cover; background-position: center center; opacity: 1; z-index: 3; }
#toggle-gnav::before { background-image: url("../img/common/background_texture.webp"); }
#toggle-gnav::after { background-image: url("../img/top/img-humanlux-bg.jpg"); mix-blend-mode: multiply; opacity: 0.6; }
#toggle-gnav .toggle-gnav-scroll { width: 100%; height: 100%; overflow-y: hidden; position: relative; z-index: 100; transform: scale(0.7, 0.7); transition: transform 0.5s cubic-bezier(0.04, 0.5, 0.25, 1) 0s; }
#toggle-gnav .toggle-gnav-inner { width: 90%; max-width: 1000px; margin: 0 auto; padding: 15rem 0 10rem; display: flex; flex-direction: column; justify-content: center; align-items: center; position: relative; z-index: 10; }
#toggle-gnav .gnav-ttl { position: relative; z-index: 4; margin-bottom: 5rem; width: 60%; max-width: 480px; }
#toggle-gnav .gnav { display: block; width: 100%; max-width: 1000px; position: relative; z-index: 5; margin-bottom: 5rem; }
#toggle-gnav .gnav ul { display: grid; grid-template-columns: 48% 1fr 48%; }
#toggle-gnav .gnav ul li { margin-bottom: 0.5rem; }
#toggle-gnav .gnav ul li a, #toggle-gnav .gnav ul li .soon { display: flex; flex-direction: row; justify-content: flex-start; align-items: center; padding: 2rem 0 2rem 1rem; background: rgba(255, 255, 255, 0); position: relative; transition: .3s linear; border-bottom: 1px solid #231815; }
#toggle-gnav .gnav ul li a::after, #toggle-gnav .gnav ul li .soon::after { content: ""; display: inline-block; vertical-align: middle; color: #fff; line-height: 1; width: 1rem; height: 1rem; border: 3px solid #231815; border-left: 0; border-bottom: 0; box-sizing: border-box; position: absolute; top: 50%; right: 5%; transform: translateY(-50%) rotate(45deg); opacity: 0.3; }
#toggle-gnav .gnav ul li a .txt, #toggle-gnav .gnav ul li .soon .txt { font-size: 1.4rem; transition: .3s linear; }
#toggle-gnav .gnav ul li a .en, #toggle-gnav .gnav ul li .soon .en { display: block; font-size: 1.8rem; padding-right: 0.5rem; display: inline-block; }
#toggle-gnav .gnav ul li .soon { opacity: 0.3; }
#toggle-gnav .gnav ul li .soon::after { display: none; }
#toggle-gnav .gnav ul li a:hover { background: rgba(255, 255, 255, 0.8); }
#toggle-gnav .gnav ul li a:hover::after { opacity: 1; }
#toggle-gnav .gnav ul li.current a { background: rgba(255, 255, 255, 0.8); }
#toggle-gnav .gnav ul li.current a::after { opacity: 1; }
#toggle-gnav .gnav ul li.top { grid-column: 1/2; grid-row: 1/2; }
#toggle-gnav .gnav ul li.concept { grid-column: 3/4; grid-row: 1/3; }
#toggle-gnav .gnav ul li.concept a { height: 100%; flex-direction: column; justify-content: center; align-items: flex-start; color: #7e191e; }
#toggle-gnav .gnav ul li.concept a .en { margin-bottom: 0.5rem; font-size: 3.5rem; font-family: "Cormorant Garamond", serif; font-optical-sizing: auto; font-weight: bold; font-style: normal; letter-spacing: 0.05em; }
#toggle-gnav .gnav ul li.concept a::before { content: ""; width: 22%; height: 100%; position: absolute; bottom: 0; right: 4.5rem; background-image: url("../img/common/img-gnav-pict-1.png"); background-position: center center; background-size: contain; background-repeat: no-repeat; }
#toggle-gnav .gnav ul li.location { grid-column: 1/2; grid-row: 2/3; }
#toggle-gnav .gnav ul li.access { grid-column: 1/2; grid-row: 3/4; }
#toggle-gnav .gnav ul li.design { grid-column: 3/4; grid-row: 3/4; }
#toggle-gnav .gnav ul li.plan { grid-column: 1/2; grid-row: 4/5; }
#toggle-gnav .gnav ul li.zeh { grid-column: 3/4; grid-row: 4/5; }
#toggle-gnav .gnav ul li.equipment { grid-column: 1/2; grid-row: 5/6; }
#toggle-gnav .gnav ul li.modelroom { grid-column: 3/4; grid-row: 5/6; }
#toggle-gnav .gnav ul li.brand { grid-column: 1/2; grid-row: 6/7; }
#toggle-gnav .gnav ul li.outline { grid-column: 3/4; grid-row: 7/8; }
#toggle-gnav .gnav ul li.map { grid-column: 1/2; grid-row: 7/8; }
#toggle-gnav .gnav ul li.conv, #toggle-gnav .gnav ul li.last { display: none; }
#toggle-gnav .gnav ul li.outline, #toggle-gnav .gnav ul li.map { width: auto; margin-top: 8rem; }
#toggle-gnav .gnav ul li.outline a, #toggle-gnav .gnav ul li.map a { width: auto; background-color: rgba(255, 255, 255, 0); border-radius: 30px; border-bottom: none; padding: 1.0rem 2rem; display: inline-block; }
#toggle-gnav .gnav ul li.outline a .txt, #toggle-gnav .gnav ul li.map a .txt { font-size: 1.4rem; white-space: nowrap; vertical-align: middle; }
#toggle-gnav .gnav ul li.outline a::after, #toggle-gnav .gnav ul li.map a::after { display: none; }
#toggle-gnav .gnav ul li.outline a::before, #toggle-gnav .gnav ul li.map a::before { content: ""; width: 2rem; height: 2rem; margin-right: .5rem; display: inline-block; vertical-align: middle; background-position: center center; background-repeat: no-repeat; background-size: contain; }
#toggle-gnav .gnav ul li.outline.current a, #toggle-gnav .gnav ul li.outline:hover a, #toggle-gnav .gnav ul li.map.current a, #toggle-gnav .gnav ul li.map:hover a { background-color: white; }
#toggle-gnav .gnav ul li.outline a::before { background-image: url("../img/common/icon-outline.png"); }
#toggle-gnav .gnav ul li.map { text-align: right; }
#toggle-gnav .gnav ul li.map a::before { background-image: url("../img/common/icon-map.png"); }
#toggle-gnav .info-txt { position: relative; z-index: 5; margin-bottom: 0; }
#toggle-gnav .conv-area { position: relative; z-index: 5; width: 100%; }
#toggle-gnav.open .toggle-gnav-scroll { overflow-y: scroll; transform: scale(1, 1); }
@media screen and (max-width: 1000px) { #toggle-gnav .gnav-ttl { width: 60%; max-width: 300px; }
  #toggle-gnav .gnav ul li.top { grid-column: 1/4; grid-row: 1/2; }
  #toggle-gnav .gnav ul li.concept { grid-column: 1/4; grid-row: 2/3; }
  #toggle-gnav .gnav ul li.location { grid-column: 1/4; grid-row: 3/4; }
  #toggle-gnav .gnav ul li.access { grid-column: 1/4; grid-row: 4/5; }
  #toggle-gnav .gnav ul li.design { grid-column: 1/4; grid-row: 5/6; }
  #toggle-gnav .gnav ul li.plan { grid-column: 1/4; grid-row: 6/7; }
  #toggle-gnav .gnav ul li.zeh { grid-column: 1/4; grid-row: 7/8; }
  #toggle-gnav .gnav ul li.equipment { grid-column: 1/4; grid-row: 8/9; }
  #toggle-gnav .gnav ul li.modelroom { grid-column: 1/4; grid-row: 9/10; }
  #toggle-gnav .gnav ul li.brand { grid-column: 1/4; grid-row: 10/11; }
  #toggle-gnav .gnav ul li.outline { grid-column: 3/4; grid-row: 11/12; }
  #toggle-gnav .gnav ul li.map { grid-column: 1/2; grid-row: 11/12; } }
@media screen and (max-width: 768px) { #toggle-gnav .gnav ul li.concept a .en { margin-bottom: 0.5rem; font-size: 2.8rem; }
  #toggle-gnav .gnav ul li.concept a::before { width: 16%; background-position: center 100%; }
  #toggle-gnav .gnav ul li.outline, #toggle-gnav .gnav ul li.map { margin-top: 4rem; } }
@media screen and (max-width: 500px) { #toggle-gnav .gnav ul li { margin-bottom: 0; }
  #toggle-gnav .gnav ul li a .txt, #toggle-gnav .gnav ul li .soon .txt { font-size: 1.2rem; }
  #toggle-gnav .gnav ul li a .en, #toggle-gnav .gnav ul li .soon .en { font-size: 1.6rem; }
  #toggle-gnav .gnav ul li.concept a .en { margin-bottom: 0.5rem; font-size: 2.0rem; } }

.gaikan-visual { width: 100%; }
.gaikan-visual .img { mask-image: url("../img/top/img-humanlux-visual-1-mask.png"); mask-size: cover; mask-position: center center; }

/* ================== footer ================== */
.footer-wrap { position: relative; width: 100%; padding: 10rem 0 0; background-color: #fff; }
@media screen and (max-width: 768px) { .footer-wrap { padding: 5rem 0 0; } }

#footer { padding: 8rem 0 12rem 0; }
#footer .gnav { width: 700px; margin: 0 auto; }
#footer .gnav ul { display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: center; justify-content: center; -webkit-box-align: center; align-items: center; gap: 1rem 0; }
#footer .gnav ul * { min-height: 0%; }
#footer .gnav ul li { display: inline-block; border-right: solid 1px rgba(0, 0, 0, 0.5); }
#footer .gnav ul li:first-child, #footer .gnav ul li:nth-child(7) { border-left: solid 1px rgba(0, 0, 0, 0.5); }
#footer .gnav ul li .txt { text-align: center; color: #222; /*padding: 0 3rem;*/ padding: 0 1.5rem; }
#footer .gnav ul li.current a .txt, #footer .gnav ul li:hover a .txt { color: #C2AE68; }
#footer .gnav ul li.current { position: relative; }
#footer .gnav ul li.current a::before { content: ""; display: block; width: 80%; height: 2px; background-color: #555; position: absolute; bottom: -5px; left: 50%; transform: translateX(-50%); }
#footer .gnav ul li.outline, #footer .gnav ul li.map, #footer .gnav ul li.conv { display: none; }
#footer .contact { text-align: center; margin-top: 4rem; }
#footer .contact .tel { display: inline-block; margin: auto; }
#footer .contact .tel .contact-txt { display: block; width: 100%; padding-bottom: 0.5rem; text-align: left; font-size: 1.2rem; line-height: 1.8; }
#footer .contact .tel .box { display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: space-between; -webkit-box-align: stretch; align-items: stretch; flex-direction: column; }
#footer .contact .tel .box * { min-height: 0%; }
#footer .contact .tel .box .tel-no { display: -webkit-box; display: flex; flex-wrap: wrap; align-content: center; margin-bottom: 0.5rem; }
#footer .contact .tel .box .tel-no * { min-height: 0%; }
#footer .contact .tel .box .tel-no img { display: inline-block; height: 4.5rem; width: auto; }
#footer .contact .tel .box .tel-no .txt { display: inline-block; font-size: 4rem; text-align: left; }
#footer .contact .tel .box .contact-time { display: inline-block; font-size: 1.0rem; line-height: 1.8; text-align: left; }
#footer .contact .holiday { /*margin-top: 1rem;*/ margin: 1rem auto 0; text-align: center; font-size: 1.2rem; font-weight: bold; line-height: 1.4; color: #a13627; }
#footer .contact .holiday .txt { display: inline-block; text-align: left; }
#footer .company { margin-top: 4rem; }
#footer .company ul { display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: center; justify-content: center; -webkit-box-align: center; align-items: center; gap: 4rem; padding: 0 3rem; }
#footer .company ul * { min-height: 0%; }
#footer .company ul li { display: inline-block; }
#footer .company ul li a { display: inline-block; }
#footer .company ul li .txt { font-size: 1.2rem; line-height: 1; padding-bottom: .5rem; }
#footer .company ul li img { height: 4rem; width: auto; }
#footer .company ul li:last-of-type { margin-right: 0; }
@media screen and (max-width: 1280px) { #footer .company ul li img { height: 3rem; } }
@media screen and (max-width: 1000px) { #footer .company ul li img { height: 5vw; } }
@media screen and (max-width: 768px) { #footer { padding: 0 0 12rem; }
  #footer .gnav { display: none; }
  #footer .contact .tel { display: block; width: 90%; max-width: 900px; margin-left: auto; margin-right: auto; }
  #footer .contact .tel .contact-txt { text-align: center; }
  #footer .contact .tel .box { margin: 0 auto; display: inline-block; }
  #footer .contact .tel .box .tel-no { width: 100%; display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: center; justify-content: center; -webkit-box-align: center; align-items: center; }
  #footer .contact .tel .box .tel-no * { min-height: 0%; }
  #footer .contact .tel .box .contact-time { display: block; margin-left: 0; margin-top: 1rem; text-align: center; }
  #footer .company ul li img { height: 3rem; } }
@media screen and (max-width: 550px) { #footer .contact .holiday { max-width: 296px; }
  #footer .contact .tel .box .tel-no img { width: 80%; height: auto; }
  #footer .company ul { flex-direction: column; }
  #footer .company ul li { width: 100%; }
  #footer .company ul li img { height: 10vw; }
  #footer .company ul li a { margin: auto; text-align: left; } }
@media screen and (max-width: 480px) { #footer .contact .tel .box .tel-no .txt { font-size: 3.5rem; } }

/* ================== contents ================== */
.txt { font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; font-size: 1.42rem; line-height: 1.7; }

.mb3 { margin-bottom: 3rem; }
@media screen and (max-width: 768px) { .mb3 { margin-bottom: 1.5rem; } }

.mb4 { margin-bottom: 4rem; }
@media screen and (max-width: 768px) { .mb4 { margin-bottom: 2rem; } }

.mb5 { margin-bottom: 5rem; }
@media screen and (max-width: 768px) { .mb5 { margin-bottom: 2.5rem; } }

.mv { width: 100%; }

.inner { width: 90%; max-width: 900px; margin-left: auto; margin-right: auto; }

.inner2 { width: 90%; max-width: 1100px; margin-left: auto; margin-right: auto; position: relative; z-index: 1; }

.info-txt { margin-bottom: 4.5rem; }
.info-txt .txt { margin-top: 1rem; text-align: center; font-size: 1.42rem; line-height: 1.4; color: #000; letter-spacing: .05em; }
.info-txt .txt.t-size-l { font-size: 3.82rem; font-weight: bold; }
.info-txt .txt.t-size-s { font-size: 1.1rem; line-height: 2; }
@media screen and (max-width: 768px) { .info-txt .txt.t-size-l { font-size: 2.8rem; margin-bottom: 1rem; } }
@media screen and (max-width: 480px) { .info-txt .txt.t-size-l { font-size: 2.2rem; margin-bottom: 2rem; } }

.conv { padding: 3rem 0; text-align: center; }
.conv .inner { max-width: 900px; padding: 0 2rem; }
.conv .conv-ttl { font-size: 2rem; line-height: 1.8; color: #A27500; }
.conv .conv-ttl .txt-s { font-size: 1.4rem; }
.conv .conv-ttl [data-note] { position: relative; }
.conv .conv-ttl [data-note]::before { content: attr(data-note); position: absolute; top: -1em; left: 0; right: 0; margin: auto; text-align: right; font-size: 0.5em; }
.conv .conv-txt { margin-top: 2rem; margin-bottom: 3rem; color: #222; font-size: 4rem; line-height: 1.8; }
.conv .conv-txt .txt { margin-top: 1rem; text-align: center; font-size: 4rem; line-height: 1.4; color: #A27500; letter-spacing: .05em; }
.conv .conv-txt .txt:first-child { margin-top: 0; }
.conv .conv-txt .txt .txt-s { font-size: 1.4rem; }
.conv [data-note] { position: relative; }
.conv [data-note]::before { content: attr(data-note); position: absolute; top: -0.8em; left: 0; right: 0; margin: auto; text-align: right; font-size: 0.5em; }
.conv .conv-btns { display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: space-between; -webkit-box-align: stretch; align-items: stretch; width: 90%; max-width: 1140px; margin: 2rem auto 0; }
.conv .conv-btns * { min-height: 0%; }
.conv .conv-btns .btn { width: 32.5%; }
.conv .conv-btns .btn a { display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: center; justify-content: center; -webkit-box-align: center; align-items: center; color: #fff; line-height: 1; padding: 2rem 0; }
.conv .conv-btns .btn a * { min-height: 0%; }
.conv .conv-btns .btn a .txt { color: #fff; font-size: 2rem; line-height: 1; }
.conv .conv-btns .btn.en2 a { padding: 1.5rem 0; font-size: 3rem !important; }
.conv .ent a { /*background: rgb(170,152,72);
background: -moz-linear-gradient(-10deg, rgba(170,152,72,1) 0%, rgba(96,85,0,1) 100%);
background: -webkit-linear-gradient(-10deg, rgba(170,152,72,1) 0%, rgba(96,85,0,1) 100%);
background: linear-gradient(-10deg, rgba(170,152,72,1) 0%, rgba(96,85,0,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#aa9848",endColorstr="#605500",GradientType=1);*/ background-color: #231815; }
.conv .res a { /*background: rgb(161,100,39);
background: -moz-linear-gradient(-10deg, rgba(161,100,39,1) 0%, rgba(89,46,0,1) 100%);
background: -webkit-linear-gradient(-10deg, rgba(161,100,39,1) 0%, rgba(89,46,0,1) 100%);
background: linear-gradient(-10deg, rgba(161,100,39,1) 0%, rgba(89,46,0,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#a16427",endColorstr="#592e00",GradientType=1);*/ background-color: #9b7b38; }
.conv .limited a { /*background: rgb(161,54,39);
background: -moz-linear-gradient(-10deg, rgba(161,54,39,1) 0%, rgba(89,27,0,1) 100%);
background: -webkit-linear-gradient(-10deg, rgba(161,54,39,1) 0%, rgba(89,27,0,1) 100%);
background: linear-gradient(-10deg, rgba(161,54,39,1) 0%, rgba(89,27,0,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#a13627",endColorstr="#591b00",GradientType=1);*/ background-color: #9b7b38; }
@media screen and (max-width: 900px) { .conv .inner { padding: inherit; } }
@media screen and (max-width: 768px) { .conv .conv-btns .btn { width: 100%; max-width: 320px; margin: 1rem auto 0 auto; }
  .conv .conv-btns .btn .a .txt { font-size: 1.2rem; } }
@media screen and (max-width: 480px) { .conv .conv-ttl .note { display: block; }
  .conv .conv-btns .btn a { padding: 2rem 0; }
  .conv .conv-btns .btn a .txt { font-size: 1.4rem; }
  .conv .conv-btns .btn.en2 a { padding: 1.5rem 0; font-size: 2rem !important; } }

.conv-area { margin-top: 1rem; }
.conv-area .conv { padding: 0; }
.conv-area .conv .conv-btns { width: 100%; max-width: 720px; }
.conv-area .conv .conv-btns .btn { width: 49%; }
.conv-area .conv .conv-btns .btn a { font-size: 4rem; text-align: center; }
.conv-area .note { margin-top: 2rem; text-align: center; }
@media screen and (max-width: 768px) { .conv-area .conv .conv-btns .btn { width: 100%; } }

.res a, .limited a { display: block; color: #fff; transition: .3s ease-out; }
.res a:hover, .limited a:hover { filter: brightness(120%); }

.ent a { display: block; color: #fff; transition: .3s ease-out background-color; /*background: rgb(170,152,72);
background: -moz-linear-gradient(-10deg, rgba(170,152,72,1) 0%, rgba(96,85,0,1) 100%);
background: -webkit-linear-gradient(-10deg, rgba(170,152,72,1) 0%, rgba(96,85,0,1) 100%);
background: linear-gradient(-10deg, rgba(170,152,72,1) 0%, rgba(96,85,0,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#aa9848",endColorstr="#605500",GradientType=1);*/ background-color: #231815; color: #fff; }
.ent a:hover { background-color: #4C4C4C; }

.res a { /*background: rgb(161,100,39);
background: -moz-linear-gradient(-10deg, rgba(161,100,39,1) 0%, rgba(89,46,0,1) 100%);
background: -webkit-linear-gradient(-10deg, rgba(161,100,39,1) 0%, rgba(89,46,0,1) 100%);
background: linear-gradient(-10deg, rgba(161,100,39,1) 0%, rgba(89,46,0,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#a16427",endColorstr="#592e00",GradientType=1);*/ background-color: #9b7b38; color: #fff; }

.limited a { /*background: rgb(161,54,39);
background: -moz-linear-gradient(-10deg, rgba(161,54,39,1) 0%, rgba(89,27,0,1) 100%);
background: -webkit-linear-gradient(-10deg, rgba(161,54,39,1) 0%, rgba(89,27,0,1) 100%);
background: linear-gradient(-10deg, rgba(161,54,39,1) 0%, rgba(89,27,0,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#a13627",endColorstr="#591b00",GradientType=1);*/ background-color: #9b7b38; color: #fff; }

.img { position: relative; }
.img img { width: 100%; height: auto; }
.img .cap { line-height: 1.2; position: absolute; right: 10px; bottom: 10px; display: inline-block; text-align: right; }
.img .cap.w { color: #fff; text-shadow: 0 0 3px #000; }
.img .cap.l { text-align: left; right: auto; left: 10px; }
.img .cap.out { position: relative; right: auto; bottom: auto; display: block; margin-top: 5px; }

.page-note { width: 100%; margin: 0; background: #fff; padding-top: 8rem; }
.page-note .note { font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; width: 90%; max-width: 900px; margin-left: auto; margin-right: auto; max-width: 1140px; }
@media screen and (max-width: 768px) { .page-note { /*padding: 8rem 0;*/ } }

h3.pagettl { padding-top: 6rem; font-size: 3.6rem; line-height: 1.8; letter-spacing: .2em; color: #938033; text-align: center; }
h3.pagettl + .maincopy { margin-top: 4rem; text-align: center; }
h3.pagettl + .maincopy + .lead { text-align: center; }
@media screen and (max-width: 768px) { h3.pagettl { font-size: 3rem; } }

.maincopy { font-size: 2rem; line-height: 1.6; letter-spacing: .1em; }
.maincopy + .lead { margin-top: 4rem; }

.page-l-copy { font-size: 2.8rem; letter-spacing: 0.3rem; font-weight: 500; line-height: 1.7; color: #77623c; font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; font-feature-settings: "palt"; }
.page-l-copy.center { text-align: center; }
@media screen and (max-width: 768px) { .page-l-copy { font-size: 2rem; letter-spacing: 0.2rem; } }
@media screen and (max-width: 480px) { .page-l-copy { font-size: 5vw; letter-spacing: 0.6vw; } }

.contents-top { padding: 5rem 0; }
@media screen and (max-width: 480px) { .contents-top { padding: 3.5rem 0; } }

.subnav { width: 90%; margin: auto; max-width: 600px; font-size: 10px; }
@media screen and (max-width: 480px) { .subnav { font-size: 9px; } }
.subnav ul { display: flex; padding-bottom: 6em; }
.subnav ul li { width: 50%; }
.subnav ul li a { display: block; cursor: pointer; box-sizing: border-box; width: 100%; height: 5.5em; border: 1px solid #807f81; border-top: 1px solid rgba(128, 127, 129, 0); border-left: none; position: relative; transition: 0.5s background; }
.subnav ul li a .sn-txt { color: #898989; font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; font-size: 1.8em; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); transition: 0.5s color; white-space: nowrap; }
.subnav ul li a:hover, .subnav ul li a.current { background: rgba(255, 255, 255, 0.5); }
.subnav ul li a:hover .sn-txt, .subnav ul li a.current .sn-txt { color: #000; }
.subnav ul li:nth-child(1) a { border-left: 1px solid rgba(128, 127, 129, 0); }
.subnav ul li:nth-child(1) a.current { background: rgba(255, 255, 255, 0.5); border-left: 1px solid #807f81; border-top: 1px solid #807f81; border-bottom: 1px solid rgba(128, 127, 129, 0); }
.subnav ul li:nth-child(2) a { border-right: 1px solid rgba(128, 127, 129, 0); }
.subnav ul li:nth-child(2) a.current { border-right: 1px solid #807f81; border-top: 1px solid #807f81; border-bottom: 1px solid rgba(128, 127, 129, 0); }

.subnav-s { width: 90%; margin: auto; font-size: 10px; }
@media screen and (max-width: 480px) { .subnav-s { font-size: 9px; } }
.subnav-s ul { display: flex; justify-content: space-between; padding-top: 4em; padding-bottom: 10em; }
.subnav-s ul li a { display: block; cursor: pointer; box-sizing: border-box; width: 100%; height: 5.5em; position: relative; transition: 0.5s background; background: #d6d7d7; }
.subnav-s ul li a .sn-txt { color: #807f81; font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; font-size: 1.8em; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); transition: 0.5s color; white-space: nowrap; text-align: center; }
.subnav-s ul li a:hover, .subnav-s ul li a.current { background: #619e91; }
.subnav-s ul li a:hover .sn-txt, .subnav-s ul li a.current .sn-txt { color: #fff; }
.subnav-s ul li a.current:before, .subnav-s ul li a.current:after { content: ""; height: 1px; width: 100%; position: absolute; left: 0; background: #619e91; }
.subnav-s ul li a.current:before { top: -4px; }
.subnav-s ul li a.current:after { bottom: -4px; }

.lead { font-size: 1.4rem; line-height: 1.8; }

.contentslist-wrap { position: relative; width: 100%; }
.contentslist-wrap .inner { max-width: 1170px; padding: 10rem 0; }
.contentslist-wrap .contentslist-ttl { text-align: center; margin-bottom: 7rem; font-size: 3.0rem; }
.contentslist-wrap .btn-list { width: 100%; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; gap: 1.5rem 0; }
.contentslist-wrap .btn-cls { width: 18.8034188034%; background-color: #000; position: relative; background-position: center center; background-size: cover; overflow: hidden; /**&.btn07{
	background-image: url("../img/common/img-contents-btn-7.jpg");
}**/ }
.contentslist-wrap .btn-cls .more { width: 50%; margin: 10% auto 0; overflow: hidden; }
.contentslist-wrap .btn-cls .more img { width: 100%; height: auto; }
.contentslist-wrap .btn-cls .more .more-parts-1 { width: 30px; margin-bottom: -3px; }
.contentslist-wrap .btn-cls .more .more-parts-2 { width: 300%; margin-left: 0%; display: flex; justify-content: space-between; align-items: flex-start; margin-left: -200%; transition: margin-left 0.5s cubic-bezier(0.58, 0.04, 0.4, 1) 0s; }
.contentslist-wrap .btn-cls .more .more-parts-2::before, .contentslist-wrap .btn-cls .more .more-parts-2::after { content: ""; width: 33.3333%; padding-bottom: 4%; background-image: url("../img/common/img-contents-btn-arrow.png"); background-position: right center; background-repeat: no-repeat; background-size: contain; }
.contentslist-wrap .btn-cls .more .more-parts-3 { border: 1px solid #fff; border-radius: 20px; padding: 4% 14%; }
.contentslist-wrap .btn-cls .btn-inner { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: #fff; font-size: 0.7rem; text-align: center; width: 100%; filter: drop-shadow(0 0 20px black); }
.contentslist-wrap .btn-cls .btn-inner .en { font-size: 3em; margin-bottom: 1rem; line-height: 1.0; margin-bottom: 1rem; }
.contentslist-wrap .btn-cls .btn-inner .gothic { font-size: 1.5em; }
.contentslist-wrap .btn-cls .btn-inner .txt-s { font-size: 1.4em; vertical-align: middle; }
.contentslist-wrap .btn-cls a, .contentslist-wrap .btn-cls .soon { display: block; width: 100%; padding-bottom: 70.4545454545%; }
.contentslist-wrap .btn-cls a::before { content: ""; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); position: absolute; top: 0; left: 0; display: block; transition: 0.3s cubic-bezier(0.58, 0.04, 0.4, 1) 0s transform; }
.contentslist-wrap .btn-cls a:hover::before { transform: translateX(100%); }
.contentslist-wrap .btn-cls a:hover .more .more-parts-2 { margin-left: -0%; }
.contentslist-wrap .btn-cls.wide { width: 100%; }
.contentslist-wrap .btn-cls.wide a, .contentslist-wrap .btn-cls.wide .soon { padding-bottom: 48.7329434698%; }
.contentslist-wrap .btn-cls.btn01 { background-image: url("../img/common/img-contents-btn-1.jpg"); }
.contentslist-wrap .btn-cls.btn02 { background-image: url("../img/common/img-contents-btn-2.jpg"); }
.contentslist-wrap .btn-cls.btn03 { background-image: url("../img/common/img-contents-btn-3.jpg"); }
.contentslist-wrap .btn-cls.btn04 { background-image: url("../img/common/img-contents-btn-4.jpg"); }
.contentslist-wrap .btn-cls.btn05 { background-image: url("../img/common/img-contents-btn-5.jpg"); }
.contentslist-wrap .btn-cls.btn06 { background-image: url("../img/common/img-contents-btn-6.jpg"); }
.contentslist-wrap .btn-cls.btn07 { background-image: url("../img/common/img-contents-btn-8.jpg"); }
.contentslist-wrap .btn-cls.btn08 { background-image: url("../img/common/img-contents-btn-8.jpg"); }
.contentslist-wrap .btn-cls.btn09 { background-image: url("../img/common/img-contents-btn-9.jpg"); }
.contentslist-wrap .btn-cls.btn10 { background-image: url("../img/common/img-contents-btn-10.jpg"); }
@media screen and (max-width: 1200px) { .contentslist-wrap .contentslist-ttl { font-size: 2.8rem; margin-bottom: 3.6rem; } }
@media screen and (max-width: 1000px) { .contentslist-wrap .btn-list { justify-content: center; gap: 1.5rem 2%; }
  .contentslist-wrap .btn-cls { width: 22.2222222222%; }
  .contentslist-wrap .contentslist-ttl { font-size: 2.6rem; margin-bottom: 3rem; } }
@media screen and (max-width: 768px) { .contentslist-wrap .inner { padding: 5rem 0; }
  .contentslist-wrap .btn-list { justify-content: center; gap: 1.5rem 2%; }
  .contentslist-wrap .btn-cls { width: 28.2051282051%; }
  .contentslist-wrap .contentslist-ttl { font-size: 2.4rem; margin-bottom: 2.0rem; } }
@media screen and (max-width: 550px) { .contentslist-wrap .btn-cls { width: 48%; } }

/* ================== main-master ================== */
.main-master { position: relative; overflow: hidden; }
@keyframes mainCartenMotionLeft { 0% { transform: translateY(0%); opacity: 1; }
  100% { transform: translateY(-100%); opacity: 1; } }
@keyframes mainCartenMotionRight { 0% { transform: translateY(0%); opacity: 1; }
  100% { transform: translateY(100%); opacity: 1; } }
@keyframes mainlogoMotion { 0% { transform: translateY(20%); opacity: 0; }
  100% { transform: translateY(0%); opacity: 1; } }
@keyframes mainEntxtMotion { 0% { transform: scale(2, 2); opacity: 0; }
  100% { transform: scale(1, 1); opacity: 1; } }
@keyframes mainJptxtMotion { 0% { transform: translateY(-100%); opacity: 0; }
  100% { transform: translateY(0%); opacity: 1; } }
.main-master .main-body { position: relative; z-index: 0; }
.main-master .main-name { position: absolute; left: 50%; top: 45%; transform: translate(-50%, -50%); text-align: center; color: #fff; z-index: 2; }
.main-master .main-name .main-logo img { width: 10vw; height: auto; background-blend-mode: screen; }
.main-master .main-name .en-txt { display: block; font-family: "Oswald", sans-serif; font-optical-sizing: auto; font-weight: 500; font-style: normal; letter-spacing: 0.05em; font-size: 5vw; letter-spacing: 0.5vw; margin-top: 3.5vw; }
.main-master .main-name .jp-txt { display: block; font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; font-size: 1.6vw; margin-top: 3.5vw; letter-spacing: 0.5vw; }
.main-master:not(.concept-mode)::before, .main-master:not(.concept-mode)::after { content: ""; position: absolute; width: 100%; height: 50%; background-color: rgba(0, 0, 0, 0.5); z-index: 1; }
.main-master:not(.concept-mode)::before { left: 0%; top: 0; }
.main-master:not(.concept-mode)::after { right: 0%; bottom: 0; }
.main-master:not(.concept-mode) .main-name { mix-blend-mode: screen; }
.main-master:not(.concept-mode) .main-name .main-logo { display: block; transform: translateY(50%); }
.main-master:not(.concept-mode) .main-name .main-logo img { width: 12vw; }
.main-master:not(.concept-mode) .main-name .en-txt { margin-top: 3.0vw; }
.main-master:not(.concept-mode).aos-animate::before { animation: mainCartenMotionLeft  1s ease-out 0.5s forwards; }
.main-master:not(.concept-mode).aos-animate::after { animation: mainCartenMotionRight 1s ease-out 0.5s forwards; }
.main-master:not(.concept-mode).aos-animate .main-name .main-logo { animation: mainlogoMotion 2s cubic-bezier(0, 0, 0.12, 1) 0s forwards; }
.main-master:not(.concept-mode).aos-animate .main-name .en-txt { animation: mainEntxtMotion 2s cubic-bezier(0, 0, 0.12, 1) 0s forwards; }
.main-master:not(.concept-mode).aos-animate .main-name .jp-txt { animation: mainJptxtMotion 2s cubic-bezier(0, 0, 0.12, 1) 0s forwards; }
@media screen and (max-width: 480px) { .main-master:not(.concept-mode) .main-name .main-logo img { width: 18vw; } }
.main-master .cap { font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; }
@media screen and (max-width: 768px) { .main-master .main-body { display: block; width: 140%; margin-left: -20%; margin-right: -20%; } }
@media screen and (max-width: 480px) { .main-master .main-body { width: 260%; margin-left: -80%; margin-right: -80%; }
  .main-master .main-name .main-logo img { width: 16vw; }
  .main-master .main-name .en-txt { font-size: 8vw; letter-spacing: 1vw; }
  .main-master .main-name .jp-txt { font-size: 2.2vw; letter-spacing: 1vw; } }

/* ================== limited common ================== */
.page-name { text-align: center; margin-top: 100px; }
.page-name .en img { height: 22px; width: auto; }
.page-name .jp { font-size: 35px; font-weight: 600; margin-top: 20px; font-feature-settings: "palt"; letter-spacing: 0.02em; line-height: 1.4; }

.limited-footer-nav { font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif"; margin-top: 80px; }
.limited-footer-nav .return-to-limited-top { max-width: 280px; margin-inline: auto; }
.limited-footer-nav .return-to-limited-top a { /*background: rgb(161,54,39);
background: -moz-linear-gradient(-10deg, rgba(161,54,39,1) 0%, rgba(89,27,0,1) 100%);
background: -webkit-linear-gradient(-10deg, rgba(161,54,39,1) 0%, rgba(89,27,0,1) 100%);
background: linear-gradient(-10deg, rgba(161,54,39,1) 0%, rgba(89,27,0,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#a13627",endColorstr="#591b00",GradientType=1);*/ background-color: #9b7b38; text-align: center; font-size: 18px; display: block; color: #fff; padding: 15px 10px; }
.limited-footer-nav .return-to-limited-top a:hover { filter: brightness(110%); }
.limited-footer-nav .page { font-family: "Oswald", sans-serif; font-optical-sizing: auto; font-weight: 500; font-style: normal; letter-spacing: 0.05em; margin-top: 40px; }
.limited-footer-nav .page ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 20px; font-size: 16px; }
.limited-footer-nav .page ul li { display: flex; align-items: center; }
.limited-footer-nav .page ul li::after { display: block; background-color: #000; content: ''; height: 100%; width: 1px; margin-left: 20px; }
.limited-footer-nav .page ul li:first-child::before { display: block; background-color: #000; content: ''; height: 100%; width: 1px; margin-right: 20px; }
.limited-footer-nav .page ul li a:hover { color: #C2AE68; }

@media screen and (max-width: 768px) { .page-name .en img { height: 20px; }
  .page-name .jp { font-size: 30px; }
  .limited-footer-nav .page ul { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px 0; }
  .limited-footer-nav .page ul li { position: relative; justify-content: center; text-align: center; }
  .limited-footer-nav .page ul li::after { position: absolute; right: 0; top: 0; margin-left: 0; }
  .limited-footer-nav .page ul li:first-child::before { display: none; margin-right: 0; }
  .limited-footer-nav .page ul li:nth-child(3n+1)::before { display: block; background-color: #000; content: ''; height: 100%; width: 1px; left: 0; top: 0; position: absolute; right: 0; top: 0; } }
@media screen and (max-width: 480px) { .page-name { margin-top: 40px; }
  .page-name .en img { height: 16px; }
  .page-name .jp { font-size: 24px; margin-top: 30px; }
  .limited-footer-nav .return-to-limited-top { max-width: 240px; }
  .limited-footer-nav .return-to-limited-top a { font-size: 16px; padding: 10px; }
  .limited-footer-nav .page { margin-top: 30px; }
  .limited-footer-nav .page ul { grid-template-columns: repeat(2, 1fr); font-size: 14px; }
  .limited-footer-nav .page ul li:nth-child(3n+1)::before { display: none; }
  .limited-footer-nav .page ul li:nth-child(2n+1)::before { display: block; background-color: #000; content: ''; height: 100%; width: 1px; left: 0; top: 0; position: absolute; right: 0; top: 0; } }
