@charset "UTF-8";

/*! normalize.css v1.1.3 | MIT License | git.io/normalize */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

/**
 * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4.
 * Known issue: no IE 6 support.
 */
[hidden] {
  display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-size: 100%;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Address `font-family` inconsistency between `textarea` and other form
 * elements.
 */
html,
button,
input,
select,
textarea {
  font-family: sans-serif;
}

/**
 * Address margins handled incorrectly in IE 6/7.
 */
body {
  margin: 0;
}

/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: 0;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address font sizes and margins set differently in IE 6/7.
 * Address font sizes within `section` and `article` in Firefox 4+, Safari 5,
 * and Chrome.
 */
h1 {
  margin: 0;
}

h2 {
  margin: 0;
}

h3 {
  margin: 0;
}

h4 {
  margin: 0;
}

h5 {
  margin: 0;
}

h6 {
  margin: 0;
}

/**
 * Address styling not present in IE 7/8/9, Safari 5, and Chrome.
 */
/**
 * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

blockquote {
  margin: 0;
}

/**
 * Address styling not present in Safari 5 and Chrome.
 */
/**
 * Address differences between Firefox and other browsers.
 * Known issue: no IE 6/7 normalization.
 */
hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * Address styling not present in IE 6/7/8/9.
 */
/**
 * Address margins set differently in IE 6/7.
 */
p,
pre {
  margin: 0;
}

/**
 * Correct font family set oddly in IE 6, Safari 4/5, and Chrome.
 */
/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

/**
 * Address CSS quotes not supported in IE 6/7.
 */
q {
  quotes: none;
}

/**
 * Address `quotes` property not supported in Safari 4.
 */
q:before,
q:after {
  content: '';
  content: none;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* ==========================================================================
   Lists
   ========================================================================== */
/**
 * Address margins set differently in IE 6/7.
 */
dl,
menu,
ol,
ul {
  margin: 0;
}

dd {
  margin: 0;
}

/**
 * Address paddings set differently in IE 6/7.
 */
menu,
ol,
ul {
  padding: 0;
}

/**
 * Correct list images handled incorrectly in IE 7.
 */
ul,
ol {
  list-style: none;
  list-style-image: none;
}

/* ==========================================================================
   Embedded content
   ========================================================================== */
/**
 * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3.
 * 2. Improve image quality when scaled in IE 7.
 */
img {
  border: 0;
  /* 1 */
  -ms-interpolation-mode: bicubic;
  /* 2 */
  vertical-align: bottom;
}

/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root) {
  overflow: hidden;
}

/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
 */
figure {
  margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Correct margin displayed oddly in IE 6/7.
 */
form {
  margin: 0;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  margin: 0;
  padding: 0;
}

/**
 * 1. Correct color not being inherited in IE 6/7/8/9.
 * 2. Correct text not wrapping in Firefox 3.
 * 3. Correct alignment displayed oddly in IE 6/7.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  white-space: normal;
  /* 2 */
  *margin-left: -7px;
  /* 3 */
}

/**
 * 1. Correct font size not being inherited in all browsers.
 * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5,
 *    and Chrome.
 * 3. Improve appearance and consistency in all browsers.
 */
button,
input,
select,
textarea {
  font-size: 100%;
  /* 1 */
  margin: 0;
  /* 2 */
  vertical-align: baseline;
  /* 3 */
  *vertical-align: middle;
  /* 3 */
}

/**
 * Address Firefox 3+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE 6.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
  *overflow: visible;
  /* 4 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * 1. Address box sizing set to content-box in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 * 3. Remove excess padding in IE 7.
 *    Known issue: excess padding remains in IE 6.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
  *height: 13px;
  /* 3 */
  *width: 13px;
  /* 3 */
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Remove inner padding and border in Firefox 3+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * 1. Remove default vertical scrollbar in IE 6/7/8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

em {
  font-style: normal;
}

address {
  font-style: normal;
}

aside.memo {
  position: absolute;
  right: -1em;
  top: -1em;
  display: block;
  padding: 12px;
  background-color: #ff0000;
  color: #ffffff;
  font-weight: bold;
  font-size: 10px;
}

body.compensate-for-scrollbar {
  overflow: hidden;
}

.fancybox-active {
  height: auto;
}

.fancybox-is-hidden {
  left: -9999px;
  margin: 0;
  position: absolute !important;
  top: -9999px;
  visibility: hidden;
}

.fancybox-container {
  -webkit-backface-visibility: hidden;
  height: 100%;
  left: 0;
  outline: none;
  position: fixed;
  -webkit-tap-highlight-color: transparent;
  top: 0;
  touch-action: manipulation;
  transform: translateZ(0);
  width: 100%;
  z-index: 99992;
}

.fancybox-container * {
  box-sizing: border-box;
}

.fancybox-outer,
.fancybox-inner,
.fancybox-bg,
.fancybox-stage {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.fancybox-outer {
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
}

.fancybox-bg {
  background: #1e1e1e;
  opacity: 0;
  transition-duration: inherit;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
}

.fancybox-is-open .fancybox-bg {
  opacity: .9;
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

.fancybox-infobar,
.fancybox-toolbar,
.fancybox-caption,
.fancybox-navigation .fancybox-button {
  direction: ltr;
  opacity: 0;
  position: absolute;
  transition: opacity .25s ease, visibility 0s ease .25s;
  visibility: hidden;
  z-index: 99997;
}

.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-toolbar .fancybox-toolbar,
.fancybox-show-caption .fancybox-caption,
.fancybox-show-nav .fancybox-navigation .fancybox-button {
  opacity: 1;
  transition: opacity .25s ease 0s, visibility 0s ease 0s;
  visibility: visible;
}

.fancybox-infobar {
  color: #ccc;
  font-size: 13px;
  -webkit-font-smoothing: subpixel-antialiased;
  height: 44px;
  left: 0;
  line-height: 44px;
  min-width: 44px;
  mix-blend-mode: difference;
  padding: 0 10px;
  pointer-events: none;
  top: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fancybox-toolbar {
  right: 0;
  top: 0;
}

.fancybox-stage {
  direction: ltr;
  overflow: visible;
  transform: translateZ(0);
  z-index: 99994;
}

.fancybox-is-open .fancybox-stage {
  overflow: hidden;
}

.fancybox-slide {
  -webkit-backface-visibility: hidden;
  /* Using without prefix would break IE11 */
  display: none;
  height: 100%;
  left: 0;
  outline: none;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: absolute;
  text-align: center;
  top: 0;
  transition-property: transform, opacity;
  white-space: normal;
  width: 100%;
  z-index: 99994;
}

.fancybox-slide::before {
  content: '';
  display: inline-block;
  font-size: 0;
  height: 100%;
  vertical-align: middle;
  width: 0;
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--previous,
.fancybox-slide--current,
.fancybox-slide--next {
  display: block;
}

.fancybox-slide--image {
  overflow: hidden;
  padding: 44px 0;
}

.fancybox-slide--image::before {
  display: none;
}

.fancybox-slide--html {
  padding: 6px;
}

.fancybox-content {
  background: #fff;
  display: inline-block;
  margin: 0;
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: relative;
  text-align: left;
  vertical-align: middle;
}

.fancybox-slide--image .fancybox-content {
  -webkit-animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
  animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
  -webkit-backface-visibility: hidden;
  background: transparent;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  left: 0;
  max-width: none;
  overflow: visible;
  padding: 0;
  position: absolute;
  top: 0;
  transform-origin: top left;
  transition-property: transform, opacity;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  z-index: 99995;
}

.fancybox-can-zoomOut .fancybox-content {
  cursor: zoom-out;
}

.fancybox-can-zoomIn .fancybox-content {
  cursor: zoom-in;
}

.fancybox-can-swipe .fancybox-content,
.fancybox-can-pan .fancybox-content {
  cursor: -webkit-grab;
  cursor: grab;
}

.fancybox-is-grabbing .fancybox-content {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.fancybox-container [data-selectable='true'] {
  cursor: text;
}

.fancybox-image,
.fancybox-spaceball {
  background: transparent;
  border: 0;
  height: 100%;
  left: 0;
  margin: 0;
  max-height: none;
  max-width: none;
  padding: 0;
  position: absolute;
  top: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 100%;
}

.fancybox-spaceball {
  z-index: 1;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--pdf .fancybox-content,
.fancybox-slide--iframe .fancybox-content {
  height: 100%;
  overflow: visible;
  padding: 0;
  width: 100%;
}

.fancybox-slide--video .fancybox-content {
  background: #000;
}

.fancybox-slide--map .fancybox-content {
  background: #e5e3df;
}

.fancybox-slide--iframe .fancybox-content {
  background: #fff;
}

.fancybox-video,
.fancybox-iframe {
  background: transparent;
  border: 0;
  display: block;
  height: 100%;
  margin: 0;
  overflow: hidden;
  padding: 0;
  width: 100%;
}

/* Fix iOS */
.fancybox-iframe {
  left: 0;
  position: absolute;
  top: 0;
}

.fancybox-error {
  background: #fff;
  cursor: default;
  max-width: 400px;
  padding: 40px;
  width: 100%;
}

.fancybox-error p {
  color: #444;
  font-size: 16px;
  line-height: 20px;
  margin: 0;
  padding: 0;
}

/* Buttons */
.fancybox-button {
  background: rgba(30, 30, 30, 0.6);
  border: 0;
  border-radius: 0;
  box-shadow: none;
  cursor: pointer;
  display: inline-block;
  height: 44px;
  margin: 0;
  padding: 10px;
  position: relative;
  transition: color .2s;
  vertical-align: top;
  visibility: inherit;
  width: 44px;
}

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link {
  color: #ccc;
}

.fancybox-button:hover {
  color: #fff;
}

.fancybox-button:focus {
  outline: none;
}

.fancybox-button.fancybox-focus {
  outline: 1px dotted;
}

.fancybox-button[disabled],
.fancybox-button[disabled]:hover {
  color: #888;
  cursor: default;
  outline: none;
}

/* Fix IE11 */
.fancybox-button div {
  height: 100%;
}

.fancybox-button svg {
  display: block;
  height: 100%;
  overflow: visible;
  position: relative;
  width: 100%;
}

.fancybox-button svg path {
  fill: currentColor;
  stroke-width: 0;
}

.fancybox-button--play svg:nth-child(2),
.fancybox-button--fsenter svg:nth-child(2) {
  display: none;
}

.fancybox-button--pause svg:nth-child(1),
.fancybox-button--fsexit svg:nth-child(1) {
  display: none;
}

.fancybox-progress {
  background: #ff5268;
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transform: scaleX(0);
  transform-origin: 0;
  transition-property: transform;
  transition-timing-function: linear;
  z-index: 99998;
}

/* Close button on the top right corner of html content */
.fancybox-close-small {
  background: transparent;
  border: 0;
  border-radius: 0;
  color: #ccc;
  cursor: pointer;
  opacity: .8;
  padding: 8px;
  position: absolute;
  right: -12px;
  top: -44px;
  z-index: 401;
}

.fancybox-close-small:hover {
  color: #fff;
  opacity: 1;
}

.fancybox-slide--html .fancybox-close-small {
  color: currentColor;
  padding: 10px;
  right: 0;
  top: 0;
}

.fancybox-slide--image.fancybox-is-scaling .fancybox-content {
  overflow: hidden;
}

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
  display: none;
}

/* Navigation arrows */
.fancybox-navigation .fancybox-button {
  background-clip: content-box;
  height: 100px;
  opacity: 0;
  position: absolute;
  top: calc(50% - 50px);
  width: 70px;
}

.fancybox-navigation .fancybox-button div {
  padding: 7px;
}

.fancybox-navigation .fancybox-button--arrow_left {
  left: 0;
  padding: 31px 26px 31px 6px;
}

.fancybox-navigation .fancybox-button--arrow_right {
  padding: 31px 6px 31px 26px;
  right: 0;
}

/* Caption */
.fancybox-caption {
  bottom: 0;
  color: #eee;
  font-size: 14px;
  font-weight: 400;
  left: 0;
  line-height: 1.5;
  padding: 25px 44px 25px 44px;
  right: 0;
  text-align: center;
  z-index: 99996;
}

.fancybox-caption::before {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAD6CAQAAADKSeXYAAAAYklEQVQoz42RwQ3AMAgDjfcfup8WoRykfBAK5mQHKSz5rbXJPis1hjiV3CIqgG0hLZPkVkA4p4x5oR1bVeDrdCLrW2Q0D5bcwY3TGMHbdw3mPRuOtaspYP1w//G1OIcW148H0DMCqI/3mMMAAAAASUVORK5CYII=);
  background-repeat: repeat-x;
  background-size: contain;
  bottom: 0;
  content: '';
  display: block;
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: -44px;
  z-index: -1;
}

.fancybox-caption a,
.fancybox-caption a:link,
.fancybox-caption a:visited {
  color: #ccc;
  text-decoration: none;
}

.fancybox-caption a:hover {
  color: #fff;
  text-decoration: underline;
}

/* Loading indicator */
.fancybox-loading {
  -webkit-animation: fancybox-rotate 1s linear infinite;
  animation: fancybox-rotate 1s linear infinite;
  background: transparent;
  border: 4px solid #888;
  border-bottom-color: #fff;
  border-radius: 50%;
  height: 50px;
  left: 50%;
  margin: -25px 0 0 -25px;
  opacity: .7;
  padding: 0;
  position: absolute;
  top: 50%;
  width: 50px;
  z-index: 99999;
}

@-webkit-keyframes fancybox-rotate {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes fancybox-rotate {
  100% {
    transform: rotate(360deg);
  }
}

/* Transition effects */
.fancybox-animated {
  transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
}

/* transitionEffect: slide */
.fancybox-fx-slide.fancybox-slide--previous {
  opacity: 0;
  transform: translate3d(-100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--next {
  opacity: 0;
  transform: translate3d(100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--current {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

/* transitionEffect: fade */
.fancybox-fx-fade.fancybox-slide--previous,
.fancybox-fx-fade.fancybox-slide--next {
  opacity: 0;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.fancybox-fx-fade.fancybox-slide--current {
  opacity: 1;
}

/* transitionEffect: zoom-in-out */
.fancybox-fx-zoom-in-out.fancybox-slide--previous {
  opacity: 0;
  transform: scale3d(1.5, 1.5, 1.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--next {
  opacity: 0;
  transform: scale3d(0.5, 0.5, 0.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--current {
  opacity: 1;
  transform: scale3d(1, 1, 1);
}

/* transitionEffect: rotate */
.fancybox-fx-rotate.fancybox-slide--previous {
  opacity: 0;
  transform: rotate(-360deg);
}

.fancybox-fx-rotate.fancybox-slide--next {
  opacity: 0;
  transform: rotate(360deg);
}

.fancybox-fx-rotate.fancybox-slide--current {
  opacity: 1;
  transform: rotate(0deg);
}

/* transitionEffect: circular */
.fancybox-fx-circular.fancybox-slide--previous {
  opacity: 0;
  transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--next {
  opacity: 0;
  transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--current {
  opacity: 1;
  transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
}

/* transitionEffect: tube */
.fancybox-fx-tube.fancybox-slide--previous {
  transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
}

.fancybox-fx-tube.fancybox-slide--next {
  transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
}

.fancybox-fx-tube.fancybox-slide--current {
  transform: translate3d(0, 0, 0) scale(1);
}

/* Styling for Small-Screen Devices */
@media all and (max-height: 576px) {
  .fancybox-caption {
    padding: 12px;
  }

  .fancybox-slide {
    padding-left: 6px;
    padding-right: 6px;
  }

  .fancybox-slide--image {
    padding: 6px 0;
  }

  .fancybox-close-small {
    right: -6px;
  }

  .fancybox-slide--image .fancybox-close-small {
    background: #4e4e4e;
    color: #f2f4f6;
    height: 36px;
    opacity: 1;
    padding: 6px;
    right: 0;
    top: 0;
    width: 36px;
  }
}

/* Share */
.fancybox-share {
  background: #f4f4f4;
  border-radius: 3px;
  max-width: 90%;
  padding: 30px;
  text-align: center;
}

.fancybox-share h1 {
  color: #222;
  font-size: 35px;
  font-weight: 700;
  margin: 0 0 20px 0;
}

.fancybox-share p {
  margin: 0;
  padding: 0;
}

.fancybox-share__button {
  border: 0;
  border-radius: 3px;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  line-height: 40px;
  margin: 0 5px 10px 5px;
  min-width: 130px;
  padding: 0 15px;
  text-decoration: none;
  transition: all .2s;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  white-space: nowrap;
}

.fancybox-share__button:visited,
.fancybox-share__button:link {
  color: #fff;
}

.fancybox-share__button:hover {
  text-decoration: none;
}

.fancybox-share__button--fb {
  background: #3b5998;
}

.fancybox-share__button--fb:hover {
  background: #344e86;
}

.fancybox-share__button--pt {
  background: #bd081d;
}

.fancybox-share__button--pt:hover {
  background: #aa0719;
}

.fancybox-share__button--tw {
  background: #1da1f2;
}

.fancybox-share__button--tw:hover {
  background: #0d95e8;
}

.fancybox-share__button svg {
  height: 25px;
  margin-right: 7px;
  position: relative;
  top: -1px;
  vertical-align: middle;
  width: 25px;
}

.fancybox-share__button svg path {
  fill: #fff;
}

.fancybox-share__input {
  background: transparent;
  border: 0;
  border-bottom: 1px solid #d7d7d7;
  border-radius: 0;
  color: #5d5b5b;
  font-size: 14px;
  margin: 10px 0 0 0;
  outline: none;
  padding: 10px 15px;
  width: 100%;
}

/* Thumbs */
.fancybox-thumbs {
  background: #ddd;
  bottom: 0;
  display: none;
  margin: 0;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  padding: 2px 2px 4px 2px;
  position: absolute;
  right: 0;
  -webkit-tap-highlight-color: transparent;
  top: 0;
  width: 212px;
  z-index: 99995;
}

.fancybox-thumbs-x {
  overflow-x: auto;
  overflow-y: hidden;
}

.fancybox-show-thumbs .fancybox-thumbs {
  display: block;
}

.fancybox-show-thumbs .fancybox-inner {
  right: 212px;
}

.fancybox-thumbs__list {
  font-size: 0;
  height: 100%;
  list-style: none;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0;
  position: absolute;
  position: relative;
  white-space: nowrap;
  width: 100%;
}

.fancybox-thumbs-x .fancybox-thumbs__list {
  overflow: hidden;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
  width: 7px;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
  background: #fff;
  border-radius: 10px;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 10px;
}

.fancybox-thumbs__list a {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-color: rgba(0, 0, 0, 0.1);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  cursor: pointer;
  float: left;
  height: 75px;
  margin: 2px;
  max-height: calc(100% - 8px);
  max-width: calc(50% - 4px);
  outline: none;
  overflow: hidden;
  padding: 0;
  position: relative;
  -webkit-tap-highlight-color: transparent;
  width: 100px;
}

.fancybox-thumbs__list a::before {
  border: 6px solid #ff5268;
  bottom: 0;
  content: '';
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 99991;
}

.fancybox-thumbs__list a:focus::before {
  opacity: .5;
}

.fancybox-thumbs__list a.fancybox-thumbs-active::before {
  opacity: 1;
}

/* Styling for Small-Screen Devices */
@media all and (max-width: 576px) {
  .fancybox-thumbs {
    width: 110px;
  }

  .fancybox-show-thumbs .fancybox-inner {
    right: 110px;
  }

  .fancybox-thumbs__list a {
    max-width: calc(100% - 10px);
  }
}

@font-face {
  font-family: TsukuGoPro-D;
  src: url("../fonts/FOT-TsukuGoPro-D.otf") format("opentype");
}

@font-face {
  font-family: TsukuGoPro-E;
  src: url("../fonts/FOT-TsukuGoPro-E.otf") format("opentype");
}

@font-face {
  font-family: "Verlag A";
  font-weight: 700;
  font-style: normal;
  src: url("../fonts/Verlag-Bold.otf") format("opentype");
}

@font-face {
  font-family: "Verlag B";
  font-weight: 700;
  font-style: normal;
  src: url("../fonts/Verlag-Bold.otf") format("opentype");
}

@font-face {
  font-family: "Verlag A";
  font-weight: 500;
  font-style: normal;
  src: url("../fonts/Verlag-Black.otf") format("opentype");
}

@font-face {
  font-family: "Verlag B";
  font-weight: 500;
  font-style: normal;
  src: url("../fonts/Verlag-Black.otf") format("opentype");
}

/*
.dummy {
	position: relative;
	height: 5000px;
}
.dummy-img {
	@include pos( absolute, "lt", 50%, 0 );
	margin-left: -512.5px;
	z-index: -1;
	opacity: 0.25;
}
*/

body {
  min-width: 1220px;
  font-family: "FOT-筑紫ゴシック Pro D", TsukuGoPro-D;
  font-size: 15px;
  line-height: 1.6;
  -webkit-text-size-adjust: 100%;
  background: #fff;
  overflow-x: hidden;
}

@media screen and (max-width: 720px) {
  body {
    min-width: 0;
    font-size: 13px;
  }
}

a {
  color: #197bcf;
  text-decoration: none;
}

a:hover {
  opacity: 0.7;
  -ms-filter: "alpha(opacity=70)";
}

@media screen and (max-width: 720px) {
  a:hover {
    opacity: 1;
    -ms-filter: "alpha(opacity=100)";
  }
}

.align-l {
  text-align: left;
}

.align-c {
  text-align: center;
}

.align-r {
  text-align: right;
}

.mt-1 {
  margin-top: 8px !important;
}

@media screen and (max-width: 720px) {
  .mt-1 {
    margin-top: 4px !important;
  }
}

.mt-2 {
  margin-top: 16px !important;
}

@media screen and (max-width: 720px) {
  .mt-2 {
    margin-top: 8px !important;
  }
}

.mt-3 {
  margin-top: 24px !important;
}

@media screen and (max-width: 720px) {
  .mt-3 {
    margin-top: 12px !important;
  }
}

.mt-4 {
  margin-top: 32px !important;
}

@media screen and (max-width: 720px) {
  .mt-4 {
    margin-top: 16px !important;
  }
}

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

@media screen and (max-width: 720px) {
  .mt-5 {
    margin-top: 20px !important;
  }
}

.mt-6 {
  margin-top: 48px !important;
}

@media screen and (max-width: 720px) {
  .mt-6 {
    margin-top: 24px !important;
  }
}

.mt-7 {
  margin-top: 56px !important;
}

@media screen and (max-width: 720px) {
  .mt-7 {
    margin-top: 28px !important;
  }
}

.mt-8 {
  margin-top: 64px !important;
}

@media screen and (max-width: 720px) {
  .mt-8 {
    margin-top: 32px !important;
  }
}

.mt-9 {
  margin-top: 72px !important;
}

@media screen and (max-width: 720px) {
  .mt-9 {
    margin-top: 32px !important;
  }
}

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

@media screen and (max-width: 720px) {
  .mt-10 {
    margin-top: 40px !important;
  }
}

.mt-11 {
  margin-top: 88px !important;
}

@media screen and (max-width: 720px) {
  .mt-11 {
    margin-top: 44px !important;
  }
}

.mt-12 {
  margin-top: 96px !important;
}

@media screen and (max-width: 720px) {
  .mt-12 {
    margin-top: 48px !important;
  }
}

.mt-13 {
  margin-top: 104px !important;
}

@media screen and (max-width: 720px) {
  .mt-13 {
    margin-top: 52px !important;
  }
}

.mt-14 {
  margin-top: 112px !important;
}

@media screen and (max-width: 720px) {
  .mt-14 {
    margin-top: 56px !important;
  }
}

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

@media screen and (max-width: 720px) {
  .mt-15 {
    margin-top: 60px !important;
  }
}

.mt-16 {
  margin-top: 128px !important;
}

@media screen and (max-width: 720px) {
  .mt-16 {
    margin-top: 64px !important;
  }
}

.mt-17 {
  margin-top: 136px !important;
}

@media screen and (max-width: 720px) {
  .mt-17 {
    margin-top: 64px !important;
  }
}

.mt-18 {
  margin-top: 144px !important;
}

@media screen and (max-width: 720px) {
  .mt-18 {
    margin-top: 64px !important;
  }
}

.mt-19 {
  margin-top: 152px !important;
}

@media screen and (max-width: 720px) {
  .mt-19 {
    margin-top: 64px !important;
  }
}

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

@media screen and (max-width: 720px) {
  .mt-20 {
    margin-top: 64px !important;
  }
}

.mt-21 {
  margin-top: 168px !important;
}

@media screen and (max-width: 720px) {
  .mt-21 {
    margin-top: 64px !important;
  }
}

.mt-22 {
  margin-top: 176px !important;
}

@media screen and (max-width: 720px) {
  .mt-22 {
    margin-top: 64px !important;
  }
}

.mt-23 {
  margin-top: 184px !important;
}

@media screen and (max-width: 720px) {
  .mt-23 {
    margin-top: 64px !important;
  }
}

.mt-24 {
  margin-top: 192px !important;
}

@media screen and (max-width: 720px) {
  .mt-24 {
    margin-top: 64px !important;
  }
}

.mt-25 {
  margin-top: 200px !important;
}

@media screen and (max-width: 720px) {
  .mt-25 {
    margin-top: 64px !important;
  }
}

.mt-26 {
  margin-top: 208px !important;
}

@media screen and (max-width: 720px) {
  .mt-26 {
    margin-top: 64px !important;
  }
}

.mt-27 {
  margin-top: 216px !important;
}

@media screen and (max-width: 720px) {
  .mt-27 {
    margin-top: 64px !important;
  }
}

.mt-28 {
  margin-top: 224px !important;
}

@media screen and (max-width: 720px) {
  .mt-28 {
    margin-top: 64px !important;
  }
}

.mt-29 {
  margin-top: 232px !important;
}

@media screen and (max-width: 720px) {
  .mt-29 {
    margin-top: 64px !important;
  }
}

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

@media screen and (max-width: 720px) {
  .mt-30 {
    margin-top: 64px !important;
  }
}

.mtm-1 {
  margin-top: -8px !important;
}

@media screen and (max-width: 720px) {
  .mtm-1 {
    margin-top: 0 !important;
  }
}

.mtm-2 {
  margin-top: -16px !important;
}

@media screen and (max-width: 720px) {
  .mtm-2 {
    margin-top: 0 !important;
  }
}

.mtm-3 {
  margin-top: -24px !important;
}

@media screen and (max-width: 720px) {
  .mtm-3 {
    margin-top: 0 !important;
  }
}

.mtm-4 {
  margin-top: -32px !important;
}

@media screen and (max-width: 720px) {
  .mtm-4 {
    margin-top: 0 !important;
  }
}

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

@media screen and (max-width: 720px) {
  .mtm-5 {
    margin-top: 0 !important;
  }
}

.mtm-6 {
  margin-top: -48px !important;
}

@media screen and (max-width: 720px) {
  .mtm-6 {
    margin-top: 0 !important;
  }
}

.mtm-7 {
  margin-top: -56px !important;
}

@media screen and (max-width: 720px) {
  .mtm-7 {
    margin-top: 0 !important;
  }
}

.mtm-8 {
  margin-top: -64px !important;
}

@media screen and (max-width: 720px) {
  .mtm-8 {
    margin-top: 0 !important;
  }
}

.mtm-9 {
  margin-top: -72px !important;
}

@media screen and (max-width: 720px) {
  .mtm-9 {
    margin-top: 0 !important;
  }
}

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

@media screen and (max-width: 720px) {
  .mtm-10 {
    margin-top: 0 !important;
  }
}

.mtm-11 {
  margin-top: -88px !important;
}

@media screen and (max-width: 720px) {
  .mtm-11 {
    margin-top: 0 !important;
  }
}

.mtm-12 {
  margin-top: -96px !important;
}

@media screen and (max-width: 720px) {
  .mtm-12 {
    margin-top: 0 !important;
  }
}

.mtm-13 {
  margin-top: -104px !important;
}

@media screen and (max-width: 720px) {
  .mtm-13 {
    margin-top: 0 !important;
  }
}

.mtm-14 {
  margin-top: -112px !important;
}

@media screen and (max-width: 720px) {
  .mtm-14 {
    margin-top: 0 !important;
  }
}

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

@media screen and (max-width: 720px) {
  .mtm-15 {
    margin-top: 0 !important;
  }
}

.mtm-16 {
  margin-top: -128px !important;
}

@media screen and (max-width: 720px) {
  .mtm-16 {
    margin-top: 0 !important;
  }
}

.mtm-17 {
  margin-top: -136px !important;
}

@media screen and (max-width: 720px) {
  .mtm-17 {
    margin-top: 0 !important;
  }
}

.mtm-18 {
  margin-top: -144px !important;
}

@media screen and (max-width: 720px) {
  .mtm-18 {
    margin-top: 0 !important;
  }
}

.mtm-19 {
  margin-top: -152px !important;
}

@media screen and (max-width: 720px) {
  .mtm-19 {
    margin-top: 0 !important;
  }
}

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

@media screen and (max-width: 720px) {
  .mtm-20 {
    margin-top: 0 !important;
  }
}

.mtm-21 {
  margin-top: -168px !important;
}

@media screen and (max-width: 720px) {
  .mtm-21 {
    margin-top: 0 !important;
  }
}

.mtm-22 {
  margin-top: -176px !important;
}

@media screen and (max-width: 720px) {
  .mtm-22 {
    margin-top: 0 !important;
  }
}

.mtm-23 {
  margin-top: -184px !important;
}

@media screen and (max-width: 720px) {
  .mtm-23 {
    margin-top: 0 !important;
  }
}

.mtm-24 {
  margin-top: -192px !important;
}

@media screen and (max-width: 720px) {
  .mtm-24 {
    margin-top: 0 !important;
  }
}

.mtm-25 {
  margin-top: -200px !important;
}

@media screen and (max-width: 720px) {
  .mtm-25 {
    margin-top: 0 !important;
  }
}

.mtm-26 {
  margin-top: -208px !important;
}

@media screen and (max-width: 720px) {
  .mtm-26 {
    margin-top: 0 !important;
  }
}

.mtm-27 {
  margin-top: -216px !important;
}

@media screen and (max-width: 720px) {
  .mtm-27 {
    margin-top: 0 !important;
  }
}

.mtm-28 {
  margin-top: -224px !important;
}

@media screen and (max-width: 720px) {
  .mtm-28 {
    margin-top: 0 !important;
  }
}

.mtm-29 {
  margin-top: -232px !important;
}

@media screen and (max-width: 720px) {
  .mtm-29 {
    margin-top: 0 !important;
  }
}

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

@media screen and (max-width: 720px) {
  .mtm-30 {
    margin-top: 0 !important;
  }
}

.w-28 {
  width: 28px !important;
}

.w-86 {
  width: 86px !important;
}

.w-108 {
  width: 108px !important;
}

.w-160 {
  width: 160px !important;
}

.w-200 {
  width: 200px !important;
}

.w-340 {
  width: 340px !important;
}

.w-580 {
  width: 580px !important;
}

.w-710 {
  width: 704px !important;
}

@media screen and (max-width: 720px) {
  .w-86 {
    width: 62px !important;
  }

  .w-108 {
    width: 82px !important;
  }

  .w-160 {
    width: 120px !important;
  }
}

@media screen and (max-width: 720px) {
  .w-340 {
    width: 100% !important;
    box-sizing: border-box;
  }

  .w-580 {
    width: 100% !important;
    box-sizing: border-box;
  }

  .w-710 {
    width: 100% !important;
    box-sizing: border-box;
  }
}

.h-190 {
  height: 190px !important;
}

.sp-fit {
  width: 100%;
  height: auto;
}

.sp-only {
  display: none;
}

@media screen and (max-width: 720px) {
  .sp-only {
    display: block;
  }

  span.sp-only {
    display: inline;
  }

  .pc-only {
    display: none !important;
  }
}

.row {
  *zoom: 1;
}

.row:after {
  content: "";
  display: table;
  clear: both;
}

.row .col-l {
  float: left;
}

.row .col-r {
  float: right;
}

.row .col-side {
  float: left;
  width: 220px;
}

@media screen and (max-width: 720px) {
  .row .col-side {
    float: none;
    width: auto;
  }
}

.row .col-main {
  float: right;
  width: 790px;
}

@media screen and (max-width: 720px) {
  .row .col-main {
    float: none;
    width: auto;
    margin: 16px 0 0 0;
  }
}

.row .col-w-2-1 {
  width: 488px;
}

@media screen and (max-width: 720px) {
  .row .col-w-2-1 {
    width: auto;
  }
}

@media screen and (max-width: 720px) {
  .row .col-w-2-1.col-l {
    float: none;
  }
}

@media screen and (max-width: 720px) {
  .row .col-w-2-1.col-r {
    float: none;
  }
}

.row .col-w-3-1 {
  width: 310px;
}

@media screen and (max-width: 720px) {
  .row .col-w-3-1 {
    width: auto;
  }
}

.row .col-w-3-1.col-l {
  margin: 0 0 0 47px;
}

@media screen and (max-width: 720px) {
  .row .col-w-3-1.col-l {
    float: none;
    margin: 48px 0 0 0;
  }
}

.row .col-w-3-1.col-r {
  margin: 0 47px 0 0;
}

@media screen and (max-width: 720px) {
  .row .col-w-3-1.col-r {
    float: none;
    margin: 48px 0 0 0;
  }
}

.row .col-w-3-1.section-blogs {
  width: 220px;
}

@media screen and (max-width: 720px) {
  .row .col-w-3-1.section-blogs {
    width: auto;
  }
}

.row .col-w-3-1:first-child {
  margin: 0;
}

.row .col-w-3-2 {
  width: 668px;
  margin: 0 0 0 47px;
}

@media screen and (max-width: 720px) {
  .row .col-w-3-2 {
    width: auto;
    margin: 0;
  }
}

.row .col-w-3-2.col-l {
  margin: 0 0 0 47px;
}

@media screen and (max-width: 720px) {
  .row .col-w-3-2.col-l {
    float: none;
    margin: 0;
  }
}

.row .col-w-3-2.col-r {
  margin: 0 47px 0 0;
}

@media screen and (max-width: 720px) {
  .row .col-w-3-2.col-r {
    float: none;
    margin: 0;
  }
}

.row .col-w-3-2:first-child {
  margin: 0;
}

.row .col-w-4-1 {
  width: 256px;
}

@media screen and (max-width: 720px) {
  .row .col-w-4-1 {
    width: 50%;
  }
}

.span.wpcf7-list-item {
  margin-left: 0;
}

#all {
  position: relative;
  width: 100%;
  overflow: hidden;
}

#all .page .page-header {
  width: 100%;
  overflow: hidden;
}

#all .page .page-body {
  margin: 120px 0 0 0;
}

@media screen and (max-width: 720px) {
  #all .page .page-body {
    margin: 48px 0 0 0;
  }
}

#info-pc {
  padding: 10px 40px;
  background: #eee;
}

@media screen and (max-width: 720px) {
  #info-pc {
    display: none;
  }
}

#info-pc p {
  padding-left: 22px;
  font-size: 11px;
  letter-spacing: 0.05em;
  background: url(../images/common/ico_info.png) no-repeat left;
  background-size: 16px;
}

.webp #info-pc p {
  padding-left: 22px;
  font-size: 11px;
  letter-spacing: 0.05em;
  background: url(../images/common/ico_info.webp) no-repeat left;
  background-size: 16px;
}

#info-pc .addtoany_share_save_container {
  display: none;
}

#info-sp {
  display: none;
  margin: 0 12px 20px;
  padding: 8px 0;
  border-bottom: 3px solid #000;
  font-size: 0.75rem;
}

@media screen and (max-width: 720px) {
  #info-sp {
    display: block;
  }
}

#info-sp p {
  padding-left: 22px;
  font-size: 10px;
  letter-spacing: 0.05em;
  background: url(../images/common/ico_info.png) no-repeat left;
  background-size: 16px;
}

.webp #info-sp p {
  padding-left: 22px;
  font-size: 10px;
  letter-spacing: 0.05em;
  background: url(../images/common/ico_info.webp) no-repeat left;
  background-size: 16px;
}

#info-sp .addtoany_share_save_container {
  display: none;
}

#header {
  position: relative;
  width: 100%;
  height: 114px;
  z-index: 100;
}

@media screen and (max-width: 720px) {
  #header {
    height: 70px;
  }
}

#header #header-logo {
  position: absolute;
  left: 40px;
  top: 35px;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-weight: 500;
  font-size: 20px;
  letter-spacing: 0.05em;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  #header #header-logo {
    position: absolute;
    left: 12px;
    top: 24px;
    font-size: 14px;
  }
}

#header #header-logo a {
  color: #000;
}

#header #ban-pc {
  position: absolute;
  left: 50px;
  top: 115px;
}

@media screen and (max-width: 720px) {
  #header #ban-pc {
    display: none;
  }
}

#header #header-nav {
  padding: 28px 0 0 0;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #header #header-nav {
    display: none;
  }
}

#header #header-nav>ul {
  font-size: 14px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  #header #header-nav>ul {
    font-size: 12px;
  }
}

#header #header-nav>ul>li {
  position: relative;
  display: inline-block;
  margin: 0 17px;
}

#header #header-nav>ul>li:nth-of-type(2),
#header #header-nav>ul>li:last-child {
  padding-right: 12px;
  background: url(../images/common/arrow01.png) no-repeat right 12px;
  background-size: 7px;
}

.webp #header #header-nav>ul>li:nth-of-type(2),
.webp #header #header-nav>ul>li:last-child {
  padding-right: 12px;
  background: url(../images/common/arrow01.webp) no-repeat right 12px;
  background-size: 7px;
}

