/*
Theme Name: 丸藤建築有限会社
Theme URI: Nothing
Author: SUMUS Inc.
Author URI: https://sumus-inc.co.jp
Description: This is the theme made for GANDO HOUSE inc.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: sumus

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/ @charset "UTF-8";
:root {
  --zb : #333;
  --black: #333;
  --blue: #438dbd;
  --orange: #f26522;
  --pink: #be4c8d;
  --purple: #6356ac;
  --sidep: 4em;
}
*, *::before, *::after {
  box-sizing: border-box;
  word-break: break-word;
}
html {
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
  color: #333;
  background-color: #fff;
  /*font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;*/
  /* font-family: Lato, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; */
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: normal;
  margin: 0;
  text-align: left;
}
[tabindex="-1"]:focus {
  outline: 0 !important;
}
img {
  /* IEにもobject fitを効かせる */
  font-family: 'object-fit: cover;';
  -o-object-fit: cover;
  object-fit: cover;
  display: block;
  height: auto;
  max-width: 100%;
  width: 100%;
}
#post-main {
  margin-top: 10em;
}
#post-main75 {
  margin-top: 7.5em;
}
.no-img {
  background: #333;
  display: flex;
  justify-content: center;
  align-items: center;
}
.no-img:after {
  color: #fff;
  content: "No Image";
}
a {
  text-decoration: none;
}
a[href="#"], a[href="#"]:hover {
  cursor: auto;
  opacity: .6 !important;
  pointer-events: none
}
p {
  font-size: 1.4rem;
  line-height: 1.71428571429;
  margin: 1.05em 0 0 0;
  word-break: break-all;
}
ul, ol {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  margin: 0;
}
button, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: 0;
  border: 0;
  border-radius: 0;
}
button::-moz-focus-inner, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}
input[type=radio], input[type=checkbox] {
  margin: 0;
  padding: 0;
}
input[type=checkbox] {
  border-radius: 0;
}
table {
  border-collapse: collapse;
}
th {
  text-align: inherit;
}
.mt-100 {
  margin-top: 10rem;
}
.m-t-50 {
  margin-top: 5rem;
}
.m-t-100 {
  margin-top: 10rem;
}
.fs-r14 {
  font-size: 1.4rem;
}
.fs-r16 {
  font-size: 1.6rem;
}
.d-f-c {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  align-items: center;
}
.d-f-l {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
.pc {
  display: block;
}
.sp {
  display: none;
}
@media (max-width: 48em) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  .fs-r16 {
    font-size: 2.6rem;
  }
  .about-p-grid2 img {
    order: -1;
  }
}

/*---------------------------------------------
 * トップページ
 *---------------------------------------------*/

 .n2-ss-slider .n2-ss-item-image img{
   width: auto;
 }

.top-event-link .desc{
  margin-top: .3em;
  color: var(--zb);;
}

.top-voice-right p{
  color: #333;
  margin-top: 0;
  margin-bottom: -.3em;
}

.btns-btn-left{
  background-color: #fff;
  border: 1px solid #666;
  width: 47%;
  height: 10em;
}

.btns-btn-left a{
  display: inline-block;
  width: 100%;
  height: 100%;
}

.btns-btn-right{
  width: 47%;
  height: 10em;
}

.btns-btn-right a{
  display: inline-block;
  width: 100%;
  height: 100%;
}

.btns-btn-left h3,
.btns-btn-left p{
  color: #333;
}

.top-lineup-wid{
    position: relative;
}

.top-lineup-wid-img-wrap{
    width: 100%;
    height: 100%;
}

.top-lineup-wid-img-wrap:before{
    padding-top: 36.36363636%;
    display: block;
    content: "";
}

.top-lineup-wid-img-wrap img{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.slick-slide{
    width: 100em;
    height: 62em;
}

/*---------------------------------------------
 * event Form
 *---------------------------------------------*/
#booking-form .model-event-name {
    color: #333;
    padding-left: 1em;
    width: 100%;
}

#booking-form .flatpickr-current-month input.cur-year {
    border: none;
    font-size: 2.3rem;
    padding: 0;
}

#booking-form .flatpickr-monthDropdown-months {
    border: none;
    font-size: 2.3rem;
    height: auto;
    pointer-events: none;
    width: auto;
    appearance: none;
}

.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month{
    line-height: 2;
    font-size: 1.6rem;
}

.flatpickr-innerContainer {
    margin-top: 1em;
}

.flatpickr-months .flatpickr-month{
    margin-top: -.4em;
}

.flatpickr-current-month .numInputWrapper {
    pointer-events: none;
}

#calendar,
#model-calendar {
    margin-top: 1.6em;
    margin-bottom: 4em;
}

.flatpickr-day {
    border: none;
    border-radius: 0;
    background-color: #dae9f1;
    color: #359dcd;
    font-size: 1.7rem;
    font-weight: normal;
    max-width: none;
    -webkit-flex-basis: calc((100% - 14px) / 7);
    -ms-flex-preferred-size: calc((100% - 14px) / 7);
    flex-basis: calc((100% - 14px) / 7);
    height: 2.4em;
    line-height: 2.4em;
    margin: 1px;
    width: 13.5%;
}

.dayContainer {
    min-width: auto;
}

.flatpickr-day.sunday:hover,
.flatpickr-day.saturday:hover,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.selected,
.flatpickr-day.saturday.selected,
.flatpickr-day.sunday.selected,
.flatpickr-day.selected:hover,
.flatpickr-day.today:hover,
.flatpickr-day.today:focus,
.flatpickr-day:hover {
    background-color: #d04994;
    color: #fff;
}

.flatpickr-day.disabled:hover {
    background-color: #eee !important;
}

/*.flatpickr-day.sunday,*/
/*.flatpickr-day.disabled.sunday {*/
/*    background-color: #ffdada;*/
/*}*/

/*.flatpickr-day.disabled.sunday:hover {*/
/*    background-color: #ffdada !important;*/
/*}*/

/*.flatpickr-day.saturday,*/
/*.flatpickr-day.disabled,saturday {*/
/*    background-color: #cdeefd;*/
/*}*/

/*.flatpickr-day.disabled.saturday:hover {*/
/*    background-color: #cdeefd !important;*/
/*}*/

/*.flatpickr-day.disabled.sunday,*/
/*.flatpickr-day.disabled.sunday:hover,*/
/*.flatpickr-day.prevMonthDay.sunday,*/
/*.flatpickr-day.prevMonthDay.sunday:hover {*/
/*    background-color: #ffdada;*/
/*}*/

/*.flatpickr-day.disabled.saturday,*/
/*.flatpickr-day.disabled.saturday:hover,*/
/*.flatpickr-day.nextMonthDay.saturday {*/
/*    background-color: #cdeefd;*/
/*}*/

/*.flatpickr-day.nextMonthDay.sunday {*/
/*    background-color: #ffdada;*/
/*}*/

.flatpickr-day.selected,
.flatpickr-day.selected:hover,
.flatpickr-day.selected.sunday:hover,
.flatpickr-day.selected.saturday:hover {
    border: none;
}

.flatpickr-calendar.inline {
    box-shadow: none;
    border-radius: 0;
    max-width: 100%;
    font-size: 1rem;
    padding: 2em;
    width: 50em;
}

.flatpickr-days,
.dayContainer {
    max-width: 100%;
    width: 100%;
}

.flatpickr-day.today {
    border: none;
}

.flatpickr-day:hover,
.flatpickr-day.today:hover {
    border: none;
}

.flatpickr-day.disabled,
.flatpickr-day.disabled, .flatpickr-day.disabled:hover {
    background-color: #eee;
    color: #999;
}

.flatpickr-weekdaycontainer > .flatpickr-weekday:not(:nth-of-type(6)):not(:last-of-type) {
    color: #333;
}

.flatpickr-weekdaycontainer > .flatpickr-weekday:nth-of-type(6) {
    color: #00a0d5;
}

.flatpickr-weekdaycontainer > .flatpickr-weekday:last-of-type {
    color: #ff0000;
}

.flatpickr-current-month {
    padding: 0;
}

.flatpickr-calendar .flatpickr-months .flatpickr-prev-month{
    left: 5px;
    padding-bottom: 0;
    padding-top: 1.5em;
    line-height: 1;
}

.flatpickr-calendar .flatpickr-months .flatpickr-next-month {
   right: 5px;
   padding-bottom: 0;
   padding-top: 1.5em;
   line-height: 1;
}

span.flatpickr-weekday {
    font-size: 1.7rem;
}

.flatpickr-day.prevMonthDay:hover,
.flatpickr-day.nextMonthDay:hover,
.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay {
    color: #ccc;
}

.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay {
    background-color: #eee;
}

#booking-form .numInput.cur-year,
.flatpickr-current-month input.cur-year[disabled] {
    -webkit-text-fill-color: #333;
    color: #333;
    font-size: 100%;
    font-weight: normal;
    opacity: 1;
}

.flatpickr-current-month .numInputWrapper {
    width: 5em;
}

.flatpickr-calendar::before,
.flatpickr-calendar::after {
    content: normal;
}

.flatpickr-day.saturday,
.flatpickr-day.disabled, saturday{
    /*background-color: #cdeefd;*/
}

.flatpickr-day.sunday,
.flatpickr-day.disabled.sunday {
    /*background-color: #ffdada;*/
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover {
    color: rgba(57,57,57,0.3);
    cursor: not-allowed;
    background-color: #eee;
}

#top-works-list-wrap .pc{
    margin-bottom: 5em;
}

/*.flatpickr-day.flatpickr-disabled.saturday:hover {*/
/*    background-color: #cdeefd;*/
/*}*/

/*.flatpickr-day.flatpickr-disabled.sunday:hover {*/
/*    background-color: #ffdada;*/
/*}*/

/*---------------------------------------------
 * Booking form
 *---------------------------------------------*/
#booking-form-section {
    padding: 10em 4em 5em;
    background-color: #f4f4f4;
    margin-top: 10em;
}

#booking-form-header{
    margin-top: -.9em;
}

#booking-form-header > h2 {
    font-size: 3rem;
    font-weight: normal;
    margin: -.1em 0 0 0;
}

#booking-form-header > p {
    margin: 2.8em 0 -.8em;
}

#booking-form-header a {
    color: #1a8cc6;
}

#booking-form-header p > span {
    color: #e60012;
    margin-top: .8em;
}

#booking-form-header.request p > span {
    color: #e60012;
    margin-top: .8em;
    display: inline-block;
}

#app-form-wrap {
    background-color: #f4f4f4;
    left: 50%;
    position: relative;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100vw;
}

#booking-form {
    padding: 5em 0 0;
}

.booking-form-block > .small{
    margin-top: 1em;
}

form input[type="text"],
form button,
form select,
form select:checked {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: 0;
    border: 0;
}

select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #000;
}

option:not(:checked) {
  color: black;
}

#booking-form input {
    border-radius: 0;
    font-size: 1.4rem;
    padding: .8em;
    border: 1px solid #ccc;
}

#booking-form input.grey-bg {
    background-color: #eaeaea;
    border: none;
}

#booking-form .auto-input {
    box-sizing: border-box;
    height: 3.2142857143em;
    line-height: 2.8571428571em;
    padding: 0 0 0 .8em;
    width: 14.2857142857em;
}

#booking-form .e-name {
    border: none;
}

#booking-form select {
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 0;
    font-size: 1.4rem;
    font-weight: normal;
    padding-left: .7em;
}

#tour-type {
    height: 2.8571428571em;
    width: 11.4285714286em;
}

.number-of-people select {
    height: 2.8571428571em;
    width: 7.1428571429em;
}

.number-of-people > .select-box:first-of-type {
    margin-right: 2em;
}

.number-of-people > p {
    margin: 0 .55em 0 0;
}

.e-name {
    background-color: #ccc;
    box-sizing: border-box;
    width: 100%;
}

#booking-form.events > .booking-form-block:first-of-type {
    margin-top: 0;
}

.booking-form-block-time{
    margin-top: .8em;
}

.booking-form-block {
    margin-top: 4em;
}

.booking-form-block.border {
    border-bottom: 1px dotted #ccc;
    border-top: 1px dotted #ccc;
    margin-top: 2em;
    padding: 3.9em 0 4em;
}

.booking-form-block h3 {
    font-size: 2rem;
    font-weight: normal;
    line-height: 1;
    margin: 0 1em 0 0;
}

.booking-form-block h3.small {
    font-size: 2rem;
    margin-right: 1em;
}

.booking-form-block h4 {
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1;
    margin: 0;
}

.cf-massage-title {
    font-size: 1.6rem;
    line-height: 1;
    margin-top: 1.2em;
}

.booking-form-input{
    margin-top: .6em;
}

.booking-form-input > p {
    font-size: 1.6rem;
    font-weight: normal;
    line-height: 1.25;
    margin: 0;
    padding: .6em 0;
}

.booking-form-input > p[data-ruby] {
    position: relative;
}

.booking-form-input > p[data-ruby]::before {
    content: attr(data-ruby);
    font-size: .75em;
    left: 0;
    position: absolute;
    top: 3em;
}

.booking-form-input > p:first-of-type {
    width: 15em;
}

.booking-form-block.border > .require.small {
    margin-top: 1.2em;
}

.booking-form-block.address > .require,
.booking-form-block.address > .cf-massage-title {
    font-weight: normal;
    font-size: 1.6rem;
    margin-top: 2em;
}

.booking-form-block.address > .require:first-of-type{
    margin-top: .8em;
}

.require::after {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    content: "\5FC5\9808";
    color: #fff;
    background-color: var(--pink);;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    font-size: 1.2rem;
    font-weight: 400;
    height: 1.5em;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: .3em;
    margin-top: .2em;
    width: 2.8333333333em;
}

#booking-form .booking-form-input.num > input {
    width: 2em;
}

#booking-form .booking-form-input.num > input:nth-of-type(1) {
    margin-right: 1.2em;
}

#booking-form .booking-form-input.num > p {
    margin: 0 .8em 0 0;
}

#booking-form .booking-form-input.num > p:nth-of-type(3) {
    font-size: 1.2rem;
}

.select-box-wrapper {
    margin-top: 1.8em;
}

.select-box {
    position: relative;
}

.select-box.disabled::after {
    content: normal;
}

.text-notes {
    margin: 0;
    padding-top: 1em;
    padding-bottom: .5em;
}

.text-notes-tel{
    color: #0075a9;
    font-size: 2.6rem;
    font-weight: normal;
    line-height: 1.2;
    margin-top: .2em;
}

.submit-note {
    font-size: 1.4rem;
    text-align: center;
}

.submit-note > span {
    color: #2998ca;
}

#booking-form .booking-form-input > input,
#booking-form .app-form-contact > input {
    box-sizing: border-box;
    height: 2.8125em;
    padding: 0 0 0 .8em;
    width: 48.75%;
    font-weight: 400;
    font-size: 1.6rem;
    overflow-x: scroll;
}

#booking-form .booking-form-input > .booking-form-width{
    width: 100%;
}

.app-form-address > input:nth-of-type(1) {
    margin-right: 1.2em;
}

.app-form-address > input:nth-of-type(2),
.app-form-address > input:nth-of-type(3) {
    margin-top: .5em;
    width: 100%;
}

.booking-form-block.privacy-notes {
    background-color: #e0e0e0;
    margin-top: 4em;
    padding: 2em;
}

.booking-form-block.privacy-notes > p {
    margin: 1.6em 0 -.3em;
}

.booking-form-block.privacy-notes a {
    color: #333;
    text-decoration: underline;
}

.booking-form-block.privacy-notes a:hover {
    text-decoration: none;
}

#submit-btn.event{
    background-color:  #0094cc;
    border: none;
    color: #fff;
    display: block;
    font-size: 1.6rem;
    height: 2.5em;
    line-height: 2.5em;
    margin: 3.3em auto 0 auto;
    text-align: center;
    width: 11.25em;
    font-weight: normal;
}

.submit-btn.contact {
    background-color: #de5c02;
}

.submit-note {
    font-size: 1.4rem;
    margin: 1.05em 0 -.4em;
    text-align: center;
}

.submit-note > span {
    color:  var(--orange);
}

.send-complete {
    color: #1a8cc6;
    font-size: 2rem;
    font-weight: normal;
    text-align: center;
}

#post-code-field + p {
    margin: 0;
    width: 65%;
}

#contact-types {
    background-color: #f4f4f4;
    box-sizing: border-box;
    padding: 3.1em 2em 3.1em 4em;
    width: 70%;
}

#contact-types > label {
    font-size: 1.4rem;
    padding: .425em 0;
    min-width: 46%;
}

#contact-types > label.next-text {
    margin-top: .75em;
    min-width: 23%;
}

#contact-types > label > input {
    margin: 0 .6em 0 0;
    padding: 0;
}

#contact-types input[type="text"] {
    box-sizing: border-box;
    height: 2.8571428571em;
    margin-top: .75em;
    padding: 0 0 0 1.4em;
    width: 21.4285714286em;
}

#address-fields {
    width: 70%;
}

#address-1,
#address-2 {
    margin-top: .7em;
    width: 100%;
}

#address-fields input {
    box-sizing: border-box;
    height: 2.8571428571em;
    padding: 0 0 0 1.4em;
}

#booking-form #prefecture-selectbox {
    height: 2.8571428571em;
    padding-left: 1.3em;
    width: 11.4285714286em;
}

#booking-caution {
    position: fixed;
    left: 0;
    top: 0;
    height: 100vh;
    width: 100vw;
    background-color: rgba(0, 0, 0, .7);
    z-index: 1000;
}

#booking-caution > .content {
    background-color: #fff;
    box-sizing: border-box;
    height: 35em;
    max-width: 90vw;
    padding: 3em;
    position: absolute;
    right: 50%;
    top: 50%;
    -wedbkit-transform: translate(50%, 50%);
    transform: translate(50%, -50%);
    width: 80em;
}

#booking-caution h2 {
    font-size: 4rem;
    margin-top: 1.3em;
    text-align: center;
}

#booking-caution .read-more {
    font-size: 1.9rem;
    margin-top: 3em;
    width: 13em;
}

#time-list-wrap {
    margin-top: 1.8em;
}

#time-list {
    border-top: 1px dashed #ccc;
}

#time-list > li {
    border-bottom: 1px solid #ccc;
    box-sizing: border-box;
    height: 5.3em;
}

#time-list > li > label {
    height: 100%;
    padding-left: 2em;
    width: 100%;
}

#time-list > li > label:hover {
    cursor: pointer;
}

#time-list > li > input:disabled + label:hover {
    cursor: not-allowed;
}

#time-list > li.sample {
    display: none;
}

#time-list > li > input:checked + label {
    background-color: #cdeefd;
}


#time-list > li span {
    font-size: 1.4rem;
    font-weight: normal;
}

#time-list > li .stock-status {
    width: 2em;
}

#time-list > li .time {
    letter-spacing: .1em;
    margin-right: 10.7142857143em;
}

#time-list .stock-status.max::before {
    content: "\025ce";
}

#time-list .stock-status.few::before {
    content: "\025b3";
}

#time-list .stock-status.none::before {
    content: "\0d7";
    font-size: 1.8rem;
}

#stock-setting-max,
#stock-setting-few {
    display: none;
}

.stock-status-desc {
    line-height: 1;
    margin-top: 1.2em;
}

.stock-status-desc > span:not(:last-of-type) {
    margin-right: 1.8em;
}

.stock-status-desc > .max::before {
    content: "\025ce";
}

.stock-status-desc > .few::before {
    content: "\025b3";
}

.stock-status-desc > .none::before {
    content: "\0d7";
    font-size: 1.8rem;
}

#time-list-wrap + div {
    margin-top: 3.8em;
    padding-bottom: 2.3em;
}

.select-box::after {
    background-size: cover;
    height: 1.75em;
    right: 2em;
    width: 2em;
}

 .select-box::after {
    content: "";
    background: url(images/form/arrow_down.png) no-repeat;
    background-size: .8em .7em;
    height: .7em;
    pointer-events: none;
    position: absolute;
    right: 1em;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: .8em;
}

.select-box select{
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}

/*---------------------------------------------
 * イベントアーカイブstatus　追加など
 *---------------------------------------------*/

#top-event-list .status, #events-archive-list .status {
    border-radius: 2em;
    color: #fff;
    display: block;
    font-size: 1.2rem;
    font-weight: normal;
    height: 2em;
    line-height: 2em;
    text-align: center;
    position: absolute;
    left: 0.8333333333em;
    top: 0.8333333333em;
    width: 5em;
}
.top-event-img .status,
#archive-events-list .status{
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    font-weight: normal;
    line-height: 2em;
    position: absolute;
    width: 4.1666666667em;
    height: 4.1666666667em;
    bottom: 0;
    right: 0;
}

.top-event-img .status.before,
#archive-events-list .status.before{
    background-color: rgb(33, 164, 213, 0.9);
}

.top-event-img .status.progress,
#archive-events-list .status.progress{
    background-color: rgb(242, 101, 34, 0.9);
}

.top-event-img .status.after,
#archive-events-list .status.after,
#archive-events-list .status.booked
{
    background-color: #333;
}

#archive-events-list .img-wrap img{
  height: 17.2em;
}

#archive-events-list .desc {
    font-size: 1.4rem;
    line-height: 1.7142857143;
    color: #333;
    margin-top: 0;
}

