@charset "UTF-8";
/* Scss Document */
/* CSS Document */
/*
html5doctor.com Reset Stylesheet
v1.4
2009-07-27
Author: Richard Clark - http://richclarkdesign.com
*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap");
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

article, aside, dialog, figure, footer, header,
hgroup, nav, section {
  display: block; }

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

/* Scss Document */
/*-----------------------色--------------------------*/
/*文字、ボタン、フッター*/
/*来場予約、資料請求bg*/
/*見出し*/
/*ボーダー*/
/*セレステ*/
/*デルソル*/
/*オーガニックハウス*/
.main-color {
  color: #8D0000; }

.green-color {
  color: #114d1d; }

.yellow-color {
  color: #ffff07; }

.l-blue-color {
  color: #6c87a4; }

.l-gold-color {
  color: #ae9c62; }

/* Scss Document */
/* --------------------------------
 * element style
 * -------------------------------- */
html {
  font-size: 16px; }
  @media (max-width: 991.98px) {
    html {
      font-size: 15px; } }
  @media (max-width: 767.98px) {
    html {
      font-size: 14px; } }

body {
  width: 100%;
  font-family: 'Roboto','Noto Sans JP',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック体","Yu Gothic",YuGothic,"メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
  font-size: 1rem;
  line-height: 160%;
  text-align: justify;
  word-wrap: break-word;
  color: #000000; }

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  margin-bottom: 0;
  font-family: inherit;
  font-weight: 400;
  line-height: 1.4;
  color: inherit; }

img {
  margin: 0;
  padding: 0;
  vertical-align: bottom;
  width: 100%;
  height: auto; }

li {
  list-style: none; }

a {
  color: #000000;
  text-decoration: none;
  transition: all .2s ease-in-out; }
  a.under {
    text-decoration: underline; }
  a:hover {
    color: #990000; }

a:visited, a:focus, a:hover {
  text-decoration: none; }

.sp {
  /*タブレットとスマホ*/
  display: none; }

.none {
  display: none; }

.nopointer {
  pointer-events: none; }

button:focus {
  outline: 0; }

.container-fluid {
  padding-right: 0;
  padding-left: 0; }

.pages-link {
  margin-top: -75px;
  padding-top: 75px; }

.square-r {
  position: relative;
  display: inline-block;
  padding: 0 0 0 20px;
  vertical-align: middle; }
  .square-r:before {
    position: absolute;
    top: 6px;
    left: 0;
    content: "";
    width: 13px;
    height: 13px;
    background-color: #8D0000;
    vertical-align: middle; }

.ttl1 {
  font-size: 1.5rem;
  font-weight: 900;
  letter-spacing: .05em;
  text-align: center;
  color: #8D0000;
  margin-bottom: 40px; }
  @media (max-width: 991.98px) {
    .ttl1 {
      margin-bottom: 30px; } }

.ttl2 {
  font-size: 1.5rem;
  font-weight: 900;
  text-align: center;
  color: #114d1d;
  margin-bottom: 40px; }
  @media (max-width: 991.98px) {
    .ttl2 {
      margin-bottom: 30px; } }

.ttl3 {
  font-size: 1.2rem;
  font-weight: 400;
  color: #8D0000;
  margin-bottom: 20px; }

.ttl4 {
  font-size: 1.5rem;
  font-weight: 900;
  text-align: center;
  color: white;
  margin-bottom: 40px; }
  @media (max-width: 991.98px) {
    .ttl4 {
      margin-bottom: 30px; } }

.table1 {
  width: 100%;
  border: 1px solid #000000; }
  .table1 tr {
    border-bottom: 1px solid #000000; }
  .table1 th, .table1 td {
    padding: 15px 15px 12px;
    vertical-align: middle;
    border-right: 1px solid #000000; }

.btn01 {
  width: 340px;
  height: 50px; }
  .btn01 a {
    display: block;
    width: 100%;
    height: 100%;
    font-size: 1.2rem;
    text-align: center;
    line-height: 50px;
    color: white;
    background-color: transparent;
    border: 1px solid white; }
    .btn01 a:hover {
      color: #ff9600;
      border: 1px solid #ff9600; }

.btn02 {
  width: 400px;
  height: 80px; }
  .btn02 a {
    display: block;
    width: 100%;
    height: 100%;
    font-size: 1.7rem;
    text-align: center;
    line-height: 80px;
    color: white;
    background-color: #bbc9cb; }
    .btn02 a:hover {
      background-color: #697888; }

.btn03 {
  width: 480px;
  height: 100px; }
  .btn03 a {
    display: block;
    width: 100%;
    height: 100%;
    font-size: 1.7rem;
    text-align: center;
    line-height: 100px;
    color: white;
    background-color: #000000;
    border-radius: 15px; }
    .btn03 a span {
      display: inline-block;
      vertical-align: middle; }
      .btn03 a span:after {
        display: inline-block;
        vertical-align: middle;
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 11.5px 0 11.5px 21px;
        border-color: transparent transparent transparent white;
        position: relative;
        margin-left: 5px;
        top: -3px;
        transition: all .2s ease-in-out; }
    .btn03 a:hover {
      color: #f36200; }
      .btn03 a:hover span:after {
        border-color: transparent transparent transparent #f36200; }

.btn04 {
  width: 400px;
  height: 60px; }
  .btn04 a {
    display: block;
    width: 100%;
    height: 100%;
    font-size: 1.1rem;
    text-align: center;
    line-height: 60px;
    color: white;
    background-color: #000000; }
    .btn04 a span {
      display: inline-block;
      vertical-align: middle; }
      .btn04 a span:after {
        display: inline-block;
        vertical-align: middle;
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 8px 0 8px 12px;
        border-color: transparent transparent transparent white;
        position: relative;
        margin-left: 7px;
        top: -2px;
        transition: all .2s ease-in-out; }
    .btn04 a:hover {
      color: #f36200; }
      .btn04 a:hover span:after {
        border-color: transparent transparent transparent #f36200; }

.more-btn01 {
  text-align: center; }
  .more-btn01 span {
    font-size: 1.2rem;
    padding: 0 5px 5px;
    border-bottom: 1px solid #000000; }

.more-btn02 {
  width: 130px;
  height: 38px;
  position: relative;
  overflow: hidden; }
  .more-btn02 .more-btn02-cover {
    width: 100%;
    height: 100%;
    right: -130px;
    background: #990000;
    position: absolute;
    transition: all .2s ease-in-out;
    z-index: 8; }
  .more-btn02 a {
    display: block;
    width: 100%;
    height: 100%;
    font-size: .9rem;
    line-height: 38px;
    text-align: center;
    color: white;
    background-color: #000000;
    transition: all .2s ease-in-out; }
    .more-btn02 a span {
      position: relative;
      z-index: 9;
      top: 1px; }
  .more-btn02:hover .more-btn02-cover {
    right: 0px; }

.flag-outer {
  position: relative; }
  .flag-outer .flag {
    width: 44px;
    position: absolute;
    top: 0;
    left: 20px;
    z-index: 9; }

.hidden-img {
  background-color: white;
  padding-bottom: 100%;
  position: relative;
  overflow: hidden; }
  .hidden-img .hidden-img-inner {
    width: 100%;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }

.fit-img {
  width: 100%;
  height: 100%;
  position: relative; }
  .fit-img:before {
    content: "";
    display: block; }
  .fit-img img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
    font-family: 'object-fit: cover;';
    /*IE対策*/ }

.zoom-img {
  overflow: hidden;
  cursor: pointer; }
  .zoom-img img {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out; }
  .zoom-img:hover img {
    -webkit-transform: scale(1.2);
    transform: scale(1.2); }

.caption-img {
  position: relative;
  overflow: hidden; }
  .caption-img img {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out; }
  .caption-img figcaption {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    opacity: 0; }
    .caption-img figcaption > div {
      width: 100%;
      height: 100%;
      position: relative; }
      .caption-img figcaption > div > p {
        width: 100%;
        font-size: .9rem;
        text-align: center;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        margin-top: 5px; }
        @media (max-width: 991.98px) {
          .caption-img figcaption > div > p {
            margin-top: 0;
            line-height: 1.6; } }
  .caption-img:hover img {
    -webkit-transform: scale(1.2);
    transform: scale(1.2); }
  .caption-img:hover figcaption {
    opacity: 1; }

.line {
  position: relative;
  margin-left: 30px; }
  .line:before {
    position: absolute;
    top: 50%;
    left: -30px;
    content: "";
    width: 20px;
    height: 1px;
    border-bottom: 1px solid #000000;
    margin-top: -1px; }

.border-anim {
  position: relative;
  display: inline-block;
  text-decoration: none; }
  .border-anim:after {
    position: absolute;
    bottom: -6px;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background-color: #990000;
    transform: scale(0, 1);
    transform-origin: left top;
    transition: all .2s ease-in-out; }
  .border-anim:hover::after {
    transform: scale(1, 1); }

.under-anim:hover {
  text-decoration: underline; }

.scroll-target.inbg {
  position: relative; }
  .scroll-target.inbg:before {
    width: 0; }
  .scroll-target.inbg.show:before {
    transition: all 1.5s cubic-bezier(0.19, 1, 0.22, 1); }
.scroll-target.a-border {
  display: inline-block;
  position: relative;
  z-index: 2; }
  .scroll-target.a-border:before {
    width: 0;
    content: "";
    position: absolute;
    bottom: 5px;
    left: 0;
    z-index: -1; }
  .scroll-target.a-border.show:before {
    width: 100%;
    transition: all 3s cubic-bezier(0.19, 1, 0.22, 1); }
.scroll-target.fdup {
  opacity: 0;
  visibility: hidden;
  transform: translateY(40px);
  transition: all .8s; }
  .scroll-target.fdup.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0); }
.scroll-target.fddw {
  opacity: 0;
  visibility: hidden;
  transform: translateY(-40px);
  transition: all .8s; }
  .scroll-target.fddw.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0); }
.scroll-target.fdinleft {
  opacity: 0;
  visibility: hidden;
  transform: translateX(-40px);
  transition: all .8s; }
  .scroll-target.fdinleft.show {
    opacity: 1;
    visibility: visible;
    transform: translateX(0); }

.fixed-contact-btn {
  width: 200px;
  height: auto;
  position: fixed;
  z-index: 90;
  right: 20px;
  bottom: 20px; }

/* ====== ページャー ====== */
.pager .navnext {
  margin-right: 20px; }
.pager .navprev {
  margin-left: 20px; }
.pager .pagination {
  display: block;
  text-align: center;
  margin: 0;
  padding: 0; }
  .pager .pagination li {
    width: 40px;
    height: 40px;
    display: inline;
    margin: 0 2px;
    padding: 0;
    display: inline-block;
    text-align: center;
    position: relative; }
    .pager .pagination li a {
      width: 100%;
      height: 100%;
      color: #fff;
      background: #000000;
      vertical-align: middle;
      position: absolute;
      top: 0;
      left: 0;
      text-align: center;
      display: table; }
      .pager .pagination li a:hover {
        background: rgba(141, 0, 0, 0.8); }
      .pager .pagination li a span {
        display: table-cell;
        vertical-align: middle;
        position: relative;
        top: 1px; }
      .pager .pagination li a.active {
        color: white;
        background: #8D0000; }
  .pager .pagination .pre span, .pager .pagination .next span {
    top: -1px;
    left: -1px; }
  .pager .pagination .next span {
    left: 1px; }

/* ====== パンくず ====== */
.breadcrumbs-outer {
  width: 100%;
  position: absolute;
  top: 320px;
  line-height: 40px;
  z-index: 5; }
  .breadcrumbs-outer .breadcrumbs span {
    font-size: .8rem; }
    .breadcrumbs-outer .breadcrumbs span > a {
      color: #000000; }
      .breadcrumbs-outer .breadcrumbs span > a:hover {
        text-decoration: underline; }
    .breadcrumbs-outer .breadcrumbs span > span {
      color: #787878; }

/* ====== 下層ページトップ ====== */
.page-mv {
  height: 320px;
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center; }

.page-mv2 {
  height: 210px;
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center; }

.page-ttl-wrap {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }
  .page-ttl-wrap .page-ttl .ja {
    display: block;
    font-size: 3.8rem;
    letter-spacing: .2em;
    line-height: 1;
    margin-top: 15px;
    text-align: center; }
  .page-ttl-wrap .page-ttl2 .en {
    display: block;
    font-size: 3.8rem;
    letter-spacing: .2em;
    line-height: 1;
    margin-top: 15px;
    text-align: center; }
  .page-ttl-wrap .page-ttl2 .ja {
    display: block;
    font-size: 1.5rem;
    letter-spacing: .1em;
    line-height: 1;
    margin-top: 15px;
    text-align: center; }
  .page-ttl-wrap .page-ttl-w {
    color: white; }
    .page-ttl-wrap .page-ttl-w .en {
      text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.9); }
    .page-ttl-wrap .page-ttl-w .ja {
      text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.9); }
  .page-ttl-wrap .page-ttl-bk {
    color: #000000; }

.page-ttl3 {
  padding: 90px 0 60px; }
  .page-ttl3 .en {
    display: block;
    font-size: 3.8rem;
    letter-spacing: .2em;
    line-height: 1;
    text-align: center; }

.page-container {
  padding-top: 80px;
  padding-bottom: 100px;
  overflow: hidden; }
  .page-container .page-toptxt {
    margin-bottom: 60px; }
    @media (max-width: 991.98px) {
      .page-container .page-toptxt {
        margin-bottom: 40px; } }
    .page-container .page-toptxt .page-toptxt-txt {
      line-height: 2.4;
      text-align: center; }
  .page-container .page-sec1 {
    padding-bottom: 100px; }
    @media (max-width: 991.98px) {
      .page-container .page-sec1 {
        padding-bottom: 80px; } }

.concept-link {
  max-width: 870px;
  margin: 0 auto; }
  .concept-link li {
    font-size: .8rem;
    line-height: 1.5; }
    .concept-link li a {
      position: relative; }
      .concept-link li a:after {
        content: '';
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 5px 0 5px 8px;
        border-color: transparent transparent transparent #000000;
        position: absolute;
        top: 50%;
        right: -15px;
        transform: translateY(-50%);
        transition: all .3s ease-in-out; }
      @media (min-width: 768px) {
        .concept-link li a:hover {
          color: #ff9600 !important; }
          .concept-link li a:hover:after {
            border-color: transparent transparent transparent #ff9600 !important; } }

.page-contact-btn1 {
  max-width: 870px;
  margin: 0 auto;
  position: relative; }
  .page-contact-btn1 .page-contact-btn-img {
    width: 190px;
    position: absolute;
    top: -40px;
    left: 15px; }
    @media (max-width: 991.98px) {
      .page-contact-btn1 .page-contact-btn-img {
        width: 170px;
        top: -30px;
        left: 15px; } }
  .page-contact-btn1 a {
    width: 100%;
    font-size: 2.2rem;
    letter-spacing: .05em;
    line-height: 1;
    color: #fff;
    display: inline-block;
    text-align: center;
    padding: 40px 0;
    border-radius: 30px; }
  .page-contact-btn1 .arrow {
    position: relative; }
    @media (max-width: 991.98px) {
      .page-contact-btn1 .arrow {
        margin-left: 40px; } }
    .page-contact-btn1 .arrow:after {
      content: '';
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 14px 0 14px 24px;
      border-color: transparent transparent transparent white;
      position: absolute;
      top: 50%;
      right: -50px;
      transform: translateY(-50%);
      margin-top: 1px; }
      @media (max-width: 991.98px) {
        .page-contact-btn1 .arrow:after {
          right: -40px; } }
  .page-contact-btn1.blue-btn a {
    background: #48788b; }
    .page-contact-btn1.blue-btn a:hover {
      background: #214264; }
  .page-contact-btn1.ora-btn a {
    background: #ff9600; }
    .page-contact-btn1.ora-btn a:hover {
      background: #db5200; }

/* ====== luminous ====== */
.lum-lightbox {
  background: rgba(0, 0, 0, 0.7); }

.lum-open {
  z-index: 999; }

.lum-close-button {
  right: 5%;
  top: 5%;
  width: 20px;
  height: 20px;
  opacity: 1; }

.lum-lightbox-inner img {
  width: auto !important;
  max-width: 70vw !important;
  max-height: 70vh !important;
  margin: 0 auto !important;
  border: 10px solid white; }

.lum-previous-button {
  left: 15%; }
  .lum-previous-button:after {
    left: 15%; }

.lum-next-button {
  right: 15%; }
  .lum-next-button:after {
    right: 15%; }

/* ====== comingsoon ====== */
.comingsoon-wrap p {
  line-height: 2.4;
  text-align: center;
  padding-top: 40px; }

/* --------------------------------
 * header
 * -------------------------------- */
.drawer--navbarTopGutter {
  padding-top: 139px; }
  @media (max-width: 991.98px) {
    .drawer--navbarTopGutter {
      padding-top: 85px; } }

header {
  width: 100%;
  height: 140px !important;
  background-color: white !important;
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1); }
  @media (max-width: 991.98px) {
    header {
      height: 86px !important; } }
  header .drawer-navbar-header {
    padding: 0; }
  @media (max-width: 991.98px) {
    header .container {
      max-width: 100%; } }
  header .header-inner {
    padding: 20px 0 0; }
    @media (max-width: 991.98px) {
      header .header-inner {
        padding: 12px 60px 0 0; } }
  header .header-l .logo {
    width: 260px; }
    @media (max-width: 991.98px) {
      header .header-l .logo {
        width: 220px; } }
    header .header-l .logo .logo-img02 {
      display: none; }
  header .header-l .gnavi {
    padding-top: 15px; }
    @media (max-width: 991.98px) {
      header .header-l .gnavi {
        display: none; } }
    header .header-l .gnavi .gnavi-inner > ul > li {
      font-size: 1rem;
      line-height: 1;
      position: relative;
      display: inline-block;
      padding: 0 10px; }
      @media (max-width: 1199.98px) {
        header .header-l .gnavi .gnavi-inner > ul > li {
          padding: 0 5px; } }
      header .header-l .gnavi .gnavi-inner > ul > li:first-child {
        padding: 0 10px 0 0; }
        @media (max-width: 1199.98px) {
          header .header-l .gnavi .gnavi-inner > ul > li:first-child {
            padding: 0 5px 0 0; } }
      header .header-l .gnavi .gnavi-inner > ul > li.current-menu-item, header .header-l .gnavi .gnavi-inner > ul > li.nolink > a {
        pointer-events: none; }
      header .header-l .gnavi .gnavi-inner > ul > li > a {
        position: relative;
        display: inline-block;
        text-decoration: none; }
        header .header-l .gnavi .gnavi-inner > ul > li > a:after {
          position: absolute;
          bottom: -6px;
          left: 0;
          content: '';
          width: 100%;
          height: 1px;
          background-color: #990000;
          transform: scale(0, 1);
          transform-origin: left top;
          transition: all .2s ease-in-out; }
        header .header-l .gnavi .gnavi-inner > ul > li > a:hover::after {
          transform: scale(1, 1); }
      header .header-l .gnavi .gnavi-inner > ul > li.nav-dropdown .sub-menu {
        display: block;
        width: 275px;
        opacity: 0;
        visibility: hidden;
        position: absolute;
        top: 40px;
        left: 0;
        z-index: 10;
        padding: 35px 40px 30px;
        background-color: rgba(255, 255, 255, 0.8);
        -webkit-transition: all .2s ease-in-out;
        transition: all .2s ease-in-out; }
        header .header-l .gnavi .gnavi-inner > ul > li.nav-dropdown .sub-menu > li {
          text-align: left;
          margin-bottom: 30px; }
          header .header-l .gnavi .gnavi-inner > ul > li.nav-dropdown .sub-menu > li:last-child {
            margin-bottom: 0; }
      header .header-l .gnavi .gnavi-inner > ul > li.nav-dropdown:hover .sub-menu {
        opacity: 1;
        visibility: visible; }
  header .header-info .info-btn-txt {
    display: block;
    font-size: 1.2rem;
    font-style: normal; }
  header .header-info .info-btn-icon {
    display: block;
    margin: 0 auto;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover; }
  header .header-info .info-tel {
    margin-bottom: 10px; }
    header .header-info .info-tel span {
      font-size: 1.5rem;
      margin-right: 10px; }
    header .header-info .info-tel .info-btn-txt {
      font-size: 1.5rem;
      display: inline-block; }
    header .header-info .info-tel .info-btn-icon {
      display: none;
      background-image: url("../../img/common/fd_icon_bk.svg"); }
    header .header-info .info-tel a:hover .info-btn-icon {
      background-image: url("../../img/common/fd_icon_r.svg"); }
  header .header-info .info-reserve-btn, header .header-info .info-contact-btn {
    width: 50%;
    text-align: center; }
    header .header-info .info-reserve-btn a, header .header-info .info-contact-btn a {
      display: block; }
  header .header-info .info-reserve-btn .info-btn-icon {
    width: 52px;
    height: 51px;
    background-image: url("../../img/common/reserve_icon_bk.svg"); }
  header .header-info .info-reserve-btn a:hover .info-btn-icon {
    background-image: url("../../img/common/reserve_icon_r.svg"); }
  header .header-info .info-contact-btn .info-btn-icon {
    width: 62px;
    height: 44px;
    background-image: url("../../img/common/contact_icon_bk.svg");
    margin-top: 7px; }
  header .header-info .info-contact-btn a:hover .info-btn-icon {
    background-image: url("../../img/common/contact_icon_r.svg"); }
  @media (max-width: 991.98px) {
    header .header-info {
      display: -ms-flexbox !important;
      display: flex !important;
      position: relative;
      top: -7px; }
      header .header-info .info-btn-txt {
        display: inline-block;
        padding-left: 35px;
        vertical-align: middle; }
      header .header-info .info-btn-icon {
        display: inline-block;
        vertical-align: middle;
        position: absolute;
        top: 0;
        left: 0; }
      header .header-info .info-tel {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 2;
        -webkit-order: 2;
        order: 2;
        position: relative; }
        header .header-info .info-tel > span {
          display: none; }
        header .header-info .info-tel .info-btn-icon {
          display: block !important;
          width: 32px;
          height: 22px;
          margin-top: 2px;
          background-image: url("../../img/common/fd_icon_bk.svg"); }
      header .header-info .info-btn {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 1;
        -webkit-order: 1;
        order: 1; }
        header .header-info .info-btn .info-reserve-btn, header .header-info .info-btn .info-contact-btn {
          position: relative;
          margin-right: 20px; }
        header .header-info .info-btn .info-reserve-btn .info-btn-icon {
          width: 26px;
          height: 25px;
          margin-top: -1px; }
        header .header-info .info-btn .info-contact-btn .info-btn-icon {
          width: 31px;
          height: 22px;
          margin-top: 2px; } }
  header .drawer-hamburger {
    width: 30px;
    height: 86px;
    background-color: white;
    padding: 0 22.5px;
    transition: all .2s ease-in-out; }
    @media (min-width: 992px) {
      header .drawer-hamburger {
        display: none; } }
    @media (max-width: 991.98px) {
      header .drawer-hamburger {
        display: block; } }
    header .drawer-hamburger .drawer-hamburger-icon {
      margin-top: 22px;
      transition: all .2s ease-in-out; }
      header .drawer-hamburger .drawer-hamburger-icon:before, header .drawer-hamburger .drawer-hamburger-icon:after {
        transition: all .2s ease-in-out; }
    header .drawer-hamburger .drawer-hamburger-txt {
      font-size: 10.5px;
      margin-top: 8px;
      transition: all .2s ease-in-out; }
    header .drawer-hamburger:hover {
      opacity: 1 !important;
      background-color: #990000; }
      header .drawer-hamburger:hover .drawer-hamburger-icon {
        background-color: white; }
        header .drawer-hamburger:hover .drawer-hamburger-icon:before, header .drawer-hamburger:hover .drawer-hamburger-icon:after {
          background-color: white; }
      header .drawer-hamburger:hover .drawer-hamburger-txt {
        color: white; }
  header.short {
    background-color: rgba(255, 255, 255, 0.8) !important;
    height: 76px !important; }
    header.short .drawer-navbar-header {
      background-color: rgba(255, 255, 255, 0.8) !important; }
    header.short .header-inner {
      padding: 7px 0 0 0; }
      @media (max-width: 1300px) {
        header.short .header-inner {
          padding: 7px 50px 0 0; } }
      @media (max-width: 991.98px) {
        header.short .header-inner {
          padding: 7px 60px 0 0; } }
    header.short .logo {
      width: 62px !important; }
      header.short .logo .logo-img01 {
        display: none; }
      header.short .logo .logo-img02 {
        display: block; }
    header.short .gnavi {
      display: none; }
    header.short .header-info {
      display: -ms-flexbox !important;
      display: flex !important;
      position: relative;
      top: -7px; }
      header.short .header-info .info-btn-txt {
        display: inline-block;
        padding-left: 35px;
        vertical-align: middle; }
      header.short .header-info .info-btn-icon {
        display: inline-block;
        vertical-align: middle;
        position: absolute;
        top: 0;
        left: 0; }
      header.short .header-info .info-tel {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 2;
        -webkit-order: 2;
        order: 2;
        position: relative; }
        header.short .header-info .info-tel > span {
          display: none; }
        header.short .header-info .info-tel .info-btn-icon {
          width: 32px;
          height: 22px;
          margin-top: 2px;
          background-image: url("../../img/common/fd_icon_bk.svg"); }
      header.short .header-info .info-btn {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 1;
        -webkit-order: 1;
        order: 1; }
        header.short .header-info .info-btn .info-reserve-btn, header.short .header-info .info-btn .info-contact-btn {
          position: relative;
          margin-right: 20px; }
        header.short .header-info .info-btn .info-reserve-btn .info-btn-icon {
          width: 26px;
          height: 25px;
          margin-top: -1px; }
        header.short .header-info .info-btn .info-contact-btn .info-btn-icon {
          width: 31px;
          height: 22px;
          margin-top: 2px; }
    header.short .drawer-hamburger {
      height: 76px;
      background-color: #eee; }
      @media (min-width: 992px) {
        header.short .drawer-hamburger {
          display: block !important; } }
      header.short .drawer-hamburger .drawer-hamburger-icon {
        margin-top: 5px; }
      header.short .drawer-hamburger .drawer-hamburger-txt {
        display: none; }
      header.short .drawer-hamburger:hover {
        background-color: #990000; }

.drawer-open .drawer-hamburger-icon {
  background-color: transparent !important; }

.drawer-navbar {
  z-index: 99 !important; }
  .drawer-navbar .drawer-container {
    width: 100%;
    max-width: 100%;
    height: 100%; }
    .drawer-navbar .drawer-container .drawer-navbar-header {
      height: 100%;
      float: none; }
  .drawer-navbar .drawer-nav {
    position: fixed;
    overflow: hidden;
    width: 100%;
    height: 100% !important;
    padding-top: 75px;
    background-color: white; }
    .drawer-navbar .drawer-nav .gnavi-inner {
      border-top: 1px solid #eee;
      padding: 50px 0 100px; }
    .drawer-navbar .drawer-nav .drawer-menu > li {
      border-bottom: 1px solid #ccc; }
      .drawer-navbar .drawer-nav .drawer-menu > li > a {
        width: 100%;
        padding: 19px 60px 15px 10px;
        display: block; }
      .drawer-navbar .drawer-nav .drawer-menu > li.nolink > a {
        pointer-events: none; }
      .drawer-navbar .drawer-nav .drawer-menu > li.nolink .dropdown-btn {
        pointer-events: auto !important; }
    .drawer-navbar .drawer-nav .drawer-menu .js-dropdown {
      position: relative; }
      .drawer-navbar .drawer-nav .drawer-menu .js-dropdown .dropdown-btn {
        width: 60px;
        height: 60px;
        padding: 0;
        background-color: transparent;
        position: absolute;
        top: 0;
        right: 0;
        z-index: 98; }
        .drawer-navbar .drawer-nav .drawer-menu .js-dropdown .dropdown-btn:before {
          display: block;
          content: "";
          position: absolute;
          z-index: 99;
          top: 0;
          right: 0;
          bottom: 0;
          left: 0;
          margin: auto;
          width: 20px;
          height: 3px;
          background-color: #8D0000;
          transition: all .2s ease-in-out;
          transform: rotate(90deg);
          -webkit-transform: rotate(90deg); }
        .drawer-navbar .drawer-nav .drawer-menu .js-dropdown .dropdown-btn:after {
          display: block;
          content: "";
          position: absolute;
          z-index: 99;
          top: 0;
          right: 0;
          bottom: 0;
          left: 0;
          margin: auto;
          width: 20px;
          height: 3px;
          background-color: #8D0000;
          transition: all .3s ease-in-out; }
        .drawer-navbar .drawer-nav .drawer-menu .js-dropdown .dropdown-btn.active:before {
          transform: rotate(0deg);
          -webkit-transform: rotate(0deg); }
        .drawer-navbar .drawer-nav .drawer-menu .js-dropdown .dropdown-btn.active:after {
          transform: rotate(0deg);
          -webkit-transform: rotate(0deg); }
      .drawer-navbar .drawer-nav .drawer-menu .js-dropdown .sub-menu {
        padding: 0 60px 15px 10px; }
        .drawer-navbar .drawer-nav .drawer-menu .js-dropdown .sub-menu > li {
          margin-bottom: 10px; }
          .drawer-navbar .drawer-nav .drawer-menu .js-dropdown .sub-menu > li:last-child {
            margin-bottom: 0; }
  .drawer-navbar.short .drawer-nav {
    display: block; }
    .drawer-navbar.short .drawer-nav .drawer-menu li {
      float: none; }

/* --------------------------------
 * main
 * -------------------------------- */
main {
  position: relative; }

/* --------------------------------
 * footer
 * -------------------------------- */
footer {
  background-color: #000000;
  padding: 60px 0 30px;
  position: relative; }
  footer .footer-inner {
    position: relative; }
  footer .logo {
    width: 270px;
    margin: 0 auto 50px; }
  footer .footer-info-btn .footer-info-reserve-btn {
    margin-right: 10px; }
  footer .footer-info-btn .footer-info-contact-btn {
    margin-left: 10px; }
  footer .footer-gnavi {
    margin: 40px 0; }
    footer .footer-gnavi .footer-gnavi-inner {
      max-width: 720px;
      margin: 0 auto; }
      footer .footer-gnavi .footer-gnavi-inner ul {
        text-align: center; }
        footer .footer-gnavi .footer-gnavi-inner ul li {
          font-size: .8rem;
          line-height: 2.2;
          display: inline-block;
          padding: 0 10px; }
          footer .footer-gnavi .footer-gnavi-inner ul li a {
            color: white; }
            footer .footer-gnavi .footer-gnavi-inner ul li a:hover {
              text-decoration: underline; }
  footer .copy {
    font-size: .7rem;
    color: white;
    text-align: center; }
    footer .copy a {
      color: white; }
  footer .page-top {
    position: absolute;
    left: 50px;
    bottom: 20px; }
    footer .page-top a {
      position: relative;
      display: block;
      width: 80px;
      height: 80px;
      background-color: transparent;
      border: 1px solid white;
      border-radius: 50%; }
      footer .page-top a:before {
        width: 36px;
        height: 36px;
        border-top: 2px solid white;
        border-right: 2px solid white;
        position: absolute;
        top: 26px;
        left: 20px;
        margin: auto;
        content: "";
        vertical-align: middle;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        transition: all .2s ease-in-out; }
      footer .page-top a:after {
        content: 'TOP';
        font-size: 13px;
        color: white;
        position: absolute;
        top: 45px;
        bottom: 0;
        right: 0;
        left: 0;
        margin: auto;
        text-align: center;
        transition: all .2s ease-in-out; }
      footer .page-top a:hover {
        border: 1px solid #ff9600; }
        footer .page-top a:hover:before {
          border-top: 2px solid #ff9600;
          border-right: 2px solid #ff9600; }
        footer .page-top a:hover:after {
          color: #ff9600; }

/* Scss Document */
/* --------------------------------
 * #home
 * -------------------------------- */
#home {
  /* ====== home-mv-sec ====== */
  /* ====== home-concepttext-sec ====== */
  /* ====== home-news-sec ====== */
  /* ====== home-concept-sec ====== */
  /* ====== home-lineup-sec ====== */
  /* ====== home-works-sec ====== */
  /* ====== home-reserve-link01 ====== */
  /* ====== home-link-sec ====== */
  /* ====== home-sns-sec ====== */
  /* ====== home-access-sec ====== */ }
  #home .home-sec {
    padding: 100px 0 120px; }
    @media (max-width: 991.98px) {
      #home .home-sec {
        padding: 80px 0 100px; } }
    #home .home-sec .home-ttl {
      font-family: 'Noto Sans JP', sans-serif;
      font-size: 3.8rem;
      letter-spacing: .15em;
      line-height: 1;
      text-align: center;
      margin-bottom: 60px; }
      @media (max-width: 991.98px) {
        #home .home-sec .home-ttl {
          margin-bottom: 50px; } }
  #home #home-mv-sec {
    width: 100%;
    padding: 0; }
    #home #home-mv-sec .home-mv-slide {
      width: 100%;
      opacity: 0;
      transition: opacity .3s linear; }
      #home #home-mv-sec .home-mv-slide.slick-initialized {
        opacity: 1; }
      #home #home-mv-sec .home-mv-slide .slick-list li .eyecatch {
        width: 100%;
        padding-top: 35%;
        overflow: hidden;
        position: relative; }
        #home #home-mv-sec .home-mv-slide .slick-list li .eyecatch img {
          width: 100%;
          height: auto;
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%); }
      #home #home-mv-sec .home-mv-slide .slick-dots {
        bottom: -30px; }
        #home #home-mv-sec .home-mv-slide .slick-dots li button:before {
          opacity: .7;
          color: #000000; }
        #home #home-mv-sec .home-mv-slide .slick-dots .slick-active button:before {
          color: #8D0000; }
  #home #home-concepttext-sec .home-ttl {
    margin-bottom: 40px; }
  #home #home-concepttext-sec .home-concepttext-txt {
    line-height: 3;
    text-align: center; }
  #home #home-news-sec {
    padding: 0 0 120px;
    position: relative; }
    @media (max-width: 991.98px) {
      #home #home-news-sec {
        padding: 0 0 100px; } }
    #home #home-news-sec:before {
      width: 1893px;
      height: 1661px;
      content: "";
      background-image: url("../../img/home/home_bg01_1.png");
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center;
      position: absolute;
      top: -60px;
      left: calc(50% - 700px);
      z-index: -1;
      transform: translateX(-50%); }
    #home #home-news-sec .more-btn01 {
      margin-top: 30px; }
  #home #home-concept-sec {
    padding: 0 0 120px; }
    @media (max-width: 991.98px) {
      #home #home-concept-sec {
        padding: 0 0 100px; } }
    #home #home-concept-sec .home-concept-list {
      margin-right: -25px;
      margin-left: -25px; }
      @media (max-width: 991.98px) {
        #home #home-concept-sec .home-concept-list {
          margin-right: -15px;
          margin-left: -15px; } }
      #home #home-concept-sec .home-concept-list .home-concept-item {
        padding-right: 25px;
        padding-left: 25px; }
        @media (max-width: 991.98px) {
          #home #home-concept-sec .home-concept-list .home-concept-item {
            padding-right: 15px;
            padding-left: 15px; } }
        #home #home-concept-sec .home-concept-list .home-concept-item .home-concept-item-inner .home-concept-item-ttl {
          font-size: 1.1rem;
          letter-spacing: .15em;
          text-align: center;
          margin-top: 10px; }
  #home #home-lineup-sec {
    padding: 0 0 40px; }
  #home #home-works-sec {
    background-image: url("../../img/home/home_bg02.png");
    background-repeat: repeat-y;
    background-size: 100%;
    background-position: center top; }
    @media (max-width: 991.98px) {
      #home #home-works-sec {
        padding: 80px 0 80px; } }
    #home #home-works-sec .works-archive-list {
      margin-bottom: 30px; }
  #home .home-reserve-link01, #home .home-reserve-link02 {
    max-width: 980px;
    margin: 0 auto;
    padding: 100px 0; }
    @media (max-width: 991.98px) {
      #home .home-reserve-link01, #home .home-reserve-link02 {
        padding: 60px 0 80px; } }
    #home .home-reserve-link01 a, #home .home-reserve-link02 a {
      display: block;
      width: 100%;
      height: 100%;
      transition: all .3s ease-in-out; }
      #home .home-reserve-link01 a .home-reserve-link-inner, #home .home-reserve-link02 a .home-reserve-link-inner {
        width: 100%;
        height: 100%;
        position: relative; }
        #home .home-reserve-link01 a .home-reserve-link-inner:before, #home .home-reserve-link02 a .home-reserve-link-inner:before {
          display: block;
          content: "";
          width: 100%;
          height: 100%;
          position: absolute;
          top: 0;
          left: 0;
          z-index: 10;
          transition: all .3s ease-in-out; }
      #home .home-reserve-link01 a:hover .home-reserve-link-inner:before, #home .home-reserve-link02 a:hover .home-reserve-link-inner:before {
        box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.2); }
  #home .home-reserve-link01 .home-reserve-link-inner:before {
    height: calc(100% - 19px) !important;
    top: 19px !important; }
  #home #home-link-sec {
    padding: 0 0 80px; }
    @media (max-width: 991.98px) {
      #home #home-link-sec {
        padding: 0 0 40px; } }
    #home #home-link-sec .home-link-list .home-link-item {
      margin-bottom: 40px; }
      #home #home-link-sec .home-link-list .home-link-item .home-link-item-l .home-link-item-img a {
        transition: all .3s ease-in-out; }
        #home #home-link-sec .home-link-list .home-link-item .home-link-item-l .home-link-item-img a img {
          transition: all .3s ease-in-out;
          box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.15); }
        #home #home-link-sec .home-link-list .home-link-item .home-link-item-l .home-link-item-img a:hover img {
          box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.2); }
      #home #home-link-sec .home-link-list .home-link-item .home-link-item-r .home-link-item-ttl {
        font-family: 'Noto Serif JP', serif;
        font-size: 1.1rem;
        font-weight: 600;
        margin: 0 0 10px; }
      #home #home-link-sec .home-link-list .home-link-item .home-link-item-r .home-link-item-text {
        font-size: .9rem;
        height: 8.2em; }
        @media (max-width: 991.98px) {
          #home #home-link-sec .home-link-list .home-link-item .home-link-item-r .home-link-item-text {
            height: 10.6em; } }
      #home #home-link-sec .home-link-list .home-link-item .home-link-item-r .more-btn02 {
        margin-left: auto; }
  #home #home-sns-sec {
    background-image: url("../../img/home/home_bg02.png");
    background-repeat: repeat-y;
    background-size: 100%;
    background-position: center top;
    padding: 40px 0 40px; }
    #home #home-sns-sec .home-sns-inner {
      height: 507px; }
    #home #home-sns-sec .twitter-content {
      width: 420px;
      height: 500px; }
    #home #home-sns-sec .home-sns-girl {
      max-width: 270px;
      position: relative;
      bottom: -40px; }
    #home #home-sns-sec .fb-content {
      width: 420px; }
      #home #home-sns-sec .fb-content .fb-wrap {
        max-width: 500px;
        /* Facebook Page Plugin の最大幅 */
        margin: 0 auto; }
        #home #home-sns-sec .fb-content .fb-wrap .fb-page {
          width: 100%; }
          #home #home-sns-sec .fb-content .fb-wrap .fb-page span, #home #home-sns-sec .fb-content .fb-wrap .fb-page .facebook-wrapper iframe {
            width: 100% !important; }
      #home #home-sns-sec .fb-content .fb-content-bg {
        width: 48%;
        position: absolute;
        bottom: 0;
        right: 0px; }
  #home #home-access-sec {
    padding: 100px 0 0; }
    @media (max-width: 991.98px) {
      #home #home-access-sec {
        padding: 80px 0 0; } }
    #home #home-access-sec .home-access-list .home-access-item {
      margin-bottom: 80px; }
      @media (max-width: 991.98px) {
        #home #home-access-sec .home-access-list .home-access-item {
          margin-bottom: 60px; } }
      #home #home-access-sec .home-access-list .home-access-item:last-child {
        margin-bottom: 0; }
      #home #home-access-sec .home-access-list .home-access-item .home-access-item-l .home-access-storename {
        font-family: 'Noto Serif JP', serif;
        font-size: 1.1rem;
        font-weight: 600;
        margin-bottom: 10px; }
      #home #home-access-sec .home-access-list .home-access-item .home-access-item-l .home-access-info li {
        line-height: 2.2; }
      #home #home-access-sec .home-access-list .home-access-item .gmap {
        height: 300px; }