@media screen and (max-width: 720px) {
  #header #header-nav>ul>li {
    margin: 0 0 0 12px;
  }

  #header #header-nav>ul>li:nth-of-type(2) {
    margin: 0;
  }
}

#header #header-nav>ul>li a {
  display: inline-block;
  color: #000;
  padding: 8px 0 10px;
  font-family: "FOT-筑紫ゴシック Pro D", TsukuGoPro-D;
}

#header #header-nav>ul>li ul {
  position: absolute;
  top: 30px;
  left: 50%;
  z-index: 12;
  width: 140px;
  margin-left: -70px;
  padding: 15px 0;
  font-size: 12px;
  background: rgba(85, 145, 152, 0.93);
  visibility: hidden;
  opacity: 0;
  transition: .2s ease-in-out;
  text-align: left;
  line-height: 1.4;
}

#header #header-nav>ul>li ul li a {
  display: block;
  padding: 7px 20px;
  color: #fff;
  opacity: 1;
  transition: opacity 0.2s ease;
}

#header #header-nav>ul>li ul li a:hover {
  opacity: 0.35;
  transition: opacity 0.2s ease;
}

#header #header-nav>ul>li:hover>ul {
  visibility: visible;
  opacity: 1;
}

#header #header-contact {
  position: absolute;
  margin-top: -32px;
  right: 30px;
}

@media screen and (max-width: 720px) {
  #header #header-contact {
    position: absolute;
    right: 35px;
    top: 15px;
    display: block;
    width: 118px;
    height: 55px;
    margin: 0;
  }
}

#header #header-contact ul li {
  display: inline-block;
  font-size: 12px;
}

#header #header-contact ul li:first-child {
  margin-right: 10px;
}

@media screen and (max-width: 720px) {
  #header #header-contact ul li {
    font-size: 10px;
  }
}

#header #header-contact ul li.link-pamphlet a {
  padding: 5px 0;
  background: #fff;
  border: 3px solid #000;
  box-sizing: border-box;
  color: #000;
}

@media screen and (max-width: 720px) {
  #header #header-contact ul li.link-pamphlet a {
    display: none;
  }
}

#header #header-contact ul li.link-contact a {
  padding: 8px 0;
  background: #49a2ab;
  color: #fff;
}

@media screen and (max-width: 720px) {
  #header #header-contact ul li.link-contact a {
    padding: 6px 0;
  }
}

#header #header-contact ul li a {
  display: block;
  width: 110px;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #header #header-contact ul li a {
    width: 80px;
  }
}

body.tablet #header #header-contact {
  position: absolute;
}

#side-nav-btn {
  position: fixed;
  right: 47px;
  top: 47px;
  display: none;
  width: 26px;
  height: 21px;
  overflow: hidden;
  font-size: 0;
  text-indent: -9999px;
  cursor: pointer;
  transition: background 0.3s;
  z-index: 1000;
}

#side-nav-btn:focus {
  outline: none;
}

#side-nav-btn span {
  display: block;
  position: absolute;
  top: 9px;
  left: 3px;
  right: 3px;
  height: 3px;
  background: #000;
  transition: background 0 0.3s;
}

#side-nav-btn span::before,
#side-nav-btn span::after {
  position: absolute;
  display: block;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #000;
  content: "";
  transition-duration: 0.3s, 0.3s;
  transition-delay: 0.3s, 0;
}

#side-nav-btn span::before {
  top: -6px;
  transition-property: top, transform;
}

#side-nav-btn span::after {
  bottom: -6px;
  transition-property: bottom, transform;
}

#side-nav-btn.active span {
  background: none;
}

#side-nav-btn.active span::before,
#side-nav-btn.active span::after {
  background-color: #fff;
  transition-delay: 0, 0.3s;
}

#side-nav-btn.active span::before {
  top: 0;
  transform: rotate(45deg);
}

#side-nav-btn.active span::after {
  bottom: 0;
  transform: rotate(-45deg);
}

@media screen and (max-width: 720px) {
  #side-nav-btn {
    display: block;
    position: fixed;
    right: 18px;
    top: 18px;
  }
}

.area-interior #side-nav-btn.active span::before,
.area-interior #side-nav-btn.active span::after {
  background-color: #000;
}

#side-nav {
  display: none;
}

#side-nav.visible {
  position: fixed;
  right: 0;
  top: 0;
  display: block;
  width: 360px;
  height: 100%;
  box-sizing: border-box;
  z-index: 999;
}

@media screen and (max-width: 720px) {
  #side-nav.visible {
    display: block;
    width: 100%;
    height: 100%;
  }
}

#side-nav.visible .inner {
  position: absolute;
  width: 85%;
  top: 50%;
  padding: 0 15%;
  margin-top: -180px;
}

#side-nav.visible .inner .top {
  padding-bottom: 30px;
  font-size: 20px;
}

#side-nav.visible .inner .top ul li {
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  letter-spacing: 0.07em;
}

#side-nav.visible .inner .top ul li a {
  display: block;
  padding: 3px 0;
}

#side-nav.visible .inner .top ul li a small {
  display: inline-block;
  padding-left: 10px;
  font-family: "FOT-筑紫ゴシック Pro D", TsukuGoPro-D;
  font-size: 10px;
}

#side-nav.visible .inner .middle {
  display: flex;
}

#side-nav.visible .inner .middle ul {
  width: 45%;
  font-size: 12px;
}

#side-nav.visible .inner .middle ul li a {
  display: block;
  padding: 6px 0;
}

#side-nav.visible .inner a {
  color: #fff;
}

#side-nav.visible .bottom {
  position: absolute;
  bottom: 30px;
  width: 80%;
  padding: 0 10%;
}

#side-nav.visible .bottom ul {
  display: flex;
}

#side-nav.visible .bottom ul .pamphlet {
  width: 50%;
  margin-right: 2%;
}

#side-nav.visible .bottom ul .pamphlet a {
  display: block;
  color: #fff;
  padding: 7px 0;
  text-align: center;
  border: 3px solid #fff;
}

#side-nav.visible .bottom ul .contact {
  width: 50%;
  margin-left: 2%;
}

#side-nav.visible .bottom ul .contact a {
  display: block;
  padding: 10px 0;
  background: #fff;
  color: #49a2ab;
  text-align: center;
}

#side-nav {
  background-color: rgba(85, 145, 152, 0.93);
}

#foot-ban {
  margin: 60px 10px;
}

#cv-area {
  display: flex;
  padding: 120px 40px 0;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #cv-area {
    display: block;
    padding: 60px 12px 40px;
  }
}

#cv-area .left {
  width: 50%;
  margin-right: 0.5%;
}

@media screen and (max-width: 720px) {
  #cv-area .left {
    display: flex;
    width: auto;
    margin-right: 0;
  }
}

#cv-area .left .pamphlet {
  margin-bottom: 2%;
}

@media screen and (max-width: 720px) {
  #cv-area .left .pamphlet {
    width: 50%;
    margin: 0 6px 12px 0;
  }
}

#cv-area .left .pamphlet a {
  padding: 5.5% 0;
  display: block;
  border: 3px solid #000;
  box-sizing: border-box;
  color: #000;
}

@media screen and (max-width: 720px) {
  #cv-area .left .pamphlet a {
    padding: 7% 0 4.5%;
  }
}

#cv-area .left .pamphlet a strong {
  display: block;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 24px;
  line-height: 1.3;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 720px) {
  #cv-area .left .pamphlet a strong {
    font-size: 16px;
    line-height: 1;
  }
}

#cv-area .left .contact {
  background: #49a2ab;
}

@media screen and (max-width: 720px) {
  #cv-area .left .contact {
    width: 50%;
    margin: 0 0 12px 6px;
  }
}

#cv-area .left .contact a {
  padding: 5.5% 0;
  display: block;
  color: #fff;
  border: 3px solid #49a2ab;
  box-sizing: border-box;
}

@media screen and (max-width: 720px) {
  #cv-area .left .contact a {
    padding: 7% 0 4.5%;
  }
}

#cv-area .left .contact a strong {
  display: block;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 24px;
  line-height: 1.3;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 720px) {
  #cv-area .left .contact a strong {
    font-size: 16px;
    line-height: 1;
  }
}

#cv-area .right {
  position: relative;
  width: 50%;
  margin-left: 0.5%;
  background: #FDE94E;
}

@media screen and (max-width: 720px) {
  #cv-area .right {
    width: auto;
    margin-left: 0;
  }
}

#cv-area .right .counseling a {
  display: block;
  color: #000;
}

#cv-area .right .counseling a .bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: url(../images/common/bg-bnr-counseling.jpg) no-repeat center center;
  background-size: cover;
  opacity: 0.2;
}

.webp #cv-area .right .counseling a .bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: url(../images/common/bg-bnr-counseling.webp) no-repeat center center;
  background-size: cover;
  opacity: 0.2;
}

#cv-area .right .counseling a .inner {
  position: absolute;
  top: 50%;
  width: 100%;
  margin-top: -90px;
}

@media screen and (max-width: 720px) {
  #cv-area .right .counseling a .inner {
    position: static;
    margin-top: 0;
    padding: 27px 0 30px;
  }
}

#cv-area .right .counseling a .inner small {
  display: block;
  font-size: 17px;
}

@media screen and (max-width: 720px) {
  #cv-area .right .counseling a .inner small {
    font-size: 12px;
  }
}

#cv-area .right .counseling a .inner strong {
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 31px;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 720px) {
  #cv-area .right .counseling a .inner strong {
    font-size: 21px;
  }
}

#cv-area .right .counseling a .inner strong:after {
  display: block;
  content: "";
  width: 15px;
  height: 3px;
  margin: 15px auto 25px;
  background: #000;
}

@media screen and (max-width: 720px) {
  #cv-area .right .counseling a .inner strong:after {
    margin: 10px auto 20px;
  }
}

#cv-area .right .counseling a .inner p {
  font-size: 15px;
}

@media screen and (max-width: 720px) {
  #cv-area .right .counseling a .inner p {
    font-size: 12px;
  }
}

#footer {
  padding: 0 40px 20px;
  margin: 120px 0 0 0;
}

@media screen and (max-width: 720px) {
  #footer {
    padding: 0 12px 12px;
    margin: 25px 0 0 0;
  }
}

#footer a {
  color: #000;
}

#footer #footer-top {
  position: relative;
  display: flex;
}

@media screen and (max-width: 720px) {
  #footer #footer-top {
    display: block;
  }
}

#footer #footer-top #footer-left {
  padding: 0 80px 80px 0;
}

@media screen and (max-width: 720px) {
  #footer #footer-top #footer-left {
    padding: 0 0 40px 0;
  }
}

#footer #footer-top #footer-left #footer-logo {
  display: block;
  font-size: 18px;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
}

#footer #footer-top #footer-left #footer-logo a {
  color: #000;
}

#footer #footer-top #footer-left #footer-logo a small {
  display: block;
  font-size: 10px;
  padding: 0 0 8px 0;
}

#footer #footer-top #footer-left #footer-logo:after {
  display: block;
  content: "";
  width: 15px;
  height: 3px;
  margin: 20px 0;
  background: #000;
}

#footer #footer-top #footer-left .tel,
#footer #footer-top #footer-left .email {
  font-size: 11px;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  letter-spacing: 1px;
}

#footer #footer-top #footer-left .tel {
  margin: 8px 0 0 0;
}

#footer #footer-top #footer-left .tel a {
  color: #000;
}

#footer #footer-top #footer-left .email {
  margin: 5px 0 0 0;
}

#footer #footer-top #footer-nav {
  display: flex;
  margin-top: -5px;
  font-size: 13px;
  line-height: 2;
}

@media screen and (max-width: 720px) {
  #footer #footer-top #footer-nav {
    font-size: 13px;
  }
}

#footer #footer-top #footer-nav ul {
  padding-right: 60px;
}

@media screen and (max-width: 720px) {
  #footer #footer-top #footer-nav ul {
    padding-right: 30px;
  }
}

#footer #footer-top #footer-nav ul li a {
  color: #000;
}

#footer #footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media screen and (max-width: 720px) {
  #footer #footer-bottom {
    padding-top: 40px;
  }
}

#footer #footer-bottom #copyright {
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  font-size: 11px;
  letter-spacing: 1px;
}

#footer #footer-bottom #copyright a {
  color: #000;
}

#footer #footer-bottom #social ul {
  text-align: right;
}

@media screen and (max-width: 720px) {
  #footer #footer-bottom #social ul {
    text-align: left;
  }
}

#footer #footer-bottom #social ul li {
  display: inline-block;
  padding-left: 5px;
}

#footer #footer-bottom #social ul li a {
  display: inline-block;
  width: 21px;
  height: 21px;
}

#footer #footer-bottom #social ul li.link-facebook a {
  overflow: hidden;
  background: url("../images/common/ico-facebook.png") no-repeat;
  text-indent: -9999px;
  font-size: 0;
  line-height: 0;
}

.webp #footer #footer-bottom #social ul li.link-facebook a {
  overflow: hidden;
  background: url(../images/common/ico-facebook.webp) no-repeat;
  text-indent: -9999px;
  font-size: 0;
  line-height: 0;
}

#footer #footer-bottom #social ul li.link-instagram a {
  overflow: hidden;
  background: url("../images/common/ico-instagram.png") no-repeat;
  text-indent: -9999px;
  font-size: 0;
  line-height: 0;
}

.webp #footer #footer-bottom #social ul li.link-instagram a {
  overflow: hidden;
  background: url(../images/common/ico-instagram.webp) no-repeat;
  text-indent: -9999px;
  font-size: 0;
  line-height: 0;
}

.hero {
  position: relative;
  width: 1025px;
  height: 422px;
  margin: 0 auto;
}

@media screen and (max-width: 720px) {
  .hero {
    width: 100%;
    height: auto;
    box-sizing: border-box;
    padding: 0 0 0 48px;
  }
}

.hero .hero-image {
  position: absolute;
  left: 146px;
  top: 0;
}

@media screen and (max-width: 720px) {
  .hero .hero-image {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
  }

  .hero .hero-image img {
    display: block;
    width: 122%;
    height: auto;
  }
}

.hero .hero-image .hero-slideshow {
  display: block;
  width: 100%;
  height: auto;
}

@media screen and (max-width: 720px) {
  .hero .hero-image .hero-slideshow {
    min-height: 160px;
  }
}

.hero .hero-image .hero-slideshow img {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  opacity: 0;
  /* default */
}

.hero .hero-image-single-works {
  position: absolute;
  left: 146px;
  top: 0;
  width: 1200px;
  height: 100%;
}

@media screen and (max-width: 720px) {
  .hero .hero-image-single-works {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
  }
}

.hero .hero-image-single-works img {
  aspect-ratio: 1200 / 420;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media screen and (max-width: 720px) {
  .hero .hero-image-single-works img {
    display: block;
    width: 100%;
    height: auto;
  }
}

.hero .hero-title {
  position: absolute;
  left: 0;
  top: 188px;
}

@media screen and (max-width: 720px) {
  .hero .hero-title {
    position: absolute;
    left: 12px;
    top: 50%;
    margin-top: -16px;
  }
}

.hero .hero-title h1 {
  font-size: 74px;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.06em;
}

@media screen and (max-width: 720px) {
  .hero .hero-title h1 {
    font-size: 37px;
    letter-spacing: 1px;
  }
}

.hero .hero-title h1 span {
  float: left;
  clear: left;
  display: block;
  padding: 0 0 4px 0;
  margin: 28px 0 0 0;
}

@media screen and (max-width: 720px) {
  .hero .hero-title h1 span {
    margin: 8px 0 0 0;
  }
}

.hero .hero-title h1 span:first-child {
  margin: 0;
}

.new-hero {
  position: relative;
  width: 100%;
  height: 422px;
  margin: 0 auto;
}

@media screen and (max-width: 720px) {
  .new-hero {
    width: 100%;
    height: auto;
    box-sizing: border-box;
    padding: 0 0 0 48px;
  }
}

.new-hero .hero-image {
  position: absolute;
  top: 0;
  right: 0;
  width: 70%;
  height: 100%;
}

.new-hero .hero-title {
  position: absolute;
  left: 10%;
  top: 188px;
}

@media screen and (max-width: 720px) {
  .new-hero .hero-title {
    position: absolute;
    left: 12px;
    top: 50%;
    margin-top: -16px;
  }
}

.new-hero .hero-title h1 {
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  line-height: 1;
}

.new-hero .hero-title h1 span {
  display: block;
  padding: 0 0 4px 0;
  margin: 28px 0 0 0;
  font-size: 74px;
  letter-spacing: 0.06em;
}

@media screen and (max-width: 720px) {
  .new-hero .hero-title h1 span {
    margin: 8px 0 0 0;
    font-size: 24px;
  }
}

.new-hero .hero-title h1 span:first-child {
  margin: 0;
}

.new-hero .hero-title h1 small {
  display: block;
  padding-top: 10px;
  font-size: 19px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
}

@media screen and (max-width: 720px) {
  .new-hero .hero-title h1 small {
    padding-top: 5px;
    font-size: 13px;
  }
}

.new-hero.hero-home {
  height: 580px;
}

@media screen and (max-width: 720px) {
  .new-hero.hero-home {
    height: 180px;
  }
}

.new-hero.hero-home .hero-image {
  background: url("../images/index/hero-15.jpg") no-repeat center;
  background-size: cover;
}

.webp .new-hero.hero-home .hero-image {
  background: url("../images/index/hero-15.webp") no-repeat center;
  background-size: cover;
}

.new-hero.hero-home .hero-title {
  position: absolute;
  left: 10%;
  top: 150px;
}

@media screen and (max-width: 720px) {
  .new-hero.hero-home .hero-title {
    position: absolute;
    left: 12px;
    top: 50%;
    margin-top: -45px;
  }
}

.new-hero.hero-home .hero-title h1 {
  font-size: 74px;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 3px;
}

@media screen and (max-width: 720px) {
  .new-hero.hero-home .hero-title h1 {
    font-size: 24px;
    letter-spacing: 1px;
  }
}

@media screen and (max-width: 720px) {
  .new-hero.renovation-hero {
    height: 150px;
  }
}

.new-hero.renovation-hero .hero-image {
  background: url("../images/renovation/hero.jpg") no-repeat center center;
  background-size: cover;
}

.webp .new-hero.renovation-hero .hero-image {
  background: url(../images/renovation/hero.webp) no-repeat center center;
  background-size: cover;
}

@media screen and (max-width: 720px) {
  .new-hero.interior-hero {
    height: 150px;
  }
}

.new-hero.interior-hero .hero-image {
  background: url("../images/interior/hero.jpg") no-repeat center center;
  background-size: cover;
}

.webp .new-hero.interior-hero .hero-image {
  background: url(../images/interior/hero.webp) no-repeat center center;
  background-size: cover;
}

@media screen and (max-width: 720px) {
  .new-hero.artgabbeh-hero {
    height: 150px;
  }
}

.new-hero.artgabbeh-hero .hero-image {
  background: url("../images/artgabbeh/hero.jpg") no-repeat center center;
  background-size: cover;
}

.webp .new-hero.artgabbeh-hero .hero-image {
  background: url(../images/artgabbeh/hero.webp) no-repeat center center;
  background-size: cover;
}

@media screen and (max-width: 720px) {
  .new-hero.furniture-hero {
    height: 150px;
  }
}

.new-hero.furniture-hero .hero-image {
  background: url("../images/furniture/hero.jpg") no-repeat center center;
  background-size: cover;
}

.webp .new-hero.furniture-hero .hero-image {
  background: url(../images/furniture/hero.webp) no-repeat center center;
  background-size: cover;
}

@media screen and (max-width: 720px) {
  .new-hero.kakera-hero {
    height: 150px;
  }
}

.new-hero.kakera-hero .hero-image {
  background: url("../images/kakera/hero.jpg") no-repeat center center;
  background-size: cover;
}

.webp .new-hero.kakera-hero .hero-image {
  background: url(../images/kakera/hero.webp) no-repeat center center;
  background-size: cover;
}

@media screen and (max-width: 720px) {
  .new-hero.products-hero {
    height: 150px;
  }
}

.new-hero.products-hero .hero-image {
  background: url("../images/products/hero.jpg") no-repeat center center;
  background-size: cover;
}

.webp .new-hero.products-hero .hero-image {
  background: url(../images/products/hero.webp) no-repeat center center;
  background-size: cover;
}

@media screen and (max-width: 720px) {
  .new-hero.event-hero {
    height: 150px;
  }
}

.new-hero.event-hero .hero-image {
  background: url("../images/event/hero.jpg") no-repeat center center;
  background-size: cover;
}

.webp .new-hero.event-hero .hero-image {
  background: url(../images/event/hero.webp) no-repeat center center;
  background-size: cover;
}

.tags-nav {
  margin: 0 0 110px 0;
}

@media screen and (max-width: 720px) {
  .tags-nav {
    margin: 0 0 32px 0;
  }
}

.tags-nav ul {
  *zoom: 1;
  font-size: 14px;
  line-height: 1;
}

.tags-nav ul:after {
  content: "";
  display: table;
  clear: both;
}

@media screen and (max-width: 720px) {
  .tags-nav ul {
    font-size: 12px;
  }
}

.tags-nav ul li {
  float: left;
  margin: 0 10px 10px 0;
}

@media screen and (max-width: 720px) {
  .tags-nav ul li {
    margin: 0 6px 6px 0;
  }
}

.tags-nav ul li a {
  display: block;
  padding: 16px 12px;
  background-color: #000;
  color: #fff;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 700;
  white-space: nowrap;
}

@media screen and (max-width: 720px) {
  .tags-nav ul li a {
    padding: 10px 8px;
  }
}

.page-nav {
  text-align: center;
}

.page-nav ul {
  font-size: 18px;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
}

.page-nav ul li {
  display: inline-block;
  margin: 0 8px;
}

.page-nav ul li a,
.page-nav ul li span {
  display: block;
  color: #000;
}

.page-nav ul li span {
  padding: 0 1px 4px 1px;
  border-bottom: 3px solid #000;
}

.page-nav ul li.prev a {
  display: block;
  width: 8px;
  height: 12px;
  overflow: hidden;
  background: url("../images/common/ico-page-prev.png") no-repeat;
  text-indent: -9999px;
  font-size: 0;
  line-height: 0;
}

.webp .page-nav ul li.prev a {
  display: block;
  width: 8px;
  height: 12px;
  overflow: hidden;
  background: url(../images/common/ico-page-prev.webp) no-repeat;
  text-indent: -9999px;
  font-size: 0;
  line-height: 0;
}

.page-nav ul li.next a {
  display: block;
  width: 8px;
  height: 12px;
  overflow: hidden;
  background: url("../images/common/ico-page-next.png") no-repeat;
  text-indent: -9999px;
  font-size: 0;
  line-height: 0;
}

.webp .page-nav ul li.next a {
  display: block;
  width: 8px;
  height: 12px;
  overflow: hidden;
  background: url(../images/common/ico-page-next.webp) no-repeat;
  text-indent: -9999px;
  font-size: 0;
  line-height: 0;
}

.side-nav {
  margin: 20px 0 0 0;
}

.side-nav ul {
  font-size: 15px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 700;
  line-height: 1.4;
}

.side-nav ul li {
  margin: 8px 0 0 0;
}

.side-nav ul li:first-child {
  margin: 0;
}

.side-nav ul li a {
  color: #000;
}

@media screen and (max-width: 720px) {
  .section-nav {
    display: none;
  }
}

.section-nav ul li {
  margin: 11px 0 0 0;
}

.section-nav ul li:first-child {
  margin: 0;
}

.section-nav ul li a {
  display: inline-block;
  padding: 12px 16px 16px 12px;
  background-color: #000;
  color: #fff;
  line-height: 1;
}

.article-base {
  margin: 100px 0 0 0;
}

.article-base:first-child {
  margin: 0;
}

.article-head .info {
  margin: 0 0 12px 0;
  font-size: 14px;
  letter-spacing: 1px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  .article-head .info {
    font-size: 12px;
  }
}

.article-head .info small {
  font-size: 100%;
}

.article-body {
  padding: 40px 0 36px 0;
  line-height: 2;
}

@media screen and (max-width: 720px) {
  .article-body {
    padding: 20px 0 18px 0;
  }
}

.article-body img {
  max-width: 790px;
  height: auto;
}

@media screen and (max-width: 720px) {
  .article-body img {
    max-width: 100%;
  }
}

.article-foot .article-social {
  text-align: right;
}

.article-foot .article-social ul {
  display: inline-block;
  border: 4px solid #000;
  *zoom: 1;
  font-size: 13px;
  line-height: 1;
}

.article-foot .article-social ul:after {
  content: "";
  display: table;
  clear: both;
}

.article-foot .article-social ul li {
  float: left;
  display: block;
  border-left: 4px solid #000;
}

.article-foot .article-social ul li:first-child {
  border-left: 0;
}

.article-foot .article-social ul li a {
  display: block;
  box-sizing: border-box;
  min-width: 80px;
  padding: 16px 16px 16px 44px;
  text-align: center;
  color: #000;
}

.article-foot .article-social ul li.sns-twitter-tweet a {
  background: url("../images/common/ico-twitter.png") no-repeat 16px 13px;
}

.webp .article-foot .article-social ul li.sns-twitter-tweet a {
  background: url(../images/common/ico-twitter.webp) no-repeat 16px 13px;
}

.article-foot .article-social ul li.sns-facebook-share a {
  background: url("../images/common/ico-facebook-s.png") no-repeat 28px 13px;
}

.webp .article-foot .article-social ul li.sns-facebook-share a {
  background: url(../images/common/ico-facebook-s.webp) no-repeat 28px 13px;
}

.article-foot .article-prevnext {
  position: relative;
  margin: 132px 0 0 0;
  *zoom: 1;
}

.article-foot .article-prevnext:after {
  content: "";
  display: table;
  clear: both;
}

@media screen and (max-width: 720px) {
  .article-foot .article-prevnext {
    margin: 32px 0 0 0;
    text-align: center;
  }
}

.article-foot .article-prevnext .article-prev,
.article-foot .article-prevnext .article-next {
  position: relative;
  display: block;
  border-bottom: 4px solid #000;
  color: #000;
  font-size: 100%;
  line-height: 1;
}

.article-foot .article-prevnext .article-prev {
  float: left;
  padding: 5px 0 8px 24px;
}

@media screen and (max-width: 720px) {
  .article-foot .article-prevnext .article-prev {
    float: none;
    display: inline-block;
    margin: 0 0 12px 0;
  }
}

.article-foot .article-prevnext .article-prev:before {
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  width: 10px;
  height: 15px;
  margin: -8px 0 0 0;
  background: url("../images/common/ico-article-prev.png") no-repeat;
  content: "";
}

.webp .article-foot .article-prevnext .article-prev:before {
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  width: 10px;
  height: 15px;
  margin: -8px 0 0 0;
  background: url(../images/common/ico-article-prev.webp) no-repeat;
  content: "";
}

.article-foot .article-prevnext .article-next {
  float: right;
  padding: 5px 24px 8px 0;
}

@media screen and (max-width: 720px) {
  .article-foot .article-prevnext .article-next {
    float: none;
    display: inline-block;
  }
}

.article-foot .article-prevnext .article-next:before {
  position: absolute;
  right: 0;
  top: 50%;
  display: block;
  width: 10px;
  height: 15px;
  margin: -8px 0 0 0;
  background: url("../images/common/ico-article-next.png") no-repeat;
  content: "";
}

.webp .article-foot .article-prevnext .article-next:before {
  position: absolute;
  right: 0;
  top: 50%;
  display: block;
  width: 10px;
  height: 15px;
  margin: -8px 0 0 0;
  background: url(../images/common/ico-article-next.webp) no-repeat;
  content: "";
}

.article-foot .article-prevnext .article-all {
  position: absolute;
  left: 50%;
  top: 0;
  display: block;
  width: 80px;
  padding: 11px 10px 13px 10px;
  margin: 0 0 0 -50px;
  background-color: #000;
  text-align: center;
  color: #fff;
  line-height: 1;
}

.section-base {
  width: 1025px;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 720px) {
  .section-base {
    width: 100%;
    box-sizing: border-box;
    padding-left: 12px;
    padding-right: 12px;
  }
}

.section-thumb-number a {
  display: block;
  color: #000;
}

.section-thumb-number a:hover {
  opacity: 0.75;
}

.section-thumb-number .thumb {
  position: relative;
}

.section-thumb-number .thumb img {
  display: block;
}

.section-thumb-number .thumb span {
  position: absolute;
  right: -28px;
  top: -30px;
  display: block;
  width: 60px;
  height: 60px;
  box-sizing: border-box;
  padding: 21px 0;
  background: url("../images/common/thumb-number-bg.png") no-repeat;
  text-align: center;
  font-size: 19px;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-style: italic;
  letter-spacing: 1px;
  line-height: 1;
}

.webp .section-thumb-number .thumb span {
  position: absolute;
  right: -28px;
  top: -30px;
  display: block;
  width: 60px;
  height: 60px;
  box-sizing: border-box;
  padding: 21px 0;
  background: url(../images/common/thumb-number-bg.webp) no-repeat;
  text-align: center;
  font-size: 19px;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-style: italic;
  letter-spacing: 1px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  .section-thumb-number .thumb span {
    right: -8px;
  }
}

.section-thumb-number .title {
  margin: 32px 0 0 0;
  text-align: center;
  font-size: 18px;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  letter-spacing: 2px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  .section-thumb-number .title {
    margin: 24px 0 0 0;
    font-size: 12px;
    letter-spacing: 1px;
  }
}

.section-thumb-number .title span {
  display: inline-block;
  padding: 0 0 6px 0;
  border-bottom: 4px solid #000;
}

@media screen and (max-width: 720px) {
  .section-thumb-number .title span {
    padding: 0 0 4px 0;
    border-bottom: 3px solid #000;
  }
}

.section-thumb-number .description {
  margin: 24px 0 0 0;
}

@media screen and (max-width: 720px) {
  .section-thumb-number .description {
    margin: 16px 0 0 0;
  }
}

.section-thumb-number .description p {
  font-size: 12px;
  line-height: 2;
}

@media screen and (max-width: 720px) {
  .section-thumb-number .description p {
    font-size: 11px;
  }
}

.section-thumb-date a {
  display: flex;
  box-sizing: border-box;
  justify-content: space-between;
  padding: 50px 0 0;
  color: #000;

  &:nth-of-type(1),
  &:nth-of-type(2) {
    padding-top: 32px;
  }
}

@media screen and (max-width: 720px) {
  .section-thumb-date a {
    display: block;
    width: auto;
  }
}

.section-thumb-date a .thumb {
  width: 33%;
}

@media screen and (max-width: 720px) {
  .section-thumb-date a .thumb {
    display: block;
    width: auto;
    position: relative;
    margin-bottom: 20px;
  }
}

.section-thumb-date a .thumb .thumb-pic {
  width: 100%;
  height: auto;
}

@media screen and (max-width: 720px) {
  .section-thumb-date a .thumb .thumb-pic {
    height: 120px;
    -o-object-fit: cover;
    object-fit: cover;
  }
}

.section-thumb-date a .text {
  width: 63%;
}

@media screen and (max-width: 720px) {
  .section-thumb-date a .text {
    width: auto;
  }
}

.section-thumb-date a .text .category {
  display: inline-block;
  padding: 4px 6px 5px;
  font-size: 10px;
  line-height: 1;
  background-color: #000;
  color: #fff;
}

@media screen and (max-width: 720px) {
  .section-thumb-date a .text .category {
    margin: 0 0 5px 0;
  }
}

.section-thumb-date a .text .title {
  margin: 8px 0 10px 0;
  font-size: 16px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1.6;
  letter-spacing: 1px;
}

@media screen and (max-width: 720px) {
  .section-thumb-date a .text .title {
    margin: 6px 0 10px 0;
    font-size: 14px;
    letter-spacing: 0;
    line-height: 1.4;
  }
}

.section-thumb-date a .text .date {
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 13px;
}

@media screen and (max-width: 720px) {
  .section-thumb-date a .text .date {
    font-size: 12px;
  }
}

.section-thumb-date a .text .description {
  margin: 12px 0 0 0;
}

@media screen and (max-width: 720px) {
  .section-thumb-date a .text .description {
    display: none;
    clear: both;
    padding: 8px 0 0 0;
    margin: 0;
  }
}

.section-thumb-date a .text .description p {
  font-size: 12px;
  line-height: 1.75;
}

@media screen and (max-width: 720px) {
  .section-thumb-date a .text .description p {
    font-size: 11px;
  }
}

.section-thumb-date.closed a .thumb .inner {
  position: relative;
}

.section-thumb-date.closed a .thumb .inner::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-color: #fff;
  opacity: 0.7;
}

.new-section-thumb-date {
  padding-top: 40px;
}

@media screen and (max-width: 720px) {
  .new-section-thumb-date {
    padding-top: 30px;
  }
}

.new-section-thumb-date a {
  position: relative;
  display: block;
  box-sizing: border-box;
  min-height: 210px;
  color: #000;
}

@media screen and (max-width: 720px) {
  .new-section-thumb-date a {
    min-height: auto;
  }
}