#archive-events-list{
  row-gap: 4.6em;
}

/*---------------------------------------------
 * event single
 *---------------------------------------------*/

 #booking-form-header.event-form{
   padding: 0;
 }

#booking-form-header.event-form > p {
    margin: 2.8em 0 -.8em;
    font-size: 1.4rem;
    line-height: 1.71428571429;
    white-space: inherit;
}

.event-inner{
    padding: 0 4em;
    box-sizing: content-box;
    }

/*---------------------------------------------
 * 施行事例　アーカイブ
 *---------------------------------------------*/
.works-list-add p{
  margin-top: 0;
}

.works-box a.no_checbox{
    pointer-events: none;
}

.works-box .build.no_checbox{
    background-color: #ccc;
}
.works-list-params{
  font-size: 1.6rem;
  min-height: 2.4rem;
  margin-top: 5px;

  max-width: 100%;
  line-height: 2.4rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}

/*---------------------------------------------
 * ラインナップ
---------------------------------------------*/

.single-lineup-head a:hover div{
  background-color: #333;
  color: #fff;
  transition: background-color .3s ease-out;
}

.lineup-inner{
  padding: 0 4em;
  box-sizing: content-box;
}

.sub-title.active{
  background-color: #333;
  color: #fff;

}

.tr-slic li{
    position: relative;
}

.tr-slic li h3{
    color: #333;
    position: absolute;
    font-size: 2.4rem;
    font-weight: normal;
    left: .6em;
    top: 1em;
    padding-left: .6em;
    border-left: 3px solid #ccc;
}

.slic-des-text{
  position: absolute;
  font-size: 1.6rem;
  bottom: 6.2em;
  left: 21.2em;
}

.tr-slic .slick-slide{
    height: 54em;
}

.valo-bg{
  background-color: #f4f4f4;
}

/*---------------------------------------------
 * image house
 *---------------------------------------------*/
 .image-house-head{
   line-height: 1.3333333333;
 }
 .image-house-head.no2{
   margin-top: 4.75em;
 }
 .image-house-head {
   margin-top: 3em;
 }
 .image-house-grid{
   margin-top: 9.5em;
 }
 .ih-grid2-text1 p,
 .ih-grid2-text2 p,
 .ih-grid2-text3 p{
   line-height: 1.875;
 }
 .ih-grid2-text3{
   margin-top: -11em;
 }
 #booking-form-section.consul{
   margin-top: 10em;
   padding: 4em 4em 5em;
 }
 #booking-form.consul{
   padding: 0;
 }
.consul-form-title h2{
  font-size: 3rem;
  font-weight: normal;
  margin-top: 1.6em;
  margin-bottom: -.1em;
}
.consul .booking-form-input{
    margin-top: 5em;
}
.consul .booking-form-input.consul-mt{
    margin-top: 1em;
}
.consul-form-title p {
    margin: 2.8em 0 -.4em;
    text-align: left;
}
.consul-form-title span {
    display: inline-block;
    color: #e60012;
}

.booking-form-input .grey-bg {
    background-color: #d9d9d9;
    border: none;
}

.booking-form-input .booking-form-width{
   font-weight: normal;
   text-align: left;
   font-size:  1.6rem;
   width: 100%;
   padding: .7em;
   margin-bottom: -.3em;
}
.consul-date-text{
  font-size: 1.6rem;
}
.booking-form-block.border.consul > .require.small{
  font-size: 1.6rem;
  margin-top: 1em;
}
.booking-form-block.border.consul{
  border: none;
  padding: 0;
  margin-top: 0;
}
.booking-form-block.address > .require.consul{
  margin-top: .8em;
}
.booking-form-input.booking-people label{
  font-size: 1.6rem;
  margin-left: 1.2em;
}
.booking-form-input.booking-people label:first-child {
  margin-left: 0;
}
.booking-form-input.booking-people p{
  font-size: 1.2rem;
  font-weight: normal;
  width: auto;
}
#booking-form .booking-form-input.booking-people input{
  width: 4.2857142857em;
  margin-left: .7em;
  padding: 1em;
  text-align: center;
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
  outline: none;
}
input[type="number"] {
  -moz-appearance:textfield;
  outline: none;
}
.booking-form-block.address > .cf-massage-title{
  margin-top: 2.5em;
}
.cf-message {
    appearance: none;
    box-sizing: border-box;
    font-size: 1.6rem;
    height: 12.5em;
    width: 100%;
    max-width: 100%;
    font-family: Roboto, "Helvetica Neue", Arial, メイリオ, Meiryo, "Hiragino Kaku Gothic ProN", "Hiragino Sans", HGS明朝E, sans-serif;
    border-width: 1px;
    border-style: solid;
    border-color: rgb(204, 204, 204);
    border-image: initial;
    border-radius: 0px;
    outline: none;
    padding: 0.6em;
}
.booking-form-input.textarea{
  margin-top: 1em;
}
.sp-booking-people{
  display: none;
}

#submit-btn.consul{
  margin-top: 2.3em;
}

/*---------------------------------------------
 * お客様の声
 *---------------------------------------------*/

.voice-s-main{
  padding: 0 4em;
  box-sizing: content-box;
}

.voice-s-title-wrap{
    width: 53.75%;
    height: 40em;
    background-color: #f4f4f4;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
            align-items: center;
}

.voice-head-grid > img{
    height: 100%;
}

.voice-s-title{
    margin-left: 4em;
}

/*---------------------------------------------
 * 会社情報
 *---------------------------------------------*/

.single-company{
  padding: 0 4em;
  box-sizing: content-box;
}

.company-map p{
  margin-top: .6em;
  margin-bottom: -.3em;
}

/*---------------------------------------------
 * ブログ
 *---------------------------------------------*/

#entry-content.blog p{
  line-height: 1.7142857143;
}

/*---------------------------------------------
 * ニュース
 *---------------------------------------------*/
#entry-content.news p{
  line-height: 1.7142857143;
}

/*---------------------------------------------
 * 資料請求
 *---------------------------------------------*/

 #booking-form-header.contact{
   padding: 0 4em;
 }
#booking-form-section.contact{
  padding: 0;
  margin-top: 6em;
}

#page-article.contact #booking-form{
  padding: 1em 0 0 0;
}

#page-article.contact .booking-form-block{
  margin-top: 2.5em;
}

#page-article.contact .booking-form-block:last-of-type{
  margin-top: 4em;
}


#page-article.contact #booking-form-wrap{
  padding: 0 4em 4em 4em;
}

#page-article.contact .booking-form-block.personal > .booking-form-item{
  padding-top: 0;
  margin-top: 3.2em;
}

#page-article.contact .booking-form-block.personal > .booking-form-item:nth-of-type(2){
  margin-top: 0;
}

#page-article.contact .booking-form-block.personal > .booking-form-item:last-of-type{
  margin-top: 9em;
}

#page-article.contact input{
  padding: 1em;
}

#booking-form .bokking-form-radiobutton input{
  border-radius: 50%;
}

#page-article.contact .booking-form-block.personal p{
  margin-top: .5em;
}

#page-article.contact .booking-form-block.personal .booking-form-item-text p{
  margin-top: 0.5em;
  font-size: 1.2rem;
}

#page-article.contact #booking-form #prefecture-selectbox{
  height: 100%;
}

#page-article.contact .booking-form-item > .input-fields{
  margin-top: .5em;
}

#page-article.contact #zipcode{
  width: 11.4285714286em;
}

#submit-btn.contact{
  margin-top: 2.5em;
  width: 11.2em;
}

.booking-form-item .border{
  border-bottom: 1px solid #ccc;
  padding-bottom: .2em;
}

.item-selects{
  display: grid;
  grid-template-columns: repeat(3, 14.2em);
  grid-template-rows: 1fr 1fr;
  column-gap: 8em;
  row-gap: 4em;
  margin: 3.5em 0 0 3em;
}

.item-selects-part-img{
  height: 20em;
}

.item-selects-part-img img{
  height: 100%;
}

.item-selects-part-img img{
  height: 100%;
}

.item-selects-part:last-of-type .item-selects-part-img img{
  width: auto;
  margin: auto;
}

.item-selects-part label{
  display: flex;
  flex-direction: column;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1;
}

.item-selects-part input{
  margin: 1.1428571429em auto 0.7142857143em;
}



/*---------------------------------------------
 * first
 *---------------------------------------------*/

.first-p-grid4 img{
    width: 38em;
}

.first-p-ingrid img{
    width: 38em;
}

.first-p-ingrid3 img{
    width: 38em;
}

.modal-window {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 9000;
}
.modal-window.-active {
  display: block;
}
.modal-window .modalcover {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 20px;
  opacity: 0;
  -webkit-transition: 1s;
  transition: 1s;
}
.modal-window .modalcover.-active {
  -webkit-animation: modalopen 0.5s linear 0s forwards;
          animation: modalopen 0.5s linear 0s forwards;
}
.modal-window .modalcover.-close {
  -webkit-animation: modalclose 0.5s linear 0s forwards;
          animation: modalclose 0.5s linear 0s forwards;
}
.modal-window .inner {
  position: relative;
  width: 100%;
  max-width: 800px;
  height: 80vh;
  background-color: #fff;
  -webkit-box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, 0.3);
  padding: 40px;
  margin: auto;
  -webkit-transform: translateY(200px);
          transform: translateY(200px);
  opacity: 0;
  -webkit-transition: 1s;
  transition: 1s;
}
.modal-window .inner.-active {
  -webkit-animation: innerShowUp 0.5s linear 0s forwards;
          animation: innerShowUp 0.5s linear 0s forwards;
}
.modal-window .inner.-close {
  -webkit-animation: innerCloseDown 0.5s linear 0s forwards;
          animation: innerCloseDown 0.5s linear 0s forwards;
}
.modal-window .title {
  font-size: 2.4rem;
  border-bottom: 1px solid #333;
  margin-bottom: 1.5em;
}
.modal-window .closebtn {
  position: absolute;
  display: block;
  right: 20px;
  top: 20px;
  width: 30px;
  height: 30px;
  z-index: 10;
  background-size: contain;
}
.modal-window .iconclose {
  width: 32px;
  height: 32px;
  fill: #333;
  -webkit-transform: rotateZ(45deg);
          transform: rotateZ(45deg);
}
@media (max-width: 768px) {
  .modal-window .inner {
    padding: 40px 20px 20px 20px;
  }
  .modal-window .title {
    font-size: 3.4rem;
  }
}

@-webkit-keyframes modalopen {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes modalopen {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes modalclose {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes modalclose {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-webkit-keyframes innerShowUp {
  from {
    opacity: 0;
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes innerShowUp {
  from {
    opacity: 0;
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes innerCloseDown {
  from {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    opacity: 0;
    -webkit-transform: translateY(-100px);
            transform: translateY(-100px);
  }
}
@keyframes innerCloseDown {
  from {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    opacity: 0;
    -webkit-transform: translateY(-100px);
            transform: translateY(-100px);
  }
}

.mil-embed-XbYdRo {
  z-index: -1;
}

.works-entry-list-header .modal-window .modalcover .mil-embed-XbYdRo {
  width: 85% !important;
}

.modalcover.-active .mil-embed-XbYdRo{
  z-index: 1;
  padding-bottom: 48% !important;
}

.modalcover.-active::before,
.modalcover.-active::after {
  content: "";
  position: absolute;
  top: 35px;
  right: 20px;
  width: 5px;
  height: 30px;
  background: #f2f2f2;
  cursor: pointer;
}

.modalcover.-active::before {
  transform: translate(-50%,-50%) rotate(45deg);
}

.modalcover.-active::after {
  transform: translate(-50%,-50%) rotate(-45deg);
}

/*---------------------------------------------
 * Header
 *---------------------------------------------*/

#privacy{
  margin-top: 9em;
}



/*---------------------------------------------
 * Header
 *---------------------------------------------*/
#header {
  /*
  background-color: transparent;
*/
  height: 11.4em;
  padding: 0 var(--sidep);
  position: absolute;
  width: 100%;
  z-index: 2;
}
#header > .inner {
  height: 100%;
}
/* Logo */
#h-block-1 {
  width: 19em;
}
#h-block-1.toppage{
  width: 30em;
  position: relative;
}
#h-block-1 .seottl{
  color: #fff;
  text-decoration: none;
  font-size: 0.8em;
}
#logo {
  margin-top: 5em;
  width: 100%;
}
#logo.toppage {
  flex-direction: column;
  width: 30em;
  margin-top: 2.5em;
}
#logo.toppage > p > img{
  display: block;
  width: 230px;
  height: auto;
  object-fit: unset;
  margin-top: 10px;
}
#logo > h1, #logo > p {
  margin: 0;
  position: relative;
  width: 100%;
  z-index: 101;
}
#logo img {
  left: 0;
  position: absolute;
  top: 0;
  -webkit-transition: opacity .5s ease;
  transition: opacity .5s ease;
}
.head-logo-color {
  opacity: 0;
}
#h-block-2 {
  margin: 2em 0 0 auto;
}
#h-block-2 > .contact > .tel {
  color: #fff;
  font-size: 1.6rem;
  font-weight: normal;
  font-family: 'Lato', sans-serif;
  letter-spacing: 0.2em;
  margin-top: 0;
}
#h-block-2 > .contact > .tel::before {
  content: "tel.";
}
#h-block-2 .req-doc-btn {
  height: 3em;
  margin-left: 1em;
  width: 15em;
}
#h-block-2 .req-doc-btn.-long {
  width: 20em;
  min-width: 185px;
  margin-left: 0.7rem;
}
#h-block-2 .req-doc-btn > p {
  font-weight: normal;
  margin-top: 0;
  font-size: 1.3rem;
}
.sns-btn {
  margin-top: 0.1em;
}
#h-block-2 .sns-btn > a {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: block;
}
#h-block-2 .sns-btn > .fb {
  background-image: url(images/global/header/fb_white.png);
  height: 1.6rem;
  margin-left: 1.5em;
  width: 0.9rem;
  /* height: 1.9em; */
  /* width: 1em; */
}
#h-block-2 .sns-btn > .ig {
  background-image: url(images/global/header/ig_white.png);
  height: 1.4rem;
  margin: auto auto auto 1.5rem;
  width: 1.4rem;
  /* margin-left: 1.8em; */
  /* margin-top: .2em; */
  /* width: 1.6em; */
  /* height: 1.6em; */
}
#h-block-2 .sns-btn > .tw {
  background-image: url(images/global/header/twi-white.png);
  height: 1.1rem;
  margin: auto auto auto 1rem;
  width: 1.4rem;
  background-size: contain;
  /* margin-left: 1.8em;
  margin-top: .2em; */
  /* height: 1.6em; */
  /* width: 1.8em; */
}
/* Header nav */
#header-nav {
  margin-top: 2.7em;
}
#header-nav-list {
  -ms-grid-columns: (auto)[7];
  grid-template-columns: repeat(7, auto);
}
#header-nav-list a {
  color: #fff;
  font-size: 1.4rem;
  font-family: 'Lato', sans-serif;
  line-height: 1;
  position: relative;
  letter-spacing: 0.2em;
  /* letter-spacing: .1em; */
}
#header-nav-list a::before, #works-nav-list a::before {
  background-color: #fff;
  bottom: -1em;
  content: "";
  height: 2px;
  left: 0;
  position: absolute;
  -webkit-transition: width .3s ease;
  transition: width .3s ease;
  width: 0;
}
#header-nav-list > .active > a::before, #header-nav-list a:hover::before {
  width: 100%;
}
.colmg-3-8 {
  column-gap: 3.3em;
}
/* 下層 */
body:not(.home) #header {
  /*box-shadow: 0 0 1em #ccc;*/
  left: 0;
  position: fixed;
  top: 0;
  -webkit-transition: height .3s ease;
  transition: .5s;
}
body:not(.home) #h-block-1 {
  -webkit-transition: width .3s ease;
  transition: width .3s ease;
}
body:not(.home) .head-logo-color {
  opacity: 1;
}
/*body:not(.home) .head-logo-white {}
body:not(.home) #logo {
  margin-top: 4.2em;
  -webkit-transition: margin-top .3s ease;
  transition: margin-top .3s ease;
  width: 19em;
}*/
body:not(.home) #h-block-2 > .contact {
  -webkit-transition: -webkit-transform .3s ease;
  transition: -webkit-transform .3s ease;
  transition: transform .3s ease;
  transition: transform .3s ease, -webkit-transform .3s ease;
}
body:not(.home) #h-block-2 {
  margin: 2em 0 0 auto;
}
body:not(.home) #h-block-2 a {
  color: #fff;
  font-weight: 100;
}
body:not(.home) #h-block-2 .sns-btn > .fb {
  background-image: url(images/global/header/fb_white.png);
}
body:not(.home) #h-block-2 .sns-btn > .ig {
  background-image: url(images/global/header/ig_white.png);
}
body:not(.home) > #header #header-nav {
  -webkit-transition: -webkit-transform .3s ease;
  transition: -webkit-transform .3s ease;
  transition: transform .3s ease;
  transition: transform .3s ease, -webkit-transform .3s ease;
}
/* スクロール時 */
#header.scrolled {
  height: 7em;
  background: #333;
}
#h-block-1 {
  width: 23em;
  margin-right: 2em;
}
#header.scrolled #logo {
  margin-top: 1.7em;
}
body:not(.home) > #header.scrolled #h-block-2 > .contact {
  -webkit-transform: translateY(-10em);
  transform: translateY(-10em);
}
body:not(.home) > #header.scrolled #header-nav {
  -webkit-transform: translateY(-5.7em);
  transform: translateY(-5.7em);
}
@media (max-width: 48em) {
  .bg-visible {
    background: #333;
  }
}
/*---------------------------------------------
 * Top MV
 *---------------------------------------------*/
/*
#top-mv {
  background-image: url(images/front/mv.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 70em;
  padding: 0 var(--sidep);
  position: relative;
}
#top-mv::before {
  background: linear-gradient(rgba(0, 0, 0, .5), rgba(255, 255, 255, 0));
  content: "";
  height: 20em;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
#top-mv > .img-wrap {
  width: 87.1em;
}
*/
/*---------------------------------------------
 * utility
 *---------------------------------------------*/
.read-more {
  height: 4em;
  width: 20em;
}
.read-more > a {
  background-color: var(--purple);
  color: #fff;
  font-size: 1.4rem;
  font-weight: normal;
  height: 100%;
  text-align: center;
}
.read-more.second {
  border: 1px solid var(--black);
}
.read-more.second > a {
  background-color: #fff;
  color: var(--black);
  font-size: 1.4rem;
  -webkit-transition: background-color .3s ease, color .3s ease;
  transition: background-color .3s ease, color .3s ease;
}
.read-more.second > a:hover {
  background-color: var(--black);
  color: #fff;
}
.req-doc-btn {
  background-color: #d04994;
}
.req-doc-btn-top {
  background: none;
  border: 1px solid #fff;
}
.req-doc-btn > p {
  color: #fff;
}
.external-link::after {
  background-image: url(images/global/footer/external_link.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
}
/*---------------------------------------------
 * Footer
 *---------------------------------------------*/
/* Footer contact */
#footer-contact {
  background: #f4f4f4;
  padding: 10em var(--sidep) 10em;
  margin-top: 10em;
}
body:not(.home) #footer-contact {
  margin-top: 10em;
}
#footer-contact > .inner > .title, #footer-contact > .inner > .subtitle {
  color: #333;
  letter-spacing: 0.2em;
}
#footer-contact .btns {
  grid-template-columns: repeat(auto-fit, minmax(47em, 1fr));
  margin-top: 5em;
}
#footer-contact .btns > a {
  height: 10em;
  width: 47%;
}
#footer-contact .btns > .tel-btn {
  border: 1px solid #666;
  background: #fff;
}
#footer-contact .btns h3, #footer-contact .btns p {
  line-height: 1;
  text-align: center;
  font-weight: normal;
}
#footer-contact .btns p {
  font-weight: normal;
}
#footer-contact .tel-btn > h3 {
  font-size: 2.4rem;
  font-family: 'Lato', sans-serif;
  font-weight: normal;
  line-height: .75;
  margin-top: 1.2em;
}
.ftcontacttel {
  margin-right: -5px;
  letter-spacing: 0.2em;
}
#footer-contact .req-doc-btn > h3 {
  font-size: 2rem;
  margin-top: 1.4em;
  color: #fff;
}
#footer-contact .p-color p {
  color: #fff;
}
#footer-contact h2 {
  margin-top: 0;
}
/* Footer */
#footer {
  background-color: #333;
  color: #fff;
}
#footer-nav {
  padding-top: 4.2em;
}
#footer-nav-list {
  -webkit-column-gap: 5.6em;
  -moz-column-gap: 5.6em;
  column-gap: 3.3em;
  -ms-grid-columns: (-webkit-max-content)[8];
  -ms-grid-columns: (max-content)[8];
  grid-template-columns: repeat(8, -webkit-max-content);
  grid-template-columns: repeat(8, max-content);
  justify-content: center;
}
#footer-nav-list a {
  color: var(--White);
  display: block;
  font-size: 1.4rem;
  font-family: 'Lato', sans-serif;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0.2em;
}
#footer-address-recruit {
  margin-top: 2.3em;
}
#footer-address-wrap > .logo {
  margin-right: 2em;
  width: 10em;
}
#footer-address-wrap address > p {
  font-style: normal;
  margin-top: 0;
  text-align: center;
}
#footer-address-wrap address > p > a {
  color: inherit;
}
#footer-recruit-wrap {
  width: 24em;
}
#footer-recruit-wrap > a {
  background-color: #f4f4f4;
  border-radius: .7142857143em;
  color: #666;
  font-size: 1.4rem;
  font-weight: normal;
  height: 2.8571428571em;
  margin-top: .7142857143em;
}
#footer-recruit-wrap > a.external-link::after {
  height: .7857142857em;
  margin: 0 0 .1em .2em;
  width: .8571428571em;
}
#copy-wrap {
  margin-top: 2em;
  height: 6em;
  display: flex;
  justify-content: center;
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid #4e4e4e;
}