/* --------------------------------
 * トップページと商品について共通
 * -------------------------------- */
.lineup-archive-list {
  margin-right: -25px;
  margin-left: -25px; }
  @media (max-width: 991.98px) {
    .lineup-archive-list {
      margin-right: -15px;
      margin-left: -15px; } }
  .lineup-archive-list .lineup-archive-item {
    padding-right: 25px;
    padding-left: 25px;
    margin-bottom: 80px; }
    @media (max-width: 991.98px) {
      .lineup-archive-list .lineup-archive-item {
        padding-right: 15px;
        padding-left: 15px;
        margin-bottom: 60px; } }
    .lineup-archive-list .lineup-archive-item .lineup-archive-item-inner .lineup-archive-img-outer a {
      color: white; }
    .lineup-archive-list .lineup-archive-item .lineup-archive-item-inner .lineup-archive-item-ttl {
      font-family: 'Noto Serif JP', serif;
      font-size: 1.1rem;
      font-weight: 600;
      text-align: center;
      margin-top: 10px; }

/* --------------------------------
 * トップページと施工事例集共通
 * -------------------------------- */
.works-archive-list .works-archive-item {
  margin-bottom: 50px; }
  @media (max-width: 991.98px) {
    .works-archive-list .works-archive-item {
      margin-bottom: 40px; } }
  .works-archive-list .works-archive-item .works-archive-item-inner .fit-img:before {
    padding-top: 100%; }
  .works-archive-list .works-archive-item .works-archive-item-inner .works-ttl {
    text-align: center;
    margin-top: 10px; }

