@charset "UTF-8";
/*! destyle.css v1.0.15 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model */
/* ============================================ */
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:wght@400;600&family=Noto+Serif+JP:wght@300;400;500;600&display=swap");
* { box-sizing: border-box; }

::before, ::after { box-sizing: inherit; }

/* 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; line-height: 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: 0; border-top: 1px solid; 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] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ 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; }

/* Embedded content */
/* ============================================ */
/** Remove the border on images inside links in IE 10. */
img { border-style: none; vertical-align: bottom; }

embed, object, iframe { border: 0; vertical-align: bottom; }

/* Forms */
/* ============================================ */
/** Reset form fields to make them styleable */
button, input, optgroup, select, textarea { -webkit-appearance: none; appearance: none; vertical-align: middle; color: inherit; font: inherit; border: 0; background: transparent; padding: 0; margin: 0; outline: 0; border-radius: 0; text-align: inherit; }

/** Reset radio and checkbox appearance to preserve their look in iOS. */
[type="checkbox"] { -webkit-appearance: checkbox; appearance: checkbox; }

[type="radio"] { -webkit-appearance: radio; appearance: radio; }

/** Show the overflow in IE. 1. Show the overflow in Edge. */
button, input { /* 1 */ overflow: visible; }

/** Remove the inheritance of text transform in Edge, Firefox, and IE. 1. Remove the inheritance of text transform in Firefox. */
button, select { /* 1 */ text-transform: none; }

/** Correct the inability to style clickable types in iOS and Safari. */
button, [type="button"], [type="reset"], [type="submit"] { cursor: pointer; -webkit-appearance: none; appearance: none; }

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

/** Remove the inner border and padding in Firefox. */
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }

/** Restore the focus styles unset by the previous rule. */
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }

/** Remove arrow in IE10 & IE11 */
select::-ms-expand { display: none; }

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

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

/** 1. Correct the text wrapping in Edge and IE. 2. Correct the color inheritance from `fieldset` elements in IE. 3. Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers. */
legend { color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ }

/** 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; }

/** 1. 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. Change font properties to `inherit` in Safari. */
::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }

/** 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] { outline: none; }

/* Table */
/* ============================================ */
table { border-collapse: collapse; border-spacing: 0; }

caption { text-align: left; }

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

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

/* Misc */
/* ============================================ */
/** Add the correct display in IE 10+. */
template { display: none; }

/** Add the correct display in IE 10. */
[hidden] { display: none; }

/******************************************************

base

******************************************************/
html { font-size: 10px; }