#copy-wrap .copy, #copy-wrap a {
  color: var(--white);
  font-size: 1rem;
  line-height: 1;
  margin: 0;
}
#copy-wrap .copy {
  text-align: center;
  color: #6f6f6f;
}
#req-doc-btn #hover-fade p {
  color: #fff;
}
#scroll-top-btn-sp-wrap {
  background-color: #333;
  border-bottom: 1px solid rgba(255, 255, 255, .2);
  height: 4.4em;
  margin-top: 10em;
}
#scroll-top-btn-sp-wrap:hover {
    opacity: .9!important;
}
.link-btn {
  cursor: pointer;
  -webkit-transition: opacity .3s ease-out;
  transition: opacity .3s ease-out;
}
#scroll-top-btn-sp-wrap::after {
  background-color: transparent;
  background-image: url(images/global/footer/arrow_up.png);
  background-size: cover;
  background-repeat: no-repeat;
  border: none;
  content: "";
  font-size: 1rem;
  height: 1.4em;
  outline: none;
  width: 1.4em;
}
.footer-logo {
  width: 26em;
  margin: 0 auto;
  padding-top: 5.2em;
}
.footer-line {
  margin-top: 10em;
  border-bottom: 1px #4e4e4e solid;
  height: 4.5em;
  display: flex;
  justify-content: center;
  align-items: center;
}
.footer-line img {
  width: 1.4em;
  height: 1.4em;
}
.footer-sp-men {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  background: #333;
  color: #fff;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 2;
  width: 100%;
}
.footer-sp-men div {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #4e4e4e;
  font-size: 2.8em;
  height: 10rem;
}
.footer-sp-men div a {
  color: #fff;
}

.footer-telfax.sp {
  display: none;
}
.footer-telfax.pc {
  display: flex;
  justify-content: center;
  grid-column-gap: 0.5rem;
  font-size: 2.6em;
  font-style: normal;
  font-family: 'Lato', sans-serif;
  /* margin-top: 1rem; */
}
.telfaxpc {
  display: block;
  font-size: 1.4rem;
  letter-spacing: 0.2em;
  margin-top: 0;
}
.telfaxpc.slash {
  margin-top: 0.2em;
}
.telfaxsp {
  display: none;
}
/*---------------------------------------------
 * Top section common
 *---------------------------------------------*/
.top-section .title {
  color: var(--zb);
  font-size: 32px;
  font-weight: 400;
  font-family: 'Lato', sans-serif;
  letter-spacing: 0.2em;
  line-height: .8;
  text-align: center;
  margin-top: 3em;
  /* margin-top: 2.44em; */
  /* letter-spacing: .1em; */
}
#top-lineup .title {
  margin-top: 0;
}
@media (max-width: 48em) {
  #top-lineup .title {
    margin-top: 2.15em;
    padding-top: 2.2em;
  }
}
.top-section .subtitle {
  color: var(--zb);
  font-size: 1.2rem;
  line-height: 1;
  margin-top: 1.55em;
  text-align: center;
}
.top-section .subtitle.line-bottom::after {
  background-color: var(--black);
  content: "";
  display: block;
  height: 2px;
  margin: 3.2em auto 0;
  width: 2.5em;
}
/*---------------------------------------------
 * Top ABOUT
 *---------------------------------------------*/
#top-about {
  height: 51em;
  margin-top: 10em;
  position: relative;
}
#top-about > .img-wrap, #top-about > .content {
  height: 46em;
  position: absolute;
}
#top-about > .img-wrap {
  left: 0;
  top: 0;
  width: calc(100% - 50em);
  z-index: 2;
}
#top-about > .img-wrap > img {
  height: 100%;
}
#top-about > .content {
  background-color: #f4f4f4;
  bottom: 0;
  padding-right: 2.1em;
  right: 0;
  width: 115em;
}
#top-about > .content .desc {
  line-height: 2.1428571429;
  margin: 2.2em 0 -.6em 0;
  text-align: center;
  white-space: pre-line;
}
#top-about > .content > .inner {
  width: 44.8em;
}
#top-about .read-more {
  margin: 4em auto 0;
}
/*---------------------------------------------
 * Top EVENT
 *---------------------------------------------*/
#top-events {
  padding: 0 2em;
}
#top-events .kcarea{
  margin-top: 5em;
}
#top-event-ul {
  display: grid;
  grid-template-columns: repeat(3, minmax(18em, 30.6em));
  grid-column-gap: 1em;
  justify-content: space-between;
  max-width: 100em;
  margin: 0 auto -.3em;
}
.top-event-li {
  margin: 0 auto;
  margin-top: 4.9em;
  width: 100%;
}
.top-event-img {
  position: relative;
  height: 17.2em;
}
.top-event-img img {
  height: 100%;
}
.top-event-label {
  position: absolute;
  top: 0;
  left: 0;
  font-weight: normal;
  font-size: 1.2em;
  color: #fff;
  background: var(--black);
  width: 6rem;
  height: 2.4rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.top-event-label a {
  color: #fff;
}
.top-event-status {
  position: absolute;
  bottom: 0;
  right: 0;
  font-weight: normal;
  font-size: 1.2em;
  text-align: center;
  color: #fff;
  width: 5rem;
  height: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.top-event-title {
  color: var(--zb);
  font-size: 1.6em;
  font-weight: normal;
  margin-top: 1em;
  margin-bottom: -.1em;
}
.top-event-days {
  font-size: 1.5em;
}
#top-events .read-more {
  margin: 0 auto;
  margin-top: 2em;
}
#top-events .read-more a {
  background: var(--black);
}
@media (max-width: 48em) {
  #top-event-ul {
    display: block;
    width: auto;
    padding: 0 2em;
  }
  .top-event-li {
    width: 100%;
    margin-top: 9.5em;
  }
  .top-event-img {
    height: calc((100vw - 8em)/1.7777777778);
  }
  .top-event-label {
    width: 12rem;
    height: 4.8rem;
    font-size: 2.4em
  }
  .top-event-status {
    width: 10rem;
    height: 10rem;
    font-size: 2.4em;
  }
  .top-event-title {
    font-size: 3.2em;
  }
  .top-event-days {
    font-size: 2.8em;
  }
  #top-events .read-more {
    margin-top: 10em;
  }
}
/*
#top-events-columns-wrap {
    padding: 0 var(--sidep);
}

#top-events-columns {
    grid-template-columns: repeat(auto-fit, 48em);
    margin-top: 10em;
}

#top-events-columns header {
    margin-top: .6em;
}

#top-events-columns header > .title {
    font-size: 2.4rem;
    margin-right: .6em;
}

#top-events-columns header > .subtitle {
    margin: 0;
}

#top-events-columns > section {
    position: relative;
}

#top-events-columns .read-more {
    height: 3em;
    position: absolute;
    right: 0;
    top: 0;
    width: 10em;
}

#top-events-columns .img-wrap {
    height: 15.3em;
    position: relative;
}

#top-events-columns .img-wrap > img {
    height: 100%;
}

#top-events-columns .img-wrap > .cat {
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
    height: 1.75em;
    left: 0;
    line-height: 1;
    position: absolute;
    top: 0;
    width: 5em;
}

#top-events-columns .img-wrap > .cat.news {
    background-color: var(--blue);
}

#top-events-columns .img-wrap > .cat.event {
    background-color: var(--pink);
}

#top-events-columns .read-more > a {
    font-size: 1.3rem;
    font-weight: bold;
}

#top-events::after {
    content: "";
    border-right: 1px dashed #ccc;
    height: 100%;
    position: absolute;
    right: -2em;
    top: 0;
    width: 1px;
}

#top-events-columns ul {
    grid-template-columns: repeat(2, 23em);
    margin-top: 2.6em;
}

#top-events-columns ul a {
    display: block;
}

#top-events-columns .post-title {
    color: var(--black);
    font-weight: bold;
}
*/
/*---------------------------------------------
 * Top WORKS
 *---------------------------------------------*/
.workbox {
  display: grid;
}
#top-works-wrap {
  background-color: #f4f4f4;
  margin-top: 10em;
  padding-top: 0.1em;
  padding-bottom: 10em;
}
#top-works > header {}
#top-works > header .title {}
#top-works > header .title, #top-works > header .subtitle {}
#top-works > header .desc {
  line-height: 2.1428571429;
  margin: -.6em 0 -.6em auto;
  text-align: left;
  white-space: pre-line;
}
/* Swiper */
#top-works-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(14em, 1fr));
  grid-column-gap: 2.866666667%;
}
#top-works-list-container {
  margin-top: 5em;
  overflow: hidden;
  position: relative;
}
#top-works-list-wrap {
  max-width: 1500px;
  overflow: visible;
  margin: 0 auto;
  padding: 0 4em;
  box-sizing: content-box;
}
#top-works-list .post-title {
  color: var(--zb);;
  font-size: 1.6rem;
  line-height: 1.8;
  margin: 0.7em 0;
  font-weight: normal;
}
#top-works-list .img-wrap{
  position: relative;
}
#top-works-list .img-wrap::before {
  display: block;
  content: "";
  padding-top: 100%;
}
#top-works-list .img-wrap img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.mr-top {
  margin-top: 2em;
}
#top-works-list-wrap .read-more {
  margin: 0 auto;
  margin-top: 0;
}
.read-more {
  margin: 0 auto;
}
.read-more a {
  background: var(--black);
  padding: 1em;
}
.works-prev, .works-next {
  background-color: var(--purple);
  background-repeat: no-repeat;
  background-size: 1em 1.2em;
  border-radius: 50%;
  height: 4em;
  position: absolute;
  top: 13.5em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: -webkit-transform .3s ease;
  transition: -webkit-transform .3s ease;
  transition: transform .3s ease;
  transition: transform .3s ease, -webkit-transform .3s ease;
  width: 4em;
  z-index: 10;
}
.works-prev {
  background-image: url(images/global/triangle_left.png);
  background-position: 44% center;
  left: calc(50% - 50em);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.works-next {
  background-image: url(images/global/triangle_right.png);
  background-position: 57% center;
  right: calc(50% - 50em);
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
}
.works-prev:hover, .works-next:hover {
  cursor: pointer;
}
.works-prev:hover {
  -webkit-transform: translate(-50%, -50%) scale(1.1);
  transform: translate(-50%, -50%) scale(1.1);
}
.works-next:hover {
  -webkit-transform: translate(50%, -50%) scale(1.1);
  transform: translate(50%, -50%) scale(1.1);
}
.works-prev:focus, .works-next:focus {
  outline: none;
}
/* Read more */
#top-works-read-more {
  display: block;
  margin: 6em auto 0;
  width: 11.3em;
}
#top-works-read-more > .round {
  background-color: var(--purple);
  border-radius: 50%;
  height: 4em;
  margin: 0 auto;
  width: 4em;
}
#top-works-read-more > .round > .squares {
  grid-template-columns: repeat(auto-fit, .4em);
  column-gap: .2em;
  height: 1.6em;
  row-gap: .2em;
  width: 1.6em;
}
#top-works-read-more > .round > .squares > span {
  background-color: #fff;
  height: .4em;
  -webkit-transition: -webkit-transform .3s ease;
  transition: -webkit-transform .3s ease;
  transition: transform .3s ease;
  transition: transform .3s ease, -webkit-transform .3s ease;
}
#top-works-read-more > p {
  color: var(--purple);
  font-size: 1.4em;
  font-weight: normal;
  line-height: 1;
  margin-top: .6em;
  text-align: center;
}
#top-works-read-more:hover .squares > span:nth-of-type(1) {
  /*background-color: red;*/
  -webkit-transform: translate(150%, 150%);
  transform: translate(150%, 150%);
}
#top-works-read-more:hover .squares > span:nth-of-type(2) {
  -webkit-transform: translateY(150%);
  transform: translateY(150%);
}
#top-works-read-more:hover .squares > span:nth-of-type(3) {
  -webkit-transform: translate(-150%, 150%);
  transform: translate(-150%, 150%);
}
#top-works-read-more:hover .squares > span:nth-of-type(4) {
  -webkit-transform: translateX(150%);
  transform: translateX(150%);
}
#top-works-read-more:hover .squares > span:nth-of-type(6) {
  -webkit-transform: translateX(-150%);
  transform: translateX(-150%);
}
#top-works-read-more:hover .squares > span:nth-of-type(7) {
  -webkit-transform: translate(150%, -150%);
  transform: translate(150%, -150%);
}
#top-works-read-more:hover .squares > span:nth-of-type(8) {
  -webkit-transform: translateY(-150%);
  transform: translateY(-150%);
}
#top-works-read-more:hover .squares > span:nth-of-type(9) {
  -webkit-transform: translate(-150%, -150%);
  transform: translate(-150%, -150%);
}
@media (max-width: 48em) {
  #top-works-wrap {
    margin-top: 20em;
    padding-bottom: 20em;
  }
  #top-works-list-sp {
    max-width: 50em;
    margin: 10em auto 0;
  }
  .slick-js {
    width: 50em;
    margin: 0 auto;
  }
  .slick-js-main {}
  .post-title {
    font-size: 3.2em;
  }
  .next-arrow, .prev-arrow {
    position: absolute;
    width: 2.8em;
    height: 5.1em;
    top: 36%;
    z-index: 1;
  }
  .next-arrow {
    right: 0;
  }
  .prev-arrow {
    left: 0;
  }

  .post-title-wrap{
    width: 100%;
  }
  .slick-js .post-title {
    margin: 1em 0;
    font-weight: normal;
  }
  .slick-js a {
    color: #333;
  }
  #top-works .read-more {
    margin-top: 4.8em;
  }
}
/*---------------------------------------------
 * Top VOICE
 *---------------------------------------------*/
#top-voice {
  width: 100%;
  background: #fff;
  padding: 9em 0 10.5em;
}
#top-voice a {
  color: #fff;
}
#top-voice-image {
  margin: 0 auto;
  max-width: 100em;
  display: grid;
  grid-template-columns: repeat(2, minmax(29em, 48em));
  gap: 4em;
  justify-content: space-between;
  grid-template-rows: 30em 14em;
}
#top-voice-image .img1 {
  background-image: url("images/top/top-first.jpg");
  background-position: center;
  text-align: center;
  color: #fff;
  padding: 3.5em 3.8em;
}
#top-voice-image .img2 {
  background-image: url("images/top/top-image (2).jpg");
  text-align: center;
  color: #fff;
  padding: 3.5em 3.8em;
}

#top-voice-image .top-reform{
  grid-area: 2 / 1 / 3 / 3 ;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-image: -webkit-image-set(url(images/top/top-reform.jpg) 1x, url(images/top/top-reform@2x.jpg) 2x);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  text-align: center;
  color: #fff;
}
#top-voice-image .top-reform p::before{
  display: none;
}
#top-voice-image h3 {
  font-size: 32px;
  /* letter-spacing: 0.1em; */
  font-family: 'Lato', sans-serif;
  letter-spacing: 0.2em;
}
#top-voice-image p {
  display: inline-block;
  position: relative;
  font-size: 1.1em;
  margin-top: 0.5em;
}
#top-voice-image p:before {
  content: '';
  position: absolute;
  left: 48%;
  bottom: -1.8em;
  display: inline-block;
  width: 3.6em;
  height: 0.1em;
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translate(-50%);
  background-color: #fff;
}
.top-voice-text {
  text-align: left;
  margin-top: 3.2em;
  font-size: 1.4rem;
  line-height: 24px;
}
.top-voice-box {
  width: 20rem;
  height: 4rem;
  border: 1px solid #fff;
  margin: 0 auto;
  margin-top: 1.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.2em;
  font-weight: normal;
}
#top-voice-main {
  position: relative;
  margin: 0 auto;
  margin-top: 13.5em;
  height: 40em;
}
#top-voice-main h3 {
  color: var(--zb);
  display: inline-block;
  font-size: 3.2em;
  font-weight: normal;
  border-bottom: 0.07em solid var(--zb);
  line-height: 1.5;
  /* letter-spacing: .1em; */
  letter-spacing: 0.2em;
  padding-bottom: .3em;
}
#top-voice-main .top-voice-left {
  position: absolute;
  top: -2.2em;
  left: 5em;
}
#top-voice-main .top-voice-left p {
  color: var(--zb);
  font-size: 1.2em;
}
.top-voice-shadow {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 35em;
  background: rgba(0, 0, 0, 0.05);
}
.top-voice-bgimg {
  position: relative;
  top: -0.1em;
  width: 75%;
  height: 40em;
}
.top-voice-bgimg:before{
    content: "";
    display: block;
    padding-top: 33.3333333333%;
}
.top-voice-bgimg img{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-position: 85%;
}
.wh100 {
  width: 100%;
  height: 100%;
}
.top-voice-right {
  position: absolute;
  bottom: 0;
  right: 0;
  margin-right: 5em;
  width: 50em;
  height: 30em;
  background: #fff;
  padding: 5em 4em;
}
.top-voice-right h4 {
  color: #333;
  font-size: 2.4em;
  font-weight: normal;
  height: 6.8rem;
}
.top-voice-button {
  margin: 0 auto;
  margin-top: 2rem;
  background: var(--black);
  color: #fff;
  font-size: 1.4em;
  font-weight: normal;
  width: 20rem;
  height: 4rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 48em) {
  #top-voice {
    background: none;
    padding-top: 20em;
  }
  #top-voice-main {
    /*max-width: 67em;*/
  }
  .top-voice-bg-white {
    background: #fff;
    max-width: 67em;
    margin: 0 auto;
    padding-bottom: 9em;
  }
  .top-voice-sp {
    z-index: 0;
  }
  .top-voice-spbg {
    position: absolute;
    top: 32em;
    left: 0;
    margin: 0 auto;
    background: #f4f4f4;
    width: 100%;
    height: 103.6rem;
    z-index: -1;
  }
  #top-voice-image {
    margin: 0 auto;
    grid-template-columns: 67em;
    grid-template-rows: 41.8em 41.8em;
    grid-row-gap: 8em;
    justify-content: center;
  }
  #top-voice-image .img1, #top-voice-image .img2 {
    max-width: 100%;
    height: 41.9em;
    background-size: cover;
    background-repeat: no-repeat;
  }
  #top-voice-image .top-reform{
    grid-area: unset;
    max-width: 100%;
    height: 41.9em;
  }
  #top-voice-image .top-reform h3{
    margin-top: 0;
  }
  .top-voice-text, .top-voice-box {
    display: none;
  }
  #top-voice-image h3 {
    margin-top: 1.7em;
  }
  #top-voice-image p {
    font-size: 2.4em;
  }
  #top-voice-image p:before {
    display: none;
  }
  .top-voice-image-sp {
    max-width: 67em;
    margin-top: 10em;
  }
  #top-voice-main h3 {
    border: none;
    letter-spacing: inherit;
  }
  .top-voice-text-sp {
    display: flex;
    justify-content: center;
    margin-top: 7em;
  }
  .top-voice-text-sp h3 {
    font-size: 4em;
    width: 52rem;
  }
  .top-voice-text2-sp {
    margin: 0 auto;
    max-width: 52rem;
  }
  .top-voice-text2-sp p {
    font-size: 2.6rem;
    line-height: 1.83;
    margin-top: .8em;
  }
  #top-voice-main {
    height: auto;
  }
  .top-voice-sp .title-wrap {
    text-align: center;
  }
  .top-voice-button {
    position: absolute;
    margin-top: 1.7em;
    left: 0;
    right: 0;
    font-size: 2.8em;
    width: 40rem;
    height: 8rem;
  }
}
/*---------------------------------------------
 * Top LINEUP
 *---------------------------------------------*/