/* --------------------------------
 * トップページとお知らせ共通
 * -------------------------------- */
.news-date {
  font-size: .9rem; }

.news-archive-list .news-archive-item {
  margin-bottom: 50px; }
  .news-archive-list .news-archive-item .news-archive-item-inner .eyecatch-outer {
    margin-bottom: 10px; }
  .news-archive-list .news-archive-item .news-archive-item-inner .fit-img:before {
    padding-top: 35%; }
  .news-archive-list .news-archive-item .news-archive-item-inner .news-ttl {
    line-height: 160%;
    margin-top: 10px; }

.pager {
  text-align: center; }

/* --------------------------------
 * 自然素材
 * -------------------------------- */
#natural .page-mv {
  background-image: url("../../img/natural/natural_top.png"); }
#natural .page-container {
  padding-bottom: 0; }
#natural .natural-bg-content {
  height: 250px;
  background-color: #c6c2b3;
  position: relative; }
  #natural .natural-bg-content:after {
    content: "";
    width: 50%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    top: 0;
    left: 50%; }
  #natural .natural-bg-content .natural-bg-content-inner {
    height: 250px;
    position: relative; }
    #natural .natural-bg-content .natural-bg-content-inner > div {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      padding-right: 50px; }
  #natural .natural-bg-content .natural-bg-content-ttl {
    text-align: justify;
    margin-bottom: 20px; }
    @media (max-width: 991.98px) {
      #natural .natural-bg-content .natural-bg-content-ttl {
        margin-bottom: 5px; } }
    #natural .natural-bg-content .natural-bg-content-ttl br {
      display: none; }
      @media (max-width: 991.98px) {
        #natural .natural-bg-content .natural-bg-content-ttl br {
          display: block; } }
  #natural .natural-bg-content .natural-bg-content-txt {
    font-size: .9rem; }
#natural #natural1-sec .natural-bg-content {
  margin-bottom: 100px; }
  @media (max-width: 991.98px) {
    #natural #natural1-sec .natural-bg-content {
      margin-bottom: 80px; } }
  #natural #natural1-sec .natural-bg-content:after {
    background-image: url("../../img/natural/natural01.png"); }
#natural #natural1-sec #natural1-2 .natural1-2-list li {
  font-size: .9rem;
  margin-bottom: 10px; }
  #natural #natural1-sec #natural1-2 .natural1-2-list li:last-child {
    margin-bottom: 0; }
#natural #natural1-sec #natural1-2 .natural1-2-r {
  position: relative; }
  #natural #natural1-sec #natural1-2 .natural1-2-r .natural1-2-img1 {
    max-width: 470px; }
  #natural #natural1-sec #natural1-2 .natural1-2-r .natural1-2-img2 {
    max-width: 130px;
    position: absolute;
    top: -80px;
    right: 0; }
    @media (max-width: 1199.98px) {
      #natural #natural1-sec #natural1-2 .natural1-2-r .natural1-2-img2 {
        top: -120px;
        right: -50px; } }
@media (max-width: 991.98px) {
  #natural #natural2-sec {
    padding-bottom: 50px; } }
@media (max-width: 991.98px) {
  #natural #natural2-sec .natural2-list .natural2-item {
    margin-bottom: 50px; } }
#natural #natural2-sec .natural2-list .natural2-item dt {
  margin-bottom: 12px; }
#natural #natural2-sec .natural2-list .natural2-item dd .natural2-item-ttl {
  text-align: center;
  margin-bottom: 5px; }
#natural #natural2-sec .natural2-list .natural2-item dd .natural2-item-txt {
  font-size: .9rem;
  line-height: 1.6; }
#natural #natural3-sec .natural-bg-content:after {
  background-image: url("../../img/natural/natural07.png"); }
#natural #natural4-sec .ttl2 br {
  display: none; }
#natural #natural4-sec .natural4-txt {
  line-height: 2.4;
  text-align: center; }
#natural #natural5-sec .ttl2 br {
  display: none; }
#natural #natural5-sec .natural5-list .natural5-item dt {
  margin-bottom: 12px; }
#natural #natural5-sec .natural5-list .natural5-item dd {
  padding: 0 50px; }
  @media (max-width: 991.98px) {
    #natural #natural5-sec .natural5-list .natural5-item dd {
      padding: 0 10px; } }
  #natural #natural5-sec .natural5-list .natural5-item dd .natural5-item-ttl {
    text-align: center;
    margin-bottom: 5px; }
  #natural #natural5-sec .natural5-list .natural5-item dd .natural5-item-txt {
    font-size: .9rem;
    line-height: 1.6; }
#natural .natural-bottom {
  background: url("../../img/natural/natural10.jpg") center center no-repeat;
  background-size: cover;
  padding: 270px 0 100px;
  margin-top: -170px; }
  #natural .natural-bottom .concept-link {
    margin-top: 20px; }

/* --------------------------------
 * 高性能な仕様
 * -------------------------------- */
#seismic .page-mv {
  background-image: url("../../img/seismic/seismic_top.png"); }
#seismic .page-container {
  padding-bottom: 0; }
#seismic .diagonal_bg {
  position: relative; }
  #seismic .diagonal_bg:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 770px;
    width: 100%;
    background-color: #d4c2b4;
    z-index: 1; }
  #seismic .diagonal_bg:after {
    content: "";
    position: absolute;
    top: 270px;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 500px 100vw;
    border-color: transparent transparent #fff transparent;
    z-index: 2; }
  #seismic .diagonal_bg .container {
    position: relative;
    z-index: 3; }
  #seismic .diagonal_bg h3 {
    position: relative;
    z-index: 3; }
#seismic #seismic1-sec .seismic1-topimg-wrap {
  max-width: 386px;
  margin: 0 auto;
  padding: 60px 0 50px; }
  #seismic #seismic1-sec .seismic1-topimg-wrap .seismic1-topimg-1 > img, #seismic #seismic1-sec .seismic1-topimg-wrap .seismic1-topimg-2 > img {
    border-radius: 50%; }
#seismic #seismic1-sec .seismic1-ttl {
  margin-bottom: 20px; }
#seismic #seismic1-sec .seismic1-txt {
  font-size: .9rem;
  line-height: 3.2;
  text-align: center;
  margin-bottom: 100px; }
  @media (max-width: 991.98px) {
    #seismic #seismic1-sec .seismic1-txt {
      margin-bottom: 80px; } }
#seismic #seismic1-sec .seismic1-img2 {
  padding: 0 50px; }
#seismic #seismic2-sec .seismic2-inner {
  max-width: 920px;
  margin: 0 auto; }
  #seismic #seismic2-sec .seismic2-inner .seismic2-list .seismic2-item dt {
    margin-bottom: 15px; }
  #seismic #seismic2-sec .seismic2-inner .seismic2-list .seismic2-item dd {
    padding: 0 20px; }
    @media (max-width: 991.98px) {
      #seismic #seismic2-sec .seismic2-inner .seismic2-list .seismic2-item dd {
        padding: 0 10px; } }
    #seismic #seismic2-sec .seismic2-inner .seismic2-list .seismic2-item dd .seismic2-item-ttl {
      font-size: 1.2rem;
      text-align: center;
      margin-bottom: 5px; }
    #seismic #seismic2-sec .seismic2-inner .seismic2-list .seismic2-item dd .seismic2-item-txt {
      font-size: .9rem;
      line-height: 1.6;
      margin-bottom: 10px; }
      #seismic #seismic2-sec .seismic2-inner .seismic2-list .seismic2-item dd .seismic2-item-txt:last-child {
        margin-bottom: 0; }
#seismic #seismic3-sec {
  padding-top: 80px; }
  @media (max-width: 991.98px) {
    #seismic #seismic3-sec {
      padding-top: 60px; } }
  #seismic #seismic3-sec .seismic3-ttl {
    margin-bottom: 20px; }
  #seismic #seismic3-sec .seismic3-txt {
    font-size: .9rem;
    line-height: 3.2;
    text-align: center; }
#seismic #seismic4-sec {
  position: relative;
  z-index: 3; }
  #seismic #seismic4-sec .seismic4-img1 {
    max-width: 1050px;
    margin: 0 auto; }
#seismic #seismic5-sec {
  background: url("../../img/seismic/seismic09.png") center center no-repeat;
  background-size: cover;
  padding-bottom: 0; }
  #seismic #seismic5-sec #seismic5-1 {
    color: white;
    padding: 80px 0 60px;
    text-align: center; }
    @media (max-width: 991.98px) {
      #seismic #seismic5-sec #seismic5-1 {
        padding: 60px 0 40px; } }
    #seismic #seismic5-sec #seismic5-1 .seismic5-ttl > span {
      display: block; }
    #seismic #seismic5-sec #seismic5-1 .seismic5-ttl .seismic5-ttl-2 {
      margin: 10px 0 20px; }
    #seismic #seismic5-sec #seismic5-1 .seismic5-txt {
      line-height: 2.4; }
  #seismic #seismic5-sec #seismic5-2 {
    max-width: 900px;
    margin: 0 auto;
    background: rgba(255, 255, 255, 0.9); }
    #seismic #seismic5-sec #seismic5-2 .seismic5-2-inner {
      padding: 60px 90px; }
      #seismic #seismic5-sec #seismic5-2 .seismic5-2-inner .seismic5-2-img1 {
        margin-bottom: 80px; }
      #seismic #seismic5-sec #seismic5-2 .seismic5-2-inner .seismic5-2-text {
        font-size: .9rem;
        margin-bottom: 40px; }
#seismic #seismic6-sec {
  color: white;
  background-color: #000000;
  padding-top: 100px; }
  @media (max-width: 991.98px) {
    #seismic #seismic6-sec {
      padding-top: 80px; } }
  #seismic #seismic6-sec .seismic3-txt {
    line-height: 2.4;
    text-align: center;
    margin-bottom: 30px; }
    #seismic #seismic6-sec .seismic3-txt:last-child {
      margin-bottom: 0; }
#seismic .seismic-bottom {
  color: white;
  background-color: #000000;
  padding-bottom: 100px; }
  #seismic .seismic-bottom .concept-link {
    margin-top: 20px; }
    #seismic .seismic-bottom .concept-link a {
      color: white; }
      #seismic .seismic-bottom .concept-link a:after {
        border-color: transparent transparent transparent white; }

/* --------------------------------
 * コストダウンと生活の提案
 * -------------------------------- */
#insulation .page-mv {
  background-image: url("../../img/insulation/insulation_top.png"); }
#insulation .page-container {
  padding-bottom: 0; }
#insulation .diagonal_bg {
  background: url("../../img/insulation/diagonal_bg2.svg") left top no-repeat;
  background-size: 100% auto; }
#insulation .page-ttl .ja {
  font-size: 3.1rem;
  letter-spacing: .1em; }
#insulation #insulation1-sec {
  padding-top: 80px; }
  @media (max-width: 991.98px) {
    #insulation #insulation1-sec {
      padding-top: 60px; } }
  #insulation #insulation1-sec .insulation1-ttl {
    margin-bottom: 20px; }
    #insulation #insulation1-sec .insulation1-ttl br {
      display: none; }
  #insulation #insulation1-sec .insulation1-txt {
    font-size: .9rem;
    text-align: center;
    margin-bottom: 40px; }
  #insulation #insulation1-sec .insulation1-img1 {
    background-color: white; }
    #insulation #insulation1-sec .insulation1-img1 .insulation1-img1-inner {
      padding: 60px 70px; }
      @media (max-width: 991.98px) {
        #insulation #insulation1-sec .insulation1-img1 .insulation1-img1-inner {
          padding: 40px; } }
#insulation #insulation2-sec .insulation2-ttl {
  margin-bottom: 20px; }
#insulation #insulation2-sec .insulation2-txt {
  font-size: .9rem;
  text-align: center;
  margin-bottom: 40px; }
#insulation #insulation2-sec .insulation2-img1 {
  background-color: white; }
  #insulation #insulation2-sec .insulation2-img1 .insulation2-img1-inner {
    padding: 20px 70px 0; }
    @media (max-width: 991.98px) {
      #insulation #insulation2-sec .insulation2-img1 .insulation2-img1-inner {
        padding: 20px 40px 0; } }
#insulation .seismic-bottom {
  padding: 40px 0 100px; }
  #insulation .seismic-bottom .concept-link {
    margin-top: 20px; }

/* --------------------------------
 * 商品について
 * -------------------------------- */
#lineup .page-container {
  padding-bottom: 20px; }

/* --------------------------------
 * セレステ,デルソル共通
 * -------------------------------- */
#celeste .specification-list .specification-item, #delsol .specification-list .specification-item {
  margin-bottom: 50px;
  border-right: 1px solid #7e7e7e; }
  #celeste .specification-list .specification-item:nth-of-type(4), #celeste .specification-list .specification-item:nth-of-type(8), #delsol .specification-list .specification-item:nth-of-type(4), #delsol .specification-list .specification-item:nth-of-type(8) {
    border-right: none; }
  @media (max-width: 991.98px) {
    #celeste .specification-list .specification-item:nth-child(even), #delsol .specification-list .specification-item:nth-child(even) {
      border-right: none; } }
  #celeste .specification-list .specification-item dt, #delsol .specification-list .specification-item dt {
    margin-bottom: 12px; }
  #celeste .specification-list .specification-item .specification-item-ttl, #delsol .specification-list .specification-item .specification-item-ttl {
    font-size: 1.4rem;
    font-weight: 900;
    letter-spacing: .05em;
    text-align: center; }
    @media (max-width: 1199.98px) {
      #celeste .specification-list .specification-item .specification-item-ttl, #delsol .specification-list .specification-item .specification-item-ttl {
        font-size: 1.35rem; } }
  #celeste .specification-list .specification-item .sub-ttl, #delsol .specification-list .specification-item .sub-ttl {
    font-size: 1.1rem;
    font-weight: 700;
    margin: 10px 0;
    height: 4.2em; }
    @media (max-width: 1199.98px) {
      #celeste .specification-list .specification-item .sub-ttl, #delsol .specification-list .specification-item .sub-ttl {
        height: 5.6em; } }
    @media (max-width: 991.98px) {
      #celeste .specification-list .specification-item .sub-ttl, #delsol .specification-list .specification-item .sub-ttl {
        height: 2.8em; } }
  #celeste .specification-list .specification-item .specification-item-txt, #delsol .specification-list .specification-item .specification-item-txt {
    font-size: .9rem;
    line-height: 1.6;
    height: 19.2em; }
    @media (max-width: 991.98px) {
      #celeste .specification-list .specification-item .specification-item-txt, #delsol .specification-list .specification-item .specification-item-txt {
        height: 14.4em; } }
  #celeste .specification-list .specification-item .specification-item-note, #delsol .specification-list .specification-item .specification-item-note {
    margin-top: 10px; }
    @media (max-width: 991.98px) {
      #celeste .specification-list .specification-item .specification-item-note, #delsol .specification-list .specification-item .specification-item-note {
        margin-top: 0; } }
#celeste .lowprice-main, #delsol .lowprice-main {
  text-align: center;
  max-width: 1500px;
  margin: 0 auto;
  background: url("../../img/celeste/celeste15.png") center bottom no-repeat;
  background-size: cover;
  padding: 80px 0; }
  #celeste .lowprice-main .sub-ttl, #delsol .lowprice-main .sub-ttl {
    font-size: 1.3rem;
    font-weight: 500;
    margin-bottom: 50px; }
  #celeste .lowprice-main .lowprice-txt, #delsol .lowprice-main .lowprice-txt {
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 2;
    margin-bottom: 30px; }

/* --------------------------------
 * 平家物語、平家物語2共通
 * -------------------------------- */
#onestory .specification-ttl, #onestory2 .specification-ttl {
  max-width: 900px;
  margin: 0 auto 30px; }
  @media (max-width: 991.98px) {
    #onestory .specification-ttl, #onestory2 .specification-ttl {
      max-width: initial;
      width: 100%;
      padding: 0 30px; } }
  #onestory .specification-ttl span, #onestory2 .specification-ttl span {
    font-family: 'Noto Serif JP', serif;
    display: block;
    text-align: center; }
    #onestory .specification-ttl span.en, #onestory2 .specification-ttl span.en {
      font-size: 1.7rem;
      border-bottom: 1px solid #000000;
      padding-bottom: 5px;
      margin-bottom: 5px; }
    #onestory .specification-ttl span.ja, #onestory2 .specification-ttl span.ja {
      font-size: 1.3rem; }
#onestory .specification-inner, #onestory2 .specification-inner {
  max-width: 800px;
  margin: 0 auto 30px; }
  #onestory .specification-inner .specification-list, #onestory2 .specification-inner .specification-list {
    margin-right: -30px;
    margin-left: -30px; }
    #onestory .specification-inner .specification-list .specification-item, #onestory2 .specification-inner .specification-list .specification-item {
      padding-right: 30px;
      padding-left: 30px;
      margin-bottom: 50px; }
      #onestory .specification-inner .specification-list .specification-item dt, #onestory2 .specification-inner .specification-list .specification-item dt {
        margin-bottom: 12px; }
      #onestory .specification-inner .specification-list .specification-item .specification-item-ttl, #onestory2 .specification-inner .specification-list .specification-item .specification-item-ttl {
        font-family: 'Noto Serif JP', serif;
        font-size: 1.4rem;
        font-weight: 700;
        letter-spacing: .05em;
        text-align: center; }
      #onestory .specification-inner .specification-list .specification-item .sub-ttl, #onestory2 .specification-inner .specification-list .specification-item .sub-ttl {
        font-weight: 600;
        margin: 10px 0;
        text-align: center; }
      #onestory .specification-inner .specification-list .specification-item .specification-item-txt, #onestory2 .specification-inner .specification-list .specification-item .specification-item-txt {
        font-size: .9rem;
        line-height: 1.6; }
#onestory .specification-contact-btn-wrap, #onestory2 .specification-contact-btn-wrap {
  max-width: 850px;
  margin: 0 auto; }
  #onestory .specification-contact-btn-wrap .specification-reserve-btn, #onestory2 .specification-contact-btn-wrap .specification-reserve-btn {
    margin-right: 10px; }
  #onestory .specification-contact-btn-wrap .specification-contact-btn, #onestory2 .specification-contact-btn-wrap .specification-contact-btn {
    margin-left: 10px; }
  #onestory .specification-contact-btn-wrap span, #onestory2 .specification-contact-btn-wrap span {
    display: inline-block;
    margin-top: 3px; }

/* --------------------------------
 * セレステ
 * -------------------------------- */
#celeste .page-mv {
  background-image: url("../../img/celeste/celeste_top.png"); }
#celeste .page-container {
  padding-bottom: 0; }
#celeste .lineup-ttl-wrap {
  width: 200px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }
#celeste .page-toptxt {
  margin-bottom: 80px; }
  @media (max-width: 991.98px) {
    #celeste .page-toptxt {
      margin-bottom: 60px; } }
  #celeste .page-toptxt .page-toptxt-ttl {
    font-size: 2.6rem;
    font-weight: 900;
    letter-spacing: .05em;
    text-align: center;
    color: #6c87a4;
    margin-bottom: 20px; }
#celeste .celeste-ttl {
  font-size: 2.6rem;
  font-weight: 900;
  letter-spacing: .05em;
  text-align: center;
  color: #6c87a4;
  margin-bottom: 40px; }
  #celeste .celeste-ttl span {
    position: relative;
    display: inline-block;
    vertical-align: middle; }
    #celeste .celeste-ttl span:before, #celeste .celeste-ttl span:after {
      content: '';
      position: absolute;
      top: 26px;
      display: inline-block;
      vertical-align: middle;
      width: 60px;
      height: 7px;
      background-color: #6c87a4; }
    #celeste .celeste-ttl span:before {
      -webkit-transform: rotate(60deg);
      transform: rotate(60deg);
      left: -60px; }
    #celeste .celeste-ttl span:after {
      -webkit-transform: rotate(-60deg);
      transform: rotate(-60deg);
      right: -55px; }
#celeste .content-ttl {
  font-size: 1.5rem;
  font-weight: 900;
  letter-spacing: .05em;
  color: #6c87a4;
  margin-bottom: 20px; }
#celeste #celeste1-sec .celeste1-content {
  height: 520px; }
  #celeste #celeste1-sec .celeste1-content:before {
    content: "";
    height: 390px;
    background-image: url("../../img/celeste/celeste_bg.svg");
    background-size: cover;
    background-position: center right;
    position: absolute;
    z-index: 2;
    margin-top: 65px; }
  #celeste #celeste1-sec .celeste1-content.show:before {
    width: calc(50% + 100px); }
  #celeste #celeste1-sec .celeste1-content > div {
    position: relative; }
  #celeste #celeste1-sec .celeste1-content .celeste1-img {
    background-size: cover;
    background-position: center center;
    width: 72%;
    height: 525px;
    position: absolute;
    right: -100px;
    top: 0;
    z-index: 1; }
  #celeste #celeste1-sec .celeste1-content .celeste1-text-content {
    height: 390px;
    position: relative;
    z-index: 3;
    margin-top: 65px; }
    #celeste #celeste1-sec .celeste1-content .celeste1-text-content > div {
      width: 100%;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      padding-right: 50px; }
    #celeste #celeste1-sec .celeste1-content .celeste1-text-content .celeste1-text-content-txt {
      font-size: .9rem; }
