@charset "UTF-8";
/*
Theme Name: いろはハウジング
Description: 202002
Version: 1.0
Tags: html5 css3(scss) javascript php mysql FontAwesome4.7.0
*/
*, *:before, *:after { box-sizing: border-box; }

html { font-size: 62.5%; scroll-behavior: smooth;}
html:focus { outline: none; }

body { font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; line-height: 1.6; font-size: 16px; color: #474343; }

main { display: block; overflow: hidden; }

.fontSerif { font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", serif; }

/* ----------------------------------- */
/* コンテナ
/* ----------------------------------- */
.container { margin-right: auto; margin-left: auto; padding-left: 15px; padding-right: 15px; }
@media print, screen and (min-width: 768px) { .container { width: 750px; transition: ease-in .1s; } }
@media print, screen and (min-width: 992px) { .container { width: 970px; transition: ease-in .1s; } }
@media print, screen and (min-width: 1200px) { .container { width: 1170px; transition: ease-in .1s; } }

/* ----------------------------------- */
/* clearfix
/* ----------------------------------- */
.clearfix:before, .clearfix:after, .container:before, .container:after { content: " "; display: table; }

.clearfix:after, .container:after { clear: both; }

/* ----------------------------------- */
/* フォントサイズ・余白 */
/* ----------------------------------- */
.fs12 { font-size: 12px !important; }

.fs14 { font-size: 14px !important; }

.fs16 { font-size: 16px !important; }

.fs18 { font-size: 18px !important; }

.fs20 { font-size: 20px !important; }

.fs22 { font-size: 22px !important; }

.fs24 { font-size: 24px !important; }

.mt0 { margin-top: 0	 !important; }

.mt5 { margin-top: 5px !important; }

.mt10 { margin-top: 10px !important; }

.mt15 { margin-top: 15px !important; }

.mt20 { margin-top: 20px !important; }

.mt30 { margin-top: 30px !important; }

.mt35 { margin-top: 35px !important; }

.mt40 { margin-top: 40px !important; }

.mt50 { margin-top: 50px !important; }

.mt60 { margin-top: 60px !important; }

.mb0 { margin-bottom: 0   !important; }

.mb5 { margin-bottom: 5px !important; }

.mb10 { margin-bottom: 10px !important; }

.mb15 { margin-bottom: 15px !important; }

.mb20 { margin-bottom: 20px !important; }

.mb30 { margin-bottom: 30px !important; }

.mb35 { margin-bottom: 35px !important; }

.mb40 { margin-bottom: 40px !important; }

.mb50 { margin-bottom: 50px !important; }

.mb60 { margin-bottom: 60px !important; }

.mb70 { margin-bottom: 70px !important; }

.mb80 { margin-bottom: 80px !important; }

.mb90 { margin-bottom: 90px !important; }

.mb100 { margin-bottom: 100px !important; }

.ma0 { margin: 0 !important; }

.w10p { width: 10% !important; }

.w20p { width: 20% !important; }

.w30p { width: 30% !important; }

.w40p { width: 40% !important; }

.w50p { width: 50% !important; }

.w60p { width: 60% !important; }

.w70p { width: 70% !important; }

.w80p { width: 80% !important; }

.w90p { width: 90% !important; }

.w100p { width: 100% !important; }

.pa20 { padding: 0 20px; }

.mw200 { max-width: 200px !important; }

/* ----------------------------------- */
/* リンク */
/* ----------------------------------- */
a { color: #368d95; text-decoration: underline; transition: all ease .3s; }
a:hover, a:focus { color: #aa4b69; text-decoration: none; transition: all ease .3s; }
a:focus, a:active, a:hover { outline: 0; text-decoration: none; }
a img:hover { opacity: 0.8; }
a.arrowLeft { position: relative; padding-left: 10px; }
a.arrowLeft:after { position: absolute; content: "\f105"; font-family: FontAwesome; left: 0; font-size: 100%; top: 50%; transform: translateY(-50%); transition: .3s ease-in; }
a.arrowRight { padding-right: 10px; }
a.arrowRight:after { position: absolute; right: 0; content: "\f105"; font-family: FontAwesome; font-size: 100%; top: 50%; transform: translateY(-50%); transition: .3s ease-in; }

/* ----------------------------------- */
/* 配置 */
/* ----------------------------------- */
.alignnone { max-width: 100%; }

.alignleft { display: inline; float: left; }

.alignright { display: inline; float: right; }

.aligncenter { display: block; margin-right: auto; margin-left: auto; }

blockquote.alignleft, img.alignleft { margin: 0 20px 20px 0; }
blockquote.alignright, img.alignright { margin: 0 0 20px 20px; }
blockquote.aligncenter, img.aligncenter { clear: both; margin-left: auto; margin-right: auto; }

/* ----------------------------------- */
/* イメージ */
/* ----------------------------------- */
img { vertical-align: bottom; max-width: 100%; height: auto; flex-shrink: 0; }
img[class*="align"], img[class*="wp-image-"], img[class*="attachment-"] { height: auto; }
img.alignleft, img.alignright, img.aligncenter { margin-bottom: 30px; }
img.alignleft { display: inline; float: left; margin-right: 20px; }
img.alignright { display: inline; float: right; margin-left: 20px; }
img.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; margin-bottom: 30px !important; }

/* ----------------------------------- */
/* ギャラリー */
/* ----------------------------------- */
.gallery { margin: 30px 0; }
.gallery .gallery-item { display: inline-block; padding: 0 1.79104477%; text-align: center; vertical-align: top; width: 100%; margin: 0 0 15px; }
.gallery .gallery-item .gallery-icon img { margin: 0 auto; width: 100%; height: auto; border: none !important; }
.gallery .gallery-item .gallery-caption { color: #707070; display: block; text-align: left; font-size: 14px; line-height: 1.5; padding: 0.5em 0 0; margin: 0; }
.gallery.gallery-columns-2 .gallery-item { max-width: 50%; }
.gallery.gallery-columns-3 .gallery-item { max-width: 33.33%; }
.gallery.gallery-columns-4 .gallery-item { max-width: 25%; }
.gallery.gallery-columns-5 .gallery-item { max-width: 20%; }
.gallery.gallery-columns-6 .gallery-item { max-width: 16.66%; }
.gallery.gallery-columns-7 .gallery-item { max-width: 14.28%; }
.gallery.gallery-columns-8 .gallery-item { max-width: 12.5%; }
.gallery.gallery-columns-9 .gallery-item { max-width: 11.11%; }
@media print, screen and (min-width: 768px) { .gallery.gallery-columns-2 .gallery-item { max-width: 50%; }
  .gallery.gallery-columns-3 .gallery-item { max-width: 33.33%; }
  .gallery.gallery-columns-4 .gallery-item { max-width: 25%; }
  .gallery.gallery-columns-5 .gallery-item { max-width: 20%; }
  .gallery.gallery-columns-6 .gallery-item { max-width: 16.66%; }
  .gallery.gallery-columns-7 .gallery-item { max-width: 14.28%; }
  .gallery.gallery-columns-8 .gallery-item { max-width: 12.5%; }
  .gallery.gallery-columns-9 .gallery-item { max-width: 11.11%; } }

/* キャプション */
/* ----------------------------------- */
.wp-caption { max-width: 100%; margin: 0; }
.wp-caption.alignnone { width: 100% !important; }
.wp-caption.alignnone img { width: 100%; height: auto; }
.wp-caption.aligncenter .wp-caption-text { text-align: center; }
.wp-caption.alignright .wp-caption-text { text-align: right; }
.wp-caption .wp-caption-text { color: #6f5d44; font-weight: bold; }
.wp-caption img { border-color: none; margin-bottom: 10px; }

/* ----------------------------------- */
/* ボタン */
/* ----------------------------------- */
.btnWrap { margin: 40px 0; text-align: center; }
.btnWrap.btnCetnerRight { text-align: center; }
.btnWrap.btnLeft { text-align: left; }
.btnWrap.btnRight { text-align: right; }
@media print, screen and (min-width: 768px) { .btnWrap.btnCetnerRight { text-align: right; } }

.btn { padding: 10px 60px 8px 0; display: inline-block; margin: 0; font-size: 14px; line-height: 1.2; font-weight: normal; -ms-touch-action: manipulation; touch-action: manipulation; text-decoration: none; transition: .3s ease-in; user-select: none; position: relative; color: #41210e; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; }
.btn:after { position: absolute; right: 0; content: ""; width: 50px; height: 30px; background: url("images/common/btn_arrow_off.svg") no-repeat center right; background-size: 50px 30px; top: 50%; transform: translateY(-50%); }
.btn:hover, .btn:focus { color: #aa4b69 !important; }
.btn:hover:after, .btn:focus:after { background: url("images/common/btn_arrow_on.svg") no-repeat center right; background-size: 50px 30px; }
.btn.whiteShadow { text-shadow: 1px 1px 5px #fff; }

/* ----------------------------------- */
/* カラム */
/* ----------------------------------- */
.column2Wrap { display: flex; flex-wrap: wrap; justify-content: space-between; margin-bottom: 40px; }
.column2Wrap .columnBox { flex-basis: 100%; margin-top: 0; }
.column2Wrap .columnBox:nth-of-type(n + 2) { margin-top: 20px; }
.column2Wrap.sp140 .columnBox { flex-basis: 100%; max-width: 100%; }
.column2Wrap.sp140 .columnBox:nth-of-type(n + 2) { margin-top: 20px; }

.column3Wrap { display: flex; flex-wrap: wrap; justify-content: space-between; margin-bottom: 40px; }
.column3Wrap .columnBox { flex-basis: 100%; max-width: 100%; }
.column3Wrap .columnBox img { width: 100%; max-width: 100%; }
.column3Wrap .columnBox p:last-child { margin-bottom: 0; }
.column3Wrap .columnBox:nth-of-type(n + 2) { margin-top: 20px; }

.column4Wrap { display: flex; flex-wrap: wrap; justify-content: space-between; margin-bottom: 40px; }
.column4Wrap .columnBox { flex-basis: 100%; }
.column4Wrap .columnBox:nth-of-type(n + 2) { margin-top: 20px; }
.column4Wrap .columnBox img { width: 100%; }

.column6Wrap { display: flex; flex-wrap: wrap; justify-content: space-between; }
.column6Wrap .columnBox { flex-basis: calc( 50% - 5px ); max-width: calc( 50% - 5px ); }
.column6Wrap .columnBox:nth-of-type(n + 3) { margin-top: 20px; }

.column2_3_3 .columnBox { flex-basis: calc( 50% - 5px ); max-width: calc( 50% - 5px ); }
.column2_3_3 .columnBox:nth-of-type(2) { margin-top: 0; }
.column2_3_3 .columnBox:nth-of-type(n + 3) { margin-top: 20px; }

.column2_4_4 .columnBox { flex-basis: calc( 50% - 10px ); max-width: calc( 50% - 10px ); }
.column2_4_4 .columnBox:nth-of-type(-n+2) { margin-top: 0; }

.columnBox { overflow: hidden; }
.columnBox img { align-self: baseline; max-width: 100%; }
.columnBox p:last-of-type { margin: 0; }

.borderBox .columnBox { padding: 15px 20px; border: 1px solid #eee; overflow: visible; }
.borderBox .columnBox + .borderNone { border: none; }

@media print, screen and (min-width: 768px) { .column2Wrap .columnBox { flex-basis: calc( 50% - 10px ); max-width: calc( 50% - 10px ); }
  .column2Wrap .columnBox p:last-of-type { margin-bottom: 0; }
  .column2Wrap .columnBox:nth-of-type(n + 2) { margin-top: 0; }
  .column2Wrap .columnBox:nth-of-type(n + 3) { margin-top: 20px; }
  .column2Wrap.sp3_7 .columnBox:nth-of-type(odd) { flex-basis: 300px; max-width: 300px; }
  .column2Wrap.sp3_7 .columnBox:nth-of-type(even) { flex-basis: calc( 100% - 320px ); max-width: calc( 100% - 320px ); }
  .column2Wrap.sp7_3 .columnBox:nth-of-type(odd) { flex-basis: calc( 100% - 320px ); max-width: calc( 100% - 320px ); }
  .column2Wrap.sp7_3 .columnBox:nth-of-type(even) { flex-basis: 300px; max-width: 300px; }
  .column2Wrap.sp140 .columnBox:nth-of-type(-n + 2) { margin-top: 0; }
  .column2Wrap.sp140 .columnBox:nth-of-type(n + 3) { margin-top: 20px; }
  .column2Wrap.sp140 .columnBox:nth-of-type(odd) { flex-basis: 140px; max-width: 140px; }
  .column2Wrap.sp140 .columnBox:nth-of-type(even) { flex-basis: calc( 100% - 160px ); max-width: calc( 100% - 160px ); }
  .column2Wrap.sp250 .columnBox:nth-of-type(odd) { flex-basis: 250px; max-width: 250px; }
  .column2Wrap.sp250 .columnBox:nth-of-type(even) { flex-basis: calc( 100% - 270px ); max-width: calc( 100% - 270px ); }
  .column2Wrap.sp250 .columnBox:nth-of-type(n + 2) { margin-top: 0; }
  .column2Wrap.sp250 .columnBox:nth-of-type(n + 3) { margin-top: 0; }
  .column2Wrap .column2Wrap .columnBox { flex-basis: calc( 50% - 10px ); max-width: calc( 50% - 10px ); }
  .column3Wrap .columnBox { flex-basis: calc( 50% - 10px ); max-width: calc( 50% - 10px ); }
  .column3Wrap .columnBox:nth-of-type(n + 2) { margin-top: 0; }
  .column3Wrap .columnBox:nth-of-type(n + 3) { margin-top: 20px; }
  .column4Wrap { position: relative; }
  .column4Wrap .columnBox { flex-basis: calc( 50% - 10px ); max-width: calc( 50% - 10px ); }
  .column4Wrap .columnBox p:last-child { margin-bottom: 0; }
  .column4Wrap .columnBox:nth-of-type(n + 2) { margin-top: 0; }
  .column4Wrap .columnBox:nth-of-type(n + 3) { margin-top: 20px; }
  .column6Wrap { display: flex; flex-wrap: wrap; justify-content: flex-start; }
  .column6Wrap .columnBox { flex-basis: calc( (100% - 50px) / 6); max-width: calc( (100% - 50px) / 6); margin-right: 10px; }
  .column6Wrap .columnBox:last-of-type { margin-right: 0; }
  .column6Wrap .columnBox:nth-of-type(n + 3) { margin-top: 0; }
  .column6Wrap .columnBox:nth-of-type(n + 4) { margin-top: 0; }
  .column1_1_2 .columnBox { flex-basis: 100%; max-width: 100%; }
  .column1_1_2 .columnBox:nth-of-type(n + 2) { margin-top: 20px; }
  .column1_2_3 .columnBox { flex-basis: calc( 50% - 10px ); max-width: calc( 50% - 10px ); }
  .column1_3_3:after { content: ""; width: calc( 33.333% - 10px ); }
  .column1_3_3 .columnBox { flex-basis: calc( 33.333% - 10px ); max-width: calc( 33.333% - 10px ); }
  .column1_3_3 .columnBox:nth-of-type(n + 2) { margin-top: 0; }
  .column1_3_3 .columnBox:nth-of-type(n + 4) { margin-top: 20px; }
  .column2_3_3:after { content: ""; width: calc( 33.3333% - 10px ); }
  .column2_3_3 .columnBox { flex-basis: calc( 33.3333% - 10px ); max-width: calc( 33.3333% - 10px ); }
  .column2_3_3 .columnBox:nth-of-type(n + 3) { margin-top: 0; }
  .column2_3_3 .columnBox:nth-of-type(n + 4) { margin-top: 20px; }
  .column2_4_4 .columnBox { flex-basis: calc( 25% - 10px ); max-width: calc( 25% - 10px ); }
  .column2_4_4 .columnBox:nth-of-type(-n+4) { margin-top: 0; } }
@media print, screen and (min-width: 992px) { .column2Wrap.lp3_7 .columnBox:first-of-type { flex-basis: 300px; max-width: 300px; }
  .column2Wrap.lp3_7 .columnBox:last-of-type { flex-basis: calc( 100% - 320px ); max-width: calc( 100% - 320px ); }
  .column2Wrap.lp7_3 .columnBox:first-of-type { flex-basis: calc( 100% - 320px ); max-width: calc( 100% - 320px ); }
  .column2Wrap.lp7_3 .columnBox:last-of-type { flex-basis: 300px; max-width: 300px; }
  .column3Wrap:after { content: ""; width: calc( 33.333% - 10px ); }
  .column3Wrap .columnBox { flex-basis: calc( 33.333% - 10px ); max-width: calc( 33.333% - 10px ); }
  .column3Wrap .columnBox:nth-of-type(-n + 3) { margin-top: 0; }
  .column3Wrap .columnBox:nth-of-type(n + 4) { margin-top: 20px; }
  .column4Wrap { position: relative; }
  .column4Wrap:before { content: ""; display: block; width: calc( 25% - 10px ); order: 1; }
  .column4Wrap:after { content: ""; width: calc( 25% - 10px ); display: block; }
  .column4Wrap .columnBox { flex-basis: calc( 25% - 10px ); max-width: calc( 25% - 10px ); }
  .column4Wrap .columnBox:nth-of-type(n + 3) { margin-top: inherit; }
  .column4Wrap .columnBox:nth-of-type(n + 5) { margin-top: 20px; }
  .column1_1_2 .columnBox { flex-basis: calc( 50% - 10px ); max-width: calc( 50% - 10px ); }
  .column1_1_2 .columnBox:nth-of-type(-n + 2) { margin-top: 0; }
  .column1_2_3 .columnBox { flex-basis: calc( 33.333% - 10px ); max-width: calc( 33.333% - 10px ); } }
/* ---------------------------------------------------------------- */
/* ヘッダー */
/* ---------------------------------------------------------------- */
#header { margin: 0; padding: 10px 0; background: #fff; position: fixed; top: 0; z-index: 3; width: 100%; transition: .3s ease; }
#header + #main { margin-top: 84px; }
#header #headerCnt { transition: .1s ease; }
#header #headerCnt .headerInner { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; margin: 0 0 0 10px; transition: .3s ease; }
#header #headerCnt .headerInner .headrInner { margin: 10px 0 0 0; }
#header #headerCnt #headerRead { flex-basis: 100%; max-width: 100%; position: relative; display: flex; align-items: center; margin: 0 0 10px; }
#header #headerCnt #headerRead h1 { color: #a57c52; font-size: 12px; font-weight: 100; margin: 0; padding: 0; line-height: 1.2; }
#header #headerCnt #headerList { display: none; }
#header #headerCnt #headerList ul { margin: 0 0 0 auto; padding: 0; display: flex; align-items: center; }
#header #headerCnt #headerList ul li { list-style: none; margin: 0; padding: 0; font-size: 12px; line-height: 1; color: #474343; }
#header #headerCnt #headerList ul li + li { margin-left: 15px; }
#header #headerCnt #headerList ul li a { font-size: 14px; text-decoration: none; color: #474343; white-space: nowrap; }
#header #headerCnt #headerList ul li a:hover { text-decoration: underline; }
#header #headerCnt #logoArea { flex-basis: 230px; max-width: 230px; align-self: center; padding: 0; margin: 0; }
#header #headerCnt #logoArea #logo { margin: 0; }
#header #headerCnt #logoArea a { display: block; width: 100%; }
#header #headerCnt #logoArea a img { max-width: auto; height: 60px; }
#header #headerCnt #logoArea p { display: none; }
#header #headerCnt #mainNaviArea { flex-basis: calc( 100% - 240px ); max-width: calc( 100% - 240px ); }
@media print, screen and (min-width: 768px) { #header { margin: 0; padding: 10px 0 20px; }
  #header + #main { margin-top: 96px; }
  #header #headerCnt { width: 720px; margin: 0 auto; }
  #header #headerCnt .headerInner { margin: 0; }
  /* #header #headerCnt .headerInner + .headerInner { margin: 10px 0 0 0; } */
  #header #headerCnt #headerRead { flex-basis: calc( 100% - 100px ); max-width: calc( 100% - 100px ); position: relative; display: flex; align-items: center; margin: 0; }
  #header #headerCnt #headerRead h1 { font-size: 14px; }
  #header #headerCnt #headerList { flex-basis: 80px; max-width: 80px; margin: 0 0 0 auto; display: flex; }
  #header #headerCnt #headerList ul li { display: none; }
  #header #headerCnt #headerList ul li:last-of-type { display: inline-flex; }
  #header #headerCnt #logoArea #logo { margin: 0; } }
@media print, screen and (min-width: 992px) { #header + #main { margin-top: 148px; }
  #header #headerCnt { width: 940px; }
  /* #header #headerCnt .headerInner + .headerInner { margin-top: 25px; } */
  #header #headerCnt #headerRead { flex-basis: 40%; max-width: 40%; }
  #header #headerCnt #headerList { flex-basis: 60%; max-width: 60%; }
  #header #headerCnt #headerList ul li { display: inline-flex; }
  #header #headerCnt #headerList ul li:last-of-type { display: inline-flex; }
  #header #headerCnt #logoArea { margin: 0; } }
@media print, screen and (min-width: 1200px) { #header #headerCnt { width: 1140px; } }

/* メニュー固定 */
/* ----------------------------------- */
#header.fixed { background-color: #fff; padding: 15px 0; box-shadow: 1px 1px 10px #aaa; }
#header.fixed #headerCnt .headerInner:nth-of-type(1) { height: 0; overflow: hidden; margin: 0; padding: 0; opacity: 0; }
#header.fixed #headerCnt .headerInner + .headerInner { margin-top: 0; }

/* ---------------------------------------------------------------- */
/* ヘッダーメニュー */
/* ---------------------------------------------------------------- */
/* SPメニュー */
/* ----------------------------------- */
#mainNaviArea { display: none; }

.drawer { position: relative; }
.drawer #mainNaviSpArea { position: relative; margin: 0 15px 0 auto; }
.drawer #mainNaviSpArea .drawer-hamburger { position: relative; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; padding: 0; margin-top: -10px; overflow: visible; }
.drawer #mainNaviSpArea .drawer-hamburger:before { position: absolute; font-size: 10px; content: 'MENU'; color: #a57c52; bottom: -3px; }
.drawer #mainNaviSpArea .drawer-hamburger-icon { margin-top: 0px; background: #a57c52; width: 30px; height: 3px; border-radius: 3px; }
.drawer #mainNaviSpArea .drawer-hamburger-icon:before { background: #a57c52; height: 3px; border-radius: 3px; top: -8px; }
.drawer #mainNaviSpArea .drawer-hamburger-icon:after { background: #a57c52; height: 3px; border-radius: 3px; top: 8px; }
.drawer .drawer-nav { background: #6f5d44; z-index: 10; }
.drawer .drawer-nav ul { margin: 0; padding: 0; width: 100%; }
.drawer .drawer-nav ul li { list-style: none; display: flex; flex-wrap: wrap; align-items: center; border-bottom: 1px solid #fff; position: relative; background: #6f5d44; }
.drawer .drawer-nav ul li a { width: 100%; color: #fff; min-height: 40px; padding: 9px 15px; background: #6f5d44; text-decoration: none; }
.drawer .drawer-nav ul li a:hover { background: #aa4b69; }
.drawer .drawer-nav ul li.children { overflow: hidden; }
.drawer .drawer-nav ul li.children > a { width: calc( 100% - 40px ); cursor: pointer; }
.drawer .drawer-nav ul li.children i { position: absolute; width: 40px; height: 40px; display: block; text-align: center; padding-top: 9px; margin: 0 0 0 auto; font-size: 20px; color: #fff; transition: .1s ease; top: 0; right: 0; }
.drawer .drawer-nav ul li.children i.active { transform: rotate(-180deg); cursor: pointer; }
.drawer .drawer-nav ul li.children .sub-menu { display: none; }
.drawer .drawer-nav ul li.children .sub-menu li a { min-height: inherit; display: block; padding: 8px 15px 8px 27px; background: #554939; }
.drawer .drawer-nav ul li.children .sub-menu li a:hover { background: #aa4b69; }
.drawer .drawer-nav ul li.children .sub-menu li.children .sub-menu { display: none; margin: 0; padding: 0; }
.drawer .drawer-nav ul li.children .sub-menu li.children .sub-menu li a { padding: 6px 15px 6px 41px; }
.drawer .drawer-nav ul li.children .sub-menu li.children .sub-menu li a:hover { background: #aa4b69; }
.drawer .drawer-nav ul li.children .sub-menu li.children .sub-menu li:last-child { border: none; }
.drawer .drawer-nav ul li.children .sub-menu li:last-child { border: none; }
.drawer .drawer-nav ul li.noLink > a { pointer-events: none; }
.drawer.drawer-open #mainNaviSpArea { position: absolute; right: 120px; }
.drawer.drawer-open #mainNaviSpArea .drawer-hamburger:before { content: 'close'; }
.drawer.drawer-open #mainNaviSpArea .drawer-hamburger .drawer-hamburger-icon { background: none; }
.drawer.drawer-open #mainNaviSpArea .drawer-hamburger .drawer-hamburger-icon:after { background: #6f5d44; top: inherit; }
.drawer.drawer-open #mainNaviSpArea .drawer-hamburger .drawer-hamburger-icon:before { background: #6f5d44; top: inherit; }
.drawer.drawer-open #mainNaviSpArea .drawer-nav { width: 270px; }

/* ----------------------------------- */
/* PCメニュー */
/* ----------------------------------- */
/* @media print, screen and (min-width: 768px) { */
@media print, screen and (min-width: 930px) { #mainNaviSpArea { display: none; }
  #mainNaviArea { display: block; margin: 0; padding: 0; }
  #mainNaviArea #mainNavi { padding: 0; margin: 0 0 0 auto; }
  #mainNaviArea #mainNavi ul { justify-content: flex-end; margin: 0 0 0 auto; padding: 0; display: flex; align-items: center; }
  #mainNaviArea #mainNavi ul > li { font-size: 13px; list-style: none; margin: 0; padding: 0 5px 0 5px; position: relative; }
  #mainNaviArea #mainNavi ul > li + li:before { content: ""; position: absolute; left: -2px; top: 0; width: 1px; height: 16px; background: #eaeaea; display: block; }
  #mainNaviArea #mainNavi ul > li:last-of-type { padding: 0 0 0 5px; }
  #mainNaviArea #mainNavi ul > li a { width: 100%; color: #41210e; margin: 0; padding: 0; text-decoration: none; line-height: 1.2; }
  #mainNaviArea #mainNavi ul > li a:hover, #mainNaviArea #mainNavi ul > li a:focus, #mainNaviArea #mainNavi ul > li a:active { cursor: pointer; color: #aa4b69; }
  #mainNaviArea #mainNavi ul > li a span { flex-basis: 100%; font-size: 12px; }
  #mainNaviArea #mainNavi ul > li.current > a { color: #aa4b69 !important; }
  #mainNaviArea #mainNavi ul > li ul.sub-menu { position: absolute; top: 100%; left: 0; display: block; text-align: left; z-index: 0; padding: 0; margin: 0; height: 0; width: 180px; }
  #mainNaviArea #mainNavi ul > li ul.sub-menu li { overflow: hidden; padding: 0; margin: 0; height: 0; width: 180px; color: #fff; }
  #mainNaviArea #mainNavi ul > li ul.sub-menu li a { margin: 0; opacity: 0; padding: 0 10px; font-size: 14px; display: block; text-align: left; position: relative; color: #fff; }
  #mainNaviArea #mainNavi ul > li:hover, #mainNaviArea #mainNavi ul > li:focus { transition: .3s ease-in-out; }
  #mainNaviArea #mainNavi ul > li:hover ul.sub-menu, #mainNaviArea #mainNavi ul > li:focus ul.sub-menu { z-index: 1; height: 100%; opacity: 1; }
  #mainNaviArea #mainNavi ul > li:hover ul.sub-menu li, #mainNaviArea #mainNavi ul > li:focus ul.sub-menu li { padding: 0; height: auto; opacity: 1; width: 180px; text-align: left; background: #6f5d44; border-bottom: #ccc 1px solid; }
  #mainNaviArea #mainNavi ul > li:hover ul.sub-menu li a, #mainNaviArea #mainNavi ul > li:focus ul.sub-menu li a { padding: 10px; opacity: 1; display: block; border-bottom: 1px solid #6f5d44; transition: .3s ease-in-out; }
  #mainNaviArea #mainNavi ul > li:hover ul.sub-menu li a:last-of-type, #mainNaviArea #mainNavi ul > li:focus ul.sub-menu li a:last-of-type { border: none; }
  #mainNaviArea #mainNavi ul > li:hover ul.sub-menu li:last-of-type a, #mainNaviArea #mainNavi ul > li:focus ul.sub-menu li:last-of-type a { border-bottom: none; }
  #mainNaviArea #mainNavi ul > li.current-menu-item > a { color: #aa4b69 !important; }
  #mainNaviArea #mainNavi ul > li.current-menu-item > a ul.sub-menu > a { color: #aa4b69 !important; background: #fff; }
  #mainNaviArea #mainNavi ul > li.current-menu-item > a ul.sub-menu > a:hover, #mainNaviArea #mainNavi ul > li.current-menu-item > a ul.sub-menu > a:focus { color: #accent_color2 !important; }
  #mainNaviArea #mainNavi ul > li.current-menu-parent > ul li.current-menu-item a { color: #aa4b69 !important; background: #fff; } }
/* @media print, screen and (min-width: 992px) { #mainNaviArea { display: block; margin: 0; padding: 0; }
  #mainNaviArea #mainNavi { padding: 0; margin: 0 0 0 auto; }
  #mainNaviArea #mainNavi ul > li { font-size: 14px; list-style: none; margin: 0; padding: 0 15px 0 15px; position: relative; }
  #mainNaviArea #mainNavi ul > li + li:before { content: ""; position: absolute; top: 50%; transform: translateY(-15px); width: 1px; height: 30px; background: #eaeaea; display: block; }
  #mainNaviArea #mainNavi ul > li:last-of-type { padding: 0 0 0 15px; }
  #mainNaviArea #mainNavi ul > li a { width: 100%; color: #41210e; margin: 0; padding: 0; text-decoration: none; line-height: 1.2; }
  #mainNaviArea #mainNavi ul > li a:hover, #mainNaviArea #mainNavi ul > li a:focus, #mainNaviArea #mainNavi ul > li a:active { cursor: pointer; color: #aa4b69; }
  #mainNaviArea #mainNavi ul > li a span { flex-basis: 100%; font-size: 12px; }
  #mainNaviArea #mainNavi ul > li.current > a { color: #aa4b69 !important; }
  #mainNaviArea #mainNavi ul > li:hover, #mainNaviArea #mainNavi ul > li:focus { transition: .3s ease-in-out; }
  #mainNaviArea #mainNavi ul > li:hover ul.sub-menu, #mainNaviArea #mainNavi ul > li:focus ul.sub-menu { z-index: 1; height: 100%; opacity: 1; }
  #mainNaviArea #mainNavi ul > li:hover ul.sub-menu li, #mainNaviArea #mainNavi ul > li:focus ul.sub-menu li { padding: 0; height: auto; opacity: 1; width: 180px; text-align: left; background: #6f5d44; border-bottom: #ccc 1px solid; }
  #mainNaviArea #mainNavi ul > li:hover ul.sub-menu li a, #mainNaviArea #mainNavi ul > li:focus ul.sub-menu li a { padding: 10px; opacity: 1; display: block; border-bottom: 1px solid #6f5d44; transition: .3s ease-in-out; }
  #mainNaviArea #mainNavi ul > li:hover ul.sub-menu li a:last-of-type, #mainNaviArea #mainNavi ul > li:focus ul.sub-menu li a:last-of-type { border: none; }
  #mainNaviArea #mainNavi ul > li:hover ul.sub-menu li:last-of-type a, #mainNaviArea #mainNavi ul > li:focus ul.sub-menu li:last-of-type a { border-bottom: none; }
  #mainNaviArea #mainNavi ul > li.current-menu-item > a { color: #aa4b69 !important; }
  #mainNaviArea #mainNavi ul > li.current-menu-item > a ul.sub-menu > a { color: #aa4b69 !important; background: #fff; }
  #mainNaviArea #mainNavi ul > li.current-menu-item > a ul.sub-menu > a:hover, #mainNaviArea #mainNavi ul > li.current-menu-item > a ul.sub-menu > a:focus { color: #accent_color2 !important; }
  #mainNaviArea #mainNavi ul > li.current-menu-parent > ul li.current-menu-item a { color: #aa4b69 !important; background: #fff; } } */
/* ---------------------------------------------------------------- */
/* フッターエリア */
/* ---------------------------------------------------------------- */
#footer { padding: 60px 0 60px; position: relative; }
#footer .footerLogo { margin-bottom: 50px; }
#footer #footerNaviWrap { display: flex; flex-wrap: wrap; margin: 0 0 60px; }
#footer #footerNaviWrap .naviBox { flex-basis: 100%; max-width: 100%; }
#footer #footerNaviWrap .naviBox ul { margin: 0; padding: 0; }
#footer #footerNaviWrap .naviBox ul > li { list-style: none; }
#footer #footerNaviWrap .naviBox ul > li > a { display: block; color: #474343; text-decoration: none; padding: 12px 10px 12px 0; border-bottom: 1px solid #474343; }
#footer #footerNaviWrap .naviBox ul > li.children { position: relative; font-weight: bold; cursor: pointer; }
#footer #footerNaviWrap .naviBox ul > li.children:after { font-family: 'fontawesome'; content: '\f067'; position: absolute; display: block; right: 10px; top: 14px; }
#footer #footerNaviWrap .naviBox ul > li.children.active:after { content: '\f068'; }
#footer #footerNaviWrap .naviBox ul > li.children > a:first-child { pointer-events: none; text-decoration: none; display: block; }
#footer #footerNaviWrap .naviBox ul > li .sub-menu { display: none; padding: 0; }
#footer #footerNaviWrap .naviBox ul > li .sub-menu li { padding: 0; font-size: 14px; }
#footer #footerNaviWrap .naviBox ul > li .sub-menu li > a { font-weight: normal; font-size: 14px; padding: 5px 10px 5px 1em; position: relative; border-top: 1px solid #ccc; border-bottom: none; }
#footer #footerNaviWrap .naviBox ul > li .sub-menu li > a:after { font-family: 'fontawesome'; content: '\f105'; position: absolute; display: block; right: 10px; top: 5px; }
#footer #footerNaviWrap .naviBox ul > li .sub-menu li > a:hover { background: #898383; color: #fff; }
#footer .footerColumn { display: flex; justify-content: space-between; align-items: flex-end; }
#footer .footerColumn #copyright p { color: #543F33; font-size: 12px; padding: 0; }
#footer .footerColumn #pagetopArea { width: 50px; height: 50px; margin: 0 0 10px auto; }
#footer .footerColumn #pagetopArea a { width: 100%; height: 100%; display: block; background: url("images/common/icon_pagetop_off.svg") no-repeat; background-size: 50px; }
#footer .footerColumn #pagetopArea a:hover { background: url("images/common/icon_pagetop_on.svg") no-repeat; }
@media print, screen and (min-width: 768px) { #footer #footerNaviWrap { justify-content: space-between; margin: 0 0 80px; }
  #footer #footerNaviWrap .naviBox { flex: 1 0 24%; max-width: 24%; }
  #footer #footerNaviWrap .naviBox .footerNavi > ul > li > a { border: none; }
  #footer #footerNaviWrap .naviBox .footerNavi > ul > li.children + .children { margin-top: 25px; }
  #footer #footerNaviWrap .naviBox .footerNavi > ul > li.children:after { display: none; }
  #footer #footerNaviWrap .naviBox .footerNavi > ul > li.children:hover { cursor: auto; }
  #footer #footerNaviWrap .naviBox .footerNavi .sub-menu { display: block; }
  #footer #footerNaviWrap .naviBox .footerNavi .sub-menu li { margin-bottom: 10px; }
  #footer #footerNaviWrap .naviBox .footerNavi .sub-menu li a { border: none; display: inline; padding: 0; }
  #footer #footerNaviWrap .naviBox .footerNavi .sub-menu li a:after { display: none; }
  #footer #footerNaviWrap .naviBox .footerNavi .sub-menu li a:hover { background: none; color: #aa4b69; } }
@media print, screen and (min-width: 992px) { #footer { padding-bottom: 0; margin: 0; }
  #footer #footerCnt { flex-basis: 234px; max-width: 234px; justify-content: center; margin: 0; } }

/* ---------------------------------------------------------------- */
/* サイドバー  */
/* ---------------------------------------------------------------- */
#sidebar .widget-area { display: none; }
#sidebar .widget img { max-width: 100%; }

/* ---------------------------- */
/* パンくず */
/* ---------------------------- */
.breadcrumbs { padding: 7px 0 5px 0; margin: 0 0 60px; font-size: 12px; overflow: hidden; color: #6f5d44; min-height: 30px; }
.breadcrumbs a { font-size: 12px; text-decoration: none; padding: 2px 0; color: #a57c52; }
.breadcrumbs a:hover, .breadcrumbs a:focus { color: #aa4b69; text-decoration: underline; }

/* ---------------------------- */
/* メインスライダー  */
/* ---------------------------- */
#sliderArea { max-height: 100%; position: relative; background: #fff; }
#sliderArea .swiper-slide { overflow: hidden; position: relative; }
#sliderArea .swiper-slide:after { content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.1); }
#sliderArea .swiper-slide img { width: 100%; height: auto; position: relative; }
#sliderArea .copy { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 1; max-width: 600px; width: 90%; display: none; padding: 0 15px; /*background-color: rgba(255, 255, 255, 0.8);*/ }
#sliderArea .copy h2 { color: #474343; text-shadow: 1px 1px 0 #fff,1px 1px 0 #fff; text-align: center; font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", serif; font-weight: 200; font-size: 18px; }
#sliderArea .copy h2 span { font-size: 1.4em; color: #2d787c; }
@media print, screen and (min-width: 768px) { #sliderArea .copy h2 { font-size: 26px; } }
@media print, screen and (min-width: 992px) { #sliderArea #mainSliderSwiper { max-width: calc(100% - 40px - 40px); margin: 0 auto; }
  #sliderArea .copy h2 { font-size: 28px; }
  #sliderArea .swiper-slide { position: relative; height: 533px; overflow: hidden; }
  #sliderArea .swiper-slide img { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; height: auto; } }

/* ---------------------------------------------------------------- */
/* HOME */
/* ---------------------------------------------------------------- */
#indexPage p { text-align: justify; text-justify: inter-ideograph; margin-bottom: 35px; }
#indexPage h3 { margin: 0 0 36px; padding: 0; color: #2d787c; font-size: 14px; font-weight: 100; line-height: 1.2; font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", serif; }
#indexPage h3 span { font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; font-weight: 800; font-size: 24px; margin-top: 21px; display: block; color: #474343; line-height: 1.2; }
#indexPage #mindArea { padding: 40px 0 60px; position: relative; overflow: hidden; }
#indexPage #mindArea h3 { color: #2D787C; text-align: center; margin: 0 0 20px; padding: 0 15px; font-size: 14px; font-weight: 100; line-height: 1; }
#indexPage #mindArea h3 span { font-weight: bold; font-size: 24px; margin-top: 10px; display: block; color: #474343; line-height: 1.2; }
#indexPage #mindArea .textBox { display: flex; flex-wrap: wrap; justify-content: left; align-items: center; margin: 20px 0; padding: 0; }
#indexPage #mindArea .textBox p { margin: 0; font-size: 16px; }
#indexPage #mindArea .textBox p br { display: none; }
#indexPage #lineupArea { padding: 0 0 80px; }
#indexPage #lineupArea h3 { text-align: left; margin: 0; padding: 0; font-size: 14px; }
#indexPage #lineupArea h4 { margin: 10px 0 20px; padding: 0; }
#indexPage #lineupArea .lineupWrap { display: flex; flex-wrap: wrap; margin-bottom: 30px; }
#indexPage #lineupArea .lineupWrap .lineupBox { flex-basis: 100%; max-width: 100%; }
#indexPage #lineupArea .lineupWrap .lineupBox:nth-of-type(1) p { margin: 0; }
#indexPage #lineupArea .lineupWrap .lineupBox:nth-of-type(1) br { display: none; }
#indexPage #lineupArea .lineupWrap .lineupBox:nth-of-type(2) img { display: block; margin: 0 auto; }
#indexPage #lineupArea #sliderSwiper .swiper-slide { padding-bottom: 20px; }
#indexPage #lineupArea #sliderSwiper .swiper-slide a { color: #474343; text-decoration: none; }
#indexPage #lineupArea #sliderSwiper .swiper-slide a img { margin-bottom: 5px; }
#indexPage #lineupArea #sliderSwiper .swiper-slide a span { padding: 2px 40px; display: block; }
#indexPage #lineupArea #sliderSwiper .swiper-slide a:hover { color: #aa4b69; }
#indexPage #lineupArea #sliderSwiper .swiper-button-prev { background: url("images/common/swiper_arrow_right.svg") no-repeat #fff center center; width: 25px; height: 25px; background-size: 6px 12px; left: 5px; top: 35%; }
#indexPage #lineupArea #sliderSwiper .swiper-button-next { background: url("images/common/swiper_arrow_left.svg") no-repeat #fff center center; background-size: 6px 12px; width: 25px; height: 25px; right: 5px; top: 35%; }
#indexPage #lineupArea #sliderSwiper .swiper-button-prev, #indexPage #lineupArea #sliderSwiper .swiper-button-next { transition: .3s ease; }
#indexPage #lineupArea #sliderSwiper .swiper-button-prev:hover, #indexPage #lineupArea #sliderSwiper .swiper-button-next:hover { background-color: #eee !important; }
#indexPage #lineupArea .lineupList ul { margin: 0 auto; padding: 0; display: flex; flex-wrap: wrap; justify-content: space-between; width: 100%; border-top: 1px solid #41210e; border-right: 1px solid #41210e; }
#indexPage #lineupArea .lineupList ul li { flex-basis: 100%; max-width: 100%; list-style: none; border-bottom: 1px solid #41210e; border-left: 1px solid #41210e; }
#indexPage #lineupArea .lineupList ul li a { font-size: 14px; height: 40px; padding: 0 15px; color: #41210e; text-decoration: none; position: relative; width: 100%; display: flex; align-items: center; }
#indexPage #lineupArea .lineupList ul li a:after { position: absolute; right: 10px; display: inline-block; content: '\f105'; font: 16px/1 FontAwesome; text-decoration: none; }
#indexPage #lineupArea .lineupList ul li a:hover { background: #41210e; color: #fff; }
#indexPage #lineupArea .lineupList ul li a:hover:after { color: currentColor; }
#indexPage #naturaArea { background: #fff; }
#indexPage #naturaArea .naturaBackground { background: url("images/home/wall.jpg") center center; padding: 50px 0; }
#indexPage #naturaArea .read, #indexPage #naturaArea h3, #indexPage #naturaArea h4 { font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", serif; text-align: center; }
#indexPage #naturaArea .read { text-align: center; font-size: 18px; margin: 0 0 25px; }
#indexPage #naturaArea h3 { font-size: 18px; font-weight: bold; color: #474343; margin: 0 0 20px; line-height: 1.6; }
#indexPage #naturaArea h4 { font-size: 32px; margin: 0 0 25px; line-height: 1.2; }
#indexPage #naturaArea .naturaWrap { display: flex; justify-content: space-between; }
#indexPage #naturaArea .naturaWrap .naturaBox { flex-basis: calc( 50% - 5px ); max-width: calc( 50% - 5px ); }
#indexPage #naturaArea .btnWrap { background: #fff; }
#indexPage #worksArea { background: url("images/home/bg_news.png") no-repeat; background-position: center bottom; background-size: auto 100%; padding: 60px 0 30px; }
#indexPage #worksArea .worksHeadWwap { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; margin: 0 0 15px; }
#indexPage #worksArea .worksHeadWwap .worksHeadBox { flex-basis: 100%; max-width: 100%; }
#indexPage #worksArea .worksHeadWwap .worksHeadBox h3 { margin: 0; }
#indexPage #worksArea .worksHeadWwap .worksHeadBox .btnWrap { margin: 0; }
#indexPage #worksArea .worksHeadWwap .worksHeadBox .btn { margin: 10px 0; }
#indexPage #worksArea .worksWrap { display: flex; flex-wrap: wrap; justify-content: space-between; }
#indexPage #worksArea .worksWrap .workBox { background: #fff; flex-basis: 100%; max-width: 100%; padding: 10px; }
#indexPage #worksArea .worksWrap .workBox + .workBox { margin-top: 20px; }
#indexPage #worksArea .worksWrap a { text-decoration: none; color: inherit; }
#indexPage #worksArea .worksWrap a:hover { color: #aa4b69; }
#indexPage #worksArea .worksWrap a:hover img { opacity: .8; }
#indexPage #worksArea .worksWrap a:hover p { color: currentColor; }
#indexPage #worksArea .worksWrap .thumbnail .workImage { position: relative; width: 100%; overflow: hidden; display: block; }
#indexPage #worksArea .worksWrap .thumbnail .workImage:before { content: ""; display: block; padding-top: 60%; }
#indexPage #worksArea .worksWrap .thumbnail .workImage img { width: 100%; height: auto; position: absolute; top: 0; left: 0; bottom: 0; right: 0; }
#indexPage #worksArea .worksWrap .workCnt p { margin: 10px 0; color: #a17c52; font-size: 14px; }
#indexPage #worksArea .worksWrap .workCnt h4 { margin: 0 0 10px; font-size: 18px; font-weight: 100; }
#indexPage #voiceArea { padding: 50px 0; background: url("images/home/voice_background.jpg") no-repeat; background-position: center -350px; background-size: 992px auto; }
#indexPage #voiceArea .btnWrap { margin: 0; }
#indexPage #serviceArea { background: #EAEAEA; padding: 90px 0 50px; }
#indexPage #serviceArea .serviceWrap { display: flex; flex-wrap: wrap; justify-content: space-between; margin-bottom: 50px; }
#indexPage #serviceArea .serviceWrap .serviceBox { flex-basis: 100%; max-width: 100%; border-bottom-width: 5px; border-bottom-style: solid; background: #fff; }
#indexPage #serviceArea .serviceWrap .serviceBox + .serviceBox { margin-top: 20px; }
#indexPage #serviceArea .serviceWrap .serviceBox .thumbnail { margin-bottom: 15px; }
#indexPage #serviceArea .serviceWrap .serviceBox .serviceCnt { padding: 15px; }
#indexPage #serviceArea .serviceWrap .serviceBox .serviceCnt h4 { font-size: 22px; margin: 0 0 18px; }
#indexPage #serviceArea .serviceWrap .serviceBox .serviceCnt p { margin: 0 0 20px; }
#indexPage #serviceArea .serviceWrap .serviceBox .serviceCnt .btnWrap { margin: 0; }
#indexPage #serviceArea .serviceWrap .serviceBox:nth-of-type(1) { border-bottom-color: #9f5256; }
#indexPage #serviceArea .serviceWrap .serviceBox:nth-of-type(1) .serviceCnt h4 { color: #9f5256; }
#indexPage #serviceArea .serviceWrap .serviceBox:nth-of-type(2) { border-bottom-color: #b7a351; }
#indexPage #serviceArea .serviceWrap .serviceBox:nth-of-type(2) .serviceCnt h4 { color: #b7a351; }
#indexPage #serviceArea .servicePageLink ul { margin: 0; padding: 0; display: flex; flex-wrap: wrap; }
#indexPage #serviceArea .servicePageLink ul li { flex-basis: 100%; max-width: 100%; list-style: none; position: relative; margin: 0; padding: 0; overflow: hidden; }
#indexPage #serviceArea .servicePageLink ul li a { display: flex; padding-top: 40%; justify-content: center; align-items: center; position: relative; color: #fff; }
#indexPage #serviceArea .servicePageLink ul li a:after { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 0; background: rgba(51, 51, 51, 0.5); transition: .2s ease-in; }
#indexPage #serviceArea .servicePageLink ul li a:hover:after { background: rgba(51, 51, 51, 0); }
#indexPage #serviceArea .servicePageLink ul li a img { width: 100%; height: auto; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 0; opacity: 1; }
#indexPage #serviceArea .servicePageLink ul li a img:hover { opacity: 1; }
#indexPage #serviceArea .servicePageLink ul li a span { position: absolute; top: 0; left: 0; display: flex; align-items: center; justify-content: center; width: calc( 100% - 20px); height: calc( 100% - 20px); margin: 10px; border: 1px solid #fff; z-index: 2; }
#indexPage #eventArea { padding: 90px 0 50px; }
#indexPage #eventArea .btnWrap { margin: 40px 0 0; }
#indexPage #newsArea { margin: 0px 0 50px; padding: 50px 0; background: url("images/home/bg_news.png") no-repeat; background-position: bottom center; background-size: cover; }
#indexPage #newsArea .newsInner { background: rgba(255, 255, 255, 0.9); padding: 25px 15px; }
#indexPage #newsArea .newsColumn { display: flex; flex-wrap: wrap; }
#indexPage #newsArea .newsColumn .columnBox { flex-basis: 100%; max-width: 100%; }
#indexPage #newsArea .btnWrap { margin: 0; text-align: center; }
#indexPage #blogArea { padding: 50px 0; }
@media print, screen and (min-width: 768px) { #indexPage h3 span { margin-top: 10px; }
  #indexPage #mindArea { padding: 90px 0 80px; }
  #indexPage #mindArea h3 { margin: 0 0 40px; font-size: 18px; }
  #indexPage #mindArea h3 span { font-size: 34px; margin-top: 10px; }
  #indexPage #mindArea .mindBox { position: relative; }
  #indexPage #mindArea .mindBox .textBox { background: #fff; position: relative; justify-content: center; align-items: center; margin: 0; padding: 50px 40px; }
  #indexPage #mindArea .mindBox .textBox p { text-align: center; margin: 0; font-size: 16px; line-height: 1.8; }
  #indexPage #mindArea .mindBox .textBox p br { display: block; }
  #indexPage #mindArea .mindBox.first { padding: 0; height: 720px; width: 100%; position: relative; }
  #indexPage #mindArea .mindBox.first .mindImage { position: absolute; right: inherit; left: 18%; width: 1200px; height: 720px; display: block; }
  #indexPage #mindArea .mindBox.first .textBox { position: absolute; top: 80px; }
  #indexPage #mindArea .mindBox.second .mindImage:first-of-type { margin: -50px 0 0; width: 480px; height: 288px; }
  #indexPage #mindArea .mindBox.second .mindImage:last-of-type { margin: -280px 0 0 auto; width: 555px; height: 333px; position: relative; z-index: 0; }
  #indexPage #mindArea .mindBox.second .textBox { max-width: 440px; margin: -50px 0 0 200px; z-index: 1; }
  #indexPage #lineupArea h3 { text-align: left; margin: 0; padding: 0; font-size: 18px; }
  #indexPage #lineupArea .lineupWrap { margin-bottom: 30px; align-items: flex-end; justify-content: space-between; }
  #indexPage #lineupArea .lineupWrap .lineupBox { flex-basis: calc( 50% - 15px ); max-width: calc( 50% - 15px ); }
  #indexPage #lineupArea #sliderSwiper .swiper-button-prev { width: 50px; height: 50px; background-size: 12px 24px; left: calc( 33.3333% - 25px); }
  #indexPage #lineupArea #sliderSwiper .swiper-button-next { background-size: 12px 24px; width: 50px; height: 50px; right: calc( 33.3333% - 25px); }
  #indexPage #lineupArea .lineupList { margin: 20px 0 0 0; }
  #indexPage #lineupArea .lineupList ul { margin: 0 auto; padding: 0; display: flex; flex-wrap: nowrap; justify-content: space-between; width: 100%; border: 1px solid #41210e; }
  #indexPage #lineupArea .lineupList ul li { flex: 1 0 auto; list-style: none; border: none; text-align: center; position: relative; }
  #indexPage #lineupArea .lineupList ul li + li:after { content: "／"; display: block; position: absolute; left: -.5em; top: 50%; transform: translateY(-50%); z-index: 1; }
  #indexPage #lineupArea .lineupList ul li a { color: #41210e; justify-content: center; flex-basis: 100%; max-width: 100%; padding: 19px 5px; height: 100%; }
  #indexPage #lineupArea .lineupList ul li a:after { display: none; }
  #indexPage #lineupArea .lineupList ul li a:hover { background: none; color: #aa4b69; }
  #indexPage #lineupArea .lineupList ul li a:hover:after { color: currentColor; }
  #indexPage #naturaArea { background: #fff; }
  #indexPage #naturaArea .naturaBackground { background: url("images/home/wall.jpg") center center; padding: 80px 0; }
  #indexPage #naturaArea .read, #indexPage #naturaArea h3, #indexPage #naturaArea h4 { font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", serif; text-align: center; }
  #indexPage #naturaArea .read { text-align: center; font-size: 18px; margin: 0 0 25px; }
  #indexPage #naturaArea h3 { font-size: 18px; font-weight: bold; color: #474343; margin: 0 0 15px; }
  #indexPage #naturaArea h4 { font-size: 32px; margin: 0 0 40px; }
  #indexPage #naturaArea .naturaWrap { display: flex; justify-content: space-between; }
  #indexPage #naturaArea .naturaWrap .naturaBox { flex-basis: calc( 50% - 15px ); max-width: calc( 50% - 15px ); }
  #indexPage #naturaArea .btnWrap { background: #fff; }
  #indexPage #worksArea { background-position: center top; background-size: cover; background-attachment: fixed; padding: 80px 0; }
  #indexPage #worksArea .worksHeadWwap { align-items: flex-end; }
  #indexPage #worksArea .worksHeadWwap .worksHeadBox:nth-of-type(1) { flex-basis: 250px; max-width: 250px; }
  #indexPage #worksArea .worksHeadWwap .worksHeadBox:nth-of-type(2) { flex-basis: calc(100% - 250px); max-width: calc(100% - 250px); }
  #indexPage #worksArea .worksHeadWwap .worksHeadBox .btn { margin: 0; display: inline-flex; }
  #indexPage #worksArea .btnBottom { display: none; }
  #indexPage #worksArea .worksWrap .workBox { flex-basis: calc( 50% - 10px ); max-width: calc( 50% - 10px ); }
  #indexPage #worksArea .worksWrap .workBox + .workBox { margin-top: 0; }
  #indexPage #worksArea .worksWrap .workBox:nth-of-type(n + 3) { margin-top: 20px; }
  #indexPage #worksArea .worksWrap a { text-decoration: none; color: inherit; }
  #indexPage #voiceArea { padding: 160px 0 190px; background: url("images/home/voice_background.jpg") no-repeat; background-position: center 65%; background-size: 100% auto; }
  #indexPage #voiceArea .btnWrap { margin: 0; }
  #indexPage #serviceArea { background: #EAEAEA; padding: 80px 0; }
  #indexPage #serviceArea .serviceWrap { margin: 0 0 40px; }
  #indexPage #serviceArea .serviceWrap .serviceBox { flex-basis: calc( 50% - 15px ); max-width: calc( 50% - 15px ); }
  #indexPage #serviceArea .serviceWrap .serviceBox + .serviceBox { margin-top: 0; }
  #indexPage #serviceArea .serviceWrap .serviceBox .thumbnail { margin-bottom: 15px; }
  #indexPage #serviceArea .serviceWrap .serviceBox .serviceCnt { padding: 15px; }
  #indexPage #serviceArea .serviceWrap .serviceBox .serviceCnt h4 { font-size: 22px; margin: 0 0 18px; }
  #indexPage #serviceArea .serviceWrap .serviceBox .serviceCnt p { margin: 0 0 20px; }
  #indexPage #serviceArea .serviceWrap .serviceBox .serviceCnt .btnWrap { margin: 0; }
  #indexPage #serviceArea .serviceWrap .serviceBox:nth-of-type(1) { border-bottom-color: #9f5256; }
  #indexPage #serviceArea .serviceWrap .serviceBox:nth-of-type(1) .serviceCnt h4 { color: #9f5256; }
  #indexPage #serviceArea .serviceWrap .serviceBox:nth-of-type(2) { border-bottom-color: #b7a351; }
  #indexPage #serviceArea .serviceWrap .serviceBox:nth-of-type(2) .serviceCnt h4 { color: #b7a351; }
  #indexPage #serviceArea .servicePageLink ul li { flex-basis: 50%; max-width: 50%; }
  #indexPage #eventArea { padding: 90px 0 50px; }
  #indexPage #eventArea .btnWrap { margin: 40px 0 0; }
  #indexPage #newsArea { padding: 70px 0; background: url("images/home/bg_news.png") no-repeat; background-position: bottom center; background-size: cover; background-attachment: fixed; }
  #indexPage #newsArea .newsInner { padding: 60px 40px 40px 0; }
  #indexPage #newsArea .newsColumn .columnBox:nth-of-type(1) { flex-basis: 190px; max-width: 190px; display: flex; justify-content: center; }
  #indexPage #newsArea .newsColumn .columnBox:nth-of-type(2) { flex-basis: calc( 100% - 190px ); max-width: calc( 100% - 190px ); }
  #indexPage #newsArea .btnWrap { margin: 0; text-align: right; } }
@media print, screen and (min-width: 992px) { #indexPage #mindArea .mindBox.first .mindImage { left: 35%; }
  #indexPage #lineupArea .lineupWrap .lineupBox:nth-of-type(1) { flex-basis: 400px; max-width: 400px; }
  #indexPage #lineupArea .lineupWrap .lineupBox:nth-of-type(1) br { display: block; }
  #indexPage #lineupArea .lineupWrap .lineupBox:nth-of-type(2) { flex-basis: calc( 100% - 430px ); max-width: calc( 100% - 430px ); }
  #indexPage #worksArea .worksWrap .workBox { flex-basis: calc( 25% - 15px ); max-width: calc( 25% - 15px ); }
  #indexPage #worksArea .worksWrap .workBox:nth-of-type(n + 3) { margin-top: 0; }
  #indexPage #serviceArea .servicePageLink ul li { flex-shrink: 1; flex-basis: 33.333%; max-width: 33.333%; }
  #indexPage #newsArea { padding: 80px 0; }
  #indexPage #newsArea .newsInner { padding: 60px 50px 40px 0; }
  #indexPage #newsArea .newsColumn .columnBox:nth-of-type(1) { flex-basis: 280px; max-width: 280px; }
  #indexPage #newsArea .newsColumn .columnBox:nth-of-type(2) { flex-basis: calc( 100% - 280px - 150px); max-width: calc( 100% - 280px - 150px); }
  #indexPage #newsArea .btnWrap { margin: 0; } }
@media print, screen and (min-width: 1200px) { #indexPage #mindArea .mindBox.first .mindImage { left: 34%; } }

/* ---------------------------- */
/* コンテンツ共通 */
/* ---------------------------- */
#mainCnt { min-height: 300px; }

/* コンテンツフッター共通 */
/* ----------------------------------- */
#contactArea { width: 100%; padding: 40px 0 50px; margin: 90px 0 0 0; background: url("images/home/bg_contact.jpg") no-repeat; background-position: center bottom; background-size: cover; position: relative; z-index: 0; }
#contactArea:after { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: rgba(0, 0, 0, 0.3); transition: .2s ease-in; z-index: 0; }
#contactArea h3 { color: #fff; font-size: 14px; font-weight: normal; margin: 0 0 20px; }
#contactArea h3 span { margin-top: 20px; font-size: 24px; display: block; font-weight: bold; }
#contactArea p { color: #fff; text-shadow: 1px 1px 3px #666; margin: 0; }
#contactArea .footerTel { width: 200px; display: block; margin: 0 auto; }
#contactArea .contactBtn { padding-top: 30px; }
#contactArea .contactBtn a { display: flex; align-items: center; justify-content: center; margin: 0 auto; max-width: 290px; height: 60px; color: #fff; border: 1px solid #fff; text-decoration: none; border-radius: 8px; }
#contactArea .contactBtn a:hover { background: #fff; color: #474343; }
#contactArea .contactWrap { position: relative; margin-bottom: 0; z-index: 1; display: flex; flex-wrap: wrap; justify-content: center; }
#contactArea .contactWrap .contactBox { flex-basis: 100%; max-width: 100%; }
#contactArea .contactWrap .contactBox + .contactBox { margin-top: 30px; }
#contactArea .contactWrap .contactBox .inner { max-width: 290px; width: 100%; margin: 0 auto; }
@media print, screen and (min-width: 768px) { #contactArea { background-attachment: fixed; }
  #contactArea .contactWrap { justify-content: space-between; }
  #contactArea .contactWrap .contactBox { flex-basis: calc( 50% - 15px); max-width: calc( 50% - 15px); }
  #contactArea .contactWrap .contactBox + .contactBox { margin-top: 0; }
  #contactArea .contactWrap .contactBox .inner { max-width: none; width: 100%; margin: 0; }
  #contactArea .contactWrap .contactBox:nth-of-type(2) .inner { margin: 0 0 0 auto; width: 290px; } }
@media print, screen and (min-width: 992px) { #contactArea { padding: 130px 0; } }

/* ---------------------------- */
/* ニュースリストベース */
/* ---------------------------- */
.postListWrap { display: flex; flex-wrap: wrap; justify-content: space-between; }
.postListWrap .postBox { flex-basis: 100%; max-width: 100%; display: flex; flex-wrap: wrap; padding: 0 0 9px; margin: 0 0 14px; position: relative; border-bottom: 1px solid #eaeaea; }
.postListWrap .postBox:last-of-type { border-bottom: none; }
.postListWrap .postBox .postCnt { flex-basis: 100%; max-width: 100%; display: flex; flex-wrap: wrap; }
.postListWrap .postBox .postCnt ul { flex-basis: 100%; max-width: 100%; margin: 0 0 10px; padding: 0; display: flex; }
.postListWrap .postBox .postCnt ul li { margin: 0; padding: 0; list-style: none; line-height: 1; }
.postListWrap .postBox .postCnt ul li time { line-height: 1; font-size: 14px; display: inline-block; margin-top: 5px; color: #2d787c; }
.postListWrap .postBox .postCnt .permaLinkWrap { flex-basis: 100%; margin: 0; }
.postListWrap .postBox .postCnt .permaLinkWrap a { display: block; color: #474343; text-decoration: none; }
.postListWrap .postBox .postCnt .permaLinkWrap a:hover { color: #aa4b69; }
.postListWrap.ptn2 .postBox { flex-basis: 100%; max-width: 100%; padding: 0; margin: 0; border-bottom: none; display: block; }
.postListWrap.ptn2 .postBox + .postBox { margin-top: 20px; }
.postListWrap.ptn2 .postBox .thumbnail { width: 100%; margin: 0 0 10px; overflow: hidden; }
.postListWrap.ptn2 .postBox .thumbnail a { display: block; position: relative; }
.postListWrap.ptn2 .postBox .thumbnail a:before { content: ""; display: block; padding-top: 67%; }
.postListWrap.ptn2 .postBox .thumbnail img { width: 100%; height: auto; position: absolute; top: 0; left: 0; bottom: 0; right: 0; }
.postListWrap.ptn2 .postBox .postCnt { display: block; width: 100%; }
.postListWrap.ptn2 .postBox .postCnt ul { width: 100%; max-width: 100%; display: flex; margin: 0 0 10px; }
.postListWrap.ptn2 .postBox .postCnt ul li.catName { font-size: 12px; color: #fff; margin: 0 40px 0 15px; padding: 0 15px; overflow: hidden; display: flex; align-items: center; justify-content: center; text-align: left; white-space: nowrap; height: 24px; line-height: 1; }
.postListWrap.ptn2 .postBox .postCnt ul li time { color: inherit; }
.postListWrap.ptn2 .postBox .postCnt .permaLinkWrap { flex-basis: 100%; max-width: 100%; }
.postListWrap.ptn2 .postBox .postCnt .permaLinkWrap a { max-width: 100%; flex-basis: 100%; }
#eventArea .postListWrap.ptn2 .postBox .thumbnail a.ended:after,
.seminarcatListPage .postListWrap.ptn2 .postBox .thumbnail a.ended:after {
  content: "終了しました";
  position: absolute;
  font-size: 18px;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6));
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 2;
}
@media print, screen and (min-width: 768px) { .postListWrap .postBox { padding: 0 0 19px; margin: 0 0 20px; }
  .postListWrap .postBox .postCnt ul { flex-basis: 120px; max-width: 120px; margin: 0; }
  .postListWrap .postBox .postCnt .permaLinkWrap { flex-basis: calc( 100% - 120px); max-width: calc( 100% - 120px); }
  .postListWrap.ptn2 { margin-bottom: 15px; }
  .postListWrap.ptn2 .postBox { flex-basis: calc( 50% - 15px); max-width: calc( 50% - 15px); flex-wrap: wrap; margin: 0; padding: 0; }
  .postListWrap.ptn2 .postBox + .postBox { margin-top: 0; }
  .postListWrap.ptn2 .postBox:nth-of-type(n + 3) { margin-top: 20px; } }
@media print, screen and (min-width: 1200px) { .postListWrap.ptn2:before { content: ""; display: block; width: calc( 25% - 15px); order: 1; }
  .postListWrap.ptn2:after { content: ""; display: block; width: calc( 25% - 15px); }
  .postListWrap.ptn2 .postBox { flex-basis: calc( 25% - 15px); max-width: calc( 25% - 15px); }
  .postListWrap.ptn2 .postBox:nth-of-type(n + 3) { margin-top: 0; } }

#catList { margin-bottom: 40px; }
#catList .postListWrap .postBox .postCnt ul li time { color: #368d95; }
#catList .postListWrap.ptn2 .postBox .postCnt ul li time { color: #474343; }
#catList.customerCatListPage .postListWrap .postBox .postCnt p { margin: 0; color: #a57c52; }
@media print, screen and (min-width: 768px) { #catList .postListWrap.ptn2:after { content: ""; display: block; width: calc( 33.333% - 15px ); }
  #catList .postListWrap.ptn2 .postBox { flex-basis: calc( 33.333% - 15px ); max-width: calc( 33.333% - 15px ); }
  #catList .postListWrap.ptn2 .postBox:nth-of-type(n + 3) { margin-top: 0; }
  #catList .postListWrap.ptn2 .postBox:nth-of-type(n + 4) { margin-top: 30px; } }

/* ---------------------------- */
/* ページヘッダー */
/* ---------------------------- */
#pageHeader { background-size: cover; height: 200px; overflow: hidden; }
#pageHeader .pageHeaderWrap { display: flex; align-items: center; padding: 60px 0; height: 200px; background-size: cover; }
#pageHeader .pageHeaderBox { margin: 0 0 0 40px; }
#pageHeader p, #pageHeader h2 { color: #fff; }
#pageHeader p { margin: 0 0 25px; line-height: 1; font-size: 14px; font-weight: normal; }
#pageHeader h2 { font-size: 24px; margin: 0; padding: 0; line-height: 1.2; font-weight: bold; }
#pageHeader h2 span { margin-bottom: 10px; font-weight: 100; font-size: 14px; display: block; }

/* ---------------------------------------------------------------- */
/* シングル/ページ共通 */
/* ---------------------------------------------------------------- */
.postPage h3, .postPage h4, .postPage h5, .postPage h6 { line-height: 1.2; font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", serif; }
.postPage h3 { color: #a57c52; font-size: 24px; font-weight: 800; margin: 0 0 30px; }
.postPage h4 { color: #6f5d44; border-left: 2px solid #6f5d44; font-size: 22px; padding: 0 0 0 8px; margin: 0 0 20px; }
.postPage h5 { color: #a57c52; border-bottom: 1px solid #a57c52; font-size: 20px; font-weight: bold; padding: 0 0 6px 5px; margin: 0 0 20px; }
.postPage h6 { color: #6f5d44; background: #faf8f6; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; font-size: 18px; font-weight: 400; min-height: 33px; padding: 6px 5px 6px 5px; margin: 0 0 20px; }
.postPage p { margin: 0 0 30px; text-align: justify; text-align: inter-ideograph; }
.postPage p img { max-width: 100%; margin-bottom: 0; }
.postPage p.tableAtt { margin: -30px 0 30px; }
.postPage p + p { margin: -10px 0 30px; }
.postPage p + p:last-child { margin: -10px 0 0; }
.postPage p:last-child { margin: 0; }
.postPage .bgWrap { background: #faf8f6; padding: 90px 0; }
.postPage .box:nth-of-type(n + 2) { margin-top: 60px; }
.postPage .pageMainVisual { position: relative; padding-bottom: 40px; margin-bottom: 25px; }
.postPage .pageMainVisual img { position: relative; width: 80%; height: auto; display: block; }
.postPage .pageMainVisual:after { content: ''; position: absolute; right: 0; bottom: 0; display: block; width: 80%; height: 0; background: #f1e3cb; padding-top: 35%; z-index: -1; }
.postPage .pageSubVisual { position: relative; height: 150px; overflow: hidden; margin: 0 0 30px; }
.postPage .pageSubVisual img { position: absolute; content: ''; top: 50%; left: 50%; width: 100%; height: auto; transform: translate(-50%, -50%); }
.postPage .underline { background: linear-gradient(transparent 60%, #fff799 60%); }
.postPage .bold { font-weight: bold; }
.postPage .coming { text-align: center; margin: 50px 0; font-size: 16px; }
.postPage .small { font-size: 14px; }
.postPage .linkWrap { display: flex; flex-wrap: wrap; margin: 15px 0 0; align-items: flex-start; }
.postPage .imgWrap { margin: 0 0 15px; }
.postPage .imgWrap + .imgWrap { margin-top: 20px; }
.postPage .imgWrap:last-child { margin-bottom: 0; }
.postPage img.mwNone { max-width: none !important; width: 100%; }
.postPage img.imgCenter { margin-left: auto; margin-right: auto; display: block; }
.postPage .visible { overflow: visible; }
.postPage .shadow { box-shadow: -2px 2px 3px 0px #ccc !important; display: block; }
.postPage .textLeft { text-align: left; }
.postPage .textCenter { text-align: center; }
.postPage .textRight { text-align: right; }
.postPage .colorR { color: #ca3a28; }
.postPage .colorB { color: #0099d9; }
.postPage .colorY { color: #f9c158; }
.postPage .colorG { color: #35b597; }
.postPage code { font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; }
.postPage pre { overflow: auto; background: #fafafa; padding: 15px; border-radius: 8px; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; }
.postPage a { position: relative; }
.postPage a:hover, .postPage a:focus { text-decoration: none; color: #aa4b69; }
.postPage a.textBlank { position: relative; margin-right: 30px; display: inline-block; }
.postPage a.textBlank:before { content: '\f08e'; position: absolute; display: block; font: 16px/1 FontAwesome; right: -25px; top: 5px; }
.postPage a.textArrow { text-decoration: none; color: #6f5d44; }
.postPage a.textArrow:hover { color: #368d95; text-decoration: underline; }
.postPage a.textArrow:after { display: inline-block; content: '\f0a9'; font: 16px/1 FontAwesome; margin-left: 10px; text-decoration: none; }
.postPage a.textArrowR { text-decoration: none; color: #368d95; }
.postPage a.textArrowR:hover, .postPage a.textArrowR:focus { color: #6f5d44; text-decoration: underline; }
.postPage a.textArrowR:after { display: inline-block; content: '\f0a9'; font: 16px/1 FontAwesome; margin-left: 10px; text-decoration: none; }
.postPage table { margin: 0 0 40px; width: 100%; border-collapse: collapse; border: 1px solid #eee; }
.postPage table caption { font-size: 16px; font-weight: bold; text-align: left; margin: 0; color: #6f5d44; }
.postPage table tr th, .postPage table tr td { display: block; padding: .6em .8em .5em; width: auto; line-height: 1.4; font-size: 14px; }
.postPage table tr th.vaM, .postPage table tr td.vaM { vertical-align: middle !important; }
.postPage table tr th { color: #6f5d44; background: #eee; font-weight: bold; text-align: left; vertical-align: top; }
.postPage table.type2 tr:nth-of-type(odd) td { background: #fafafa; }
.postPage table.type2 tr th, .postPage table.type2 tr td { display: table-cell; border-collapse: collapse; }
.postPage table.type2 tr th { text-align: center; vertical-align: middle; padding: 0.6em .8em; min-width: 100px; background: #eee; }
.postPage table.type2 tr th + th { border-left: 1px solid #eee; }
.postPage table.type2 tr td { vertical-align: top; }
.postPage table.type2 tr td + td { border-left: 1px solid #eee; }
.postPage table.type2 tr td:nth-of-type(1) { border-left: none; }
.postPage table + p { margin-bottom: 20px; }
.postPage table .tw200 { width: 100%; }
.postPage table .tw210 { width: 100%; }
.postPage table .tw33p { width: 33.333%; min-width: inherit; }
.postPage table .tw50p { width: 50%; min-width: inherit; }
.postPage .tableSc { width: 100%; overflow: auto; white-space: nowrap; -webkit-overflow-scrolling: touch; }
.postPage .tableSc table { width: 100%; }
.postPage .tableSc table tr:nth-of-type(odd) { background: none; }
.postPage .tableSc table tr th, .postPage .tableSc table tr td { display: table-cell; border-collapse: collapse; width: inherit; }
.postPage .tableSc table tr th { text-align: center; vertical-align: middle; min-width: inherit; }
.postPage .tableSc table tr th + th { border-left: 1px solid #333; }
.postPage .tableSc table tr td + td { border-left: 1px solid #333; }
.postPage .tableSc table tr td:nth-of-type(1) { border-left: none; }
.postPage blockquote { background: #fafafa; width: 100%; border-radius: 8px; padding: 30px; margin: 0 0 60px; position: relative; }
.postPage blockquote:before { content: '\f10d'; position: absolute; display: block; font: 20px/1 FontAwesome; color: #6f5d44; left: 10px; top: 10px; }
.postPage blockquote:after { content: '\f10e'; position: absolute; display: block; font: 20px/1 FontAwesome; color: #6f5d44; right: 10px; }
.postPage blockquote p { margin: 0 0 15px; }
.postPage blockquote p:last-child { margin-bottom: 0; }
.postPage dl { margin: 0 0 30px; }
.postPage dl dt { font-weight: bold; }
.postPage dl dd { margin: 0; margin-bottom: 15px; }
.postPage dl.dtbg { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }
.postPage dl.dtbg dt, .postPage dl.dtbg dd { margin: 0 0 10px; padding: 0; }
.postPage dl.dtbg dt:last-of-type dt, .postPage dl.dtbg dd:last-of-type dt { margin-bottom: 0; }
.postPage dl.dtbg dt { flex-basis: 50px; max-width: 50px; background: #a57c52; display: flex; align-items: center; justify-content: center; font-size: 16px; font-weight: bold; color: #fff; }
.postPage dl.dtbg dd { margin-top: 1px; font-size: 16px; flex-basis: calc( 100% - 60px ); max-width: calc( 100% - 60px ); }
.postPage ul { margin: 0 0 20px 8px; padding: 0; }
.postPage ul li { list-style: none; position: relative; padding: 0; }
.postPage ul li ul { padding: 0 0 10px; margin: 10px 0 0 1em; }
.postPage ul.iconList li { padding: 0 0 0 1em; }
.postPage ul.iconList li + li { margin-top: .3em; }
.postPage ul.iconList li:before { position: absolute; left: 0; top: 7px; content: ''; width: 10px; height: 10px; background: #368d95; border-radius: 50%; margin-right: .5em; }
.postPage ul.numIconList { margin: 0 0 0 20px; padding: 0; display: flex; flex-wrap: wrap; justify-content: space-between; }
.postPage ul.numIconList li { flex-basis: 100%; max-width: 100%; list-style: none; padding: 0 0 0 30px; margin: 0; display: flex; align-items: center; position: relative; color: #6f5d44; font-size: 18px; font-weight: 800; border: 1px solid #368d95; border-radius: 4px; height: 54px; }
.postPage ul.numIconList li span { position: absolute; left: -20px; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; background: #368d95; color: #fff; font-size: 26px; font-weight: 800; border-radius: 40px; line-height: 1; }
.postPage ul.numIconList li + li { margin-top: 20px; }
.postPage ol { margin: 0 0 20px; padding: 0 0 0 2.2em; }
.postPage ol li { margin: 0; padding: 0; list-style: decimal-leading-zero; }
.postPage ol li:last-child { margin: 0 0 10px; }
.postPage ol li ol { margin: 10px 0; padding: 0 0 0 1em; }
.postPage address { font-style: normal; }
.postPage hr.red { border-bottom: 1px solid #C65871 !important; margin-bottom: 50px; }
.postPage .horizon { margin: 0 0 20px; padding: 0; display: flex; flex-wrap: wrap; justify-content: space-between; }
.postPage .horizon li { flex-basis: 100%; max-width: 100%; }
.postPage .inLink { margin: 0; padding: 0; }
.postPage .inLink li { margin: 0; padding: 0; list-style: none; }
.postPage .inLink li + li { margin-top: 20px; }
.postPage .inLink li a { display: flex; justify-content: center; align-items: center; height: 36px; font-size: 18px; font-weight: bold; background: #ede5dc; border: 1px solid #ede5dc; text-decoration: none; color: #6f5d44; }
.postPage .inLink li a:after { background: url("images/common/arrow_type2.svg") no-repeat; background-size: 9px; width: 9px; height: 9px; position: absolute; content: ''; right: 10px; }
.postPage .inLink li a:hover { background: #fff; }
.postPage .gmapWrap { position: relative; width: 100%; height: 0; padding-top: 250px; overflow: hidden; }
.postPage .gmapWrap iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.postPage .youtubeWrap { position: relative; width: 100%; height: 0; padding-top: 56.25%; overflow: hidden; }
.postPage .youtubeWrap iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.postPage .calcMap { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 40px 0; }
.postPage .calcMap p { display: flex; align-items: center; text-align: center; justify-content: center; flex-wrap: wrap; margin: 0; }
.postPage .calcMap p .calcRead { color: #aa4b69; flex-basis: 100%; font-weight: bold; }
.postPage .calcMap .calcMapBox { flex-basis: 100%; max-width: 100%; display: flex; justify-content: center; align-items: center; position: relative; }
.postPage .calcMap .calcMapBox:nth-of-type(1):after { content: ""; position: absolute; background: url("images/common/c_plus.svg") no-repeat; width: 30px; height: 30px; color: #aa4b69; bottom: -40px; line-height: 1; }
.postPage .calcMap .calcMapBox:nth-of-type(2):after { content: ""; position: absolute; background: url("images/common/c_equal.svg") no-repeat; transform: rotate(90deg); width: 30px; height: 30px; color: #aa4b69; bottom: -40px; line-height: 1; }
.postPage .calcMap .calcMapBox + .calcMapBox { margin-top: 50px; }
.postPage .calcMap .calcborder { border: 1px solid #e5c9d2; flex-basis: 100%; max-width: 100%; padding: 5px 10px; display: flex; justify-content: center; align-items: center; }
.postPage .boxVertical { margin: 0 0 30px; padding: 0; }
.postPage .boxVertical li { display: flex; align-items: center; justify-content: center; position: relative; border: 1px solid #35b597; color: #474343; font-weight: 800; height: 40px; }
.postPage .boxVertical li + li { margin-top: 40px; }
.postPage .boxVertical li + li:before { content: ''; position: absolute; top: -30px; display: block !important; background: url("images/common/arrow_flow.svg") no-repeat; background-size: 20px 15px; width: 25px; height: 15px; }
@media print, screen and (min-width: 768px) { .postPage .pageMainVisual { position: relative; margin-bottom: 35px; }
  .postPage .pageMainVisual img { width: 60%; }
  .postPage .pageMainVisual:after { width: 60%; height: 0; padding-top: 200px; }
  .postPage ul.numIconList { flex-wrap: nowrap; }
  .postPage ul.numIconList li { flex-basis: calc( 50% - 20px); max-width: calc( 50% - 20px); }
  .postPage ul.numIconList li + li { margin-top: 0; }
  .postPage ul.numIconList li:nth-of-type(n + 3) { margin-top: 20px; }
  .postPage table { border: 1px solid #eee; }
  .postPage table tr th, .postPage table tr td { display: table-cell; padding: .6em .8em; }
  .postPage table tr th { background-color: inherit; min-width: 190px; text-align: right; width: auto; background: #eee; }
  .postPage table tr th.thLeft { text-align: left; }
  .postPage table tr td { border-left: none; border-bottom: 1px solid #eee; }
  .postPage table.type2 tr td { border: none; }
  .postPage table .tw15p { width: 15%; }
  .postPage table .tw30p { width: 30%; }
  .postPage table .tw33p { width: 33%; }
  .postPage table .tw50p { width: 50%; }
  .postPage table .tw70p { width: 70%; }
  .postPage table .tw200 { width: 200px; }
  .postPage table .tw210 { width: 210px; }
  .postPage table .sp__tw50p { width: 50%; }
  .postPage .tableSc { overflow: inherit; white-space: normal; }
  .postPage .horizon li { flex-basis: 50%; max-width: 50%; }
  .postPage .inLink { margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: space-between; }
  .postPage .inLink:after { content: ""; display: block; width: calc( 33.3334% - 7px); }
  .postPage .inLink li { flex-basis: calc( 33.3334% - 10px); max-width: calc( 33.3334% - 10px); }
  .postPage .inLink li:nth-of-type(n + 4) { margin-top: 20px; }
  .postPage .inLink li + li { margin-top: 0; }
  .postPage .inLink li a { font-size: 16px; }
  .postPage .calcMap .calcMapBox:nth-of-type(1) { flex-basis: 35%; max-width: 35%; }
  .postPage .calcMap .calcMapBox:nth-of-type(1):after { bottom: inherit; right: -37px; }
  .postPage .calcMap .calcMapBox:nth-of-type(2) { flex-basis: 35%; max-width: 35%; }
  .postPage .calcMap .calcMapBox:nth-of-type(2):after { transform: rotate(0deg); bottom: inherit; right: -40px; }
  .postPage .calcMap .calcMapBox:nth-of-type(3) { flex-basis: 18%; max-width: calc( 100% - 60% - 22% ); }
  .postPage .calcMap .calcMapBox + .calcMapBox { margin-top: 0; }
  .postPage .calcMap .calcborder { height: 100%; } }
@media print, screen and (min-width: 992px) { .postPage .pageMainVisual { position: relative; margin-bottom: 60px; }
  .postPage .pageMainVisual img { width: 70%; }
  .postPage .pageMainVisual:after { width: 60%; height: 0; padding-top: 200px; }
  .postPage .inLink li a { font-size: 18px; }
  .postPage .calcMap .calcMapBox:nth-of-type(1):after { right: -13%; }
  .postPage .calcMap .calcMapBox:nth-of-type(2):after { right: -15%; } }
@media print, screen and (min-width: 1200px) { .postPage .calcMap .calcMapBox:nth-of-type(1):after { right: -12.3%; } }

/* ---------------------------------------------------------------- */
/* 固定ページ */
/* ---------------------------------------------------------------- */
/* ---------------------------- */
/* 自然素材派のこだわり住宅 */
/* ---------------------------- */
#professionalPage .proH4 { font-size: 22px; margin: 0; padding: 0; border: none; color: #6f5d44; }

/* ---------------------------- */
/* 会社案内 */
/* ---------------------------- */
#companyPage .job { margin: 15px 0 5px 0; text-align: right; color: #878484; font-weight: bold; font-size: 12px; }
#companyPage .name { text-align: right; color: #368d95; font-weight: bold; font-size: 20px; }

/* ---------------------------- */
/* 商品ラインナップ */
/* ---------------------------- */
#lineupPage .readWrap .readMain { font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", serif; font-size: 24px; font-weight: 600; color: #a57c52; margin: 0 0 10px; }
#lineupPage .readWrap .readSub { color: #a57c52; }
#lineupPage .lineupConcept { position: relative; border: 1px solid #e5c9d2; padding: 45px 45px 0; margin-top: 40px; }
#lineupPage .lineupConcept h5 { position: absolute; width: 200px; top: 0; left: 50%; transform: translate(-50%, -20px); border: none; color: #aa4b69; font-weight: bold; font-size: 24px; background: #fff; margin: 0; height: 46px; display: flex; align-items: center; justify-content: center; }
#lineupPage .lineupConcept .conceptWrap { display: flex; flex-wrap: wrap; margin: 0 auto; }
#lineupPage .lineupConcept .conceptWrap .conceptBox { max-width: 400px; flex-basis: 400px; margin: 0 auto 30px; }
#lineupPage .lineupConcept .conceptWrap .conceptBox .imgWrap { margin-bottom: 15px; }
#lineupPage .lineupConcept .conceptWrap .conceptBox h6 { text-align: center; margin: 0 0 15px; padding: 0; background: none; color: #a57c52; font-size: 16px; }
#lineupPage .lineupConcept .conceptWrap .conceptBox h6 span { margin-top: 5px; display: block; font-size: 20px; font-weight: bold; }
#lineupPage .box > h5 { padding-top: 60px; margin-top: -60px; }
#lineupPage .styleImages { margin: 0 0 20px; padding: 0; display: flex; flex-wrap: wrap; justify-content: space-between; }
#lineupPage .styleImages li { flex-basis: calc( 50% - 5px); max-width: calc( 50% - 5px); list-style: none; margin: 0; padding: 0; text-align: center; font-size: 14px; color: #6f5d44; }
#lineupPage .styleImages li img { width: 100%; height: auto; display: block; margin-bottom: 10px; }
#lineupPage .styleImages li:nth-of-type(n + 3) { margin-top: 20px; }
@media print, screen and (min-width: 768px) { #lineupPage .lineupConcept { padding: 45px 20px 0; }
  #lineupPage .lineupConcept .conceptWrap { display: flex; flex-wrap: nowrap; justify-content: space-between; }
  #lineupPage .lineupConcept .conceptWrap .conceptBox { max-width: 200px; flex-basis: 200px; margin: 0 auto 30px; }
  #lineupPage .styleImages { margin: 0 0 20px; flex-wrap: nowrap; justify-content: flex-start; }
  #lineupPage .styleImages li { flex-basis: calc( (100% - 50px ) / 6); max-width: calc( (100% - 50px ) / 6); margin-right: 10px; }
  #lineupPage .styleImages li:last-of-type { margin-right: 0; }
  #lineupPage .styleImages li:nth-of-type(n + 3) { margin-top: 0; } }

/* ---------------------------- */
/* 開発の背景 */
/* ---------------------------- */
#developPage .devH4 { border: none; padding: 0; margin: 0 0 20px; text-align: center; }
#developPage .devH4 span { font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", serif; font-size: 22px; color: #fff; background: #5eb7e8; border-radius: 8px; display: flex; justify-content: center; align-items: center; font-weight: 100; margin-bottom: 5px; max-width: 85px; margin: 0 auto 15px; height: 30px; position: relative; }
#developPage .devH4 span:after { content: ""; position: absolute; top: 100%; left: 50%; margin-left: -8px; border: 8px solid transparent; border-top: 8px solid #5eb7e8; }
#developPage .pointBox + .pointBox { border-top: 1px solid #eeeeee; margin-top: 35px; padding-top: 35px; }

/* ---------------------------- */
/* 基本構造・性能 */
/* ---------------------------- */
#structurePage .box > h5 { margin-top: -60px; padding-top: 60px; }
#structurePage .centerArrow { position: relative; }
#structurePage .centerArrow .columnBox:after { position: absolute; content: ''; background-image: url("images/common/column_center_arrow.png"); background-repeat: no-repeat; top: 50%; width: 24px; height: 25px; left: 50%; transform: translate(-50%, -50%) rotate(90deg); transform: .3s ease; }
#structurePage .centerArrow .columnBox + .columnBox { margin-top: 60px; }
@media print, screen and (min-width: 768px) { #structurePage .centerArrow { position: relative; }
  #structurePage .centerArrow .columnBox:after { transform: rotate(0deg); }
  #structurePage .centerArrow .columnBox + .columnBox { margin-top: 0; } }

/* ---------------------------- */
/* 仕様・設備 */
/* ---------------------------- */
#methodPage .box > h5 { margin-top: -60px; padding-top: 60px; }

/* ---------------------------- */
/* ライフスタイル・価格 */
/* ---------------------------- */
/* ---------------------------- */
/* 人生を豊かにする資金計画 */
/* ---------------------------- */
#moneyPage .moneyType p { margin: 0; padding: 10px; border: 1px solid #368d95; text-align: center; }
#moneyPage .moneyType p span { color: #368d95; }

/* ---------------------------- */
/* 平屋住宅をお考えの方 */
/* ---------------------------- */
/* ---------------------------- */
/* 家づくり後のお付き合い */
/* ---------------------------- */
#maintenancePage .afterBox h6 { background: none; color: #474343; font-weight: bold; font-size: 18px; padding: 0; margin: 0; }

/* ---------------------------- */
/* サイトマップ */
/* ---------------------------- */
#sitemapPage h3 + .wsp-container { margin-top: -20px; }
#sitemapPage .wsp-container { margin-bottom: 30px; }
#sitemapPage .wsp-categories-list, #sitemapPage .wsp-pages-list, #sitemapPage .wsp-customers-list { display: flex; flex-wrap: wrap; justify-content: space-between; }
#sitemapPage .wsp-categories-list li, #sitemapPage .wsp-pages-list li, #sitemapPage .wsp-customers-list li { flex-basis: 100%; max-width: 100%; margin-bottom: 10px; }
#sitemapPage .wsp-categories-list li a, #sitemapPage .wsp-pages-list li a, #sitemapPage .wsp-customers-list li a { text-decoration: none; padding: 5px 0; display: block; }
@media print, screen and (min-width: 768px) { #sitemapPage .wsp-categories-list li, #sitemapPage .wsp-pages-list li { flex-basis: calc( 50% - 10px); max-width: calc( 50% - 10px); } }

/* ---------------------------- */
/* 施工事例詳細 */
/* ---------------------------- */
#customerSinglePage #customerName { margin: 0 0 20px; }
#customerSinglePage #customerName p { margin: 0; }
#customerSinglePage #customerImages { display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 35px; }
#customerSinglePage #customerImages .customerImage { flex-basis: 100%; max-width: 100%; margin-bottom: 15px; }
#customerSinglePage #customerImages .customerImage a { display: block; }
#customerSinglePage #customerImages .customerImage a img { max-width: none; width: 100%; height: auto; }
#customerSinglePage #customerCnt { margin-bottom: 35px; }
@media print, screen and (min-width: 768px) { #customerSinglePage #customerImages { margin-bottom: 35px; }
  #customerSinglePage #customerImages:after { content: ""; display: block; width: calc( 33.333% - 8px); }
  #customerSinglePage #customerImages .customerImage { overflow: hidden; margin: 0; flex-basis: calc( 33.333% - 8px); max-width: calc( 33.333% - 8px); }
  #customerSinglePage #customerImages .customerImage:nth-of-type(n+ 4) { margin-top: 15px; }
  #customerSinglePage #customerImages .customerImage a { position: relative; height: 232px; width: 232px; overflow: hidden; }
  #customerSinglePage #customerImages .customerImage a img { width: auto; height: 100%; top: 0; position: absolute; left: 50%; transform: translateX(-50%); } }
@media print, screen and (min-width: 992px) { #customerSinglePage #customerImages:after { max-width: calc( 33.333% - 10px); }
  #customerSinglePage #customerImages .customerImage { flex-basis: calc( 33.333% - 10px); max-width: calc( 33.333% - 10px); }
  #customerSinglePage #customerImages .customerImage a { height: 303px; width: 303px; } }
@media print, screen and (min-width: 1200px) { #customerSinglePage #customerImages .customerImage a { height: 370px; width: 370px; } }

/* ---------------------------------------------------------------- */
/* ページフッターリンク */
/* ---------------------------------------------------------------- */
#pageFooterLinkWrap { margin: 40px 0 0; }
#pageFooterLinkWrap h3 { margin-bottom: 20px; }
@media print, screen and (min-width: 768px) { #pageFooterLinkWrap { margin: 80px 0 0; } }

#pageFooterLink { display: flex; flex-wrap: wrap; margin: 0; }
#pageFooterLink .pageFotterBox { flex-basis: 100%; max-width: 100%; margin-bottom: 20px; }
#pageFooterLink .pageFotterBox a { display: block; width: 100%; text-decoration: none; border: 1px solid #eeeeee; font-size: 14px; color: #41210e; }
#pageFooterLink .pageFotterBox a:hover { color: #aa4b69; }
#pageFooterLink .pageFotterBox a span { display: flex; justify-content: center; align-items: center; height: 34px; }
@media print, screen and (min-width: 768px) { #pageFooterLink .pageFotterBox { flex-basis: 33.3333%; max-width: 33.3333%; margin: 0; }
  #pageFooterLink .pageFotterBox + .pageFotterBox a { border-left: none; }
  #pageFooterLink .pageFotterBox:nth-of-type(n + 4) { margin-top: 20px; }
  #pageFooterLink .pageFotterBox:nth-of-type(4) a { border-left: 1px solid #eeeeee; } }

/* ---------------------------------------------------------------- */
/* ページナビ */
/* ---------------------------------------------------------------- */
.wp-pagenavi { position: relative; text-align: center; padding: 0 0; margin: 30px 0 30px; display: flex; align-items: center; justify-content: center; width: 100%; height: 40px; }
.wp-pagenavi a, .wp-pagenavi span { color: #6f5d44; width: 32px; height: 32px; padding: 3px 0 0 0; text-decoration: none; background: #fff; border: 1px solid #ccc; line-height: 1; display: flex; align-items: center; justify-content: center; margin: 0 5px; }
.wp-pagenavi a:hover, .wp-pagenavi a:focus { color: #fff; background: #6f5d44; border: 1px solid #6f5d44; }
.wp-pagenavi span.current { color: #fff; background: #6f5d44; font-weight: normal; border: 1px solid #6f5d44; }
.wp-pagenavi .nextpostslink, .wp-pagenavi .previouspostslink { font-size: 20px; color: #6f5d44; background: none; border: none; }
.wp-pagenavi .nextpostslink:hover, .wp-pagenavi .nextpostslink:focus, .wp-pagenavi .previouspostslink:hover, .wp-pagenavi .previouspostslink:focus { color: #aa4b69; background: none; border: none; }

/* ---------------------------------------------------------------- */
/* サイドCTA */
/* ---------------------------------------------------------------- */
#sideCTA { position: fixed; top: 126px; right: 0; z-index: 2; display: none; }
#sideCTA ul { margin: 0; padding: 0; }
#sideCTA ul li { margin: 0 0 3px; padding: 0; list-style: none; width: 60px; transition: .3s ease; }
#sideCTA ul li a img { opacity: 1; }
#sideCTA ul li a img:hover { filter: brightness(110%); }
@media print, screen and (min-width: 768px) { #sideCTA { display: block; } }

/* ---------------------------------------------------------------- */
/* CTA固定ボタン */
/* ---------------------------------------------------------------- */
#fixedBtnSpArea { width: 100%; opacity: 0; z-index: 2; position: fixed; bottom: -60px; transition: .6s; }
#fixedBtnSpArea.fixedsp { opacity: 1; transition: .6s; bottom: 0; }
#fixedBtnSpArea #fixedBtnSp ul { margin: 0 0 0 0; padding: 0; height: 60px; width: 100%; overflow: hidden; display: flex; }
#fixedBtnSpArea #fixedBtnSp ul li { list-style: none; flex-basis: 100%; }
#fixedBtnSpArea #fixedBtnSp ul li a { display: flex; flex-wrap: wrap; width: 100%; height: 100%; color: #fff; justify-content: center; align-items: stretch; margin: 0; padding: 35px 10px 0; font-size: 14px; text-decoration: none; background-repeat: no-repeat; background-size: auto 20px; background-position: center 10px; }
#fixedBtnSpArea #fixedBtnSp ul li a:hover, #fixedBtnSpArea #fixedBtnSp ul li a:focus { background-color: #6f5d44; color: #fff; }
#fixedBtnSpArea #fixedBtnSp ul li + li { border-left: 1px solid #fff; }
@media print, screen and (min-width: 768px) { #fixedBtnSpArea #fixedBtnSp { display: none !important; } }

/* ---------------------------------------------------------------- */
/* フォーム設定 */
/* ---------------------------------------------------------------- */
/* フォームナビ */
/* ---------------------------- */
ul.formFlow { display: flex; height: 30px; align-items: center; justify-content: space-between; margin: 0 0 30px; padding: 0; }
ul.formFlow li { display: inline-flex; justify-content: center; flex-basis: 28%; background: #eeeeee; border-radius: 4px; color: #474343; list-style: none; line-height: 1; padding: 0; margin: 0; height: 100%; font-size: 16px; font-weight: bold; align-items: center; position: relative; letter-spacing: 1px; }
ul.formFlow li:after { position: absolute; align-items: center; border: none; content: "\f105"; font-family: FontAwesome; transform: none; color: #6f5d44; right: -20%; font-size: 30px; border-radius: 0; top: 50%; margin-top: -15px; transition: .3s ease; }
ul.formFlow li.visited { background: #d2bda8; color: #fff; }
ul.formFlow li.third:after { display: none; }
ul.formFlow li.active { background: #6f5d44; color: #fff; position: relative; }
@media print, screen and (min-width: 768px) { ul.formFlow li:after { right: -36px; } }
@media print, screen and (min-width: 992px) { ul.formFlow li:after { right: -45px; } }
@media print, screen and (min-width: 1200px) { ul.formFlow li:after { right: -50px; } }

/* ---------------------------- */
/* フォームエレメント */
/* ---------------------------- */
#formArea { padding-top: 80px; margin-top: -80px; }
#formArea dl { display: flex; align-items: center; flex-wrap: wrap; margin-bottom: 10px; }
#formArea dl dt { flex-basis: 100%; padding: 0; margin-bottom: 10px; font-weight: normal; }
#formArea dl dd { flex-basis: 100%; padding: 0; margin-bottom: 10px; align-self: center; }
#formArea dl dd.fb100 { flex-basis: 100%; }
#formArea .att { color: crimson; font-size: 12px; }
#formArea .error { margin: 0; }
#formArea .radio_wrap { margin-top: 10px; }
#formArea .vertical-item { display: block !important; }
#formArea input[type="text"], #formArea input[type="email"], #formArea input[type="number"], #formArea textarea { padding: 8px .5em 8px 10px; margin: 0; width: 100%; max-width: 100%; overflow: hidden; margin-bottom: 0; border: 1px solid #cccccc; }
#formArea input[type="text"]:focus, #formArea input[type="email"]:focus, #formArea input[type="number"]:focus, #formArea textarea:focus { background: #eee; }
#formArea input[type="text"]:hover, #formArea input[type="email"]:hover, #formArea input[type="number"]:hover, #formArea textarea:hover { background: #eee; }
#formArea input[type="text"] + input, #formArea input[type="email"] + input, #formArea input[type="number"] + input, #formArea textarea + input { margin-top: 10px; }
#formArea input[type="number"].short { width: 60px; }
#formArea input[type="text"], #formArea input[type="email"] { width: 100%; }
#formArea input[type="text"] .short, #formArea input[type="email"] .short { max-width: 150px; }
#formArea select { padding: .3em 0 .3em .3em; margin-bottom: 0; display: block; border-color: #cccccc; }
#formArea select option { word-wrap: normal; }
#formArea input[type="text"].short { width: 200px; text-align: left; margin-bottom: 0; }
#formArea input[type="text"].hasDatepicker { margin: 5px 0; background: #EEEEEE; }
#formArea input[type="text"].hasDatepicker:hover, #formArea input[type="text"].hasDatepicker:focus { background: #fff; }
#formArea .mwform-checkbox-field { display: block; width: 100%; margin: 5px 5px; font-size: 14px; }
#formArea input[type="checkbox"] { border: 1px solid #cccccc; vertical-align: -8px; -webkit-appearance: none; position: relative; margin-right: 5px; -webkit-border-radius: 3px; border-radius: 3px; -webkit-box-sizing: border-box; width: 26px; height: 26px; /*Other Browser*/ background: #e2e2e2; /*For Old WebKit*/ background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #ffffff), color-stop(1, #e2e2e2)); /*For Modern Browser*/ background: linear-gradient(to bottom, #ffffff 0%, #e2e2e2 100%); }
#formArea input[type="checkbox"]:checked { /*Other Browser*/ background: #6f5d44; /*For Old WebKit*/ background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #6f5d44), color-stop(1, #6f5d44)); /*For Modern Browser*/ background: linear-gradient(to bottom, #6f5d44 0%, #6f5d44 100%); border: 1px solid #6f5d44; }
#formArea input[type="checkbox"]:checked:before { position: absolute; left: 1px; top: 16px; display: block; -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5); content: ""; width: 10px; height: 4px; background: #ffffff; -webkit-transform: rotate(45deg); -webkit-transform-origin: right center; }
#formArea input[type="checkbox"]:checked:after { display: block; position: absolute; left: 9px; top: 16px; content: ""; -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5); width: 16px; height: 4px; background: #ffffff; -webkit-transform: rotate(-53deg); -webkit-transform-origin: left center; }
#formArea .mwform-zip-field input { width: inherit; }
#formArea .mwform-tel-field input { margin: 0 !important; width: auto; }
#formArea .mwform-radio-field { display: block; margin: 5px 0 10px; }
#formArea .mwform-radio-field input { margin: 0 15px 0 0; }
#formArea .mwform-radio-field-text { margin-left: 10px; }
#formArea input[type="file"] { margin-bottom: 10px; }
#formArea input[type="text"].zip { max-width: 100px; }
#formArea .inlineWrap span { margin-right: 15px; }
#formArea .inlineWrap select { display: inline-block; margin-left: 10px; width: 50px; }
#formArea .returnArea { margin-bottom: 30px; }
#formArea .returnArea .return { border: none; background: none; color: #368d95; text-decoration: underline; }
#formArea .returnArea .return:hover, #formArea .returnArea .return:focus { cursor: pointer; color: #aa4b69; transition: .3s ease; text-decoration: none; }
#formArea .btnArea { margin: 60px 0 30px; }
#formArea .btnArea .submitArea .submit { display: flex; justify-content: center; align-items: center; height: 50px; width: 100%; max-width: 290px; margin: 0 auto; background: #ca3a28; border: 1px solid #ca3a28; text-align: center; box-shadow: none; color: #fff; }
#formArea .btnArea .submitArea .submit:hover, #formArea .btnArea .submitArea .submit:focus { color: #ca3a28; background: #fff; transition: .3s ease; cursor: pointer; border-color: #ca3a28; }
@media print, screen and (min-width: 768px) { #formArea input[type="text"], #formArea input[type="email"], #formArea input[type="number"], #formArea textarea { margin: 0; }
  #formArea select { margin-bottom: 0; }
  #formArea .mwform-checkbox-field { display: inline-block; width: auto; }
  #formArea .mwform-radio-field { display: inline-block; margin: 0 15px 5px 0; }
  #formArea .mwform-radio-field .mwform-radio-field-text { margin-right: 15px; }
  #formArea .mwform-radio-field input { margin: 0; }
  #formArea .mwform-radio-field-text { margin-left: 10px; }
  #formArea .btnArea { flex-wrap: nowrap; }
  #formArea .btnArea .submitArea { flex-basis: 100%; margin: 0; } }
#formArea .mw_wp_form_confirm dl dd { background: #eee; padding: 5px; }

@media print, screen and (max-width: 767px) { #indexPage #lineupArea #sliderSwiper .swiper-slide a span { padding: 2px 15px; } }
/* for IE */
#whitePaperArea { background: #eaeaea; margin-top: 40px; padding: 40px 0 60px; }
#whitePaperArea .whitePaperWrap { display: flex; flex-wrap: wrap; justify-content: space-between; }
#whitePaperArea .whitePaperWrap .columnBox { flex-basis: 100%; max-width: 100%; }
#whitePaperArea .whitePaperWrap .columnBox img { margin: 0 auto; display: block; }
#whitePaperArea .whitePaperWrap .columnBox h3 { color: #368890; font-size: 20px; font-weight: bold; background: url("images/common/f_l.png") no-repeat center; line-height: 1; margin: 10px 0 30px; padding: 10px 0 10px; text-align: center; }
#whitePaperArea .whitePaperWrap .columnBox p { text-align: center; color: #41210E; font-size: 20px; font-weight: bold; margin: 0 0 25px; }
#whitePaperArea .whitePaperWrap .columnBox p span { display: block; font-size: 24px; }
#whitePaperArea .whitePaperWrap .columnBox p:nth-of-type(2) { font-size: 32px; color: #41210E; margin: 0; }
#whitePaperArea .whitePaperWrap .btnWrap { margin: 30px 0 0; }
#whitePaperArea .whitePaperWrap .btnWrap a { display: flex; justify-content: center; align-items: center; height: 60px; max-width: 290px; margin: 0 auto; background: #474343; border-radius: 8px; border: 1px solid #474343; font-size: 18px; font-weight: bold; color: #fff; text-decoration: none; transition: .3s ease; }
#whitePaperArea .whitePaperWrap .btnWrap a:hover { background: #fff; color: #474343; }

@media print, screen and (min-width: 992px) { #whitePaperArea { padding: 60px 0; }
  #whitePaperArea .whitePaperWrap .columnBox { flex-basis: calc( 50% - 15px ); max-width: calc( 50% - 15px ); }
  #whitePaperArea .whitePaperWrap .columnBox h3 {margin: 0 0 30px;}
  #whitePaperArea .whitePaperWrap .columnBox p { margin: 0 0 15px; font-size: 24px;}
  #whitePaperArea .whitePaperWrap .columnBox p:nth-of-type(2) { font-size: 40px;}
  #whitePaperArea .whitePaperWrap .btnWrap { margin: 30px 0 0; }
  #whitePaperArea .whitePaperWrap .btnWrap a { max-width: 100%; } }


/* グローバルナビとスマホ下部ボタンのLINE相談リンク切り替え表示用　ここから */
/* LINE相談リンクを表示（見学会イベントのリンクは非表示）する場合、下記を有効化し元リンクのcssをコメントアウトする */
#mainNaviArea #mainNavi ul > li:nth-child(7),
#sideCTA ul > li:nth-child(5) {
  display: none;
}

/* 見学会イベントのリンクを表示（LINE相談リンクは非表示）する場合、下記を有効化しLINEリンク用のcssをコメントアウトする */
/* #mainNaviArea #mainNavi ul > li:nth-child(6),
#sideCTA ul > li:nth-child(4) {
  display: none;
} */

/* グローバルナビとスマホ下部ボタンのLINE相談リンク切り替え表示用　ここまで */