#top-lineup {
  background: #fff;
}
.lineup-grid1 img, .lineup-grid2 img, .lineup-grid4 img  {
  width: 18em;
  height: auto;
}
.lineup-grid3 img {
  width: auto;
  height: 11.4em;
}
.lineup-img-grid {
  display: grid;
  max-width: 128.4em;
  grid-template-columns: repeat(4, minmax(20em, 30.6em));
  column-gap: 1em;
  justify-content: space-between;
  margin: 0 auto;
  margin-top: 5em;
}
.lineup-grid1, .lineup-grid2, .lineup-grid3, .lineup-grid4{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 17.2em;
}
.lineup-grid1 {
  background: url(images/top/top-image4.jpg);
}
.lineup-grid2 {
  background: url(images/top/top-image6.jpg);
}
.lineup-grid3 {
  background: url(images/top/top-image5.jpg);
}
.lineup-grid4 {
  background: url(images/top/top-image8.jpg);
}
.top-lineup-wid {
  margin: 0 auto;
  margin-top: 10em;
  max-height: 40em;
  display: flex;
}
.lineup-p-wid {
  margin: 0 auto;
  margin-top: 10em;
  max-width: 160em;
  max-height: 40em;
  display: flex;
  justify-content: flex-end;
  background: url(images/top/top-image7.jpg);
  background-repeat: no-repeat;
}
.top-lineup-showroom h3 {
  font-size: 3.2em;
  letter-spacing: 0.2em;
  font-family: 'Lato', sans-serif;
  font-weight: normal;
}
.top-lineup-showroom {
  padding-top: 8.6em;
  color: #fff;
  background: var(--black);
  width: 73em;
  height: 40em;
  text-align: center;
  letter-spacing: 0.4em;
  z-index: 2;
}
.top-lineup-showroom-textbox {
  position: relative;
}
.top-lineup-showroom-textbox p {
  font-size: 1.1em;
  margin-top: 0.5em;
  letter-spacing: 0.3em;
}
.top-lineup-showroom-textbox p:after {
  content: '';
  position: absolute;
  left: 50%;
  top: 4.2em;
  display: inline-block;
  width: 3.68em;
  height: 0.1em;
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translate(-50%);
  background-color: #fff;
}
.top-lineup-showroom-textbox-text {
  font-size: 1.4em;
  margin-top: 5.5rem;
  letter-spacing: normal;
  margin-bottom: -.5em;
  line-height: 25px;
  padding: 0 2.9em;
  text-align: left;
  /* padding: 0 4em; */
}
.top-lineup-showroom-textbox a {
  color: #fff;
}
.top-lineup-box {
  width: 20rem;
  height: 4rem;
  border: 1px solid #fff;
  margin: 0 auto;
  margin-top: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.4em;
  letter-spacing: 0px;
  font-weight: normal;
}
@media (max-width: 48em) {
  .lineup-img-grid {
    display: block;
    max-width: 67em;
    margin: 0 auto;
    margin-top: 4em;
  }
  .lineup-grid1, .lineup-grid2, .lineup-grid3, .lineup-grid4 {
    width: 100%;
    height: 37.6em;
    margin-top: 1em;
  }
  .lineup-grid1 {
    background: url(images/top/sp/image4.jpg);
    background-size: cover;
  }
  .lineup-grid2 {
    background: url(images/top/sp/image6.jpg);
    background-size: cover;
    margin-top: 8em;
  }
  .lineup-grid3 {
    background: url(images/top/sp/image5.jpg);
    background-size: cover;
    margin-top: 8em;
  }
  .lineup-grid4 {
    background-size: cover;
    margin-top: 8em;
  }
  .lineup-grid1 img, .lineup-grid2 img, .lineup-grid4 img{
    width: 39.3em;
    height: auto;
  }
  .lineup-grid3 img {
    width: auto;
    height: 24.7em;
  }
  .top-lineup-wid {
    margin: 0 auto;
    margin-top: 20em;
    display: block;
    justify-content: center;
    background: none;
    background-repeat: no-repeat;
  }
  .top-lineup-showroom {
    padding-top: 6em;
    padding-bottom: 8.5em;
    color: #fff;
    background: #333;
    width: 100%;
    height: auto;
    text-align: center;
    letter-spacing: 0.4em;
    margin: 0 auto;
  }
  .top-lineup-image-sp {
    width: auto;
    margin: 0 auto;
  }
  .top-lineup-wid {
    padding: 0 4em;
    max-height: none;
  }
  .top-lineup-showroom h3 {
    font-size: 32px;
  }
  .top-lineup-showroom-textbox p {
    display: none;
  }
  .top-lineup-showroom-textbox-text {
    font-size: 2.4em;
    margin-top: 1em;
  }
  .top-lineup-box {
    margin-top: 1.8em;
    width: 40rem;
    height: 8rem;
    font-size: 2.8em;
  }
}
/*---------------------------------------------
 * BLOG
 *---------------------------------------------*/
.top-news-blog-list-ul {
  margin-top: 4rem;
  font-size: 1.4em;
}
.top-news-blog-list-li {
  display: grid;
  grid-template-columns: auto 1fr;
  border-bottom: 1px dashed #ccc;
  margin-top: 2rem;
  padding-bottom: 2rem;
  column-gap: 3.8rem;
}
.top-blog-img {
  width: 9rem;
  height: 9rem;
}
.top-blog-list-title {
  margin-top: 0.5em;
}
@media (max-width: 48em) {
  .top-blog-img {
    width: 18rem;
    height: 18rem;
  }
}
/*---------------------------------------------
 * NEWS LIST
 *---------------------------------------------*/
.news-l-list {
  display: grid;
  grid-template-columns: 20em 1fr auto;
  height: 7.4em;
  border-top: 1px solid #ccc;
  align-items: center;
}
.news-l-list:last-child {
  border-bottom: 1px solid #ccc;
}
.news-l-date {
  font-size: 1.4em;
  padding-left: 2em;
}
.news-l-title {
  font-size: 1.4em;
  font-weight: 100;
  padding-right: 4em;
  color: #333;
}
.news-l-list:hover .news-l-title {
  color: #0073bc;
}
.news-l-list:hover {
  background: #deeffa;
}
.news-l-arrow {
  content: "";
  background-image: url("images/news/news-arrow.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: middle;
  padding: 0 1.5em;
  position: absolute;
  width: 1.6em;
  height: 1.6em;
  right: 0;
}
.news-l-list a{
    display: inline-block;
    width: 100%;
}
.news-l-list:hover .news-l-arrow {
  content: "";
  background-image: url("images/news/news-arrow_h.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: middle;
  padding: 0 1.5em;
  position: absolute;
  width: 1.6em;
  height: 1.6em;
  right: 0;
}

 .aos-animate .expand::after {
    bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    pointer-events: auto;
    z-index: 1;
 }
@media (max-width: 48em) {
  .news-l-list {
    display: block;
    height: 100%;
    padding: 3em 2em;
  }
  .news-l-date, .news-l-title {
    font-size: 2.6rem;
    padding: 0;
  }
}
/*---------------------------------------------
 * NEWS ARCHIVE
 *---------------------------------------------*/
#archive-main.news {
  padding: 0 var(--sidep);
  box-sizing: content-box;
}
/*---------------------------------------------
 * NEWS SINGLE
 *---------------------------------------------*/
#news-header {
  border-bottom: .2rem solid #ccc;
  padding-bottom: 0 var(--sidep) 2em;
}
#news-header h1 {
  font-size: 3rem;
}
#news-header p {
  margin: 0;
  margin-bottom: 1.5rem;
  font-size: 1.4rem;
  font-weight: normal;
}
.news-s {
  padding-left: 0;
}
#news-entry {
  padding: 0 var(--sidep);
}
#news-entry .read-more {
  margin-top: 10em;
}
@media (max-width: 48em) {
  #news-header h1 {
    font-size: 4.5rem;
  }
  #news-header .date {
    font-size: 2.9rem;
  }
}
/*---------------------------------------------
 * SINGLE IMAGE HOUSE
 *---------------------------------------------*/
.image-house-head {
  font-size: 3em;
  font-weight: normal;
  text-align: center;
}
.image-house-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(35em, 1fr));
  grid-column-gap: 4em;
  grid-row-gap: 4em;
}
.image-house-grid2 {
  margin-top: 4em;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-row-gap: 5em;
  align-items: center;
}
.ih-img1 {
  grid-row: 1/3;
}
.ih-grid2-text1, .ih-grid2-text3 {
  margin-left: 4em;
}
.ih-grid2-text2 {
  margin-right: 4em;
}
#image-house-main h3 {
  font-size: 2.4em;
  font-weight: normal;
}
#image-house-main p {
  font-size: 1.6em;
}
@media (max-width: 48em) {
  #image-house-main p {
    font-size: 2.9em;
    margin-top: .2em;
  }
  .image-house-head {
    font-size: 4.5em;
    text-align: left;
  }
  #image-house-main h3 {
    font-size: 3.6em;
  }
  .image-house-grid2 {
    display: block;
  }
  .ih-grid2-text1, .ih-grid2-text2, .ih-grid2-text3 {
    margin: 0;
    margin-top: 2em;
  }
  .ih-img5, .ih-img6 {
    margin-top: 4em;
  }
}
/*---------------------------------------------
 * SINGLE FIRST
 *---------------------------------------------*/
.first-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30.6em, 1fr));
  grid-column-gap: 4em;
  grid-row-gap: 4.3em;
}
.first-head-m {
  margin-top: 9.1em;
}
.formodal {
  cursor:pointer;
  height:82%;
}
.first-title {
  font-size: 1.6em;
  font-weight: normal;
  margin-top: 1.5rem;
}
#first-main a {
  color: #333;
  display: inline-block;
}
.page-template-page-first-p3 #first-main p, .page-template-page-first-p4 #first-main p, .page-template-page-first-p5 #first-main p {
  line-height: 3rem;
  font-weight: normal;
}
@media (max-width: 48em) {
  #first-main p {
    margin-top: 2rem;
    line-height: 2;
  }
  .first-grid {
    display: block;
  }
  .first-grid img {
    margin-top: 4em;
  }
  .formodal {
    margin-top:4em;
  }
  .first-title {
    font-size: 3.6em;
  }
  .modalcover.-active .mil-embed-XbYdRo{
    padding-bottom: 56.25% !important;
  }

  .works-entry-list-header .modal-window .modalcover .mil-embed-XbYdRo {
    width: 100% !important;
  }
}
/*---------------------------------------------
 * SINGLE FIRST P
 *---------------------------------------------*/
#first-p {
  padding: 0 var(--sidep);
}
.first-p-title {
  font-size: 3em;
  font-weight: normal;
  text-align: center;
}
.first-p-title-button {
  display: inline-block;
  margin-top: 2rem;
  font-size: 1.4em;
  font-weight: normal;
  background: #333;
  border-radius: 4em;
  color: #fff;
  text-align: center;
  padding: 1rem 2rem;
}
.first-p-text {
  font-size: 1.6em;
  line-height: 4rem;
  margin-top: 3.5rem;
}
.first-p-grid, .first-p-grid2 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(34em, auto));
  grid-column-gap: 6em;
  grid-row-gap: 4em;
  align-items: center;
}
.first-p-grid2 {
  grid-column-gap: 4em;
  grid-row-gap: 5em;
  align-items: flex-start;
}
.first-p-row-grid {
  display: grid;
  grid-row-gap: 5em;
  margin-top: 9rem;
}
#first-main .first-p-row-grid p {
  line-height: 2.2em;
}
.first-p-ingrid {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-column-gap: 6em;
}
.first-p-ingrid3 {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-column-gap: 6em;
}
.first-p-ingrid1 {
  display: grid;
  grid-template-columns: 38em auto;
  grid-column-gap: 6em;
}
.first-p-ingrid2 {
  display: grid;
  grid-template-columns: auto 38em;
  grid-column-gap: 6em;
}
.first-linkbox {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(14em, auto));
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  justify-content: center;
}
.page-template-page-first-p2 .first-linkbox {
  margin-top: 9.4em;
}
.first-link {
  font-size: 1.4em;
  font-weight: normal;
  border: 1px solid #b7b7b7;
  width: 14rem;
  height: 14rem;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background: #fff;
}
a .first-link {
  color: #999;
}
.active .first-link {
  background-image: url(images/first/img6.png);
  background-position: 97% 97%;
  background-repeat: no-repeat;
}
.first-p-text14 {
  font-size: 1.4em;
  line-height: 3rem;
}
.first-p-h2 {
  font-size: 3em;
  line-height: 5rem;
  font-weight: normal;
}
.first-p2-e2 {
  margin-top: 8.2em;
}
.first-p2-e2m {
  margin-top: 4.3em;
}
.first-p-hsub {
  margin-top: 1.2rem;
  text-align: center;
  font-size: 1.4em;
}
.first-p-grid3 {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-column-gap: 1.5em;
  margin-top: 2em;
}
.first-p-icon {
  width: 6rem;
  height: 6rem;
}
.first-p-text3 {
  font-size: 2em;
  line-height: 3rem;
  font-weight: normal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.first-p-text4 {
  font-size: 1.6em;
  line-height: 3rem;
}
.first-p-list {
  margin-top: 1.5rem;
  margin-left: 7.6rem;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-column-gap: .6em;
  align-items: center;
  font-size: 1.4em;
  line-height: 3rem;
  font-weight: normal;
}
.first-p-grid4 {
  margin-top: 9rem;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-column-gap: 6em;
  grid-row-gap: 4em;
  align-items: center;
}
.first-p-zeh img {
  width: 12em;
}
.first-p-zeh-com {
  margin-top: 1.5rem;
  font-size: 1.6em;
  font-weight: normal;
}
.first-p-zeh-link {
  margin-top: 2.3rem;
  background: #00ab47;
  font-size: 1.8em;
  font-weight: normal;
  color: #fff;
  width: 34rem;
  height: 6rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.first-button {
  width: 34em;
  height: 6em;
}
.first-p4-button {
  margin-top: 4.1rem;
}
#first-main .first-button a {
  font-size: 1.8em;
  font-weight: normal;
  color: #fff;
}
.first-p-grid5 {
  display: grid;
  grid-template-columns: 40em 1fr;
  grid-column-gap: 6em;
}
.first-p5-pa-bo {
  padding-bottom: 1.5em;
}
.first-p-grid6 {
  display: grid;
  grid-template-columns: 1fr 40em;
  grid-column-gap: 6em;
}
#first-main .first-p2-t1 {
  margin-top: 2.7em;
  line-height: 2.2em;
}
#first-main .first-p2-t2 {
  margin-top: 8.4rem;
  line-height: 2.2em;
}
#first-main .first-p3-t1 {
  margin-top: 4rem;
  line-height: 3rem;
}
.first-p3-t2 {
  margin-top: 9.4rem;
}
.first-p4-text1 {
  margin-top: 4.3rem;
}
.first-p4-text2 {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
}
.first-p4-text3 {
  font-size: 1.6rem;
  margin-top: 9.2rem;
}
.first-p4-text4 {
  margin-top: 2rem;
  margin-bottom: -.5em;
}
@media (max-width: 48em) {
  #first-main .first-button a {
    font-size: 2.6em;
  }
  #first-main .first-p2-t1,
  #first-main .first-p2-t2,
  .page-template-page-first-p3 #first-main p,
  .page-template-page-first-p4 #first-main p,
  .page-template-page-first-p5 #first-main p {
    margin-top: 1.2em;
    line-height: 2;
  }
  .first-p4-text3 {
    font-size: 2.6rem;
  }
  .first-p-title {
    font-size: 4.5rem;
  }
  .first-p-h2 {
    font-size: 4rem;
  }
  .first-p-text {
    font-size: 3.2rem;
    text-align: left;
    line-height: normal;
  }
  .first-p-grid3 {
    margin-left: 5em;
  }
  .first-p-text3 {
    font-size: 3em;
    line-height: 3.5rem;
  }
  .first-p-title-button {
    font-size: 2.4em;
    width: 70%;
  }
  .first-p-list {
    font-size: 2.4em;
    margin-left: 5.5em;
  }
  .first-linkbox {
    grid-template-columns: repeat(auto-fit, minmax(21em, auto));
  }
  .first-link {
    font-size: 2.4em;
    width: 21rem;
    height: 21rem;
  }
  .first-p-hsub {
    font-size: 2.4em;
    text-align: left;
  }
  .first-p-zeh-com {
    font-size: 3.2em;
    text-align: left;
  }
  .first-p-zeh-link {
    font-size: 2.8em;
    width: 80%;
    height: 8rem;
  }
  .first-p-grid4 {
    display: block;
    padding: 0 3.5em;
  }
  .first-p-grid5, .first-p-grid6, .first-p-ingrid, .first-p-ingrid1, .first-p-ingrid2 {
    display: flex;
    flex-wrap: wrap;
  }
  .sp-order {
    order: -1;
  }
  .sp-order1 {
    order: 2;
  }
  #first-main .first-p-row-grid p {
    line-height: 2em;
  }
}
/*---------------------------------------------
 * SINGLE ABOUT P
 *---------------------------------------------*/
#about-main {
  padding: 0 var(--sidep);
}
#about-main a {
  color: #333;
}
.bg-f4 {
  background: #f4f4f4;
}
.bg-fff {
  background: #fff;
}
.about-p-head-wrap{
  max-width: 100em;
  margin: 0 auto;
  padding: 0 4em;
}
.about-p-head {
  background: #fff;
  border-radius: 1.5em;
  padding: 2.5rem 4rem 3.5rem;
}
.page-template-page-about-p2 .about-p-head {
  padding: 2.5rem 4rem 4rem;
}
.about-p-head p {
  margin-top: 0.8em;
  line-height: normal;
}
.page-template-page-about-p3 .about-p-head p {
  margin-top: 0.8em;
  line-height: 2.4rem;
}
.about-p-title {
  margin-top: 9rem;
  font-size: 3em;
  font-weight: normal;
  text-align: center;
}
.page-template-page-about-p2 #page-main {
  margin-top: 8rem;
}
.about-p-title-button {
  display: inline-block;
  margin-top: 2rem;
  font-size: 1.4em;
  font-weight: normal;
  background: #333;
  border-radius: 4em;
  color: #fff;
  text-align: center;
  padding: 1rem 2rem;
}
.about-p-row-grid {
  display: grid;
  grid-row-gap: 5em;
  margin-top: 5.5rem;
  padding: 0 4em;
  box-sizing: content-box;
}
.about-p4-row-grid {
  display: grid;
  grid-row-gap: 5em;
  padding: 0 4em;
  box-sizing: content-box;
}
.about-p3-row-grid {
  display: grid;
  grid-row-gap: 5em;
  margin-top: 5rem;
  padding: 0 4em;
  box-sizing: content-box;
}
.pa-to-50 {
  padding-top: 5rem;
}
.pa-bo-50 {
  padding-bottom: 5rem;
}
.pa-bo-100 {
  padding-bottom: 10rem;
}
.about-p-grid1, .about-p-grid2, .about-p-grid3, .about-p-grid4, .about-p-grid5 {
  display: grid;
  grid-template-columns: 40em auto;
  grid-column-gap: 4em;
  padding: 4rem;
}
.about-p-grid1 {
  height: 36em;
}
.page-template-page-about-p4 .about-p-grid1 {
  height: 35.4rem;
}
.about-p-grid1 p {
  margin-top: 0;
}
.page-template-page-about-p3 .about-p-grid1 {
  height: 35.4rem;
}
.about-p-grid2 {
  grid-template-columns: auto 40em;
}
.page-template-page-about-p2 .about-p-grid2 p {
  padding-bottom: 1rem;
}
.page-template-page-about-p1 .about-p-row-grid {
  grid-row-gap: 4.5rem;
  padding: 0 4em;
  box-sizing: content-box;
}
.about-p-grid2 p {
  margin-top: 0;
}
.about-p-grid4 {
  grid-template-columns: 49em auto;
}
.about-p-grid5 {
  grid-template-columns: auto 49em;
}
.about-p-ingrid {
  display: grid;
}
.about-p-h2 {
  font-size: 2.4em;
  line-height: 5rem;
}
.about-p3-h2 {
  font-size: 2.4em;
  line-height: 5rem;
  margin-top: 7.5rem;
  font-weight: normal;
}
.about-p-imgs1 {
  display: grid;
  grid-template-columns: auto auto;
  grid-column-gap: 1em;
  grid-row-gap: 1em;
}
.about-img1, .about-img7 {
  grid-row: 1/3;
}
.about-img6 {
  grid-column: 2/3;
  grid-row: 1/3;
}
.pa-bo-100 {
  padding-bottom: 10rem;
}
@media (max-width: 48em) {
  .about-p-grid1, .about-p-grid2, .about-p-grid4, .about-p-grid5 {
    display: flex;
    flex-wrap: wrap;
  }
  .about-p-grid1 {
    height: 100%;
  }
  .page-template-page-about-p3 .about-p-grid1 {
    height: 100%;
  }
  .about-p-grid4, .about-p-grid5 {
    justify-content: center;
  }
  .sp-order {
    order: -1;
  }
  #first-main .about-p-head p {
    margin-top: 0;
  }
  .about-p3-h2 {
    font-size: 3.5rem;
    margin-top: 2rem;
  }
  .about-p-title-button {
    font-size: 2.4em;
    width: 100%;
  }
}

/*---------------------------------------------
 * top-textblock
 *---------------------------------------------*/
.top-textblock {
    margin: 0 auto;
    padding: 0 4em;
}
.top-textblock .inner {
    margin-top: 9em;
}
.top-textblock .title,
.top-textblock .texts {
  text-align: center;
}
.top-textblock .title {
    font-size: 2.4em;
      line-height: 1.65;
}
.top-textblock .texts {
    margin-top: 1.2em;
    font-size: 1.4em;
    line-height: 2.85;
}

@media (max-width: 48em) {

  .top-textblock .inner {
    margin-top: 14em;
  }

  .top-textblock .title {
      font-size: 3.2em;
      line-height: 1.65;
      text-align: left;
  }
  .top-textblock .texts {
      margin-top: 1.5em;
      font-size: 2.6rem;
      line-height: 2;
      text-align: left;
  }
}

/*---------------------------------------------
 * Subpage Header
 *---------------------------------------------*/