.new-section-thumb-date a .column {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.new-section-thumb-date a .column .thumb {
  position: relative;
  display: block;
  width: 150px;
  height: 150px;
}

@media screen and (max-width: 720px) {
  .new-section-thumb-date a .column .thumb {
    float: left;
    position: relative;
    display: block;
    width: 30%;
    height: 30%;
  }
}

.new-section-thumb-date a .column .thumb .thumb-pic {
  display: block;
  width: 100%;
  height: auto;
}

.new-section-thumb-date a .column .thumb .thumb-filter {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: auto;
}

.new-section-thumb-date a .column .thumb .date,
.new-section-thumb-date a .column .thumb .end {
  position: absolute;
  left: 0;
  top: 96px;
  display: block;
  width: 100%;
  height: auto;
  text-align: center;
  color: #fff;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-style: italic;
  letter-spacing: 4px;
  line-height: 1;
}

@media screen and (max-width: 720px) {

  .new-section-thumb-date a .column .thumb .date,
  .new-section-thumb-date a .column .thumb .end {
    top: 50%;
    letter-spacing: 2px;
  }
}

.new-section-thumb-date a .column .thumb .date {
  margin: -35px 0 0 0;
  font-size: 25px;
}

@media screen and (max-width: 720px) {
  .new-section-thumb-date a .column .thumb .date {
    margin: -8px 0 0 0;
    font-size: 16px;
  }
}

.new-section-thumb-date a .column .thumb .date-start {
  margin: -60px 0 0 0;
}

@media screen and (max-width: 720px) {
  .new-section-thumb-date a .column .thumb .date-start {
    margin: -24px 0 0 0;
  }
}

.new-section-thumb-date a .column .thumb .date-start:after {
  position: absolute;
  left: 50%;
  top: 32px;
  display: block;
  width: 2px;
  height: 20px;
  margin-left: -1px;
  background-color: #fff;
  overflow: hidden;
  content: "";
}

@media screen and (max-width: 720px) {
  .new-section-thumb-date a .column .thumb .date-start:after {
    top: 19px;
    height: 12px;
  }
}

.new-section-thumb-date a .column .thumb .date-end {
  margin: 0 0 0 0;
}

@media screen and (max-width: 720px) {
  .new-section-thumb-date a .column .thumb .date-end {
    margin: 10px 0 0 0;
  }
}

.new-section-thumb-date a .column .thumb .end {
  margin: -6px 0 0 0;
  font-size: 28px;
}

@media screen and (max-width: 720px) {
  .new-section-thumb-date a .column .thumb .end {
    margin: -12px 0 0 0;
    font-size: 24px;
  }
}

.new-section-thumb-date a .column .right {
  width: 310px;
}

@media screen and (max-width: 720px) {
  .new-section-thumb-date a .column .right {
    width: 70%;
    padding-left: 20px;
    box-sizing: border-box;
  }
}

.new-section-thumb-date a .column .right .category {
  display: block;
  font-size: 12px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  .new-section-thumb-date a .column .right .category {
    font-size: 11px;
  }
}

.new-section-thumb-date a .column .right .title {
  margin: 6px 0 0 0;
  font-size: 16px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1.6;
  letter-spacing: 1px;
}

@media screen and (max-width: 720px) {
  .new-section-thumb-date a .column .right .title {
    margin: 6px 0 0 0;
    font-size: 14px;
    letter-spacing: 0;
    line-height: 1.4;
  }
}

.new-section-thumb-date a .description {
  margin: 25px 0 0 0;
}

@media screen and (max-width: 720px) {
  .new-section-thumb-date a .description {
    clear: both;
    padding: 10px 0 0 0;
    margin: 0;
  }
}

.new-section-thumb-date a .description p {
  font-size: 13px;
  line-height: 1.75;
}

@media screen and (max-width: 720px) {
  .new-section-thumb-date a .description p {
    font-size: 11px;
  }
}

.section-thumb-item {
  position: relative;
  box-sizing: border-box;
  min-height: 210px;
  padding: 80px 0 0 238px;
}

@media screen and (max-width: 720px) {
  .section-thumb-item {
    min-height: 100px;
    padding: 24px 0 0 120px;
    margin: 24px 0 0 0;
  }

  .section-thumb-item:first-child {
    margin: 0;
  }
}

.section-thumb-item .thumb {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 210px;
  height: 210px;
}

@media screen and (max-width: 720px) {
  .section-thumb-item .thumb {
    display: block;
    width: 100px;
    height: 100px;
  }
}

.section-thumb-item .thumb img {
  display: block;
  width: 100%;
  height: 100%;
}

.section-thumb-item .thumb .thumb-filter {
  position: absolute;
  left: 0;
  top: 0;
}

.section-thumb-item .name {
  font-size: 18px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  line-height: 1;
}

.section-thumb-item .price {
  display: block;
  margin: 12px 0 0 0;
  font-size: 11px;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  line-height: 1;
}

.section-thumb-small a {
  position: relative;
  display: block;
  box-sizing: border-box;
  min-height: 120px;
  padding: 32px 0 0 148px;
  color: #000;
}

@media screen and (max-width: 720px) {
  .section-thumb-small a {
    padding: 6px 0;
    min-height: 0;
  }

  .section-thumb-small a:after {
    clear: both;
    display: block;
    content: "";
  }
}

.section-thumb-small a .thumb {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 120px;
  height: 120px;
}

@media screen and (max-width: 720px) {
  .section-thumb-small a .thumb {
    float: left;
    position: relative;
    width: 32%;
    height: 32%;
  }
}

.section-thumb-small a .thumb .thumb-pic {
  display: block;
  width: 100%;
  height: auto;
}

.section-thumb-small a .thumb .thumb-filter {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: auto;
}

.section-thumb-small a .info {
  font-size: 12px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  .section-thumb-small a .info {
    margin: 20px 0 0 35%;
  }
}

.section-thumb-small a .info .date {
  margin: 0 14px 0 0;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
}

@media screen and (max-width: 720px) {
  .section-thumb-small a .info .date {
    margin: 0 6px 0 0;
  }
}

.section-thumb-small a .info .category {
  font-size: 100%;
}

.section-thumb-small a .title {
  margin: 12px 0 0 0;
  font-size: 17px;
  line-height: 1.4;
}

@media screen and (max-width: 720px) {
  .section-thumb-small a .title {
    margin: 6px 0 0 35%;
    font-size: 14px;
    font-weight: bold;
  }
}

.section-media .image {
  text-align: center;
}

.section-media .date {
  display: block;
  margin: 48px 0 0 0;
  font-size: 11px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  .section-media .date {
    margin: 24px 0 0 0;
  }
}

.section-media .title {
  min-height: 3.2em;
  margin: 8px 0 0 0;
  font-size: 16px;
  line-height: 1.6;
}

@media screen and (max-width: 720px) {
  .section-media .title {
    min-height: 0;
  }
}

.section-media .description {
  margin: 24px 0 0 0;
}

@media screen and (max-width: 720px) {
  .section-media .description {
    margin: 16px 0 0 0;
  }
}

.section-media .description p {
  font-size: 12px;
  line-height: 1.6;
}

.section-works a {
  display: block;
  color: #000;
}

.section-works a .thumb img {
  display: block;
  width: 100%;
  height: auto;
}

.section-works a .date {
  display: block;
  margin: 20px 0 0 0;
  font-size: 10px;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  letter-spacing: 1px;
}

.section-works a .title {
  margin: 6px 0 0 0;
  font-size: 16px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1.6;
}

.section-blogs a {
  display: block;
  color: #000;
}

.section-blogs a .thumb img {
  display: block;
  width: 100%;
  height: auto;
}

.section-blogs a .date {
  display: block;
  margin: 20px 0 0 0;
  font-size: 10px;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  letter-spacing: 1px;
}

.section-blogs a .title {
  margin: 6px 0 0 0;
  font-size: 16px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1.6;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.section-voice a {
  position: relative;
  display: block;
  box-sizing: border-box;
  min-height: 120px;
  padding: 20px 0 0 148px;
  color: #000;
}

@media screen and (max-width: 720px) {
  .section-voice a {
    padding: 12px 0 12px 120px;
  }
}

.section-voice a .thumb {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 120px;
  height: 120px;
}

@media screen and (max-width: 720px) {
  .section-voice a .thumb {
    top: 12px;
    display: block;
    width: 100px;
    height: 100px;
  }
}

.section-voice a .thumb .thumb-pic {
  display: block;
  width: 100%;
  height: auto;
}

.section-voice a .thumb .thumb-filter {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: auto;
}

.section-voice a .date {
  display: block;
  font-size: 11px;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  line-height: 1;
}

.section-voice a .name {
  margin: 6px 0 0 0;
  font-size: 14px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1;
}

.section-voice a .comment {
  margin: 14px 0 0 0;
  font-size: 13px;
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  .section-enquete {
    margin-top: 16px;
  }

  .section-enquete:first-child {
    margin-top: 0;
  }
}

.section-enquete a {
  position: relative;
  display: block;
  box-sizing: border-box;
  min-height: 36px;
  padding: 0 0 0 45px;
  color: #000;
}

@media screen and (max-width: 720px) {
  .section-enquete a {
    padding: 0 0 0 45px;
  }
}

.section-enquete a:before {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 26px;
  height: 34px;
  background: url("../images/voice/ico-enquete.png") no-repeat 0 0;
  background-size: 23px;
  content: "";
}

.webp .section-enquete a:before {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 26px;
  height: 34px;
  background: url(../images/voice/ico-enquete.webp) no-repeat 0 0;
  background-size: 23px;
  content: "";
}

.section-enquete a .info {
  font-size: 11px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1;
}

.section-enquete a .info dl.rate {
  display: inline-block;
}

.section-enquete a .info dl.rate dt,
.section-enquete a .info dl.rate dd {
  display: inline;
}

.section-enquete a .info dl.rate dd {
  color: #22ac38;
}

.section-enquete a .info .name {
  display: inline-block;
  margin-left: 18px;
  font-size: 11px;
  line-height: 1;
}

.section-enquete a .title {
  margin: 2px 0 0 0;
  font-size: 15px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1.8;
}

.content-section-title {
  position: relative;
  padding: 0 0 0 65px;
}

@media screen and (max-width: 720px) {
  .content-section-title {
    padding: 0 0 0 72px;
    line-height: 1;
  }
}

.content-section-title .number {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 50px;
  height: 50px;
  box-sizing: border-box;
  padding: 13px 0 0 2px;
  color: #fff;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: 1px;
  text-align: center;
  background: url("../images/common/content-section-title-bg-blue.png") no-repeat;
  background-size: 100%;
}

.webp .content-section-title .number {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  width: 50px;
  height: 50px;
  box-sizing: border-box;
  padding: 12px 0 0 2px;
  color: #fff;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: 1px;
  text-align: center;
  background: url(../images/common/content-section-title-bg-blue.webp) no-repeat;
  background-size: 100%;
}

@media screen and (max-width: 720px) {
  .content-section-title .number {
    position: absolute;
    left: 0;
    top: -4px;
    display: block;
    width: 38px;
    height: 38px;
    padding: 16px 0 0 2px;
    font-size: 14px;
    letter-spacing: 1px;
  }

  .webp .content-section-title .number {
    padding: 16px 0 0 2px;
  }
}

.content-section-title.green .number {
  background: url("../images/common/content-section-title-bg-green.png") no-repeat;
  background-size: 100%;
}

.webp .content-section-title.green .number {
  background: url(../images/common/content-section-title-bg-green.webp) no-repeat;
  background-size: 100%;
}

.content-section-title.yellow .number {
  background: url("../images/common/content-section-title-bg-yellow.png") no-repeat;
  background-size: 100%;
  color: #000;
}

.webp .content-section-title.yellow .number {
  background: url(../images/common/content-section-title-bg-yellow.webp) no-repeat;
  background-size: 100%;
  color: #000;
}

.content-section-title.lightblue .number {
  background: url("../images/common/content-section-title-bg-lightblue.png") no-repeat;
  background-size: 100%;
}

.webp .content-section-title.lightblue .number {
  background: url(../images/common/content-section-title-bg-lightblue.webp) no-repeat;
  background-size: 100%;
}

.content-section-title.purple .number {
  background: url("../images/common/content-section-title-bg-purple.png") no-repeat;
  background-size: 100%;
}

.webp .content-section-title.purple .number {
  background: url(../images/common/content-section-title-bg-purple.webp) no-repeat;
  background-size: 100%;
}

.content-section-title .en {
  display: block;
  margin: 0 0 2px 2px;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  font-size: 10px;
  letter-spacing: 0.06em;
  line-height: 1.4;
}

@media screen and (max-width: 720px) {
  .content-section-title .en {
    font-size: 10px;
    line-height: 1;
  }
}

.content-section-title .title {
  display: inline-block;
  padding: 0 0 10px 0;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 24px;
  letter-spacing: 1px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  .content-section-title .title {
    font-size: 16px;
    padding: 0 0 6px 0;
  }
}

.ui-slider {
  position: relative;
  height: 320px;
}

@media screen and (max-width: 720px) {
  .ui-slider {
    height: 400px;
    padding: 0 20px;
  }
}

.ui-slider .ui-slider-container {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.ui-slider .ui-slider-container .ui-slider-content {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.ui-slider .ui-slider-prev,
.ui-slider .ui-slider-next {
  -webkit-appearance: normal;
  -moz-appearance: normal;
  appearance: normal;
  display: block;
  width: 16px;
  height: 26px;
  border: 0;
  margin-top: -13px;
  overflow: hidden;
  text-indent: -9999px;
}

@media screen and (max-width: 720px) {

  .ui-slider .ui-slider-prev,
  .ui-slider .ui-slider-next {
    display: block;
    width: 12px;
    height: 20px;
  }
}

.ui-slider .ui-slider-prev:active,
.ui-slider .ui-slider-next:active {
  outline: 0;
}

.ui-slider .ui-slider-prev:hover,
.ui-slider .ui-slider-next:hover {
  opacity: 0.75;
}

.ui-slider .ui-slider-prev {
  position: absolute;
  left: -40px;
  top: 50%;
  background: url("../images/common/ico-slider-prev.png") no-repeat;
}

.webp .ui-slider .ui-slider-prev {
  position: absolute;
  left: -40px;
  top: 50%;
  background: url(../images/common/ico-slider-prev.webp) no-repeat;
}

@media screen and (max-width: 720px) {
  .ui-slider .ui-slider-prev {
    left: -5px;
    background-size: 12px 20px;
  }
}

.ui-slider .ui-slider-next {
  position: absolute;
  right: -40px;
  top: 50%;
  background: url("../images/common/ico-slider-next.png") no-repeat;
}

.webp .ui-slider .ui-slider-next {
  position: absolute;
  right: -40px;
  top: 50%;
  background: url(../images/common/ico-slider-next.webp) no-repeat;
}

@media screen and (max-width: 720px) {
  .ui-slider .ui-slider-next {
    right: -5px;
    background-size: 12px 20px;
  }
}

.ui-slideshow {
  position: relative;
}

.ui-slideshow .spacer {
  display: block;
  width: 100%;
  height: auto;
}

.ui-slideshow .ui-slideshow-container {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.ui-slideshow .ui-slideshow-container img {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: auto;
}

.ui-slideshow .caption {
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  width: 100%;
  height: auto;
  margin-top: -0.5em;
  text-align: center;
  color: #fff;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  font-size: 30px;
  letter-spacing: 2px;
}

.wpcf7-response-output {
  display: none;
}

.wpcf7-not-valid-tip {
  display: inline-block;
  margin: 0 0 0 12px;
  color: #ff0000;
  font-size: 12px;
}

div.wpcf7 .screen-reader-response {
  position: static;
  width: auto;
  height: auto;
  margin: 0 0 16px 0;
  color: #ff0000;
}

div.wpcf7 .screen-reader-response ul {
  display: none;
}

span.wpcf7-form-control-wrap {
  position: static;
}

.input-group {
  display: inline-block;
  margin: 0 0 0 36px;
}

@media screen and (max-width: 720px) {
  .input-group {
    display: block;
    margin: 6px 0 0 0;
  }
}

.input-group:first-child {
  margin: 0;
}

.input-block {
  margin: 21px 0 0 0;
}

@media screen and (max-width: 720px) {
  .input-block {
    margin: 6px 0 0 0;
  }
}

.input-block:first-child {
  margin: 0;
}

.inline-label {
  margin-left: 12px;
  margin-right: 12px;
}

@media screen and (max-width: 720px) {
  .inline-label {
    margin-left: 4px;
    margin-right: 4px;
  }
}

.inline-label:first-child {
  margin-left: 0;
}

.input-base {
  border: 4px solid #000;
  border-radius: 0;
  padding: 8px;
}

.ui-input-radios {
  line-height: 1.6 !important;
}

.ui-input-radios label {
  position: relative;
  margin: 0 8px 0 0;
}

.ui-input-radios label input {
  position: absolute;
  left: -9999px;
  top: 0;
}

.ui-input-radios label input+span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 2.75em;
  cursor: pointer;
}

.ui-input-radios label input+span:before {
  position: absolute;
  left: 0;
  top: 0.1em;
  display: block;
  width: 1.5em;
  height: 1.5em;
  background: url("../images/common/bg-input-radio.png") no-repeat;
  background-size: 100% auto;
  content: "";
}

.webp .ui-input-radios label input+span:before {
  position: absolute;
  left: 0;
  top: 0.1em;
  display: block;
  width: 1.5em;
  height: 1.5em;
  background: url(../images/common/bg-input-radio.webp) no-repeat;
  background-size: 100% auto;
  content: "";
}

.ui-input-radios label input:checked+span:before {
  background-position: 0 50%;
}

.ui-input-radios label input[disabled]+span {
  opacity: 0.5;
  cursor: default;
}

.ui-input-radios label input[disabled]+span:before {
  background-position: 0 100%;
}

.ui-input-checkbox {
  line-height: 1.6 !important;
}

.ui-input-checkbox label {
  position: relative;
  margin: 0 8px 0 0;
}

.ui-input-checkbox label input {
  position: absolute;
  left: -9999px;
  top: 0;
}

.ui-input-checkbox label input+span {
  position: relative;
  display: inline-block;
  padding: 0 0 0 2.25em;
  cursor: pointer;
}

.ui-input-checkbox label input+span:before {
  position: absolute;
  left: 0;
  top: 0.1em;
  display: block;
  width: 1.5em;
  height: 1.5em;
  background: url("../images/common/bg-input-checkbox.png") no-repeat;
  background-size: 100% auto;
  content: "";
}

.webp .ui-input-checkbox label input+span:before {
  position: absolute;
  left: 0;
  top: 0.1em;
  display: block;
  width: 1.5em;
  height: 1.5em;
  background: url(../images/common/bg-input-checkbox.webp) no-repeat;
  background-size: 100% auto;
  content: "";
}

.ui-input-checkbox label input:checked+span:before {
  background-position: 0 50%;
}

.ui-input-checkbox label input[disabled]+span {
  opacity: 0.5;
  cursor: default;
}

.ui-input-checkbox label input[disabled]+span:before {
  background-position: 0 100%;
}

.ui-select {
  position: relative;
  display: inline-block;
  background-color: #fff;
  vertical-align: middle;
  line-height: 1;
}

.ui-select label {
  position: relative;
  box-sizing: border-box;
  display: inline-block;
  width: 100%;
  height: 46px;
  padding: 8px 54px 8px 8px;
  border: 4px solid #000;
  vertical-align: top;
  text-align: center;
  line-height: 1.5;
}

@media screen and (max-width: 720px) {
  .ui-select label {
    height: 40px;
    padding: 6px 40px 6px 6px;
  }
}

.ui-select label:after {
  position: absolute;
  right: 0;
  top: 0;
  display: block;
  width: 38px;
  height: 42px;
  background: #000 url("../images/common/bg-select.png") no-repeat center center;
  content: "";
}

@media screen and (max-width: 720px) {
  .ui-select label:after {
    display: block;
    width: 28px;
    height: 32px;
    background-size: 7px 6px;
  }
}

.ui-select select {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: content-box;
}

.ui-select .wpcf7-not-valid-tip {
  display: none;
}

.form-submit {
  margin: 48px 0 0 0;
  text-align: center;
}

.title-section-en {
  position: relative;
  padding: 0 0 36px 0;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 32px;
  letter-spacing: 3px;
  line-height: 1;
}

.home-lifestyle-text {
  margin-top: 16px;
  display: inline-block;
  font-size: 14px;
}

@media screen and (max-width: 720px) {
  .title-section-en {
    padding: 0 0 16px 0;
    font-size: 18px;
    letter-spacing: 1px;
  }
}

.title-section-en small {
  font-size: 14px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  letter-spacing: 2px;
}


@media screen and (max-width: 720px) {
  .title-section-en small {
    font-size: 12px;
    letter-spacing: 0;
  }
}

.title-section-en::after {
  position: absolute;
  left: 0;
  bottom: 0;
  display: inline-block;
  width: 14px;
  height: 4px;
  background-color: #000;
  content: "";
  font-size: 0;
}

@media screen and (max-width: 720px) {
  .title-section-en::after {
    display: block;
    width: 12px;
    height: 3px;
  }
}

.title-section-mixed {
  position: relative;
  padding: 0 0 40px 0;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  font-size: 28px;
  letter-spacing: 3px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  .title-section-mixed {
    padding: 0 0 16px 0;
    font-size: 18px;
    letter-spacing: 1px;
  }
}

.title-section-mixed .en {
  font-size: 32px;
  letter-spacing: 4px;
}

@media screen and (max-width: 720px) {
  .title-section-mixed .en {
    font-size: 18px;
    letter-spacing: 2px;
  }
}

.title-section-mixed::after {
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 14px;
  height: 4px;
  background-color: #000;
  content: "";
  font-size: 0;
}

@media screen and (max-width: 720px) {
  .title-section-mixed::after {
    display: block;
    width: 12px;
    height: 3px;
  }
}

.title-category {
  width: 100%;
  font-size: 32px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  letter-spacing: 3px;
  line-height: 1;
  text-align: center;
}

.title-category span {
  display: inline-block;
  padding: 0 0 8px 0;
  border-bottom: 4px solid #000;
}

.title-archive {
  font-size: 16px;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  letter-spacing: 2px;
  line-height: 1;
}

.title-archive span {
  display: inline-block;
  padding: 0 0 8px 0;
  border-bottom: 4px solid #000;
}

.title-article {
  position: relative;
  padding: 0 0 40px 0;
  font-size: 28px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  letter-spacing: 3px;
}

.title-article a {
  color: #000;
}

.title-article a:hover {
  text-decoration: underline;
}

@media screen and (max-width: 720px) {
  .title-article {
    padding: 0 0 20px;
    font-size: 16px;
    letter-spacing: 1px;
    line-height: 1.4;
  }
}

.title-article:after {
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 14px;
  height: 4px;
  background-color: #000;
  font-size: 0;
  line-height: 0;
  content: "";
}

.title-article-sub {
  position: relative;
  padding: 0 0 40px 0;
  font-size: 23px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 2px;
}

@media screen and (max-width: 720px) {
  .title-article-sub {
    padding: 0 0 20px 0;
    font-size: 16px;
  }
}

.title-article-sub:after {
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 14px;
  height: 4px;
  background-color: #000;
  font-size: 0;
  line-height: 0;
  content: "";
}

.link-all-view {
  display: inline-block;
  padding: 16px 55px;
  background-color: #000;
  color: #fff;
  font-size: 16px;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  letter-spacing: 1px;
  line-height: 1;
  text-align: center;
}

@media screen and (max-width: 720px) {
  .link-all-view {
    padding: 13px 28px;
    font-size: 12px;
  }
}

.link-all-view small {
  display: block;
  padding-top: 5px;
  font-size: 10px;
}

@media screen and (max-width: 720px) {
  .link-all-view small {
    font-size: 9px;
  }
}

.btn-submit {
  display: inline-block;
  padding: 22px 66px;
  background-color: #000;
  border: 0;
  color: #fff;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 700;
  letter-spacing: 2px;
  line-height: 1;
}

.btn-submit:hover {
  opacity: 0.75;
}

.btn-contact {
  display: inline-block;
  padding: 28px 72px;
  background-color: #000;
  border: 0;
  color: #fff;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 700;
  font-size: 22px;
  letter-spacing: 1px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  .btn-contact {
    padding: 20px;
    font-size: 14px;
  }
}

.btn-contact .en {
  letter-spacing: 2px;
}

.btn-contact:hover {
  opacity: 0.75;
}

#home-bnr ul {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 720px) {
  #home-bnr ul {
    display: block;
  }
}

#home-bnr ul li {
  width: 31.5%;
  border: 3px solid #000;
  height: 107px;
}

@media screen and (max-width: 720px) {
  #home-bnr ul li {
    width: auto;
    margin-bottom: 10px;
    height: initial;
  }
}

#home-bnr ul li a {
  display: flex;
  align-items: center;
  color: #000;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  #home-bnr ul li:nth-of-type(3) a .text p {
    letter-spacing: -2px;
  }
}

#home-bnr ul li a .thumb {
  width: 33%;
}

#home-bnr ul li a .thumb img {
  width: 100%;
  height: auto;
}

#home-bnr ul li a .text {
  width: 67%;
  padding-left: 15px;
  line-height: 1.5;
  background: url(../images/common/arrow02.png) right 8px center no-repeat;
  background-size: 7px;
}

.webp #home-bnr ul li a .text {
  width: 67%;
  padding-left: 15px;
  line-height: 1.5;
  background: url(../images/common/arrow02.webp) right 8px center no-repeat;
  background-size: 7px;
}

#home-bnr ul li a .text small {
  font-size: 11px;
}

@media screen and (max-width: 720px) {
  #home-bnr ul li a .text small {
    font-size: 10px;
  }
}

#home-bnr ul li a .text p {
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  font-size: 15px;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 720px) {
  #home-bnr ul li a .text p {
    font-size: 14px;
  }
}

@media screen and (max-width: 720px) {
  #home-works .row article {
    margin: 12px 0 0 0;
  }

  #home-works .row article a {
    display: block;
  }

  #home-works .row article a img {
    display: block;
    width: 100%;
    height: auto;
  }

  #home-works .row.mt-6 {
    margin-top: 0 !important;
  }

  #home-works .row:first-child article:first-child {
    margin: 0;
  }
}

#home-works .link-works {
  position: relative;
  display: block;
  width: 308px;
  height: 308px;
  box-sizing: border-box;
  padding: 30px;
  background-color: #000;
  color: #fff;
  font-size: 18px !important;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  letter-spacing: 1px;
  line-height: 1.6;
}

@media screen and (max-width: 720px) {
  #home-works .link-works {
    width: 100%;
    height: 100%;
    padding: 30px 30px 90px 30px;
  }
}

#home-works .link-works:after {
  position: absolute;
  left: 50%;
  bottom: 30px;
  display: block;
  width: 32px;
  height: 32px;
  margin: 0 0 0 -16px;
  background: url("../images/common/ico-link-circle.png") no-repeat;
  content: "";
}

.webp #home-works .link-works:after {
  position: absolute;
  left: 50%;
  bottom: 30px;
  display: block;
  width: 32px;
  height: 32px;
  margin: 0 0 0 -16px;
  background: url(../images/common/ico-link-circle.webp) no-repeat;
  content: "";
}

#home-works .row a {
  position: relative;
  display: block;
  color: #fff;
  font-size: 12px;
}

#home-works .row a .info {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  padding: 20px;
  box-sizing: border-box;
  background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.5));
}

@media screen and (max-width: 720px) {
  #home-works .row a .info {
    padding: 12px;
  }
}

#home-works .row a .info h3 {
  font-size: 15px;
}

@media screen and (max-width: 720px) {
  #home-works .row a .info h3 {
    font-size: 13px;
  }
}

#home-works .row a .info .column {
  display: flex;
}

#home-works .row a .info .column dl {
  font-size: 11px;
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  #home-works .row a .info .column dl {
    font-size: 10px;
    line-height: 1.5;
  }
}

#home-works .row a .info .column dl dt {
  float: left;
  clear: left;
}

#home-works .row a .info .column dl:first-child {
  margin-right: 30px;
}

#home-works .row a .info .column dl:first-child dd {
  padding-left: 52px;
}

#home-works .row a .info .column dl:last-child dd {
  padding-left: 40px;
}

@media screen and (max-width: 720px) {

  #home-event .row .col-l,
  #event .row .col-l {
    width: 48%;
    float: left;
  }
}

@media screen and (max-width: 720px) {

  #home-event .row .col-r,
  #event .row .col-r {
    width: 48%;
    float: right;
  }
}

#home-products #products-list {
  padding-top: 40px;
}

#home-products #products-list li {
  padding-bottom: 30px;
}

#home-products #products-list li:last-child {
  display: none;
}

@media screen and (max-width: 720px) {
  #home-products #products-list li:last-child {
    display: block;
  }
}

#company-message .pic {
  float: left;
}

@media screen and (max-width: 720px) {
  #company-message .pic {
    width: 100px;
  }

  #company-message .pic img {
    display: block;
    width: 100%;
    height: auto;
  }
}

#company-message .catch {
  padding: 58px 0 0 0;
  margin: 0 0 0 254px;
}

@media screen and (max-width: 720px) {
  #company-message .catch {
    padding: 0;
    margin: 0 0 0 110px;
  }
}

#company-message .catch strong {
  font-size: 24px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  #company-message .catch strong {
    font-size: 15px;
  }
}

#company-message .ceo {
  margin: 36px 0 0 254px;
  text-align: right;
  font-size: 12px;
  line-height: 18px;
}

@media screen and (max-width: 720px) {
  #company-message .ceo {
    margin: 16px 0 0 0;
  }
}

#company-message .ceo em {
  font-size: 18px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
}

@media screen and (max-width: 720px) {
  #company-message .ceo em {
    font-size: 16px;
  }
}

#company-message .message p {
  font-size: 16px;
  line-height: 2;
}

@media screen and (max-width: 720px) {
  #company-message .message p {
    font-size: 100%;
    line-height: 1.6;
  }
}

#company-profile dl {
  margin: 24px 0 0 0;
  *zoom: 1;
  font-size: 14px;
  line-height: 2.2;
}

#company-profile dl:after {
  content: "";
  display: table;
  clear: both;
}

@media screen and (max-width: 720px) {
  #company-profile dl {
    font-size: 12px;
    line-height: 1.8;
  }
}

#company-profile dl:first-child {
  margin: 0;
}

#company-profile dl dt {
  float: left;
  width: 100px;
}

@media screen and (max-width: 720px) {
  #company-profile dl dt {
    width: 72px;
  }
}

#company-profile dl dd {
  margin: 0 0 0 100px;
}

@media screen and (max-width: 720px) {
  #company-profile dl dd {
    margin: 0 0 0 76px;
  }
}

#company-history dl {
  margin: 10px 0 0 0;
  *zoom: 1;
  font-size: 14px;
  line-height: 1.6;
}

#company-history dl:after {
  content: "";
  display: table;
  clear: both;
}

@media screen and (max-width: 720px) {
  #company-history dl {
    font-size: 12px;
  }
}

#company-history dl:first-child {
  margin: 0;
}

#company-history dl dt {
  float: left;
  width: 100px;
}

@media screen and (max-width: 720px) {
  #company-history dl dt {
    width: 72px;
  }
}

#company-history dl dd {
  margin: 0 0 0 100px;
}

@media screen and (max-width: 720px) {
  #company-history dl dd {
    margin: 0 0 0 76px;
  }
}

@media screen and (max-width: 720px) {
  #works-detail {
    padding-top: 12px;
  }
}

.works-main {
  margin-top: 80px;
}

#works-detail .works-main img {
  width: 100%;
  height: auto;
}

#works-detail .works-title {
  font-size: 26px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
}

@media screen and (max-width: 720px) {
  #works-detail .works-title {
    font-size: 16px;
  }
}

#works-detail .works-data .section-works-data {
  position: relative;
  padding: 0 0 0 234px;
}

@media screen and (max-width: 720px) {
  #works-detail .works-data .section-works-data {
    padding: 0;
  }
}

#works-detail .works-data .section-works-data .title-works-data {
  position: absolute;
  left: 0;
  top: 8px;
  padding: 0 0 6px 0;
  border-bottom: 4px solid #000;
  font-size: 16px;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  letter-spacing: 2px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  #works-detail .works-data .section-works-data .title-works-data {
    position: relative;
    left: 0;
    top: 0;
    display: inline-block;
    margin-bottom: 16px;
  }
}

#works-detail .works-data #works-detail-outline .works-data-outline {
  *zoom: 1;
  margin-bottom: 32px;
}

#works-detail .works-data #works-detail-outline .works-data-outline:after {
  content: "";
  display: table;
  clear: both;
}

#works-detail .works-data #works-detail-outline .works-data-outline dl {
  float: left;
  width: 252px;
  *zoom: 1;
  line-height: 2;
}

#works-detail .works-data #works-detail-outline .works-data-outline dl:after {
  content: "";
  display: table;
  clear: both;
}

#works-detail .works-data #works-detail-outline .works-data-outline dl dt {
  float: left;
  width: 86px;
}

#works-detail .works-data #works-detail-outline .works-data-outline dl dd {
  margin: 0 0 0 86px;
}

#works-detail .works-data #works-detail-outline .works-data-outline .works-data-outline-image {
  float: right;
  width: 538px;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #works-detail .works-data #works-detail-outline .works-data-outline .works-data-outline-image {
    float: none;
    width: 100%;
    margin: 16px 0 0 0;
  }
}

#works-detail .works-data #works-detail-outline .works-data-outline .works-data-outline-image img {
  max-width: 100%;
  height: auto;
}

#works-detail .works-data #works-detail-description p {
  line-height: 1.9;
}

#works-detail .works-data #works-detail-staff .section-works-staff {
  width: 368px;
}

@media screen and (max-width: 720px) {
  #works-detail .works-data #works-detail-staff .section-works-staff {
    width: 100%;
    margin: 24px 0 0 0;
  }

  #works-detail .works-data #works-detail-staff .section-works-staff:first-child {
    margin: 0;
  }
}

#works-detail .works-data #works-detail-staff .section-works-staff .section-works-staff-info a {
  position: relative;
  display: block;
  box-sizing: border-box;
  min-height: 120px;
  padding: 40px 0 0 148px;
  color: #000;
}

#works-detail .works-data #works-detail-staff .section-works-staff .section-works-staff-info a .thumb {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 120px;
  height: 120px;
}

#works-detail .works-data #works-detail-staff .section-works-staff .section-works-staff-info a .thumb img {
  display: block;
  width: 100%;
  height: auto;
}

#works-detail .works-data #works-detail-staff .section-works-staff .section-works-staff-info a .thumb .thumb-filter {
  position: absolute;
  left: 0;
  top: 0;
}

#works-detail .works-data #works-detail-staff .section-works-staff .section-works-staff-info a .category {
  display: block;
  font-size: 11px;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  letter-spacing: 2px;
  line-height: 1;
}

#works-detail .works-data #works-detail-staff .section-works-staff .section-works-staff-info a .name {
  display: block;
  margin-top: 5px;
  font-size: 18px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1;
}

#works-detail .works-data #works-detail-staff .section-works-staff .section-works-staff-comment {
  margin: 24px 0 0 0;
}

@media screen and (max-width: 720px) {
  #works-detail .works-data #works-detail-staff .section-works-staff .section-works-staff-comment {
    margin: 16px 0 0 0;
  }
}

#works-detail .works-data #works-detail-staff .section-works-staff .section-works-staff-comment p {
  line-height: 1.9;
}

#works-detail #works-detail-pics .works-pic {
  margin: 110px auto 0 auto;
}

@media screen and (max-width: 720px) {
  #works-detail #works-detail-pics .works-pic {
    width: 100% !important;
    margin: 24px auto 0 auto;
  }
}

#works-detail #works-detail-pics .works-pic:first-child {
  margin: 0 auto;
}

#works-detail #works-detail-pics .works-pic img {
  max-width: 100%;
  height: auto;
}

#works-detail #works-detail-pics .works-pic .description {
  margin: 12px 0 0 0;
}

#works-detail #works-detail-pics .works-pic .description p {
  font-size: 12px;
  line-height: 2;
}

@media screen and (max-width: 720px) {
  #works-detail #works-detail-interior .title-section-en small {
    display: block;
    margin: 6px 0 0 0;
  }
}

@media screen and (max-width: 720px) {
  #staff .row.mt-6 {
    margin-top: 4.5853658537% !important;
  }

  #staff .row .col-l {
    float: left;
  }

  #staff .row .col-r {
    float: right;
  }

  #staff .row .col-w-3-1 {
    width: 30.243902439%;
  }

  #staff .row .col-w-3-2 {
    width: 65.1707317073%;
  }

  #staff .row .col-w-3-1,
  #staff .row .col-w-3-2 {
    margin-left: 4.5853658537%;
  }

  #staff .row .col-w-3-1:first-child,
  #staff .row .col-w-3-2:first-child {
    margin-left: 0;
  }
}

@media screen and (max-width: 720px) {
  #staff .section-staff {
    margin: 0;
  }
}

#staff .section-staff a {
  position: relative;
  display: block;
}

#staff .section-staff a img {
  display: block;
  width: 100%;
  height: auto;
}

#staff .section-staff a .name {
  position: absolute;
  left: 28px;
  bottom: 28px;
  color: #fff;
  font-size: 16px;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  letter-spacing: 2px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  #staff .section-staff a .name {
    left: 8px;
    bottom: 8px;
    font-size: 10px;
    letter-spacing: 1px;
  }
}

#staff-detail .staff-pic img {
  display: block;
  width: 100%;
  height: auto;
}

#staff-detail .staff-skill {
  font-size: 12px;
  line-height: 1.9;
}

#staff-detail .staff-name {
  margin: 10px 0 0 0;
  font-size: 28px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1;
}

#staff-detail .staff-data {
  margin: 104px 0 0 0;
}

@media screen and (max-width: 720px) {
  #staff-detail .staff-data {
    margin: 48px 0 0 0;
  }
}

#staff-detail .staff-data .section-staff-data {
  position: relative;
  padding: 0 0 0 238px;
  margin: 80px 0 0 0;
}

@media screen and (max-width: 720px) {
  #staff-detail .staff-data .section-staff-data {
    padding: 0;
    margin: 32px 0 0 0;
  }
}

#staff-detail .staff-data .section-staff-data:first-child {
  margin: 0;
}

#staff-detail .staff-data .section-staff-data .title-staff-data {
  position: absolute;
  left: 0;
  top: 6px;
  padding: 0 0 6px 0;
  border-bottom: 4px solid #000;
  font-size: 16px;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  letter-spacing: 2px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  #staff-detail .staff-data .section-staff-data .title-staff-data {
    position: relative;
    left: 0;
    top: 0;
    display: inline-block;
    margin: 0 0 12px 0;
  }
}

#staff-detail #staff-detail-greeting p {
  font-size: 16px;
  line-height: 2;
}

@media screen and (max-width: 720px) {
  #staff-detail #staff-detail-greeting p {
    font-size: 100%;
  }
}

#staff-detail #staff-detail-question .data-set {
  *zoom: 1;
  line-height: 2.4;
}

#staff-detail #staff-detail-question .data-set:after {
  content: "";
  display: table;
  clear: both;
}

#staff-detail #staff-detail-question .data-set dt {
  float: left;
  width: 276px;
}

@media screen and (max-width: 720px) {
  #staff-detail #staff-detail-question .data-set dt {
    width: 120px;
  }
}

#staff-detail #staff-detail-question .data-set dd {
  margin: 0 0 0 276px;
}

@media screen and (max-width: 720px) {
  #staff-detail #staff-detail-question .data-set dd {
    margin: 0 0 0 120px;
  }
}

#staff-detail .section-staff-works {
  width: 236px;
  margin: 0 0 0 39px;
}

@media screen and (max-width: 720px) {
  #staff-detail .section-staff-works {
    width: 100%;
    margin: 24px 0 0 0;
  }
}

#staff-detail .section-staff-works:first-child {
  margin: 0;
}

#staff-detail .section-staff-works a {
  display: block;
  color: #000;
}

#staff-detail .section-staff-works .pic img {
  display: block;
  width: 100%;
  height: auto;
}

#staff-detail .section-staff-works .description {
  margin: 12px 0 0 0;
  font-size: 12px;
  line-height: 1.4;
}

@media screen and (max-width: 720px) {
  #access .col-r {
    margin: 48px 0 0 0;
  }
}

#access .access-title {
  position: relative;
  display: block;
  width: 100%;
  height: 120px;
  box-sizing: border-box;
  padding: 22px 0 0 140px;
}

@media screen and (max-width: 720px) {
  #access .access-title {
    height: 100px;
    padding: 20px 0 0 110px;
  }
}

#access .access-title .eyecatch {
  position: absolute;
  left: 0;
  top: 0;
}

@media screen and (max-width: 720px) {
  #access .access-title .eyecatch {
    display: block;
    width: 100px;
    height: 100px;
  }

  #access .access-title .eyecatch img {
    display: block;
    width: 100%;
    height: auto;
  }
}

#access .access-title .title {
  display: inline-block;
  padding: 0 0 5px 0;
  border-bottom: 4px solid #000;
}

@media screen and (max-width: 720px) {
  #access .access-title .title {
    padding: 0 0 4px 0;
    border-bottom: 3px solid #000;
  }
}

#access .access-title .title .en {
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 1px;
  vertical-align: -2px;
  margin-right: 12px;
}

#access .access-title .title .ja {
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  font-size: 22px;
  letter-spacing: 2px;
  vertical-align: middle;
}

@media screen and (max-width: 720px) {
  #access .access-title .title .ja {
    font-size: 18px;
    line-height: 1.4;
  }
}

#access .access-address {
  margin: 21px 0 0 0;
}

#access .access-address .en {
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  letter-spacing: 1px;
}

/* #access .access-map {
  margin: 12px 0 0 0;
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

#access .access-map iframe,
#access .access-map object,
#access .access-map embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
} */

#access .access-shops {
  margin: 22px 0 0 0;
}

#access .access-shops ul .en {
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  letter-spacing: 1px;
}

#access .access-shops ul li {
  margin: 4px 0 0 0;
  text-indent: -6px;
}

#access .access-shops ul li:first-child {
  margin: 0;
}

#access .access-shops ul li:before {
  content: "・";
}

#access .access-shops ul li a {
  color: #000;
}

#access .col-center-wrapper {
  max-width: 800px;
  margin: auto;
}