#celeste #celeste1-sec .celeste1-content1 {
  margin-bottom: 100px; }
  #celeste #celeste1-sec .celeste1-content1 .celeste1-img {
    background-image: url("../../img/celeste/celeste01.png"); }
#celeste #celeste1-sec .celeste1-content2 .celeste1-img {
  background-image: url("../../img/celeste/celeste02.png"); }
@media (min-width: 1200px) {
  #celeste #celeste2-sec .container {
    max-width: 1200px; } }
#celeste #celeste2-sec .celeste2-content .celeste2-top {
  max-width: 700px;
  margin: 0 auto 30px; }
  #celeste #celeste2-sec .celeste2-content .celeste2-top .celeste2-num {
    width: 142px;
    text-align: center;
    color: #ffff00;
    background-color: #6c87a4;
    padding-top: 28px; }
    #celeste #celeste2-sec .celeste2-content .celeste2-top .celeste2-num p {
      font-size: 2.4rem;
      line-height: 1; }
      #celeste #celeste2-sec .celeste2-content .celeste2-top .celeste2-num p:last-child {
        font-size: 3.6rem; }
  #celeste #celeste2-sec .celeste2-content .celeste2-top .celeste2-textbox {
    width: 558px;
    padding-left: 20px; }
    #celeste #celeste2-sec .celeste2-content .celeste2-top .celeste2-textbox .content-ttl {
      margin-bottom: 10px; }
      #celeste #celeste2-sec .celeste2-content .celeste2-top .celeste2-textbox .content-ttl .sub-ttl {
        display: block;
        font-size: 1.1rem;
        color: #000000; }
    #celeste #celeste2-sec .celeste2-content .celeste2-top .celeste2-textbox p {
      font-size: .9rem; }
#celeste #celeste2-sec .celeste2-content .celeste2-img2 {
  width: 512px;
  margin: 0 auto;
  position: relative; }
  #celeste #celeste2-sec .celeste2-content .celeste2-img2 p {
    position: absolute;
    bottom: 5em;
    right: -220px; }
    @media (max-width: 991.98px) {
      #celeste #celeste2-sec .celeste2-content .celeste2-img2 p {
        bottom: 0;
        right: -100px; } }
#celeste #celeste2-sec .celeste2-content1 {
  margin-bottom: 100px; }
#celeste #celeste3-sec {
  padding-bottom: 50px; }
  @media (max-width: 991.98px) {
    #celeste #celeste3-sec {
      padding-bottom: 30px; } }
#celeste #celeste5-sec {
  position: relative; }
  #celeste #celeste5-sec:before {
    width: 1893px;
    height: 1661px;
    content: "";
    background-image: url(../../img/common/grain_bg01.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: absolute;
    top: 600px;
    left: calc(50% - 1100px);
    z-index: -1;
    transform: rotate(45deg) translateX(-50%); }
#celeste #celeste6-sec {
  text-align: center; }
  #celeste #celeste6-sec .celeste6-inner {
    position: relative; }
  #celeste #celeste6-sec .celeste6-img1 {
    max-width: 140px;
    position: absolute;
    top: -40px;
    right: 0; }
    @media (max-width: 991.98px) {
      #celeste #celeste6-sec .celeste6-img1 {
        max-width: 120px;
        top: 70px; } }
  #celeste #celeste6-sec .sub-ttl {
    font-size: 1.5rem;
    font-weight: 900;
    color: #000000;
    margin-bottom: 20px; }
  #celeste #celeste6-sec .celeste6-txt {
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 3;
    margin-bottom: 30px; }
  #celeste #celeste6-sec .celeste6-content {
    padding: 0 30px; }
  #celeste #celeste6-sec .celeste6-imglist {
    margin-right: -30px;
    margin-left: -30px;
    margin-bottom: 100px; }
    @media (max-width: 991.98px) {
      #celeste #celeste6-sec .celeste6-imglist {
        margin-right: -15px;
        margin-left: -15px;
        margin-bottom: 80px; } }
    #celeste #celeste6-sec .celeste6-imglist li {
      padding-right: 30px;
      padding-left: 30px; }
      @media (max-width: 991.98px) {
        #celeste #celeste6-sec .celeste6-imglist li {
          padding-right: 15px;
          padding-left: 15px; } }
#celeste .form-wrapper {
  padding-bottom: 100px; }
  #celeste .form-wrapper:before {
    border-color: transparent transparent #e8e1d3 transparent; }
  #celeste .form-wrapper:after {
    background-color: #e8e1d3; }
  #celeste .form-wrapper .wpcf7c-conf:-webkit-autofill {
    /*choromeの青背景をなくす*/
    -webkit-box-shadow: 0 0 0 1000px #e8e1d3 inset; }
  #celeste .form-wrapper .wpcf7c-conf, #celeste .form-wrapper .wpcf7c-conf:focus {
    /*確認画面*/
    background-color: #e8e1d3 !important; }

/* --------------------------------
 * デルソル
 * -------------------------------- */
#delsol .page-mv {
  background-image: url("../../img/delsol/delsol_top.png"); }
#delsol .page-container {
  color: #391700;
  background-color: #f5f4e0; }
#delsol .lineup-ttl-wrap h2 {
  width: 300px;
  padding-top: 100px; }
#delsol .page-toptxt {
  max-width: 780px;
  margin: 0 auto 80px; }
  #delsol .page-toptxt .page-toptxt-ttl {
    font-size: 2.4rem;
    font-weight: 900;
    letter-spacing: .05em;
    text-align: center;
    color: #ae9c62;
    margin-bottom: 20px; }
    #delsol .page-toptxt .page-toptxt-ttl .scroll-target.a-border:before {
      height: 15px;
      background-color: #ffff9d; }
  #delsol .page-toptxt .page-toptxt-txt {
    text-align: justify;
    margin-top: 20px; }
#delsol .delsol-ttl {
  font-size: 2.6rem;
  font-weight: 900;
  letter-spacing: .05em;
  text-align: center;
  color: #391700;
  margin-bottom: 40px; }
  #delsol .delsol-ttl span {
    position: relative;
    display: inline-block;
    vertical-align: middle; }
    #delsol .delsol-ttl span:before, #delsol .delsol-ttl span:after {
      content: '';
      position: absolute;
      top: -7px;
      display: inline-block;
      vertical-align: middle;
      width: 65px;
      height: 65px;
      background: url("../../img/delsol/delsol_ttl_icon.svg") no-repeat center;
      background-size: cover; }
    #delsol .delsol-ttl span:before {
      left: -70px; }
    #delsol .delsol-ttl span:after {
      right: -70px; }
#delsol .content-ttl {
  font-size: 1.5rem;
  font-weight: 900;
  letter-spacing: .05em;
  color: #6c87a4;
  margin-bottom: 20px; }
#delsol #delsol1-sec .delsol1-content {
  background-color: white;
  position: relative; }
  #delsol #delsol1-sec .delsol1-content .delsol1-num {
    position: absolute;
    top: 0;
    left: 0; }
    #delsol #delsol1-sec .delsol1-content .delsol1-num .delsol1-num-inner {
      width: 286px;
      position: relative; }
      #delsol #delsol1-sec .delsol1-content .delsol1-num .delsol1-num-inner:before {
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 100px 286px 0 0;
        border-color: #ae9c62 transparent transparent transparent;
        position: absolute; }
      #delsol #delsol1-sec .delsol1-content .delsol1-num .delsol1-num-inner p {
        font-size: 1.7rem;
        line-height: 1;
        color: #000000;
        position: relative;
        z-index: 2;
        padding-top: 15px;
        display: inline-block; }
        #delsol #delsol1-sec .delsol1-content .delsol1-num .delsol1-num-inner p:first-child {
          padding-left: 20px; }
        #delsol #delsol1-sec .delsol1-content .delsol1-num .delsol1-num-inner p:last-child {
          font-size: 2.2rem;
          margin-left: 10px; }
  #delsol #delsol1-sec .delsol1-content .delsol1-content-inner {
    padding: 50px; }
    #delsol #delsol1-sec .delsol1-content .delsol1-content-inner .delsol1-content-l {
      padding-top: 100px; }
      #delsol #delsol1-sec .delsol1-content .delsol1-content-inner .delsol1-content-l .delsol1-content-txt1 {
        font-size: 1.1rem;
        font-weight: 500;
        line-height: 2;
        margin-bottom: 100px; }
        #delsol #delsol1-sec .delsol1-content .delsol1-content-inner .delsol1-content-l .delsol1-content-txt1 .scroll-target.a-border:before {
          height: 10px;
          background-color: #ffff9d; }
      #delsol #delsol1-sec .delsol1-content .delsol1-content-inner .delsol1-content-l .delsol1-content-txt2 {
        line-height: 2; }
    #delsol #delsol1-sec .delsol1-content .delsol1-content-inner .delsol1-content-r .delsol1-content-img1 {
      margin-bottom: 30px; }
#delsol #delsol1-sec .delsol1-content1 {
  margin-bottom: 40px; }
#delsol #delsol1-sec .delsol1-content2 .delsol1-num-inner:before {
  border-color: #9b9b9b transparent transparent transparent !important; }

/* --------------------------------
 * 平家物語
 * -------------------------------- */
#onestory .page-mv {
  background-image: url("../../img/onestory/onestory_top.png"); }
#onestory .lineup-ttl-wrap {
  width: 210px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }
#onestory .onestory-img-sec {
  padding: 60px 0; }
  #onestory .onestory-img-sec .onestory-img-inner {
    max-width: 960px;
    margin: 0 auto;
    position: relative; }
    #onestory .onestory-img-sec .onestory-img-inner .onestory-imgtop-content {
      margin-bottom: 30px; }
      #onestory .onestory-img-sec .onestory-img-inner .onestory-imgtop-content .onestory-imgtop-l {
        width: 37%;
        padding: 30px 30px 0 0; }
        @media (max-width: 1199.98px) {
          #onestory .onestory-img-sec .onestory-img-inner .onestory-imgtop-content .onestory-imgtop-l {
            width: 40%; } }
        @media (max-width: 991.98px) {
          #onestory .onestory-img-sec .onestory-img-inner .onestory-imgtop-content .onestory-imgtop-l {
            width: 50%; } }
        #onestory .onestory-img-sec .onestory-img-inner .onestory-imgtop-content .onestory-imgtop-l .onestory-imgtop-txt1, #onestory .onestory-img-sec .onestory-img-inner .onestory-imgtop-content .onestory-imgtop-l .onestory-imgtop-txt2 {
          font-family: 'Noto Serif JP', serif;
          font-size: 1.4rem; }
        #onestory .onestory-img-sec .onestory-img-inner .onestory-imgtop-content .onestory-imgtop-l .onestory-imgtop-txt1 {
          margin-bottom: 10px; }
          #onestory .onestory-img-sec .onestory-img-inner .onestory-imgtop-content .onestory-imgtop-l .onestory-imgtop-txt1 span {
            font-size: 3.3rem; }
        #onestory .onestory-img-sec .onestory-img-inner .onestory-imgtop-content .onestory-imgtop-l .onestory-imgtop-ttl {
          font-family: 'Noto Serif JP', serif;
          font-size: 2.3rem;
          margin: 20px 0 20px -10px; }
        #onestory .onestory-img-sec .onestory-img-inner .onestory-imgtop-content .onestory-imgtop-l .onestory-imgtop-txt3, #onestory .onestory-img-sec .onestory-img-inner .onestory-imgtop-content .onestory-imgtop-l .onestory-imgtop-txt4 {
          font-size: .9rem;
          line-height: 2; }
        #onestory .onestory-img-sec .onestory-img-inner .onestory-imgtop-content .onestory-imgtop-l .onestory-imgtop-txt4 {
          margin-top: 30px; }
      #onestory .onestory-img-sec .onestory-img-inner .onestory-imgtop-content .onestory-imgtop-r {
        width: 63%; }
        @media (max-width: 1199.98px) {
          #onestory .onestory-img-sec .onestory-img-inner .onestory-imgtop-content .onestory-imgtop-r {
            width: 60%; } }
        @media (max-width: 991.98px) {
          #onestory .onestory-img-sec .onestory-img-inner .onestory-imgtop-content .onestory-imgtop-r {
            width: 50%; } }
    #onestory .onestory-img-sec .onestory-img-inner .onestory-imgillust {
      position: absolute;
      bottom: -60px;
      left: 0; }
#onestory #onestory1-sec {
  background-color: #e0e6e7; }
  #onestory #onestory1-sec .onestory-imgillust {
    width: 296px;
    left: 30px; }
    @media (max-width: 991.98px) {
      #onestory #onestory1-sec .onestory-imgillust {
        width: calc(296px * 0.9); } }
#onestory #onestory2-sec {
  background-color: #bbc9cb; }
  #onestory #onestory2-sec .onestory-imgillust {
    width: 212px;
    left: -30px;
    bottom: -90px; }
    @media (max-width: 991.98px) {
      #onestory #onestory2-sec .onestory-imgillust {
        width: calc(212px * 0.9); } }
#onestory #onestory3-sec {
  padding-top: 100px;
  padding-bottom: 70px; }
  @media (max-width: 991.98px) {
    #onestory #onestory3-sec {
      padding-top: 80px; } }
  #onestory #onestory3-sec .onestory3-ttl {
    font-family: 'Noto Serif JP', serif;
    font-size: 1.7rem;
    line-height: 2;
    text-align: center;
    margin-bottom: 60px; }
    @media (max-width: 991.98px) {
      #onestory #onestory3-sec .onestory3-ttl {
        margin-bottom: 40px; } }
  #onestory #onestory3-sec .onestory3-inner {
    max-width: 750px;
    margin: 0 auto; }
#onestory #onestory4-sec {
  padding-bottom: 0; }

/* --------------------------------
 * 平家物語2
 * -------------------------------- */
#onestory2 .page-mv {
  background-image: url("../../img/onestory2/onestory2_top.png"); }
#onestory2 .lineup-ttl-wrap h2 {
  width: 180px;
  margin: 0 60px 0 auto;
  padding-top: 30px; }
  @media (max-width: 991.98px) {
    #onestory2 .lineup-ttl-wrap h2 {
      margin: 0 0 0 auto; } }
#onestory2 .onestory2-ttl {
  font-family: 'Noto Serif JP', serif;
  font-size: 1.8rem;
  letter-spacing: .05em;
  text-align: center;
  margin-bottom: 50px; }
  #onestory2 .onestory2-ttl span {
    position: relative;
    display: inline-block;
    vertical-align: middle; }
    #onestory2 .onestory2-ttl span:before, #onestory2 .onestory2-ttl span:after {
      content: '';
      position: absolute;
      top: 22px;
      display: inline-block;
      vertical-align: middle;
      width: 55px;
      height: 3px;
      background-color: #000000; }
    #onestory2 .onestory2-ttl span:before {
      -webkit-transform: rotate(65deg);
      transform: rotate(65deg);
      left: -45px; }
    #onestory2 .onestory2-ttl span:after {
      -webkit-transform: rotate(-65deg);
      transform: rotate(-65deg);
      right: -40px; }
#onestory2 #onestory2_1-sec .onestory2_1-top .onestory2_1-inner {
  max-width: 960px;
  margin: 0 auto; }
  #onestory2 #onestory2_1-sec .onestory2_1-top .onestory2_1-inner .onestory2_1-1 {
    margin-bottom: 60px; }
    #onestory2 #onestory2_1-sec .onestory2_1-top .onestory2_1-inner .onestory2_1-1 .onestory2_1-1-l {
      width: 48%;
      padding-right: 50px; }
      #onestory2 #onestory2_1-sec .onestory2_1-top .onestory2_1-inner .onestory2_1-1 .onestory2_1-1-l .onestory2_1-1-ttl {
        font-family: 'Noto Serif JP', serif;
        font-size: 1.5rem;
        border-bottom: 1px solid #000000;
        padding-bottom: 5px;
        margin-bottom: 10px; }
      #onestory2 #onestory2_1-sec .onestory2_1-top .onestory2_1-inner .onestory2_1-1 .onestory2_1-1-l .onestory2_1-1-txt {
        font-size: .9rem;
        line-height: 2; }
    #onestory2 #onestory2_1-sec .onestory2_1-top .onestory2_1-inner .onestory2_1-1 .onestory2_1-1-r {
      width: 54%; }
  #onestory2 #onestory2_1-sec .onestory2_1-top .onestory2_1-inner .onestory2_1-2 {
    max-width: 730px;
    margin: 0 auto 60px; }
  #onestory2 #onestory2_1-sec .onestory2_1-top .onestory2_1-inner .onestory2_1-3 {
    max-width: 860px;
    margin: 0 auto 80px; }
#onestory2 #onestory2_1-sec .onestory2_1-bottom {
  max-width: 1200px;
  margin: 0 auto; }
  @media (max-width: 1200px) {
    #onestory2 #onestory2_1-sec .onestory2_1-bottom {
      padding: 0 15px; } }
#onestory2 #onestory2_2-sec .onestory2_2-inner {
  max-width: 960px;
  margin: 0 auto; }
  #onestory2 #onestory2_2-sec .onestory2_2-inner .onestory2_2-list .onestory2_2-item {
    margin-bottom: 20px; }
    #onestory2 #onestory2_2-sec .onestory2_2-inner .onestory2_2-list .onestory2_2-item .onestory2_2-item-dt {
      width: 50%; }
    #onestory2 #onestory2_2-sec .onestory2_2-inner .onestory2_2-list .onestory2_2-item .onestory2_2-item-dd {
      width: 50%;
      position: relative; }
      #onestory2 #onestory2_2-sec .onestory2_2-inner .onestory2_2-list .onestory2_2-item .onestory2_2-item-dd .onestory2_2-item-dd-inner {
        padding-right: 30px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%); }
        #onestory2 #onestory2_2-sec .onestory2_2-inner .onestory2_2-list .onestory2_2-item .onestory2_2-item-dd .onestory2_2-item-dd-inner .onestory2_2-item-ttl {
          font-size: 1.2rem;
          font-weight: 500;
          margin-bottom: 10px; }
        #onestory2 #onestory2_2-sec .onestory2_2-inner .onestory2_2-list .onestory2_2-item .onestory2_2-item-dd .onestory2_2-item-dd-inner .txt {
          font-size: .9rem;
          line-height: 2; }
    #onestory2 #onestory2_2-sec .onestory2_2-inner .onestory2_2-list .onestory2_2-item:nth-child(odd) .onestory2_2-item-dd-inner {
      padding: 0 30px 0 70px; }
      @media (max-width: 991.98px) {
        #onestory2 #onestory2_2-sec .onestory2_2-inner .onestory2_2-list .onestory2_2-item:nth-child(odd) .onestory2_2-item-dd-inner {
          padding: 0 20px 0 30px; } }
    #onestory2 #onestory2_2-sec .onestory2_2-inner .onestory2_2-list .onestory2_2-item:nth-child(even) .onestory2_2-item-dd-inner {
      padding: 0 70px 0 30px; }
      @media (max-width: 991.98px) {
        #onestory2 #onestory2_2-sec .onestory2_2-inner .onestory2_2-list .onestory2_2-item:nth-child(even) .onestory2_2-item-dd-inner {
          padding: 0 30px 0 20px; } }
#onestory2 #onestory2_3-sec .onestory2-3-list {
  margin-right: -5px;
  margin-left: -5px; }
  #onestory2 #onestory2_3-sec .onestory2-3-list li {
    width: 20%;
    padding-right: 5px;
    padding-left: 5px; }
    #onestory2 #onestory2_3-sec .onestory2-3-list li .movie-wrap {
      padding-bottom: 66%;
      position: relative;
      overflow: hidden; }
      #onestory2 #onestory2_3-sec .onestory2-3-list li .movie-wrap iframe {
        width: 100%;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%); }
    #onestory2 #onestory2_3-sec .onestory2-3-list li .movie-ttl {
      font-size: .8rem;
      text-align: center; }
#onestory2 #onestory2_4-sec {
  padding-bottom: 0; }

/* --------------------------------
 * maman
 * -------------------------------- */
#maman p, #maman dt, #maman h1, #maman h2, #maman h3, #maman h4, #maman h5, #maman h6 {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300; }
#maman .maman-ttl {
  font-size: 1.6rem;
  text-align: center;
  margin-bottom: 60px; }
#maman .page-mv {
  background-color: #f9ebb7; }
  #maman .page-mv .lineup-ttl-wrap {
    width: 872px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
    @media (max-width: 991.98px) {
      #maman .page-mv .lineup-ttl-wrap {
        width: 100%;
        padding: 0 30px; } }
#maman .page-toptxt {
  margin-bottom: 60px; }
  #maman .page-toptxt .page-toptxt-txt {
    font-size: 1.3rem;
    line-height: 1.8; }
  #maman .page-toptxt .page-toptxt-img {
    max-width: 960px;
    margin: 60px auto; }