#top-news-blog {
  margin-left: 0 4em;
  margin: 0 auto;
  padding: 0 4em;
}
.top-news-blog-box {
  display: grid;
  max-width: 100rem;
  grid-template-columns: 50% 50%;
  margin: 0 auto;
    margin-top: 8.5em;
}
#top-news-blog a {
  color: var(--black);
}
#top-news-blog a:hofer {
  color: var(--black);
}
#top-news-blog .top-news-blog-head-box a {
  color: #fff;
}
.top-news-blog-title {
  color: #333;
  font-size: 3em;
  font-weight: normal;
  /* letter-spacing: 0.1em; */
  font-family: 'Lato', sans-serif;
  letter-spacing: 0.2em;
  line-height: 0.7em;
}
.top-news-blog-left {
  padding-right: 4em;
  border-right: 1px solid #ccc;
}
.top-news-blog-right {
  padding-left: 4em;
}
.top-news-blog-head-box {
  display: grid;
  grid-template-columns: 1fr auto;
}
.top-news-blog-list {
  background: #333;
  width: 12rem;
  padding: 0.5rem;
  margin: auto 0;
  color: #fff;
  font-size: 1.2em;
  font-weight: normal;
  display: flex;
  justify-content: center;
  align-items: center;
}
.top-news-blog-title-sub {
  color: #333;
  font-size: 1.2em;
  margin-top: 1.2em;
}
@media (max-width: 48em) {
  #top-news-blog {
    display: block;
    margin: 0 auto;
    margin-top: 12em;
  }
  .top-news-blog-box {
    width: 100%;
    grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
  }
  .top-news-blog-left {
    padding: 0;
    border: none;
  }
  .top-news-blog-title {
    font-size: 6em;
  }
  .top-news-blog-title-sub {
    margin-top: 3.5rem;
    font-size: 2.4em;
  }
  .top-news-blog-list {
    width: 24rem;
    height: 6rem;
    font-size: 2.4em;
  }
  .top-news-blog-list-ul {
    margin-top: 8.5rem;
    font-size: 2.6em;
  }
  .top-news-blog-right {
    padding: 0;
    padding-top: 10em;
  }
}
/*---------------------------------------------
 * Subpage Header
 *---------------------------------------------*/
#subpage-header {
  position: relative;
  width: 100%;
}
#subpage-header > .img-wrap {
  height: 40em;
  position: relative;
  width: 100%;
}
#subpage-header > .img-wrap > img {
  height: 100%;
}
#subpage-title-wrap {
  left: 0;
  margin: 0;
  position: absolute;
  z-index: 3;
}
#subpage-title, #subpage-subtitle {
  color: #fff;
  line-height: 1;
  margin: 0;
  position: absolute;
  right: 50%;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}
#subpage-title {
  font-size: 3.2rem;
  font-family: 'Lato', sans-serif;
  letter-spacing: 0.2em;
  font-weight: normal;
  line-height: .8;
  text-align: center;
  top: 6.5em;
  width: 100%;
}
#subpage-subtitle {
  font-size: 1.2rem;
  top: 21em;
}
/* 下層 */
body:not(.home) #subpage-header {
  margin-top: 0;
}
/*---------------------------------------------
 * Breadcrumb
 *---------------------------------------------*/
#breadcrumb {
  background-color: #f4f4f4;
  height: 3.2em;
  padding: 0 var(--sidep);
  width: 100%;
}
#breadcrumb-list {
  height: 100%;
  white-space: nowrap;
}
#breadcrumb-list a {
  color: #333;
}
#breadcrumb-list > li {
  font-size: 1.2rem;
  line-height: 1;
}
#breadcrumb-list a:hover {
  opacity: .7 !important;
}
#breadcrumb-list > li:last-child {
  overflow-x: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#breadcrumb-list > li:not(:first-of-type)::before {
  content: "\3E";
  display: inline-block;
  margin: 0 .9em;
  text-decoration: none;
}
#breadcrumb-list a > .sp-br::before {
  content: normal;
}
/*---------------------------------------------
 * Pagination
 *---------------------------------------------*/
.pagination {
  margin-top: 10em;
}
#entry-list.works + .pagination {
  margin-top: 10em;
}
.pagination li {
  background-color: #fff;
  /*border: 1px solid #333;*/
  margin: 0 .2em;
}
.pagination a {
  -webkit-transition: background-color .3s ease-out;
  transition: background-color .3s ease-out;
}
.pagination a:hover {
  background-color: var(--black);
  color: #fff;
}
.pagination .page-numbers.current {
  background-color: var(--black);
  color: #fff;
}
.pagination a, .pagination span {
  border: 1px solid var(--black);
  color: var(--black);
  display: block;
  font-size: 1.5rem;
}
.pagination .page-numbers {
  text-align: center;
  height: 2.4em;
  line-height: 2.3em;
  width: 2.4em;
}
.pagination > ul > li > span:not(.page-numbers) {
  height: 2.4em;
  line-height: 2.3em;
  padding: 0 1em;
  white-space: nowrap;
}
.pagination > ul {
  margin: 0 auto;
}
/*---------------------------------------------
 * Page COMPANY
 *---------------------------------------------*/
.ggmap {
  width: 100%;
}
.company-grid {
  display: grid;
  grid-template-columns: 40em 1fr;
  grid-column-gap: 4em;
}
.company-grid2 {
  display: grid;
  grid-template-columns: 1fr 36em;
  grid-column-gap: 4em;
  margin-top: 9rem;
}
.company-top-box p {
  font-size: 1.6em;
  margin-top: 3rem;
  line-height: 1.9;
}
.company-top-box img {
  margin-top: 3rem;
  max-width: 24rem;
}
.company-top-box2 h2 {
  font-size: 3em;
  padding-bottom: 3rem;
  font-weight: normal;
}
.company-list {
  display: grid;
  grid-template-columns: 20rem 1fr;
  font-size: 1.4em;
}
.company-list div {
  border-top: 1px solid #ccc;
  padding: .87em 0;
  line-height: 3rem;
}
.company-map {
  margin-top: 7.8em;
}
.company-map h3 {
  font-size: 3rem;
  font-weight: normal;
}
.company-map div {
  margin-top: 1rem;
  font-size: 1.4rem;
  line-height: 2.3rem;
}
.company-map iframe {
  margin-top: 3em;
}
@media (max-width: 48em) {
  .page-template-company-php #post-main {
    padding: 4rem 0;
  }
  .single-company {
    padding: 0 var(--sidep);
  }
  .company-grid {
    display: block;
  }
  .company-top-box p {
    font-size: 2.9em;
    margin-top: 3rem;
  }
  .company-top-box img {
    max-width: 50%;
  }
  .company-grid2 {
    display: block;
  }
  .company-grid2 img {
    margin-top: 5em;
  }
  .company-top-box2 h2 {
    font-size: 4em;
  }
  .company-list {
    font-size: 2.4em;
    grid-template-columns: 15rem 1fr;
  }
}
/*---------------------------------------------
 * Page Privacy
 *---------------------------------------------*/
#privacy > .title {
  font-size: 2.4rem;
  line-height: 1;
}
#privacy > .desc {
  margin: .8em 0 -.45em;
}
#privacy-list li p {
  line-height: 2.1428571429em;
}
#privacy-list > li > .title {
  font-size: 2rem;
  line-height: 1;
  margin-top: 2.1875em;
  font-weight: 100;
}
/*#privacy-list > li > .title::before {
  background-color: var(--black);
  content: "\25A0";
  display: inline-block;
  height: 1em;
  margin-right: .2em;
  width: 1em;
}*/
#privacy-list > li > .title + .desc {
  margin: .6em 0 -.8em;
}
#privacy-list > li > .desc {
  margin-top: 1.6em;
  white-space: pre-line;
}
.pp-company-info {
  margin-top: 4.3rem;
  text-align: right;
  font-size: 1.4em;
}
.pp-company-info div {
  margin-top: 0.5em;
}
@media (max-width: 48em) {
  #privacy {
    padding: 0 var(--sidep);
  }
  .pp-company-info {
    font-size: 2.6em;
  }
}
/*---------------------------------------------
 * Archive WORKS
 *---------------------------------------------*/
#works-nav {
  height: 8em;
  background: #333;
  width: 100vw;
}
#works-nav-list {
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr auto auto auto auto auto auto auto;
  grid-column-gap: 3em;
  justify-content: center;
  align-items: center;
  height: 100%;
  text-align: end;
}
.works-nav-logo {}
#works-nav-list li a {
  color: #fff;
  font-size: 1.4em;
}
.works-nav-logo {
  width: 19em;
}
.works-box {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5em 1.5em;
  /* margin-top: 1.5em; */
  margin-top: 2em;
}
.build, .comp, .no-comp {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 5rem;
  text-align: center;
  background: #419BD7;
  color: #fff;
}
.build div, .comp div, .no-comp div {
  font-size: 1.5em;
  font-weight: normal;
}
.comp {
  background: #EB6100;
}
.no-comp {
  background: #ccc;
}
#works-archives .works-entry-list-header{
  background-color: #fff;
  padding: 0 var(--sidep);
}
#works-archives h1 {
  margin-top: 9rem;
  margin-bottom: 3.5rem;
  font-size: 3em;
  text-align: center;
  font-weight: normal;
}
#works-entry-list-wrap {
  background-color: #f4f4f4;
  border-top: 1px solid #f4f4f4;
  padding: 0 var(--sidep) 10em;
}


.colm-2-tes {
  -ms-grid-columns: 1fr 4% 1fr;
  grid-template-columns: repeat(auto-fill, minmax(35em, 1fr));
  -webkit-column-gap: 4%;
  -moz-column-gap: 4%;
  grid-row-gap: 4em;
  grid-column-gap: 4em;
}
.works-list-style {
  background: #fff;
  padding: 2em 2em 0 2em;
}
/* tag cloud */
#archive-tagcloud {
  padding: 0 var(--sidep);
  padding-top: 10em;
}
#archive-tagcloud > .inner > .title {
  background-color: var(--black);
  border-radius: 50%;
  color: #fff;
  font-size: 1.6rem;
  font-weight: normal;
  height: 4em;
  line-height: 1;
  margin: 0 1.25em 0 0;
  width: 4em;
}
.archive-tagcloud-list {
  height: 3.4em;
  overflow-y: hidden;
}
#modal-tag-wrap .archive-tagcloud-list {
  height: auto;
  overflow: visible;
}
#modal-tag-wrap .archive-tagcloud-list > li {
  height: 3.4em;
  margin-top: 1em;
}
.archive-tagcloud-list > li {
  height: 100%;
  margin: 0;
  min-width: 6.9em;
}
.archive-tagcloud-list > li:not(:last-of-type) {
  margin-right: 1em;
}
.archive-tagcloud-list > li > a {
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 1.5em;
  box-sizing: border-box;
  color: #333;
  font-size: 1.4rem;
  height: 100%;
  padding: 0.4em 0.8em 0.3em;
  -webkit-transition: background-color .3s ease, color .3s ease, border .3s ease;
  transition: background-color .3s ease, color .3s ease, border .3s ease;
}
.archive-tagcloud-list > li > a.active{
  background-color: var(--black);
  color: #fff;
  border: 1px solid var(--black);
}
.archive-tagcloud-list > li > a:hover {
  background-color: var(--black);
  border: 1px solid var(--black);
  color: #fff;
  opacity: 1;
}
.archive-tagcloud-list > li > a::before {
  content: "#";
}
.archive-tagcloud-list + .more-btn {
  background: none;
  border: none;
  color: var(--blue);
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1;
  margin-left: .5em;
  outline: none;
  position: relative;
}
.archive-tagcloud-list + .more-btn:hover {
  cursor: pointer;
}
.archive-tagcloud-list + .more-btn::before, .archive-tagcloud-list + .more-btn::after {
  background-color: var(--blue);
  content: "";
  height: .1428571429em;
  left: -.4em;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: .7142857143em;
}
.archive-tagcloud-list + .more-btn::after {
  -webkit-transform: translateY(-50%) rotate(90deg);
  transform: translateY(-50%) rotate(90deg);
}
/* works list */
#works-entry-list {
  margin-top: 4em;
}
#works-entry-list .img-wrap {
  height: 24.6em;
}
#works-entry-list a {
  display: block;
}
#works-entry-list .img-wrap > img {
  height: 100%;
}
#works-entry-list .title {
  color: var(--black);
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 1.7142857143;
  margin: 1.05em 0 -.4em;
}
.works-list-add {
  display: flex;
  /* margin-top: 3em; */
  margin-top: 1em;
  font-size: 1.5rem;
  color: #000;
}
.mappin img {
  width: 1.067em;
  margin-right: 1em;
}
@media (max-width: 48em) {
  #works-archives h1 {
    font-size: 4.5rem;
  }
  .works-list-params{
    font-size: 3em;
    line-height: 2em;
    /* margin-top: 0.5em; */
  }
  .works-list-add {
    font-size: 2.6rem;
  }
  .build div, .comp div, .no-comp div {
    font-size: 2.6rem;
  }
  .build, .comp, .no-comp {
    height: 7rem;
  }
}
/* モーダル */
#modal-tag-wrap {
  background-color: rgba(255, 255, 255, .7);
  height: 100vh;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  -webkit-transition: opacity .3s ease;
  transition: opacity .3s ease;
  width: 100vw;
  z-index: 20;
}
#modal-tag-wrap.open {
  opacity: 1;
  pointer-events: auto;
}
#modal-tag-wrap > .content {
  background-color: #f4f4f4;
  box-shadow: 0 0 3em #999;
  box-sizing: border-box;
  height: 70em;
  margin: 10em auto;
  max-height: 75vh;
  max-width: 90%;
  overflow: scroll;
  padding: 6em;
  width: 80em;
}
#modal-tag-wrap > .content > .title {
  border-bottom: 1px solid #ccc;
  font-size: 2.4rem;
  font-weight: normal;
  line-height: 1;
  margin: 0;
  padding-bottom: .8333333333em;
}
#modal-tag-wrap > .content > .archive-tagcloud-list {
  margin-top: 1em;
}
#modal-tag-wrap > .content > .close-btn {
  background-color: var(--black);
  border: 0;
  font-size: 1rem;
  height: 3em;
  outline: 0;
  right: 1.3em;
  top: 1.3em;
  width: 3em;
}
#modal-tag-wrap > .content > .close-btn:hover {
  cursor: pointer;
  opacity: .7;
}
#modal-tag-wrap > .content > .close-btn::before, #modal-tag-wrap > .content > .close-btn::after {
  background-color: #fff;
  content: "";
  height: .2em;
  position: absolute;
  right: 50%;
  top: 50%;
  width: 60%;
}
#modal-tag-wrap > .content > .close-btn::before {
  -webkit-transform: translate(50%, -50%) rotate(45deg);
  transform: translate(50%, -50%) rotate(45deg);
}
#modal-tag-wrap > .content > .close-btn::after {
  -webkit-transform: translate(50%, -50%) rotate(-45deg);
  transform: translate(50%, -50%) rotate(-45deg);
}
/*---------------------------------------------
 * Archive nav
 *---------------------------------------------*/
#archive-nav > ul {
  margin-bottom: 0;
}
#archive-nav > ul {
  height: 6em;
}
.archive-nav-list {
  border-left: 1px solid #333;
  height: 100%;
  width: 25%;
}
.archive-nav-list:last-child {
  border-right: 1px solid var(--black);
}
.archive-nav-list > a {
  box-sizing: border-box;
  color: #333;
  font-size: 1.6rem;
  font-weight: normal;
  height: 100%;
  text-align: center;
  webkit-transition: background-color .3s ease-out;
  transition: background-color .3s ease-out;
  padding: 0 .5em;
  width: 100%;
}
.archive-nav-list > a.active, .archive-nav-list > a:hover {
  background-color: #333;
  color: #fff;
}
.archive-nav-list:first-of-type > a {
  font-family: 'Lato', sans-serif;
  letter-spacing: 0.2em;
}
/*---------------------------------------------
 * Archive EVENTS
 *---------------------------------------------*/
#archive-events {
  padding: 0 var(--sidep);
  margin-top: 10em;
}
#archive-events-list {
  margin-bottom: -.3em;
  margin-top: 5em;
}
#archive-events-list .img-wrap {
  height: auto;
  position: relative;
}
#archive-events-list .img-wrap > img {
  height: 17em;
}
#archive-events-list .cat {
  color: #fff;
  font-size: 1.2rem;
  line-height: 1;
  font-weight: normal;
  height: 1.75em;
  left: 0;
  position: absolute;
  top: 0;
  padding: 0 1em;
  background-color: #333;
}
#archive-events-list .cat.event {
  background-color: var(--pink);
}
#archive-events-list .cat.news {
  background-color: var(--blue);
}
#archive-events-list a {
  display: block;
}
#archive-events-list .title {
  color: var(--black);
  font-weight: normal;
  margin-bottom: -.4em;
}
@media (max-width: 48em) {
  #archive-events-list .img-wrap > img {
    height: 100%;
  }
}
/*---------------------------------------------
 * Archive VOICE
 *---------------------------------------------*/
#voice-list-main {
  padding-bottom: 10em;
}
#voice-list-main a {
  color: #333;
}
#voice-list-main .pagination a:hover {
  color: #fff;
}
.voice-archives {
  margin-top: 10em;
  padding-top: 5em;
  background: #f4f4f4;
}
.voice-list-img img {
  width: 43.8em;
  height: 24.6em;
  object-position: center;
}
.voice-list-ul {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(35em, 1fr));
  grid-column-gap: 4em;
  grid-row-gap: 4em;
  justify-content: center;
}
.voice-list-li {
  background: #fff;
  padding: 2em 2em 5.2em;
  max-width: 48em;
  max-height: 38.7em;
  margin: 0 auto;
}
.voice-list-title {
  margin-top: 2rem;
  text-align: center;
  font-size: 1.6em;
  font-weight: normal;
}
.voice-list-add {
  margin-top: 1rem;
  text-align: center;
  font-size: 1.6em;
}
@media (max-width: 48em) {
  #voice-archive-main {
    padding: 0 var(--sidep);
    background: #f4f4f4;
  }
  .voice-list-ul {
    /*    display: block;*/
  }
  .voice-list-li {
    width: 100%;
    max-width: 100%;
    max-height: 100%;
    padding: 2em 2em 5.2em 2em;
  }
  .voice-list-img {
    height: calc((100vw - var(--sidep)*2 - 4em )/1.7790697674);
  }
  .voice-list-img img {
    width: 100%;
    height: 100%;
    object-position: center;
  }

  .voice-list-title {
    font-size: 3.6em;
  }
  .voice-list-add {
    font-size: 2.6em;
  }
}
/*---------------------------------------------
 * Single VOICE
 *---------------------------------------------*/
.voice-head-grid {
  background: #f4f4f4;
  display: flex;
  align-items: center;
  height: 40em;
}
.voice-s-thumbnail{
  position: relative;
  width: 46.25%;
  height: 40em;
}
.voice-s-thumbnail:before{
  padding-top: 54.0540540%;
  content: "";
  display: block;
}
.voice-s-thumbnail img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
}
.voice-s-title h1 {
  font-size: 3em;
  font-weight: normal;
}
.voice-s-add-name {
  margin-top: .6em;
  font-size: 1.6em;
}
.voice-s-1 {
  margin-top: 9em;
  display: grid;
  grid-template-columns: 46% 50%;
  column-gap: 4em;
}
.voice-s-1 img, .voice-s-3 img {
  margin-top: 1rem;
  width: 50em;
  height: 50em;
}
.voice-s-2 {
  margin-top: 8.8em;
}
.voice-s-3 {
  margin-top: 8.3em;
  display: grid;
  grid-template-columns: 50% 46%;
  column-gap: 4em;
}
.voice-s-3 img {
  margin-top: 0.5rem;
}
.voice-s-q {
  margin-top: 2.5rem;
  font-size: 2em;
  font-weight: normal;
}
.voice-s-q:first-child {
  margin-top: 0;
}
.voice-s-q3 {
  margin-top: 1.5rem;
  font-size: 2rem;
  font-weight: normal;
}
.voice-s-a {
  margin-top: 1rem;
  font-size: 1.4em;
  line-height: 1.75;
}
#voice-single .read-more {
  margin-top: 10em;
}
@media (max-width: 48em) {
  #voice-single {
    padding: 0 var(--sidep);
  }
  .voice-head-grid, .voice-s-1, .voice-s-3 {
    grid-template-columns: 1fr;
  }
  .voice-s-1 img, .voice-s-3 img {
    width: 100%;
    height: auto;
  }
  .voice-s-1 img {
    order: -1;
  }
  .voice-s-title {
    padding: 3em;
    margin-left: 0;
  }
  .voice-s-title h1 {
    font-size: 4em;
  }
  .voice-s-add-name {
    font-size: 2.8em;
  }
  .voice-s-q, .voice-s-q3 {
    font-size: 4rem;
   margin-top: 1.2em;
  }
  .voice-s-q:first-child {
    margin-top: 3rem;
  }
  .voice-s-a {
    margin-top: 2rem;
    font-size: 2.9em;
  }
}
/*---------------------------------------------
 * Single EVENTS
 *---------------------------------------------*/