@media screen and (max-width: 720px) {
  #recruit {
    padding: 0 12px;
  }
}

#recruit .culture h2 {
  display: inline-block;
  position: relative;
  font-size: 24px;
}

@media screen and (max-width: 720px) {
  #recruit .culture h2 {
    font-size: 18px;
  }
}

#recruit .culture h2:after {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -10;
  content: "";
  width: 100%;
  height: 4px;
  background: #ffff00;
}

#recruit .culture dl {
  padding-top: 40px;
}

#recruit .culture dl dt {
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  font-size: 16px;
}

#recruit .culture dl dd {
  margin-bottom: 30px;
}

#recruit .brand {
  padding-top: 60px;
}

@media screen and (max-width: 720px) {
  #recruit .brand {
    padding-top: 30px;
  }
}

#recruit .brand h2 {
  display: inline-block;
  position: relative;
  font-size: 24px;
}

@media screen and (max-width: 720px) {
  #recruit .brand h2 {
    font-size: 18px;
  }
}

#recruit .brand h2:after {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -10;
  content: "";
  width: 100%;
  height: 4px;
  background: #ffff00;
}

#recruit .brand h3 {
  padding-top: 40px;
  font-size: 32px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
}

@media screen and (max-width: 720px) {
  #recruit .brand h3 {
    font-size: 22px;
  }
}

#recruit .brand h4 {
  padding-top: 10px;
  font-size: 22px;
}

@media screen and (max-width: 720px) {
  #recruit .brand h4 {
    font-size: 15px;
  }
}

#recruit .brand p {
  padding-top: 40px;
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  #recruit .brand p {
    padding-top: 20px;
  }
}

#recruit .box {
  padding-top: 90px;
}

@media screen and (max-width: 720px) {
  #recruit .box {
    padding-top: 60px;
  }
}

#recruit .box h3 {
  display: inline-block;
  margin-bottom: 40px;
  padding-bottom: 7px;
  font-size: 18px;
  border-bottom: 4px solid #000;
}

@media screen and (max-width: 720px) {
  #recruit .box h3 {
    font-size: 15px;
  }
}

#recruit .box h3 span {
  font-size: 13px;
}

#recruit .box .column {
  display: flex;
}

@media screen and (max-width: 720px) {
  #recruit .box .column {
    display: block;
  }
}

#recruit .box .column dl {
  width: 50%;
  font-size: 13px;
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  #recruit .box .column dl {
    width: auto;
  }
}

#recruit .box .column dl dt {
  float: left;
  clear: left;
  padding-bottom: 20px;
}

#recruit .box .column dl dd {
  padding: 0 0 20px 120px;
}

#recruit #skill {
  display: table;
  width: 100%;
  margin-top: 60px;
  padding: 30px 0;
  border: 4px solid #000;
  box-sizing: border-box;
}

@media screen and (max-width: 720px) {
  #recruit #skill {
    display: block;
    margin-top: 30px;
    padding: 30px;
  }
}

#recruit #skill h3 {
  display: table-cell;
  width: 290px;
  text-align: center;
  vertical-align: middle;
  font-size: 18px;
}

@media screen and (max-width: 720px) {
  #recruit #skill h3 {
    display: block;
    margin-bottom: 30px;
    text-align: left;
    font-size: 15px;
  }
}

#recruit #skill h3 span {
  padding-bottom: 6px;
  border-bottom: 4px solid #000;
}

#recruit #skill .right {
  display: table-cell;
}

#recruit #skill .right dl {
  line-height: 1.8;
}

#recruit #skill .right dl dt {
  float: left;
  clear: left;
}

@media screen and (max-width: 720px) {
  #recruit #skill .right dl dt {
    float: none;
    font-size: 14px;
  }

  #recruit #skill .right dl dt:nth-of-type(1) {
    display: none;
  }
}

#recruit #skill .right dl dd {
  padding-left: 280px;
  font-size: 15px;
}

@media screen and (max-width: 720px) {
  #recruit #skill .right dl dd {
    padding: 0;
    margin-bottom: 10px;
    font-size: 12px;
  }

  #recruit #skill .right dl dd:nth-of-type(1) {
    display: none;
  }
}

#resume {
  padding-top: 122px;
}

@media screen and (max-width: 720px) {
  #resume {
    padding-top: 48px;
  }
}

#resume h2 {
  margin-bottom: 30px;
  font-size: 20px;
  letter-spacing: 0.07em;
}

@media screen and (max-width: 720px) {
  #resume h2 {
    font-size: 15px;
  }
}

#resume .mail {
  padding-top: 30px;
}

#resume .mail ul {
  padding: 10px 0;
}

#recruit-form {
  margin-top: 122px;
}

@media screen and (max-width: 720px) {
  #recruit-form {
    margin-top: 48px;
  }
}

#recruit-form .content-text {
  margin-top: 32px;
}

@media screen and (max-width: 720px) {
  #recruit-form .content-text {
    margin-top: 24px;
  }
}

#recruit-form .content-text p {
  font-size: 16px;
  letter-spacing: 1px;
  line-height: 1.6;
}

@media screen and (max-width: 720px) {
  #recruit-form .content-text p {
    font-size: 100%;
    letter-spacing: 0;
  }
}

#recruit-form .content-address {
  margin: 14px 0 0 0;
  font-size: 13px;
  letter-spacing: 1px;
  text-indent: -4px;
}

@media screen and (max-width: 720px) {
  #recruit-form .content-address {
    font-size: 12px;
    letter-spacing: 0;
  }
}

#recruit-form .content-form {
  margin: 68px 0 0 0;
}

@media screen and (max-width: 720px) {
  #recruit-form .content-form {
    margin: 24px 0 0 0;
  }
}

#recruit-form .content-form dl {
  display: table;
  width: 100%;
}

@media screen and (max-width: 720px) {
  #recruit-form .content-form dl {
    display: block;
  }
}

#recruit-form .content-form dl dt,
#recruit-form .content-form dl dd {
  display: table-cell;
  padding: 16px 0;
}

@media screen and (max-width: 720px) {

  #recruit-form .content-form dl dt,
  #recruit-form .content-form dl dd {
    display: block;
  }
}

#recruit-form .content-form dl dt {
  width: 292px;
  font-size: 13px;
  line-height: 1.6;
}

@media screen and (max-width: 720px) {
  #recruit-form .content-form dl dt {
    width: auto;
    padding: 12px 0 0 0;
    font-size: 100%;
  }
}

#recruit-form .content-form dl dt .required {
  margin-left: 6px;
  color: #ff0000;
}

#recruit-form .content-form dl dt p {
  color: #ff0000;
}

#recruit-form .content-form dl dd {
  width: 732px;
  font-size: 14px;
}

@media screen and (max-width: 720px) {
  #recruit-form .content-form dl dd {
    width: auto;
    padding: 12px 0;
    font-size: 100%;
  }
}

#recruit-form .content-form .form-submit {
  margin: 64px 0 0 0;
}

@media screen and (max-width: 720px) {
  #recruit-form .content-form .form-submit {
    margin: 32px 0 0 0;
  }
}

@media screen and (max-width: 720px) {
  #blog .col-side {
    margin: 48px 0 0 0;
  }
}

@media screen and (max-width: 720px) {
  #event-detail .col-side {
    margin: 48px 0 0 0;
  }
}

#event-detail .event-head {
  margin: 40px 0 0 0;
}

#event-detail .event-head dl {
  *zoom: 1;
  line-height: 1.6;
}

#event-detail .event-head dl:after {
  content: "";
  display: table;
  clear: both;
}

#event-detail .event-head dl dt {
  float: left;
  position: relative;
  width: 90px;
  padding: 0 34px 0 0;
}

@media screen and (max-width: 720px) {
  #event-detail .event-head dl dt {
    width: 80px;
    padding: 0 34px 0 0;
  }
}

#event-detail .event-head dl dt:after {
  position: absolute;
  right: 20px;
  top: 0;
  content: ":";
}

#event-detail .event-head dl dd {
  margin: 0 0 0 124px;
}

@media screen and (max-width: 720px) {
  #event-detail .event-head dl dd {
    margin: 0 0 0 114px;
  }
}

#event-detail .event-head .event-pic {
  margin: 34px 0 0 0;
}

#event-detail .event-head .event-pic img {
  max-width: 100%;
}

#event-detail .event-form {
  margin: 60px 0 0 0;
}

@media screen and (max-width: 720px) {
  #event-detail .event-form {
    margin: 32px 0 0 0;
  }
}

#event-detail .event-form .title-article-sub {
  margin: 28px 0 0 0;
}

#event-detail .event-form form .hidden {
  display: none;
}

#event-detail .event-form form dl {
  display: table;
  width: 100%;
}

@media screen and (max-width: 720px) {
  #event-detail .event-form form dl {
    display: block;
  }
}

#event-detail .event-form form dl dt,
#event-detail .event-form form dl dd {
  display: table-cell;
  padding: 21px 0;
}

@media screen and (max-width: 720px) {

  #event-detail .event-form form dl dt,
  #event-detail .event-form form dl dd {
    display: block;
  }
}

#event-detail .event-form form dl dt {
  width: 186px;
  font-size: 13px;
}

@media screen and (max-width: 720px) {
  #event-detail .event-form form dl dt {
    width: auto;
    padding: 12px 0 0 0;
  }
}

#event-detail .event-form form dl dt .required {
  margin-left: 6px;
  color: #ff0000;
}

#event-detail .event-form form dl dt p {
  color: #ff0000;
}

#event-detail .event-form form dl dd {
  width: 604px;
  font-size: 14px;
}

@media screen and (max-width: 720px) {
  #event-detail .event-form form dl dd {
    width: auto;
    padding: 12px 0;
  }
}

#event-detail .event-form form dl dd p {
  margin-top: 1em;
}

#event-detail .event-form form dl.row-textarea dt {
  padding: 88px 0 0 0;
}

@media screen and (max-width: 720px) {
  #event-detail .event-form form dl.row-textarea dt {
    padding: 12px 0 0 0;
  }
}

#event-detail .event-form-datetime {
  width: 100%;
}

#event-detail .event-form-datetime thead th {
  background: url("../images/common/bg-dotted-x.png") repeat-x 0 bottom;
  background-size: 18px 2px;
}

.webp #event-detail .event-form-datetime thead th {
  background: url(../images/common/bg-dotted-x.webp) repeat-x 0 bottom;
  background-size: 18px 2px;
}

#event-detail .event-form-datetime thead th:nth-child(1) {
  padding: 0 0 1em 8em;
  text-align: left;
}

#event-detail .event-form-datetime thead th:nth-child(2) {
  width: 5em;
  padding: 0 0 1em 0;
  text-align: center;
}

#event-detail .event-form-datetime tbody th,
#event-detail .event-form-datetime tbody td {
  line-height: 1.6 !important;
}

#event-detail .event-form-datetime tbody th {
  padding: 1em 0;
  text-align: left;
  background: url("../images/common/bg-dotted-x.png") repeat-x 0 bottom;
  background-size: 18px 2px;
}

.webp #event-detail .event-form-datetime tbody th {
  padding: 1em 0;
  text-align: left;
  background: url(../images/common/bg-dotted-x.webp) repeat-x 0 bottom;
  background-size: 18px 2px;
}

#event-detail .event-form-datetime tbody td {
  width: 5em;
  padding: 1em 0;
  text-align: center;
  background: url("../images/common/bg-dotted-x.png") repeat-x 0 bottom;
  background-size: 18px 2px;
}

.webp #event-detail .event-form-datetime tbody td {
  width: 5em;
  padding: 1em 0;
  text-align: center;
  background: url(../images/common/bg-dotted-x.webp) repeat-x 0 bottom;
  background-size: 18px 2px;
}

#event-detail .event-form-datetime .datetime-icon {
  font-size: 150%;
  line-height: 1;
}

#event-detail .event-form-datetime .datetime-icon--open {
  color: #3300cc;
}

#event-detail .event-form-datetime .datetime-icon--fewleft {
  color: #ff9933;
}

#event-detail .event-form-datetime .datetime-icon--close {
  color: #ff0000;
}

#renovation-nav ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  justify-content: space-between;
}

#renovation-nav ul li {
  width: 23.5%;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #renovation-nav ul li {
    width: 48.5%;
  }
}

#renovation-nav ul li:after {
  content: "";
  display: block;
  width: 10px;
  height: 8px;
  margin: 5px auto 0;
  background: url("../images/common/arrow01.png") no-repeat;
  background-size: 10px;
}

.webp #renovation-nav ul li:after {
  content: "";
  display: block;
  width: 10px;
  height: 8px;
  margin: 5px auto 0;
  background: url(../images/common/arrow01.webp) no-repeat;
  background-size: 10px;
}

@media screen and (max-width: 720px) {
  #renovation-nav ul li:after {
    background: none;
  }
}

#renovation-nav ul li a {
  display: block;
  padding: 10px 0;
  color: #fff;
  background: #000;
}

@media screen and (max-width: 720px) {
  #renovation-nav ul li a {
    padding: 8px 0;
    font-size: 12px;
  }
}

#renovation-type {
  padding-top: 80px;
}

@media screen and (max-width: 720px) {
  #renovation-type {
    padding-top: 60px;
  }
}

#renovation-type .renovation-pattern {
  display: flex;
  justify-content: space-between;
  padding-top: 30px;
  list-style: none;
}

@media screen and (max-width: 720px) {
  #renovation-type .renovation-pattern {
    display: block;
  }
}

#renovation-type .renovation-pattern li {
  box-sizing: border-box;
  width: 49%;
}

@media screen and (max-width: 720px) {
  #renovation-type .renovation-pattern li {
    width: auto;
  }

  #renovation-type .renovation-pattern li:first-child {
    margin-bottom: 12px;
  }
}

#renovation-type .renovation-pattern li .inner {
  padding: 30px;
  background: #f7f7f7;
}

@media screen and (max-width: 720px) {
  #renovation-type .renovation-pattern li .inner {
    padding: 20px;
  }
}

#renovation-type .renovation-pattern li .inner h3 {
  margin-bottom: 10px;
  font-size: 17px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
}

@media screen and (max-width: 720px) {
  #renovation-type .renovation-pattern li .inner h3 {
    font-size: 15px;
  }
}

#renovation-type .renovation-pattern li .inner h3 span {
  display: inline-block;
  padding-right: 5px;
  font-size: 10px;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  color: #49a2ab;
}

#renovation-type .renovation-pattern li .inner p {
  font-size: 13px;
  line-height: 1.7;
}

@media screen and (max-width: 720px) {
  #renovation-type .renovation-pattern li .inner p {
    font-size: 11px;
  }
}

#renovation-type .renovation-pattern li .btn {
  float: right;
  margin-top: 20px;
  border: 3px solid #000;
  background: none;
}

#renovation-type .renovation-pattern li .btn a {
  display: block;
  padding: 8px 10px;
  font-size: 11px;
  color: #000;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1;
}

#renovation-type .renovation-pattern li .btn a span {
  display: inline-block;
  padding-left: 12px;
  background: url(../images/common/arrow03.png) no-repeat left;
  background-size: 7px;
}

.webp #renovation-type .renovation-pattern li .btn a span {
  display: inline-block;
  padding-left: 12px;
  background: url(../images/common/arrow03.webp) no-repeat left;
  background-size: 7px;
}

#renovation-type #property-type {
  clear: both;
  padding-top: 40px;
}

#renovation-type #property-type h3 {
  display: inline-block;
  margin-bottom: 30px;
  font-size: 20px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  border-bottom: 3px solid #000;
}

@media screen and (max-width: 720px) {
  #renovation-type #property-type h3 {
    font-size: 16px;
  }
}

#renovation-type #property-type ul li {
  display: flex;
  align-items: center;
}

@media screen and (max-width: 720px) {
  #renovation-type #property-type ul li {
    display: block;
  }
}

#renovation-type #property-type ul li:first-child {
  margin-bottom: 40px;
}

#renovation-type #property-type ul li .works {
  width: 25%;
}

@media screen and (max-width: 720px) {
  #renovation-type #property-type ul li .works {
    width: auto;
  }
}

#renovation-type #property-type ul li .works a {
  display: block;
  position: relative;
}

#renovation-type #property-type ul li .works a img {
  width: 100%;
  height: auto;
}

#renovation-type #property-type ul li .works a p {
  position: absolute;
  bottom: 10px;
  left: 10px;
  padding-left: 12px;
  font-size: 12px;
  color: #fff;
  background: url(../images/common/arrow04.png) no-repeat left;
  background-size: 7px;
}

.webp #renovation-type #property-type ul li .works a p {
  position: absolute;
  bottom: 10px;
  left: 10px;
  padding-left: 12px;
  font-size: 12px;
  color: #fff;
  background: url(../images/common/arrow04.webp) no-repeat left;
  background-size: 7px;
}

#renovation-type #property-type ul li .text {
  width: 75%;
  padding-left: 40px;
}

@media screen and (max-width: 720px) {
  #renovation-type #property-type ul li .text {
    width: auto;
    padding: 20px 0 0 0;
  }
}

#renovation-type #property-type ul li .text h4 {
  padding-bottom: 10px;
  font-size: 17px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
}

@media screen and (max-width: 720px) {
  #renovation-type #property-type ul li .text h4 {
    font-size: 15px;
  }
}

#renovation-type #property-type ul li .text h4 span {
  display: inline-block;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  color: #49a2ab;
  padding-right: 10px;
}

#renovation-type #property-type ul li .text p {
  font-size: 13px;
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  #renovation-type #property-type ul li .text p {
    font-size: 12px;
  }
}

#renovation-type #property-type ul li .btn {
  margin-top: 15px;
  border: 3px solid #000;
  background: none;
}

#renovation-type #property-type ul li .btn a {
  display: block;
  padding: 8px 10px;
  font-size: 11px;
  color: #000;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1;
}

#renovation-type #property-type ul li .btn a span {
  display: inline-block;
  padding-left: 12px;
  background: url(../images/common/arrow03.png) no-repeat left;
  background-size: 7px;
}

.webp #renovation-type #property-type ul li .btn a span {
  display: inline-block;
  padding-left: 12px;
  background: url(../images/common/arrow03.webp) no-repeat left;
  background-size: 7px;
}

#renovation-type #diagram {
  padding-top: 60px;
  text-align: right;
}

#renovation-type #diagram small {
  display: inline-block;
  padding-bottom: 10px;
}

@media screen and (max-width: 720px) {
  #renovation-type #diagram .diagram {
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
  }
}

#renovation-type #diagram .diagram img {
  width: 100%;
  height: auto;
}

@media screen and (max-width: 720px) {
  #renovation-type #diagram .diagram img {
    width: 500px;
  }
}

#renovation-type #onestop {
  display: flex;
  align-items: center;
  padding-top: 60px;
}

@media screen and (max-width: 720px) {
  #renovation-type #onestop {
    display: block;
  }
}

#renovation-type #onestop .text {
  width: 70%;
  padding-right: 50px;
  box-sizing: border-box;
}

@media screen and (max-width: 720px) {
  #renovation-type #onestop .text {
    width: auto;
    padding: 0 0 30px 0;
  }
}

#renovation-type #onestop .text h4 {
  display: inline-block;
  margin-bottom: 20px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 20px;
  border-bottom: 3px solid #000;
}

@media screen and (max-width: 720px) {
  #renovation-type #onestop .text h4 {
    font-size: 16px;
  }
}

#renovation-type #onestop .text p {
  font-size: 14px;
  line-height: 1.8;
}

#renovation-type #onestop .graph {
  width: 30%;
}

@media screen and (max-width: 720px) {
  #renovation-type #onestop .graph {
    width: auto;
  }
}

#renovation-type #onestop .graph img {
  width: 100%;
  height: auto;
}

#renovation-type #contact-area {
  margin-top: 60px;
  padding: 40px;
  background: #F7F7F7;
}

@media screen and (max-width: 720px) {
  #renovation-type #contact-area {
    margin-top: 40px;
  }
}

#renovation-flow {
  padding-top: 80px;
}

@media screen and (max-width: 720px) {
  #renovation-flow {
    padding-top: 48px;
  }
}

#renovation-flow .flow,
.renovation-safe__wrap {
  padding-top: 60px;
}

@media screen and (max-width: 720px) {

  #renovation-flow .flow,
  .renovation-safe__wrap {
    padding-top: 40px;
  }
}

#renovation-flow .flow h3,
.renovation-heading03 {
  display: inline-block;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  margin-bottom: 30px;
  border-bottom: 3px solid #000;
}

#renovation-flow .flow ul li {
  display: flex;
  align-items: center;
  padding: 30px;
}

@media screen and (max-width: 720px) {
  #renovation-flow .flow ul li {
    display: block;
    padding: 20px;
  }
}

#renovation-flow .flow ul li:nth-child(odd) {
  background: #F7F7F7;
}

#renovation-flow .flow ul li h4 {
  width: 300px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1.4;
}

@media screen and (max-width: 720px) {
  #renovation-flow .flow ul li h4 {
    width: auto;
    padding-bottom: 10px;
  }
}

#renovation-flow .flow ul li h4 .num {
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  color: #49a2ab;
}

#renovation-flow .flow ul li h4 small {
  font-size: 11px;
  font-family: "FOT-筑紫ゴシック Pro D", TsukuGoPro-D;
}

#renovation-flow .flow ul li p {
  width: 725px;
  font-size: 13px;
}

@media screen and (max-width: 720px) {
  #renovation-flow .flow ul li p {
    width: auto;
    font-size: 11px;
  }
}

#renovation-enquete,
#renovation-safe {
  padding-top: 100px;
}

@media screen and (max-width: 720px) {

  #renovation-enquete,
  #renovation-safe {
    padding-top: 60px;
  }
}

#renovation-enquete #enquete-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-top: 40px;
}

@media screen and (max-width: 720px) {
  #renovation-enquete #enquete-list {
    display: block;
  }
}

#renovation-enquete #enquete-list li {
  display: flex;
  align-items: center;
  width: 49%;
  padding-bottom: 20px;
}

@media screen and (max-width: 720px) {
  #renovation-enquete #enquete-list li {
    width: auto;
  }
}

#renovation-enquete #enquete-list li .icon {
  width: 23px;
  height: 35px;
  background: url(../images/voice/ico-enquete.png) no-repeat;
  background-size: 23px;
}

.webp #renovation-enquete #enquete-list li .icon {
  width: 23px;
  height: 35px;
  background: url(../images/voice/ico-enquete.webp) no-repeat;
  background-size: 23px;
}

#renovation-enquete #enquete-list li .text {
  width: calc(100% - 23px);
  padding-left: 20px;
  box-sizing: border-box;
}

#renovation-enquete #enquete-list li .text .rate {
  display: inline-block;
  padding-right: 10px;
  font-size: 12px;
  line-height: 1;
}

#renovation-enquete #enquete-list li .text .rate dt {
  display: inline-block;
}

#renovation-enquete #enquete-list li .text .rate dd {
  display: inline-block;
  color: #49a2ab;
}

#renovation-enquete #enquete-list li .text .name {
  display: inline-block;
  font-size: 12px;
}

#renovation-enquete #enquete-list li .text h3 {
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 14px;
}

@media screen and (max-width: 720px) {
  #renovation-enquete #enquete-list li .text h3 {
    font-size: 13px;
  }
}

#renovation-enquete #enquete-list li .text h3 a {
  color: #000;
}

#renovation-modelroom {
  margin-top: 100px;
}

@media screen and (max-width: 720px) {
  #renovation-modelroom {
    margin-top: 60px;
  }
}

#renovation-modelroom .about-modelroom {
  padding: 40px 0;
}

@media screen and (max-width: 720px) {
  #renovation-modelroom .row .col-l {
    padding-bottom: 40px;
  }
}

#renovation-modelroom .desc {
  padding-top: 20px;
}

#renovation-modelroom .desc h4 {
  margin-bottom: 10px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
}

#renovation-modelroom .desc p {
  font-size: 13px;
  line-height: 1.7;
}

#enquete {
  margin-top: 128px;
}

@media screen and (max-width: 720px) {
  #enquete {
    margin-top: 64px;
  }
}

#enquete .title-enquete {
  margin-bottom: 52px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 22px;
  letter-spacing: 1px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  #enquete .title-enquete {
    margin-bottom: 26px;
  }
}

#enquete .title-enquete span {
  display: inline-block;
  padding: 0 0 11px 0;
  border-bottom: 4px solid #000;
}

@media screen and (max-width: 720px) {
  #voice-detail .col-main {
    margin-top: 32px;
  }
}

#voice-detail .voice-thumb {
  position: relative;
  display: block;
  width: 187px;
  height: 187px;
}

@media screen and (max-width: 720px) {
  #voice-detail .voice-thumb {
    margin: 0 auto;
  }
}

#voice-detail .voice-thumb .thumb-pic {
  display: block;
  width: 100%;
  height: auto;
}

#voice-detail .voice-thumb .thumb-filter {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: auto;
}

#voice-detail .voice-title {
  width: 187px;
  margin: 12px 0 0 0;
  text-align: center;
  font-size: 16px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1.4;
}

@media screen and (max-width: 720px) {
  #voice-detail .voice-title {
    width: 100%;
  }
}

#voice-detail .voice-question {
  margin: 56px 0 0 0;
}

#voice-detail .voice-question:first-child {
  margin: 0;
}

#voice-detail .voice-question .voice-question-title {
  position: relative;
  min-height: 50px;
  padding: 0 0 0 80px;
  font-size: 18px;
  line-height: 60px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
}

@media screen and (max-width: 720px) {
  #voice-detail .voice-question .voice-question-title {
    line-height: 30px;
  }
}

#voice-detail .voice-question .voice-question-title .number {
  box-sizing: border-box;
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 60px;
  height: 60px;
  padding: 20px 0;
  background: url("../images/common/thumb-number-bg.png") no-repeat;
  text-align: center;
  text-indent: -0.2em;
  font-style: italic;
  letter-spacing: 1px;
  line-height: 1;
}

.webp #voice-detail .voice-question .voice-question-title .number {
  box-sizing: border-box;
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 60px;
  height: 60px;
  padding: 20px 0;
  background: url(../images/common/thumb-number-bg.webp) no-repeat;
  text-align: center;
  text-indent: -0.2em;
  font-style: italic;
  letter-spacing: 1px;
  line-height: 1;
}

#voice-detail .voice-question .voice-question-text {
  margin: 10px 0 0 0;
}

@media screen and (max-width: 720px) {
  #voice-detail .voice-question .voice-question-text {
    margin: 20px 0 0 0;
  }
}

#voice-detail .voice-question .voice-question-text p {
  font-size: 100%;
  line-height: 1.8;
}

#voice-detail .voice-pic {
  margin: 90px 0 0 0;
}

#voice-detail .voice-pic .voice-pic-title {
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
}

#voice-detail .voice-pic .voice-pic-title span {
  display: inline-block;
  padding: 0 0 2px 0;
  border-bottom: 3px solid #000;
}

#voice-detail .voice-pic .pic {
  margin: 30px 0 0 0;
}

#voice-detail .voice-pic .pic img {
  max-width: 100%;
  height: auto;
}

#interior-nav ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  justify-content: space-between;
}

#interior-nav ul li {
  width: 23.5%;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #interior-nav ul li {
    width: 48.5%;
  }
}

#interior-nav ul li:after {
  content: "";
  display: block;
  width: 10px;
  height: 8px;
  margin: 5px auto 0;
  background: url("../images/common/arrow01.png") no-repeat;
  background-size: 10px;
}

.webp #interior-nav ul li:after {
  content: "";
  display: block;
  width: 10px;
  height: 8px;
  margin: 5px auto 0;
  background: url(../images/common/arrow01.webp) no-repeat;
  background-size: 10px;
}

@media screen and (max-width: 720px) {
  #interior-nav ul li:after {
    background: none;
  }
}

#interior-nav ul li a {
  display: block;
  padding: 10px 0;
  color: #fff;
  background: #000;
}

@media screen and (max-width: 720px) {
  #interior-nav ul li a {
    padding: 8px 0;
    font-size: 12px;
  }
}

#interior-products {
  margin-top: 80px;
}

@media screen and (max-width: 720px) {
  #interior-products {
    margin-top: 60px;
  }
}

#interior-products #products-list1 {
  display: flex;
  justify-content: space-between;
  padding-top: 40px;
  list-style: none;
}

@media screen and (max-width: 720px) {
  #interior-products #products-list1 {
    display: block;
    padding: 20px 0 20px;
  }
}

#interior-products #products-list1 li {
  width: 32%;
}

@media screen and (max-width: 720px) {
  #interior-products #products-list1 li {
    width: auto;
    padding-bottom: 40px;
  }

  #interior-products #products-list1 li:last-child {
    padding: 0;
  }
}

#interior-products #products-list1 li a {
  color: #000;
}

#interior-products #products-list1 li .thumb {
  margin-bottom: 20px;
}

#interior-products #products-list1 li .thumb img {
  width: 100%;
  height: auto;
}

#interior-products #products-list1 li h3 {
  margin-bottom: 10px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  font-size: 18px;
}

@media screen and (max-width: 720px) {
  #interior-products #products-list1 li h3 {
    font-size: 16px;
  }
}

#interior-products #products-list1 li h3 span {
  font-size: 70%;
}

#interior-products #products-list1 li p {
  font-size: 13px;
}

#interior-products #products-list1 li .btn {
  float: right;
  margin-top: 20px;
  border: 3px solid #000;
  background: none;
}

@media screen and (max-width: 720px) {
  #interior-products #products-list1 li .btn {
    float: none;
  }
}

#interior-products #products-list1 li .btn a {
  display: block;
  padding: 8px 10px;
  font-size: 11px;
  color: #000;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1;
}

#interior-products #products-list1 li .btn a span {
  display: inline-block;
  padding-left: 12px;
  background: url(../images/common/arrow03.png) no-repeat left;
  background-size: 7px;
}

.webp #interior-products #products-list1 li .btn a span {
  display: inline-block;
  padding-left: 12px;
  background: url(../images/common/arrow03.webp) no-repeat left;
  background-size: 7px;
}

#interior-products #products-list2 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  list-style: none;
}

#interior-products #products-list2::after {
  display: block;
  content: "";
  width: 32%;
}

#interior-products #products-list2 li {
  width: 32%;
  padding-top: 50px;
}

@media screen and (max-width: 720px) {
  #interior-products #products-list2 li {
    width: 49%;
    padding-top: 30px;
  }
}

#interior-products #products-list2 li .thumb {
  margin-bottom: 15px;
}

#interior-products #products-list2 li .thumb img {
  width: 100%;
  height: auto;
}

#interior-products #products-list2 li h3 {
  margin-bottom: 5px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  font-size: 15px;
}

@media screen and (max-width: 720px) {
  #interior-products #products-list2 li h3 {
    font-size: 13px;
  }
}

#interior-products #products-list2 li p {
  font-size: 12px;
}

@media screen and (max-width: 720px) {
  #interior-products #products-list2 li p {
    font-size: 11px;
  }
}

#interior-products #totalcordinate {
  padding: 60px 0;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #interior-products #totalcordinate img {
    width: 100%;
    height: auto;
  }
}

#interior-cordinate p {
  padding: 30px 0 40px;
  font-size: 14px;
}

@media screen and (max-width: 720px) {
  #interior-cordinate p {
    padding: 20px 0;
    font-size: 12px;
  }
}

#interior-cordinate .works {
  display: flex;
  justify-content: space-between;
}

#interior-cordinate .works li {
  width: 32%;
}

@media screen and (max-width: 720px) {
  #interior-cordinate .works li {
    width: 49%;
  }

  #interior-cordinate .works li:nth-of-type(3) {
    display: none;
  }
}

#interior-cordinate .works li a {
  position: relative;
  display: block;
  color: #fff;
}

#interior-cordinate .works li a img {
  width: 100%;
  height: auto;
}

#interior-cordinate .works li a h3 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 15px 20px;
  font-size: 14px;
  background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.5));
  box-sizing: border-box;
}

@media screen and (max-width: 720px) {
  #interior-cordinate .works li a h3 {
    padding: 5px 10px;
    font-size: 11px;
  }
}

#interior-store {
  padding-top: 120px;
}

@media screen and (max-width: 720px) {
  #interior-store {
    padding-top: 60px;
  }
}

#interior-store .store-list {
  padding-top: 40px;
}

@media screen and (max-width: 720px) {
  #interior-store .store-list {
    padding-top: 20px;
  }
}

#interior-store .store-list li {
  display: flex;
  align-items: center;
}

#interior-store .store-list li:first-child {
  margin-bottom: 30px;
}

@media screen and (max-width: 720px) {
  #interior-store .store-list li {
    display: block;
  }
}

#interior-store .store-list li .thumb {
  width: 32%;
}

@media screen and (max-width: 720px) {
  #interior-store .store-list li .thumb {
    width: auto;
    margin-bottom: 20px;
  }
}

#interior-store .store-list li .thumb img {
  width: 100%;
  height: auto;
}

#interior-store .store-list li .text {
  width: 68%;
  padding-left: 60px;
  box-sizing: border-box;
}

@media screen and (max-width: 720px) {
  #interior-store .store-list li .text {
    width: auto;
    padding: 0 0 0 0;
  }
}

#interior-store .store-list li .text small {
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  font-size: 11px;
  letter-spacing: 0.06em;
}

@media screen and (max-width: 720px) {
  #interior-store .store-list li .text small {
    font-size: 10px;
  }
}

#interior-store .store-list li .text h3 {
  padding-bottom: 20px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.3;
}

@media screen and (max-width: 720px) {
  #interior-store .store-list li .text h3 {
    font-size: 16px;
  }
}

#interior-store .store-list li .text p {
  padding-bottom: 20px;
  font-size: 14px;
}

@media screen and (max-width: 720px) {
  #interior-store .store-list li .text p {
    font-size: 12px;
  }
}

#interior-store .store-list li .text .meta {
  display: flex;
  letter-spacing: 0.06em;
}

#interior-store .store-list li .text .meta .address {
  padding-right: 30px;
}

@media screen and (max-width: 720px) {
  #interior-store .store-list li .text .meta .address {
    width: 60%;
    box-sizing: border-box;
  }
}

#interior-store .store-list li .text .meta .address h4 {
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 11px;
}

#interior-store .store-list li .text .meta .address p {
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 700;
  font-size: 12px;
}

@media screen and (max-width: 720px) {
  #interior-store .store-list li .text .meta .tel {
    width: 40%;
  }
}

#interior-store .store-list li .text .meta .tel h4 {
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 11px;
}

#interior-store .store-list li .text .meta .tel p {
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 700;
  font-size: 12px;
}

#interior-shipping {
  padding-top: 120px;
}

@media screen and (max-width: 720px) {
  #interior-shipping {
    padding-top: 60px;
  }
}

#interior-shipping .text {
  padding: 30px 0 40px;
}

@media screen and (max-width: 720px) {
  #interior-shipping .text {
    padding: 20px 0 30px;
  }
}

#interior-shipping .text span {
  color: #FF3B00;
  font-size: 18px;
}

@media screen and (max-width: 720px) {
  #interior-shipping .text span {
    font-size: inherit;
  }
}

#interior-shipping .column {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 720px) {
  #interior-shipping .column {
    display: block;
  }
}

#interior-shipping .column .shipping {
  width: 49%;
  padding: 30px;
  background: #F7F7F7;
  box-sizing: border-box;
}

@media screen and (max-width: 720px) {
  #interior-shipping .column .shipping {
    width: auto;
    padding: 20px;
  }

  #interior-shipping .column .shipping:first-child {
    margin-bottom: 12px;
  }
}

#interior-shipping .column .shipping .content-title {
  padding-bottom: 15px;
}

#interior-shipping .column .shipping .content-title .en {
  display: inline-block;
  padding-right: 10px;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 10px;
  letter-spacing: 0.06em;
}

#interior-shipping .column .shipping p {
  font-size: 12px;
}

#estate-comingsoon {
  padding: 80px 0 120px 0;
}

#estate-comingsoon p {
  text-align: center;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 24px;
  letter-spacing: 2px;
}

#klaska-top .title {
  margin-top: -12px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 28px;
  letter-spacing: 2px;
  line-height: 1.6;
}

@media screen and (max-width: 720px) {
  #klaska-top .title {
    margin-top: 0;
    font-size: 14px;
    letter-spacing: 1px;
  }
}

#klaska-top .content-top-text {
  margin-top: 40px;
}

#klaska-top .content-top-text p {
  font-size: 16px;
  line-height: 1.95;
  letter-spacing: 1px;
}

#klaska-top .content-top-text p:first-child {
  margin: 0;
}

#klaska-top .content-top-image {
  margin-top: 72px;
}

#klaska-standard {
  margin-top: 130px;
}

#klaska-standard .content-section-inner {
  margin: 46px 0 0 0;
}

#klaska-estate {
  margin-top: 130px;
}

#klaska-estate .content-section-inner {
  margin: 46px 0 0 0;
}

#klaska-naked {
  margin-top: 48px;
}

#klaska-naked .content-section-inner {
  margin: 46px 0 0 0;
}

#furniture-about #intro {
  padding-bottom: 80px;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #furniture-about #intro {
    padding-bottom: 60px;
  }
}

#furniture-about #intro small {
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 12px;
}

@media screen and (max-width: 720px) {
  #furniture-about #intro small {
    font-size: 11px;
  }
}

#furniture-about #intro h2 {
  padding-bottom: 20px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 26px;
}

@media screen and (max-width: 720px) {
  #furniture-about #intro h2 {
    font-size: 18px;
  }
}

#furniture-about #intro p {
  font-size: 15px;
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  #furniture-about #intro p {
    font-size: 13px;
  }
}

#furniture-about #points {
  padding-bottom: 100px;
}

@media screen and (max-width: 720px) {
  #furniture-about #points {
    padding-bottom: 30px;
  }
}