#maman .maman-imglist .maman-imgitem .maman-imgitem-dt {
  font-size: 1.2rem;
  line-height: 1.8;
  position: relative; }
  @media (max-width: 991.98px) {
    #maman .maman-imglist .maman-imgitem .maman-imgitem-dt {
      font-size: 1.1rem; } }
  #maman .maman-imglist .maman-imgitem .maman-imgitem-dt .maman-imgitem-dt-inner {
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }
#maman #maman1-sec .maman1-inner {
  max-width: 1080px;
  margin: 0 auto; }
#maman #maman2-sec .maman-ttl br {
  display: none; }
#maman #maman2-sec .maman2-inner {
  max-width: 1080px;
  margin: 0 auto; }
  #maman #maman2-sec .maman2-inner .maman-imgitem {
    margin-bottom: 60px; }
    #maman #maman2-sec .maman2-inner .maman-imgitem:last-child {
      margin-bottom: 0; }
#maman #maman3-sec .maman-ttl span br {
  display: none; }
#maman #maman3-sec .maman3-inner {
  max-width: 830px;
  margin: 0 auto; }
#maman #maman4-sec .maman4-inner {
  max-width: 850px;
  margin: 0 auto; }
#maman #maman5-sec {
  padding-bottom: 50px; }
  #maman #maman5-sec .maman-ttl br {
    display: none; }
  #maman #maman5-sec .maman5-inner {
    max-width: 1060px;
    margin: 0 auto; }
    #maman #maman5-sec .maman5-inner .maman5-list {
      margin-right: -30px;
      margin-left: -30px; }
      @media (max-width: 991.98px) {
        #maman #maman5-sec .maman5-inner .maman5-list {
          margin-right: -15px;
          margin-left: -15px; } }
      #maman #maman5-sec .maman5-inner .maman5-list .maman5-item {
        padding-right: 30px;
        padding-left: 30px;
        margin-bottom: 50px; }
        @media (max-width: 991.98px) {
          #maman #maman5-sec .maman5-inner .maman5-list .maman5-item {
            padding-right: 15px;
            padding-left: 15px; } }
        #maman #maman5-sec .maman5-inner .maman5-list .maman5-item dt {
          margin-bottom: 12px;
          position: relative; }
          #maman #maman5-sec .maman5-inner .maman5-list .maman5-item dt .kabezai {
            width: 70px;
            position: absolute;
            right: 20px;
            bottom: -30px; }
        #maman #maman5-sec .maman5-inner .maman5-list .maman5-item dd .maman5-item-ttl {
          font-size: 1.6rem;
          margin-bottom: 10px;
          text-align: center; }
        #maman #maman5-sec .maman5-inner .maman5-list .maman5-item dd .maman5-item-txt {
          line-height: 1.8;
          height: 5.4em; }
          @media (max-width: 1199.98px) {
            #maman #maman5-sec .maman5-inner .maman5-list .maman5-item dd .maman5-item-txt {
              height: 7.2em; } }
#maman #maman6-sec .maman-ttl {
  font-size: 1.3rem;
  line-height: 1.8; }
  #maman #maman6-sec .maman-ttl span br {
    display: none; }
#maman #maman6-sec .maman6-inner {
  max-width: 628px;
  margin: 0 auto; }
#maman #maman7-sec .maman-ttl {
  font-size: 1.3rem;
  line-height: 1.8; }
  #maman #maman7-sec .maman-ttl span br {
    display: none; }
#maman #maman7-sec .maman7-inner {
  max-width: 900px;
  margin: 0 auto;
  position: relative; }
  #maman #maman7-sec .maman7-inner .maman-logo1 {
    width: 194px;
    position: absolute;
    top: -30px;
    left: -50px; }
  #maman #maman7-sec .maman7-inner .maman-link {
    margin-top: 20px; }
    #maman #maman7-sec .maman7-inner .maman-link .maman-link-inner {
      width: 650px;
      margin-left: auto; }
      #maman #maman7-sec .maman7-inner .maman-link .maman-link-inner .maman4-logo2 {
        width: 220px;
        margin-right: 10px; }
      #maman #maman7-sec .maman7-inner .maman-link .maman-link-inner .maman4-linkbtn {
        width: 420px;
        height: 56px; }
        #maman #maman7-sec .maman7-inner .maman-link .maman-link-inner .maman4-linkbtn a {
          display: block;
          width: 100%;
          height: 100%;
          font-family: 'Noto Serif JP',serif;
          font-size: 1.4rem;
          text-align: center;
          line-height: 56px;
          color: white;
          background-color: #dda993; }
          #maman #maman7-sec .maman7-inner .maman-link .maman-link-inner .maman4-linkbtn a span {
            display: inline-block;
            vertical-align: middle;
            margin-top: -7px; }
            #maman #maman7-sec .maman7-inner .maman-link .maman-link-inner .maman4-linkbtn a span:after {
              display: inline-block;
              vertical-align: middle;
              content: "";
              width: 0;
              height: 0;
              border-style: solid;
              border-width: 10px 0 10px 17px;
              border-color: transparent transparent transparent white;
              position: relative;
              margin-left: 5px;
              top: -3px;
              transition: all .2s ease-in-out; }
          #maman #maman7-sec .maman7-inner .maman-link .maman-link-inner .maman4-linkbtn a:hover {
            background-color: #ea9a7f; }

/* --------------------------------
 * オーガニックハウス
 * -------------------------------- */
#organichouse .organichouse-ttl {
  text-align: center;
  margin-bottom: 40px; }
  #organichouse .organichouse-ttl span {
    font-family: 'Noto Serif JP', serif;
    display: block; }
  #organichouse .organichouse-ttl .en {
    font-size: 1.8rem;
    margin-bottom: 5px; }
  #organichouse .organichouse-ttl .ja {
    font-size: .9rem;
    color: #D65112; }
#organichouse .page-mv {
  background-image: url("../../img/organichouse/organichouse_top.png"); }
#organichouse .lineup-ttl-wrap h2 {
  width: 116px;
  margin: 0 50px 0 auto;
  padding-top: 150px; }
#organichouse .page-toptxt .page-toptxt-txt {
  font-size: 1.3rem;
  line-height: 1.8; }
#organichouse #organichouse1-sec {
  color: white;
  text-align: center; }
  #organichouse #organichouse1-sec .organichouse1-content {
    width: 100%;
    height: 100%;
    background-color: #D65112;
    position: relative; }
    #organichouse #organichouse1-sec .organichouse1-content .organichouse1-bg {
      width: 100%;
      height: 100%;
      position: absolute;
      z-index: 1; }
      #organichouse #organichouse1-sec .organichouse1-content .organichouse1-bg .organichouse1-bg-inner {
        width: 1050px;
        height: 100%;
        margin: 0 auto;
        position: relative; }
        #organichouse #organichouse1-sec .organichouse1-content .organichouse1-bg .organichouse1-bg-inner:before, #organichouse #organichouse1-sec .organichouse1-content .organichouse1-bg .organichouse1-bg-inner:after {
          display: inline-block;
          width: 321px;
          height: 100%;
          content: "";
          background: url("../../img/organichouse/organichouse_bg.svg") repeat-y;
          background-size: auto;
          position: absolute;
          top: 0; }
        #organichouse #organichouse1-sec .organichouse1-content .organichouse1-bg .organichouse1-bg-inner:before {
          left: -321px; }
        #organichouse #organichouse1-sec .organichouse1-content .organichouse1-bg .organichouse1-bg-inner:after {
          right: -321px; }
    #organichouse #organichouse1-sec .organichouse1-content .organichouse1-main {
      position: relative;
      z-index: 2; }
  #organichouse #organichouse1-sec .organichouse1-1 {
    margin-bottom: 40px; }
    #organichouse #organichouse1-sec .organichouse1-1 .organichouse1-main {
      padding: 80px 0 60px; }
    #organichouse #organichouse1-sec .organichouse1-1 .organichouse-ttl {
      font-size: 1.1rem;
      font-weight: 500;
      margin-bottom: 50px; }
    #organichouse #organichouse1-sec .organichouse1-1 .organichouse1-1-txt {
      font-size: .9rem;
      line-height: 2;
      margin-bottom: 30px; }
    #organichouse #organichouse1-sec .organichouse1-1 .organichouse1-1-subttl {
      max-width: 400px;
      margin: 0 auto 30px;
      background-color: #990002;
      padding: 10px 0; }
  #organichouse #organichouse1-sec .organichouse1-2 .organichouse1-main {
    padding: 100px 0; }
  #organichouse #organichouse1-sec .organichouse1-2 .organichouse1-2-img {
    max-width: 296px;
    margin: 0 auto;
    position: relative; }
    #organichouse #organichouse1-sec .organichouse1-2 .organichouse1-2-img .square {
      width: 150px;
      height: 150px;
      background-color: #FFAD00;
      position: absolute;
      top: -100px;
      left: -260px; }
#organichouse #organichouse2-sec {
  padding-bottom: 50px; }
  #organichouse #organichouse2-sec .organichouse2-1 {
    max-width: 1010px;
    margin: 0 auto 60px; }
    #organichouse #organichouse2-sec .organichouse2-1 .organichouse2-1-list .organichouse2-1-item {
      margin-bottom: 50px; }
      #organichouse #organichouse2-sec .organichouse2-1 .organichouse2-1-list .organichouse2-1-item:last-child {
        margin-bottom: 0; }
      #organichouse #organichouse2-sec .organichouse2-1 .organichouse2-1-list .organichouse2-1-item .organichouse2-1-item-dd {
        padding-top: 30px; }
        @media (max-width: 1199.98px) {
          #organichouse #organichouse2-sec .organichouse2-1 .organichouse2-1-list .organichouse2-1-item .organichouse2-1-item-dd {
            padding-top: 0; } }
        #organichouse #organichouse2-sec .organichouse2-1 .organichouse2-1-list .organichouse2-1-item .organichouse2-1-item-dd .organichouse2-1-item-ttl {
          font-family: 'Noto Serif JP', serif;
          font-size: 1.3rem;
          font-weight: 500;
          margin-bottom: 10px; }
          @media (min-width: 992px) {
            #organichouse #organichouse2-sec .organichouse2-1 .organichouse2-1-list .organichouse2-1-item .organichouse2-1-item-dd .organichouse2-1-item-ttl br {
              display: none; } }
        #organichouse #organichouse2-sec .organichouse2-1 .organichouse2-1-list .organichouse2-1-item .organichouse2-1-item-dd .organichouse2-1-item-txt {
          font-size: .9rem; }
  #organichouse #organichouse2-sec .organichouse2-2 {
    max-width: 1010px;
    margin: 0 auto; }
    #organichouse #organichouse2-sec .organichouse2-2 .organichouse2-2-list .organichouse2-2-item {
      margin-bottom: 50px; }
      #organichouse #organichouse2-sec .organichouse2-2 .organichouse2-2-list .organichouse2-2-item .organichouse2-2-item-dt {
        margin-bottom: 10px; }
      #organichouse #organichouse2-sec .organichouse2-2 .organichouse2-2-list .organichouse2-2-item .organichouse2-2-item-dd .organichouse2-2-item-ttl {
        font-size: 1.3rem;
        text-align: center; }
      #organichouse #organichouse2-sec .organichouse2-2 .organichouse2-2-list .organichouse2-2-item .organichouse2-2-item-dd .organichouse2-2-item-txt {
        font-size: .9rem;
        padding: 0 10px; }
#organichouse #organichouse3-sec {
  padding-bottom: 150px; }
  #organichouse #organichouse3-sec .organichouse3-inner {
    max-width: 1010px;
    margin: 0 auto; }
  #organichouse #organichouse3-sec .organichouse3-list .organichouse3-item {
    margin-bottom: 80px; }
    #organichouse #organichouse3-sec .organichouse3-list .organichouse3-item .vr-link {
      display: block;
      max-width: 400px;
      line-height: 60px;
      font-size: 1.7rem;
      text-align: center;
      color: white;
      background-color: #A82A0C;
      margin: 20px auto 0; }
      #organichouse #organichouse3-sec .organichouse3-list .organichouse3-item .vr-link:hover {
        background-color: #FF3709; }
  #organichouse #organichouse3-sec .organichouse3-subttl {
    font-family: 'Noto Serif JP', serif;
    font-size: 1.8rem;
    text-align: center; }

/* --------------------------------
 * 施工事例集
 * -------------------------------- */
#works .works-archive .page-mv {
  background-image: url("../../img/works/works_top01.png"); }
#works .works-archive .page-container {
  padding-bottom: 50px; }
#works .works-single .page-mv2 {
  background-image: url("../../img/works/works_top02.png"); }
  #works .works-single .page-mv2 .page-ttl2 .ja {
    font-size: 2.4rem; }
#works .works-single .page-container {
  padding-bottom: 70px; }
#works .works-single .works-single-list .works-single-item {
  margin-bottom: 30px; }
  #works .works-single .works-single-list .works-single-item .works-single-item-inner .eyecatch-outer, #works .works-single .works-single-list .works-single-item .works-single-item-inner .eyecatch {
    width: 100%;
    height: 100%; }
  #works .works-single .works-single-list .works-single-item .works-single-item-inner .fit-img:before {
    padding-top: 65%; }
  #works .works-single .works-single-list .works-single-item .works-single-item-inner .works-single-txt {
    font-size: .9rem;
    line-height: 1.6;
    margin-top: 10px; }

/* --------------------------------
 * NEWS
 * -------------------------------- */
.single-post .breadcrumbs-outer {
  top: 80px; }

#news .page-container {
  padding-bottom: 40px; }
#news .news-archive .new-archive-wrapper {
  position: relative; }
  #news .news-archive .new-archive-wrapper:before {
    width: 1893px;
    height: 1661px;
    content: "";
    background-image: url(../../img/home/home_bg01.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: absolute;
    top: 100px;
    left: calc(50% - 700px);
    z-index: -1;
    transform: translateX(-50%); }
#news .news-archive .pager {
  margin-top: 50px; }
#news .news-single .news-single-inner {
  margin-right: -25px;
  margin-left: -25px;
  position: relative; }
#news .news-single .news-single-main, #news .news-single .news-side {
  padding-right: 25px;
  padding-left: 25px; }
#news .news-single .news-single-main {
  margin-top: 80px; }
  #news .news-single .news-single-main .eyecatch {
    margin-bottom: 60px; }
  #news .news-single .news-single-main .news-single-ttl {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: .05em;
    margin: 0 0 50px; }
  #news .news-single .news-single-main .news-single-content {
    margin-top: 60px; }
    #news .news-single .news-single-main .news-single-content h2 {
      font-size: 1.5rem;
      font-weight: 700;
      letter-spacing: .05em;
      margin: 0 0 50px;
      background: #f6f6f6;
      padding: 15px 20px 10px;
      border-left: solid 5px #888;
      border-bottom: none !important; }
    #news .news-single .news-single-main .news-single-content h3 {
      font-size: 1.1rem;
      font-weight: 700;
      border-bottom: solid 1px #888;
      border-top: solid 1px #888;
      padding: 13px 0 10px;
      margin: 20px 0 !important; }
    #news .news-single .news-single-main .news-single-content img {
      width: auto;
      max-width: 100%; }
    #news .news-single .news-single-main .news-single-content .quote-link_entry {
      display: block;
      border: 1px solid #eee;
      padding: 20px; }
      #news .news-single .news-single-main .news-single-content .quote-link_entry span {
        display: block;
        line-height: 1.5; }
      #news .news-single .news-single-main .news-single-content .quote-link_entry .link-thumbnail {
        display: flex !important;
        flex-direction: row; }
        #news .news-single .news-single-main .news-single-content .quote-link_entry .link-thumbnail .quote-link-img {
          margin-right: 30px; }
          #news .news-single .news-single-main .news-single-content .quote-link_entry .link-thumbnail .quote-link-img .quote-link-img-item {
            background: url("../../img/common/logo02.svg") no-repeat;
            background-size: cover;
            height: 140px;
            overflow: hidden;
            position: relative;
            width: 140px; }
        #news .news-single .news-single-main .news-single-content .quote-link_entry .link-thumbnail .cont .quote-link_title {
          font-weight: 700; }
        #news .news-single .news-single-main .news-single-content .quote-link_entry .link-thumbnail .cont .quote-link_desp {
          font-size: .9rem;
          margin: 10px 0; }
        #news .news-single .news-single-main .news-single-content .quote-link_entry .link-thumbnail .cont .quote-link_site {
          font-size: .9rem; }
  #news .news-single .news-single-main .news-share {
    position: absolute;
    top: -80px;
    right: -295px;
    z-index: 10; }
    #news .news-single .news-single-main .news-share .news-share-list {
      width: 270px; }
      #news .news-single .news-single-main .news-share .news-share-list .nsi-twitter iframe {
        position: relative !important;
        top: 5px; }
#news .paging {
  max-width: 520px;
  margin: 100px 0 80px; }
  #news .paging .paging-item {
    width: calc(50% - 10px); }
    #news .paging .paging-item a {
      font-weight: 500;
      color: #8D0000; }
    #news .paging .paging-item .prev-thumbnail a, #news .paging .paging-item .next-thumbnail a {
      display: block;
      position: relative; }
      #news .paging .paging-item .prev-thumbnail a:before, #news .paging .paging-item .next-thumbnail a:before {
        content: "";
        display: block;
        padding-top: 35%; }
      #news .paging .paging-item .prev-thumbnail a img, #news .paging .paging-item .next-thumbnail a img {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        object-fit: cover;
        font-family: 'object-fit: cover;';
        /*IE対策*/ }
#news .news-footer-reserve {
  max-width: 520px; }
  #news .news-footer-reserve .input-reserve-text {
    max-width: 320px;
    margin: 0 auto 10px; }
  #news .news-footer-reserve .news-footer-reserve-btn a {
    width: 100%;
    font-size: 2.2rem;
    letter-spacing: .05em;
    line-height: 1;
    color: #ffff00;
    display: inline-block;
    padding: 40px 0 40px 45px;
    border-radius: 30px;
    background-color: #5a96d0; }
    @media (max-width: 991.98px) {
      #news .news-footer-reserve .news-footer-reserve-btn a {
        padding: 40px 0 40px 15px; } }
    #news .news-footer-reserve .news-footer-reserve-btn a span {
      position: relative; }
      #news .news-footer-reserve .news-footer-reserve-btn a span:before, #news .news-footer-reserve .news-footer-reserve-btn a span:after {
        position: absolute;
        top: 50%;
        transform: translateY(-50%); }
      #news .news-footer-reserve .news-footer-reserve-btn a span:before {
        content: '';
        width: 55px;
        height: 55px;
        -webkit-border-radius: 50%;
        border-radius: 50%;
        background: #ffff00;
        right: -70px;
        z-index: 1; }
      #news .news-footer-reserve .news-footer-reserve-btn a span:after {
        content: '';
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 14px 0 14px 24px;
        border-color: transparent transparent transparent #5a96d0;
        right: -57px;
        margin-top: 1px;
        z-index: 2; }
#news .news-side .news-side-widget {
  margin-top: 50px; }
  #news .news-side .news-side-widget .news-s-widget {
    background: #e6e6e6;
    padding: 25px 20px; }
    #news .news-side .news-side-widget .news-s-widget .news-s-widget-ttl {
      font-size: 1.4rem;
      font-weight: 900;
      letter-spacing: .05em;
      text-align: center;
      color: #8D0000;
      margin-bottom: 15px; }
    #news .news-side .news-side-widget .news-s-widget ul li {
      margin-bottom: 20px; }
      #news .news-side .news-side-widget .news-s-widget ul li:last-child {
        margin-bottom: 0; }
      #news .news-side .news-side-widget .news-s-widget ul li .widget-news-date {
        font-size: .8rem;
        line-height: 1.5; }
      #news .news-side .news-side-widget .news-s-widget ul li .widget-eyecatch-outer {
        width: 100%;
        height: 100%;
        margin-bottom: 5px; }
        #news .news-side .news-side-widget .news-s-widget ul li .widget-eyecatch-outer .widget-eyecatch {
          width: 100%;
          height: 100%; }
          #news .news-side .news-side-widget .news-s-widget ul li .widget-eyecatch-outer .widget-eyecatch:before {
            padding-top: 35%; }
      #news .news-side .news-side-widget .news-s-widget ul li .widget-news-ttl {
        font-size: .9rem;
        line-height: 1.5; }
#news .news-footer-widget {
  padding-top: 100px; }
  #news .news-footer-widget .news-f-widget {
    margin-bottom: 60px; }
    #news .news-footer-widget .news-f-widget .news-f-widget-ttl {
      font-size: 2.7rem;
      font-weight: 400;
      letter-spacing: 0.05em;
      text-align: center;
      margin-bottom: 30px; }
    #news .news-footer-widget .news-f-widget ul {
      text-align: center;
      max-width: 800px;
      margin: 0 auto; }
      #news .news-footer-widget .news-f-widget ul li {
        font-size: .9rem;
        display: inline-block;
        padding: 0 10px;
        margin-bottom: 20px; }

/* --------------------------------
 * お客様インタビュー
 * -------------------------------- */
#interview .interview-archive .page-mv {
  background-image: url("../../img/interview/interview_top01.png"); }