#entry-events #entry-header {
  border: none;
}
.events-grid {
  display: grid;
  /* grid-template-columns: minmax(auto, 15em) 1fr; */
  grid-template-columns: auto 1fr;
  column-gap: 1.5em;
}
.entry-events-cat {
  font-size: 1.4em;
  background-color: #333;
  padding: 0.322em 0.5em;
  height: max-content;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 20em;
  -webkit-box-align: center;
  -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
          justify-content: center;
}
.entry-events-cat a {
  color: #fff;
  font-weight: normal;
}
.entry-events-days {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-column-gap: 1em;
  font-size: 2em;
  margin-top: 1em;
  align-items: center;
}
.entry-events-days img{
    width: 1.5em;
  }
#entry-header .title.cat {
  padding-left: 3.3em;
  text-indent: -3.3em;
}
#entry-header .title.cat::before {
  color: #fff;
  display: inline-block;
  font-size: .4666666667em;
  font-weight: normal;
  height: 2.1428571429em;
  line-height: 2.1428571429em;
  margin-right: 1.3em;
  text-align: center;
  text-indent: 0;
  -webkit-transform: translateY(-.4em);
  transform: translateY(-.4em);
  width: 5.7142857143em;
}
#entry-header .title.cat.event::before {
  background-color: var(--pink);
  content: "\30A4\30D9\30F3\30C8";
}
#entry-header .title.cat.news::before {
  background-color: var(--blue);
  content: "\30CB\30E5\30FC\30B9";
}
#entry-content #single-event-thumb img {
  width: 100%;
  max-height: 50em;
}
#event-summary-list {
  margin: 4em 0;
}
#entry-content #event-summary-list p {
  margin-top: 0;
}
#entry-content #event-summary-list > li:first-of-type > p {
  margin-top: -.6em;
}
#entry-events + .read-more {
  margin: 10em auto 0;
}
.mw-form {}
.mw-form input {
  width: 100%;
  padding: 1em;
}
.mw-flex {
  display: grid;
  grid-template-columns: 50% 50%;
  column-gap: 25px;
}
/* Booking CTA */
.bokking-form-radiobutton label {
  display: flex;
  justify-content: center;
  align-items: center;
}
#booking-cta {
  background-color: #f4f4f4;
  margin-top: 8em;
  padding: 6.8em var(--sidep) 6em;
  width: 100vw;
}
#booking-cta > section {
  text-align: center;
}
#booking-cta .title {
  color: var(--black);
  font-size: 3rem;
  line-height: 1;
  margin: 0;
}
#booking-cta > .inner > .desc {
  line-height: 2.14285714286;
  margin: 1.6em 0 -.6em;
  white-space: pre-line;
}
#booking-cta-content .tel-wrap {
  border-right: 1px solid #ccc;
  margin-right: 4em;
  padding: 2em 3.7em 2em 0;
}
#booking-cta-content .tel-wrap > p {
  line-height: 1;
  text-align: right;
}
#booking-cta-content .tel {
  color: #006cb2;
  font-size: 4rem;
  font-weight: normal;
  letter-spacing: .05em;
  line-height: 1;
  margin-top: 0;
  white-space: nowrap;
}
#booking-cta-content .tel::before {
  content: "";
  background-image: url(images/events/tel.png);
  background-repeat: no-repeat;
  background-size: cover;
  display: inline-block;
  height: .9em;
  margin-right: .24em;
  width: .9em;
}
#booking-cta-content .open {
  margin-top: .4em;
}
#booking-cta-content {
  margin-top: 3em;
}
#booking-cta-button {
  background-color: var(--pink);
  color: #fff;
  font-size: 3rem;
  font-weight: normal;
  height: 2em;
  width: 10em;
}
/*---------------------------------------------
 * tag, taxonomy archive common
 *---------------------------------------------*/
#archive-tax-head {
  margin-top: 5em;
}
#archive-tax-head > .title {
  font-size: 3rem;
  font-weight: normal;
  line-height: 1;
  margin-top: 0;
  text-align: center;
}
#archive-tax-head > .count {
  background-color: var(--black);
  border-radius: .96875em;
  color: #fff;
  font-size: 1.6rem;
  font-weight: normal;
  height: 1.9375em;
  line-height: 1;
  margin: 1.3em auto 0;
  width: 5em;
}
/*---------------------------------------------
 * Archive COLUMN
 *---------------------------------------------*/
#column-entry-list-wrap {
  background-color: #f4f4f4;
  border-top: 1px solid #ccc;
  margin-top: 5em;
  padding: 0 var(--sidep) 10em;
}
#column-entry-list {
  grid-auto-rows: 24em;
  -ms-grid-columns: 34% 28% 34%;
  grid-template-columns: 34% 28% 34%;
  margin-top: 5em;
}
#column-entry-list > li:nth-of-type(1) {
  grid-column: 1 / 3;
  grid-row: 1 / 3;
}
#column-entry-list > li:nth-of-type(2), #column-entry-list > li:nth-of-type(3) {
  grid-column: 3 / 4;
}
#column-entry-list > li:nth-of-type(2) {
  grid-row: 1 / 2;
}
#column-entry-list > li:nth-of-type(3) {
  grid-row: 2 / 3;
}
#column-entry-list > li:nth-of-type(4), #column-entry-list > li:nth-of-type(5) {
  grid-column: 1 / 2;
}
#column-entry-list > li:nth-of-type(4) {
  grid-row: 3 / 4;
}
#column-entry-list > li:nth-of-type(5) {
  grid-row: 4 / 5;
}
#column-entry-list > li:nth-of-type(6) {
  grid-column: 2 / 4;
  grid-row: 3 / 5;
}
#column-entry-list > li {
  background-color: #000;
  position: relative;
}
#column-entry-list > li > .img-wrap, #column-entry-list > li > .img-wrap > img {
  display: block;
  height: 100%;
}
#column-entry-list > li > .img-wrap > img {
  opacity: .8;
}
#column-entry-list > li .title-tag-wrap {
  bottom: 2em;
  left: 2em;
  padding-right: 2em;
  position: absolute;
  width: calc(100% - 2em);
}
#column-entry-list > li:nth-of-type(1) .title-tag-wrap, #column-entry-list > li:nth-of-type(6) .title-tag-wrap {
  bottom: 4em;
  left: 4em;
  padding-right: 4em;
  width: calc(100% - 4em);
}
#column-entry-list > li .title {
  color: #fff;
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.2;
  margin-bottom: -.15em;
}
#column-entry-list > li:nth-of-type(1) .title, #column-entry-list > li:nth-of-type(6) .title {
  font-size: 3rem;
}
#column-entry-list .archive-tagcloud-list {
  height: auto;
  margin-top: 1em;
  overflow-y: visible;
}
#column-entry-list .archive-tagcloud-list > li {
  margin-top: 1em;
  min-width: auto;
}
#column-entry-list .archive-tagcloud-list > li > a {
  border: none;
  border-radius: 1em;
  font-size: 1.2rem;
  height: 2em;
}
/*---------------------------------------------
 * Single COLUMN
 *---------------------------------------------*/
#entry-column + .read-more {
  margin: 5em auto 0;
}
#entry-header .date {
  line-height: 1;
}
#entry-header .date + .title {
  margin-top: .4em;
}
#entry-column-wrap .archive-tagcloud-list {
  height: auto;
  overflow: visible;
}
.column-single {
  padding: 0 var(--sidep);
  padding-top: 2em;
  padding-bottom: 10em;
  background: #f4f4f4;
}
/*---------------------------------------------
 * Single common
 *---------------------------------------------*/
#entry-header {
  border-bottom: .2em solid #ccc;
  padding: 0 var(--sidep) 2em;
}
#entry-header .title {
  font-size: 3rem;
  line-height: 1.3333333333;
  margin: -.2em 0;
  font-weight: normal;
}
#entry-content {
  margin-top: 3em;
}
#entry-content h2, #entry-content h3, #entry-content h4, #entry-content h5, #entry-content h6 {
  font-weight: normal;
  line-height: 1.5;
  margin-top: .5em;
}
#entry-content h2 {
  font-size: 2.8rem;
}
#entry-content h3 {
  font-size: 2.6rem;
}
#entry-content h4 {
  font-size: 2.4rem;
}
#entry-content h5 {
  font-size: 2.2rem;
}
#entry-content h6 {
  font-size: 2rem;
}
#entry-content p {
  line-height: 2.1428571429;
  margin-top: 2.8em;
  margin-bottom: -.5em;
}
#entry-content .works-entry-content p {
  line-height: 1.7142857143;
  margin-top: 1.2em;
  margin-bottom: -.5em;
}
.wp-block-image{
  margin-top: 4em;
  margin-bottom: 0;
}

#entry-content .wp-block-gallery + p {
  margin-top: 1.85em;
}
#entry-content > p:last-of-type {
  margin-bottom: -.7em;
}
#entry-content img {
  width: auto;
}
/*---------------------------------------------
 * Single WORKS
 *---------------------------------------------*/
#entry-works {
  margin-top: 10em;
}
#entry-works #entry-header {
  border: none;
}
#entry-content-wrap .archive-tagcloud-list {
  height: auto;
  margin-top: 2em;
  overflow: visible;
}
#entry-content-wrap .archive-tagcloud-list > li {
  height: 3.4em;
}
#entry-works + .read-more {
  margin: 5em auto 0;
}
#post-main .read-more.works{
  margin-top: 7.2em;
}
.works-head {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 1em;
}
#entry-works .warks-title {
  margin-top: 0.5em;
}
.build-single {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 10em;
  height: 3em;
  text-align: center;
  background: #419BD7;
  color: #fff;
}
.build-single div {
  font-size: 1.5em;
  font-weight: normal;
}
.build-comp {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 10rem;
  height: 3rem;
  text-align: center;
  background: #F16200;
  color: #fff;
  font-size: 1.6em;
  font-weight: normal;
}
.warks-img {
  margin-top: 5rem;
}
.add-single {
  display: flex;
  align-items: center;
}
.add-single div {
  font-size: 1.6rem;
}
.works-comment {
  margin-top: 2em;
}
.works-comment p{
  font-size: 1.4rem;
  margin-top: 1.7em;
  line-height: 2.1428571429;
}
.works-str-set {
  margin-top: 4em;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 1.7em;
  display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: center;
 -ms-flex-pack: center;
 justify-content: center;
}
.works-str-set div {
  font-size: 1.5rem;
  margin-right: 2.4em;
}
.works-str-set div:last-of-type{
    margin-right: 0;
}
#entry-content .works-entry-content h2 {
  border-left: 0.25em #333 solid;
  padding-left: 0.8em;
  font-weight: normal;
  margin-top: 2em;
  margin-bottom: 1em;
  font-size: 2.4rem;
}
#entry-content .works-entry-content h3 {
  background: #333;
  color: #fff;
  font-weight: normal;
  font-size: 1.6em;
  padding: 0.5em 1em;
  margin-top: 2em;
  margin-bottom: 3em;
}
#entry-content .blocks-gallery-caption {
  font-size: 1.5em;
}
.image-fit img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.warks-a1 {
  display: grid;
  grid-template-columns: 57.5% 37.5%;
  column-gap: 4em;
  margin-top: 6rem;
}
.warks-a1-1 {
  font-size: 2.4em;
  font-weight: normal;
}
.warks-a1-2 {
  margin-top: 0.2em;
}
.warks-a1-3 {
  margin-top: 1rem;
}
.warks-a1-2, .warks-a1-3 {
  font-size: 1.4em;
}
.warks-a2 {
  margin-top: 6rem;
  width: 80em;
}
.warks-a3, .warks-a4, .warks-a5 {
  margin-top: 4.2em;
  display: grid;
  grid-template-columns: 47.5% 47.5%;
  column-gap: 4em;
}
.warks-a5 div img {
  height: auto;
}
.warks-a1-img {
  width: 30em;
  height: 20em;
}
.warks-com {
  font-size: 1.4em;
  margin-top: 0.5em;
}
.warks-grid-500 {
  display: grid;
  grid-template-rows: 50em auto;
}
.warks-grid-380 {
  display: grid;
  grid-template-rows: 23em auto 23em auto;
}
.warks-380-230 {
  height: 23em;
}
.warks-380-230.bottom{
  margin-top: .5em;
}
.warks-com.bottom{
  margin-bottom: .55em;
}
@media (max-width: 48em) {
  .works-head {
    column-gap: 3em;
  }
  .build-single {
    padding: 0.5em;
    width: 100%;
    height: 5em;
  }
  .build-single div {
    font-size: 2.6rem;
  }
  .add-single div {
    font-size: 2.6rem;
  }
  .works-str-set div {
    font-size: 2.6em;
  }
  .works-str-set {
    display: block;
  }
  .build-comp {
    width: auto;
    height: auto;
    font-size: 2.6em;
    padding: 0.5rem;
  }
  #entry-content .works-entry-content h2 {
    font-size: 4rem;
  }
  #entry-content .works-entry-content h3 {
    font-size: 3.6em;
  }
  #entry-content .blocks-gallery-caption {
    font-size: 2.6em;
  }
  .warks-a1, .warks-a3, .warks-a4, .warks-a5 {
    grid-template-columns: 1fr;
  }
  .warks-a3, .warks-a4, .warks-a5 {
    margin-top: 0;
  }
  .warks-grid-500, .warks-grid-380 {
    grid-template-rows: auto;
  }
  .warks-a1-1 {
    margin-top: .6em;
    font-size: 4rem;
  }
  .warks-a1-2, .warks-a1-3 {
    font-size: 2.9em;
  }
  .warks-a1-img {
    width: 100%;
    height: auto;
  }
  .warks-a2 {
    margin-top: 5em;
    width: 100%;
  }
  .warks-com {
    font-size: 2.9em;
  }
  .warks-380-230, .warks-a5 div img {
    height: 100%;
    padding-top: 5em;
  }
  .warks-grid-500 {
    padding-top: 5em;
  }
  .warks-grid-380 div {
    padding-top: 5em;
  }
  .warks-grid-380:first-child {
    margin-top: 0;
  }
  .warks-a5 {
    display: block;
  }
}
/*---------------------------------------------
 * Page CONTACT
 *---------------------------------------------*/
#booking-form-header {
  padding: 0 3.5em;
}
#booking-form-header.contact .img-wrap {
  margin-top: 5em;
}
#booking-form-header .title {
  font-size: 2.4rem;
  font-weight: normal;
  line-height: 1.25;
  margin: -.15em 0;
}
#booking-form-header p {
  white-space: pre-line;
}
#booking-form-header p:last-of-type {
  margin-bottom: -.8em;
}
#booking-form-header .desc {
  margin: 10rem 0 0;
}
#booking-form-header .caution {
  color: #d04994;
  margin: .6em 0 0;
}
#booking-form-wrap {
  background-color: #f4f4f4;
  margin-top: 5em;
  padding: 0 3.5em 5em;
}
.booking-head {
  font-size: 2em;
}
.booking-form-block.personal > .booking-form-item {
  padding-top: 4em;
}
.booking-form-block.personal > .booking-form-item:nth-child(2) {
  padding-top: 1.5em;
}
.booking-form-block.personal p {
  font-size: 1.6rem;
}
/* ご希望 */
.input-fields.preferred {
  background-color: #fff;
  padding: 2em 2em 3em 3em;
}
.input-fields.preferred label {
  font-weight: normal;
}
.input-fields.preferred label > input {
  height: 1.2em;
  margin: .1em .7em 0 0;
  width: 1.2em;
}
.booking-form-item > .input-fields.preferred > p {
  line-height: 1.45;
}
.booking-form-item > .input-fields.preferred > p:first-of-type {
  margin-bottom: -.2em;
}
.booking-form-item > .input-fields.preferred > p > input[type="text"] {
  margin: 0 .4em 0 .575em;
  padding: .313em .6em;
  width: 3.75em;
}
.booking-form-item > .input-fields.preferred > p > input[type="text"]:first-of-type {
  margin-left: 1.15em;
}
/* 資料請求 */
.booking-form-block.personal .input-fields.doc p {
  font-size: 1.4rem;
  line-height: 1.25;
}
.booking-form-block.personal .input-fields.doc p > span {
  font-size: .8571428571em;
}
.input-fields.doc {
  background-color: #fff;
}
.input-fields.doc input {
  margin: .15em .6em 0 0;
}
.input-fields.doc {
  padding: 1.9em 1em 1.9em 2em;
}
.booking-form-block.personal .require::after {
  font-size: .75em;
}
.booking-form-block input[type="text"], .booking-form-block textarea, .booking-form-block select {
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: none;
  border: 1px solid #ccc;
  border-radius: 0;
  box-sizing: border-box;
  font-size: 1.6rem;
  margin: 0;
  outline: 0;
}
.booking-form-item input[type="text"] {
  padding: .813em .6em;
  width: 48.75%;
}
.input-fields > #address-1, .input-fields > #address-2 {
  margin-top: .625em;
  width: 100%;
}
.input-fields > #zipcode, .input-fields #prefecture-selectbox {
  width: 10em;
}
.input-fields #prefecture-selectbox {
  height: 100%;
  margin-left: 1.25em;
  padding: .813em .6em;
}
.input-fields select {
  background-color: #fff;
}
.select-box::after {
  content: "";
  background: url(images/form/arrow_down.png) no-repeat;
  background-size: .8em .7em;
  height: .7em;
  pointer-events: none;
  position: absolute;
  right: 1em;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: .8em;
}
.booking-form-item textarea {
  font-family: inherit;
  display: block;
  height: 10em;
  padding: .65em;
  width: 100%;
}
.booking-form-item > .input-fields {
  margin-top: .8em;
}
.booking-form-item > .inquiry-ul{
  display: flex;
  gap: 20px;
  margin-top: .8em;
  margin-bottom: 4em;
}
.booking-form-item > .inquiry-ul > .list{
  display: flex;
  align-items: center;
  font-size: 14px;
  gap: 10px;
}