#furniture-about #points li {
  display: flex;
  align-items: center;
  margin-bottom: 30px;
}

@media screen and (max-width: 720px) {
  #furniture-about #points li {
    align-items: flex-start;
    margin-bottom: 40px;
  }
}

#furniture-about #points li:nth-child(odd) .text {
  padding-left: 5%;
}

#furniture-about #points li:nth-child(even) {
  flex-flow: row-reverse;
}

#furniture-about #points li:nth-child(even) .text {
  padding-right: 5%;
}

#furniture-about #points li .thumb {
  width: 25%;
}

@media screen and (max-width: 720px) {
  #furniture-about #points li .thumb {
    width: 30%;
    margin-bottom: 15px;
  }
}

#furniture-about #points li .thumb img {
  max-width: 100%;
  height: auto;
}

#furniture-about #points li .text {
  width: 75%;
}

@media screen and (max-width: 720px) {
  #furniture-about #points li .text {
    width: 70%;
  }
}

#furniture-about #points li .text h3 {
  margin-bottom: 15px;
  font-size: 20px;
}

@media screen and (max-width: 720px) {
  #furniture-about #points li .text h3 {
    font-size: 12px;
  }
}

#furniture-about #points li .text h3 span {
  display: inline-block;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 24px;
  border-bottom: 4px solid #000;
}

@media screen and (max-width: 720px) {
  #furniture-about #points li .text h3 span {
    font-size: 15px;
    border-bottom: 3px solid #000;
  }
}

#furniture-about #points li .text p {
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  #furniture-about #points li .text p {
    font-size: 12px;
    line-height: 1.6;
  }

  #furniture-about #points li .text p br {
    display: none;
  }
}

#furniture-difference .title {
  position: relative;
  margin-bottom: 30px;
  padding-bottom: 20px;
}

#furniture-difference .title::after {
  position: absolute;
  bottom: 0;
  content: "";
  display: block;
  width: 20px;
  height: 4px;
  background: #000;
}

#furniture-difference .title small {
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 16px;
  color: #49a2ab;
}

@media screen and (max-width: 720px) {
  #furniture-difference .title small {
    font-size: 13px;
  }
}

#furniture-difference .title h3 {
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 24px;
}

@media screen and (max-width: 720px) {
  #furniture-difference .title h3 {
    font-size: 18px;
  }
}

#furniture-difference ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#furniture-difference ul li {
  width: 32%;
}

@media screen and (max-width: 720px) {
  #furniture-difference ul li {
    width: 48%;
    padding-bottom: 20px;
  }
}

#furniture-difference ul li .thumb {
  padding-bottom: 20px;
}

#furniture-difference ul li .thumb img {
  width: 100%;
  height: auto;
}

#furniture-difference ul li h4 {
  padding-bottom: 10px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 18px;
}

@media screen and (max-width: 720px) {
  #furniture-difference ul li h4 {
    font-size: 14px;
  }
}

#furniture-difference ul li p {
  font-size: 14px;
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  #furniture-difference ul li p {
    font-size: 12px;
  }
}

.furniture-bnr {
  padding-top: 80px;
  display: flex;
}

@media screen and (max-width: 720px) {
  .furniture-bnr {
    display: block;
    padding-top: 60px;
  }
}

.furniture-bnr>div {
  width: 31.5%;
  margin: 0 auto;
  text-align: center;
}

@media screen and (max-width: 720px) {
  .furniture-bnr>div {
    width: auto;
    margin-bottom: 15px;
  }
}

.furniture-bnr>div.product {
  background: url(../images/furniture/bnr_furniture01.jpg) no-repeat;
  background-size: cover;
}

.webp .furniture-bnr>div.product {
  background: url(../images/furniture/bnr_furniture01.webp) no-repeat;
  background-size: cover;
}

.furniture-bnr>div.product-chair {
  background: url(../images/furniture/bnr_furniture02.jpg) no-repeat;
  background-size: cover;
}

.webp .furniture-bnr>div.product-chair {
  background: url(../images/furniture/bnr_furniture02.webp) no-repeat;
  background-size: cover;
}

.furniture-bnr>div.product h3 span {
  font-size: 12px;
}

.furniture-bnr>div.product-chair h3 span {
  font-size: 12px;
}

.furniture-bnr>div a {
  display: block;
  color: #fff;
  padding: 30px 0;
}

#kakera-about #intro {
  position: relative;
  padding-bottom: 120px;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #kakera-about #intro {
    padding-bottom: 60px;
  }
}

#kakera-about #intro ul li {
  position: absolute;
  z-index: -1;
}

@media screen and (max-width: 720px) {
  #kakera-about #intro ul li {
    opacity: 0.7;
  }
}

#kakera-about #intro ul li.kakera1 {
  position: absolute;
  top: -100px;
  left: 10px;
}

@media screen and (max-width: 720px) {
  #kakera-about #intro ul li.kakera1 {
    top: -100px;
    left: -30px;
    transform: scale(0.5);
  }
}

#kakera-about #intro ul li.kakera2 {
  position: absolute;
  top: 0;
  right: 30px;
}

@media screen and (max-width: 720px) {
  #kakera-about #intro ul li.kakera2 {
    top: -20px;
    right: -20px;
    transform: scale(0.5);
  }
}

#kakera-about #intro ul li.kakera3 {
  position: absolute;
  bottom: 60px;
  left: 250px;
}

@media screen and (max-width: 720px) {
  #kakera-about #intro ul li.kakera3 {
    left: 50px;
    transform: scale(0.5);
  }
}

#kakera-about #intro ul li.kakera4 {
  position: absolute;
  bottom: 20px;
  right: 300px;
}

@media screen and (max-width: 720px) {
  #kakera-about #intro ul li.kakera4 {
    right: 50px;
    transform: scale(0.5);
  }
}

#kakera-about #intro h2 {
  padding-bottom: 20px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 26px;
}

@media screen and (max-width: 720px) {
  #kakera-about #intro h2 {
    font-size: 18px;
  }
}

#kakera-about #intro p {
  font-size: 15px;
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  #kakera-about #intro p {
    font-size: 13px;
  }
}

#kakera-about #points {
  padding-bottom: 100px;
}

@media screen and (max-width: 720px) {
  #kakera-about #points {
    padding-bottom: 30px;
  }
}

#kakera-about #points li {
  display: flex;
  align-items: center;
  margin-bottom: 80px;
}

@media screen and (max-width: 720px) {
  #kakera-about #points li {
    align-items: flex-start;
    margin-bottom: 40px;
  }
}

#kakera-about #points li:nth-child(odd) .text {
  padding-left: 5%;
}

#kakera-about #points li:nth-child(even) {
  flex-flow: row-reverse;
}

#kakera-about #points li:nth-child(even) .text {
  padding-right: 5%;
}

#kakera-about #points li:last-child {
  margin: 0;
}

#kakera-about #points li .thumb {
  width: 25%;
}

@media screen and (max-width: 720px) {
  #kakera-about #points li .thumb {
    width: 30%;
    margin-bottom: 15px;
  }
}

#kakera-about #points li .thumb img {
  max-width: 100%;
  height: auto;
}

#kakera-about #points li .text {
  width: 75%;
}

@media screen and (max-width: 720px) {
  #kakera-about #points li .text {
    width: 70%;
  }
}

#kakera-about #points li .text h3 {
  margin-bottom: 15px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 24px;
}

@media screen and (max-width: 720px) {
  #kakera-about #points li .text h3 {
    font-size: 17px;
  }
}

#kakera-about #points li .text p {
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  #kakera-about #points li .text p {
    font-size: 12px;
    line-height: 1.6;
  }

  #kakera-about #points li .text p br {
    display: none;
  }
}

@media screen and (max-width: 720px) {
  .kakera-bnr {
    display: block;
    padding-top: 60px;
  }
}

.kakera-bnr>div {
  width: 31.5%;
  margin: 0 auto;
  text-align: center;
}

@media screen and (max-width: 720px) {
  .kakera-bnr>div {
    width: auto;
    margin-bottom: 15px;
  }
}

.kakera-bnr>div.product {
  background: url(../images/kakera/bnr01.jpg) no-repeat;
  background-size: cover;
}

.webp .kakera-bnr>div.product {
  background: url(../images/kakera/bnr01.webp) no-repeat;
  background-size: cover;
}

.kakera-bnr>div.product h3 span {
  font-size: 12px;
}

.kakera-bnr>div a {
  display: block;
  color: #fff;
  padding: 30px 0;
}

#about-artgabbeh .column {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

@media screen and (max-width: 720px) {
  #about-artgabbeh .column {
    display: block;
  }
}

#about-artgabbeh .column .thumb {
  width: 47%;
}

@media screen and (max-width: 720px) {
  #about-artgabbeh .column .thumb {
    width: auto;
    padding-bottom: 20px;
  }
}

#about-artgabbeh .column .thumb img {
  width: 100%;
  height: auto;
}

#about-artgabbeh .column .text {
  width: 47%;
}

@media screen and (max-width: 720px) {
  #about-artgabbeh .column .text {
    width: auto;
  }
}

#about-artgabbeh .column .text small {
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 10px;
}

@media screen and (max-width: 720px) {
  #about-artgabbeh .column .text small {
    font-size: 9px;
  }
}

#about-artgabbeh .column .text h2 {
  margin-bottom: 10px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 24px;
  font-weight: 700;
}

@media screen and (max-width: 720px) {
  #about-artgabbeh .column .text h2 {
    font-size: 15px;
  }
}

#about-artgabbeh .column .text p {
  font-size: 14px;
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  #about-artgabbeh .column .text p {
    font-size: 12px;
  }
}

#about-artgabbeh .about-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding-top: 80px;
}

#about-artgabbeh .about-list li {
  width: 32%;
}

@media screen and (max-width: 720px) {
  #about-artgabbeh .about-list li {
    width: 49%;
    margin-bottom: 30px;
  }
}

#about-artgabbeh .about-list li.zollanvari span {
  position: absolute;
  top: -20px;
  right: -20px;
}

@media screen and (max-width: 720px) {
  #about-artgabbeh .about-list li.zollanvari span img {
    width: 60px;
    height: auto;
  }
}

#about-artgabbeh .about-list li h3 {
  padding-bottom: 15px;
}

#about-artgabbeh .about-list li .thumb {
  position: relative;
  padding-bottom: 20px;
}

#about-artgabbeh .about-list li .thumb>img {
  width: 100%;
  height: auto;
}

#about-artgabbeh .about-list li p {
  font-size: 13px;
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  #about-artgabbeh .about-list li p {
    font-size: 12px;
    line-height: 1.6;
  }
}

#artgabbeh-quality {
  padding-top: 100px;
}

@media screen and (max-width: 720px) {
  #artgabbeh-quality {
    padding-top: 60px;
  }
}

#artgabbeh-quality .title {
  padding-bottom: 50px;
  text-align: center;
}

#artgabbeh-quality .title small {
  display: block;
}

#artgabbeh-quality .title small span {
  color: #49a2ab;
}

#artgabbeh-quality .title h2 {
  display: inline-block;
  border-bottom: 3px solid #000;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
}

@media screen and (max-width: 720px) {
  #artgabbeh-quality .title h2 {
    font-size: 18px;
  }
}

#artgabbeh-quality ul li {
  display: flex;
  align-items: center;
  margin-bottom: 30px;
}

#artgabbeh-quality ul li:nth-of-type(2) {
  flex-direction: row-reverse;
}

#artgabbeh-quality ul li:nth-of-type(2) .text {
  padding: 0 30px 0 0;
}

@media screen and (max-width: 720px) {
  #artgabbeh-quality ul li:nth-of-type(2) .text {
    width: auto;
    padding: 20px 0 0 0;
  }
}

@media screen and (max-width: 720px) {
  #artgabbeh-quality ul li {
    display: block;
  }
}

#artgabbeh-quality ul li .thumb {
  width: 32%;
}

@media screen and (max-width: 720px) {
  #artgabbeh-quality ul li .thumb {
    width: auto;
  }
}

#artgabbeh-quality ul li .thumb img {
  width: 100%;
  height: auto;
}

#artgabbeh-quality ul li .text {
  width: 70%;
  padding: 0 0 0 30px;
}

@media screen and (max-width: 720px) {
  #artgabbeh-quality ul li .text {
    width: auto;
    padding: 20px 0 0 0;
  }
}

#artgabbeh-quality ul li .text h3 {
  padding-bottom: 10px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
}

#artgabbeh-quality ul li .text p {
  font-size: 13px;
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  #artgabbeh-quality ul li .text p {
    font-size: 12px;
  }
}

#artgabbeh-patterns {
  margin-top: 100px;
}

@media screen and (max-width: 720px) {
  #artgabbeh-patterns {
    margin-top: 60px;
  }
}

#artgabbeh-patterns .inner {
  display: flex;
  justify-content: space-between;
  padding: 40px 50px;
  box-sizing: border-box;
  background: #F7F7F7;
}

@media screen and (max-width: 720px) {
  #artgabbeh-patterns .inner {
    display: block;
    padding: 30px;
  }
}

#artgabbeh-patterns .inner .text {
  width: 60%;
}

@media screen and (max-width: 720px) {
  #artgabbeh-patterns .inner .text {
    width: auto;
    margin-bottom: 30px;
  }
}

#artgabbeh-patterns .inner .text h2 {
  padding-bottom: 20px;
  font-size: 20px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
}

@media screen and (max-width: 720px) {
  #artgabbeh-patterns .inner .text h2 {
    font-size: 18px;
  }
}

#artgabbeh-patterns .inner .text p {
  font-size: 14px;
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  #artgabbeh-patterns .inner .text p {
    font-size: 12px;
  }

  #artgabbeh-patterns .inner .text p br {
    display: none;
  }
}

#artgabbeh-patterns .inner ul {
  width: 40%;
}

@media screen and (max-width: 720px) {
  #artgabbeh-patterns .inner ul {
    width: auto;
  }
}

#artgabbeh-patterns .inner ul li {
  display: flex;
  padding-bottom: 20px;
}

@media screen and (max-width: 720px) {
  #artgabbeh-patterns .inner ul li {
    padding-bottom: 10px;
  }
}

#artgabbeh-patterns .inner ul li:last-child {
  padding: 0;
}

#artgabbeh-patterns .inner ul li .pattern {
  width: 30%;
}

#artgabbeh-patterns .inner ul li .text {
  width: 70%;
  padding-left: 20px;
}

#artgabbeh-patterns .inner ul li .text h3 {
  font-size: 14px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
}

@media screen and (max-width: 720px) {
  #artgabbeh-patterns .inner ul li .text p {
    font-size: 11px;
  }
}

#artgabbeh-voice {
  padding-top: 100px;
}

@media screen and (max-width: 720px) {
  #artgabbeh-voice {
    padding-top: 60px;
  }
}

#artgabbeh-voice .title {
  padding-bottom: 90px;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #artgabbeh-voice .title {
    padding-bottom: 40px;
  }
}

#artgabbeh-voice .title h2 {
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1.5;
}

@media screen and (max-width: 720px) {
  #artgabbeh-voice .title h2 {
    font-size: 16px;
  }
}

#artgabbeh-voice .title h2:after {
  content: "";
  display: block;
  width: 20px;
  height: 3px;
  margin: 20px auto;
  background: #000;
}

#artgabbeh-voice .pic img {
  width: 100%;
  height: auto;
}

#artgabbeh-voice #voice-slider {
  position: relative;
  padding-top: 60px;
}

#artgabbeh-voice #voice-slider ul li p {
  margin-bottom: 10px;
}

#artgabbeh-voice #voice-slider ul li .comment {
  border: 3px solid #000;
}

#artgabbeh-voice #voice-slider ul li .comment img {
  width: 100%;
  height: auto;
}

#artgabbeh-voice #voice-slider .bx-controls-direction {
  padding-top: 20px;
}

#artgabbeh-voice #voice-slider .bx-controls-direction .bx-prev {
  position: absolute;
  left: 50%;
  display: inline-block;
  width: 7px;
  height: 15px;
  margin-left: -67px;
  padding: 10px;
  background: url(../images/artgabbeh/arrow_l.png) no-repeat center center;
  background-size: 7px;
}

.webp #artgabbeh-voice #voice-slider .bx-controls-direction .bx-prev {
  position: absolute;
  left: 50%;
  display: inline-block;
  width: 7px;
  height: 15px;
  margin-left: -67px;
  padding: 10px;
  background: url(../images/artgabbeh/arrow_l.webp) no-repeat center center;
  background-size: 7px;
}

#artgabbeh-voice #voice-slider .bx-controls-direction .bx-next {
  position: absolute;
  left: 50%;
  display: inline-block;
  width: 7px;
  height: 15px;
  margin-left: 42px;
  padding: 10px;
  background: url(../images/artgabbeh/arrow_r.png) no-repeat center center;
  background-size: 7px;
}

.webp #artgabbeh-voice #voice-slider .bx-controls-direction .bx-next {
  position: absolute;
  left: 50%;
  display: inline-block;
  width: 7px;
  height: 15px;
  margin-left: 42px;
  padding: 10px;
  background: url(../images/artgabbeh/arrow_r.webp) no-repeat center center;
  background-size: 7px;
}

#artgabbeh-voice #voice-slider #slide-counter {
  position: absolute;
  left: 50%;
  bottom: -30px;
  margin-left: -20px;
}

.artgabbeh-bnr {
  display: flex;
  justify-content: space-between;
  padding-top: 120px;
}

@media screen and (max-width: 720px) {
  .artgabbeh-bnr {
    display: block;
    padding-top: 80px;
  }
}

.artgabbeh-bnr>div {
  width: 31.5%;
  margin: 0 auto;
  text-align: center;
}

@media screen and (max-width: 720px) {
  .artgabbeh-bnr>div {
    width: auto;
    margin-bottom: 15px;
  }
}

.artgabbeh-bnr>div.product {
  background: url(../images/artgabbeh/bnr_gabbeh02.jpg) no-repeat;
  background-size: cover;
}

.webp .artgabbeh-bnr>div.product {
  background: url(../images/artgabbeh/bnr_gabbeh02.webp) no-repeat;
  background-size: cover;
}

.artgabbeh-bnr>div.product h3 span {
  font-size: 12px;
}

.artgabbeh-bnr>div.exhibition {
  background: url(../images/artgabbeh/bnr_gabbeh01.jpg) no-repeat;
  background-size: cover;
}

.webp .artgabbeh-bnr>div.exhibition {
  background: url(../images/artgabbeh/bnr_gabbeh01.webp) no-repeat;
  background-size: cover;
}

.artgabbeh-bnr>div.member {
  background: #49a2ab;
}

.artgabbeh-bnr>div a {
  display: block;
  color: #fff;
  padding: 30px 0;
}

.artgabbeh-bnr>div.tribalrug {
  margin: 0 auto;
}

#bondroom-top .title {
  margin-top: -12px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 28px;
  letter-spacing: 2px;
  line-height: 1.6;
}

@media screen and (max-width: 720px) {
  #bondroom-top .title {
    margin-top: 0;
    font-size: 14px;
    letter-spacing: 1px;
  }
}

#bondroom-top .content-top-text {
  margin-top: 32px;
}

@media screen and (max-width: 720px) {
  #bondroom-top .content-top-text {
    margin-top: 24px;
  }
}

#bondroom-top .content-top-text p {
  font-size: 16px;
  line-height: 1.95;
  letter-spacing: 1px;
}

@media screen and (max-width: 720px) {
  #bondroom-top .content-top-text p {
    font-size: 12px;
    line-height: 1.4;
  }
}

#bondroom-top .content-top-text p:first-child {
  margin: 0;
}

#bondroom-top .content-top-image {
  margin-top: 72px;
}

@media screen and (max-width: 720px) {
  #bondroom-top .content-top-image {
    margin-top: 24px;
  }

  #bondroom-top .content-top-image img {
    display: block;
    width: 100%;
    height: auto;
  }
}

#bondroom-event {
  margin-top: 124px;
}

@media screen and (max-width: 720px) {
  #bondroom-event {
    margin-top: 48px;
  }
}

#bondroom-event .content-section-inner {
  margin: 42px 0 0 0;
}

@media screen and (max-width: 720px) {
  #bondroom-event .content-section-inner {
    margin-top: 24px;
  }
}

@media screen and (max-width: 720px) {
  #bondroom-event .content-section-inner .section-bond-event .pic img {
    display: block;
    width: 100%;
    height: auto;
  }
}

#bondroom-event .content-section-inner .section-bond-event .title {
  margin: 28px 0 0 0;
  text-align: center;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 18px;
  letter-spacing: 2px;
  line-height: 1;
}

#bondroom-event .content-section-inner .section-bond-event .title span {
  display: inline-block;
  padding: 0 0 6px 0;
  border-bottom: 4px solid #000;
}

#bondroom-event .content-section-inner .section-bond-event .description {
  margin: 26px 0 0 0;
}

#bondroom-event .content-section-inner .section-bond-event .description p {
  font-size: 13px;
  line-height: 1.7;
}

#bondroom-information {
  margin-top: 125px;
}

@media screen and (max-width: 720px) {
  #bondroom-information {
    margin-top: 48px;
  }
}

#bondroom-information .content-section-inner {
  margin: 32px 0 0 0;
}

@media screen and (max-width: 720px) {
  #bondroom-information .content-section-inner {
    margin-top: 24px;
  }
}

#bondroom-rental {
  margin-top: 92px;
}

@media screen and (max-width: 720px) {
  #bondroom-rental {
    margin-top: 48px;
  }
}

#bondroom-rental .content-section-inner {
  margin: 42px 0 0 0;
}

@media screen and (max-width: 720px) {
  #bondroom-rental .content-section-inner {
    margin-top: 24px;
  }
}

#bondroom-rental .content-section-inner .bondroom-rental-section {
  display: block;
  width: 308px;
  height: 308px;
  box-sizing: border-box;
  padding: 108px 0 0 0;
  margin-left: 50px;
  background: url("../images/bondroom/rental-section-bg.png") no-repeat;
  background-size: 100%;
  text-align: center;
}

.webp #bondroom-rental .content-section-inner .bondroom-rental-section {
  display: block;
  width: 308px;
  height: 308px;
  box-sizing: border-box;
  padding: 108px 0 0 0;
  margin-left: 50px;
  background: url(../images/bondroom/rental-section-bg.webp) no-repeat;
  background-size: 100%;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #bondroom-rental .content-section-inner .bondroom-rental-section {
    float: none;
    display: block;
    width: 296px;
    height: 296px;
    margin: 24px auto 0 auto;
  }
}

#bondroom-rental .content-section-inner .bondroom-rental-section:first-child {
  margin-left: 0;
}

@media screen and (max-width: 720px) {
  #bondroom-rental .content-section-inner .bondroom-rental-section:first-child {
    margin-left: auto;
  }
}

#bondroom-rental .content-section-inner .bondroom-rental-section .title {
  font-size: 15px;
}

#bondroom-rental .content-section-inner .bondroom-rental-section .title .en {
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  color: #dc2875;
  letter-spacing: 2px;
}

#bondroom-rental .content-section-inner .bondroom-rental-section .title .ja {
  font-size: 13px;
  letter-spacing: 1px;
  margin-left: 4px;
}

#bondroom-rental .content-section-inner .bondroom-rental-section .price {
  margin: 10px 0 0 0;
}

#bondroom-rental .content-section-inner .bondroom-rental-section .price p {
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 28px;
  letter-spacing: 2px;
  line-height: 1;
}

#bondroom-rental .content-section-inner .bondroom-rental-section .price p small {
  font-size: 14px;
}

#bondroom-rental .content-section-inner .bondroom-rental-data {
  width: 316px;
  padding: 28px 0 0 0;
  margin-left: 42px;
}

@media screen and (max-width: 720px) {
  #bondroom-rental .content-section-inner .bondroom-rental-data {
    width: 100%;
    margin-left: 0;
  }
}

#bondroom-rental .content-section-inner .bondroom-rental-data p {
  font-size: 14px;
}

#bondroom-rental .content-section-inner .bondroom-rental-data .bondroom-rental-fixtures {
  margin: 28px 0 0 9px;
  font-size: 12px;
  letter-spacing: 1px;
  line-height: 1.4;
}

@media screen and (max-width: 720px) {
  #bondroom-rental .content-section-inner .bondroom-rental-data .bondroom-rental-fixtures {
    margin: 16px 0 0 0;
  }
}

#bondroom-rental .content-section-inner .bondroom-rental-data .bondroom-rental-fixtures li {
  margin: 9px 0 0 0;
}

@media screen and (max-width: 720px) {
  #bondroom-rental .content-section-inner .bondroom-rental-data .bondroom-rental-fixtures li {
    padding: 0 0 0 1em;
    margin: 6px 0 0 0;
    text-indent: -1em;
  }
}

#bondroom-rental .content-section-inner .bondroom-rental-data .bondroom-rental-fixtures li:before {
  content: "・ ";
}

#bondroom-submit {
  margin-top: 120px;
}

@media screen and (max-width: 720px) {
  #bondroom-submit {
    margin-top: 32px;
  }
}

#bondroom-submit .btn-contact {
  padding: 28px 58px;
}

@media screen and (max-width: 720px) {
  #bondroom-submit .btn-contact {
    padding: 20px 12px;
    margin: 0 12px;
  }
}

#contact-area {
  padding-top: 120px;
  margin-top: -120px;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #contact-area {
    padding-top: 48px;
    margin-top: -48px;
  }
}

#contact-area .title-area {
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 18px;
}

@media screen and (max-width: 720px) {
  #contact-area .title-area {
    font-size: 16px;
  }
}

#contact-area .contact-area-main {
  margin-top: 32px;
}

#contact-area .contact-area-main p {
  line-height: 1.8;
}

#contact-tel {
  margin-top: 160px;
}

@media screen and (max-width: 720px) {
  #contact-tel {
    margin-top: 40px;
  }

  #contact-tel .title-section-en small {
    display: block;
    margin: 6px 0 0 0;
    font-size: 11px;
  }
}

@media screen and (max-width: 720px) {
  #contact-tel .col-r {
    margin-top: 16px;
  }
}

#contact-tel .content-text-boxed {
  padding: 46px 26px 46px 0;
  background-color: #eee;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #contact-tel .content-text-boxed {
    padding: 12px 0 16px 0;
  }
}

#contact-tel .content-text-boxed dl {
  line-height: 36px;
}

@media screen and (max-width: 720px) {
  #contact-tel .content-text-boxed dl {
    line-height: 26px;
  }
}

#contact-tel .content-text-boxed dl dt,
#contact-tel .content-text-boxed dl dd {
  display: inline-block;
}

#contact-tel .content-text-boxed dl dt {
  vertical-align: -2px;
}

@media screen and (max-width: 720px) {
  #contact-tel .content-text-boxed dl dt {
    display: block;
    vertical-align: 0;
  }
}

#contact-tel .content-text-boxed dl dd {
  padding: 0 0 4px 0;
  margin-left: 16px;
  border-bottom: 4px solid #000;
  vertical-align: middle;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 32px;
  letter-spacing: 2px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  #contact-tel .content-text-boxed dl dd {
    margin-left: 0;
    margin-top: 8px;
    font-size: 26px;
  }
}

#contact-tel .content-text-boxed dl dd a {
  color: #000;
}

#contact-mailform {
  margin-top: 152px;
}

@media screen and (max-width: 720px) {
  #contact-mailform {
    margin-top: 48px;
  }
}

@media screen and (max-width: 720px) {
  #contact-mailform .title-section-en small {
    display: block;
    margin: 6px 0 0 0;
    font-size: 11px;
  }
}

#contact-mailform .forms-nav {
  margin: 48px 0 0 0;
}

@media screen and (max-width: 720px) {
  #contact-mailform .forms-nav {
    margin-top: 24px;
  }
}

@media screen and (max-width: 720px) {
  #contact-mailform .forms-nav .forms-nav-section {
    margin: 24px 0 0 0;
  }

  #contact-mailform .forms-nav .forms-nav-section:first-child {
    margin: 0;
  }
}

#contact-mailform .forms-nav .forms-nav-section a {
  display: block;
  width: 100%;
  height: auto;
  color: #000;
}

#contact-mailform .forms-nav .forms-nav-section a .forms-nav-title {
  position: relative;
  display: block;
  width: 100%;
  height: 60px;
  box-sizing: border-box;
  padding: 0 0 0 78px;
  line-height: 1;
}

#contact-mailform .forms-nav .forms-nav-section a .forms-nav-title .number {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 60px;
  height: 60px;
  box-sizing: border-box;
  padding: 20px;
  background: url("../images/common/thumb-number-bg.png") no-repeat;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  text-align: center;
  text-indent: -4px;
  font-size: 18px;
  font-style: italic;
  letter-spacing: 2px;
}

.webp #contact-mailform .forms-nav .forms-nav-section a .forms-nav-title .number {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 60px;
  height: 60px;
  box-sizing: border-box;
  padding: 20px;
  background: url(../images/common/thumb-number-bg.webp) no-repeat;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  text-align: center;
  text-indent: -4px;
  font-size: 18px;
  font-style: italic;
  letter-spacing: 2px;
}

#contact-mailform .forms-nav .forms-nav-section a .forms-nav-title .title {
  display: block;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 18px;
  line-height: 56px;
}

#contact-mailform .forms-nav .forms-nav-section a .forms-nav-title:after {
  position: absolute;
  right: 2px;
  top: 24px;
  display: block;
  width: 20px;
  height: 12px;
  background: url("../images/common/ico-article-down.png") no-repeat;
  content: "";
}

.webp #contact-mailform .forms-nav .forms-nav-section a .forms-nav-title:after {
  position: absolute;
  right: 2px;
  top: 24px;
  display: block;
  width: 20px;
  height: 12px;
  background: url(../images/common/ico-article-down.webp) no-repeat;
  content: "";
}

#contact-mailform .forms-nav .forms-nav-section a .description {
  margin: 12px 0 0 0;
}

#contact-mailform .forms-nav .forms-nav-section a .description p {
  font-size: 13px;
  line-height: 1.8;
}

#contact-mailform .forms-nav .forms-nav-section.active a .forms-nav-title .number {
  background-image: url("../images/common/content-section-title-bg-blue.png");
  color: #fff;
}

.webp #contact-mailform .forms-nav .forms-nav-section.active a .forms-nav-title .number {
  background-image: url(../images/common/content-section-title-bg-blue.webp);
  color: #fff;
}

#contact-mailform .forms {
  margin: 160px 0 0 0;
}

@media screen and (max-width: 720px) {
  #contact-mailform .forms {
    margin: 48px 0 0 0;
  }
}

#contact-mailform .forms .contact-mailform-section {
  position: relative;
}

#contact-mailform .forms .contact-mailform-section .form-title {
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 22px;
  letter-spacing: 1px;
  line-height: 1;
}

#contact-mailform .forms .contact-mailform-section .form-title span {
  display: inline-block;
  padding: 0 0 11px 0;
  border-bottom: 4px solid #000;
}

#contact-mailform .forms .contact-mailform-section .form-sub-title {
  position: relative;
  padding: 0 0 22px 0;
  background: url("../images/common/bg-dotted-x.png") repeat-x 0 bottom;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 18px;
  letter-spacing: 1px;
}

.webp #contact-mailform .forms .contact-mailform-section .form-sub-title {
  position: relative;
  padding: 0 0 22px 0;
  background: url(../images/common/bg-dotted-x.webp) repeat-x 0 bottom;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 18px;
  letter-spacing: 1px;
}

@media screen and (max-width: 720px) {
  #contact-mailform .forms .contact-mailform-section .form-sub-title {
    padding: 0 0 8px 0;
    font-size: 16px;
  }
}

#contact-mailform .forms .contact-mailform-section .form-sub-title:before {
  display: inline;
  content: "■ ";
}

#contact-mailform .forms .contact-mailform-section .form-area {
  position: absolute;
  right: 0;
  top: 6px;
}

@media screen and (max-width: 720px) {
  #contact-mailform .forms .contact-mailform-section .form-area {
    position: relative;
    right: 0;
    top: 0;
    margin-top: 16px;
  }
}

#contact-mailform .forms .contact-mailform-section .form-content {
  margin: 30px 0 0 0;
}

@media screen and (max-width: 720px) {
  #contact-mailform .forms .contact-mailform-section .form-content {
    margin: 16px 0 0 0;
  }
}

#contact-mailform .forms .contact-mailform-section .form-content dl {
  display: table;
  width: 100%;
  background: url("../images/common/bg-dotted-x.png") repeat-x 0 bottom;
}

.webp #contact-mailform .forms .contact-mailform-section .form-content dl {
  display: table;
  width: 100%;
  background: url(../images/common/bg-dotted-x.webp) repeat-x 0 bottom;
}

@media screen and (max-width: 720px) {
  #contact-mailform .forms .contact-mailform-section .form-content dl {
    display: block;
  }
}

#contact-mailform .forms .contact-mailform-section .form-content dl dt,
#contact-mailform .forms .contact-mailform-section .form-content dl dd {
  display: table-cell;
  padding: 21px 0;
}

@media screen and (max-width: 720px) {

  #contact-mailform .forms .contact-mailform-section .form-content dl dt,
  #contact-mailform .forms .contact-mailform-section .form-content dl dd {
    display: block;
  }
}

#contact-mailform .forms .contact-mailform-section .form-content dl dt {
  width: 292px;
  font-size: 13px;
  line-height: 2.4;
}

@media screen and (max-width: 720px) {
  #contact-mailform .forms .contact-mailform-section .form-content dl dt {
    width: auto;
    padding: 12px 0 0 0;
  }
}

#contact-mailform .forms .contact-mailform-section .form-content dl dt .required {
  margin-left: 6px;
  color: #ff0000;
}

#contact-mailform .forms .contact-mailform-section .form-content dl dt p {
  color: #ff0000;
}

#contact-mailform .forms .contact-mailform-section .form-content dl dd {
  width: 732px;
  font-size: 14px;
  line-height: 2.4;
}

@media screen and (max-width: 720px) {
  #contact-mailform .forms .contact-mailform-section .form-content dl dd {
    width: auto;
    padding: 12px 0;
  }
}

#contact-mailform .forms .contact-mailform-section .form-content dl dd p.attention {
  color: #ff0000;
}

@media screen and (max-width: 720px) {
  #contact-mailform .forms #contact-mailform-1 #contact-mailform-1-date .w-200 {
    margin: 0 0 0 64px;
  }

  #contact-mailform .forms #contact-mailform-1 #contact-mailform-1-date .w-200:before {
    content: "\A";
    white-space: pre;
    font-size: 0;
    line-height: 0;
  }
}

.contact-form-datetime {
  width: 100%;
  table-layout: fixed;
}

.contact-form-datetime thead th {
  padding: 0 0 1em 0;
  background: url("../images/common/bg-dotted-x.png") repeat-x 0 bottom;
  background-size: 18px 2px;
  text-align: center;
}

.webp .contact-form-datetime thead th {
  padding: 0 0 1em 0;
  background: url(../images/common/bg-dotted-x.webp) repeat-x 0 bottom;
  background-size: 18px 2px;
  text-align: center;
}

.contact-form-datetime thead th:nth-child(1) {
  width: 256px;
}

@media screen and (max-width: 720px) {
  .contact-form-datetime thead th:nth-child(1) {
    width: 120px;
  }
}

.contact-form-datetime tbody th,
.contact-form-datetime tbody td {
  line-height: 1.6 !important;
}

.contact-form-datetime tbody th {
  width: 256px;
  padding: 1em 0;
  text-align: left;
  background: url("../images/common/bg-dotted-x.png") repeat-x 0 bottom;
  background-size: 18px 2px;
}

.webp .contact-form-datetime tbody th {
  width: 256px;
  padding: 1em 0;
  text-align: left;
  background: url(../images/common/bg-dotted-x.webp) repeat-x 0 bottom;
  background-size: 18px 2px;
}

@media screen and (max-width: 720px) {
  .contact-form-datetime tbody th {
    width: 120px;
  }
}

.contact-form-datetime tbody td {
  padding: 13px 0 15px 10px;
  text-align: center;
  background: url("../images/common/bg-dotted-x.png") repeat-x 0 bottom;
  background-size: 18px 2px;
}

.webp .contact-form-datetime tbody td {
  padding: 13px 0 15px 10px;
  text-align: center;
  background: url(../images/common/bg-dotted-x.webp) repeat-x 0 bottom;
  background-size: 18px 2px;
}

@media screen and (max-width: 720px) {
  .contact-form-datetime tbody td {
    padding: 10px 0 12px 5px;
  }
}

.contact-form-datetime tbody td label {
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

.contact-form-datetime tbody td label.disabled {
  cursor: default;
}

.contact-form-datetime tbody td label>input {
  position: absolute;
  left: -9999px;
  top: 0;
}

.contact-form-datetime tbody td label>span {
  display: block;
  padding: 13px;
  background-color: #F4F4F4;
  border-radius: 10px;
}

@media screen and (max-width: 720px) {
  .contact-form-datetime tbody td label>span {
    border-radius: 7px;
  }
}

.contact-form-datetime tbody td label.disabled>span {
  background-color: transparent;
}

.contact-form-datetime tbody td label>input:checked+span {
  padding: 10px 9px 6px 9px;
  background-color: #0525FF;
}

.contact-form-datetime tbody td label>input:checked+span>span {
  display: none;
}

.contact-form-datetime tbody td label>input:checked+span:after {
  display: inline-block;
  width: 2em;
  height: 2em;
  background: url(../images/common/ico-done.svg) no-repeat;
  background-size: contain;
  content: '';
}

.contact-form-datetime .datetime-icon {
  font-size: 150%;
  line-height: 1;
}

.contact-form-datetime .datetime-icon--open {
  color: #3300cc;
}

.contact-form-datetime .datetime-icon--fewleft {
  color: #ff9933;
}

.contact-form-datetime .datetime-icon--close {
  color: #ff0000;
}

.compeletion {
  text-align: center;
}

.compeletion h2 {
  padding-bottom: 20px;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  font-size: 32px;
}

.compeletion p {
  font-size: 15px;
}

#pamphlet-book .row .col-side {
  width: 458px;
}