#interview .interview-archive .interview-archive-wrapper .interview-archive-list {
  max-width: 700px;
  margin: 0 auto; }
  #interview .interview-archive .interview-archive-wrapper .interview-archive-list .interview-archive-item .interview-archive-item-inner {
    text-align: center; }
    #interview .interview-archive .interview-archive-wrapper .interview-archive-list .interview-archive-item .interview-archive-item-inner .eyecatch-outer {
      margin-bottom: 10px; }
      #interview .interview-archive .interview-archive-wrapper .interview-archive-list .interview-archive-item .interview-archive-item-inner .eyecatch-outer .fit-img:before {
        padding-top: 60%; }
    #interview .interview-archive .interview-archive-wrapper .interview-archive-list .interview-archive-item .interview-archive-item-inner .interview-ttl {
      font-family: 'Noto Serif JP', serif;
      font-size: 1.1rem;
      font-weight: 700;
      margin-bottom: 5px; }
      #interview .interview-archive .interview-archive-wrapper .interview-archive-list .interview-archive-item .interview-archive-item-inner .interview-ttl .interview-ttl-num {
        margin-right: 10px; }
    #interview .interview-archive .interview-archive-wrapper .interview-archive-list .interview-archive-item .interview-archive-item-inner .interview-customer {
      font-size: .9rem;
      margin-bottom: 50px; }
      @media (max-width: 991.98px) {
        #interview .interview-archive .interview-archive-wrapper .interview-archive-list .interview-archive-item .interview-archive-item-inner .interview-customer {
          margin-bottom: 40px; } }
    #interview .interview-archive .interview-archive-wrapper .interview-archive-list .interview-archive-item .interview-archive-item-inner .interview-morebtn {
      margin: 0 auto; }
#interview .interview-single .page-mv2 {
  background-image: url("../../img/interview/interview_top02.png"); }
#interview .interview-single .interview-single-contents .interview-single-content {
  margin-bottom: 60px; }
#interview .interview-single .interview-single-contents .interview-top-content {
  margin-bottom: 100px; }
  @media (max-width: 991.98px) {
    #interview .interview-single .interview-single-contents .interview-top-content {
      margin-bottom: 80px; } }
  #interview .interview-single .interview-single-contents .interview-top-content .interview-single-item-inner {
    background-color: #d8d9d3; }
  #interview .interview-single .interview-single-contents .interview-top-content .eyecatch-outer .fit-img:before {
    padding-top: 60%; }
  #interview .interview-single .interview-single-contents .interview-top-content .txt-wrap {
    position: relative; }
    #interview .interview-single .interview-single-contents .interview-top-content .txt-wrap .txt-wrap-inner {
      width: 100%;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      padding: 0 30px; }
      @media (max-width: 991.98px) {
        #interview .interview-single .interview-single-contents .interview-top-content .txt-wrap .txt-wrap-inner {
          padding: 0 20px; } }
      #interview .interview-single .interview-single-contents .interview-top-content .txt-wrap .txt-wrap-inner .interview-ttl {
        font-family: 'Noto Serif JP', serif;
        font-size: 1.1rem;
        font-weight: 700;
        margin-bottom: 5px; }
      #interview .interview-single .interview-single-contents .interview-top-content .txt-wrap .txt-wrap-inner .interview-customer {
        font-size: .9rem; }
#interview .interview-single .interview-single-contents .interview-qa-content .txt-wrap {
  padding: 20px 0 0 20px; }
  @media (max-width: 991.98px) {
    #interview .interview-single .interview-single-contents .interview-qa-content .txt-wrap {
      padding: 10px 0 0 0; } }
  #interview .interview-single .interview-single-contents .interview-qa-content .txt-wrap .txt-wrap-inner .interview-qa {
    margin-bottom: 60px; }
    @media (max-width: 991.98px) {
      #interview .interview-single .interview-single-contents .interview-qa-content .txt-wrap .txt-wrap-inner .interview-qa {
        margin-bottom: 40px; } }
    #interview .interview-single .interview-single-contents .interview-qa-content .txt-wrap .txt-wrap-inner .interview-qa:last-child {
      margin-bottom: 0; }
    #interview .interview-single .interview-single-contents .interview-qa-content .txt-wrap .txt-wrap-inner .interview-qa dt {
      font-family: 'Noto Serif JP', serif;
      font-size: 1.1rem;
      font-weight: 700;
      margin-bottom: 15px; }
      @media (max-width: 991.98px) {
        #interview .interview-single .interview-single-contents .interview-qa-content .txt-wrap .txt-wrap-inner .interview-qa dt {
          margin-bottom: 10px; } }
    #interview .interview-single .interview-single-contents .interview-qa-content .txt-wrap .txt-wrap-inner .interview-qa dd {
      font-size: .9rem; }
#interview .interview-single .interview-single-contents .interview-qa-content .img-wrap {
  padding: 0 0 0 50px; }
  @media (max-width: 991.98px) {
    #interview .interview-single .interview-single-contents .interview-qa-content .img-wrap {
      padding: 0 0 0 30px; } }
  #interview .interview-single .interview-single-contents .interview-qa-content .img-wrap .fit-img:before {
    padding-top: 140%; }
#interview .interview-single .interview-single-contents .interview-qa-content.interview-qa-lastcontent .img-wrap {
  padding: 0 0 0 50px; }
  @media (max-width: 991.98px) {
    #interview .interview-single .interview-single-contents .interview-qa-content.interview-qa-lastcontent .img-wrap {
      padding: 0 0 0 30px; } }
  #interview .interview-single .interview-single-contents .interview-qa-content.interview-qa-lastcontent .img-wrap .fit-img:before {
    padding-top: 65%; }
#interview .interview-single .interview-single-contents .interview-img-content .fit-img:before {
  padding-top: 65%; }
#interview .interview-footer-reserve {
  margin-top: 100px; }
  @media (max-width: 991.98px) {
    #interview .interview-footer-reserve {
      margin-top: 80px; } }
  #interview .interview-footer-reserve .input-reserve-text {
    max-width: 820px;
    margin: 0 auto; }
  #interview .interview-footer-reserve a {
    display: block; }
    #interview .interview-footer-reserve a .interview-footer-reserve-btn {
      width: 100%;
      height: 100%;
      position: relative; }
      #interview .interview-footer-reserve a .interview-footer-reserve-btn:before {
        display: block;
        content: "";
        width: 100%;
        height: calc(100% - 25px) !important;
        position: absolute;
        top: 25px !important;
        left: 0;
        z-index: 10;
        transition: all .3s ease-in-out; }
    #interview .interview-footer-reserve a:hover .interview-footer-reserve-btn:before {
      box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.2); }

/* --------------------------------
 * リフォーム
 * -------------------------------- */
#renovation .page-mv {
  background-image: url("../../img/renovation/renovation_top.png"); }
#renovation .page-toptxt {
  margin-bottom: 100px; }
  @media (max-width: 991.98px) {
    #renovation .page-toptxt {
      margin-bottom: 80px; } }
  #renovation .page-toptxt .page-toptxt-ttl {
    margin-bottom: 20px; }
    #renovation .page-toptxt .page-toptxt-ttl br {
      display: none; }
      @media (max-width: 991.98px) {
        #renovation .page-toptxt .page-toptxt-ttl br {
          display: block; } }
#renovation #renovation1-sec #renovation1-1 {
  margin-bottom: 125px; }
  #renovation #renovation1-sec #renovation1-1 .renovation1-1-l {
    width: 64%;
    padding-right: 30px; }
    @media (max-width: 1199.98px) {
      #renovation #renovation1-sec #renovation1-1 .renovation1-1-l {
        width: 50%; } }
    #renovation #renovation1-sec #renovation1-1 .renovation1-1-l p {
      margin-bottom: 10px; }
      #renovation #renovation1-sec #renovation1-1 .renovation1-1-l p:last-child {
        margin-bottom: 0; }
    #renovation #renovation1-sec #renovation1-1 .renovation1-1-l .renovation1-1-txt {
      font-size: .9rem; }
  #renovation #renovation1-sec #renovation1-1 .renovation1-1-r {
    width: 36%; }
    @media (max-width: 1199.98px) {
      #renovation #renovation1-sec #renovation1-1 .renovation1-1-r {
        width: 50%; } }
#renovation #renovation1-sec #renovation1-2 .renovation1-2-list .renovation1-2-item dt {
  position: relative;
  margin-bottom: 10px; }
  #renovation #renovation1-sec #renovation1-2 .renovation1-2-list .renovation1-2-item dt .renovation1-2-icon {
    width: 90px;
    position: absolute;
    top: -45px;
    left: -10px; }
#renovation #renovation1-sec #renovation1-2 .renovation1-2-list .renovation1-2-item dd {
  text-align: center; }
#renovation #renovation2-sec .renovation2-ttl {
  margin-bottom: 20px; }
#renovation #renovation2-sec #renovation2-1 {
  text-align: center;
  margin-bottom: 60px; }
  @media (max-width: 991.98px) {
    #renovation #renovation2-sec #renovation2-1 {
      margin-bottom: 50px; } }
  #renovation #renovation2-sec #renovation2-1 .renovation2-1-subttl {
    margin-bottom: 10px; }
  #renovation #renovation2-sec #renovation2-1 .renovation2-1-txt {
    font-size: .9rem; }
#renovation #renovation2-sec #renovation2-2 .renovation2-2-list {
  max-width: 990px;
  margin: 0 auto; }
  #renovation #renovation2-sec #renovation2-2 .renovation2-2-list .renovation2-2-item {
    margin-bottom: 30px; }
    #renovation #renovation2-sec #renovation2-2 .renovation2-2-list .renovation2-2-item:nth-child(odd) {
      background-color: #ccd2db; }
    #renovation #renovation2-sec #renovation2-2 .renovation2-2-list .renovation2-2-item:nth-child(even) {
      background-color: #eae3d5; }
    #renovation #renovation2-sec #renovation2-2 .renovation2-2-list .renovation2-2-item .renovation2-2-imgbox {
      width: 430px; }
    #renovation #renovation2-sec #renovation2-2 .renovation2-2-list .renovation2-2-item .renovation2-2-txtbox {
      width: 680px;
      position: relative; }
      #renovation #renovation2-sec #renovation2-2 .renovation2-2-list .renovation2-2-item .renovation2-2-txtbox .renovation2-2-txtbox-inner {
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        padding: 0 60px; }
        @media (max-width: 991.98px) {
          #renovation #renovation2-sec #renovation2-2 .renovation2-2-list .renovation2-2-item .renovation2-2-txtbox .renovation2-2-txtbox-inner {
            padding: 0 18px; } }
        #renovation #renovation2-sec #renovation2-2 .renovation2-2-list .renovation2-2-item .renovation2-2-txtbox .renovation2-2-txtbox-inner .renovation2-2-ttl {
          font-size: 1.2rem;
          font-weight: 900;
          margin-bottom: 30px; }
          @media (max-width: 991.98px) {
            #renovation #renovation2-sec #renovation2-2 .renovation2-2-list .renovation2-2-item .renovation2-2-txtbox .renovation2-2-txtbox-inner .renovation2-2-ttl {
              margin-bottom: 10px; } }
        #renovation #renovation2-sec #renovation2-2 .renovation2-2-list .renovation2-2-item .renovation2-2-txtbox .renovation2-2-txtbox-inner .renovation2-2-txt1 {
          font-size: .9rem;
          margin-bottom: 30px; }
          @media (max-width: 991.98px) {
            #renovation #renovation2-sec #renovation2-2 .renovation2-2-list .renovation2-2-item .renovation2-2-txtbox .renovation2-2-txtbox-inner .renovation2-2-txt1 {
              margin-bottom: 10px; } }
        #renovation #renovation2-sec #renovation2-2 .renovation2-2-list .renovation2-2-item .renovation2-2-txtbox .renovation2-2-txtbox-inner .renovation2-2-txt2 {
          font-size: .8rem; }
#renovation .form-wrapper .renovation-form-ttlt {
  font-size: 2.7rem;
  font-weight: 400;
  letter-spacing: .05em;
  text-align: center;
  margin-bottom: 40px; }

/* --------------------------------
 * 障がい者施設
 * -------------------------------- */
#facility .page-mv {
  background-image: url("../../img/facility/facility_top.png"); }
#facility .page-toptxt .page-toptxt-ttl {
  margin-bottom: 20px; }
#facility .facility-qa {
  margin-bottom: 80px; }
  #facility .facility-qa .facility-qa-list .facility-qa-item .facility-qa-ttl-wrap {
    background-color: #d4dcdd; }
    #facility .facility-qa .facility-qa-list .facility-qa-item .facility-qa-ttl-wrap .facility-qa-ttl {
      font-size: 1.1rem;
      padding: 11px 50px 8px; }
      @media (max-width: 991.98px) {
        #facility .facility-qa .facility-qa-list .facility-qa-item .facility-qa-ttl-wrap .facility-qa-ttl {
          padding: 11px 0 8px; } }
  #facility .facility-qa .facility-qa-list .facility-qa-item .facility-qa-txt {
    font-size: .9rem;
    line-height: 2;
    padding: 10px 50px 20px 50px; }
    @media (max-width: 991.98px) {
      #facility .facility-qa .facility-qa-list .facility-qa-item .facility-qa-txt {
        padding: 10px 0 15px 0; } }
  #facility .facility-qa .facility-qa-list .facility-qa-item .facility-qa-note {
    font-size: .8rem;
    padding: 0 50px 20px 50px; }
    @media (max-width: 991.98px) {
      #facility .facility-qa .facility-qa-list .facility-qa-item .facility-qa-note {
        padding: 0 0 20px 0; } }
#facility #facility1-sec h3 br {
  display: none; }
#facility #facility1-sec .facility1-content {
  margin-bottom: 50px; }
  #facility #facility1-sec .facility1-content .facility1-content-ttl {
    font-family: 'Noto Serif JP', serif;
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 20px; }
#facility #facility1-sec #facility1-1 {
  margin-bottom: 80px; }
  @media (max-width: 991.98px) {
    #facility #facility1-sec #facility1-1 {
      margin-bottom: 60px; } }
  #facility #facility1-sec #facility1-1 .facility1-content-ttl {
    font-family: 'Noto Sans JP', serif;
    font-size: 1.2rem;
    font-weight: 400;
    text-align: center;
    margin-bottom: 0; }
  #facility #facility1-sec #facility1-1 .facility1-content-txt {
    font-size: .8rem;
    text-align: center;
    margin-bottom: 10px; }
  #facility #facility1-sec #facility1-1 .facility1-1-imgwrap {
    max-width: 700px;
    margin: 0 auto; }
    #facility #facility1-sec #facility1-1 .facility1-1-imgwrap .facility1-1-imglist {
      margin-right: -10px;
      margin-left: -10px; }
      #facility #facility1-sec #facility1-1 .facility1-1-imgwrap .facility1-1-imglist li {
        width: 33%;
        padding-right: 10px;
        padding-left: 10px;
        margin-bottom: 20px; }
        #facility #facility1-sec #facility1-1 .facility1-1-imgwrap .facility1-1-imglist li img {
          border: 1px solid #000000; }
#facility #facility1-sec #facility1-2, #facility #facility1-sec #facility1-3 {
  max-width: 1010px;
  margin: 0 auto 50px; }
  #facility #facility1-sec #facility1-2 .facility1-content-l, #facility #facility1-sec #facility1-3 .facility1-content-l {
    width: 60%;
    padding-top: 20px;
    padding-right: 50px; }
    @media (max-width: 991.98px) {
      #facility #facility1-sec #facility1-2 .facility1-content-l, #facility #facility1-sec #facility1-3 .facility1-content-l {
        padding-top: 0;
        padding-right: 30px; } }
    #facility #facility1-sec #facility1-2 .facility1-content-l .facility1-content-txt, #facility #facility1-sec #facility1-3 .facility1-content-l .facility1-content-txt {
      font-size: .9rem;
      line-height: 2; }
  #facility #facility1-sec #facility1-2 .facility1-content-r, #facility #facility1-sec #facility1-3 .facility1-content-r {
    width: 40%; }
    @media (max-width: 991.98px) {
      #facility #facility1-sec #facility1-2 .facility1-content-r, #facility #facility1-sec #facility1-3 .facility1-content-r {
        padding-top: 30px; } }
#facility #facility1-sec #facility1-4 {
  max-width: 1010px;
  margin: 0 auto; }
  #facility #facility1-sec #facility1-4 .facility1-content-l {
    width: 44%; }
    @media (max-width: 991.98px) {
      #facility #facility1-sec #facility1-4 .facility1-content-l {
        width: 48%; } }
  #facility #facility1-sec #facility1-4 .facility1-content-r {
    width: 44%; }
    @media (max-width: 991.98px) {
      #facility #facility1-sec #facility1-4 .facility1-content-r {
        width: 48%; } }
#facility #facility2-sec {
  padding-bottom: 80px; }
  #facility #facility2-sec .facility2-list {
    margin-right: -8px;
    margin-left: -8px; }
    #facility #facility2-sec .facility2-list .facility2-item {
      padding-right: 8px;
      padding-left: 8px;
      margin-bottom: 20px; }
      #facility #facility2-sec .facility2-list .facility2-item .facility2-item-inner {
        padding: 25px 20px 30px;
        border: 1px solid #000000; }
        @media (max-width: 991.98px) {
          #facility #facility2-sec .facility2-list .facility2-item .facility2-item-inner {
            padding: 20px 15px 20px; } }
        #facility #facility2-sec .facility2-list .facility2-item .facility2-item-inner .facility2-item-ttl {
          font-family: 'Noto Serif JP', serif;
          font-size: 1.1rem;
          font-weight: 700;
          text-align: center;
          margin-bottom: 10px; }
        #facility #facility2-sec .facility2-list .facility2-item .facility2-item-inner .facility2-item-txt {
          font-size: .8rem;
          line-height: 1.8;
          height: 9em; }
          @media (max-width: 1199.98px) {
            #facility #facility2-sec .facility2-list .facility2-item .facility2-item-inner .facility2-item-txt {
              height: 12.6em; } }
          @media (max-width: 991.98px) {
            #facility #facility2-sec .facility2-list .facility2-item .facility2-item-inner .facility2-item-txt {
              height: 14.4em; } }
#facility #facility3-sec .facility3-txt {
  text-align: center;
  line-height: 2; }
#facility #facility4-sec h3 br {
  display: none; }

/* --------------------------------
 * お試しマルシェ
 * -------------------------------- */
#marche .page-mv {
  background-image: url("../../img/marche/marche_top.png"); }
#marche .page-toptxt {
  margin-bottom: 120px; }
  @media (max-width: 991.98px) {
    #marche .page-toptxt {
      margin-bottom: 80px; } }
  #marche .page-toptxt .page-toptxt-ttl {
    margin-bottom: 20px; }
    #marche .page-toptxt .page-toptxt-ttl br {
      display: none; }
  #marche .page-toptxt .page-toptxt-imgwrap {
    max-width: 1010px;
    margin: 50px auto 0; }
    @media (max-width: 991.98px) {
      #marche .page-toptxt .page-toptxt-imgwrap {
        margin: 40px auto 0; } }
    #marche .page-toptxt .page-toptxt-imgwrap .page-toptxt-imglist {
      margin-right: -10px;
      margin-left: -10px; }
      #marche .page-toptxt .page-toptxt-imgwrap .page-toptxt-imglist li {
        padding-right: 10px;
        padding-left: 10px; }
#marche #marche1-sec {
  padding-bottom: 50px; }
  #marche #marche1-sec .marche1-inner .marche1-list {
    margin-right: -5px;
    margin-left: -5px; }
    #marche #marche1-sec .marche1-inner .marche1-list .marche1-item {
      width: 20%;
      padding-right: 5px;
      padding-left: 5px;
      margin-bottom: 50px; }
      @media (max-width: 991.98px) {
        #marche #marche1-sec .marche1-inner .marche1-list .marche1-item {
          margin-bottom: 30px; } }
      #marche #marche1-sec .marche1-inner .marche1-list .marche1-item dt {
        margin-bottom: 10px; }
      #marche #marche1-sec .marche1-inner .marche1-list .marche1-item dd {
        padding: 0 20px; }
        @media (max-width: 991.98px) {
          #marche #marche1-sec .marche1-inner .marche1-list .marche1-item dd {
            padding: 0 10px; } }
        #marche #marche1-sec .marche1-inner .marche1-list .marche1-item dd .marche1-item-ttl {
          font-size: .9rem;
          text-align: center;
          margin-bottom: 2px; }
          #marche #marche1-sec .marche1-inner .marche1-list .marche1-item dd .marche1-item-ttl br {
            display: none; }
            @media (max-width: 1199.98px) {
              #marche #marche1-sec .marche1-inner .marche1-list .marche1-item dd .marche1-item-ttl br {
                display: block; } }
        #marche #marche1-sec .marche1-inner .marche1-list .marche1-item dd .natural2-item-txt {
          font-size: .8rem;
          line-height: 1.5; }