.booking-form-block.privacy-notes {
  background-color: #e0e0e0;
  margin-top: 4em;
  padding: 2em;
}
#submit-btn {
  background-color: #0094cc;
  border: none;
  color: #fff;
  display: block;
  font-size: 1.6rem;
  font-weight: normal;
  height: 2.5em;
  line-height: 2.5em;
  margin: 3.125em auto 0 auto;
  text-align: center;
  width: 12.5em;
}
.submit-note {
  margin: 1.1em 0 -.4em;
  text-align: center;
}
.submit-note > span {
  color: #0094cc;
}
.booling-radio-grid {
  display: grid;
  grid-template-columns: auto auto 1fr;
  border: 1px solid #d04994;
  font-size: 1.6em;
  background: #fff;
}
.booking-radio {
  width: 11rem;
  height: 5.6rem;
  background: #d04994;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
.bokking-form-radiobutton {
  display: flex;
  align-items: center;
  margin-left: 1.2em;
}
.bokking-form-radiobutton:last-of-type {
  margin-left: 2em;
}
.bokking-form-radiobutton span {
  margin-left: 0.3em;
}
.booling-radio-grid input {}

@media (max-width: 48em) {
  .booking-radio {
    font-size: 3.2rem;
    width: auto;
    height: auto;
    padding: 1rem;
  }
  .bokking-form-radiobutton {
    font-size: 2.6rem;
  }
}
/*---------------------------------------------
* Single LINEUP
*---------------------------------------------*/
#entry-lineup #entry-header {
  border: none;
}
#entry-lineup h2 {
  font-size: 4rem;
  font-family: 'Lato', sans-serif;
  font-weight: normal;
  letter-spacing: 0.2em;
}
.single-lineup-head {
  width: 100em;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-template-rows: 8em;
  margin: 0 auto;
}
.single-lineup-head a:first-child {
  border-left: 1px solid #333;
}
.single-lineup-head a {
  border-right: 1px solid #333;
}
.sub-title-cu {
  background: #333;
  height: 100%;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.8em;
  font-weight: normal;
}
.sub-title {
  height: 100%;
  color: #333;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.8em;
  font-weight: normal;
  font-family: 'Lato', sans-serif;
  letter-spacing: 0.2em;
}
@media (max-width: 48em) {
  .single-lineup-head {
    width: 100%;
    display: none;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 8em;
    margin: 0 auto;
  }
  #entry-lineup p {
    line-height: 2;
  }
}
/*---------------------------------------------
* Single TRETTIO
*---------------------------------------------*/
.tr-area-grid {
  margin-top: 10em;
  display: grid;
  grid-template-columns: repeat(2, minmax(auto, 48em));
  grid-column-gap: 4em;
}
.tr-p1-area-grid {
  margin-top: 7em;
  display: grid;
  grid-template-columns: repeat(2, minmax(auto, 48em));
  grid-column-gap: 4em;
}
.tr-p1-area-grid img {
  margin-top: 1em;
}
.tr-area-grid2 {
  margin-top: 10em;
  display: grid;
  grid-template-columns: repeat(2, minmax(auto, 56em));
  grid-column-gap: 4em;
}
.tr-area-grid3 {
  margin-top: 8em;
  display: grid;
  grid-template-columns: repeat(2, minmax(auto, 56em));
  grid-column-gap: 4em;
}
.tr-area-grid3 p {
  margin: 0;
}
.tr-area-grid3 img {
  padding-top: 1rem;
}
.tr-area-grid img {
  max-width: 48em;
  max-height: 64em;
}
.tr-area-grid2 img {
  max-width: 40em;
  max-height: 30em;
}
/*.tr-head {
  font-size: 3.6em;
  font-weight: 700;
}*/
.tr-head {
  font-size: 3.6em;
  font-weight: normal;
  line-height: 4.8rem;
}
.tr-com {
  margin-top: 2.5rem;
  font-size: 1.6rem;
  line-height: 3rem;
}
.tr-head2 {
  margin-top: 10rem;
  text-align: center;
  font-size: 3.6em;
  font-weight: normal;
}
.tr-head3 {
  margin-top: 7rem;
  text-align: center;
  font-size: 3em;
  font-weight: normal;
  letter-spacing: 0.1em;
}
/*.tr-com {
  margin-top: 4rem;
  font-size: 1.6em;
  line-height: 2.8rem;
}*/
.tr-com3 {
  font-size: 1.6em;
  line-height: 2.8rem;
}
.tr-grid {
  display: grid;
  grid-template-rows: auto auto;
}
.tr-line-area {
  background: #f4f4f4;
  margin-top: 10em;
  padding-bottom: 10em;
}
.lineup-menu {
  padding: 0 4rem;
}
.page-template-lineup-tbdac .tr-line-area {
  padding-bottom: 9.4rem;
}
.tr-line-area {
  padding-bottom: 0;
}
.tr-line-menu {
  display: grid;
  grid-template-columns: auto auto auto auto;
  width: 68rem;
  font-size: 2.4em;
  font-weight: normal;
  text-align: center;
  margin: 0 auto;
  padding-top: 4rem;
  letter-spacing: 0.3rem;
}
.tr-line-menu {
  padding-top: 3rem;
}
.page-template-lineup-trettio-grad .tr-line-menu {
  padding-top: 3.2rem;
}
.tr-line-menu a {
  color: #668d9b;
  font-family: 'Lato', sans-serif;
  font-weight: normal;
  letter-spacing: 0.2em;
}
.tr-box, .tr-box2, .tr-box3 {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #668d9b;
  height: 6rem;
  text-align: center;
  color: #fff;
  font-size: 4em;
  font-weight: normal;
  margin-top: 3.3rem;
  letter-spacing: 0.1em;
}
.tr-box2 {
  margin-top: 6rem;
}
.page-template-lineup-trettio-grad .tr-box {
  margin-top: 4.7rem;
}
.tr-box2 {
  margin-top: 5.8rem;
}
.tr-box3 {
  background: #333;
}
.page-template-lineup-tbdac .tr-box3 {
  padding-left: 12rem;
}
.tr-box-text {
  font-size: 1.6rem;
  font-weight: normal;
  letter-spacing: normal;
}
.tr-img {
  display: grid;
  grid-template-columns: auto auto;
  max-width: 100em;
  column-gap: 4em;
  grid-gap: 3.6em;
  margin: 0 auto;
  margin-top: 6em;
}
.tr-texbox {
  max-width: 48em;
}
.tr-text1 {
  font-size: 2.4em;
  font-weight: normal;
  margin-top: 1.5rem;
}
.tr-text2 {
  font-size: 1.4em;
  margin-top: 1rem;
}
.tr-cadbox {
  max-width: 74em;
  display: grid;
  grid-template-columns: auto auto;
  grid-column-gap: 6em;
  grid-row-gap: 6em;
  margin: 0 auto;
  margin-top: 6em;
}
.tr-title {
  color: #fff;
  font-size: 1.6em;
  height: 4rem;
  text-align: center;
  background: #999999;
  font-weight: normal;
  display: flex;
  justify-content: center;
  align-items: center;
}
.tr-cadbox img {
  margin-top: 5em;
}
.tr-data {
  font-size: 1.6em;
  margin-top: 6rem;
  text-align: center;
}
.tr-4img {
  margin: 0 auto;
  margin-top: 6em;
  width: 94.6em;
}
.tr-img2 {
  margin: 0 auto;
  margin-top: 6em;
  max-width: 100em;
}
.tr-img2.valo{
  margin: 0 auto;
  margin-top: 0;
  padding-top: 6em;
  max-width: 100em;
}
.tr-title2, .tr-sub-title2 {
  margin-top: 5.5rem;
  font-size: 3.6em;
  font-weight: normal;
  color: #668d9b;
}
.tr-p1-title2 {
  margin-top: 8.2rem;
  font-size: 3.6em;
  font-weight: normal;
  color: #668d9b;
}
.tr-sub-title2 {
  margin-top: 0;
  font-size: 2em;
}
.tr-com2 {
  margin-top: 4rem;
  font-size: 1.4em;
}
.tr-com4 {
  margin-top: 1.4rem;
}
.tr-com5 {
  margin-top: 2.7rem;
  font-size: 1.4em;
}
.tr-com6 {
  margin-top: 3.5rem;
  font-size: 1.4em;
}
.tr-com7 {
  margin-top: 2.7rem;
  font-size: 1.4em;
}
.tr-com-f14 {
  margin-top: 2.5rem;
}
.tr-bottom {
  margin-top: 9em;
  padding-top: 10em;
  background: #fff;
}
.tr-title-in {
  margin-top: 4rem;
  font-size: 2.4em;
  color: #668d9b;
  font-weight: normal;
}
.tr-title-in2 {
  margin-top: 2rem;
  font-size: 1.6em;
  font-weight: normal;
}
.tr-title-in3 {
  margin-top: 3rem;
  font-size: 2.4em;
  color: #668d9b;
  font-weight: normal;
}
.tr-img3, .tr-img3-2, .tr-img3-3 {
  margin-top: 2em;
  display: grid;
  grid-template-columns: repeat(3, minmax(auto, 31em));
  justify-content: space-between;
  grid-column-gap: 1em;
}
.tr-img3-2 {
  margin-top: 10em;
}
.tr-img3-3 {
  margin-top: 1rem;
}
.bdac-button {
  margin-top: 1.7rem;
  background: #333;
  font-size: 1.4em;
  text-align: center;
  color: #fff;
  font-weight: normal;
  width: 30rem;
  height: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.page-template-lineup-tbdac .bdac-button {
  margin-top: 1.2rem;
}
@media (max-width: 48em) {
  .tr-p1-area-grid, .tr-area-grid3 {
    display: block;
  }
  .tr-area-grid3 .tr-grid {
    margin-top: 4rem;
    grid-row-gap: 4rem;
  }
  .lineup-p-wid {
    display: block;
    max-height: 100%;
  }
  .bdac-button {
    margin-top: 4rem;
    font-size: 2.6em;
    width: auto;
    padding: 3rem 5rem;
  }
  .tr-head3 {
    font-size: 4.5rem;
  }
  .tr-img3-2 {
    display: block;
    margin-top: 0;
  }
  .tr-img3-2 img {
    margin-top: 7rem;
  }
  .tr-title-in {
    font-size: 4rem;
  }
  .tr-title-in2 {
    font-size: 4rem;
  }
  .tr-line-menu a {
    font-size: 4.5rem;
  }
  .page-template-lineup-tbdac .tr-box3 {
    padding-left: 2rem;
  }
  .tr-com5, .tr-com6, .tr-com7 {
    font-size: 2.9rem;
  }
  .tr-title-in3 {
    font-size: 3.6rem;
  }
}
/*スライダーslic*/
.tr-slic {
  margin-top: 5.5em;
  position: relative;
}
.page-template-lineup-trettio-grad .tr-slic {
  margin-top: 6.3rem;
  position: relative;
}
.next-arrow2, .prev-arrow2 {
  position: absolute;
  width: 1.9em;
  height: 3.5em;
  top: 46%;
  z-index: 1;
  cursor: pointer;
}
.next-arrow2 {
  right: -4em;
}
.prev-arrow2 {
  left: -4em;
}
.slick-js a {
  color: #333;
}
.slick-dots {
  bottom: -3.5em;
}
.slick-dots li {
  margin: 0;
}
.slick-dots li button:before {
  font-size: 10px;
  color: #668d9b !important;
}
@media (max-width: 48em) {
  .tr-line-area {
    padding: 0 var(--sidep);
    padding-bottom: 5rem;
  }
  .tr-area-grid {
    display: block;
  }
  .tr-area-grid img {
    max-width: 100%;
    max-height: 100%;
  }
  .tr-head {
    margin-top: 1.3em;
    font-size: 4.5rem;
    line-height: 1.3333333333333;
  }
  .tr-head2 {
    font-size: 6rem;
  }
  .tr-com {
    margin-top: 4rem;
    line-height: 2;
    font-size: 2.9rem;
  }
  .tr-box-text {
    font-size: 0.4em;
  }
  .tr-line-menu {
    grid-template-columns: auto auto;
    grid-row-gap: 3rem;
    width: 100%;
    font-size: 2.4em;
  }
  .tr-box, .tr-box2, .tr-box3 {
    display: block;
    height: auto;
    padding: 1rem;
    font-size: 6rem;
    text-align: left;
  }
  .tr-img {
    display: block;
  }
  .tr-img img {
    margin-top: 6em;
  }
  .tr-texbox {
    max-width: 100%;
  }
  .tr-text1 {
    font-size: 3.6rem;
    line-height: 1;
  }
  .tr-text2 {
    font-size: 2.8em;
  }
  .tr-cadbox {
    display: block;
  }
  .tr-title {
    margin-top: 3em;
    font-size: 2.8em;
    padding: 4rem;
  }
  .tr-data {
    font-size: 3.5em;
    text-align: left;
  }
  .tr-4img {
    width: 100%;
  }
  .tr-sub-title2 {
    font-size: 2.6em;
  }
  .tr-com2 {
    font-size: 2.6em;
  }
  .tr-title2, .tr-sub-title2 {
    text-align: center;
    font-size: 4rem;
  }
  .tr-title2 {
    font-size: 6rem;
    text-align: center;
  }
  .next-arrow2 {
    right: 2em;
  }
  .prev-arrow2 {
    left: 2em;
  }
  .next-arrow2, .prev-arrow2 {
    position: absolute;
    width: 2.8em;
    height: 5.1em;
    top: 40%;
  }
  .tr-area-grid2 {
    display: block;
  }
  .tr-area-grid2 img {
    max-width: 100%;
    max-height: 100%;
  }
  .tr-com3 {
    margin-top: 2rem;
    font-size: 2.6em;
    line-height: normal;
  }
}

/*---------------------------------------------
 * tettio valo
 *---------------------------------------------*/

 .tr-valo-area-grid{
   margin-top: 8em;
 }

 .valo-text-area{
   max-width: 800px;
   margin: 9.2em auto 0;
 }

 .valo-tr-com{
   line-height: 2.5;
   font-size: 1.6rem;
 }

 .valo-tr-com.valo{
   margin-top: 3em;
 }

 .valo-2f-plan{
    margin-top: 14em;
 }

 .valo-2f-plan-title-img{
   width: 36.4em;
   margin: auto;
 }

 .valo-2f-plan-title-p{
   text-align: center;
   font-weight: normal;
 }

 .valo-2f-plan-title-p:after{
   content: "";
   display: block;
   width: 4rem;
   height: 2px;
   background-color: #333;
   margin: 2.5em auto;
 }

 .valo-2f-plan-desc{
   text-align: center;
 }

 .valo-floor{
   max-width: 800px;
   display: grid;
   grid-template-columns: 46.25% 46.25%;
   justify-content: space-between;
   -webkit-box-pack: justify;
   margin: 5em auto 0;
   position: relative;
 }

 .valo-floor-direction{
   position: absolute;
   left: -10em;
   top: 55%;
   width: 7.4em;
 }

 .valo-floor-desc{
   text-align: center;
   margin-top: 2.5em;
 }

 .valo-floor-1st{
   position: relative;
 }

 .valo-floor-2nd{
   position: relative;
 }

 .valo-2f-number-1{
  background-color: #668d9b;
  width: 1.7142857143em;
  height: 1.7142857143em;
  font-size: 1.4rem;
  color: #fff;
  position: absolute;
  bottom: 8em;
  left: 4em;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 3em;
  cursor: pointer;
  line-height: 1;
 }

 .valo-2f-number-2{
   background-color: #668d9b;
   width: 1.7142857143em;
   height: 1.7142857143em;
   font-size: 1.4rem;
   color: #fff;
   position: absolute;
   bottom: 5.6em;
    left: 9.2em;
   display: flex;
   align-items: center;
   justify-content: center;
   border-radius: 3em;
   cursor: pointer;
   line-height: 1;
 }

 .valo-2f-number-3{
   background-color: #668d9b;
   width: 1.7142857143em;
   height: 1.7142857143em;
   font-size: 1.4rem;
   color: #fff;
   position: absolute;
   bottom: 7.2em;
    left: 16.4em;
   display: flex;
   align-items: center;
   justify-content: center;
   border-radius: 3em;
   cursor: pointer;
   line-height: 1;
 }

 .valo-2f-number-4{
   background-color: #668d9b;
   width: 1.7142857143em;
   height: 1.7142857143em;
   font-size: 1.4rem;
   color: #fff;
   position: absolute;
   bottom: 12.5em;
    left: 13.8em;
   display: flex;
   align-items: center;
   justify-content: center;
   border-radius: 3em;
   cursor: pointer;
   line-height: 1;
 }

 .valo-2f-number-5{
   background-color: #668d9b;
   width: 1.7142857143em;
   height: 1.7142857143em;
   font-size: 1.4rem;
   color: #fff;
   position: absolute;
   bottom: 13.5em;
   left: 20.2em;
   display: flex;
   align-items: center;
   justify-content: center;
   border-radius: 3em;
   cursor: pointer;
   line-height: 1;
 }

 .valo-2f-number-6{
   background-color: #668d9b;
   width: 1.7142857143em;
   height: 1.7142857143em;
   font-size: 1.4rem;
   color: #fff;
   position: absolute;
   bottom: 18.5em;
   left: 12.6em;
   display: flex;
   align-items: center;
   justify-content: center;
   border-radius: 3em;
   cursor: pointer;
   line-height: 1;
 }

 .valo-2f-number-7{
   background-color: #668d9b;
   width: 1.7142857143em;
   height: 1.7142857143em;
   font-size: 1.4rem;
   color: #fff;
   position: absolute;
   bottom: 6.5em;
   left: 8.5em;
   display: flex;
   align-items: center;
   justify-content: center;
   border-radius: 3em;
   cursor: pointer;
   line-height: 1;
 }

 .valo-modal-bg{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.6);
    z-index: 100;
    padding: 0 4em;
 }

 .valo-modal-wrap{
   background-color: #fff;
    box-sizing: border-box;
    height: 100%;
    margin: 10em auto;
    max-height: calc(100vh - 20em);
    max-width: 1000px;
    overflow: scroll;
    padding: 3em 10em 0 10em;
    position: relative;
    scrollbar-width: none;
    width: 100%;
 }
 .valo-modal-wrap::-webkit-scrollbar{
  display: none;
 }

 .valo-modal{
   display: none;
 }

 .valo-modal.is-open{
   display: block;
 }

 .valo-modal[aria-hidden="false"] .valo-modal-bg {
  animation: mmfadeIn .3s cubic-bezier(0.0, 0.0, 0.2, 1);
}

.valo-modal[aria-hidden="true"] .valo-modal-bg {
  animation: mmfadeOut .3s cubic-bezier(0.0, 0.0, 0.2, 1);
}

.valo-modal[aria-hidden="false"] .valo-modal-wrap {
  animation: mmslideIn .3s cubic-bezier(0, 0, .2, 1);
}

.valo-modal[aria-hidden="true"] .valo-modal-wrap {
  animation: mmslideOut .3s cubic-bezier(0, 0, .2, 1);
}

.valo-modal-title{
  text-align: center;
}

.valo-modal-title-h3{
  color: #fff;
  font-weight: normal;
  font-size: 2rem;
  display: inline-block;
  background-color: #4e4e4e;
  padding: 0 1em;
  border-radius: 3em;
  font-size: 2.4rem;
}

.valo-modal-close{
  cursor: pointer;
  -webkit-transition: opacity .3s ease-out;
  transition: opacity .3s ease-out;
  font-size: 1rem;
  align-items: center;
  background-color: #666;
  border-radius: 50%;
  height: 4em;
  width: 4em;
  justify-content: center;
  position: sticky;
  right: 0;
  top: 3.5em;
  transform: translate(83.5em, -3.7em);
}

.valo-modal-close:after,
.valo-modal-close:before{
  content: "";
  background-color: #fff;
  height: 2px;
  position: absolute;
  right: 50%;
  top: 50%;
  width: 2em;
}

.valo-modal-close:before{
  transform: rotate(
45deg
) translate(0.65em, -0.75em);
}

.valo-modal-close:after{
    transform: rotate(
-45deg
) translate(0.75em, 0.65em);
}


.valo-modal-1-imgs{
  display: flex;
  justify-content: space-between;
}

.valo-modal-desc{
  padding-bottom: 4em;
}

.valo-modal-desc-h3{
  font-size: 2.4rem;
  margin-top: 1.8em;
}

.valo-modal-desc-p{
  margin-top: 1em;
  line-height: 2.1428571429;
}

.valo-floor-desc-box{
  border: 1px solid ;
  display: inline-block;
  padding: .5em;
}

.valo-floor-desc-box{
  border: 1px solid ;
  display: inline-block;
  padding: 1em 2.5em;
  margin-top: 3.4em;
}

.valo-floor-desc-box-p{
  margin-top: 0;
}

.valo-2f-plan-flat-img{
  max-width: 500px;
  margin: 5em auto 0;
  position: relative;
}

 .valo-2f-plan-direction{
   position: absolute;
   left: -15em;
   top: 50%;
   width: 7.4em;
 }

.valo-2f-plan-loft-img{
  max-width: 500px;
  margin: 10em auto 0;
}

.valo-floor-flat-desc-box{
    margin-top: 5em;
    text-align: center;
}

.valo-floor-flat-desc-box-p{
  border: 1px solid;
    display: inline-block;
    padding: .8em 2em;
    margin-top: 0;
}

.valo-gallery{
  margin-top: 14.5em;
}

.valo-gallery-block{
  max-width: 1000px;
  margin: 4em auto 0;
  display: grid;
  grid-template-columns: repeat(4, 22%);
  justify-content: space-between;
  column-gap: 4%;
  row-gap: 4em;
}

.valo-gallery-block-item{
  max-height: 22em;
  height: 100%;
}

.valo-gallery-block-item img{
  height: 100%;
}

.valo-gallery-title h2{
  font-size: 4rem;
  text-align: center;
  line-height: 1;
}

/* lightgallery */
.lg-toolbar .lg-icon {
    -webkit-transform: translate(-2em, 1em);
    transform: translate(-2em, 1em);
}

.lg-toolbar .lg-close:after, .lg-actions .lg-next:before, .lg-actions .lg-prev:after {
    font-size: 5rem;
}

.lg-actions .lg-prev {
    left: calc(50vw - 590px);
}

.lg-actions .lg-next {
    right: calc(50vw - 590px);
}

.tr-box2.valo{
  margin-top: 5em;
}


 /**************************\
  Basic Modal Styles
\**************************/

.modal {
  font-family: -apple-system,BlinkMacSystemFont,avenir next,avenir,helvetica neue,helvetica,ubuntu,roboto,noto,segoe ui,arial,sans-serif;
}

.modal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0,0,0,0.6);
  display: flex;
  justify-content: center;
  align-items: center;
}

.modal__container {
  background-color: #fff;
  padding: 30px;
  max-width: 500px;
  max-height: 100vh;
  border-radius: 4px;
  overflow-y: auto;
  box-sizing: border-box;
}

.modal__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.modal__title {
  margin-top: 0;
  margin-bottom: 0;
  font-weight: normal;
  font-size: 1.25rem;
  line-height: 1.25;
  color: #00449e;
  box-sizing: border-box;
}

.modal__close {
  background: transparent;
  border: 0;
}

.modal__header .modal__close:before { content: "\2715"; }

.modal__content {
  margin-top: 2rem;
  margin-bottom: 2rem;
  line-height: 1.5;
  color: rgba(0,0,0,.8);
}

.modal__btn {
  font-size: .875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: .5rem;
  padding-bottom: .5rem;
  background-color: #e6e6e6;
  color: rgba(0,0,0,.8);
  border-radius: .25rem;
  border-style: none;
  border-width: 0;
  cursor: pointer;
  -webkit-appearance: button;
  text-transform: none;
  overflow: visible;
  line-height: 1.15;
  margin: 0;
  will-change: transform;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  transition: -webkit-transform .25s ease-out;
  transition: transform .25s ease-out;
  transition: transform .25s ease-out,-webkit-transform .25s ease-out;
}