#pamphlet-book .row .col-side img {
  max-width: 100%;
}

@media screen and (max-width: 720px) {
  #pamphlet-book .row .col-side {
    width: auto;
    text-align: center;
  }
}

#pamphlet-book .row .col-main {
  width: 512px;
}

@media screen and (max-width: 720px) {
  #pamphlet-book .row .col-main {
    width: auto;
  }
}

#pamphlet-book .content-title {
  margin-top: -2px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 26px;
  letter-spacing: 2px;
  line-height: 1.4;
}

@media screen and (max-width: 720px) {
  #pamphlet-book .content-title {
    font-size: 16px;
  }
}

#pamphlet-book .content-text {
  margin: 36px 0 0 0;
}

@media screen and (max-width: 720px) {
  #pamphlet-book .content-text {
    margin: 24px 0 0 0;
  }
}

#pamphlet-book .content-text p {
  font-size: 16px;
  letter-spacing: 1.25px;
  line-height: 1.95;
}

@media screen and (max-width: 720px) {
  #pamphlet-book .content-text p {
    font-size: 1em;
    letter-spacing: 0;
    line-height: 1.6;
  }
}

@media screen and (max-width: 720px) {
  #pamphlet-book .col-r {
    margin: 24px 0 0 0;
  }
}

#pamphlet-book .content-sub-title {
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 18px;
  letter-spacing: 1px;
  line-height: 1;
}

@media screen and (max-width: 720px) {
  #pamphlet-book .content-sub-title {
    font-size: 16px;
  }
}

#pamphlet-book .content-sub-title span {
  display: inline-block;
  padding: 0 0 10px 0;
  border-bottom: 4px solid #000;
}

#pamphlet-book .content-sub-inner {
  position: relative;
  padding: 0 0 0 138px;
  margin: 14px 0 0 0;
}

@media screen and (max-width: 720px) {
  #pamphlet-book .content-sub-inner {
    padding: 0 0 0 110px;
  }
}

#pamphlet-book .content-sub-inner .pic {
  position: absolute;
  left: 0;
  top: 6px;
}

@media screen and (max-width: 720px) {
  #pamphlet-book .content-sub-inner .pic {
    display: block;
    width: 100px;
    height: auto;
  }

  #pamphlet-book .content-sub-inner .pic img {
    display: block;
    width: 100%;
    height: auto;
  }
}

#pamphlet-book .content-sub-inner .content-sub-text p {
  font-size: 12px;
  letter-spacing: 1px;
  line-height: 1.9;
}

@media screen and (max-width: 720px) {
  #pamphlet-book .content-sub-inner .content-sub-text p {
    font-size: 100%;
    line-height: 1.6;
  }
}

#pamphlet-book .form-submit {
  margin: 110px 0 0 0;
}

@media screen and (max-width: 720px) {
  #pamphlet-book .form-submit {
    margin: 32px 0 0 0;
  }
}

#pamphlet-bond {
  margin-top: 160px;
}

@media screen and (max-width: 720px) {
  #pamphlet-bond {
    margin-top: 48px;
  }
}

#pamphlet-bond .row {
  margin: 20px 0 0 0;
}

#pamphlet-bond .row .col-side {
  width: 458px;
}

#pamphlet-bond .row .col-side img {
  max-width: 100%;
  height: auto;
}

@media screen and (max-width: 720px) {
  #pamphlet-bond .row .col-side {
    width: auto;
    text-align: center;
  }
}

#pamphlet-bond .row .col-main {
  width: 512px;
}

@media screen and (max-width: 720px) {
  #pamphlet-bond .row .col-main {
    width: auto;
  }

  #pamphlet-bond .row .col-main p {
    font-size: 100%;
  }
}

#pamphlet-bond .content-text p {
  margin: 30px 0 0 0;
  font-size: 17px;
  line-height: 1.85;
}

#pamphlet-bond .content-text p:first-child {
  margin: 0;
}

#pamphlet-bond .form-submit {
  margin-top: 94px;
}

@media screen and (max-width: 720px) {
  #pamphlet-bond .form-submit {
    margin-top: 32px;
  }
}

#privacy {
  line-height: 1.8;
  letter-spacing: 1px;
}

#privacy .intro {
  padding-bottom: 30px;
  font-size: 17px;
}

#privacy section {
  padding-bottom: 30px;
  font-size: 14px;
}

#privacy section h3 {
  font-size: 16px;
  padding-bottom: 5px;
}

#andstandard {
  line-height: 1.8;
}

#andstandard #logos {
  padding-bottom: 90px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 150px;
  align-items: center;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  #andstandard #logos {
    grid-template-columns: 1fr;
    gap: 16px;
    align-items: initial;
    padding-bottom: 40px;
  }
}

#andstandard #logos picture {
  display: inline-block;
  vertical-align: top;
  text-align: center;
  box-sizing: border-box;
}

#andstandard #logos picture>img {
  width: 100%;
  height: auto;
}

#andstandard .logos__img01 {
  aspect-ratio: 225 / 65;
}

#andstandard .logos__img02 {
  aspect-ratio: 250 / 54;
  position: relative;
}

#andstandard .logos__img02::before {
  position: absolute;
  content: "";
  background: url("../images/andstandard/ico-3.png") no-repeat center center / 100%;
  width: 24px;
  height: 24px;
  top: 50%;
  left: -97px;
  transform: translateY(-50%);
  z-index: 2;
}

.webp #andstandard .logos__img02::before {
  position: absolute;
  content: "";
  background: url(../images/andstandard/ico-3.webp) no-repeat center center / 100%;
  width: 24px;
  height: 24px;
  top: 50%;
  left: -97px;
  transform: translateY(-50%);
  z-index: 2;
}


#andstandard .logos__img02::after {
  position: absolute;
  content: "";
  background: url("../images/andstandard/ico-4.png") no-repeat center center / 100%;
  width: 24px;
  height: 24px;
  top: 50%;
  right: -97px;
  transform: translateY(-50%);
  z-index: 2;
}

.webp #andstandard .logos__img02::after {
  position: absolute;
  content: "";
  background: url(../images/andstandard/ico-4.webp) no-repeat center center / 100%;
  width: 24px;
  height: 24px;
  top: 50%;
  right: -97px;
  transform: translateY(-50%);
  z-index: 2;
}

@media all and (min-width: 0px) and (max-width: 720px) {

  #andstandard .logos__img02::before,
  #andstandard .logos__img02::after {
    content: none;
  }
}

#andstandard .logos__img03 {
  aspect-ratio: 206 / 66;
  height: 66px;
}

#andstandard #logos picture:nth-of-type(2) {
  line-height: 2;
}

@media screen and (max-width: 720px) {
  #andstandard #logos picture {
    display: block;
    height: auto;
  }

  #andstandard #logos picture:nth-of-type(1) {
    width: auto;
  }

  #andstandard #logos picture:nth-of-type(2) {
    width: auto;
    background: none;
  }

  #andstandard #logos picture:nth-of-type(3) {
    width: auto;
  }

  #andstandard #logos picture img {
    width: 200px;
  }
}

#andstandard .title1 {
  padding-bottom: 20px;
  font-family: "FOT-筑紫ゴシック Pro D", TsukuGoPro-D;
  font-size: 28px;
  font-weight: 400;
}

@media screen and (max-width: 720px) {
  #andstandard .title1 {
    font-size: 20px;
    line-height: 1.5;
    padding-bottom: 32px;
  }
}


#andstandard .graph {
  overflow: hidden;
  padding: 120px 0;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  #andstandard .graph {
    overflow: hidden;
    padding: 56px 0;
  }

}

#andstandard .graph h3 {
  font-size: 24px;
  line-height: 1.6;
  font-family: "FOT-筑紫ゴシック Pro D", TsukuGoPro-D;
  letter-spacing: 1px;
  font-weight: 500;
}

#andstandard .graph h3 span {
  display: block;
  font-size: 17px;
  font-family: "FOT-筑紫ゴシック Pro D", TsukuGoPro-D;
}

#andstandard .graph .left {
  position: relative;
  float: left;
  width: 50%;
  padding-right: 45px;
  box-sizing: border-box;
}

#andstandard .graph .left .img1 {
  text-align: right;
}

#andstandard .graph .left ul li {
  padding-left: 25px;
  background: url("../images/andstandard/ico-1.png") no-repeat left;
  background-size: 16px;
}

.webp #andstandard .graph .left ul li {
  padding-left: 25px;
  background: url(../images/andstandard/ico-1.webp) no-repeat left;
  background-size: 16px;
}

#andstandard .graph .right {
  position: relative;
  float: right;
  width: 50%;
  padding-left: 45px;
  box-sizing: border-box;
}

#andstandard .graph .right h3 {
  text-align: right;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
}

#andstandard .graph .right ul {
  position: absolute;
  right: 0;
}

#andstandard .graph .right ul li {
  padding-left: 25px;
  background: url("../images/andstandard/ico-2.png") no-repeat left;
  background-size: 18px;
}

.webp #andstandard .graph .right ul li {
  padding-left: 25px;
  background: url(../images/andstandard/ico-2.webp) no-repeat left;
  background-size: 18px;
}

@media screen and (max-width: 720px) {
  #andstandard .graph .left {
    float: none;
    width: auto;
    padding: 0 0 80px 0;
  }

  #andstandard .graph .left .img1 {
    width: 80%;
    margin: 0 auto;
    padding: 30px 0;
  }

  #andstandard .graph .left .img1 img {
    width: 100%;
  }

  #andstandard .graph .right {
    float: none;
    width: auto;
    padding: 0;
  }

  #andstandard .graph .right h3 {
    text-align: inherit;
  }

  #andstandard .graph .right ul {
    position: inherit;
  }

  #andstandard .graph .right .img1 {
    width: 80%;
    margin: 0 auto;
    padding: 30px 0;
  }

  #andstandard .graph .right .img1 img {
    width: 100%;
  }
}

#andstandard .bnr1 {
  padding-top: 80px;
}

@media screen and (max-width: 720px) {
  #andstandard .bnr1 img {
    width: 100%;
  }
}

#andstandard .area-claska {
  overflow: hidden;
  padding: 100px 0 0 0;
}

#andstandard .area-claska .left {
  position: relative;
  float: left;
  width: 50%;
  padding-top: 25px;
  box-sizing: border-box;
}

#andstandard .area-claska .left p:nth-of-type(1) {
  font-size: 24px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  padding-bottom: 30px;
}

#andstandard .area-claska .left p:nth-of-type(2) {
  font-size: 16px;
  font-family: "FOT-筑紫ゴシック Pro D", TsukuGoPro-D;
}

#andstandard .area-claska .right {
  position: relative;
  float: right;
  text-align: right;
  width: 50%;
  box-sizing: border-box;
}

#andstandard .area-claska .right a {
  display: inline-block;
}

@media screen and (max-width: 720px) {
  #andstandard .area-claska #andstandard .area-claska br {
    display: none;
  }

  #andstandard .area-claska #andstandard .area-claska img {
    width: 100%;
  }

  #andstandard .area-claska .left {
    float: none;
    width: auto;
    padding: 0 0 40px 0;
  }

  #andstandard .area-claska .right {
    float: none;
    width: auto;
    padding: 0;
  }

  #andstandard .area-claska .right img {
    max-width: 100%;
    height: auto;
  }
}

#andstandard .claska-banner-box {
  margin: 100px auto 120px;
  max-width: 70%;

  @media all and (min-width: 0px) and (max-width: 720px) {
    margin: 16px auto 56px;
    max-width: 100%;
  }
}

#andstandard .claska-banner-box__inner {
  display: grid;
  grid-template-columns: 1fr 1.74fr;
  gap: 8px;

  @media all and (min-width: 0px) and (max-width: 720px) {
    grid-template-columns: 1fr 1.73fr;
  }
}

#andstandard .claska-banner-box__inner--banner {
  display: block;
  max-width: 500px;
  margin: auto;
}

#andstandard .claska-banner-box__inner--banner-img {
  width: 100%;
  height: auto;
  display: block;
}

#andstandard .claska-banner-box__inner--banner-img>img {
  width: 100%;
  height: auto;
  display: block;
}

.claska-banner-box__inner li:first-child img {
  aspect-ratio: 1 / 1;
}

.claska-banner-box__inner li:last-child img {
  aspect-ratio: 972 / 560;
}

#andstandard #works {
  padding-top: 0;
}

#andstandard #works ul {
  margin-top: 32px;
  overflow: hidden;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 47px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  #andstandard #works ul {
    overflow: hidden;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 8px;
  }
}

#andstandard #works ul li a {
  color: #000;
}

#andstandard #works ul li a .date {
  display: block;
  margin-top: 20px;
  font-size: 10px;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  letter-spacing: 1px;
}

#andstandard #works ul li a .title {
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  letter-spacing: 1px;
}

@media screen and (max-width: 720px) {
  #andstandard #works ul li {
    float: none;
    padding-right: 0;
  }

  #andstandard #works img {
    width: 100%;
  }
}

#andstandard .estate-list__inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  counter-reset: item;
  list-style-type: none;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  #andstandard .estate-list__inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    counter-reset: item;
    list-style-type: none;
  }
}

#andstandard .estate-list__inner>li {
  position: relative;
  padding-left: 32px;
}

#andstandard .estate-list__inner>li::before {
  counter-increment: item;
  content: counter(item, decimal-leading-zero)'';
  color: #49a2ab;
  position: absolute;
  font-weight: 600;
  left: 0;
  top: 2px;
}

#andstandard .estate-box__inner {
  display: grid;
  grid-template-columns: 1fr 307px;
  gap: 50px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  #andstandard .estate-box__inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px;
  }

  #andstandard .estate-box__inner>li:first-child {
    order: 2;
  }
}

#andstandard .estate-box__inner--text01,
#andstandard .estate-box__inner--text02 {
  text-align: justify;
}

#andstandard .estate-box__inner--text01 {
  margin-bottom: 24px;
}

#andstandard .estate-box__inner--image>img {
  aspect-ratio: 1 / 1;
  object-fit: cover;
  width: 100%;
  height: auto;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  #andstandard .estate-box__inner--image>img {
    aspect-ratio: 2 / 1;
    object-fit: cover;
    width: 100%;
    height: auto;
  }
}

#counseling {
  line-height: 1.9;
}

#counseling .check header {
  margin-bottom: 50px;
  text-align: center;
}

#counseling .check header h2 {
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 34px;
}

@media screen and (max-width: 720px) {
  #counseling .check header h2 {
    font-size: 20px;
  }
}

#counseling .check header p {
  font-size: 18px;
}

#counseling .check header p br {
  display: none;
}

@media screen and (max-width: 720px) {
  #counseling .check header p {
    font-size: 12px;
  }

  #counseling .check header p br {
    display: block;
  }
}

#counseling .check ul {
  list-style: none;
  overflow: hidden;
}

#counseling .check ul li {
  float: left;
  width: 50%;
  margin-bottom: 15px;
  padding: 0 0 0 40px;
  font-size: 16px;
  background: url("../images/counseling/ico-1.png") no-repeat left;
  background-size: 32px;
  box-sizing: border-box;
}

.webp #counseling .check ul li {
  float: left;
  width: 50%;
  margin-bottom: 15px;
  padding: 0 0 0 40px;
  font-size: 16px;
  background: url(../images/counseling/ico-1.webp) no-repeat left;
  background-size: 32px;
  box-sizing: border-box;
}

@media screen and (max-width: 720px) {
  #counseling .check ul li {
    float: none;
    width: auto;
    padding: 0 0 0 30px;
    font-size: 13px;
    background-size: 24px;
  }
}

#counseling .check ul li span {
  display: inline-block;
  border-bottom: 4px solid yellow;
  font-size: 21px;
  line-height: 1.5;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
}

@media screen and (max-width: 720px) {
  #counseling .check ul li span {
    font-size: 15px;
  }
}

#counseling .store {
  padding-top: 100px;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #counseling .store {
    padding-top: 40px;
  }
}

#counseling .store h2 {
  display: inline-block;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 24px;
  border-bottom: 4px solid #000;
}

@media screen and (max-width: 720px) {
  #counseling .store h2 {
    font-size: 18px;
  }
}

#counseling .store>ul {
  padding: 50px 0;
  text-align: left;
  overflow: hidden;
}

@media screen and (max-width: 720px) {
  #counseling .store>ul {
    padding: 30px 0;
  }
}

#counseling .store>ul>li {
  float: left;
  width: 50%;
  overflow: hidden;
}

@media screen and (max-width: 720px) {
  #counseling .store>ul>li {
    float: none;
    width: auto;
  }

  #counseling .store>ul>li:first-child {
    margin-bottom: 40px;
  }
}

#counseling .store>ul>li .thumb {
  float: left;
  padding-right: 30px;
}

@media screen and (max-width: 720px) {
  #counseling .store>ul>li .thumb {
    width: 35%;
    padding-right: 20px;
    box-sizing: border-box;
  }

  #counseling .store>ul>li .thumb img {
    max-width: 100%;
    height: auto;
  }
}

#counseling .store>ul>li .right {
  float: left;
}

@media screen and (max-width: 720px) {
  #counseling .store>ul>li .right {
    width: 65%;
  }
}

#counseling .store>ul>li .right h3 {
  font-size: 22px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1.2;
}

@media screen and (max-width: 720px) {
  #counseling .store>ul>li .right h3 {
    font-size: 18px;
  }
}

#counseling .store>ul>li .right h3 a {
  font-size: 14px;
  color: #49a2ab;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
}

#counseling .store>ul>li .right .address {
  font-size: 13px;
  margin-bottom: 10px;
}

#counseling .store>ul>li .right .time {
  font-size: 13px;
  line-height: 1.5;
}

#counseling .store>ul>li .right .tel {
  font-size: 15px;
  letter-spacing: 0.02em;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
}

#counseling .store>ul>li .right .tel span {
  font-size: 21px;
}

#counseling .store>ul>li .right ul li {
  font-size: 11px;
}

@media screen and (max-width: 720px) {
  #counseling .store>ul>li .right ul li {
    font-size: 10px;
  }
}

#counseling .store .btn {
  width: 260px;
  margin: 0 auto;
}

#counseling .store .btn a {
  display: block;
  padding: 10px;
  background: #000;
  color: #fff;
}

#counseling .can {
  padding-top: 100px;
}

@media screen and (max-width: 720px) {
  #counseling .can {
    padding-top: 60px;
  }
}

#counseling .can header {
  text-align: center;
}

#counseling .can header p {
  font-size: 15px;
  line-height: 1.3;
}

#counseling .can header h3 {
  display: inline-block;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 24px;
  border-bottom: 4px solid #000;
}

@media screen and (max-width: 720px) {
  #counseling .can header h3 {
    font-size: 18px;
  }
}

#counseling .can .column {
  overflow: hidden;
  padding-top: 40px;
}

#counseling .can .column .thumb {
  float: left;
  padding-right: 30px;
}

@media screen and (max-width: 720px) {
  #counseling .can .column .thumb {
    float: none;
    padding: 0;
  }

  #counseling .can .column .thumb img {
    width: 100%;
    height: auto;
  }
}

#counseling .can .column ul {
  float: left;
  font-size: 17px;
  padding-top: 15px;
}

@media screen and (max-width: 720px) {
  #counseling .can .column ul {
    float: none;
    padding-top: 30px;
  }
}

#counseling .can .column ul li {
  padding-left: 1em;
  text-indent: -1em;
  line-height: 2.1;
}

@media screen and (max-width: 720px) {
  #counseling .can .column ul li {
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 1.7;
  }
}

#counseling .merit {
  padding-top: 100px;
}

@media screen and (max-width: 720px) {
  #counseling .merit {
    padding-top: 40px;
  }
}

#counseling .merit header {
  text-align: center;
}

#counseling .merit header p {
  font-size: 15px;
  line-height: 1.3;
}

#counseling .merit header h3 {
  display: inline-block;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 24px;
  border-bottom: 4px solid #000;
}

@media screen and (max-width: 720px) {
  #counseling .merit header h3 {
    padding-bottom: 10px;
    font-size: 18px;
    line-height: 1.6;
  }
}

#counseling .merit .column {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 60px;
}

@media screen and (max-width: 720px) {
  #counseling .merit .column {
    display: block;
    padding-top: 30px;
  }
}

#counseling .merit .column .right {
  width: 48%;
}

@media screen and (max-width: 720px) {
  #counseling .merit .column .right {
    width: auto;
  }
}

#counseling .merit .column .right p {
  font-size: 16px;
}

@media screen and (max-width: 720px) {
  #counseling .merit .column .right p {
    font-size: 13px;
  }
}

#counseling .merit .column .thumb {
  width: 48%;
}

@media screen and (max-width: 720px) {
  #counseling .merit .column .thumb {
    width: auto;
    padding-bottom: 30px;
  }

  #counseling .merit .column .thumb img {
    width: 100%;
    height: auto;
  }
}

#counseling .fixed-btn {
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 1000;
  width: 100%;
  line-height: 1;
  background: #49a2ab;
  text-align: center;
}

#counseling .fixed-btn a {
  display: block;
  padding: 20px 0;
  color: #fff;
  vertical-align: middle;
  background: url("../images/counseling/ico-2.png") right 10px center no-repeat;
  background-size: 10px;
}

.webp #counseling .fixed-btn a {
  display: block;
  padding: 20px 0;
  color: #fff;
  vertical-align: middle;
  background: url(../images/counseling/ico-2.webp) right 10px center no-repeat;
  background-size: 10px;
}

/** 210917 add**/
#counseling .banner {
  width: 1000px;
  margin: 0 auto 80px;
}

#counseling .banner img {
  width: 100%;
}

@media screen and (max-width: 720px) {
  #counseling .banner {
    width: 100%;
    /*margin: 0 auto 80px;*/
  }
}

/** 210917 add end**/

#partners #intro .column {
  display: flex;
}

@media screen and (max-width: 720px) {
  #partners #intro .column {
    display: block;
  }
}

#partners #intro .column .left {
  padding: 50px 50px 0 0;
}

@media screen and (max-width: 720px) {
  #partners #intro .column .left {
    text-align: center;
    padding: 0 30px 40px 0;
  }
}

#partners #intro .column .right h2 {
  display: inline-block;
  position: relative;
  margin-bottom: 40px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 30px;
}

#partners #intro .column .right h2:after {
  position: absolute;
  bottom: 0;
  z-index: -10;
  display: block;
  content: "";
  width: 100%;
  height: 4px;
  background: #ffff00;
}

@media screen and (max-width: 720px) {
  #partners #intro .column .right h2 {
    margin-bottom: 20px;
    font-size: 18px;
    line-height: 1.6;
  }

  #partners #intro .column .right h2:after {
    display: none;
  }
}

#partners #intro .column .right p {
  font-size: 16px;
  line-height: 1.9;
}

@media screen and (max-width: 720px) {
  #partners #intro .column .right p {
    font-size: 13px;
  }
}

#partners #intro .column .right small {
  display: inline-block;
  padding-top: 20px;
}

#partners #intro .box {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 70px;
  padding: 50px 0;
  border: 4px solid #000;
}

@media screen and (max-width: 720px) {
  #partners #intro .box {
    display: block;
    padding: 20px;
  }
}

#partners #intro .box h3 {
  width: 50%;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 22px;
  text-align: center;
}

#partners #intro .box h3 span {
  display: inline-block;
  padding: 10px 0 10px 50px;
  background: url(../images/partners/ico-1.png) no-repeat left;
  background-size: 40px;
}

.webp #partners #intro .box h3 span {
  display: inline-block;
  padding: 10px 0 10px 50px;
  background: url(../images/partners/ico-1.webp) no-repeat left;
  background-size: 40px;
}

@media screen and (max-width: 720px) {
  #partners #intro .box h3 {
    width: auto;
    padding-bottom: 15px;
    font-size: 16px;
  }

  #partners #intro .box h3 span {
    padding: 10px 0 10px 30px;
    background-size: 20px;
  }
}

#partners #intro .box ul {
  width: 50%;
  font-size: 16px;
  line-height: 1.9;
}

@media screen and (max-width: 720px) {
  #partners #intro .box ul {
    width: auto;
    font-size: 12px;
  }
}

#partners #merit {
  padding-top: 100px;
}

#partners #merit h2 {
  margin-bottom: 50px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  font-size: 24px;
  text-align: center;
}

#partners #merit h2 span {
  display: inline-block;
  padding-bottom: 10px;
  border-bottom: 4px solid #000;
}

@media screen and (max-width: 720px) {
  #partners #merit h2 {
    font-size: 18px;
  }
}

#partners #merit ul {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 720px) {
  #partners #merit ul {
    display: block;
  }
}

#partners #merit ul li {
  width: 30%;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #partners #merit ul li {
    width: auto;
    margin-bottom: 40px;
  }

  #partners #merit ul li:last-child {
    margin: 0;
  }
}

@media screen and (max-width: 720px) {
  #partners #merit ul li img {
    width: 60%;
    height: auto;
  }
}

#partners #merit ul li h3 {
  padding: 30px 0 20px;
  font-size: 21px;
}

@media screen and (max-width: 720px) {
  #partners #merit ul li h3 {
    font-size: 18px;
  }
}

#partners #merit ul li p {
  text-align: left;
  font-size: 13px;
  line-height: 1.8;
}

#partners #voice {
  padding-top: 100px;
}

#partners #voice h2 {
  margin-bottom: 50px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  font-size: 24px;
  text-align: center;
}

#partners #voice h2 span {
  display: inline-block;
  padding-bottom: 10px;
  border-bottom: 4px solid #000;
}

@media screen and (max-width: 720px) {
  #partners #voice h2 {
    font-size: 18px;
  }
}

#partners #voice ul li {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 40px;
}

@media screen and (max-width: 720px) {
  #partners #voice ul li {
    display: block;
    margin-bottom: 60px;
  }

  #partners #voice ul li:last-child {
    margin: 0;
  }
}

#partners #voice ul li:nth-of-type(2) {
  flex-direction: row-reverse;
}

#partners #voice ul li .thumb {
  width: 33.33%;
}

@media screen and (max-width: 720px) {
  #partners #voice ul li .thumb {
    width: auto;
    margin-bottom: 30px;
    text-align: center;
  }

  #partners #voice ul li .thumb img {
    width: 60%;
    height: auto;
  }
}

#partners #voice ul li .text {
  width: 66.66%;
}

@media screen and (max-width: 720px) {
  #partners #voice ul li .text {
    width: auto;
  }
}

#partners #voice ul li .text span {
  font-size: 13px;
}

#partners #voice ul li .text h3 {
  padding: 10px 0 15px;
  font-size: 21px;
}

#partners #voice ul li .text h3 span {
  display: inline-block;
  padding-left: 5px;
}

@media screen and (max-width: 720px) {
  #partners #voice ul li .text h3 {
    font-size: 18px;
  }
}

#partners #voice ul li .text p {
  font-size: 15px;
  line-height: 1.8;
}

@media screen and (max-width: 720px) {
  #partners #voice ul li .text p {
    font-size: 13px;
  }
}

#partners #event {
  padding: 100px 0;
}

@media screen and (max-width: 720px) {
  #partners #event {
    padding: 100px 0 40px;
  }
}

#partners #event h2 {
  margin-bottom: 50px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  font-size: 24px;
  text-align: center;
}

#partners #event h2 span {
  display: inline-block;
  padding-bottom: 10px;
  border-bottom: 4px solid #000;
}

@media screen and (max-width: 720px) {
  #partners #event h2 {
    margin-bottom: 10px;
    font-size: 18px;
  }
}

#partners .btn {
  width: 600px;
  margin: 0 auto;
  background: #ffff00;
}

@media screen and (max-width: 720px) {
  #partners .btn {
    width: auto;
  }
}

#partners .btn a {
  display: block;
  padding: 40px 0;
  background: url(../images/partners/ico-2.png) no-repeat right 20px center;
  background-size: 16px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 24px;
  text-align: center;
  color: #000;
}

.webp #partners .btn a {
  display: block;
  padding: 40px 0;
  background: url(../images/partners/ico-2.webp) no-repeat right 20px center;
  background-size: 16px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 24px;
  text-align: center;
  color: #000;
}

@media screen and (max-width: 720px) {
  #partners .btn a {
    padding: 25px 0;
    font-size: 16px;
    background-size: 10px;
  }
}

#partners .btn .no-recruit {
  display: block;
  padding: 40px 0;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 24px;
  text-align: center;
  color: #000;
}

@media screen and (max-width: 720px) {
  #partners .btn .no-recruit {
    padding: 25px 0;
    font-size: 16px;
    background-size: 10px;
  }
}

#products-cat ul {
  display: flex;
}

@media screen and (max-width: 720px) {
  #products-cat ul {
    display: block;
  }
}

#products-cat ul li {
  width: 31.5%;
  border: 3px solid #000;
  margin-right: 1.83%;
}

@media screen and (max-width: 720px) {
  #products-cat ul li {
    width: auto;
    margin-bottom: 10px;
  }
}

#products-cat ul li a {
  display: flex;
  align-items: center;
  color: #000;
}

#products-cat ul li a .thumb {
  width: 33%;
}

#products-cat ul li a .thumb img {
  width: 100%;
  height: auto;
}

#products-cat ul li a p {
  width: 67%;
  padding-left: 15px;
  line-height: 1.5;
  background: url(../images/common/arrow02.png) right 8px center no-repeat;
  background-size: 7px;
}

.webp #products-cat ul li a p {
  width: 67%;
  padding-left: 15px;
  line-height: 1.5;
  background: url(../images/common/arrow02.webp) right 8px center no-repeat;
  background-size: 7px;
}

#products-cat ul li a p small {
  font-size: 11px;
}

@media screen and (max-width: 720px) {
  #products-cat ul li a p small {
    font-size: 10px;
  }
}

#products-cat ul li a p p {
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  font-size: 15px;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 720px) {
  #products-cat ul li a p p {
    font-size: 14px;
  }
}

#cat-desc {
  padding: 80px 0;
  text-align: center;
}

@media screen and (max-width: 720px) {
  #cat-desc {
    padding: 40px 12px 60px;
  }
}

#cat-desc h2 {
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
}

#cat-desc p {
  padding: 20px 0;
}

#cat-desc .btn {
  border: 3px solid #000;
  background: none;
}

#cat-desc .btn a {
  display: block;
  padding: 8px 10px;
  font-size: 11px;
  color: #000;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  line-height: 1;
}

#cat-desc .btn a span {
  display: inline-block;
  padding-left: 12px;
  background: url(../images/common/arrow03.png) no-repeat left;
  background-size: 7px;
}

.webp #cat-desc .btn a span {
  display: inline-block;
  padding-left: 12px;
  background: url(../images/common/arrow03.webp) no-repeat left;
  background-size: 7px;
}

#products-list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#products-list ul::after {
  content: "";
  display: block;
  width: 31.5%;
}

#products-list ul li {
  width: 31.5%;
  padding-bottom: 60px;
}

@media screen and (max-width: 720px) {
  #products-list ul li {
    width: 48.5%;
  }
}

#products-list ul li a {
  color: #000;
}

#products-list ul li .thumb {
  margin-bottom: 15px;
}

#products-list ul li .thumb img {
  width: 100%;
  height: auto;
}

#products-list ul li h3 {
  margin-bottom: 5px;
  font-size: 15px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
}

#products-list ul li p {
  font-size: 12px;
}

#product-contents {
  padding: 80px 0 0;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 700;
}

@media screen and (max-width: 720px) {
  #product-contents {
    padding: 60px 12px;
  }
}

#product-contents h2 {
  margin-bottom: 30px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
}

@media screen and (max-width: 720px) {
  #product-contents h2 {
    font-size: 16px;
  }
}

@media screen and (max-width: 720px) {
  #product-contents .main-pic {
    margin-bottom: 5%;
  }
}

#product-contents .main-pic img {
  width: 100%;
  height: auto;
}

#product-contents .gallery-wrap .gallery {
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width: 720px) {
  #product-contents .gallery-wrap .gallery {
    justify-content: space-between;
  }
}

#product-contents .gallery-wrap .gallery li {
  width: 10%;
  margin-top: 2.85%;
  margin-right: 2.85%;
}

#product-contents .gallery-wrap .gallery li:nth-child(8n) {
  margin-right: 0;
}

@media screen and (max-width: 720px) {
  #product-contents .gallery-wrap .gallery li {
    width: 30%;
    float: none;
    margin: 0 0 5% 0;
  }
}

#product-contents .gallery-wrap .gallery li img {
  width: 100%;
  height: auto;
}

#product-contents .desc-wrap {
  padding-top: 35px;
}

#product-contents .sold {
  padding-top: 35px;
  color: red;
}

#product-contents .price {
  padding-top: 30px;
}

#product-contents .addtoany_shortcode {
  padding-top: 30px;
}

#product-contents .a2a_button_facebook {
  padding-left: 0 !important;
}

#product-contents .gabbeh-type {
  padding-top: 30px;
  font-size: 13px;
}

#product-contents .contact {
  padding-top: 30px;
  font-size: 13px;
}

#product-contents .products-form {
  margin-top: 96px;
}

@media screen and (max-width: 720px) {
  #product-contents .products-form {
    margin: 32px 0 0 0;
  }
}

#product-contents .products-form .title-article-sub {
  margin: 28px 0 0 0;
}

#product-contents .products-form form .hidden {
  display: none;
}

#product-contents .products-form form dl {
  display: table;
  width: 100%;
}

@media screen and (max-width: 720px) {
  #product-contents .products-form form dl {
    display: block;
  }
}

#product-contents .products-form form dl dt,
#product-contents .products-form form dl dd {
  display: table-cell;
  padding: 21px 0;
}

@media screen and (max-width: 720px) {

  #product-contents .products-form form dl dt,
  #product-contents .products-form form dl dd {
    display: block;
  }
}

#product-contents .products-form form dl dt {
  width: 186px;
  font-size: 13px;
}

@media screen and (max-width: 720px) {
  #product-contents .products-form form dl dt {
    width: auto;
    padding: 12px 0 0 0;
  }
}

#product-contents .products-form form dl dt .required {
  margin-left: 6px;
  color: #ff0000;
}

#product-contents .products-form form dl dt p {
  color: #ff0000;
}

#product-contents .products-form form dl dd {
  width: 604px;
  font-size: 14px;
}

@media screen and (max-width: 720px) {
  #product-contents .products-form form dl dd {
    width: auto;
    padding: 12px 0;
  }
}

.wp-pagenavi {
  padding-top: 40px;
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  font-size: 20px;
  text-align: center;
}

.wp-pagenavi span,
.wp-pagenavi a {
  border: none;
  color: #000;
}

.wp-pagenavi span.current,
.wp-pagenavi a.current {
  opacity: 0.2;
}

#hugmi-contents {
  margin-top: 80px;
}

@media screen and (max-width: 720px) {
  #hugmi-contents {
    margin-top: 60px;
  }
}

#hugmi-contents #feature-list1 {
  display: flex;
  justify-content: space-between;
  padding-top: 40px;
  list-style: none;
}

@media screen and (max-width: 720px) {
  #hugmi-contents #feature-list1 {
    display: block;
    padding: 20px 0 20px;
  }
}

#hugmi-contents #feature-list1 li {
  width: 47%;
}

@media screen and (max-width: 720px) {
  #hugmi-contents #feature-list1 li {
    width: auto;
    padding-bottom: 40px;
  }

  #hugmi-contents #feature-list1 li:last-child {
    padding: 0;
  }
}

#hugmi-contents #feature-list1 li a {
  color: #000;
}

#hugmi-contents #feature-list1 li .thumb {
  margin-bottom: 20px;
}

#hugmi-contents #feature-list1 li .thumb img {
  width: 100%;
  height: auto;
}

#hugmi-contents #feature-list1 li h3 {
  margin-bottom: 10px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
  font-size: 18px;
}

@media screen and (max-width: 720px) {
  #hugmi-contents #feature-list1 li h3 {
    font-size: 16px;
  }
}

#hugmi-contents #feature-list1 li h3 span {
  font-size: 70%;
}

#hugmi-contents #feature-list1 li p {
  font-size: 13px;
}

/*210922 add*/
#home-products .text-box {
  padding-top: 40px;
}

#home-greeting .text-box {
  padding-top: 40px;
}


/*211206-07 追加*/
#home-bnr ul {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 16px;
  justify-content: initial;
}

@media screen and (max-width: 720px) {
  #home-bnr ul {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

#home-bnr ul li {
  width: 100%;
  border: 3px solid #000;
}

@media screen and (max-width: 720px) {
  #home-bnr ul li {
    width: auto;
    margin-bottom: initial;
  }
}

/* ボトムナビ */

.fNav {
  display: block;
  position: fixed;
  top: 35%;
  right: 0;
  z-index: 90;
}

@media screen and (min-width: 721px) {
  .fNav {
    top: 50%;
    transform: translateY(-50%);
  }
}

.fNav__inUl {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  width: 100%;
}

.contactBtn01,
.contactBtn02,
.contactBtn-line {
  position: relative;
  display: flex;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  white-space: nowrap;
  flex-direction: column;
  color: #fff;
  padding: 0 8px
}

.contactBtn01 {
  background-color: #000;
  align-items: center;
  height: 85px;
}

.contactBtn02 {
  background-color: #49a2ab;
}

.contactBtn02::before {
  content: "";
  background-repeat: no-repeat;
  background-size: 16px;
  position: absolute;
  top: 10px;
  left: 28px;
  z-index: 2;
}