#marche #marche2-sec .marche2-inner {
  max-width: 960px;
  margin: 0 auto; }
  #marche #marche2-sec .marche2-inner .marche2-list .marche2-item .marche2-item-ttl {
    font-size: 1.1rem;
    background-color: #d4dcdd;
    padding: 11px 30px 8px; }
    @media (max-width: 991.98px) {
      #marche #marche2-sec .marche2-inner .marche2-list .marche2-item .marche2-item-ttl {
        padding: 11px 20px 8px; } }
  #marche #marche2-sec .marche2-inner .marche2-list .marche2-item .marche2-item-txt, #marche #marche2-sec .marche2-inner .marche2-list .marche2-item .marche2-item-ul {
    font-size: .9rem;
    line-height: 2;
    padding: 10px 30px 20px; }
    @media (max-width: 991.98px) {
      #marche #marche2-sec .marche2-inner .marche2-list .marche2-item .marche2-item-txt, #marche #marche2-sec .marche2-inner .marche2-list .marche2-item .marche2-item-ul {
        padding: 10px 20px 20px; } }

/* --------------------------------
 * スタッフ紹介
 * -------------------------------- */
#staff .page-mv {
  background-image: url("../../img/staff/staff_top.png"); }
#staff .page-container {
  padding-bottom: 0; }
  #staff .page-container .staff-archive .staff-archive-inner {
    max-width: 900px;
    margin: 0 auto; }
    #staff .page-container .staff-archive .staff-archive-inner .staff-sec {
      margin-bottom: 50px; }
      #staff .page-container .staff-archive .staff-archive-inner .staff-sec:last-child {
        margin-bottom: 70px; }
      #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list {
        margin-right: -10px;
        margin-left: -10px; }
        #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff {
          padding-right: 10px;
          padding-left: 10px;
          margin-bottom: 30px; }
          #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .fit-img:before {
            padding-top: 100%; }
          #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .staff-main {
            text-align: center; }
            #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .staff-main .staff-img {
              display: block;
              margin-bottom: 10px;
              transition: all .3s ease-in-out; }
              #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .staff-main .staff-img:hover {
                box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.2); }
            #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .staff-main .staff-position {
              font-size: .8rem;
              line-height: 1.2; }
              #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .staff-main .staff-position br {
                display: none; }
              @media (max-width: 991.98px) {
                #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .staff-main .staff-position {
                  font-size: .7rem; } }
            #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .staff-main .staff-name {
              font-size: .9rem; }
          #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .modal {
            display: none;
            height: 100vh;
            position: fixed;
            top: 0;
            width: 100%; }
            #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .modal .modal-bg {
              background: rgba(0, 0, 0, 0.7);
              height: 100vh;
              position: absolute;
              width: 100%; }
            #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .modal .s-modal-content {
              width: 620px;
              padding: 40px 30px 30px;
              position: absolute;
              top: 50%;
              left: 50%;
              transform: translate(-50%, -50%);
              background-color: #eee5d7; }
              #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .modal .s-modal-content .s-modal-content-inner {
                position: relative; }
                #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .modal .s-modal-content .s-modal-content-inner .s-modal-body {
                  padding: 0; }
                  #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .modal .s-modal-content .s-modal-content-inner .s-modal-body .staff-info {
                    position: relative; }
                    #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .modal .s-modal-content .s-modal-content-inner .s-modal-body .staff-info > ul {
                      position: absolute;
                      top: 50%;
                      left: 0;
                      transform: translateY(-50%); }
                  #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .modal .s-modal-content .s-modal-content-inner .s-modal-body .staff-position {
                    font-size: 1.1rem;
                    margin-bottom: 8px; }
                  #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .modal .s-modal-content .s-modal-content-inner .s-modal-body .staff-name {
                    font-size: 1.7rem;
                    margin-bottom: 15px;
                    letter-spacing: .2em; }
                  #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .modal .s-modal-content .s-modal-content-inner .s-modal-body .staff-hobby dt, #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .modal .s-modal-content .s-modal-content-inner .s-modal-body .staff-hobby dd {
                    font-size: 1.1rem;
                    display: inline-block;
                    vertical-align: top; }
                  #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .modal .s-modal-content .s-modal-content-inner .s-modal-body .staff-hobby dt {
                    font-weight: 400 !important; }
                  #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .modal .s-modal-content .s-modal-content-inner .s-modal-body .staff-msg {
                    font-size: .9rem;
                    line-height: 1.6;
                    margin-top: 15px; }
                #staff .page-container .staff-archive .staff-archive-inner .staff-sec .staff-list .staff .modal .s-modal-content .s-modal-content-inner .js-modal-close {
                  font-size: 40px;
                  position: absolute;
                  top: -30px;
                  right: -20px; }

/* --------------------------------
 * 採用情報
 * -------------------------------- */
#recruit .page-mv {
  background-image: url("../../img/recruit/recruit_top.png"); }
#recruit .page-container {
  background-color: #dbe3e2;
  padding-bottom: 0; }
#recruit .recruit-link {
  padding-bottom: 30px; }
  #recruit .recruit-link .recruit-link-inner {
    max-width: 600px;
    margin: 0 auto; }
    #recruit .recruit-link .recruit-link-inner dl dt {
      margin-bottom: 10px; }
      #recruit .recruit-link .recruit-link-inner dl dt img {
        border-radius: 50%;
        transition: all .3s ease-in-out;
        box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.1); }
        #recruit .recruit-link .recruit-link-inner dl dt img:hover {
          box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.2); }
    #recruit .recruit-link .recruit-link-inner dl dd {
      font-size: 1.1rem;
      text-align: center; }
#recruit #recruit1-sec {
  background-color: white;
  padding-top: 80px; }
  @media (max-width: 991.98px) {
    #recruit #recruit1-sec {
      padding-top: 60px; } }
  #recruit #recruit1-sec .recruit1-content {
    margin-bottom: 60px; }
    #recruit #recruit1-sec .recruit1-content:last-child {
      margin-bottom: 0; }
    #recruit #recruit1-sec .recruit1-content .recruit1-content-r .recruit1-content-r-inner {
      padding-top: 30px; }
      @media (max-width: 1199.98px) {
        #recruit #recruit1-sec .recruit1-content .recruit1-content-r .recruit1-content-r-inner {
          padding-top: 0; } }
      #recruit #recruit1-sec .recruit1-content .recruit1-content-r .recruit1-content-r-inner .recruit1-content-ttl {
        font-size: 1.1rem;
        margin-bottom: 10px; }
      #recruit #recruit1-sec .recruit1-content .recruit1-content-r .recruit1-content-r-inner .recruit1-content-txtbox {
        font-size: .9rem; }
        #recruit #recruit1-sec .recruit1-content .recruit1-content-r .recruit1-content-r-inner .recruit1-content-txtbox p {
          margin-bottom: 20px; }
          @media (max-width: 1199.98px) {
            #recruit #recruit1-sec .recruit1-content .recruit1-content-r .recruit1-content-r-inner .recruit1-content-txtbox p {
              margin-bottom: 10px; } }
          #recruit #recruit1-sec .recruit1-content .recruit1-content-r .recruit1-content-r-inner .recruit1-content-txtbox p:last-child {
            margin-bottom: 0; }
#recruit #recruit2-sec {
  background-color: white; }
  #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item {
    margin-bottom: 5px; }
    #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .facility-q, #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .facility-a {
      letter-spacing: -.4em; }
      #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .facility-q p, #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .facility-a p {
        display: inline-block;
        vertical-align: top;
        letter-spacing: normal; }
      #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .facility-q .qa-icon, #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .facility-a .qa-icon {
        width: 38px;
        border-radius: 50%;
        font-size: 24px;
        font-weight: 400;
        text-align: center;
        line-height: 38px;
        color: white;
        margin-right: 10px; }
      #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .facility-q .qa-txt, #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .facility-a .qa-txt {
        width: calc(100% - 48px); }
    #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .recruit-q-wrap {
      background-color: #dedede; }
      #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .recruit-q-wrap .facility-q {
        font-size: 1.1rem;
        padding: 11px 50px 8px;
        position: relative; }
        @media (max-width: 991.98px) {
          #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .recruit-q-wrap .facility-q {
            padding: 11px 0 8px; } }
        #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .recruit-q-wrap .facility-q .qa-icon {
          background-color: #000000; }
        #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .recruit-q-wrap .facility-q .qa-txt {
          margin-top: 8px; }
        #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .recruit-q-wrap .facility-q:after {
          content: "";
          position: absolute;
          right: 25px;
          top: 20px;
          transition: all 0.1s ease-in-out;
          display: block;
          width: 16px;
          height: 16px;
          border-top: solid 2px #000000;
          border-right: solid 2px #000000;
          -webkit-transform: rotate(135deg);
          transform: rotate(135deg); }
      #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .recruit-q-wrap.open .facility-q:after {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        top: 28px; }
    #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .recruit-a-wrap {
      display: none; }
      #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .recruit-a-wrap .facility-a {
        font-size: .9rem;
        line-height: 2;
        padding: 15px 50px 20px 50px; }
        @media (max-width: 991.98px) {
          #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .recruit-a-wrap .facility-a {
            padding: 15px 0 20px; } }
        #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .recruit-a-wrap .facility-a .qa-icon {
          background-color: #f36200; }
        #recruit #recruit2-sec .recruit-qa-list .recruit-qa-item .recruit-a-wrap .facility-a .qa-txt {
          margin-top: 8px; }
  #recruit #recruit2-sec .recruit-link2 {
    margin-top: 60px; }
    #recruit #recruit2-sec .recruit-link2 .recruit-link2-inner {
      max-width: 1010px;
      margin: 0 auto; }
      @media (max-width: 1199.98px) {
        #recruit #recruit2-sec .recruit-link2 .recruit-link2-inner .recruit-link2-btn:first-child {
          margin-right: 10px; } }
      @media (max-width: 1199.98px) {
        #recruit #recruit2-sec .recruit-link2 .recruit-link2-inner .recruit-link2-btn:last-child {
          margin-left: 10px; } }

/* --------------------------------
* 新卒採用情報,中途採用情報
* -------------------------------- */
#recruitNew .page-container, #recruitMid .page-container {
  padding-top: 100px; }
#recruitNew .ttl1, #recruitMid .ttl1 {
  margin-bottom: 20px; }
#recruitNew #recruitlist-sec .recruitlist-inner, #recruitMid #recruitlist-sec .recruitlist-inner {
  max-width: 900px;
  margin: 0 auto; }
  #recruitNew #recruitlist-sec .recruitlist-inner .table1 .th1, #recruitNew #recruitlist-sec .recruitlist-inner .table1 .tb1, #recruitMid #recruitlist-sec .recruitlist-inner .table1 .th1, #recruitMid #recruitlist-sec .recruitlist-inner .table1 .tb1 {
    width: 52%; }
  #recruitNew #recruitlist-sec .recruitlist-inner .table1 .th2, #recruitNew #recruitlist-sec .recruitlist-inner .table1 .tb2, #recruitMid #recruitlist-sec .recruitlist-inner .table1 .th2, #recruitMid #recruitlist-sec .recruitlist-inner .table1 .tb2 {
    width: 12%; }
  #recruitNew #recruitlist-sec .recruitlist-inner .table1 .th3, #recruitNew #recruitlist-sec .recruitlist-inner .table1 .tb3, #recruitMid #recruitlist-sec .recruitlist-inner .table1 .th3, #recruitMid #recruitlist-sec .recruitlist-inner .table1 .tb3 {
    width: 36%; }
  #recruitNew #recruitlist-sec .recruitlist-inner .table1 .tb1, #recruitMid #recruitlist-sec .recruitlist-inner .table1 .tb1 {
    font-weight: 400; }
#recruitNew #guideline1-sec .guideline1-inner, #recruitMid #guideline1-sec .guideline1-inner {
  max-width: 900px;
  margin: 0 auto; }
  #recruitNew #guideline1-sec .guideline1-inner .table1 th, #recruitMid #guideline1-sec .guideline1-inner .table1 th {
    width: 25%; }
  #recruitNew #guideline1-sec .guideline1-inner .table1 td, #recruitMid #guideline1-sec .guideline1-inner .table1 td {
    width: 75%;
    font-size: .9rem; }
    #recruitNew #guideline1-sec .guideline1-inner .table1 td p, #recruitMid #guideline1-sec .guideline1-inner .table1 td p {
      margin-bottom: 10px; }
      #recruitNew #guideline1-sec .guideline1-inner .table1 td p:last-child, #recruitMid #guideline1-sec .guideline1-inner .table1 td p:last-child {
        margin-bottom: 0; }
  #recruitNew #guideline1-sec .guideline1-inner .guideline-table1, #recruitMid #guideline1-sec .guideline1-inner .guideline-table1 {
    margin-bottom: 60px; }
#recruitNew #recruitinfo-sec .recruitinfo-inner, #recruitMid #recruitinfo-sec .recruitinfo-inner {
  max-width: 900px;
  margin: 0 auto;
  border: 2px solid #000000;
  padding: 50px 0 30px; }
  #recruitNew #recruitinfo-sec .recruitinfo-inner .recruitinfo-list, #recruitMid #recruitinfo-sec .recruitinfo-inner .recruitinfo-list {
    text-align: center; }
    #recruitNew #recruitinfo-sec .recruitinfo-inner .recruitinfo-list li, #recruitMid #recruitinfo-sec .recruitinfo-inner .recruitinfo-list li {
      margin-bottom: 10px; }
      #recruitNew #recruitinfo-sec .recruitinfo-inner .recruitinfo-list li a, #recruitMid #recruitinfo-sec .recruitinfo-inner .recruitinfo-list li a {
        color: #000000; }
    #recruitNew #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .email, #recruitMid #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .email {
      font-size: 1.1rem; }
    #recruitNew #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .link1, #recruitMid #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .link1 {
      max-width: 380px;
      margin: 0 auto 10px; }
      #recruitNew #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .link1 a, #recruitMid #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .link1 a {
        transition: all .3s ease-in-out; }
        #recruitNew #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .link1 a:hover, #recruitMid #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .link1 a:hover {
          opacity: .8; }
    #recruitNew #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .link2, #recruitMid #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .link2 {
      max-width: 330px;
      margin: 0 auto 10px; }
      #recruitNew #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .link2 a, #recruitMid #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .link2 a {
        transition: all .3s ease-in-out; }
        #recruitNew #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .link2 a:hover, #recruitMid #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .link2 a:hover {
          opacity: .8; }
    #recruitNew #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .tel, #recruitNew #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .tanto, #recruitNew #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .teikyu, #recruitMid #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .tel, #recruitMid #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .tanto, #recruitMid #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .teikyu {
      font-size: .9rem; }
    #recruitNew #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .tel, #recruitMid #recruitinfo-sec .recruitinfo-inner .recruitinfo-list .tel {
      margin-bottom: 0; }
#recruitNew .recruit-linktop, #recruitMid .recruit-linktop {
  margin-top: 60px; }
  #recruitNew .recruit-linktop .recruit-linktop-btn, #recruitMid .recruit-linktop .recruit-linktop-btn {
    margin: 0 auto; }

/* --------------------------------
 * 会社概要
 * -------------------------------- */
#company .page-mv {
  background-image: url("../../img/company/company_top.png"); }
#company .page-ttl2 .en {
  letter-spacing: .1em; }
#company #company1-sec {
  background-color: #ece9e4;
  padding-top: 60px;
  padding-bottom: 60px;
  margin-bottom: 100px; }
  @media (max-width: 991.98px) {
    #company #company1-sec {
      margin-bottom: 80px; } }
  #company #company1-sec .company1-inner {
    max-width: 820px;
    margin: 0 auto; }
    #company #company1-sec .company1-inner .company-table-wrap {
      margin-bottom: 50px; }
      @media (max-width: 991.98px) {
        #company #company1-sec .company1-inner .company-table-wrap {
          margin-bottom: 40px; } }
      #company #company1-sec .company1-inner .company-table-wrap:last-child {
        margin-bottom: 0; }
      #company #company1-sec .company1-inner .company-table-wrap .company-table {
        width: 100%; }
        #company #company1-sec .company1-inner .company-table-wrap .company-table tr {
          border-bottom: 1px solid #000000; }
        #company #company1-sec .company1-inner .company-table-wrap .company-table th, #company #company1-sec .company1-inner .company-table-wrap .company-table td {
          font-size: .9rem;
          font-weight: 400;
          vertical-align: middle; }
      #company #company1-sec .company1-inner .company-table-wrap .company-table1 {
        border: 1px solid #000000;
        margin-top: 5px; }
        #company #company1-sec .company1-inner .company-table-wrap .company-table1 th, #company #company1-sec .company1-inner .company-table-wrap .company-table1 td {
          padding: 13px 30px 8px; }
        #company #company1-sec .company1-inner .company-table-wrap .company-table1 th {
          width: 30%;
          border-right: 1px solid #000000;
          text-align: center; }
        #company #company1-sec .company1-inner .company-table-wrap .company-table1 td {
          width: 70%; }
      #company #company1-sec .company1-inner .company-table-wrap .company-table2 th, #company #company1-sec .company1-inner .company-table-wrap .company-table2 td {
        padding: 13px 10px 8px; }
      #company #company1-sec .company1-inner .company-table-wrap .company-table2 th {
        width: 20%; }
      #company #company1-sec .company1-inner .company-table-wrap .company-table2 td {
        width: 80%; }
      #company #company1-sec .company1-inner .company-table-wrap .company-table2 .zeh {
        max-width: 530px;
        margin: 10px 0; }
#company #company2-sec .am-ttl, #company #company3-sec .am-ttl {
  text-align: center;
  margin-bottom: 20px; }
#company #company3-sec {
  padding-bottom: 0; }

/* --------------------------------
 * Diary
 * -------------------------------- */
#diary .page-mv {
  height: 210px;
  background-image: url("../../img/diary/diary_top.png"); }
#diary .diary-archive .pager {
  margin-top: 50px; }
#diary .diary-archive .diary-archive-list .diary-archive-item {
  margin-bottom: 50px; }
  #diary .diary-archive .diary-archive-list .diary-archive-item .diary-archive-item-inner .diary-archive-item-top {
    font-size: .9rem; }
    #diary .diary-archive .diary-archive-list .diary-archive-item .diary-archive-item-inner .diary-archive-item-top .diary-new {
      display: inline-block;
      margin-right: 5px;
      color: #8D0000; }
    #diary .diary-archive .diary-archive-list .diary-archive-item .diary-archive-item-inner .diary-archive-item-top .diary-date {
      display: inline-block; }
  #diary .diary-archive .diary-archive-list .diary-archive-item .diary-archive-item-inner .eyecatch-outer {
    margin-bottom: 10px; }
  #diary .diary-archive .diary-archive-list .diary-archive-item .diary-archive-item-inner .fit-img:before {
    padding-top: 75%; }
  #diary .diary-archive .diary-archive-list .diary-archive-item .diary-archive-item-inner .diary-ttl {
    line-height: 160%; }
#diary .diary-single .diary-single-inner {
  margin-right: -25px;
  margin-left: -25px;
  position: relative; }
#diary .diary-single .diary-single-main, #diary .diary-single .diary-side {
  padding-right: 25px;
  padding-left: 25px; }
#diary .diary-single .diary-single-main {
  margin-top: 30px; }
  #diary .diary-single .diary-single-main .eyecatch {
    margin-bottom: 60px; }
  #diary .diary-single .diary-single-main .diary-single-ttl {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: .05em;
    margin: 0 0 50px; }
  #diary .diary-single .diary-single-main .diary-single-content {
    margin-top: 60px; }
    #diary .diary-single .diary-single-main .diary-single-content h2 {
      font-size: 1.5rem;
      font-weight: 700;
      letter-spacing: .05em;
      margin: 0 0 50px;
      background: #f6f6f6;
      padding: 15px 20px 10px;
      border-left: solid 5px #888;
      border-bottom: none !important; }
    #diary .diary-single .diary-single-main .diary-single-content h3 {
      font-size: 1.1rem;
      font-weight: 700;
      border-bottom: solid 1px #888;
      border-top: solid 1px #888;
      padding: 13px 0 10px;
      margin: 20px 0 !important; }
    #diary .diary-single .diary-single-main .diary-single-content img {
      width: auto;
      max-width: 100%; }
    #diary .diary-single .diary-single-main .diary-single-content .quote-link_entry {
      display: block;
      border: 1px solid #eee;
      padding: 20px; }
      #diary .diary-single .diary-single-main .diary-single-content .quote-link_entry span {
        display: block;
        line-height: 1.5; }
      #diary .diary-single .diary-single-main .diary-single-content .quote-link_entry .link-thumbnail {
        display: flex !important;
        flex-direction: row; }
        #diary .diary-single .diary-single-main .diary-single-content .quote-link_entry .link-thumbnail .quote-link-img {
          margin-right: 30px; }
          #diary .diary-single .diary-single-main .diary-single-content .quote-link_entry .link-thumbnail .quote-link-img .quote-link-img-item {
            background: url("../../img/common/logo02.svg") no-repeat;
            background-size: cover;
            height: 140px;
            overflow: hidden;
            position: relative;
            width: 140px; }
        #diary .diary-single .diary-single-main .diary-single-content .quote-link_entry .link-thumbnail .cont .quote-link_title {
          font-weight: 700; }
        #diary .diary-single .diary-single-main .diary-single-content .quote-link_entry .link-thumbnail .cont .quote-link_desp {
          font-size: .9rem;
          margin: 10px 0; }
        #diary .diary-single .diary-single-main .diary-single-content .quote-link_entry .link-thumbnail .cont .quote-link_site {
          font-size: .9rem; }
  #diary .diary-single .diary-single-main .diary-share {
    position: absolute;
    top: -80px;
    right: -295px;
    z-index: 10; }
    #diary .diary-single .diary-single-main .diary-share .diary-share-list {
      width: 270px; }
      #diary .diary-single .diary-single-main .diary-share .diary-share-list .nsi-twitter iframe {
        position: relative !important;
        top: 5px; }