body { font-family: "Noto Serif JP", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "Sawarabi Mincho", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif; font-weight: 400; -webkit-font-smoothing: antialiased; background: #fff; color: #333; font-size: 1.4rem; }

.block-catch { font-family: 'EB Garamond', serif; font-weight: 300; font-style: normal; letter-spacing: 0.05em; -webkit-font-smoothing: antialiased; }

a { color: #333333; text-decoration: none; transition: 200ms linear; }
a[href*="tel:"] { pointer-events: none; }

.aw { display: inline-block; }

.note { font-size: 12px; line-height: 1.6; }

.sp { display: none !important; }

ul { letter-spacing: -0.4em; font-size: 0; }
ul li { letter-spacing: 0; font-size: 1rem; }

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

@media screen and (max-width: 640px) { body { padding-bottom: 50px; }
  a[href*="tel:"] { pointer-events: initial; }
  .sp { display: block !important; }
  .pc { display: none !important; } }
/******************************************************

daiwahouse_common

******************************************************/
#daiwahouse_head { padding: 10px 0; border-bottom: 1px solid #eaeaea; }
#daiwahouse_head .daiwahouse_inner { max-width: 1300px; width: 100%; margin: auto; overflow: hidden; }
#daiwahouse_head .yokoku { margin-top: .5rem; border-top: 1px solid #ddd; }
#daiwahouse_head .yokoku .yokoku-inner { max-width: 1000px; width: 94%; margin: auto; overflow: hidden; position: relative; padding: 10px 0; display: flex; align-items: center; }
#daiwahouse_head .yokoku .yokoku-inner:last-child { padding-bottom: 0; }
#daiwahouse_head .yokoku .yokoku-inner .ttl { width: 170px; text-align: center; font-size: 2rem; border: 1px solid #999; box-sizing: border-box; margin-right: 1.4rem; padding: 0.6rem 1rem; }
#daiwahouse_head .yokoku .yokoku-inner .txt { flex: 1; font-size: 1.3rem; }
@media screen and (max-width: 768px) { #daiwahouse_head .yokoku .yokoku-inner { padding: 5px 0; }
  #daiwahouse_head .yokoku .yokoku-inner .ttl { font-size: 1.6rem; }
  #daiwahouse_head .yokoku .yokoku-inner .txt { font-size: 1.1rem; } }
@media screen and (max-width: 640px) { #daiwahouse_head .yokoku { padding: 10px; }
  #daiwahouse_head .yokoku .yokoku-inner { flex-direction: column; width: 100%; }
  #daiwahouse_head .yokoku .yokoku-inner .ttl { width: 100%; margin-right: 0; }
  #daiwahouse_head .yokoku .yokoku-inner .txt { width: 100%; margin-top: 1rem; } }
@media screen and (max-width: 500px) { #daiwahouse_head .yokoku .yokoku-inner .ttl { font-size: 1.4rem; }
  #daiwahouse_head .yokoku .yokoku-inner .txt { font-size: 1rem; } }
#daiwahouse_head .daiwa_head_txt { float: left; margin-top: 14px; margin-left: 10px; }
#daiwahouse_head .daiwa_head_txt img { height: 17px; width: auto; }
#daiwahouse_head .logo_daiwahouse { float: right; margin-right: 10px; }
#daiwahouse_head .logo_daiwahouse img { height: 35px; width: auto; }
@media screen and (max-width: 930px) { #daiwahouse_head .daiwahouse_inner { width: 96%; }
  #daiwahouse_head .daiwa_head_txt { margin-top: 0; }
  #daiwahouse_head .daiwa_head_txt img { height: 11px; }
  #daiwahouse_head .logo_daiwahouse img { height: 22px; } }

#kyoka, #socialArea { max-width: 950px; width: 90%; margin: 1.5em auto; text-align: left; }
#kyoka em, #socialArea em { font-weight: 600; font-style: normal; }

#kyoka { font-size: 1.2rem; }
#kyoka p { line-height: 1.8em; text-align: left; }

#socialArea { overflow: hidden; }
#socialArea li { line-height: 1; float: left; margin-right: 11px; vertical-align: top; }

.cvBlock { /*min-width: 1200px;*/ padding: 56px 0; position: relative; background: url(https://www.daiwahouse.co.jp/bunjo/common/images/bg_cv.jpg) no-repeat; background-size: cover; }
.cvBlock .inner { max-width: 1120px; margin: 0 auto; text-align: center; }
.cvBlock .inner > div { display: inline-block; max-width: 544px; width: 47%; margin: 1%; }
.cvBlock .inner > div a { width: 100%; display: block; height: 105px; padding: 5px 0 0; border: 1px solid #fff; font-size: 28px; line-height: 1.4; color: #fff; text-align: center; text-decoration: none; vertical-align: middle; position: relative; }
.cvBlock .inner > div a span { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 100%; }
.cvBlock .inner > div a small { font-size: 57%; display: block; }
@media screen and (max-width: 930px) { .cvBlock .inner > div a { font-size: 3.2vw; } }
@media screen and (max-width: 640px) { .cvBlock { padding: 20px 0 10px; }
  .cvBlock .inner > div { width: 90%; max-width: none; margin: 0 auto 20px; }
  .cvBlock .inner > div a { font-size: 5.2vw; } }

#subFooter { width: auto; padding: 32px 40px; background-color: #fff; border-top: 1px solid #e6e6e6; clear: both; font-size: 1.2rem; }
#subFooter::after { content: ''; display: block; clear: both; }
#subFooter .baseIn { max-width: 1120px; margin: 0 auto; padding-top: 0; border-top: none; clear: both; }
#subFooter .baseIn::after { content: ''; display: block; clear: both; }
#subFooter dl::after { content: ''; display: block; clear: both; }
#subFooter dt { width: 160px; font-size: 124%; display: table-cell; vertical-align: middle; }
#subFooter dd { width: 927px; padding-left: 32px; border-left: 1px solid #e6e6e6; display: table-cell; }
#subFooter dd li { margin: 8px 0; margin-right: 48px; float: left; }
#subFooter dd li a { padding-right: 14px; background: url(https://www.daiwahouse.co.jp/bunjo/common/images/ico_arrow03.png) right center no-repeat; -webkit-background-size: 6px 12px; -moz-background-size: 6px 12px; background-size: 6px 12px; color: #333; text-decoration: none; display: inline-block; }
@media screen and (max-width: 930px) { #subFooter dt { width: 100%; display: block; margin-bottom: 20px; }
  #subFooter dd { width: 100%; display: block; padding-left: 0; border-left: 0; } }

#footerArea { padding: 0; border-top: 1px solid #e6e6e6; overflow: visible; position: relative; }
#footerArea a { color: #4d4d4f; text-decoration: none; }
#footerArea::after { content: ''; display: block; clear: both; }
#footerArea #ftBtn_toTop { max-width: 1120px; margin: 0 auto; position: relative; }
#footerArea #ftBtn_toTop > div { position: absolute; top: -64px; right: 0; }
#footerArea #ftBtn_toTop > div a { background-color: #000; display: block; }
#footerArea .areaInner { position: relative; max-width: 1120px; width: 90%; min-height: 100px; margin: 0 auto; }
#footerArea .areaInner .column1 { float: left; width: 460px; padding: 24px 0 0 0; }
#footerArea .areaInner .column1 ul { line-height: 1.3; margin-bottom: 12px; overflow: hidden; }
#footerArea .areaInner .column1 li { float: left; margin: 0 15px 0 -7px; padding-left: 8px; border-left: 1px solid #4d4d4f; font-size: 12px; }
#footerArea .areaInner .column2 { float: right; width: 375px; line-height: 1; padding-top: 24px; text-align: right; }
#footerArea .areaInner .column2 p { line-height: 1.1; color: #4D4D4F; font-size: 11px; margin-bottom: 13px; }
@media screen and (max-width: 930px) { #footerArea .areaInner .column1 { float: none; width: 100%; }
  #footerArea .areaInner .column2 { float: none; width: 100%; } }
#footerArea .devSmp { display: none; }

/******************************************************

header

******************************************************/
.js-floating { position: relative; z-index: 100; }
.js-floating.sp_menu_btn_fixed { position: static; }

.js-floating-floater.fixed { position: fixed; z-index: 100; }

#head { background: #00455e; color: #fff; position: relative; }
#head .bukken_name { padding: 35px 0 35px 40px; }
#head .bukken_name img { height: 20px; width: auto; }
@media screen and (max-width: 640px) { #head .bukken_name { padding: 15px 0 15px 10px; }
  #head .bukken_name img { width: calc(100% - 120px); max-width: 300px; height: auto; } }
#head .head_nav { position: absolute; top: 20px; right: 15px; letter-spacing: -0.4em; font-size: 0; }
#head .head_nav li { font-size: 12px; letter-spacing: 0.1em; display: inline-block; vertical-align: middle; }
#head .head_nav li a { color: #fff; }
#head .head_nav li.map, #head .head_nav li.outline { margin-right: 20px; }
#head .head_nav li.req, #head .head_nav li.res { width: 160px; margin-left: 1px; font-size: 15px; }
#head .head_nav li.req a, #head .head_nav li.res a { background: #aa9765; color: #fff; display: block; width: 100%; text-align: center; position: relative; padding: 12px 0; }
#head .head_nav li.req a span, #head .head_nav li.res a span { position: relative; z-index: 2; }
#head .head_nav li.req a::before, #head .head_nav li.res a::before { background: #dab961; content: ""; display: block; width: 100%; height: 100%; position: absolute; left: 0; bottom: 0; margin: auto; transform: scale(0, 1); transform-origin: right top; transition: transform .3s; z-index: 1; }
#head .head_nav li.req a:hover::before, #head .head_nav li.res a:hover::before { transform-origin: left top; transform: scale(1, 1); }
@media screen and (max-width: 930px) { #head .head_nav { display: none; } }

.js-floating-floater.fixed #sp_menu_btn { top: 0px; padding: 10px; background: rgba(0, 0, 0, 0.9); border-radius: 0 0 0 10px; }

#sp_menu_btn { position: absolute; top: 118px; right: 0px; padding-right: 10px; display: none; cursor: pointer; z-index: 99; }
#sp_menu_btn img { width: 50px; height: auto; }
@media screen and (max-width: 930px) { #sp_menu_btn { display: block; } }

#sp_menu_close { text-align: right; margin: 20px; cursor: pointer; }
#sp_menu_close img { height: 50px; width: auto; }

#sp_fixnav { position: fixed; top: -150%; left: 0; width: 100%; height: 100%; background: #000; z-index: 100; transition: .4s; }
#sp_fixnav.on { top: 0; }
#sp_fixnav ul { max-width: 1200px; margin: auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
#sp_fixnav li { width: 50%; text-align: center; padding: 5px; }
#sp_fixnav li:hover a { background: #aa9765; }
#sp_fixnav li.current a { background: #aa9765; }
#sp_fixnav li.req a, #sp_fixnav li.res a { background: #aa9765; color: #fff; display: block; width: 100%; text-align: center; position: relative; padding: 20px 0; font-size: 1.8rem; }
#sp_fixnav li.req a span, #sp_fixnav li.res a span { position: relative; z-index: 2; }
#sp_fixnav li.req a::before, #sp_fixnav li.res a::before { background: #dab961; content: ""; display: block; width: 100%; height: 100%; position: absolute; left: 0; bottom: 0; margin: auto; transform: scale(0, 1); transform-origin: right top; transition: transform .3s; z-index: 1; }
#sp_fixnav li.req a:hover::before, #sp_fixnav li.res a:hover::before { transform-origin: left top; transform: scale(1, 1); }
#sp_fixnav a { color: #fff; text-align: center; display: block; width: 100%; padding: 10px 0 11px; box-sizing: border-box; border: 1px solid #5A5A5A; font-size: 14px; }
#sp_fixnav a .en { display: block; font-family: 'EB Garamond', serif; font-weight: 300; font-style: normal; letter-spacing: 0.05em; -webkit-font-smoothing: antialiased; font-size: 10px; margin-top: 4px; }

#headNavArea { background: #00455e; color: #fff; border-bottom: 6px solid #aa9765; }
#headNavArea ul { max-width: 1200px; margin: auto; display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: space-between; -webkit-box-align: stretch; align-items: stretch; }
#headNavArea ul * { min-height: 0%; }
#headNavArea li { width: 14.28%; text-align: center; }
#headNavArea li:hover a { color: #aa9765; }
#headNavArea li.current a { background: #aa9765; }
#headNavArea li.current:hover a { color: #fff; }
#headNavArea a { color: #fff; text-align: center; display: block; width: 100%; padding: 10px 0 11px; box-sizing: border-box; border-right: 1px solid #5A5A5A; font-size: 14px; }
#headNavArea a .en { display: block; font-family: 'EB Garamond', serif; font-weight: 300; font-style: normal; letter-spacing: 0.05em; -webkit-font-smoothing: antialiased; font-size: 10px; margin-top: 4px; }
@media screen and (max-width: 930px) { #headNavArea { display: none; }
  #headNavArea.on { display: block; } }

/******************************************************

global nav

******************************************************/
/******************************************************

container

******************************************************/
section { position: relative; margin-top: 80px; }
section > .inner { max-width: 1080px; width: 90%; margin: auto; padding-top: 270px; }
section > .inner *, section > .inner *:before, section > .inner *:after { -webkit-box-sizing: border-box; box-sizing: border-box; }

.lead { font-size: 1.5rem; line-height: 1.8; letter-spacing: 0.05em; }

.category { font-family: 'EB Garamond', serif; font-weight: 300; font-style: normal; letter-spacing: 0.05em; -webkit-font-smoothing: antialiased; font-size: 2.0rem; color: #aa9765; margin-bottom: 30px; letter-spacing: 0.2em; font-weight: bold; text-align: center; position: absolute; left: 0; right: 0; top: -50px; margin: auto; }
.category::before { content: ""; width: 1px; height: 200px; background: #aa9765; display: block; margin: 0 auto 20px; }

h4.maincopy { text-align: center; font-size: 3.2rem; color: #aa9765; line-height: 1.5; letter-spacing: 0.1em; margin-bottom: 3rem; }
@media screen and (max-width: 640px) { h4.maincopy { font-size: 2.4rem; } }

.column { background: #fff; box-shadow: 0 0 5px rgba(0, 0, 0, 0.4); padding: 10px; }
.column .column_inner { box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.4); padding: 5rem 6rem; }
@media screen and (max-width: 640px) { .column .column_inner { padding: 2rem 2rem; } }

@media screen and (max-width: 640px) { .lead { font-size: 1.3rem; }
  .category { font-size: 1.5rem; } }
.c-note { display: block; padding: 1rem 0 0 1rem; text-align: left; color: #aa9765; width: 50%; position: absolute; top: 0; left: 0; }

/* yokoku
----------------------------*/
#yokoku { margin-top: 0; padding: 10px 0; }
#yokoku > .inner { padding-top: 0; max-width: 1200px; width: 96%; }
#yokoku .yokoku_label { float: left; font-size: 14px; text-align: center; box-sizing: border-box; border: 1px solid #ccc; line-height: 1; padding: 7px; margin-right: 10px; }
#yokoku p { font-size: 12px; overflow: hidden; }

/* main
----------------------------*/
#main { background: #efefef; }
#main #main_slide { display: none; }
#main #main_slide.slick-initialized { display: block; }
#main img { width: 100%; height: auto; }
#main > .note { padding: 10px; }
#main li .note { padding: 10px; width: 100%; }
@media screen and (max-width: 830px) { #main li .note { padding-top: 35px; width: 100%; } }
@media screen and (max-width: 640px) { #main > .note { padding-top: 25px; } }

/* intro
----------------------------*/
#intro { text-align: center; padding: 3rem 0; margin-top: 0; }
#intro > .inner { padding-top: 0; }
#intro .bnr_event { max-width: 800px; margin: auto auto 40px; }
#intro .bnr_event img { width: 100%; height: auto; line-height: 1; }
#intro .bnr_event a { display: block; width: 100%; }
#intro .bnr_event a:hover img { filter: brightness(110%); }
#intro .category { color: #9fa0a0; position: static; }
#intro .category::before { content: none; }
#intro .bukken_copy { padding: 6rem 0; }
#intro .bukken_copy .securea_ttl { margin-bottom: 5rem; }
#intro .bukken_copy .securea_ttl img { height: 12rem; width: auto; }
#intro .bukken_copy .bukken img { max-width: 248px; height: auto; width: 100%; }
#intro h4 { color: #aa9765; border: 1px solid #aa9765; width: 90%; max-width: 420px; padding: 1rem; display: inline-block; margin: auto; }
@media screen and (max-width: 930px) { #intro .bukken_copy .securea_ttl { max-width: 423px; margin: 0 auto 3rem; }
  #intro .bukken_copy .securea_ttl img { height: auto; width: 100%; }
  #intro .bukken_copy .bukken { width: 100%; max-width: 207px; margin: auto; } }

/* concept
----------------------------*/
#concept { border-top: 6px solid #aa9765; background-image: url("../img/contents/bg_concept_top.jpg"), url("../img/contents/bg_concept_bottom.jpg"); background-repeat: no-repeat, no-repeat; background-size: 100% auto, 100% auto; background-position: center top, center bottom; background-color: #1a2d3a; color: #fff; padding-bottom: 12rem; }
#concept .category { color: #aa9765; }
#concept > .note { color: #ffffff; position: absolute; bottom: 5px; left: 5px; }
#concept h4 { text-align: center; font-size: 5.4rem; line-height: 1.6; letter-spacing: 0.1em; margin-left: 0.5em; margin-bottom: 2rem; text-shadow: 0px 0px 10px #000, 0px 0px 10px #000, 0px 0px 10px #000, 0px 0px 10px #000; }
#concept .lead { text-align: center; font-size: 1.7rem; line-height: 2.7; text-shadow: 0px 0px 10px #000, 0px 0px 10px #000, 0px 0px 10px #000, 0px 0px 10px #000; }
#concept .lead b { display: block; font-size: 2.4rem; padding-bottom: 2rem; }
#concept .design { box-sizing: border-box; border: 3px solid #fff; padding: 5px; margin-top: 8rem; max-width: 780px; margin-inline: auto; }
#concept .design-inner { box-sizing: border-box; border: 1px solid #fff; background: rgba(0, 0, 0, 0.6); padding: 4rem 5rem; }
#concept .design-inner .title { font-size: 3rem; font-feature-settings: "palt"; letter-spacing: 0.2em; text-align: left; }
#concept .design-inner .designer { border-top: 1px solid #fff; border-bottom: 1px solid #fff; padding: 1.2rem 0; margin: 4rem 0 2rem; display: flex; align-items: center; column-gap: 3rem; }
#concept .design-inner .designer .position { font-size: 1.5rem; line-height: 1.5; padding-left: 2.5rem; }
#concept .design-inner .designer .name { font-size: 2.8rem; font-feature-settings: "palt"; letter-spacing: 0.3em; }
#concept .design-inner .content::after { clear: both; content: ''; display: block; }
#concept .design-inner .content .pic { width: 35%; position: relative; float: right; margin: 0 0 1rem 1rem; }
#concept .design-inner .content .pic .note { position: absolute; bottom: 5px; right: 5px; color: #000000; }
#concept .design-inner .content .text { font-size: 1.7rem; line-height: 1.8; }
@media screen and (max-width: 930px) { #concept h4 { font-size: 7vw; } }
@media screen and (max-width: 640px) { #concept h4 { font-size: 6.5vw; }
  #concept .lead { font-size: 3.6vw; }
  #concept .lead b { font-size: 4vw; }
  #concept .design-inner { padding: 2rem 3rem; }
  #concept .design-inner .title { font-size: 2.4rem; margin-left: 0; letter-spacing: 0.1em; }
  #concept .design-inner .title .aw { display: inline; }
  #concept .design-inner .designer { flex-wrap: wrap; margin-top: 2.5rem; column-gap: 2rem; }
  #concept .design-inner .designer .position { font-size: 1.2rem; padding-left: 2rem; }
  #concept .design-inner .designer .name { font-size: 2rem; }
  #concept .design-inner .content .pic { float: none; width: 60%; min-width: 200px; margin-inline: auto; }
  #concept .design-inner .content .text { font-size: 1.5rem; margin-bottom: 2rem; } }

/* gallery
----------------------------*/
#gallery { border-top: 6px solid #aa9765; margin-top: 0; }
#gallery > .inner { padding-top: 210px; }
#gallery .photo { display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: space-between; -webkit-box-align: stretch; align-items: stretch; }
#gallery .photo * { min-height: 0%; }
#gallery .photo .photo01, #gallery .photo .photo02, #gallery .photo .photo03, #gallery .photo .photo04, #gallery .photo .photo07, #gallery .photo .photo08, #gallery .photo .photo09, #gallery .photo .photo010 { width: 100%; }
#gallery .photo .photo05, #gallery .photo .photo06, #gallery .photo .photo11, #gallery .photo .photo12 { width: 50%; }
#gallery .photo .note { position: absolute; bottom: 0; left: 0; color: #ffffff; display: inline-block; padding: 1px 5px; background-color: rgba(0, 0, 0, 0.7); }

/* plan
----------------------------*/
#plan { margin-top: 0; background: url("../img/common/bg.jpg"); border-top: 6px solid #aa9765; padding-bottom: 100px; }
#plan > .inner { padding-top: 210px; }
#plan > .inner > .note { text-align: center; color: #aa9765; padding: 3rem 0 10rem; }
#plan .gallery_note { color: #aa9765; margin: 10px 0 0 10px; }
#plan .kukaku { max-width: 1080px; width: 100%; margin-top: 4rem; margin-inline: auto; }
#plan .kukaku .note { color: #aa9765; text-align: center; margin-top: 1rem; margin-inline: auto; width: 90%; }
#plan .kukaku + .inner { padding-top: 0; }
#plan .column { margin-top: 5rem; color: #aa9765; position: relative; }
#plan .column .pic { /*max-width: 580px;*/ max-width: 770px; margin: 0 auto 3rem; }
#plan .column .icon { position: absolute; top: 30px; right: 30px; }
#plan .column .icon img { width: 100px; height: auto; }
#plan .column .icon + .specArea { padding-right: 80px; }
#plan .column .icon_zeh { position: absolute; top: 5rem; right: 3rem; width: 18.868%; max-width: 200px; }
#plan .column .icon_zeh img { width: 100%; height: auto; }
#plan .column_inner { position: relative; }
#plan .specArea { overflow: hidden; }
#plan .specArea .number { float: left; font-size: 2.8rem; background: #222; color: #fff; text-align: center; padding: 10px 30px; font-family: 'EB Garamond', serif; font-weight: 300; font-style: normal; letter-spacing: 0.05em; -webkit-font-smoothing: antialiased; }
#plan .specArea .ldk { float: left; margin-right: 20px; font-size: 2.8rem; background: #00455e; color: #fff; text-align: center; padding: 10px 30px; font-family: 'EB Garamond', serif; font-weight: 300; font-style: normal; letter-spacing: 0.05em; -webkit-font-smoothing: antialiased; }
#plan .specArea ul { overflow: hidden; margin-right: 180px; }
#plan .specArea li { display: inline-block; font-size: 1.6rem; line-height: 1.5; }
#plan .mensekiArea { margin: 3rem auto 3rem 0; width: 90%; }
#plan .mensekiArea ul { display: flex; flex-wrap: wrap; gap: 0px 20px; }
#plan .mensekiArea li { font-size: 1.6rem; }
#plan .mensekiArea li .sizeL { font-size: 2em; }
#plan .mensekiArea li .sizeM { font-size: 1.5em; }
#plan .mensekiArea li.note { font-size: 12px; line-height: 1.6; margin-top: 1rem; }
#plan .meritCopy { font-size: 2.2rem; line-height: 1.5; margin-bottom: 3rem; }
@media screen and (max-width: 930px) { #plan .column_inner .icon_zeh { position: static; width: 100%; margin: 2rem auto 0; }
  #plan .specArea ul { margin-right: inherit; } }
@media screen and (max-width: 640px) { #plan .column .icon { top: 80px; }
  #plan .column .icon img { width: 70px; }
  #plan .column .icon + .specArea { padding-right: 0; }
  #plan .specArea .number { padding-left: 10px; padding-right: 10px; font-size: 2rem; width: 58%; }
  #plan .specArea .ldk { margin-right: auto; padding: 10px 0; font-size: 2rem; width: 42%; }
  #plan .specArea ul { overflow: visible; width: 100%; clear: both; padding-top: 1rem; }
  #plan .specArea li { width: 100%; font-size: 1.4rem; }
  #plan .mensekiArea { width: 100%; }
  #plan .mensekiArea li { font-size: 1.4rem; display: block; }
  #plan .meritCopy { font-size: 1.7rem; } }

/* equipment
----------------------------*/
#equipment { margin-top: 0; background: #1A1A18 url("../img/contents/bg_eq.jpg") bottom center no-repeat; background-size: cover; color: #fff; padding-bottom: 16rem; position: relative; }
#equipment h4.maincopy { color: #fff; }
#equipment p.lead { text-align: center; font-size: 1.7rem; }
#equipment .roomno { text-align: center; margin-top: 5rem; }
#equipment .roomno .txt { display: inline-block; padding: .5rem 2rem; font-size: 1.5rem; line-height: 1; border: 1px solid #aa9765; color: #aa9765; background: rgba(0, 0, 0, 0.7); }
#equipment ul { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px 20px; max-width: 1000px; margin-top: 5rem; margin-inline: auto; }
#equipment ul + .note { display: block; max-width: 1000px; margin: 1rem auto 0 auto; color: #fff; }
#equipment ul li { box-sizing: border-box; border: 1px solid #aa9765; color: #aa9765; padding: 14px 0; text-align: center; font-size: 1.5rem; display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: center; justify-content: center; -webkit-box-align: center; align-items: center; background: rgba(0, 0, 0, 0.7); }
#equipment ul li * { min-height: 0%; }
#equipment ul li:nth-of-type(1) { background: #aa9765; color: #222; }
#equipment > .note { position: absolute; bottom: 5px; left: 5px; text-shadow: 0 0 3px #000000; }
@media screen and (max-width: 930px) { #equipment ul { grid-template-columns: repeat(2, 1fr); gap: 10px 15px; }
  #equipment ul li { font-size: 1.4rem; } }

/* access
----------------------------*/
#access { margin-top: 0; border-top: 6px solid #aa9765; }
#access > .inner { padding-top: 210px; }
#access .accessmap { max-width: 800px; margin: 6rem auto 0; }
#access .station_min { max-width: 720px; margin: 6rem auto 0; }
#access .station_min .ttl { text-align: center; color: #aa9765; box-sizing: border-box; border: 1px solid #aa9765; padding: 10px 0; font-size: 1.8rem; margin-bottom: 2rem; margin-top: 4rem; }
#access .note { margin: 3rem auto 4rem; color: #aa9765; text-align: center; }
@media screen and (max-width: 640px) { #access .station_min .ttl { font-size: 1.6rem; } }

.acc-imglist { display: grid; grid-template-columns: repeat(4, 1fr); align-items: flex-end; }
.acc-imglist .pic .cap { right: inherit; left: 10px; color: #ffffff; text-shadow: 0 0 3px #000000; }

/* location
----------------------------*/
#location { margin-top: 0; background: url("../img/common/bg.jpg"); border-top: 6px solid #aa9765; }
#location > .inner { padding-top: 210px; }
#location .sky { margin-bottom: 5rem; }
#location .sky .cap { text-align: left; margin-top: 5px; }
@media screen and (max-width: 640px) { #location .sky { margin-bottom: 2rem; } }
#location h5 { font-size: 2rem; margin-bottom: 2rem; font-family: '游ゴシック', 'Yu Gothic', 'YuGothic', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', sans-serif; font-weight: 300; -webkit-font-smoothing: antialiased; }
#location .column .facility-list { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2rem; }
#location .column .facility-list .facility { font-family: '游ゴシック', 'Yu Gothic', 'YuGothic', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', sans-serif; font-weight: 300; -webkit-font-smoothing: antialiased;         /* &:last-of-type {
					grid-column: span 2;
				} .other-list { display: grid; gap: 5px; li { font-size: 1.2rem; font-weight: bold; } } */ }
#location .column .facility-list .facility .data { margin-top: 5px; font-size: 1.2rem; line-height: 1.3; }
#location .column .facility-list .facility .data .name { font-weight: bold; }
#location .column .facility-list::after { content: ""; display: block; width: 50%; }
@media screen and (max-width: 930px) { #location .column .facility-list { grid-template-columns: repeat(3, 1fr); } }
@media screen and (max-width: 640px) { #location .column .facility-list { gap: 14px; grid-template-columns: repeat(2, 1fr); } }
#location .inner .note { text-align: center; margin-top: 4rem; }
#location .category_main { margin-top: 9rem; }
#location .category_main ul { display: flex; justify-content: space-between; flex-wrap: wrap; }
#location .category_main ul li { width: 50%; position: relative; }
#location .category_main ul li .note { position: absolute; bottom: 5px; left: 5px; color: #fff; text-shadow: 0px 0px 5px #000,0px 0px 5px #000; }
#location .bnr_iju-sumu { max-width: 940px; margin: 0 auto 4rem; }
#location .bnr_iju-sumu a:hover { filter: brightness(105%); }
#location .bnr_iju-sumu img { width: 100%; height: auto; }

/* map
----------------------------*/
#map { margin-top: 0; margin-bottom: 10rem; border-top: 6px solid #aa9765; }
#map > .inner { padding-top: 210px; }
#map h4.maincopy { margin-bottom: 5rem; }
#map .category2 { text-align: center; color: #aa9765; font-size: 2.7rem; letter-spacing: 0.2em; margin-bottom: 4rem; }
#map .address { background: #00455e; color: #aa9765; text-align: center; padding: 20px 0; font-size: 2.5rem; }
#map .address + .category2 { margin-top: 5rem; }
#map .mapImg { border: solid 1px #4F2A11; }
@media screen and (max-width: 640px) { #map .address { font-size: 2.0rem; } }

/* contact
----------------------------*/
#contact { background-color: #00455e; color: #aa9765; text-align: center; padding-bottom: 10rem; }
#contact > .inner { padding-top: 210px; }
#contact h4.maincopy { letter-spacing: 0.2em; font-size: 3.5rem; /*color: #fff;*/ }
#contact ul { display: flex; justify-content: space-between; flex-wrap: wrap; max-width: 800px; margin: 3rem auto; }
#contact ul li { width: 48%; font-size: 20px; }
#contact ul li a { background: #aa9765; color: #fff; display: block; width: 100%; text-align: center; position: relative; padding: 30px 0; }
#contact ul li a span { position: relative; z-index: 2; }
#contact ul li a::before { background: #dab961; content: ""; display: block; width: 100%; height: 100%; position: absolute; left: 0; bottom: 0; margin: auto; transform: scale(0, 1); transform-origin: right top; transition: transform .3s; z-index: 1; }
#contact ul li a:hover::before { transform-origin: left top; transform: scale(1, 1); }
#contact .bnr { max-width: 800px; margin: auto; }
#contact .bnr img { width: 100%; height: auto; }
@media screen and (max-width: 640px) { #contact { padding-bottom: 5rem; }
  #contact ul { margin-bottom: 0; }
  #contact ul li { width: 100%; margin-bottom: 20px; }
  #contact ul li a { padding: 20px 0; } }

/* pagetop
----------------------------*/
#pagetop { position: fixed; bottom: 0; right: 0; font-size: 14px; display: none; letter-spacing: 0.1em; z-index: 201; }
#pagetop a { text-decoration: none; color: #fff; background: rgba(0, 0, 0, 0.8); padding: 10px 30px 10px 20px; display: block; border-radius: 10px 0 0 0; position: relative; }
#pagetop a::after { content: ""; display: block; width: 10px; height: 10px; border-top: 1px solid #fff; border-right: 1px solid #fff; position: absolute; top: 45%; right: 10px; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }

/* fixed_info
----------------------------*/
#fixed_info { position: fixed; bottom: 0; left: 0; width: 100%; background: rgba(255, 255, 255, 0.9); padding: 10px 0; z-index: 200; }
#fixed_info ul { text-align: center; }
#fixed_info li { display: inline-block; vertical-align: middle; margin: 5px 10px; }
#fixed_info li.tel p { display: inline-block; vertical-align: middle; font-size: 12px; text-align: left; }
#fixed_info li.tel p:last-child { font-size: 28px; margin-left: 10px; }
#fixed_info li.req, #fixed_info li.res { width: 200px; font-size: 14px; }
#fixed_info li.req a, #fixed_info li.res a { background: #aa9765; color: #fff; display: block; width: 100%; text-align: center; position: relative; padding: 10px 0; }
#fixed_info li.req a span, #fixed_info li.res a span { position: relative; z-index: 2; }
#fixed_info li.req a::before, #fixed_info li.res a::before { background: #dab961; content: ""; display: block; width: 100%; height: 100%; position: absolute; left: 0; bottom: 0; margin: auto; transform: scale(0, 1); transform-origin: right top; transition: transform .3s; z-index: 1; }
#fixed_info li.req a:hover::before, #fixed_info li.res a:hover::before { transform-origin: left top; transform: scale(1, 1); }
@media screen and (max-width: 930px) { #fixed_info ul { width: 90%; margin: auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
  #fixed_info li { margin: 10px auto; }
  #fixed_info li.tel { width: 100%; }
  #fixed_info li.req, #fixed_info li.res { width: 49%; } }
@media screen and (max-width: 480px) { #fixed_info li.tel p { font-size: 10px; }
  #fixed_info li.tel p:last-child { font-size: 22px; } }

/******************************************************

footer

******************************************************/
#txtLink { background: #f4f4f4; border: 1px solid #d1d1d1; border-width: 1px 0; padding: 25px 0 10px; margin: 0px auto 20px; }
#txtLink ul { text-align: center; }
#txtLink li { display: inline-block; margin: 0 20px 20px; font-size: 1.2rem; }
#txtLink li.current a { color: #c31831; }
#txtLink li .soon { color: #aeaeae; }

/* footerConversion
----------------------------*/
#bukken_tel ul { text-align: center; }
#bukken_tel li { display: inline-block; vertical-align: middle; margin: 0 10px 10px; }
#bukken_tel li:nth-of-type(1), #bukken_tel li:nth-of-type(3) { text-align: left; font-size: 12px; line-height: 1.5; }
#bukken_tel li:nth-of-type(2) { font-size: 48px; line-height: 1.2; }
@media screen and (max-width: 640px) { #bukken_tel li { display: block; }
  #bukken_tel li:nth-of-type(1), #bukken_tel li:nth-of-type(3) { text-align: center; } }

/* footerConversion
----------------------------*/
#footerConversion { text-align: center; width: 100%; margin: auto; border-bottom: 1px solid #d1d1d1; padding-bottom: 3rem; }
#footerConversion ul { display: flex; justify-content: space-between; flex-wrap: wrap; max-width: 600px; width: 90%; margin: 1.5rem auto 0; }
#footerConversion ul li { width: 48%; font-size: 20px; }
#footerConversion ul li a { background: #aa9765; color: #fff; display: block; width: 100%; text-align: center; position: relative; padding: 20px 0; }
#footerConversion ul li a span { position: relative; z-index: 2; }
#footerConversion ul li a::before { background: #dab961; content: ""; display: block; width: 100%; height: 100%; position: absolute; left: 0; bottom: 0; margin: auto; transform: scale(0, 1); transform-origin: right top; transition: transform .3s; z-index: 1; }
#footerConversion ul li a:hover::before { transform-origin: left top; transform: scale(1, 1); }
@media screen and (max-width: 640px) { #footerConversion ul li { width: 100%; margin-bottom: 20px; }
  #footerConversion ul li a { padding: 20px 0; } }

/* float_zeh */
.float_zeh { position: fixed; bottom: 100px; right: 1rem; z-index: 2; width: 40%; max-width: 300px; transition: all 0.3s ease 0s; visibility: visible; opacity: 1; }
.float_zeh .close { position: absolute; top: -15px; right: 0; background: #000; width: 30px; height: 30px; z-index: 3; border-radius: 50%; cursor: pointer; border: solid 1px #fff; }
.float_zeh .close .txt { text-align: center; color: #fff; font-size: 26px; line-height: 26px; }
.float_zeh a { display: block; }
.float_zeh a img { width: 100%; height: auto; transition: .3s; }
.float_zeh a:hover img { filter: brightness(110%); }
@media screen and (max-width: 930px) { .float_zeh { bottom: 150px; } }
@media screen and (max-width: 640px) { .float_zeh .close { top: -18px; width: 25px; height: 25px; }
  .float_zeh .close .txt { font-size: 20px; line-height: 20px; } }

/* float_event */
.float_event { position: fixed; bottom: 100px; right: 1rem; z-index: 999; width: 60%; max-width: 300px; transition: all 0.3s ease 0s; visibility: visible; opacity: 1; }
.float_event .close { position: absolute; top: -15px; right: 0; background: #000; width: 30px; height: 30px; z-index: 3; border-radius: 50%; cursor: pointer; border: solid 1px #fff; }
.float_event .close .txt { text-align: center; color: #fff; font-size: 26px; line-height: 26px; }
.float_event a { display: block; }
.float_event a img { width: 100%; height: auto; transition: .3s; }
.float_event a:hover img { filter: brightness(110%); }
@media screen and (max-width: 930px) { .float_event { bottom: 150px; } }
@media screen and (max-width: 640px) { .float_event .close { top: -18px; width: 25px; height: 25px; }
  .float_event .close .txt { font-size: 20px; line-height: 20px; } }

.floatbox { position: fixed; bottom: 100px; right: 1rem; z-index: 999; }
.floatbox .float_zeh { position: relative; bottom: 0; right: 0; width: 100%; }
.floatbox .float_event { position: relative; bottom: 0; right: 0; width: 100%; margin-bottom: 2rem; }
@media screen and (max-width: 930px) { .floatbox { bottom: 150px; } }
@media screen and (max-width: 640px) { .floatbox { width: 40%; } }