.contactBtn01::before {
  background-image: url("../images/common/fNav01.svg");
  width: 16px;
  height: 16px;
  content: "";
  background-repeat: no-repeat;
  background-size: 16px;
  display: inline-block;
  margin-right: 8px;
  position: absolute;
  top: 10px;
  left: 28px;
  z-index: 2;

}

.contactBtn02::before {
  background-image: url("../images/common/fNav02.svg");
  width: 16px;
  height: 16px;
}

.contactBtn02 img {
  position: absolute;
  width: 34px;
  height: 48px;
  -o-object-fit: cover;
  object-fit: cover;
  bottom: 56px;
  left: 0;
}

.contactBtn01 p,
.contactBtn02 p {
  width: 100%;
  margin: 0 auto;
  height: 48px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 17px;
  font-weight: bold;
  position: relative;
  border-top: 1px solid #fff;
  line-height: 1;
  white-space: nowrap;
}

.contactBtn-line {
  background-color: #00C300;
  height: 48px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.contactBtn-line>p {
  position: relative;
  padding-left: 40px;
  font-weight: bold;
}

.contactBtn-line>p::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0px;
  width: 32px;
  height: 32px;
  transform: translateY(-50%);
  background: url("../images/common/icon-line-wt.svg") no-repeat center center / 100%;
}

/* .contactBtn01 p {
  height: 100%;
  border-top: none;
} */

/* .contactBtn01 p::before,
.contactBtn02 p::before {
  position: absolute;
  content: "";
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  z-index: 2;
  border-style: solid;
  border-width: 6px 6px 0 6px;
  border-color: #ffffff transparent transparent transparent;
}

.contactBtn01 p::after,
.contactBtn02 p::after {
  position: absolute;
  content: "";
  top: -2px;
  left: 50%;
  transform: translate(-50%, 0);
  z-index: 2;
  border-style: solid;
  border-width: 6px 6px 0 6px;
  border-color: #000 transparent transparent transparent;
} */

.contactBtn02 p::after {
  border-color: #49a2ab transparent transparent transparent;
}

.contactBtn01 span,
.contactBtn02 span {
  font-size: 15px;
  display: flex;
  margin-left: 42px;
  height: 36px;
  align-items: center;
  color: #fff;
  line-height: 1;
  white-space: nowrap;
}

.contactBtn01 span {
  margin-left: 18px;
}

/* .contactBtn01 span {
  display: none;
} */

/* ページトップへ戻る */
.pageTopBtn {
  position: relative;
  z-index: 99;
}

.pageTop {
  position: fixed;
  bottom: 40px;
  right: 16px;
  width: 48px;
  height: 48px;
  border-radius: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgba(0, 0, 0, 0.4);
  z-index: 99;
}

.pageTop:active {
  background-color: rgba(0, 0, 0, 0.7);
}

.pageTop::after {
  content: "";
  background-image: url("../images/common/pageTopArrow.svg");
  background-size: 14px;
  background-repeat: no-repeat;
  width: 14px;
  height: 8px;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  color: #fff;
}

@media screen and (max-width: 720px) {

  .pageTop {
    bottom: 120px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    white-space: nowrap;
  }

  .fNav {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    top: initial;
    right: initial;
    max-width: initial;
    width: 100%;
  }

  .fNav__inUl {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    gap: 0;
  }

}


/*会社概要*/
.company-menu-ul {
  position: relative;
  border-top: 4px solid #000;
  max-width: 1025px;
  margin: 120px auto 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.company-menu-ul::after {
  content: "MENU";
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  font-size: 20px;
  position: absolute;
  left: 16px;
  top: -34px;
  letter-spacing: 3px;
}

.company-menu-ul li {
  border-bottom: 1px solid #ededed;
}

.company-menu-ul li:nth-child(odd) {
  border-right: 1px solid #ededed;
}

.company-menu-ul li a {
  padding: 16px 4px;
  color: #000;
  font-family: "FOT-筑紫ゴシック Pro D", TsukuGoPro-D;
  line-height: 1.4;
  display: flex;
}

.company-menu-ul li a:nth-child(odd) {
  padding-left: 16px;

}

@media screen and (max-width: 720px) {
  .company-menu-ul {
    grid-template-columns: 1fr;
    margin: 120px 12px 0;
  }

  .company-menu-ul li:nth-child(odd) {
    border-right: 0;
  }

  .company-menu-ul::after {
    letter-spacing: 1px;
    font-size: 18px;
    left: 0;
  }

  .company-menu-ul li a:nth-child(odd) {
    padding-left: 0;

  }

  .company-menu-ul li a {
    padding: 16px 0;
  }
}

.company-headline {
  position: relative;
  font-size: 28px;
  padding: 40px 0 36px 0;
  letter-spacing: 1px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 600;
  line-height: 1;
}

.company-headline::after {
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 14px;
  height: 4px;
  background-color: #000;
  content: "";
  font-size: 0;
}

@media screen and (max-width: 720px) {
  .company-headline {
    font-size: 18px;
  }
}

.company-table-ul {
  max-width: 1025px;
  margin: 40px auto 16px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 32px;
}

.company-table-box table,
.company-table-box td,
.company-table-box th {
  border: 0;
  border-collapse: collapse;
}

.company-table-box td,
.company-table-box th {
  height: 24px;
}

.company-table-box td {
  padding: 16px 8px 16px 32px;
}

.company-table-box th {
  min-width: 96px;
  padding: 16px 8px 16px 0;
  border-right: #ededed 1px solid;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  vertical-align: top;
}

.table-tdin-ul li {
  position: relative;
  margin-bottom: 16px;
  padding-left: 16px;
}

.table-tdin-ul li::before {
  content: "・";
  position: absolute;
  color: #000;
  font-size: 10px;
  left: 0;
  top: 4px;
}

.table-tdin-ul li:last-child {
  margin-bottom: 0;
}

.table-tdin-ul02 li {
  margin-bottom: 16px;
}

.table-tdin-ul02 li:last-child {
  margin-bottom: 0;
}

/*ボタン*/
.company-btn-box {
  max-width: 600px;
  margin: 40px auto;
}

.company-btn {
  position: relative;
  background: #559198;
  padding: 8px 16px;
  display: flex;
  flex-direction: column;
  color: #fff;
}

.company-btn::after {
  content: "";
  position: absolute;
  border-style: solid;
  border-width: 0 0 16px 16px;
  border-color: transparent transparent #ffffff transparent;
  right: 4px;
  bottom: 4px;
  z-index: 2;
}

.companyTableImg {
  margin: 40px auto 0;
  max-width: 1025px;
  display: flex;
}

.companyTableImg img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
}

.btn-ttl {
  font-size: 16px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  text-align: center;

}

.company-btn span {
  text-align: center;
}


/*余白調整*/
.pt-40 {
  padding-top: 40px !important;
}

.mt24 {
  margin-top: 24px;
}

.grecaptcha-badge {
  margin: 24px auto 0px auto;
}

/* add 220207 */
#footer #footer-bottom {
  padding-bottom: 96px;
}

@media screen and (max-width: 720px) {
  .company-table-ul {
    margin: 40px 0 16px;
    grid-template-columns: initial;
    gap: initial;
    display: flex;
    flex-direction: column;
  }

  .company-table-box th {
    min-width: 72px;
  }

  .company-table-box td {
    padding: 16px 8px 16px 12px;
  }

  .table-tdin-ul li::before {
    top: 0;
  }

  .companyTableImg {
    margin: 40px auto 0;
    display: flex;
    box-sizing: border-box;
  }


  .pc {
    display: none;
  }

  /* add 220207 */
  #footer #footer-top #footer-nav ul {
    padding-right: 12px;
  }

  @media screen and (max-width: 720px) {
    #footer #footer-top #footer-nav ul {
      padding-right: 0;
    }
  }

  #footer #footer-bottom {
    padding-bottom: 184px;
  }
}

/*add 220413 求人用ボタン*/

.recruit-btn-box {
  max-width: 600px;
  margin: 40px auto;
  padding-bottom: 32px;
}

.recruit-btn {
  position: relative;
  background: #559198;
  padding: 8px 16px;
  display: flex;
  flex-direction: column;
  color: #fff;
}

.recruit-btn::after {
  content: "";
  position: absolute;
  border-style: solid;
  border-width: 0 0 16px 16px;
  border-color: transparent transparent #ffffff transparent;
  right: 4px;
  bottom: 4px;
  z-index: 2;
}

.btn-ttl {
  font-size: 16px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  text-align: center;

}

.recruit-btn span {
  text-align: center;
}

/*求人用 h2*/

#recruit .company h2 {
  display: inline-block;
  position: relative;
  font-size: 24px;
}

@media screen and (max-width: 720px) {
  #recruit .company h2 {
    font-size: 18px;
  }
}

#recruit .company h2:after {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: -10;
  content: "";
  width: 100%;
  height: 4px;
  background: #ffff00;
}

/* 220707 H1変更 */

.new-hero .hero-title p {
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  line-height: 1;
}

.new-hero .hero-title p span {
  display: block;
  padding: 0 0 4px 0;
  margin: 28px 0 0 0;
  font-size: 74px;
  letter-spacing: 0.06em;
}

@media screen and (max-width: 720px) {
  .new-hero .hero-title p span {
    margin: 8px 0 0 0;
    font-size: 24px;
  }
}

.new-hero .hero-title p span:first-child {
  margin: 0;
}

.new-hero .hero-title p small {
  display: block;
  padding-top: 10px;
  font-size: 19px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
}

@media screen and (max-width: 720px) {
  .new-hero .hero-title p small {
    padding-top: 5px;
    font-size: 13px;
  }
}

#cat-desc h1 {
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
  font-size: 23px;
}

@media screen and (max-width: 720px) {
  #cat-desc h1 {
    font-size: 20px;
  }
}

.hero .hero-title p {
  font-size: 74px;
  font-family: 'Outfit', sans-serif;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 3px;
}

@media screen and (max-width: 720px) {
  .hero .hero-title p {
    font-size: 37px;
    letter-spacing: 1px;
  }
}

.hero .hero-title p span {
  float: left;
  clear: left;
  display: block;
  padding: 0 0 4px 0;
  margin: 28px 0 0 0;
}

@media screen and (max-width: 720px) {
  .hero .hero-title p span {
    margin: 8px 0 0 0;
  }
}

.hero .hero-title p span:first-child {
  margin: 0;
}

#product-contents h1 {
  margin-bottom: 30px;
  font-size: 23px;
  font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
}

@media screen and (max-width: 720px) {
  #product-contents h1 {
    font-size: 16px;
  }
}

/* 221020 追加 */

.hero .hero-title h1 small,
.hero .hero-title02 h1 small,
.hero .hero-title02 p small {
  display: block;
  padding-top: 10px;
  font-size: 19px;
  font-family: "FOT-筑紫ゴシック Pro D", TsukuGoPro-D;
  font-weight: 400;
  letter-spacing: 1px;
}

@media screen and (max-width: 720px) {

  .hero .hero-title h1 small,
  .hero .hero-title02 h1 small,
  .hero .hero-title02 p small {
    padding-top: 5px;
    font-size: 13px;
  }
}

/* 221101 追加 */

#home-bnr ul li.eventBox {
  border: 3px solid #ffa05d;
}

#home-bnr ul li.eventBox a .text {
  width: 67%;
  padding-left: 15px;
  line-height: 1.5;
  background: url("../images/index/arrowEvent.png") right 8px center no-repeat;
  background-size: 7px;
}

.webp #home-bnr ul li.eventBox a .text {
  width: 67%;
  padding-left: 15px;
  line-height: 1.5;
  background: url(../images/index/arrowEvent.webp) right 8px center no-repeat;
  background-size: 7px;
}

/* 230105 追加 */

#staff-detail .staff-worksUl {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 39px;
}

@media screen and (max-width: 720px) {
  #staff-detail .staff-worksUl {
    grid-template-columns: repeat(2, 1fr);
    gap: 39px 8px;
  }
}


#staff-detail .staff-worksUl .section-staff-works {
  margin: 0;
}

/* 230712追加 */

.header-logo__img {
  width: 100%;
  height: auto;
  max-width: 240px;
  display: inline-block;
  margin-top: -20px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .header-logo__img {
    max-width: 127px;
    margin-top: -12px;
  }
}

.header-logo__img>img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 353 / 76;
}

.footer-logo__img {
  width: 100%;
  height: auto;
  max-width: 240px;
  display: block;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .footer-logo__img {
    max-width: 240px;
  }
}

.footer-logo__img>img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 353 / 76;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .footer-nav-list {
    display: grid !important;
    grid-template-columns: 55% 1fr;
    gap: 16px;
  }
}


.text-box {
  overflow: hidden;
}

.text-box .greeting_img01 {
  float: right;
  width: 565px;
  margin-left: 42px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .text-box .greeting_img01 {
    float: initial;
    width: 100%;
    margin-left: initial;
    margin-bottom: 40px;
    height: auto;
  }
}

.text-box .greeting_logo {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.text-box .greeting_logo img {
  margin-right: 10px;
}

.style-home-renovation-contents {
  margin-bottom: 48px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-contents {
    margin-bottom: 56px;
  }
}

.style-home-renovation-contents__inner {
  display: grid;
  grid-template-columns: 591px 1fr;
  gap: 40px;
  margin: 40px 0 80px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-contents__inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: 32px;
    align-items: center;
    position: relative;
    margin: 24px 0 56px;
  }

  .style-home-renovation-contents__inner>li:first-child {
    order: 2;
  }
}

.style-home-renovation-contents__inner-grid {
  gap: 100px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-contents__inner-grid {
    gap: 32px;
  }
}

.style-home-renovation-contents__inner--title,
.style-home-renovation-contents__inner--title02 {
  margin: 0 0 24px;
  font-weight: 400;
  text-decoration: underline;
  font-size: 20px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-contents__inner--title {
    font-size: 16px;
    margin: 24px 0 0;
    text-align: center;
    width: 100%;
  }

  .style-home-renovation-contents__inner--title02 {
    font-size: 16px;
    margin: 24px 0 16px;
    text-align: center;
    width: 100%;
  }
}

.style-home-renovation-contents__inner--text,
.style-home-renovation-contents__inner--text02,
.style-home-renovation-contents-text {
  text-align: justify;
}

.style-home-renovation-contents__inner--text {
  margin-bottom: 24px;
}

.style-home-renovation-contents__inner--img,
.style-home-renovation-contents__inner--img02 {
  width: 100%;
  height: auto;
  display: block;
}

@media all and (min-width: 0px) and (max-width: 720px) {

  .style-home-renovation-contents__inner--img,
  .style-home-renovation-contents__inner--img02 {
    width: 80%;
    display: block;
    margin: auto;
  }
}

.style-home-renovation-contents__inner--img>img,
.style-home-renovation-contents__inner--img02>img {
  width: 100%;
  height: auto;
  display: block;
}

.style-home-renovation-contents__inner--img02>img {
  border: .5px solid #ddd;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-contents__inner--img {
    border: .5px solid #ddd;
    display: block;
    box-sizing: border-box;
  }
}

.style-home-renovation-box {
  margin-bottom: 64px;
  padding: 40px 114px;
  box-sizing: border-box;
  background-color: #F7F7F7;
  text-align: center;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-box {
    padding: 40px 20px;
    text-align: justify;
  }
}

.style-home-renovation-box02,
.style-home-renovation-box03 {
  margin-bottom: 64px;
  padding: 40px 114px;
  box-sizing: border-box;
  border: 1px solid #ddd;
  text-align: center;
}

.style-home-renovation-box03 {
  text-align: left;
  padding: 80px 40px;
}

@media all and (min-width: 0px) and (max-width: 720px) {

  .style-home-renovation-box02,
  .style-home-renovation-box03 {
    padding: 20px 0 16px;
    border: .5px solid #ddd;
  }

  .style-home-renovation-box03 {
    padding: 40px 20px;
  }
}

.style-home-renovation-box__inner--title {
  margin-bottom: 48px;
  font-weight: 400;
  text-align: center;
  font-size: 20px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-box__inner--title {
    margin-bottom: 24px;
    font-size: 16px;
  }
}

.style-home-renovation-box__inner--text {
  margin-bottom: 24px;
}

.style-home-renovation-box__inner--text-att {
  position: relative;
  padding-left: 16px;
  text-align: left;
}

.style-home-renovation-box__inner--text-att::before {
  position: absolute;
  content: "※";
  left: 0;
  top: 0;
  z-index: 1;
}

.style-home-renovation-box__inner--img {
  width: 100%;
  height: auto;
  display: flex;
  margin: auto;
  justify-content: center;
  max-width: 620px;
}

.style-home-renovation-box__inner--img>img {
  width: 100%;
  height: auto;
  display: block;
}


.style-home-renovation-box-space {
  margin-bottom: 96px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-box-space {
    margin-bottom: 56px;
  }

}

.style-home-renovation-list {
  position: relative;
}

.style-home-renovation-list__inner {
  display: grid;
  gap: 56px;
}

.style-home-renovation-list__inner>li {
  display: grid;
  grid-template-columns: 246px 1fr;
  gap: 38px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-list__inner>li {
    display: grid;
    grid-template-columns: 1fr;
    gap: 32px;
    position: relative;
    padding: 56px 0 0;
  }
}

.style-home-renovation-list__inner--item-title {
  margin: 0 0 24px;
  font-weight: 400;
  font-size: 18px;
  position: relative;
  padding-left: 40px;
  display: inline-block;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-list__inner--item-title {
    margin: 0 0 0;
    font-weight: 400;
    font-size: 15px;
    position: absolute;
    top: 0;
  }
}

.style-home-renovation-list__inner--item-title>span {
  position: absolute;
  top: 0;
  left: 0;
  font-weight: 600;
  display: inline-block;
  color: #559198;
}

.style-home-renovation-list__inner--item-text {
  text-align: justify;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-list__inner--img {
    margin: auto;
    display: block;
    border: 0.5px solid #ccc;
  }
}

.works-form {
  margin: 0 auto;
}

@media screen and (max-width: 720px) {
  .works-form {
    margin: 32px 0 0 0;
  }
}

.works-form form dl {
  display: table;
  width: 100%;
}

.works-form form dl dt {
  display: table-cell;
  font-size: 13px;
  line-height: 2.4;
  padding: 21px 0;
  width: 292px;
}

@media screen and (max-width: 720px) {
  .works-form form dl dt {
    width: auto;
    padding: 12px 0 0 0;
  }
}

@media screen and (max-width: 720px) {

  .works-form form dl dt,
  .works-form form dl dd {
    display: block;
  }
}

.works-form form dl dt .required {
  margin-left: 6px;
  color: #ff0000;
}

.works-form form dl dd p {
  color: #ff0000;
}


.works-form form dl dd {
  font-size: 14px;
  line-height: 2.4;
}

@media screen and (max-width: 720px) {
  .works-form form dl dd {
    width: auto;
    padding: 12px 0;
  }
}

.works-mailform-anchor {
  background-color: #fff;
  display: block;
  text-align: center;
  margin-top: 21px;
}

/* 231206 add */
.blog-post-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 47px;
}


@media all and (min-width: 0px) and (max-width: 720px) {
  .blog-post-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 47px;
  }

  .blog-post-list .col-l {
    float: none;
    margin: 0 !important;
  }
}

.single-pagenation {
  margin: auto;
  border-top: 2px solid #000;
  padding-top: 40px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .single-pagenation {
    margin: auto;
    border-bottom: 2px solid #000;
    padding-top: 0;
    padding-bottom: 40px;
  }
}

.single-pagenation__inner {
  display: grid;
  grid-template-columns: 38% 1fr 38%;
  gap: 0;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .single-pagenation__inner {
    grid-template-columns: repeat(1, 1fr);
    gap: 40px;
  }
}

.single-previous-post__img-thumb,
.single-next-post__img-thumb {
  display: block;
  width: 100%;
  height: auto;
}

.single-previous-post,
.single-next-post {
  justify-content: flex-start;
  align-items: center;
  width: 100%;
}

.single-previous-post {
  /* display: grid;
  grid-template-columns: 25% 1fr;
  gap: 16px; */
  position: relative;
}

.single-next-post {
  /* display: grid;
  grid-template-columns: 1fr 25%;
  gap: 16px; */
  position: relative;
}

.single-previous-post {
  /* padding-right: 24px; */
  padding: 0 24px;
}

.single-next-post {
  /* padding-left: 24px; */
  padding: 0 24px;
}

.single-previous-post::before,
.single-next-post::before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.single-previous-post::before {
  content: "〈";
  left: 0;
}

.single-next-post::before {
  content: "〉";
  right: 0;
}


.single-previous-post__img-thumb img,
.single-next-post__img-thumb img {
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
  object-fit: cover;
  border: .5px solid #ccc;
}

.single-pagenation__inner>li:nth-of-type(1),
.single-pagenation__inner>li:nth-of-type(3) {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.single-pagenation__inner>li:nth-of-type(2) {
  display: flex;
  justify-content: center;
  align-items: center;
}

.single-pagenation__inner>li:nth-of-type(1),
.single-pagenation__inner>li:nth-of-type(2) {
  border-right: 1px solid #000;
}

@media all and (min-width: 0px) and (max-width: 720px) {

  .single-pagenation__inner>li:nth-of-type(1),
  .single-pagenation__inner>li:nth-of-type(2) {
    border-right: 0;
  }

  .single-pagenation__inner>li:nth-of-type(1) {
    order: 2;
  }

  .single-pagenation__inner>li:nth-of-type(2) {
    order: 1;
  }

  .single-pagenation__inner>li:nth-of-type(3) {
    order: 3;
  }
}

.single-previous-post__link,
.single-next-post__link {
  color: #000;
  font-weight: 600;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.single-previous-post__link {
  /* padding-right: 16px; */
}

.single-next-post__link {
  /* padding-left: 16px; */
}

.single-back-button {
  width: 100%;
}

.single-back-button a {
  color: #000;
  font-weight: 600;
  display: block;
  padding: 16px;
  text-align: center;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .single-back-button a {
    border-bottom: 2px solid #000;
    padding: 32px 16px;
  }
}

.single-previous-post__link:hover,
.single-next-post__link:hover,
.single-back-button a:hover {
  text-decoration: underline;
}

@media all and (min-width: 0px) and (max-width: 720px) {

  .single-previous-post__link {
    padding-right: 0;
  }

  .single-next-post__link {
    padding-left: 0;
  }

  .single-previous-post__link:hover,
  .single-next-post__link:hover,
  .single-back-button a:hover {
    text-decoration: none;
  }

  .single-previous-post__link:active,
  .single-next-post__link:active,
  .single-back-button a:active {
    text-decoration: underline;
  }
}

/* 240213 correct */
.home-section-anchor {
  margin-top: 72px;
  padding-top: 24px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .home-section-anchor {
    margin-top: 48px;
  }
}

.section-base-bottom {
  margin-bottom: 96px !important;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .section-base-bottom {
    margin-bottom: 48px !important;
  }
}

/* TOPリノベーション目次 */
.style-home-renovation-contents-menu {
  margin: 0 auto;
}

.style-home-renovation-contents-menu__inner {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-contents-menu__inner {
    grid-template-columns: repeat(1, 1fr);
    gap: 64px;
  }
}

.style-home-renovation-contents-menu__inner>li {
  position: relative;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-contents-menu__inner>li {
    padding-bottom: 0;
    position: relative;
  }

  .style-home-renovation-contents-menu__inner>li::before {
    position: absolute;
    content: "";
    left: 0;
    bottom: -32px;
    width: 100%;
    height: 1px;
    background-color: #DDDDDD;
  }
}

.style-home-renovation-contents-menu__inner--title {
  position: relative;
  text-align: center;
  text-decoration: underline;
  margin: 0 auto 32px;
  padding-top: 32px;
  font-size: 17px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-contents-menu__inner--title {
    font-size: 14px;
  }
}

.style-home-renovation-contents-menu__inner--title>span {
  color: #49A2AB;
  font-weight: bold;
  display: inline-block;
  text-align: center;
  text-decoration: none;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
}

.style-home-renovation-contents-menu__inner--text {
  font-size: 14px;
  text-align: justify;
  margin: 0 auto;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-contents-menu__inner--text {
    font-size: 13px;
  }
}

.style-home-renovation-contents-menu__inner--img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto 32px;
  border: .5px solid #DDDDDD;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-contents-menu__inner--img {
    width: 80%;
  }
}

.style-home-renovation-contents-menu__inner--img>img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 332 / 207;
  object-fit: cover;
}

.style-home-renovation-contents-menu__inner--button {
  display: block;
}

.style-home-renovation-contents-menu__inner--button>a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 48px;
  position: relative;
  background-color: #49A2AB;
  font-size: 14px;
  color: #fff;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-contents-menu__inner--button>a {
    font-size: 13px;
    width: 80%;
    margin: auto;
  }
}

.style-home-renovation-contents-menu__inner--button>a::before {
  position: absolute;
  content: "〉";
  left: 50%;
  bottom: -13px;
  font-size: 11px;
  transform: translateY(-50%) rotate(90deg);
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-contents-menu__inner--button>a::before {
    bottom: -12px;
  }
}

.style-home-renovation-contents-menu__inner--button {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-contents-menu__inner--button {
    position: initial;
  }
}

.style-home-renovation-contents__inner--title03 {
  margin: 0 0 24px;
  font-weight: 400;
  font-size: 18px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .style-home-renovation-contents__inner--title03 {
    font-size: 16px;
    margin: 24px 0 16px;
    text-align: center;
    width: 100%;
  }
}

/* TOPページの全文を読む */

.style-home-renovation-read-more *,
.style-home-renovation-read-more *:before,
.style-home-renovation-read-more *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.style-home-renovation-read-more {
  position: relative;
}

.style-home-renovation-read-more label {
  position: absolute;
  z-index: 1;
  bottom: 0;
  width: 100%;
  height: 140px;
  /* グラデーションの高さ */
  cursor: pointer;
  text-align: center;
  /* 以下グラデーションは背景を自身のサイトに合わせて設定してください */
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 90%);
}

.style-home-renovation-read-more input:checked+label {
  background: inherit;
  /* 開いた時にグラデーションを消す */
}

.style-home-renovation-read-more label:after {
  line-height: 2.5rem;
  position: absolute;
  z-index: 2;
  bottom: 20px;
  left: 50%;
  width: 16rem;
  content: '施工事例を詳しく見る ＋';
  transform: translate(-50%, 0);
  letter-spacing: 0.05em;
  color: #ffffff;
  border-radius: 20px;
  background-color: #49A2AB;
}

.style-home-renovation-read-more input {
  display: none;
}

.style-home-renovation-read-more .style-home-renovation-read-more__inner {
  overflow: hidden;
  height: 80svh;
  /* 開く前に見えている部分の高さ */
  transition: all 0.5s;
}

.style-home-renovation-read-more input:checked+label {
  /* display: none ; 閉じるボタンを消す場合解放 */
}

.style-home-renovation-read-more input:checked+label:after {
  content: '施工事例を閉じる ✕';
}

.style-home-renovation-read-more input:checked~.style-home-renovation-read-more__inner {
  height: auto;
  padding-bottom: 80px;
  /* 閉じるボタンのbottomからの位置 */
  transition: all 0.5s;
}

.style-home-renovation-works {
  display: grid;
  grid-template-columns: 252px 1fr;
  gap: 80px;
}

.style-home-renovation-works .works-data-outline-image {
  float: initial !important;
  width: 100% !important;
}

/* 240215 add */

.footer-line {
  display: none;
  margin: 56px auto;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .footer-line {
    display: block;
  }
}

.footer-line__inner {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 40px;
}

.footer-line__inner .contactBtn-line {
  color: #fff !important;
  font-weight: 400;
  margin: auto;
  max-width: 80%;
}

.footer-line__inner .contactBtn-line:active {
  opacity: .7;
}

/* 240409 add */
.home-banner-text {
  padding: 40px 0;
  position: relative;
  overflow: hidden;
  border-top: .5px solid #49a2ab;
  border-bottom: .5px solid #49a2ab;

  @media all and (min-width: 0px) and (max-width: 720px) {
    margin: 0 14px 40px;
  }

  >p {
    position: relative;
    text-align: center;
    color: #49a2ab;
    z-index: 2;
    font-size: min(4.24vw, 1.1rem);
    line-height: 2;

    >strong {
      background: linear-gradient(transparent 60%, rgba(255, 240, 121, 0.7) 60%);
    }
  }
}

.footer-sponsor-banner {
  margin: 80px auto 0;
  border-top: .5px solid #ccc;
  border-bottom: .5px solid #ccc;
  background-color: #fafafa;
  padding: 40px 0;

  @media all and (min-width: 0px) and (max-width: 720px) {
    margin: 0px auto 40px;
  }
}

.footer-sponsor-banner-inner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px;
  max-width: 800px;
  padding: 0 40px;
  margin: auto;

  @media all and (min-width: 0px) and (max-width: 720px) {
    gap: 24px;
    padding: 0 12px;
  }

  & a {
    display: block;
    width: 100%;
  }
}

.footer-sponsor-banner-img {
  width: 100%;
  height: auto;

  &>img {
    display: block;
    width: 100%;
    height: auto;
  }
}


/*================================
-240430
=================================*/

.home-slide {
  margin-top: 32px;

  >.inner {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
  }
}

@media screen and (max-width: 720px) {

  .home-slide {
    width: calc(100% + 24px);
    margin: 32px 12px 0 -12px;
    overflow-x: auto;

    >.inner {
      width: 280%;
      margin-left: 12px;
    }
  }

}

.home-slide-link {
  display: block;
  width: 100%;
  height: auto;
  border: 3px solid #000;
  padding: 12px;
  box-sizing: border-box;
  color: #000;

  >.image {
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 16px;

    >img {
      width: 100%;
      height: auto;
      display: block;
      aspect-ratio: 4 / 3;
      object-fit: cover;
    }
  }

  >.title {
    font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
    font-weight: 500;
    font-size: min(3.733vw, 14px);
    letter-spacing: 0.05em;
    font-weight: bold;
    margin-bottom: 4px;
  }

  >.text {
    margin-bottom: 8px;
    font-size: min(3.733vw, 13px);
  }

  >.button {
    width: 100%;
    height: 40px;
    color: #fff;
    background-color: #000;
    font-size: min(3.733vw, 13px);
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;

    &::after {
      content: "▶";
      position: absolute;
      right: 8px;
      top: 50%;
      transform: translateY(-50%);
      z-index: 1;
      font-size: 10px;
    }
  }
}

/*================================
-240517 add reCAPTCHA
=================================*/

.footer-recaptcha {
  margin-top: 40px;
  text-align: center;
  padding: 0 20px;
}

.grecaptcha-badge {
  visibility: hidden;
}



/*================================
-240719 add
=================================*/

.home-tour-video {
  max-width: 1025px;
  margin: auto;
  background-color: #F7F7F7;
  padding: 72px 12px;
  margin: 48px auto 80px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  box-sizing: border-box;

  .title {
    font-size: 20px;
    text-align: center;
    margin: 0 auto 40px;
    font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;

    >span {
      position: relative;
      display: inline-block;

      &::before,
      &::after {
        content: "";
        top: 50%;
        position: absolute;
        z-index: 2;
        width: 1px;
        height: 100%;
        background-color: #000;
      }

      &::before {
        transform: translateY(-50%) rotate(-30deg);
        left: -16px;
      }

      &::after {
        transform: translateY(-50%) rotate(30deg);
        right: -16px;
      }
    }
  }

  >video {
    aspect-ratio: 16 / 9;
    width: 100%;
    max-width: 800px;
    margin: auto;
  }

  >.button {
    display: inline-block;
    padding: 16px 55px;
    background-color: #000;
    color: #fff;
    font-size: 16px;
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 1;
    text-align: center;
    box-sizing: border-box;
    margin: 40px auto 0;

    >small {
      display: block;
      padding-top: 5px;
      font-size: 10px;
    }
  }
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .home-tour-video {
    width: calc(100% + 24px);
    margin-left: -12px;
    padding: 40px 12px;

    .title {
      font-size: 16px;
    }

    >.button {
      padding: 13px 28px;
      font-size: 12px;
    }
  }
}


.home-banner-section {
  margin: 40px auto 96px;
  border-top: .5px solid #49a2ab;
  border-bottom: .5px solid #49a2ab;
  padding: 40px 0;
  position: relative;
  overflow: hidden;
  max-width: 1025px;

  .inner {
    display: grid;
    grid-template-columns: 40% 1fr;
    gap: 64px;
    padding: 0 24px;
    align-items: center;
  }

  .link {
    transform: ease .3s;
    display: flex;
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
    justify-content: center;

    img {
      width: 100%;
      height: auto;
      display: block;
    }

    &:hover {
      opacity: .7;
      transform: ease .3s;
    }
  }

  .text {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: center;

    >p {
      font-size: min(4.24vw, 1.1rem);
      line-height: 2;
      color: #49a2ab;
      text-align: justify;
      font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;

      >strong {
        background: linear-gradient(transparent 60%, rgba(255, 247, 181, 0.7) 60%);
        font-weight: 500;
      }

    }
  }
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .home-banner-section {
    margin: 40px auto 64px;

    .inner {
      grid-template-columns: 1fr;
      gap: 40px;
    }

    .link {
      width: 70vw;
    }

    .text {

      >p {
        text-align: center;
      }
    }
  }
}

/*================================
-240827 add
=================================*/
/*================================
-企業情報
=================================*/
.company-member-title,
.company-message-title {
  margin: 40px auto;
  padding: 24px 16px;
  border-top: .5px solid #000;
  border-bottom: .5px solid #000;
  text-align: center;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 500;
}

.company-member-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 4px;

  .link {
    color: #000;
    text-align: center;
  }
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .company-member-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px 4px;
  }
}

.company-member-list-item {
  .image {
    width: 100%;
    height: auto;
    display: block;
    position: relative;

    &::before {
      content: "";
      position: absolute;
      left: 0;
      top: 0;

      width: 0;
      height: 0;
      border-style: solid;
      border-color: #000 transparent transparent transparent;
      border-width: 16px 16px 0px 0px;
      z-index: 1;
      user-select: none;
    }

    >img {
      width: 100%;
      height: auto;
      display: block;
      object-fit: 1 / 1;
      background-color: #f7f7f7;
    }

    >figcaption {
      display: inline-block;
      margin: 16px auto 4px;
      text-align: center;
      font-weight: 600;
    }
  }

  .text {
    font-size: 13px;
  }
}

@media all and (min-width: 0px) and (max-width: 375px) {
  .company-member-list-item {
    .text {
      font-size: 3.2vw;
    }
  }

  .companyTableImg {
    width: 70%;
  }
}

.company-message-greeting {
  margin-bottom: 80px;
}

.company-message-point {

  .list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 4px;
  }
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .company-message-point {

    .list {
      display: grid;
      grid-template-columns: repeat(1, 1fr);
      gap: 16px;
    }
  }
}

.company-message-point-item {
  background-color: #f7f7f7;
  padding: 32px 28px;
  position: relative;
  overflow: hidden;

  .number {
    display: block;
    margin: 0 auto 8px;
    text-align: center;
    color: #49a2ab;
    font-family: 'Outfit', sans-serif;
    font-weight: 500;
    font-size: 30px;
    line-height: 1;
    position: relative;
    z-index: 5;

    &::before,
    &::after {
      content: "";
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
    }

    &::before {
      width: 30%;
      height: 1px;
      background-color: #49a2ab;
      z-index: -2;
    }

    &::after {
      width: 40px;
      height: 40px;
      background-color: #f7f7f7;
      z-index: -1;
    }
  }

  .headline {
    text-align: center;
    font-weight: 400;
    margin-bottom: 24px;
    font-size: 16px;
    position: relative;
    z-index: 5;
    color: #000;
  }

  .text,
  .text02 {
    margin: 0 0 24px;
    position: relative;
    z-index: 5;
  }

  .text02 {
    margin: 0;
  }
}

.company-message-point-link {
  position: relative;
  z-index: 5;

  &::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: #000 transparent transparent transparent;
    border-width: 16px 16px 0px 0px;
    z-index: 10;
    user-select: none;
  }

  .image {
    width: 100%;
    height: auto;
    display: block;

    >img {
      width: 100%;
      height: auto;
      display: block;
      border: .5px solid #ccc;
      position: relative;
    }
  }

  &:hover {
    opacity: 1;

    &::after {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(255, 255, 255, 0.3);
      z-index: 2;
      pointer-events: none;
    }
  }
}

.company-message-point-caption {
  text-align: center;
  font-size: 12px;
  padding: 0 16px;
  margin: auto;
  color: #949494;
  margin: 8px auto 24px;
}

/*================================
-エステートページ
=================================*/

#andstandard *,
#robot * {
  box-sizing: border-box;
}

.andstandard-section,
.robot-section {
  padding-top: 72px;
  margin: -72px auto 80px;
}

@media all and (min-width: 0px) and (max-width: 720px) {

  .andstandard-section,
  .robot-section {
    padding-top: 56px;
    margin: -56px auto 72px;
  }
}

.andstandard-section-list,
.robot-section-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;

  .andstandard-menu-item01,
  .andstandard-menu-item02 {
    background-color: #f7f7f7;

    .title {
      text-align: center;
      padding: 8px 16px;
      background-color: #49a2ab;
      color: #fff;
      font-weight: bold;
      position: relative;

      &::before {
        content: "";
        position: absolute;
        left: 50%;
        bottom: -8px;
        transform: translateX(-50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-color: #49a2ab transparent transparent transparent;
        border-width: 8px 32px 0px 32px;
      }
    }
  }

  .andstandard-menu-item02,
  .robot-menu-item02 {
    .title {
      background-color: #aba5a5;

      &::before {
        border-color: #aba5a5 transparent transparent transparent;
      }
    }
  }
}