#diary .paging {
  max-width: 520px;
  margin: 100px 0 0; }
  #diary .paging .paging-item {
    width: calc(50% - 10px); }
    #diary .paging .paging-item a {
      font-weight: 500;
      color: #8D0000; }
    #diary .paging .paging-item .prev-thumbnail a, #diary .paging .paging-item .next-thumbnail a {
      display: block;
      position: relative; }
      #diary .paging .paging-item .prev-thumbnail a:before, #diary .paging .paging-item .next-thumbnail a:before {
        content: "";
        display: block;
        padding-top: 75%; }
      #diary .paging .paging-item .prev-thumbnail a img, #diary .paging .paging-item .next-thumbnail a img {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        object-fit: cover;
        font-family: 'object-fit: cover;';
        /*IE対策*/ }
#diary .diary-side .diary-side-widget {
  margin-top: 50px; }
  #diary .diary-side .diary-side-widget .diary-s-widget {
    background: #e6e6e6;
    padding: 25px 20px; }
    #diary .diary-side .diary-side-widget .diary-s-widget .diary-s-widget-ttl {
      font-size: 1.4rem;
      font-weight: 900;
      letter-spacing: .05em;
      text-align: center;
      color: #8D0000;
      margin-bottom: 15px; }
    #diary .diary-side .diary-side-widget .diary-s-widget ul li {
      margin-bottom: 20px; }
      #diary .diary-side .diary-side-widget .diary-s-widget ul li:last-child {
        margin-bottom: 0; }
      #diary .diary-side .diary-side-widget .diary-s-widget ul li .widget-diary-date {
        font-size: .8rem;
        line-height: 1.5; }
      #diary .diary-side .diary-side-widget .diary-s-widget ul li .widget-eyecatch-outer {
        width: 100%;
        height: 100%;
        margin-bottom: 5px; }
        #diary .diary-side .diary-side-widget .diary-s-widget ul li .widget-eyecatch-outer .widget-eyecatch {
          width: 100%;
          height: 100%; }
          #diary .diary-side .diary-side-widget .diary-s-widget ul li .widget-eyecatch-outer .widget-eyecatch:before {
            padding-top: 75%; }
      #diary .diary-side .diary-side-widget .diary-s-widget ul li .wpp-post-title {
        font-size: .9rem;
        line-height: 1.5; }
#diary .diary-footer-widget {
  padding-top: 100px; }
  #diary .diary-footer-widget .diary-f-widget .diary-f-widget-ttl {
    font-size: 2.7rem;
    font-weight: 400;
    letter-spacing: 0.05em;
    text-align: center;
    margin-bottom: 30px; }
  #diary .diary-footer-widget .diary-f-widget ul {
    text-align: center;
    max-width: 800px;
    margin: 0 auto; }
    #diary .diary-footer-widget .diary-f-widget ul li {
      font-size: .9rem;
      display: inline-block;
      padding: 0 10px;
      margin-bottom: 20px; }

/* --------------------------------
 * 共通フォーム（リフォーム、資料請求・お問い合わせ）
 * -------------------------------- */
.form-wrapper {
  /* ====== 確認画面 ====== */
  /* ====== 完了画面 ====== */ }
  .form-wrapper select, .form-wrapper input[type="text"], .form-wrapper input[type="email"], .form-wrapper input[type="tel"], .form-wrapper input[type="submit"], .form-wrapper input[type="button"], .form-wrapper textarea, .form-wrapper button {
    /*リセット*/
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
  .form-wrapper select::-ms-expand {
    /*IE矢印消す*/
    display: none; }
  .form-wrapper select:-webkit-autofill, .form-wrapper input:-webkit-autofill {
    /*choromeの青背景をなくす*/
    -webkit-box-shadow: 0 0 0 1000px #f7f7f7 inset; }
  .form-wrapper textarea {
    /*下部の隙間用*/
    display: block; }
  .form-wrapper select {
    width: 100%;
    padding-right: 1em;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis; }
  .form-wrapper select, .form-wrapper input[type="text"], .form-wrapper input[type="email"], .form-wrapper input[type="tel"], .form-wrapper textarea {
    width: 100%;
    text-align: left;
    font-weight: normal;
    padding: 12px 20px 10px !important;
    border: solid 1px #ccc;
    background-color: #f7f7f7; }
  .form-wrapper select:focus, .form-wrapper input[type="text"]:focus, .form-wrapper input[type="email"]:focus, .form-wrapper input[type="tel"]:focus, .form-wrapper textarea:focus {
    border: solid 1px #ccc;
    background: #fff;
    outline: none; }
  .form-wrapper textarea {
    min-height: 200px;
    max-height: 300px;
    resize: vertical; }
  .form-wrapper .select-outer {
    position: relative; }
    .form-wrapper .select-outer .select-triangle {
      width: 0;
      height: 0;
      padding: 0;
      content: '';
      border-style: solid;
      border-width: 12px 8px 0 8px;
      border-color: #0059a3 transparent transparent transparent;
      pointer-events: none;
      position: absolute;
      top: 20px;
      right: 20px;
      z-index: 2; }
  .form-wrapper .select-top-area .select-label {
    /*中央寄せのため*/
    width: 100%;
    text-align: center;
    color: #0059a3;
    padding: 12px 20px 10px;
    border: solid 1px #ccc;
    background: #f7f7f7;
    position: relative;
    z-index: 1; }
  .form-wrapper .select-top-area .wpcf7-form-control-wrap {
    position: static; }
  .form-wrapper .select-top-area select {
    width: 100%;
    padding: 12px 20px 10px;
    border: solid 1px #ccc;
    background: #f7f7f7;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    opacity: 0;
    z-index: 2; }
  .form-wrapper .select-top-area select:focus {
    z-index: -1;
    opacity: 1; }
  .form-wrapper .zip-outer {
    position: relative; }
  .form-wrapper .zip {
    width: 300px !important; }
  .form-wrapper .add-btn1 {
    width: 240px;
    display: inline-block;
    padding: 13px 0 11px;
    color: #fff;
    background-color: #0059a3;
    transition: all .2s ease-in-out;
    position: absolute;
    top: 0;
    left: 320px; }
    .form-wrapper .add-btn1:hover {
      background-color: #4878a3; }
  .form-wrapper .form-content .form-table {
    width: 100%; }
    .form-wrapper .form-content .form-table tr {
      display: block;
      margin-bottom: 20px; }
      .form-wrapper .form-content .form-table tr:last-child {
        margin-bottom: 0; }
      .form-wrapper .form-content .form-table tr th, .form-wrapper .form-content .form-table tr td {
        display: block; }
      .form-wrapper .form-content .form-table tr th {
        margin-bottom: 5px; }
      .form-wrapper .form-content .form-table tr .required {
        font-size: .9rem;
        letter-spacing: .5em;
        line-height: 1;
        text-align: center;
        color: white;
        display: inline-block;
        background-color: #cb3c39;
        padding: 6px 1px 3px 8px;
        margin-left: 20px; }
    .form-wrapper .form-content .form-table .form-table-toptr th {
      font-size: 2.7rem !important;
      font-weight: 400 !important;
      letter-spacing: 0.05em !important;
      text-align: center !important;
      margin-bottom: 40px !important; }
    .form-wrapper .form-content .form-table .form-table-toptr td {
      max-width: 560px !important;
      margin: 0 auto !important; }
  .form-wrapper .form-btn-content {
    margin-top: 60px;
    font-size: 0;
    position: relative; }
    .form-wrapper .form-btn-content input[type="submit"], .form-wrapper .form-btn-content input[type="button"] {
      display: inline-block;
      font-size: 2.4rem;
      font-weight: 400;
      letter-spacing: .05em;
      padding: 35px 0 30px;
      color: #fff;
      background-color: #a6a6a6;
      transition: all .2s ease-in-out; }
      .form-wrapper .form-btn-content input[type="submit"]:hover, .form-wrapper .form-btn-content input[type="button"]:hover {
        background-color: #4878a3; }
    .form-wrapper .form-btn-content .wpcf7-confirm {
      width: 100%; }
    .form-wrapper .form-btn-content .wpcf7-submit {
      width: calc(50% - 10px);
      margin-right: 10px !important; }
    .form-wrapper .form-btn-content .wpcf7-back {
      width: calc(50% - 10px);
      margin-left: 10px !important; }
    .form-wrapper .form-btn-content .ajax-loader {
      position: absolute;
      left: 0;
      bottom: -16px;
      margin: 0 auto;
      z-index: 2; }
  .form-wrapper div.wpcf7-validation-errors {
    /*エラーメッセージ*/
    border: 1px solid #ff9600;
    margin: 2em 0 1em;
    padding: 0.2em 1em 0.1em; }
  .form-wrapper div.wpcf7-mail-sent-ok {
    /*完了メッセージ*/
    border: 1px solid #ff9600;
    margin: 2em 0 1em;
    padding: 0.2em 1em 0.1em; }
  .form-wrapper .confirm-toptext {
    line-height: 2.4;
    text-align: center;
    margin-bottom: 60px; }
  .form-wrapper .border-bm {
    padding-bottom: 15px;
    border-bottom: 1px solid #ccc; }
  .form-wrapper .wpcf7c-conf:-webkit-autofill {
    /*choromeの青背景をなくす*/
    -webkit-box-shadow: 0 0 0 1000px white inset; }
  .form-wrapper .wpcf7c-conf, .form-wrapper .wpcf7c-conf:focus {
    box-shadow: none;
    background-color: white !important;
    border: none !important;
    padding-bottom: 15px;
    border-bottom: 1px solid #ccc; }
  .form-wrapper .wpcf7c-conf::placeholder {
    color: transparent; }
  .form-wrapper .confirm .complete-text {
    line-height: 2.4;
    text-align: center;
    margin-bottom: 30px; }
  .form-wrapper .confirm .complete-text1 {
    font-size: 2.7rem;
    font-weight: 400;
    letter-spacing: .05em;
    text-align: center;
    margin-bottom: 20px; }
  .form-wrapper .confirm .complete-text4 {
    margin-bottom: 0; }

#contact .form-wrapper, #reserve .form-wrapper, #celeste .form-wrapper {
  padding-top: 150px;
  position: relative; }
  #contact .form-wrapper:before, #reserve .form-wrapper:before, #celeste .form-wrapper:before {
    width: 0;
    height: 0;
    margin: 0 auto;
    border-style: solid;
    border-width: 0 55vw 280px 55vw;
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1; }
  #contact .form-wrapper:after, #reserve .form-wrapper:after, #celeste .form-wrapper:after {
    content: "";
    width: 110%;
    height: calc(100% - 280px);
    position: absolute;
    top: 279px;
    left: 0;
    z-index: -2; }

/* --------------------------------
 * 来場予約
 * -------------------------------- */
#reserve .page-mv {
  background-image: url("../../img/reserve/reserve_top.png"); }
  #reserve .page-mv .page-mv-inner {
    width: 100%;
    height: 100%;
    position: relative; }
  #reserve .page-mv .input-link-btn {
    width: 100px;
    position: absolute;
    left: -100px;
    bottom: 20px; }
    @media (max-width: 1400px) {
      #reserve .page-mv .input-link-btn {
        left: -0px; } }
#reserve .page-container {
  padding-bottom: 0; }
#reserve #reserve1-sec {
  padding-bottom: 0; }
  #reserve #reserve1-sec #reserve1-1 {
    height: 500px;
    background: url("../../img/reserve/reserve01.png") center center no-repeat;
    background-size: cover;
    padding-bottom: 0;
    margin-bottom: 60px; }
    @media (max-width: 1199.98px) {
      #reserve #reserve1-sec #reserve1-1 {
        background: url("../../img/reserve/reserve01.png") right -300px center no-repeat; } }
    @media (max-width: 991.98px) {
      #reserve #reserve1-sec #reserve1-1 {
        background: url("../../img/reserve/reserve01.png") right -400px center no-repeat; } }
    #reserve #reserve1-sec #reserve1-1 .reserve1-1-inner {
      padding-top: 80px; }
      #reserve #reserve1-sec #reserve1-1 .reserve1-1-inner .reserve1-1-ttl {
        font-size: 2rem;
        margin-bottom: 40px; }
      #reserve #reserve1-sec #reserve1-1 .reserve1-1-inner .reserve1-1-list {
        padding-left: 20px; }
        #reserve #reserve1-sec #reserve1-1 .reserve1-1-inner .reserve1-1-list li {
          font-size: 1.3rem;
          margin-bottom: 30px;
          vertical-align: middle;
          position: relative;
          padding-left: 30px; }
          #reserve #reserve1-sec #reserve1-1 .reserve1-1-inner .reserve1-1-list li:before {
            width: 20px;
            height: 17px;
            content: "";
            background: url("../../img/reserve/check_icon.svg") center center no-repeat;
            background-size: cover;
            display: inline-block;
            vertical-align: middle;
            position: absolute;
            left: 0;
            top: 3px;
            bottom: 0; }
  #reserve #reserve1-sec #reserve1-2 {
    background-color: #e8e1d3;
    padding-top: 115px;
    padding-bottom: 100px;
    position: relative; }
    @media (max-width: 991.98px) {
      #reserve #reserve1-sec #reserve1-2 {
        padding-top: 85px;
        padding-bottom: 80px; } }
    #reserve #reserve1-sec #reserve1-2:before {
      width: 0;
      height: 0;
      content: "";
      border-style: solid;
      border-width: 35px 32.5px 0 32.5px;
      border-color: white transparent transparent transparent;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      margin: 0 auto; }
    #reserve #reserve1-sec #reserve1-2 .reserve1-2-list .reserve1-2-item dt {
      margin-bottom: 10px; }
    #reserve #reserve1-sec #reserve1-2 .reserve1-2-list .reserve1-2-item dd {
      text-align: center; }
#reserve #reserve2-sec {
  background-color: #e8e1d3; }
  #reserve #reserve2-sec .reserve2-ttl {
    font-size: 2.7rem;
    font-weight: 400;
    letter-spacing: .05em;
    text-align: center;
    margin-bottom: 75px; }
  #reserve #reserve2-sec .reserve2-list .reserve2-item .reserve2-item-inner {
    height: 276px;
    border: 1px solid #000000;
    padding: 60px 0 30px;
    position: relative; }
    @media (max-width: 1199.98px) {
      #reserve #reserve2-sec .reserve2-list .reserve2-item .reserve2-item-inner {
        height: 300px; } }
  #reserve #reserve2-sec .reserve2-list .reserve2-item .merit-num-outer {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    border: 1px solid #000000;
    background-color: #e8e1d3;
    position: absolute;
    top: -35px;
    left: 0;
    right: 0;
    margin: 0 auto; }
    #reserve #reserve2-sec .reserve2-list .reserve2-item .merit-num-outer .merit-num {
      width: 100%;
      height: 100%;
      position: relative; }
      #reserve #reserve2-sec .reserve2-list .reserve2-item .merit-num-outer .merit-num img {
        display: block;
        width: auto;
        height: 34px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        margin-left: -1px; }
  #reserve #reserve2-sec .reserve2-list .reserve2-item .merit-txt {
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.8;
    color: #8D0000;
    text-align: center; }
  #reserve #reserve2-sec .reserve2-list .reserve2-item .merit-icon {
    margin: 20px auto 0; }
    #reserve #reserve2-sec .reserve2-list .reserve2-item .merit-icon.merit-icon1 {
      width: 93px;
      height: 65px; }
    #reserve #reserve2-sec .reserve2-list .reserve2-item .merit-icon.merit-icon2 {
      width: 81px;
      height: 71px; }
    #reserve #reserve2-sec .reserve2-list .reserve2-item .merit-icon.merit-icon3 {
      width: 98px;
      height: 67px; }
#reserve .pgbg {
  /*確認、送信画面用*/
  padding-top: 80px;
  margin-top: -80px;
  background: #e8e1d3; }
#reserve .form-wrapper {
  background-color: #e8e1d3;
  padding-bottom: 100px;
  z-index: 1; }
  #reserve .form-wrapper:before {
    border-color: transparent transparent white transparent; }
  #reserve .form-wrapper:after {
    background-color: white; }

/* --------------------------------
 * 資料請求・お問い合わせ
 * -------------------------------- */
#contact .page-mv {
  background-image: url("../../img/contact/contact_top.png"); }
  #contact .page-mv .page-mv-inner {
    width: 100%;
    height: 100%;
    position: relative; }
  #contact .page-mv .input-link-btn {
    width: 100px;
    position: absolute;
    left: -100px;
    bottom: 20px; }
    @media (max-width: 1400px) {
      #contact .page-mv .input-link-btn {
        left: -0px; } }
#contact .page-container {
  padding-bottom: 0; }
#contact .contact-toptxt {
  margin-bottom: 40px; }
  #contact .contact-toptxt .contact-toptxt-inner {
    margin-right: -45px;
    margin-left: -45px; }
    @media (max-width: 991.98px) {
      #contact .contact-toptxt .contact-toptxt-inner {
        margin-right: -20px;
        margin-left: -20px; } }
    #contact .contact-toptxt .contact-toptxt-inner .contact-toptxt-l, #contact .contact-toptxt .contact-toptxt-inner .contact-toptxt-r {
      padding-right: 45px;
      padding-left: 45px; }
      @media (max-width: 991.98px) {
        #contact .contact-toptxt .contact-toptxt-inner .contact-toptxt-l, #contact .contact-toptxt .contact-toptxt-inner .contact-toptxt-r {
          padding-right: 20px;
          padding-left: 20px; } }
  #contact .contact-toptxt .contact-toptxt-txt:first-child {
    margin: 30px 0; }
#contact .pgbg {
  /*確認、送信画面用*/
  padding-top: 80px;
  margin-top: -80px;
  background: white; }
#contact .form-wrapper {
  padding-bottom: 100px; }
  #contact .form-wrapper:before {
    border-color: transparent transparent #e8e1d3 transparent; }
  #contact .form-wrapper:after {
    background-color: #e8e1d3; }
#contact .wpcf7c-conf:-webkit-autofill {
  /*choromeの青背景をなくす*/
  -webkit-box-shadow: 0 0 0 1000px #e8e1d3 inset; }
#contact .wpcf7c-conf, #contact .wpcf7c-conf:focus {
  /*確認画面*/
  background-color: #e8e1d3 !important; }

/* --------------------------------
 * プライバシーポリシー
 * -------------------------------- */
#privacy .page-toptxt {
  margin-bottom: 100px; }
  @media (max-width: 991.98px) {
    #privacy .page-toptxt {
      margin-bottom: 80px; } }
  #privacy .page-toptxt .page-toptxt-ttl {
    margin-bottom: 20px; }
#privacy .privacy-main .privacy-main-inner {
  max-width: 960px;
  margin: 0 auto; }
#privacy .privacy-main .privacy-sec {
  margin-bottom: 50px; }
  #privacy .privacy-main .privacy-sec:last-child {
    margin-bottom: 0; }
  #privacy .privacy-main .privacy-sec .policy-sec-ttl {
    font-size: 1.1rem;
    font-weight: 500;
    color: #8D0000;
    margin-bottom: 10px; }
  #privacy .privacy-main .privacy-sec p {
    font-size: .9rem; }
  #privacy .privacy-main .privacy-sec .privacy-contact {
    max-width: 500px;
    font-size: .9rem;
    padding: 15px 20px;
    border: 2px solid #ccc;
    margin-top: 20px; }

/* --------------------------------
 * 404
 * -------------------------------- */
#not #page_not {
  line-height: 2.4;
  text-align: center;
  padding-top: 40px; }
  #not #page_not .not-bottom {
    margin-bottom: 40px; }

/* Scss Document */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  #loading {
    opacity: 0;
    visibility: hidden; }

  .body-wrapper {
    opacity: 1 !important; }

  #contact .form-wrapper:before, #reserve .form-wrapper:before, #celeste .form-wrapper:before {
    border: none;
    width: 200%;
    height: 280px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover; } }
  @media screen and (-ms-high-contrast: active) and (max-width: 991.98px), screen and (-ms-high-contrast: none) and (max-width: 991.98px) {
    #contact .form-wrapper:before, #reserve .form-wrapper:before, #celeste .form-wrapper:before {
      height: 220px; } }
@media screen and (-ms-high-contrast: active) and (max-width: 991.98px), screen and (-ms-high-contrast: none) and (max-width: 991.98px) {
  #contact .form-wrapper:after, #reserve .form-wrapper:after, #celeste .form-wrapper:after {
    height: calc(100% - 220px);
    position: absolute;
    top: 220px; } }

@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  #contact .form-wrapper:before, #celeste .form-wrapper:before {
    background-image: url("../../img/common/form_bg_be.svg"); }

  #reserve .form-wrapper:before {
    background-image: url("../../img/common/form_bg_w.svg"); } }

/*# sourceMappingURL=style.css.map */