.modal__btn:focus, .modal__btn:hover {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

.modal__btn-primary {
  background-color: #00449e;
  color: #fff;
}



/**************************\
  Demo Animation Style
\**************************/
@keyframes mmfadeIn {
    from { opacity: 0; }
      to { opacity: 1; }
}

@keyframes mmfadeOut {
    from { opacity: 1; }
      to { opacity: 0; }
}

@keyframes mmslideIn {
  from { transform: translateY(15%); }
    to { transform: translateY(0); }
}

@keyframes mmslideOut {
    from { transform: translateY(0); }
    to { transform: translateY(-10%); }
}

.micromodal-slide {
  display: none;
}

.micromodal-slide.is-open {
  display: block;
}

.micromodal-slide[aria-hidden="false"] .modal__overlay {
  animation: mmfadeIn .3s cubic-bezier(0.0, 0.0, 0.2, 1);
}

.micromodal-slide[aria-hidden="true"] .modal__overlay {
  animation: mmfadeOut .3s cubic-bezier(0.0, 0.0, 0.2, 1);
}

.micromodal-slide .modal__container,
.micromodal-slide .modal__overlay {
  will-change: transform;
}


/*-----------.bdac-button----------------------------------
 * Page THANKS
 *---------------------------------------------*/
#form-thanks {
  padding: 0 var(--sidep);
}
/* 1069px */
@media (max-width: 66.8125em) {
  #top-events::after {
    content: normal;
  }
}
/* 1039px */
@media (max-width: 64.9375em) {
  .works-prev {
    left: 0;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
  }
  .works-next {
    right: 0;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
  }
  .works-prev:hover {
    -webkit-transform: translate(0, -50%) scale(1.1);
    transform: translate(0, -50%) scale(1.1);
  }
  .works-next:hover {
    -webkit-transform: translate(0, -50%) scale(1.1);
    transform: translate(0, -50%) scale(1.1);
  }
}
/* 768px */
@media (max-width: 48em) {
  html {
    font-size: calc(100vw / 75);
  }
  p {
    font-size: 2.9rem;
  }
  /*---------------------------------------------
     * utility
     *---------------------------------------------*/
  .read-more {
    height: 8em;
    width: 40em;
  }
  .read-more > a, .read-more.second > a {
    font-size: 2.6rem;
  }
  /*---------------------------------------------
     * Header
     *---------------------------------------------*/
  #header {
    height: 13em;
    overflow: hidden;
  }
  /* Logo */
  #header.scrolled #logo {
    margin-top: 5em;
  }
  #header.sp-menu-open .head-logo-color {
    opacity: 0;
  }
  #header.sp-menu-open .head-logo-white {
    opacity: 1;
  }
  #header.sp-menu-open #h-block-1 {
    left: var(--sidep);
    position: fixed;
    top: 0;
    z-index: 101;
  }
  /* h-block-1 */
  #h-block-1 > p {
    font-size: 2.4rem;
    font-weight: normal;
    margin-top: 1.85em;
    -webkit-transition: color .5s ease;
    transition: color .5s ease;
    z-index: 101;
  }
  #header.sp-menu-open #h-block-1 > p {
    color: #fff;
  }
  /* Menu btn */
  #sp-menu-btn {
    height: 4.5em;
    margin-top: 4.4em;
    pointer-events: auto;
    width: 6em;
    z-index: 101;
  }
  #sp-menu-btn > span {
    background-color: #fff;
    height: 2px;
    opacity: 1;
    -webkit-transition: opacity .5s ease, background-color .5s ease, -webkit-transform .5s ease;
    transition: opacity .5s ease, background-color .5s ease, -webkit-transform .5s ease;
    transition: transform .5s ease, opacity .5s ease, background-color .5s ease;
    transition: transform .5s ease, opacity .5s ease, background-color .5s ease, -webkit-transform .5s ease;
    width: 100%;
  }
  #sp-menu-btn:hover {
    cursor: pointer;
  }
  #header.sp-menu-open #sp-menu-btn > span {
    background-color: #fff;
  }
  #header.sp-menu-open #sp-menu-btn > .line-1 {
    -webkit-transform: rotate(45deg) translate(1.25em, 1.55em);
    transform: rotate(45deg) translate(1.25em, 1.55em);
  }
  #header.sp-menu-open #sp-menu-btn > .line-2 {
    opacity: 0;
    -webkit-transform: translateX(5em);
    transform: translateX(5em);
  }
  #header.sp-menu-open #sp-menu-btn > .line-3 {
    -webkit-transform: rotate(135deg) translate(-1.25em, 1.6em);
    transform: rotate(135deg) translate(-1.25em, 1.6em);
  }
  #header.sp-menu-open #sp-menu-btn {
    position: fixed;
    right: 3.5em;
    top: 0;
  }
  #header.sp-menu-open #sp-menu-btn::after {
    color: #fff;
  }
  /* Menu */
  #sp-menu {
    background-color: rgba(0, 0, 0, 0.50);
    height: 100vh;
    /*overflow: scroll;*/
    opacity: 0;
    position: fixed;
    pointer-events: none;
    right: 0;
    top: 0;
    transition: -webkit-opacity .5s ease-out;
    transition: opacity .5s ease-out;
    transition: opacity .5s ease-out, -webkit-opacity .5s ease-out;
    width: 100vw;
    z-index: 100;
  }
  #header.sp-menu-open #sp-menu {
    opacity: 1;
    pointer-events: auto;
  }
  #sp-menu-content {
    height: 100%;
    overflow: scroll;
    padding: 0 6em 10em;
    width: 60em;
    margin-left: auto;
    background-color: var(--black);
  }
  #sp-menu-nav-list {
    text-align: left;
  }
  #sp-menu-nav-list a {
    color: #fff;
    display: block;
    font-size: 3.6rem;
    font-family: 'Lato', sans-serif;
    letter-spacing: 0.2em;
    line-height: 1;
    margin-top: 5.4rem;
  }
  #sp-menu-nav {
    margin-top: 15em;
  }
  #sp-menu-content > a {
    display: block;
    text-align: center;
    height: 8em;
  }
  #sp-menu-content > a > p {
    font-size: 2.6rem;
    font-weight: normal;
    line-height: 1;
  }
  #sp-menu-content > a > h4 {
    margin: 0;
  }
  #sp-menu-content > .tel {
    background: #4e4e4e;
    color: #fff;
    margin-top: 2em;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #sp-menu-content > .contact {
    background-color: var(--orange);
    color: #fff;
    margin-top: 6em;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  /* #sp-menu-content > .contact.-reno {
    margin-top: 6em;
  } */
  #sp-menu-content > .tel > h4 {
    font-size: 3.2rem;
    line-height: .8;
    letter-spacing: .05em;
  }
  #sp-menu-content > .contact > h4 {
    font-size: 3.2rem;
    font-weight:  normal;
    line-height: 1;
  }
  #sp-menu-content > .tel > p {
    margin-top: .7em;
  }
  #sp-menu-content > .contact > p {
    margin-top: .5em;
  }
  #sp-menu-sns {
    margin-top: 4em;
  }
  #sp-menu-sns > a {
    background-position: center;
    background-repeat: no-repeat;
    background-size: auto 100%;
    font-size: 1.3rem;
    height: 4em;
    padding: 0 3.5em;
    width: 2.2em;
  }
  #sp-menu-sns > .fb {
    background-image: url(images/global/header/fb_white.png);
    width: 2.5em;
    height: 4.6em;
  }
  #sp-menu-sns > .ig {
    background-image: url(images/global/header/ig_white.png);
    margin-top: 0.3em;
    width: 4em;
    height: 4em;
  }
  #sp-menu-sns > .tw {
    background-image: url(images/global/header/twitter-icon.png);
    margin-top: 0.7em;
    width: 4.1em;
    height: 3.2em;
  }
  /* 下層 */
  body:not(.home) #header {
    height: 13em;
  }
  /* body:not(.home) #sp-menu-btn > span {
    background-color: var(--black);
  }*/
  body:not(.home) #sp-menu-btn {
    margin-top: 4.4em;
  }
  #subpage-header {
    margin-top: 13em;
  }
  /*#subpage-header > .img-wrap > img {*/
  /*  object-position: 0;*/
  /*}*/
  /*---------------------------------------------
     * Top MV
     *---------------------------------------------*/
  #top-mv {
    /*height: calc(var(--vh, 1vh) * 100);*/
  }
  #top-mv > .img-wrap {
    width: 100%;
  }
  /*---------------------------------------------
     * Top NEWS&EVENT COLUMN
     *---------------------------------------------*/
  #top-events-columns, #top-events-columns ul {
    grid-template-columns: 1fr;
  }
  #top-events-columns .read-more {
    height: 8em;
    margin: 5em auto 0;
    position: static;
    width: 40em;
  }
  #top-events-columns .read-more > a {
    font-size: 2.6rem;
  }
  #top-events-columns header > .title {
    font-size: 4.4rem;
  }
  #top-events-columns .img-wrap {
    height: calc((100vw - var(--sidep)*2)/1.5032679739)
  }
  #top-events-columns .img-wrap > .cat {
    font-size: 2.4rem;
  }
  #top-events-columns ul > li:nth-of-type(2) {
    display: none;
  }
  #top-events-columns .post-title {
    font-size: 2.8rem;
    margin: .85em 0 -.4em;
  }
  /*---------------------------------------------
     * Top WORKS
     *---------------------------------------------*/
  #top-works > header .title, #top-works > header .subtitle {
    text-align: center;
  }
  #top-works > header > .title-wrap {
    margin: 0 auto;
  }
  #top-works > header .desc {
    margin: 2em 0 0;
  }
  #top-works-read-more {
    font-size: 2rem;
    margin: 3em auto 0;
  }
  #top-works-list .img-wrap {
    height: calc(100vw / 1.7777777778);
  }
  #top-works-pagination {
    position: absolute;
    right: 50%;
    -webkit-transform: translateX(50%);
    transform: translateX(50%);
    top: calc(100vw / 1.7777777778 - 3em);
    z-index: 1;
  }
  #top-works-pagination > .swiper-pagination-bullet {
    background: #fff;
    height: 1.2em;
    margin: 0 .5em;
    opacity: .5;
    width: 1.2em;
  }
  #top-works-pagination > .swiper-pagination-bullet-active {
    opacity: 1;
    background: #fff;
  }
  #top-works-list .post-title-wrap {
    padding: 0 var(--sidep);
  }
  #top-works-list .post-title {
    font-size: 3.2rem;
  }
  /*---------------------------------------------
     * Breadcrumb
     *---------------------------------------------*/
  #breadcrumb {
    height: 4.3em;
  }
  #breadcrumb-list > li {
    font-size: 2.4rem;
  }
  /*---------------------------------------------
     * Subpage Header
     *---------------------------------------------*/
  #subpage-title {
    font-size: 4.4rem;
    top: 3.8em;
  }
  #subpage-subtitle {
    font-size: 2.2rem;
    top: 10em;
  }
  /*---------------------------------------------
     * Top MV
     *---------------------------------------------*/
  #top-mv-message {
    height: 36em;
    width: 36em;
  }
  #top-mv-message > .title {
    font-size: 3.2rem;
    margin-top: 1.6em;
  }
  #top-mv-message > .desc {
    font-size: 2em;
    line-height: 1.5;
    margin: 1.5em 0 -.3em;
  }
  #top-mv-message > .img-wrap {
    margin-top: 2.8em;
    width: 18em;
  }
  /*---------------------------------------------
     * Top ABOUT
     *---------------------------------------------*/
  #top-about {
    height: auto;
  }
  #top-about > .img-wrap, #top-about > .content, #top-about > .content > .inner {
    height: auto;
    position: static;
    width: 100%;
  }
  #top-about > .content {
    padding: 10em var(--sidep);
  }
  #top-about > .content .desc {
    font-size: 2.4rem;
    text-align: left;
  }
  /*---------------------------------------------
     * Top section common
     *---------------------------------------------*/
  .top-section .title {
    margin-top: 2.45em;
  }
  .top-section .subtitle {
    font-size: 2.4rem;
    margin-top: 1.5em;
  }
  .top-section .subtitle.line-bottom::after {
    margin: 2.1em auto 0;
  }
  /*---------------------------------------------
     * Footer
     *---------------------------------------------*/
  /* Footer contact */
  #footer-contact h2 {
    font-size: 32px;
    letter-spacing: 0.12em;
  }
  #footer-contact .btns {
    grid-template-columns: repeat(auto-fit, minmax(67em, 1fr));
    margin-top: 9.6em;
  }
  #footer-contact .btns > a {
    height: 14.4em;
  }
  #footer-contact .tel-btn > h3 {
    font-size: 4.8rem;
    margin-top: 0.63em;
    letter-spacing: 0.13em;
  }
  #footer-contact .btns p {
    font-size: 2.2em;
  }
  #footer-contact .req-doc-btn > h3 {
    margin-top: 3rem;
    font-size: 4.6rem;
  }
  #footer-contact .btns .footer-mail {
    margin-top: 1.6rem;
    font-size: 2rem;
  }
  /* Footer */
  #footer > .inner {
    padding: 0;
  }
  #footer .space {
    padding-bottom: 8em;
    border-bottom: 2px solid #4e4e4e;
    width: 89.3%;
  }
  #footer-address-wrap > .logo {
    margin-right: 0;
    font-size: 1.7rem;
  }
  #footer-address-wrap > address {
    margin-top: 4.5em;
    text-align: center;
    width: 100%;
  }
  #footer-address-wrap address > p {
    font-size: 2.5rem;
  }
  #footer-recruit-wrap {
    margin-top: 4em;
    width: 40em;
  }
  #footer-recruit-wrap > a {
    font-size: 2.4rem;
  }
  #copy-wrap {
    background-color: transparent;
    padding: 0 4em 8em;
    border-top: none;
    height: auto;
  }
  #copy-wrap > .inner {
    height: 14em;
    padding: 0 var(--sidep);
    width: 100%;
  }
  #copy-wrap .copy, #copy-wrap a {
    font-size: 2.4rem;
  }
  #copy-wrap .copy {
    margin-top: 5.5rem;
  }
  /* .footer-telfax {
    display: flex;
    justify-content: center;
    grid-column-gap: 2rem;
    font-size: 2.6em;
    font-style: normal;
    margin-top: 1rem;
  } */
  .footer-telfax.sp {
    display: flex;
    justify-content: center;
    grid-column-gap: 1.5rem;
    font-size: 2.6em;
    font-style: normal;
    font-family: 'Lato', sans-serif;
  }
  .telfaxpc {
    display: none;
  }
  .telfaxsp.slash {
    font-size: 2.6rem;
  }
  .telfaxsp {
    display: block;
    font-size: 1.4rem;
    letter-spacing: 0.2em;
    margin-top: 0;
  }
  .footer-pp {
    text-align: center;
    letter-spacing: 0.3em;
  }
  .footer-logo {
    padding-top: 10em;
    width: 42.1em;
  }
  .footer-line {
    height: 9em;
  }
  .footer-line img {
    width: 2.8em;
    height: 2.8em;
  }
  /*---------------------------------------------
     * Page Privacy
     *---------------------------------------------*/
  #privacy > .title {
    font-size: 4.4rem;
  }
  #privacy-list > li > .title {
    font-size: 3.2rem;
  }
  /*---------------------------------------------
     * Page COMPANY
     *---------------------------------------------*/
  /*---------------------------------------------
     * Archive WORKS
     *---------------------------------------------*/
  /* tag cloud */
  #archive-tagcloud > .inner > .title {
    background-color: transparent;
    color: #333;
    font-size: 4rem;
    font-weight: normal;
    height: auto;
    width: auto;
  }
  #archive-tagcloud > .inner > .archive-tagcloud-list {
    -webkit-box-flex: 0;
    -ms-flex: 0 auto;
    flex: 0 auto;
    height: auto;
    margin-top: 1.7em;
    width: 100%;
  }
  #archive-tagcloud > .inner > .archive-tagcloud-list > li, #modal-tag-wrap .archive-tagcloud-list > li {
    height: 5em;
    margin-top: 1em;
  }
  .archive-tagcloud-list > li > a {
    font-size: 2.4rem;
  }
  .archive-tagcloud-list + .more-btn {
    font-size: 2.4rem;
    margin: 1em 0 0 auto;
  }
  .archive-tagcloud-list + .more-btn::before, .archive-tagcloud-list + .more-btn::after {
    left: -.5em;
  }
  #modal-tag-wrap > .content > .title {
    font-size: 4rem;
  }
  #modal-tag-wrap > .content > .close-btn {
    font-size: 1.3rem;
  }
  /* works list */
  #works-entry-list .img-wrap {
    height: calc((100vw - var(--sidep)*2 - 4em )/1.7790697674);
  }
  #works-entry-list .title {
    font-size: 4rem;
  }
  /*---------------------------------------------
     * tag, taxonomy archive common
     *---------------------------------------------*/
  #archive-tax-head > .title {
    font-size: 5.6rem;
  }
  #archive-tax-head > .count {
    font-size: 2.8rem;
  }
  /*---------------------------------------------
     * Single common
     *---------------------------------------------*/
  #entry-header .title {
    font-size: 4.5rem;
  }
  #entry-content h2 {
    font-size: 4rem;
  }
  #entry-content h3 {
    font-size: 3.6rem;
  }
  #entry-content h4 {
    font-size: 3.2rem;
  }
  #entry-content h5 {
    font-size: 2.8rem;
  }
  #entry-content h6 {
    font-size: 2.4rem;
  }
  /*---------------------------------------------
     * Single WORKS
     *---------------------------------------------*/
  #entry-content-wrap .archive-tagcloud-list > li {
    height: 5em;
    margin-top: 1em;
  }
  /*---------------------------------------------
     * Pagination
     *---------------------------------------------*/
  .pagination a, .pagination span {
    font-size: 3rem;
  }
  /*---------------------------------------------
     * Page CONTACT
     *---------------------------------------------*/
  .booking-form-block.personal p, .booking-form-item input[type="text"], .booking-form-item textarea, .booking-form-item select  {
    font-size: 3.2rem ;
  }
  .booking-form-item >.inquiry-ul{
    flex-direction: column;
    gap: 5px;
    margin-top: 2.5em;
  }
  .booking-form-item >.inquiry-ul >.list{
    font-size: 2.9rem;
  }

  .booking-form-item > .input-fields {
    margin-top: 1.6em;
  }
  #booking-form-header .title {
    font-size: 3.6rem;
  }
  /* ご希望 */
  .booking-form-item > .input-fields.preferred > p:first-of-type {
    margin-bottom: 0;
  }
  .booking-form-item > .input-fields.preferred > p > input[type="text"]:first-of-type {
    margin-left: 0;
  }
  .input-fields.preferred {
    padding: 4em 4.5em;
  }
  /* 資料請求 */
  .booking-form-block.personal .input-fields.doc p {
    font-size: 2.8rem;
  }
  .booking-form-block.personal > .booking-form-item {
    padding-top: 6em;
  }
  .booking-form-item > .input-fields:not(.name) > input[type="text"] {
    width: 100%;
  }
  .input-fields.doc input {
    height: 3em;
    margin: -.6em .6em 0 0;
    width: 3em;
    font-size: 2rem;
  }
  .input-fields #prefecture-selectbox {
    margin-left: 0;
    width: 100%;
  }
  .input-fields > #zipcode, .input-fields > #zipcode + .select-box {
    width: 48.75%;
  }
  .select-box::after {
    font-size: 2rem;
  }
  .booking-form-block h4 {
    font-size: 2.6rem;
  }
  .booking-form-block.privacy-notes {
    padding: 4em;
  }
  #submit-btn {
    font-size: 3rem;
  }
  /*---------------------------------------------
     * Archive COLUMN
     *---------------------------------------------*/
  #column-entry-list {
    grid-auto-rows: calc((100vw - var(--sidep)*2 - 2em)/2/1.4166666667);
    grid-template-columns: 1fr 1fr;
  }
  #column-entry-list > li:nth-of-type(1) {
    grid-column: 1 / 3;
    grid-row: 1 / 3;
  }
  #column-entry-list > li:nth-of-type(2), #column-entry-list > li:nth-of-type(3) {
    grid-row: 3 / 4;
  }
  #column-entry-list > li:nth-of-type(5), #column-entry-list > li:nth-of-type(6) {
    grid-row: 6 / 7;
  }
  #column-entry-list > li:nth-of-type(2), #column-entry-list > li:nth-of-type(5) {
    grid-column: 1 / 2;
  }
  #column-entry-list > li:nth-of-type(3), #column-entry-list > li:nth-of-type(6) {
    grid-column: 2 / 3;
  }
  #column-entry-list > li:nth-of-type(4) {
    grid-column: 1 / 3;
    grid-row: 4 / 6;
  }
  #column-entry-list > li .title {
    font-size: 2.6rem;
  }
  #column-entry-list > li:nth-of-type(1) .title, #column-entry-list > li:nth-of-type(6) .title {
    font-size: 4rem;
  }
  #column-entry-list .archive-tagcloud-list > li > a {
    font-size: 1.8rem;
  }
  /*---------------------------------------------
     * Archive nav
     *---------------------------------------------*/
  #sp-archive-nav select {
    border: 2px solid var(--black);
    border-radius: 0;
    font-size: 3.2rem;
    font-weight: normal;
    outline: 0;
    padding: .8em 1em;
    width: 100%;
  }
  #sp-archive-nav .select-box::after {
    background-size: cover;
    font-size: 2.6rem;
  }
  /*---------------------------------------------
     * Archive EVENTS
     *---------------------------------------------*/
  #archive-events-list .cat {
    font-size: 2.4rem;
  }
  #archive-events-list .title {
    font-size: 3rem;
    margin-top: .5em;
  }
  /*---------------------------------------------
     * Single EVENTS
     *---------------------------------------------*/
  #entry-header .title.cat {
    padding-left: 0;
    text-indent: 0;
  }
  /* Booking CTA */
  #booking-cta .title {
    font-size: 5rem;
  }
  #booking-cta-content .tel-wrap {
    border: none;
    margin-right: 0;
    padding: 2em 0 3em 0;
  }
  #booking-cta-content .tel {
    font-size: 6rem;
  }
  #booking-cta-button {
    font-size: 5rem;
  }
}