.andstandard-menu,
.robot-menu {
  padding: 24px 32px 16px 32px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;

  >a {
    color: #000;
    position: relative;
    padding-left: 12px;
    height: 32px;
    display: flex;
    align-items: center;
    font-size: min(3.46vw, 13px);

    &::before {
      content: "〉";
      position: absolute;
      left: 0;
      top: 50%;
      transform: translateY(-50%);
    }

    &:hover {
      text-decoration: underline;
    }
  }
}

@media all and (min-width: 0px) and (max-width: 720px) {

  .andstandard-section-list,
  .robot-section-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 16px;
    margin-bottom: 80px;
  }

  .andstandard-menu,
  .robot-menu {
    grid-template-columns: 58% 1fr;
    padding: 16px 24px 16px 24px;

    >a {
      height: 48px;

      &:hover {
        text-decoration: none;
      }

      &:active {
        text-decoration: underline;
      }
    }
  }
}

.andstandard-section-contents,
.andstandard-section-contents02,
.robot-section-contents,
.robot-section-contents02 {
  margin: 0 auto;
  padding-top: 32px;

  .text {
    margin-bottom: 24px;
    text-align: justify;
  }

  .image,
  .image-full,
  .image-aspect {
    width: 100%;
    height: auto;
    display: block;

    >img {
      width: 100%;
      height: auto;
      display: block;
      border: .5px solid #DDDDDD;
    }
  }

  .image-full {
    width: 90%;
    max-width: 700px;
    margin: auto;
  }

  .image-aspect {

    >img {
      aspect-ratio: 1 / 1;
      object-fit: cover;
    }
  }

  .table {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 4px 16px;
    margin-top: -48px;
  }
}

.andstandard-section-contents02,
.robot-section-contents02 {
  padding: 32px 24px;
  background-color: #f7f7f7;
  position: relative;

  &::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-color: #e9e3db transparent transparent transparent;
    border-width: 8px 32px 0px 32px;
  }
}

@media all and (min-width: 0px) and (max-width: 720px) {

  .andstandard-section-contents,
  .andstandard-section-contents02,
  .robot-section-contents,
  .robot-section-contents02 {

    .image,
    .image-aspect {
      width: 90%;
      margin: auto;
    }

    .image-full {
      width: 100%;
      margin: auto;
    }

    .image-aspect {

      >img {
        aspect-ratio: 2 / 1;
      }
    }

    .table {
      grid-template-columns: repeat(1, 1fr);
      gap: 8px;
    }
  }

  .andstandard-section-contents02,
  .robot-section-contents02 {
    padding: 16px 16px;
  }
}

.andstandard-section-contents-list,
.robot-section-contents-list {
  display: grid;
  grid-template-columns: 55% 1fr;
  gap: 80px;
}

@media all and (min-width: 0px) and (max-width: 720px) {

  .andstandard-section-contents-list,
  .robot-section-contents-list {
    grid-template-columns: 1fr;
    gap: 24px;

    >.item {
      &:first-child {
        order: 2;
      }

      &:last-child {
        order: 1;
      }
    }
  }
}

.andstandard-headline02,
.andstandard-headline02-2,
.robot-headline02,
.robot-headline02-2 {
  position: relative;
  padding: 0 0 36px 0;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: bold;
  font-size: 32px;
  letter-spacing: 3px;
  line-height: 1.4;

  &::after {
    position: absolute;
    left: 0;
    bottom: 0;
    display: inline-block;
    width: 14px;
    height: 4px;
    background-color: #000;
    content: "";
    font-size: 0;
  }

  &::before {
    position: absolute;
    content: "";
    width: 100px;
    height: 100px;
    top: -16px;
    left: -16px;
    background-color: #49a2ab;
    transform: rotate(30deg);
    opacity: .1;
    z-index: -1;
  }
}

.andstandard-headline02,
.robot-headline02 {
  >span {
    &:not(.large) {
      background-color: #49a2ab;
      display: inline-block;
      padding: 4px 18px;
      line-height: 1.4;
      margin-bottom: 8px;
      font-size: min(3.46vw, 16px);
      color: #fff;
      font-weight: 400;
    }
  }

  >b {
    font-size: min(10.66vw, 60px);
    display: inline-block;
    padding: 0 4px;
    color: #49a2ab;
  }
}

.andstandard-headline02 {
  .large {
    display: inline-block;
    margin: 0 2px 0 0;
    font-size: min(8.53vw, 53px);
    color: #49a2ab;
    font-weight: 400;
  }
}

.andstandard-headline02-2,
.robot-headline02-2 {
  &::before {
    background-color: #aba5a5;
    transform: rotate(30deg);
    opacity: .1;
    z-index: -1;
  }
}

@media all and (min-width: 0px) and (max-width: 720px) {

  .andstandard-headline02,
  .andstandard-headline02-2,
  .robot-headline02,
  .robot-headline02-2 {
    padding: 0 0 16px 0;
    font-size: 18px;
    letter-spacing: 1px;

    &::after {
      display: block;
      width: 12px;
      height: 3px;
    }
  }
}

.andstandard-headline02-3,
.robot-headline02-3 {
  position: relative;
  padding: 16px 24px;
  font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
  font-weight: 400;
  font-size: 32px;
  letter-spacing: 1px;
  text-align: center;
  line-height: 1.4;
  margin-bottom: 0;
  background-color: #e9e3db;
  color: #000;
  overflow: hidden;

  >span {
    position: relative;
    z-index: 10;
  }

  &::before {
    content: "";
    position: absolute;
    width: 20vw;
    height: 20vw;
    border-radius: 15vw;
    left: 50%;
    top: 50%;
    border: 3px solid #ffffff;
    transform: translate(-50%, -50%);
    z-index: 1;
    opacity: .6;
  }
}

.andstandard-headline02-3 {
  .large {
    display: inline-block;
    margin: 0 2px;
    font-size: min(8.53vw, 53px);
    color: #49a2ab;
    font-weight: 400;
  }
}

@media all and (min-width: 0px) and (max-width: 720px) {

  .andstandard-headline02-3,
  .robot-headline02-3 {
    font-size: 18px;
    font-weight: bold;

    &::before {
      width: 35vw;
      height: 35vw;
      border-radius: 18vw;
    }
  }
}

/*================================
-リスト
=================================*/

.andstandard-section-list-ol,
.andstandard-section-list-ol-2fr,
.andstandard-section-list-ol02,
.robot-section-list-ol,
.robot-section-list-ol-2fr,
.robot-section-list-ol02 {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 0;
  counter-reset: item;
  list-style-type: none;

  >li {
    border-bottom: .5px solid #ddd;
    padding: 24px 16px 24px 56px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    line-height: 1.6;
    position: relative;

    span {
      font-weight: bold;
      background: linear-gradient(transparent 60%, rgba(255, 240, 121, 0.7) 60%);
      line-height: 1.6;
    }

    &::before {
      position: absolute;
      top: 50%;
      left: 8px;
      width: 34px;
      height: 30px;
      text-align: center;
      line-height: 1;
      counter-increment: item;
      content: counter(item)'';
      color: #49a2ab;
      font-weight: bold;
      transform: translateY(-50%);
      display: flex;
      justify-content: center;
      align-items: center;
    }

    &::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 8px;
      border-radius: 40px;
      width: 30px;
      height: 30px;
      border: 2px solid #49a2ab;
      transform: translateY(-50%);
    }

    &:last-child {
      border-bottom: 0;
    }
  }
}

.andstandard-section-list-ol-2fr,
.robot-section-list-ol-2fr {
  grid-template-columns: repeat(2, 1fr);
}

.robot-section-list-ol-2fr {
  >li {
    &:nth-last-child(2) {
      border-bottom: 0;
    }
  }
}

@media all and (min-width: 0px) and (max-width: 720px) {

  .andstandard-section-list-ol-2fr,
  .robot-section-list-ol-2fr {
    grid-template-columns: repeat(1, 1fr);
  }

  .robot-section-list-ol-2fr {
    >li {
      &:nth-last-child(2) {
        border-bottom: .5px solid #ddd;
      }
    }
  }
}

.andstandard-section-list-ol02,
.robot-section-list-ol02 {
  >li {

    >span {
      margin-bottom: 8px;
    }

    &::before {
      color: #898379;
    }

    &::after {
      border: 2px solid #898379;
    }
  }

  .title {

    &::before,
    &::after {
      top: 37px;
    }
  }
}

@media all and (min-width: 0px) and (max-width: 720px) {

  .andstandard-section-list-ol02,
  .robot-section-list-ol02 {
    .title {

      &::before,
      &::after {
        top: 44px;
      }
    }
  }
}

.andstandard-section-contents02,
.robot-section-contents02 {

  .andstandard-section-list-ol,
  .andstandard-section-list-ol-2fr,
  .andstandard-section-list-ol02,
  .robot-section-list-ol,
  .robot-section-list-ol-2fr,
  .robot-section-list-ol02 {
    padding: 0 40px;
  }
}

@media all and (min-width: 0px) and (max-width: 720px) {

  .andstandard-section-contents02,
  .robot-section-contents02 {

    .andstandard-section-list-ol,
    .andstandard-section-list-ol-2fr,
    .andstandard-section-list-ol02,
    .robot-section-list-ol,
    .robot-section-list-ol-2fr,
    .robot-section-list-ol02 {
      padding: 0;
    }
  }
}

/*================================
-比較テーブル
=================================*/
.andstandard-comparison-table,
td,
th {
  border-collapse: collapse;
}

.andstandard-comparison-table {

  .title {
    color: #000;
    line-height: 1.4;
    height: 72px;
    padding: 12px 8px 4px;
    width: 100%;
    border: none;
    font-size: min(4vw, 18px);
  }

  td {
    width: 50%;
    padding: 8px;
  }

  .title-simple,
  .title-other {
    height: 56px;
    padding: 4px 8px;
    text-align: center;
    border: .5px solid #ccc;
  }

  .title-simple {
    background-color: #49a2ab;
    color: #fff;
  }

  .title-other {
    background-color: #E6E6E6;
  }

  .explanation-simple,
  .explanation-other {
    padding: 16px 8px 24px;
    vertical-align: top;
    line-height: 1.4;
    font-size: min(3.46vw, 13px);
    border: .5px solid #ccc;
  }

  .explanation-simple {
    background-color: #E4F2F4;
  }
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .andstandard-comparison-table {}
}

/*================================
-ボタン
=================================*/

.andstandard-button {
  position: relative;
  background: #559198;
  padding: 8px 16px;
  margin: 40px auto;
  display: flex;
  flex-direction: column;
  color: #fff;
  max-width: 600px;
  height: 56px;
  align-items: center;
  justify-content: center;
  text-align: center;

  &::after {
    content: "";
    position: absolute;
    border-style: solid;
    border-width: 0 0 16px 16px;
    border-color: transparent transparent #ffffff transparent;
    right: 4px;
    bottom: 4px;
    z-index: 2;
  }
}

/*================================
-画像部分
=================================*/

@media all and (min-width: 0px) and (max-width: 720px) {
  .companyTableImg {
    width: 70%;
  }
}

/*================================
  -余白
  =================================*/
.mb0 {
  margin-bottom: 0 !important;
}

/*================================
-240912 add
=================================*/

/*================================
-会員登録フォーム
=================================*/

@media all and (min-width: 0px) and (max-width: 720px) {
  .robot-hero-title {
    top: 62% !important;
    transform: translateY(-50%);
  }
}

.robot-form {
  margin: 0 auto;

  dl,
  dt,
  dd {
    display: table-cell;
  }

  dl {
    display: table;
    width: 100%;
    background: url(../images/common/bg-dotted-x.webp) repeat-x 0 bottom;
    padding: 21px 0;

    dt {
      width: 186px;
    }

    dd {
      width: 732px;
      line-height: 1.6;
    }
  }

  .required {
    margin-left: 6px;
    color: #ff0000;
  }

  .attention {
    margin-top: 16px;
    color: #ff0000;
  }

  .form-title {
    font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
    font-size: min(4.26vw, 22px);
    letter-spacing: 1px;
    line-height: 1;
    margin-bottom: 24px;

    >span {
      display: inline-block;
      padding: 0 0 11px 0;
      border-bottom: 4px solid #000;
    }
  }

  .text-att {
    color: #ff0000;
  }

  .wpcf7-submit:disabled {
    opacity: .5;
  }
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .robot-form {

    dl {
      padding: 0;

      dt {
        width: auto;
        padding: 12px 0 0 0;
        display: block;
      }

      dd {
        width: auto;
        padding: 12px 0;
        display: block;
      }
    }

    .addres-box {
      .input-base {
        &:last-child {
          margin-top: 4px;
        }
      }
    }
  }
}

/*================================
-6つの特徴リスト
=================================*/

.robot-point-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .robot-point-list {
    grid-template-columns: repeat(1, 1fr);
  }
}

.robot-point-list-item {
  background-color: #f7f7f7;
  padding: 16px;
  position: relative;

  >.number {
    position: absolute;
    left: -2px;
    top: -2px;
    padding: 0 0 4px 8px;
    color: #fff;
    z-index: 2;
    width: 40px;
    height: 40px;
    overflow: hidden;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    line-height: 1.4;
    font-weight: bold;

    &::before {
      content: "";
      position: absolute;
      left: -40px;
      bottom: 0;
      width: 80px;
      height: 80px;
      border-radius: 40px;
      background-color: #49a2ab;
      z-index: -1;
    }
  }

  >.title {
    padding-bottom: 8px;
    margin-bottom: 16px;
    border-bottom: .5px dashed #000;
    text-align: center;
    font-weight: bold;
  }

  >.text {
    margin-bottom: 0;
    line-height: 1.6;
  }
}

/*================================
-241003 add
=================================*/

.home-contents-menu {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .home-contents-menu {
    grid-template-columns: repeat(1, 1fr);
  }
}

.home-contents-menu-link {
  position: relative;
  /* border: .5px solid #ccc; */
  border: 3px solid #000;

  .image {
    display: block;
    width: 100%;
    height: auto;
    position: relative;

    >img {
      width: 100%;
      height: auto;
      object-fit: cover;
      /* aspect-ratio: 3 / 1; */
      aspect-ratio: 340 / 100;
      display: block;
      position: relative;
      filter: saturate(70%);

      &::after {
        position: absolute;
        content: "";
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.3);
        z-index: 2;
      }
    }
  }

  .title {
    position: absolute;
    left: 0;
    bottom: 0;
    color: #000;
    z-index: 10;
    text-align: left;
    background-color: rgba(255, 255, 255, 0.9);
    display: inline-block;
    padding: 8px 16px 8px 40px;
    border-radius: 0 8px 0 0;
    max-width: 240px;
    width: 100%;

    >span {
      font-size: min(3.2vw, 12px);
    }

    >p {
      font-size: min(4vw, 15px);
      line-height: 1.4;
      font-weight: 600;
    }
  }
}

.home-contents-menu-link {

  &:nth-of-type(1),
  &:nth-of-type(2),
  &:nth-of-type(3),
  &:nth-of-type(4) {

    .title {
      &::before {
        content: "";
        width: 16px;
        height: 20px;
        position: absolute;
        left: 12px;
        top: calc(50% + 2px);
        transform: translateY(-50%);
        z-index: 2;
      }
    }
  }

  &:nth-of-type(1) {
    .title {
      &::before {
        background: url("../images/index/home-pickup-icon01.svg") no-repeat center center / 100%;
      }
    }
  }

  &:nth-of-type(2) {
    .title {
      &::before {
        background: url("../images/index/home-pickup-icon02.svg") no-repeat center center / 100%;
      }
    }
  }

  &:nth-of-type(3) {
    .title {
      &::before {
        background: url("../images/index/home-pickup-icon03.svg") no-repeat center center / 100%;
      }
    }
  }

  &:nth-of-type(4) {
    .title {
      &::before {
        background: url("../images/index/home-pickup-icon04.svg") no-repeat center center / 100%;
      }
    }
  }
}

/*================================
-241101 add
=================================*/

.home-new-post {
  margin-top: 32px;
  overflow: hidden;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;

  .thumbnail {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 1 / 1;

    img {
      width: 100%;
      height: auto;
      display: block;
      aspect-ratio: 1 / 1;
      object-fit: cover;
      background-color: #f7f7f7;
    }
  }

  .date {
    display: block;
    margin-top: 20px;
    font-size: 10px;
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    letter-spacing: 1px;
    color: #000;
  }

  .title {
    font-family: "FOT-筑紫ゴシック Pro E", TsukuGoPro-E;
    letter-spacing: 1px;
    color: #000;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
  }
}

@media all and (min-width: 0px) and (max-width: 720px) {
  .home-new-post {
    grid-template-columns: repeat(2, 1fr);
    overflow: hidden;
    display: grid;
    gap: 20px 8px;
  }
}

#home-works .row a {
  align-items: center;
  display: flex !important;
}

/*================================
-250313 add
=================================*/

/* ヘッダーのオンラインボタンを小さくする */

@media screen and (min-width: 721px) {
  #onlineshop_menu_btn {
    width: 199px;
    text-align: center;
  }
}

@media all and (min-width: 0px) and (max-width: 720px) {
  #onlineshop_menu_btn {
    background-color: #000;
    color: #FFF;
    font-size: 90%;
    padding: 0px 24px 0 10px !important;
    display: flex !important;
    height: 32px;
    align-items: center;
    justify-content: flex-start;
    position: relative;
  }

  #onlineshop_menu_btn .material-icons {
    top: 50% !important;
    right: 4px;
    position: absolute !important;
    transform: translateY(-50%);
  }

  #onlineshop_navi .list li {
    padding: 0px 0px 6px 12px !important;
  }
}

/*================================
-250620 add
=================================*/
/*================================
-アクセスページのレイアウト
=================================*/

.style-access-list {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 80px;

  >li {
    position: relative;

    &:first-child {

      &::before {
        content: "";
        position: absolute;
        bottom: -40px;
        left: 0;
        width: 100%;
        border-bottom: 1px solid #000;
        z-index: 1;
      }
    }
  }
}

.style-access-list-item {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  margin: 12px 0 0 0;

  .access-map {
    display: flex;

    >iframe {
      aspect-ratio: 200 / 89;
      width: 100%;
      height: 100%;
    }
  }
}

@media screen and (max-width: 720px) {
  .style-access-list-item {
    grid-template-columns: repeat(1, 1fr);
    gap: 40px;

    .sp-none {
      display: none;
    }
  }
}

.style-access-aside {

  .image {
    display: block;

    >img {
      width: 100%;
      height: auto;
      display: block;
    }
  }
}

.style-access-text {

  a {
    color: #000;
    text-decoration: underline;
  }

  .list {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 4px;
    margin: 24px auto;

    >li {
      position: relative;
      font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
      padding-left: 16px;

      &::before {
        content: "・";
        position: absolute;
        left: 0;
        top: 0;
        z-index: 1;
      }
    }
  }
}

@media screen and (min-width: 721px) {
  .style-access-text {
    min-height: 160px;

    a {
      &:hover {
        text-decoration: none;
      }
    }
  }
}

@media screen and (max-width: 720px) {
  .style-access-text {
    a {
      &:active {
        text-decoration: none;
      }
    }
  }
}

.style-access-button {
  margin: 40px auto;
  display: flex;
  justify-content: center;

  a {
    border: 2px solid #000;
    color: #000;
    max-width: 280px;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 56px;
    width: 100%;
    position: relative;

    &::before {
      content: "";
      position: absolute;
      right: -12px;
      bottom: 8px;
      width: min(10.66vw, 40px);
      height: 1px;
      background-color: #000;
      transform: rotate(-45deg);
      transform-origin: center center;
    }

    >span {
      font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
      font-weight: 700;
      letter-spacing: 1px;
      font-size: min(3.2vw, 14px);
      position: relative;
      padding-left: min(8.53vw, 40px);

      &::before {
        content: "";
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        width: min(6.4vw, 32px);
        height: min(6.4vw, 32px);
        background: url("../images/common/icon-map.svg") no-repeat center center / 100%;
      }
    }
  }
}

.style-access-list-information {
  display: flex;
  justify-content: flex-end;
  flex-direction: column;
  align-items: flex-start;
  height: 40px;
  margin: 24px auto;

  .headline04 {
    font-size: min(4.26vw, 18px);
    font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
    font-weight: 700;
    letter-spacing: 1px;
  }
}

@media screen and (max-width: 720px) {
  .style-access-list-information {
    .headline04 {
      font-weight: 500;
    }
  }
}

/*================================
-シンプルハウスの強み
=================================*/

#renovation-strengths {
  line-height: 1.8;
}

#renovation-strengths * {
  box-sizing: border-box;
  list-style: none;
}

/* メニュー */
.style-renovation-strengths-menu {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  margin-bottom: 40px;

  .list {
    position: relative;
    width: 100%;
    border: 1px solid #000;

    &::before,
    &::after {
      position: absolute;
      content: "";
      display: block;
      left: 50%;
      transform: translateX(-50%);
      width: 0;
      height: 0;
      border-style: solid;
      border-right: 12px solid transparent;
      border-left: 12px solid transparent;
      border-bottom: 0;
      pointer-events: none;
    }

    &::before {
      bottom: -16px;
      border-top: 16px solid #000;
      z-index: 1;
    }

    &::after {
      bottom: -15px;
      border-top: 16px solid #fff;
      z-index: 2;
    }

    &:nth-of-type(1),
    &:nth-of-type(2),
    &:nth-of-type(3) {
      .style-renovation-strengths-menu-item {

        &::before {
          position: absolute;
          font-size: min(13.86vw, 67px);
          color: #DEF2F4;
          font-weight: 300;
          left: 50%;
          top: 50%;
          transform: translate(-50%, -50%);
          pointer-events: none;
          line-height: 1.2;
          z-index: -1;
        }
      }
    }

    &:nth-of-type(1) {
      .style-renovation-strengths-menu-item {
        &::before {
          content: "01";
        }
      }
    }

    &:nth-of-type(2) {
      .style-renovation-strengths-menu-item {
        &::before {
          content: "02";
        }
      }
    }

    &:nth-of-type(3) {
      .style-renovation-strengths-menu-item {
        &::before {
          content: "03";
        }
      }
    }
  }
}

@media screen and (min-width: 721px) {
  .style-renovation-strengths-menu {
    .list {

      &:nth-of-type(1),
      &:nth-of-type(2),
      &:nth-of-type(3) {
        .style-renovation-strengths-menu-item {
          &::before {
            left: 50%;
            top: calc(50% - 12px);
            transform: translate(-50%, -50%);
          }
        }
      }
    }
  }
}

@media screen and (max-width: 720px) {
  .style-renovation-strengths-menu {
    grid-template-columns: repeat(1, 1fr);
    gap: 24px;

    .list {

      &:nth-of-type(1),
      &:nth-of-type(2),
      &:nth-of-type(3) {
        .style-renovation-strengths-menu-item {
          &::before {
            left: min(3.2vw, 12px);
            top: 50%;
            transform: translateY(-50%);
          }
        }
      }
    }
  }
}

.style-renovation-strengths-menu-item {
  padding: 24px min(2.66vw, 10px);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  position: relative;
  z-index: 5;

  .point {
    position: relative;
    color: #49A2AB;
    width: 100%;
    max-width: 56px;
    display: flex;
    justify-content: center;
    text-align: center;
    font-size: min(3.2vw, 14px);
    line-height: 1.4;

    &::before,
    &::after {
      content: "";
      position: absolute;
      bottom: 4px;
      width: 1px;
      height: min(3.2vw, 14px);
      background-color: #49A2AB;
    }

    &::before {
      transform: rotate(-30deg);
      left: 0;
    }

    &::after {
      transform: rotate(30deg);
      right: 0;
    }
  }

  .text {
    color: #000;
    font-size: min(3.46vw, 14px);
    line-height: 1.4;
    text-align: center;
  }
}

@media screen and (min-width: 721px) {
  .style-renovation-strengths-menu-item {
    min-height: 180px;
  }
}

@media screen and (max-width: 720px) {
  .style-renovation-strengths-menu-item {
    padding: 8px min(2.66vw, 10px);

    .text {
      text-align: left;
      padding-left: min(14.93vw, 56px);
      width: 81vw;
    }
  }
}

/* コンテンツ外枠 */
.style-renovation-strengths-section01,
.style-renovation-strengths-section02,
.style-renovation-strengths-section03 {
  margin: 0 auto 80px;
  padding-top: 160px;
  position: relative;

  &::before {
    position: absolute;
    font-size: min(21.3vw, 120px);
    color: #DEF2F4;
    font-weight: 300;
    pointer-events: none;
    left: 50%;
    top: min(1.73vw, 24px);
    transform: translateX(-50%);
    z-index: -1;
  }

  .headline02 {
    margin: 0 auto 64px;
    padding-bottom: 40px;
    border-bottom: 1px solid #000;
    text-align: center;
    font-size: min(4.26vw, 28px);
    font-weight: bold;
  }

  .headline03 {
    position: relative;
    font-size: min(4vw, 24px);
    letter-spacing: 1px;
    padding-left: min(16.8vw, 72px);
    margin: 0 auto 40px;
    font-family: "Outfit", "FOT-筑紫ゴシック Pro D", TsukuGoPro-D, sans-serif;
    font-weight: 600;
    line-height: 1.4;

    &::before {
      content: "";
      position: absolute;
      width: 1px;
      height: min(10.66vw, 56px);
      background-color: #ccc;
      left: min(10.66vw, 48px);
      top: 50%;
      transform: translateY(-50%) rotate(30deg);
      z-index: 1;
    }

    >span {
      position: absolute;
      font-size: min(10.66vw, 56px);
      color: #49a2ab;
      font-weight: 300;
      left: 0;
      top: 50%;
      transform: translateY(-50%);
    }
  }

  .text {
    margin-bottom: 24px;
  }

  .text-att {
    font-size: min(3.2vw, 13px);
    padding-left: min(3.2vw, 13px);
    position: relative;
    margin: 24px 0;

    >span {
      font-size: min(3.2vw, 12px);
    }

    &::before {
      content: "※";
      position: absolute;
      left: 0;
      top: 0;
      z-index: 1;
    }
  }

  .text02 {
    margin-bottom: 0;
  }

  .inner {
    margin-bottom: 40px;
    padding-bottom: 32px;
    border-bottom: .5px dashed #000;
  }

  .inner-no-space {
    margin-bottom: 0;
    padding-bottom: 0;
  }
}

@media screen and (max-width: 720px) {

  .style-renovation-strengths-section01,
  .style-renovation-strengths-section02,
  .style-renovation-strengths-section03 {
    margin: 0 auto 80px;
    padding-top: 80px;

    &::before {
      top: -2.73vw;
    }

    .inner {
      margin-bottom: 40px;
      padding-bottom: 40px;
    }

    .headline02 {
      margin: 0 auto 40px;
      padding-bottom: 16px;
    }

    .headline03 {
      margin: 0 auto 40px;
    }
  }
}

.style-renovation-strengths-section01 {
  &::before {
    content: "01";
  }
}

.style-renovation-strengths-section02 {
  &::before {
    content: "02";
  }
}

.style-renovation-strengths-section03 {
  &::before {
    content: "03";
  }
}

/* コンテンツ内容 */
.style-renovation-strengths-contents {
  display: grid;
  grid-template-columns: 1fr 40%;
  gap: 40px;

  .list,
  .list-question {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 0;
    background-color: #f7f7f7;
    padding: 0 min(4.26vw, 24px);
    margin: 40px auto;

    >li {
      border-bottom: .5px solid #ddd;
      padding-left: min(10.66vw, 40px);
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: flex-start;
      line-height: 1.6;
      position: relative;
      height: min(17.06vw, 64px);

      &::before {
        content: "";
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 1;
      }

      &:last-child {
        border-bottom: 0;
      }
    }
  }

  .list {
    >li {
      &::before {
        width: min(4.26vw, 16px);
        height: min(2.13vw, 8px);
        border-left: 2px solid #49a2ab;
        border-bottom: 2px solid #49a2ab;
        transform: translateY(-50%) rotate(-45deg);
        left: min(1.6vw, 6px);
      }
    }
  }

  .list-question {
    >li {

      &::before {
        content: "";
        background: url("../images/renovation-strengths/icon-negative.svg") no-repeat center center / 100%;
        width: min(8.53vw, 32px);
        height: min(8.53vw, 32px);
        display: block;
        text-align: center;
        left: 0;
      }
    }
  }


  .image,
  .image-border {
    width: 100%;
    display: block;
    margin: 0 auto;

    >img {
      width: 100%;
      height: auto;
      display: block;
      background-color: #f6f6f6;
    }
  }

  .image-border {
    >img {
      border: .5px solid #ccc;
    }
  }
}

@media screen and (min-width: 721px) {
  .style-renovation-strengths-section02 {
    .style-renovation-strengths-contents {
      grid-template-columns: 40% 1fr;

      .style-renovation-strengths-contents-item {
        order: 2;
      }

      .image,
      .image-border {
        order: 1;
      }
    }
  }
}

@media screen and (max-width: 720px) {
  .style-renovation-strengths-contents {
    grid-template-columns: 1fr;

    .style-renovation-strengths-contents-item {
      order: 2;
    }

    .image,
    .image-border {
      width: 90%;
      margin: 0 auto;
      order: 1;
    }
  }
}

/*================================
-251204 TOPページ 施工の流れスライド
=================================*/

.style-home-renovation02 {
  position: relative;
  margin-top: -40px;

  * {
    box-sizing: border-box;
  }
}

@media screen and (min-width: 721px) {
  .style-home-renovation02 {
    padding: 16px 0;
    background-color: #F7F7F7;
  }
}

.style-home-renovation-slide {
  overflow-x: auto;
  position: relative;

  >.inner {
    width: 330%;
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
    margin-left: 12px;

    .arrow {
      position: relative;

      &::before,
      &:after {
        content: "";
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-top: 25px solid transparent;
        border-bottom: 25px solid transparent;
        border-right: 0;
      }

      &::before {
        right: -10px;
        border-left: 10px solid #000;
        z-index: 6;
      }

      &::after {
        right: -8px;
        border-left: 10px solid #fff;
        z-index: 7;
      }
    }
  }


}

@media screen and (max-width: 720px) {
  .style-home-renovation-slide {
    width: calc(100% + 24px);
    margin: 32px 12px 0 -12px;

    >.inner {
      width: 564%;
    }
  }
}

.style-home-renovation-slide-item {
  border: 2px solid #000;
  padding: min(4.26vw, 24px);
  position: relative;
  background-color: #fff;

  .headline02 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: min(4.26vw, 24px) min(4.26vw, 24px) 0;
    display: block;
    z-index: 5;

    span {
      color: #fff;
      background-color: #58A1AA;
      padding: 0 min(1.06vw, 4px);
      margin-bottom: 4px;
      max-width: 80px;
      height: 20px;
      width: 100%;
      display: inline-flex;
      justify-content: center;
      align-items: center;
      font-size: min(3.2vw, 13px);
      text-align: center;
      line-height: min(3.2vw, 13px);
      position: relative;

      &::before {
        content: "";
        position: absolute;
        right: -9.5px;
        top: 50%;
        transform: translateY(-50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-top: 10px solid transparent;
        border-bottom: 10px solid transparent;
        border-left: 10px solid #58A1AA;
        border-right: 0;
        z-index: 6;
      }
    }
  }

  .image {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;

    >img {
      width: 100%;
      height: auto;
      display: block;
    }
  }

  &:last-child {
    margin-right: 12px;
  }
}

@media screen and (max-width: 720px) {
  .style-home-renovation-slide-item {
    padding: min(10.66vw, 40px) min(4.26vw, 24px);
  }
}

.style-home-renovation-slide-item-contents,
.style-home-renovation-slide-item-contents02 {
  height: min(60.3vw, 140px);
  text-align: justify;
  position: relative;
  z-index: 5;

  .headline03 {
    display: flex;
    margin-bottom: min(2vw, 8px);
    align-items: center;
    border-bottom: .5px solid #000;
    padding-bottom: min(1vw, 8px);
    line-height: 1.4;

    b {
      color: #58A1AA;
      display: inline-block;
      margin-right: min(1.06vw, 4px);
      font-size: min(5.33vw, 20px);
    }

    span {
      font-size: min(3.2vw, 13px);
    }
  }

  .text,
  .text02 {
    font-size: min(3.46vw, 14px);
    line-height: 1.4;
  }

  .text {
    margin-bottom: min(3.46vw, 16px);
  }
}

@media screen and (max-width: 767px) {

  .style-home-renovation-slide-item-contents,
  .style-home-renovation-slide-item-contents02 {
    height: min(60.3vw, 140px);
  }
}

.style-home-renovation-slide-item-contents {
  margin-top: min(13.2vw, 80px);
}

.style-home-slide-text {
  text-align: center;
  display: flex;
  justify-content: center;
  margin-top: min(4.26vw, 16px);

  p {
    font-size: min(3.2vw, 14px);
  }
}

/*================================
-251204 ボトムナビ
=================================*/
.style-footer-bottom-navi * {
  box-sizing: border-box;
}

.style-footer-bottom-navi {
  display: grid;

  >li {

    >a {
      display: flex;
      flex-direction: column;
      color: #fff;
      text-decoration: none;
      justify-content: flex-end;
      align-items: center;
      font-size: min(2.93vw, 12px);
      line-height: 1.2;
      text-align: center;
      position: relative;

      &::before {
        content: "";
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        width: min(5.33vw, 20px);
        height: min(5.33vw, 20px);
        z-index: 5;
        top: min(4.26vw, 16px);
      }

      .text {
        display: block;
      }
    }

    .tel {
      background-color: #979490;

      &::before {
        background: url("../images/common/icon-tel.svg") no-repeat center center / 100%;
      }
    }

    .contact {
      background-color: #141414;

      &::before {
        background: url("../images/common/icon-contact.svg") no-repeat center center / 100%;
      }
    }

    .line {
      background-color: #00C300;

      &::before {
        background: url("../images/common/icon-line.svg") no-repeat center center / 100%;
      }
    }

    .contact02 {
      background-color: #58A1AA;

      &::before {
        background: url("../images/common/icon-contact02.svg") no-repeat center center / 100%;
      }
    }
  }
}

@media screen and (min-width: 721px) {
  .style-footer-bottom-navi {
    grid-template-columns: repeat(1, 1fr);
    gap: 4px;
    max-width: 150px;

    >li {
      >a {
        width: 140px;
        height: 80px;
        padding-bottom: 8px;
      }

      .text-pc {
        font-size: 10px;
        display: block;
        padding-top: 4px;
      }

      .tel {
        pointer-events: none;
      }
    }
  }
}

@media screen and (max-width: 720px) {
  .style-footer-bottom-navi {
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    height: 88px;

    >li {
      background-color: #000;

      >a {
        height: 100%;
        padding-bottom: min(4.26vw, 16px);

        &:hover {
          opacity: 1;
        }

        &:active {
          opacity: .7;
        }

        .text {
          display: flex;
          height: min(7.8vw, 64px);
          justify-content: center;
          align-items: center;
        }
      }
    }
  }
}

/*================================
-251212 add フォーム注意書き
=================================*/

.style-contact-att {
  border: 2px solid #58A1AA;
  padding: min(5.33vw, 20px) min(4.26vw, 16px);
  margin: 56px auto;
  box-sizing: border-box;

  .text {
    background: linear-gradient(transparent 60%, rgba(255, 247, 181, 0.7) 60%);
    display: inline;
  }
}

@media screen and (min-width: 721px) {
  .style-contact-att {
    display: flex;
    justify-content: center;

    .text {
      text-align: center;
    }
  }
}

/*================================
-251224 FAQ
=================================*/

.style-faq-accordion {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 16px;
}

.style-faq-accordion-item {
  border: 2px solid #000;
}

.style-faq-accordion-question {
  position: relative;
  cursor: pointer;
  transition: all .5s ease;
  background-color: #ededed;

  .title {
      padding: min(4.26vw, 16px) min(14.9vw, 56px);
      font-size: min(4vw, 17px);
      overflow: hidden;
      position: relative;

      &::before {
        content: "Q";
        position: absolute;
        width: min(8.53vw, 32px);
        height: min(8.53vw, 32px);
        font-size: min(6.4vw, 24px);
        top: min(3.2vw, 12px);
        left: min(2.13vw, 8px);
        color: #b1b1b1;
        z-index: 1;
        pointer-events: none;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        line-height: min(8.53vw, 32px);
    }
  }

  &::before,
  &:after {
    position: absolute;
    content: "";
    width: 15px;
    height: 2px;
    right: min(4.26vw, 16px);
    top: 50%;
    background-color: #333;
    transition: all 0.5s ease;
  }

  &::before {
    transform: translateX(-50%) rotate(0deg);

  }

  &::after {
    transform: translateX(-50%) rotate(90deg);
  }
}

.style-faq-accordion-question.close {

  &::before,
  &:after {
    transition: all 0.5s ease;
  }

  &::before {
    transform: translateX(-50%) rotate(0deg);
  }

  &::after {
    transform: translateX(-50%) rotate(0deg);
  }
}

.style-faq-accordion-answer {
  height: 0;
  overflow: hidden;
  transition: height .4s ease;

  .text {
    padding: min(4.26vw, 16px) min(4.26vw, 16px) min(4.26vw, 16px) min(14.9vw, 56px) ;
    overflow: hidden;
    position: relative;

    a {
      text-decoration: underline;
      color: #49a2ab;

      &:hover {
        text-decoration: none;
      }
    }

    &::before {
      content: "A";
      position: absolute;
      width: min(8.53vw, 32px);
      height: min(8.53vw, 32px);
      font-size: min(6.4vw, 24px);
      top: min(4.26vw, 16px);
      left: min(2.13vw, 8px);
      color: #49a2ab;
      z-index: 1;
      pointer-events: none;
      display: flex;
      justify-content: center;
      align-items: center;
      text-align: center;
      line-height: min(8.53vw, 32px);
    }
  }
}