<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">html {
  height: 100%;
  overflow-y: scroll;
}
body {
  height: 100%;
  font: 13px/1.231 'Lato', YuGothic, '貂ｸ繧ｴ繧ｷ繝�け', '繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3', 'Hiragino Kaku Gothic Pro', '繝｡繧､繝ｪ繧ｪ', Meiryo, '�ｭ�ｳ �ｰ繧ｴ繧ｷ繝�け' ,sans-serif;
  font-weight: 500;
  font-feature-settings: "palt";
  line-height: 1.7;
  letter-spacing: .08em;
  *font-size: small;
  *font: x-small;
  color: #535353;
  line-height: 2;
  -webkit-font-smoothing: antialiased;
}
*, *::after, *::before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
ul, ol { list-style: none; }
small { font-size: 86%; }
* { color: #535353; }
a, a:hover { text-decoration: none; }
a:hover { opacity: .7; }
p { font-size: 115%; }
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}
.reset {
  margin: 0;
  padding: 0;
}
.mincho {
  font-family: "貂ｸ譏取悃", YuMincho, "Yu Mincho" ,"繝偵Λ繧ｮ繝取�譛� ProN W3", "Hiragino Mincho ProN", "HG譏取悃E", "�ｭ�ｳ �ｰ譏取悃", "�ｭ�ｳ 譏取悃", serif;
}
.mgnBtm8 { margin-bottom: 8px !important; }
.mgnBtm10 { margin-bottom: 10px !important; }
.mgnBtm15 { margin-bottom: 15px !important; }
.mgnBtm16 { margin-bottom: 16px !important; }
.mgnBtm20 { margin-bottom: 20px !important; }
.mgnBtm24 { margin-bottom: 24px !important; }
.mgnBtm25 { margin-bottom: 25px !important; }
.mgnBtm30 { margin-bottom: 30px !important; }
.mgnBtm32 { margin-bottom: 32px !important; }
.mgnBtm40 { margin-bottom: 40px !important; }
.mgnBtm48 { margin-bottom: 48px !important; }
.mgnBtm50 { margin-bottom: 50px !important; }
.mgnBtm56 { margin-bottom: 56px !important; }
.mgnBtm60 { margin-bottom: 60px !important; }
.mgnBtm64 { margin-bottom: 64px !important; }
.mgnBtm72 { margin-bottom: 72px !important; }
.mgnBtm80 { margin-bottom: 80px !important; }
.mgnBtm120 { margin-bottom: 120px !important; }

.fltRgt { float: right; }
.fltLft { float: left; }
.tCtr { text-align: center; }
.tLft { text-align: left; }
.tRgt { text-align: right; }

.no-link { pointer-events: none; }
.bold { font-weight: bold; }
.underline,
.underline:hover { text-decoration: underline; }

/*-- ClearFix --*/
/* For modern browsers */
.clearfix::before,
.clearfix::after {
  content: '';
  display: table;
}
.clearfix::after { clear: both; }

/* For IE 6/7 (trigger hasLayout) */
.clearfix { zoom: 1; }

@media (min-width: 768px) {
  @-moz-document url-prefix() {
    * { font-feature-settings: "palt"; }
  }
  @media screen and (-webkit-min-device-pixel-ratio:0) {
    * { font-feature-settings: "palt"; }
  }
}

@media screen and (max-width: 1050px) {
  p { font-size: 100%; }
  .mgnBtm8 { margin-bottom: 4px !important; }
  .mgnBtm10 { margin-bottom: 5px !important; }
  .mgnBtm15 { margin-bottom: 7.5px !important; }
  .mgnBtm16 { margin-bottom: 8px !important; }
  .mgnBtm20 { margin-bottom: 10px !important; }
  .mgnBtm24 { margin-bottom: 12px !important; }
  .mgnBtm25 { margin-bottom: 12.5px !important; }
  .mgnBtm30 { margin-bottom: 15px !important; }
  .mgnBtm32 { margin-bottom: 16px !important; }
  .mgnBtm40 { margin-bottom: 20px !important; }
  .mgnBtm48 { margin-bottom: 24px !important; }
  .mgnBtm50 { margin-bottom: 25px !important; }
  .mgnBtm56 { margin-bottom: 28px !important; }
  .mgnBtm60 { margin-bottom: 30px !important; }
  .mgnBtm64 { margin-bottom: 32px !important; }
  .mgnBtm72 { margin-bottom: 36px !important; }
  .mgnBtm80 { margin-bottom: 40px !important; }
  .mgnBtm120 { margin-bottom: 60px !important; }
}


/* =====================================================================================

    COMMON

===================================================================================== */
.cWht { color: #fff; }
.cOrng { color: #ed6d00; }
.cGld { color: #dbb63a; }
.cDgry { color: #535353; }
.tablet,
.sp { display: none; }
.size-large,
.size-full {
  width: 100%;
  height: auto;
}

@media screen and (max-width: 1050px) {
  .tablet { display: block; }
}

@media screen and (max-width: 470px) {
  .size-medium {
    width: 100%;
    height: auto;
  }
}

@media screen and (max-width: 420px) {
  .sp { display: block !important; }
  .pc { display: none !important; }
}

/* layout
 **************************************** */
.container { overflow: hidden; }

/* --- inner --- */
.inner {
  width: 1080px;
  margin: 0 auto;
  position: relative;
}
.inner-sm { width: 950px; }

/* flex
**************************************** */

/* --- 繝悶Ο繝�け隕∫ｴ� --- */
.flex {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

/* --- 繧､繝ｳ繝ｩ繧､繝ｳ隕∫ｴ� --- */
.flex-inline {
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

/* --- 騾�髄縺� --- */
.flex-reverse {
  -webkit-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

/* --- 邵ｦ荳ｦ縺ｳ --- */
.flex-column {
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}

/* --- 豌ｴ蟷ｳ譁ｹ蜷第純縺� --- */
.flex-j-start {
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.flex-j-end {
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
.flex-j-ctr {
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.flex-j-between {
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.flex-j-around {
  -webkit-justify-content: space-around;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

/* --- 蝙ら峩譁ｹ蜷第純縺� --- */
.flex-a-start {
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.flex-a-end {
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.flex-a-ctr {
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.flex-a-baseline {
  -webkit-align-items: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}
.flex-a-stretch {
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

/* --- 蟄占ｦ∫ｴ�縺ｮ謚倥ｊ霑斐＠險ｭ螳� --- */
.flex-c-nowrap {
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.flex-c-wrap {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

/* --- 蟄占ｦ∫ｴ�縺ｮ隍�焚陦瑚ｨｭ螳� --- */
.flex-c-reverse {
  -webkit-flex-wrap: wrap-reverse;
  -ms-flex-wrap: wrap-reverse;
  flex-wrap: wrap-reverse;
}
.flex-c-start {
  -webkit-align-content: flex-start;
  -ms-flex-line-pack: start;
  align-content: flex-start;
}
.flex-c-start {
  -webkit-align-items: flex-start;
  -ms-flex-line-pack: start;
  align-content: flex-start;
}
.flex-c-end {
  -webkit-align-content: flex-end;
  -ms-flex-line-pack: end;
  align-content: flex-end;
}
.flex-c-ctr {
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
}
.flex-half &gt; * { width: 50%; }
  
  /* --- 縺悶▲縺上ｊflex繝ｬ繧､繧｢繧ｦ繝� --- */
  .flex-col2,
  .flex-col3,
  .flex-col4 {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .flex-col2 &gt; * {
    width: 48.5%;
    margin-right: 3%;
    margin-bottom: 3%;
  }
  .flex-col2 &gt; *:nth-child(even) { margin-right: 0; }
  .flex-col2 &gt; *:nth-last-child(-n+2) { margin-bottom: 0; }
  .flex-col3 &gt; * {
    width: 31.33%;
    margin-right: 3%;
    margin-bottom: 3%;
  }
  .flex-col3 &gt; *:nth-child(3n+3) { margin-right: 0; }
  .flex-col3 &gt; *:nth-last-child(-n+3) { margin-bottom: 0; }
  .flex-col4 &gt; * {
    width: 23.5%;
    margin-right: 2%;
    margin-bottom: 2%;
  }
  .flex-col4 &gt; *:nth-child(4n+4) { margin-right: 0; }

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

  /* --- 邵ｦ荳ｦ縺ｳ - sp --- */
  .flex-sp-block {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .flex-sp-reverse {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .flex-sp-block &gt; * {
    width: 100% !important;
    margin-right: 0;
  }
  .flex-sp-block &gt; *:not(:last-child),
  .flex-sp-reverse &gt; *:not(:first-child) {
    margin-bottom: 24px;
  }
}

/* slider
 **************************************** */
.slider {
  text-align: center;
  overflow: hidden;
  position: relative;
}
.slide,
.slide li { height: 540px; }
.slide {
  position: relative;
}
.slide li {
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center;
}
.slide li:nth-child(1) { background-image: url(../images/header/mainvisual01.jpg); }
.slide li:nth-child(2) { background-image: url(../images/header/mainvisual02.jpg); }
.slide li:nth-child(3) { background-image: url(../images/header/mainvisual03.jpg); }
.slide .catch {
  position: absolute;
  top: 30%;
  left: 60%;
  transform: translate(-50%,-50%);
  width: 880px;
  z-index: 1;
  font-size: 110%;
  text-align: right;
}
.slide .catch h2 {
  font-family: '隕句�繝溘ΦMA31', Midashi Min MA31;
  letter-spacing: .1em;
  font-weight: 500;
  line-height: 1.6;
}
.slide .catch.tRgt h2 { font-size: 220%; }
.slide .catch.tLft h2 { font-size: 250%; }
.slide .catch &gt; * {
  text-shadow: 
    #fff 2px 0px 24px,  #fff -2px 0px 24px,
    #fff 0px -2px 24px, #fff 0px 2px 24px,
    #fff 2px 2px 24px , #fff -2px 2px 24px,
    #fff 2px -2px 24px, #fff -2px -2px 24px,
    #fff 1px 2px 24px,  #fff -1px 2px 24px,
    #fff 1px -2px 24px, #fff -1px -2px 24px,
    #fff 2px 1px 24px,  #fff -2px 1px 24px,
    #fff 2px -1px 24px, #fff -2px -1px 24px;
}
.slide .catch.tLft h2 { color: #ed6d00; }
.slide .catch h2 strong {
  font-weight: 500;
  color: #ed6d00;
}
.slide .catch.tRgt h2 strong {
  font-size: 115%;
  margin-left: .25em;
  margin-right: .25em;
}
.slide .catch.tLft h2 strong { font-size: 120%; }
.slider .grdt {
  display: block;
  width: 1600px;
  height: 540px;
  position: absolute;
  top: 0;
  left: 50%;
  background: linear-gradient(to right, #fff, transparent 15%, transparent 85%, #fff);
  background: -webkit-linear-gradient(left, #fff, rgba(255, 255, 255, 0) 15%, rgba(255, 255, 255, 0) 85%, #fff);
  background: -moz-linear-gradient(left, #fff, rgba(255, 255, 255, 0) 15%, rgba(255, 255, 255, 0) 85%, #fff);
  z-index: 1;
  margin-left: -800px;
}
.slide-full.slick-slider,
.top_case .slick-track,
.top_case .slick-list {
  -webkit-transform: translate3d(0,0,0);
  -moz-transform: translate3d(0,0,0);
  -ms-transform: translate3d(0,0,0);
  -o-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0);
}
.slide-full.slick-slider {
  position: relative;
  display: none;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}
.slide-full.slick-slider.slick-initialized {
  display: block;
}
.slide-full .slick-track,
.slide-full .slick-list {
  height: auto;
}
.slide-full .slick-list {
  position: relative;
  display: block;
  margin: 0;
  padding: 0;
}
.slide-full .slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slide-full .slick-track::before,
.slide-full .slick-track::after {
  content: '';
  display: table;
}
.slide-full .slick-track::after {
  clear: both;
}
.slide-full .slick-arrow {
  top: 0;
  bottom: 0;
  margin: auto;
  width: 48px;
  height: 80px;
  background-color: rgba(0,0,0,.6);
}
.slide-full .slick-arrow:hover { background-color: rgba(0,0,0,.8); }
.slide-full .slick-prev { left: 16px !important; }
.slide-full .slick-next { right: 16px !important; }
.slide-full .slick-prev::before,
.slide-full .slick-next::before {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: '';
  width: 30px;
  height: 30px;
  -webkit-transform: rotate(55deg) skew(20deg);
  transform: rotate(55deg) skew(20deg);
  display: block;
}
.slide-full .slick-prev::before {
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  left: calc(100% / 3);
}
.slide-full .slick-next::before {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  right: calc(100% / 3);
}
.slide-full .slick-arrow:hover::before { opacity: 1; }
.slide-full li {
  position: relative;
  margin-left: 2px;
  margin-right: 2px;
  float: left;
}
.slide-full .post-link:focus { outline: none; }

@media screen and (max-width: 1050px) {
  .slider {
    text-align: center;
    margin: 65px 0 0;
  }
  .slider .grdt { display: none; }
  .slide { height: 378px; }
  .slide li {
    height: 378px;
    background-size: 1120px;
  }
}

@media screen and (max-width: 767px) {
  .slide-full li {
    margin-left: 0;
    margin-right: 0;
  }
  .slide-full .slick-arrow { height: 64px; }
  .slide-full .slick-prev::before,
  .slide-full .slick-next::before {
    width: 24px;
    height: 24px;
  }
  .slide .catch {
    top: 50%;
    left: 50%;
    text-align: center;
  }
}

@media screen and (max-width: 420px) {
  .slide { height: 112vw; }
  .slide li { 
    height: 112vw;
    background-size: 135vw;
  }
  .slide li:nth-child(1) { background-image: url(../images/header/mainvisual01_sp.jpg); }
  .slide li:nth-child(2) { background-image: url(../images/header/mainvisual02_sp.jpg); }
  .slide li:nth-child(3) {
    background-image: url(../images/header/mainvisual03_sp.jpg);
    background-size: 150vw;
    background-position: left -2.5vw top -2.5vw;
  }
  .slide .catch { font-size: 80%; }
  .slide .catch.tRgt { top: 25%; }
  .slide .catch p { font-size: 130%; }
}

@media screen and (max-width: 375px) {
  .slide .catch.tRgt h2 { font-size: 4.8vw; }
}

/* btn
 **************************************** */
.btn_wrapper {
  position: absolute;
  left: 50%;
  width: 1600px;
  height: 540px;
  margin-left: -800px;
}
.btn_to_company {
  position: absolute !important;
  bottom: 150px;
  right: 320px;
  width: 320px !important;
  z-index: 3;
  background-position: 25px !important;
  padding: 0 0 0 25px !important;
  font-size: 110% !important;
}
.btn_to_company.btn_to_sharehouse {
  width: 221px !important;
  right: auto;
  left: 325px;
  bottom: 175px;
}

@media screen and (max-width: 1050px) {
  .btn_wrapper {
    width: 1120px;
    height: 378px;
    margin-left: -560px;
  }
  .btn_to_company {
    width: 300px !important;
    font-size: 100% !important;
    bottom: 105px;
    right: 205px;
  }
  .btn_to_company.btn_to_sharehouse {
    width: 195px !important;
    right: auto;
    left: 207px;
    bottom: 116px;
  }
}

@media screen and (max-width: 420px) {
  .btn_wrapper {
    width: 100%;
    height: 100%;
    left: 0;
    margin-left: 0;
  }
  .btn_to_company,
  .btn_to_company.btn_to_sharehouse {
    width: 300px !important;
    bottom: 5vw;
    left: 0;
    right: 0;
    margin: auto;
  }
}


/* =====================================================================================

    HEADER

===================================================================================== */
header {
  background: #fff;
  height: 90px;
  position: relative;
  z-index: 9999;
}
header::before, header::after {
  content: '';
  width: 0;
  height: 0;
  position: absolute;
  border-style: solid;
  z-index: 2;
}
header::before {
  border-width: 0px 0 60px 50vw;
  border-color: transparent transparent transparent #fff;
  top: 90px;
  left: 0;
}
header::after {
  border-width: 0px 50vw 60px 0;
  border-color: transparent #fff transparent transparent;
  top: 90px;
  right: 0;
}
.header_inner {
  width: 1200px;
  margin: 0 auto;
}
.icon_tel {
  background: url(../images/header/icon_tel.png) no-repeat left;
  padding: 0 0 0 30px;
  font-size: 170%;
  font-weight: bold;
  display: block;
  line-height: 35px;
}
.btn_tel {
  background: #ed6d00;
  border-radius: 15px;
  display: block;
  line-height: 25px;
}
.breadcrumb { padding: 20px 0; }
.bread_arrow { padding: 0 10px; }
.sub_nav {
  display: none;
  position: absolute;
  top: 60px;
  left: 0;
  right: 0;
  min-width: 600px;
  margin: 0 auto;
  padding: 30px 0 0;
}
.sub_lst_wrapper {
  border-radius: 5px;
  padding: 25px 0 20px;
}
.sub_lst_company .sub_lst:first-child { margin-bottom: 16px; }
.sub_nav:hover { display: block; }
.sub_lst {
  width: calc(100% / 2.3);
  margin: 10px;
}
.sub_lst a::after { display: none; }
.sub_link { transition: none !important; }
.sub_link:hover { opacity: .7 !important; }
.sub_link:hover &gt; .sub_txt {
  opacity: 1;
  color: #ed6d00;
}
.sub_txt {
  display: block;
  margin-top: .5em;
  line-height: 1.4;
  font-weight: normal;
}
.s_sub_lst_wrapper {
  padding: 15px 0 0;
  font-weight: normal;
  font-size: 95%;
}
.s_sub_lst_wrapper.rgt {
  width: calc(200% + 20px);
  margin-left: calc(-100% - 20px);
}
.s_sub_lst_wrapper.lft {
  width: calc(200% + 20px);
  margin: 0 auto;
}
.sub_lst_company .s_sub_lst_wrapper {
  width: 100%;
  height: 145px;
  padding: 0;
}
.s_sub_lst { width: calc(100% / 3); }
.sub_lst_company .s_sub_lst { width: calc(100% / 2.3); }
.s_sub_link {
  transition: none !important;
  background: url(../images/common/icon_arrow_o.png) no-repeat left;
  background-size: 1em;
  padding: 0 0 0 25px;
}
.s_sub_link:hover { color: #ed6d00; }
.sub_img_wrapper {
  width: 100%;
  height: 160px;
  overflow: hidden;
}
.fx_header .sub_img_wrapper { height: 143.95px; }
.sub_img { width: 100%; }
.fx_header {
  position: fixed;
  z-index: 9999;
  width: 100%;
  background: #fff;
  border-bottom: 2px solid #ed6d00;
  height: 80px;
  top: -80px;
}
.fx_header .gnav,
.fx_header .gnav_lst_wrapper { height: 80px; }
.fx_header .fltLft {
  padding: 14px 0;
  position: relative;
  z-index: 1000;
}
.fx_header .fltLft img { width: 275px; }
.fx_header .fltRgt { display: none; }
.fx_header .gnav_lst_wrapper { float: right; }
.fx_header .gnav_lst {
  border: none !important;
  width: auto;
}
.fx_header.slideDown {
  animation-name: slideDown;
  animation-timing-function: ease-in;
  animation-iteration-count: 1;
  animation-delay: 0s;
  transform-origin: 50% 50% 0;
  animation-duration: .3s;
  -webkit-animation-name: slideDown;
  -webkit-animation-timing-function: ease-in;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-delay: 0s;
  -webkit-transform-origin: 50% 50% 0;
  -webkit-animation-duration: .3s;
  top: 0;
}
@keyframes slideDown {
  0% { top: -80px; }
  100% { top: 0; }
}
@-webkit-keyframes slideDown {
  0% { top: -80px; }
  100% { top: 0; }
}
.fx_header.slideUp {
  animation-name: slideUp;
  animation-timing-function: ease-in;
  animation-iteration-count: 1;
  animation-delay: 0s;
  transform-origin: 50% 50%  0;
  animation-duration: .3s;
  -webkit-animation-name: slideUp;
  -webkit-animation-timing-function: ease-in;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-delay: 0s;
  -webkit-transform-origin: 50% 50%  0;
  -webkit-animation-duration: .3s;
  top: -80px;
  position: fixed;
}
@keyframes slideUp {
  0% { top: 0; }
  100% { top: -80px; }
}
@-webkit-keyframes slideUp {
  0% { top: 0; }
  100% { top: -80px; }
}
.fx_header .sub_nav {
  top: 45px;
  padding: 40px 0 0;
}

@media screen and (max-width: 1215px) {
  .sub_img_wrapper { height: 155px; }
  .fx_header .sub_img_wrapper { height: 162.95px; }
}

@media screen and (max-width: 1050px) {
   header {
    height: 65px;
    position: fixed;
    top: 0;
    width: 100%;
  }
  header::before, header::after { display: none; }
  .logo img { width: 180px; }
  .header_inner {
    margin: 0 auto;
    height: 100%;
  }
}

/* gnav
 **************************************** */
.gnav_lst_wrapper {
  height: 90px;
  font-size: 115%;
  font-weight: bold;
  position: relative;
  z-index: 3;
}
.gnav_lst {
  text-align: center;
  white-space: nowrap; /*for safari*/
  margin: 0 8px;
}
.gnav_lst:hover &gt; .sub_nav { display: block; }
.gnav_lst:hover &gt; .has_sub::before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 7.5px 15px 7.5px;
  border-color: transparent transparent #f8f8f8 transparent;
  position: absolute;
  left: 0;
  right: 0;
  top: 45px;
  margin: auto;
}
.gnav a { display: block; }
.gnav a {
  position: relative;
  transition: .3s;
}
.gnav a:hover { opacity: 1; }
.gnav .gnav_lst a::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  content: '';
  width: 0;
  height: 5px;
  background-color: #ed6d00;
  transition: .3s;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.gnav .gnav_lst:hover &gt; a::after { width: 100%; }
#reform .gnav .gnav_lst:nth-child(2) a::after { width: 100%; }
#solar .gnav .gnav_lst:nth-child(2) a::after { width: 100%; }
#jyutaku .gnav .gnav_lst:nth-child(2) a::after { width: 100%; }
#kenzai .gnav .gnav_lst:nth-child(3) a::after { width: 100%; }
#outlet .gnav .gnav_lst:nth-child(4) a::after { width: 100%; }
#company .gnav .gnav_lst:nth-child(1) a::after,
#recruit .gnav .gnav_lst:nth-child(1) a::after { width: 100%; }
.gnav-btn,
.gnav-btn span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.gnav-btn {
  position: fixed;
  width: 24px;
  height: 13px;
  top: 40px;
  right: 40px;
  z-index: 3;
}
.gnav-btn span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #000;
}
.gnav-btn span:nth-of-type(1) { top: 0; }
.gnav-btn span:nth-of-type(2) { top: 6px; }
.gnav-btn span:nth-of-type(3) { bottom: 0; }
.gnav-btn.active span:nth-of-type(1) {
  -webkit-transform: translateY(6px) rotate(-35deg);
  transform: translateY(6px) rotate(-35deg);
}
.gnav-btn.active span:nth-of-type(2) { opacity: 0; }
.gnav-btn.active span:nth-of-type(3) {
  -webkit-transform: translateY(-6px) rotate(35deg);
  transform: translateY(-6px) rotate(35deg);
}

@media screen and (max-width: 1050px) {
  .gnav,
  .tel { display: none; }
  .sw {
    width: 40px;
    height: 30px;
    position: fixed;
    right: 10px;
    top: 15px;
    margin: auto;
    transition: all .4s;
    z-index: 5;
  }
  .hamburger {
    background: #ed6d00;
    width: 100%;
    height: 4px;
    display: inline-block;
    border-radius: 20px;
    position: absolute;
    top: 0;
    transition: all .4s;
  }
  .hamburger:nth-child(2) { top: 10px; }
  .hamburger:nth-child(3) { top: 20px; }
  .menu,
  .m_close {
    width: 100%;
    position: absolute;
    bottom: -15px;
    font-size: 80%;
    display: block;
  }
  .m_close { opacity: 0; }
  .sw.active {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
  .sw.active .hamburger { background: #fff; }
  .sw.active .hamburger:nth-of-type(1) {
    -webkit-transform: translateY(10px) rotate(-35deg);
    transform: translateY(10px) rotate(-35deg);
  }
  .sw.active .hamburger:nth-of-type(2) {
    -webkit-transform: translateY(0) rotate(35deg);
    transform: translateY(0) rotate(35deg);
  }
  .sw.active .hamburger:nth-of-type(3) { opacity: 0; }
  .sw.active .menu { opacity: 0; }
  .sw.active .m_close { opacity: 1; }
  .gnav_sp {
    width: 100%;
    height: 100%;
    display: none;
    position: fixed;
    z-index: 4;
    top: 0;
    left: 0;
    margin: auto;
    background: #ee8440;
  }
  .gnav_sp a { display: block; }
  .gnav_lst_wrapper_sp {
    width: 100%;
    height: 85%;
    position: fixed;
    top: 65px;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
  .gnav_lst_sp {
    width: 95%;
    margin: 0 auto;
    text-align: center;
    font-weight: bold;
    position: relative;
  }
  .gnav_lst_sp:last-child { margin-bottom: 64px; }
  .btn_arrow {
    position: absolute;
    width: 40px;
    height: 40px;
    top: 12px;
    right: 0;
    z-index: 1;
    transition: .4s;
  }
  .btn_arrow:hover { opacity: .7; }
  .btn_arrow.active {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  .btn_arrow::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 8px;
    height: 8px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .gnav_link_sp {
    padding: 20px 0;
    white-space: nowrap;
    background-size: 40px !important;
    display: block;
    font-size: 130%;
    background-repeat: no-repeat;
    background-position: 10px;
  }
  .gnav_lst_sp:nth-child(1) .gnav_link_sp { background-image: url(../images/header/icon_rnvt_sp.png); }
  .gnav_lst_sp:nth-child(2) .gnav_link_sp { background-image: url(../images/header/icon_solr_sp.png); }
  .gnav_lst_sp:nth-child(3) .gnav_link_sp { background-image: url(../images/header/icon_cstm_sp.png); }
  .gnav_lst_sp:nth-child(4) .gnav_link_sp { background-image: url(../images/header/icon_mtrl_sp.png); }
  .gnav_lst_sp:nth-child(5) .gnav_link_sp { background-image: url(../images/header/icon_campaign_sp.png); }
  .gnav_lst_sp:nth-child(6) .gnav_link_sp { background-image: url(../images/header/icon_share_sp.png); }
  .gnav_lst_sp:nth-child(7) .gnav_link_sp { background-image: url(../images/header/icon_rcrt_sp.png); }
  .gnav_lst_sp:nth-child(8) .gnav_link_sp { background-image: url(../images/header/icon_bldn_sp.png); }
  .sub_sp {
    display: none;
    padding: 15px 0;
    border: 1px dashed #fff;
    border-radius: 5px;
    background: rgba(255, 255, 255, .2);
  }
  .sub_img_wrapper {
    height: 20.5vw;
  }
  .sub_lst_sp {
    width: calc(100% / 2.3);
    margin: 0 10px;
  }
  .sub_sp_link .sub_txt {
    font-size: 100%;
  }
  .s_sub_lst_sp {
    width: 100%;
    font-size: 95%;
    position: relative;
    padding: 0 0 0 12px;
  }
  .s_sub_lst_sp::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 6px;
    height: 6px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .s_sub_sp { display: none; }
  .fx_header { display: none; }
  .breadcrumb { padding: 10px 0; }
}

@media screen and (max-width: 360px) {
  .sub_lst_sp { width: calc(100% / 2.35); }
  .reform .post-cat a {
    max-width: 65px;
    padding: 0 8px;
  }
  .asat_s_ttl::before { margin: .35em 15px .35em 0; }
  .asat_s_ttl::after { margin: .35em 0 .35em 15px; }
  .s_ttl::before,
  .s_ttl::after { margin: .35em 20px; }
  .asat_lst .lst_item {
    padding-top: 16.5vw;
    background-position: center 5.5vw, top center;
    background-repeat: no-repeat, no-repeat;
  }
  .asat02,
  .asat06 { top: 17vw; }
  .asat03,
  .asat05 { bottom: 17vw; }
  .asat02,
  .asat03 { right: -7vw; }
  .asat05,
  .asat06 { left: -7vw; }
  .group_lst { margin-bottom: 0 !important; }
}

@media screen and (max-width: 1215px) {
  .header_inner { width: 95%; }
  .gnav_lst_wrapper { width: 100% !important; }
  .inner { width: 95% !important; }
  .fx_header .gnav_lst_wrapper { width: 115% !important; }
  .logo img { width: 155px; }
  .icon_tel {
    padding: 0 0 0 23px;
    font-size: 122%;
    line-height: 29px;
    letter-spacing: .0em;
    background-size: 16%
  }
  .gnav_lst { margin: 0 7px; }
}

/* =====================================================================================

    TOP

===================================================================================== */


/* popup */
.popup {
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100%;
  background-color: rgba(237, 109, 0, .7);
  z-index: 9999;
}
.popup_wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  max-width: 720px;
  transform: translateX(-50%) translateY(-50%);
}
.popup_wrap.popup-noimg { max-width: 540px; }
.popup--box::before {
  content: '';
  position: absolute;
  top: -150px;
  left: -160px;
  display: block;
  width: 300px;
  height: 300px;
  background-image: url(../images/common/bg01.png);
  transform: rotate(45deg);
  z-index: 0;
  pointer-events: none;
}
.popup-noimg .popup--box::before { top: -310px; }
.popup--box {
  position: relative;
  overflow: hidden;
  background-color: #fff;
  padding: 32px;
  border-radius: 8px;
  box-shadow: rgba(0, 0, 0, .25) 2px 2px 8px 0px;
}
.popup .btn_cls_wrapper {
  top: 5px;
  right: 6px;
  background: #ee8440;
  width: 50px;
  height: 50px;
  margin: 0;
}
.popup h2 {
  font-size: 154%;
  line-height: 1.8;
}
.popup img {
  position: relative;
  max-width: 280px;
  max-height: 400px;
  width: auto;
  height: auto;
  margin-right: 32px;
}
.popup--text { flex: 1; }
.popup_close {
  position: absolute;
  right: -38px;
  top: -38px;
  display: block;
  width: 62px;
  height: 62px;
  background-color: #565656;
  border-radius: 40px;
  transition: all .2s;
  z-index: 5;
}
.popup_close:hover { background-color: #777; }
.popup_close::before縲{
  display: inline-block;
  position: relative;
  margin: 0 20px 0 7px;
  padding: 0;
  width: 4px;
  height: 20px;
  background: #000;
  transform: rotate(45deg);
}
.popup_close::before,
.popup_close::after {
  display: block;
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  width: 20px;
  height: 4px;
  margin: auto;
  background: #fff;
  transform: rotate(45deg);
}
.popup_close::after {
  width: 4px;
  height: 20px;
  margin-top: -8px;
}
.btn_mr.popup--btn { position: static; }
.popup--btn::before {
  position: absolute;
  content: '';
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 4;
  pointer-events: auto;
  background-color: rgba(0,0,0,0);
}

@media screen and (max-width: 767px) {
  .popup_wrap { width: 86%; }
  .popup--box {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 24px;
  }
  .popup h2 { font-size: 130%; }
  .popup img {
    margin-bottom: 16px;
    max-height: 320px;
    margin-left: auto;
    margin-right: auto;
  }
  .popup--box::before { top: -220px; }
  .popup_close {
    top: auto;
    right: 0;
    left: 0;
    bottom: -96px;
    margin-left: auto;
    margin-right: auto;
    background-color: #3d3d3d;
  }
}

/* bnrs */
.bnr_back { padding-top: 32px; }
.bnrs a, { display: block; }
#home .bnr_back { padding-bottom: 32px; }
#reform .bnr_back {
  padding-top: 0;
  padding-bottom: 32px;
}
.bnr_back .inner { text-align: center; }

@media screen and (max-width: 1050px) {
  .bnr_back img {
    width: 100%;
    height: auto;
  }
}

/* news */
.news {
  background-image: url(../images/common/bg01.png);
  height: 80px;
}
.news .inner { width: 1120px; }
.news_logo,
.newslist {
  float: left;
  height: 80px;
}
.news_logo {
  width: 165px;
  height: 80px;
  font-size: 120%;
}
.news_logo p {
  border: 2px dotted #fff;
  padding: .1em 1.5em;
  border-radius: 20px;
}
.newslist {
  width: 795px;
  margin: 0 20px 0 0;
  transition: .5s;
}
.newslist li {
  padding: 0 25px;
  height: 50px;
  margin: 15px 0;
  border-right: 2px dotted #fff;
}
.newslist h4 {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  font-weight: normal;
  font-size: 115%;
}
.newslist a {
  height: 50px;
  display: block;
}
.newslist .date {
  font-size: 90%;
}
.news_link {
  display: table;
  height: 80px;
}
.news_link a {
  display: table-cell;
  vertical-align: middle;
  background: url(../images/common/icon_arrow_w01.png) no-repeat left;
  padding: 0 0 0 2em;
  white-space: nowrap; /*for safari*/
}
.no-news {
  line-height: 50px;
}

@media screen and (max-width: 1050px) {
  .news .inner {
    padding: 1em 0;
  }
  .news,
  .news_logo,
  .newslist,
  .news_link {
    height: auto;
  }
  .news_logo,
  .newslist {
    float: none;
    margin: 0 auto;
  }
  .news_logo {
    font-size: 105%;
  }
  .newslist {
    width: 100%;
  }
  .newslist li {
    padding: 0;
    margin: 10px 0;
    height: auto;
    border-right: none;
  }
  .newslist a {
    height: auto;
  }
  .newslist .date {
    font-size: 85%;
  }
  .newslist h4 {
    font-size: 100%;
  }
  .news_link a {
      background: url(../images/common/icon_arrow_w01_sp.png) no-repeat left;
      background-size: 16px;
  }
  .no-news {
    line-height: inherit;
    text-align: center;
  }
}

/*top_case*/
.top_case *,
.top_blog *,
.top_case *::before,
.top_case *::after,
.top_blog *::before,
.top_blog *::after {
  transition: .2s ease-out;
}
.post-link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.top_case .post-eyecatch {
  position: relative;
  width: 100%;
  height: 16.25vw;
}
.top_case .post-eyecatch::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(83,83,83,.3);
}
.top_case .post-item:hover .post-eyecatch::before { background-color: rgba(83,83,83,0); }
.top_case .post-menu_wrapper {
  position: relative;
  position: absolute;
  top: .5em;
  right: .5em;
  z-index: 1;
  font-size: 90%;
}
.top_case .post-menu { margin-right: 3px; }
.top_case .post-menu:last-child { margin-right: 0; }
.top_case .post-menu:not(:nth-child(-n+2)) { display: none; }
.top_case .post-menu a {
  display: block;
  padding: 0 .5em;
  border: 1px solid #ffe9cd;
  color: #ffe9cd;
}
.top_case .post-menu a:hover {
  background-color: #ed6d00;
  border: 1px solid #ed6d00;
  color: #fff;
  opacity: 1;
}
.top_case .post-ttl {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: .25em .5em;
  background-color: rgba(83,83,83,.8);
  font-size: 120%;
  width: 100%;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  height: 4.5em;
}
.top_case .post-content {
  padding: .5em 1em;
}
.top_case .post-date,
.top_blog .post-date {
  font-size: 95%;
  margin-right: 1em;
}
.top_case .post-cat_wrapper,
.top_blog .post-cat_wrapper {
  position: relative;
  z-index: 2;
  overflow: hidden;
  max-height: 20px;
  margin-left: auto;
}
.top_case .post-cat,
.top_blog .post-cat {
  line-height: 20px;
  display: inline-block;
  margin-right: 3px;
}
.top_case .post-cat:last-child,
.top_blog .post-cat:last-child {
  margin-right: 0;
}
.top_case .post-cat a,
.top_blog .post-cat a {
  border-radius: 5px;
  background: #fcc;
  color: #fff;
  display: block;
  z-index: 1;
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding: 0 15px;
  max-width: 95px;
}
.top_case .post-txt,
.top_blog .post-txt {
  line-height: 1.7;
}
.top_case .btn_mr {
  width: 280px;
}

@media screen and (max-width: 1366px) {
  .top_case .post-eyecatch {
    height: 19.5vw;
  }
}

@media screen and (max-width: 1080px) {
  .top_case .post-eyecatch {
    height: 24.25vw;
  }
}

@media screen and (max-width: 767px) {
  .top_case,
  .top_blog {
    padding: 20px 0 !important;
  }
  .top_case .post-eyecatch {
    height: 80vw;
  }
  .top_case .post-ttl {
    font-size: 110%;
  }
}

/*top_blog*/
.top_blog .post-list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.top_blog .post-item {
  position: relative;
  width: 50%;
  padding: 1.5em 2em;
  border-radius: 5px;
}
.top_blog .post-item:hover {
  background-color: rgba(255,255,255,.5);
}
.top_blog .post-item::before,
.top_blog .post-item::after {
  content: '';
  position: absolute;
  background-size: 4px 4px;
}
.top_blog .post-item::before {
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 3em);
  height: 1px;
  background-image: linear-gradient(to right,#959595,#959595 20%,rgba(0,0,0,0) 20%,rgba(0,0,0,0) 100%);
}
.top_blog .post-item::after {
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 1px;
  height: calc(100% - 3em);
  background-image: linear-gradient(to bottom,#959595,#959595 20%,rgba(0,0,0,0) 20%,rgba(0,0,0,0) 100%);
}
.top_blog .post-item:nth-child(-n+2)::before,
.top_blog .post-item:nth-child(2n-1)::after {
  display: none;
}
.top_blog .post-ttl {
  position: relative;
  font-size: 120%;
  display: table;
}
.top_blog .post-ttl::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #ed6d00;
  width: 0;
  height: 1px;
}
.top_blog .post-item:hover .post-ttl::before {
  width: 100%;
}
.top_blog .post-detail {
  position: relative;
  display: table;
  margin-top: 1em;
  margin-left: auto;
  padding-right: 1.5em;
}
.top_blog .post-detail::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: .25em;
  margin: auto;
  border-top: 1px solid #ed6d00;
  border-right: 1px solid #ed6d00;
  margin: auto;
  width: .5em;
  height: .5em;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.top_blog .post-item:hover .post-detail::before {
  right: 0;
}
.top_blog .btn_mr {
  width: 240px;
}

@media screen and (max-width: 767px) {
  .top_blog .post-item {
    width: 100%;
    padding-left: 1em;
    padding-right: 1em;
  }
  .top_blog .post-item:nth-child(-n+2)::before {
    display: block;
  }
  .top_blog .post-item::after,
  .top_blog .post-item:first-child::before {
    display: none;
  }
}

/* top_nav */
.top_nav_inner {
  width: 1600px;
  margin: 0 auto;
  padding: 0 0 30px 0;
}
.top_nav * {
  transition: .2s ease-out;
}
.top_nav li {
    width: 516px;
    height: 368px;
    margin: 30px 0 0 0;
    position: relative;
}
.top_nav a {
  overflow: hidden;
}
.top_nav a:hover {
  opacity: 1;
}
.top_nav a {
  width: 516px;
  height: 368px;
  display: block;
}
.nav_ttl {
  padding: .4em 0;
  width: 300px;
  font-size: 190%;
  background: rgba(237, 109, 0, .7);
  position: absolute;
  right: 0;
  left: 0;
  top: 42.5%;
  margin: auto;
  z-index: 2;
  animation: hoverout .2s ease-out forwards;
  -webkit-animation: hoverout .2s ease-out forwards;
}
.top_nav a:hover .nav_ttl {
  animation: hoveron .2s ease-out forwards;
  -webkit-animation: hoveron .2s ease-out forwards;
}
@keyframes hoveron {
  0% { transform: translateY(0); }
  100% {
    transform: translateY(-70%);
    background: none;
  }
}
@-webkit-keyframes hoveron {
  0% { -webkit-transform: translateY(0); }
  100% {
    -webkit-transform: translateY(-70%);
    background: none;
  }
}
@keyframes hoverout {
  0% {
    transform: translateY(-70%);
    background: none;
  }
  100% { transform: translateY(0); }
}
@-webkit-keyframes hoverout {
  0% {
    -webkit-transform: translateY(-70%);
    background: none;
  }
  100% { -webkit-transform: translateY(0); }
}
.nav_ttl::after {
  content: '';
  display: block;
  margin: 0 auto;
  height: 2px;
  background: #fff;
  animation: slideleft .2s ease-out forwards;
  -webkit-animation: slideleft .2s ease-out forwards;
}
.top_nav a:hover .nav_ttl::after {
  animation: slideright .2s ease-out forwards;
  -webkit-animation: slideright .2s ease-out forwards;
}
@keyframes slideright {
  0% { width: 0; }
  100% { width: 80%; }
}
@-webkit-keyframes slideright {
  0% { width: 0; }
  100% { width: 80%; }
}
@keyframes slideleft {
  0% { width: 80%; }
  100% { width: 0; }
}
@-webkit-keyframes slideleft {
  0% { width: 80%; }
  100% { width: 0; }
}
.top_nav .fltr {
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(237, 109, 0, 0);
  z-index: 1;
}
.top_nav a:hover .fltr {
  background: rgba(237, 109, 0, .7);
}
.top_nav a:hover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
.top_nav .txt {
  position: absolute;
  width: 100%;
  top: 50%;
  right: 0;
  left: 0;
  margin: auto;
  font-size: 125%;
  opacity: 0;
  color: #fff;
  z-index: 2;
}
.top_nav a:hover .txt { opacity: 1; }

@media screen and (max-width: 1670px) {
  .top_nav_inner {
    width: 100%;
    padding-left: calc(100% / 75);
    padding-right: calc(100% / 75);
    padding-bottom: calc(100% / 75);
  }
  .top_nav li {
    width: calc(100% / 3.1) !important;
    height: auto !important;    
    font-size: .8vw;
    margin-top: 1.5vw !important;
  }
  .top_nav a,
  .top_nav img {
    width: 100% !important;
    height: auto !important;
  }
  .nav_ttl { width: 70% !important; }
}

@media screen and (max-width: 1050px) {
  .top_nav li {
    width: calc(100% / 2.05) !important;
    margin-top: 2vw !important;
    font-size: 1.2vw;
  }
  .nav_ttl { width: 80% !important; }
  .top_nav_inner {
    width: 100%;
    padding-left: calc(100% / 50);
    padding-right: calc(100% / 50);
    padding-bottom: calc(100% / 50);
  }

/* delete hover effect */
  .nav_ttl,
  .top_nav a:hover .nav_ttl,
  .nav_ttl::after,
  .top_nav a:hover .nav_ttl::after {
    animation: none;
    -webkit-animation: none;
  }
  .nav_ttl::after,
  .fltr,
  .top_nav .txt { display: none; }
  .top_nav a:hover img {
    -webkit-transform: none;
    -moz-transform: none;
    -o-transform: none;
    -ms-transform: none;
  }
}

@media screen and (max-width: 420px) {
  .top_nav li { font-size: 1.8vw; }
  .nav_ttl { top: 35%; }
  .nav01 .nav_ttl,
  .nav02 .nav_ttl { top: 26%; }
}

/* top_rnvt */
.top_rnvt { background: url(../images/common/bg02.png) center top; }
.top_rnvt .lft {
  height: 540px;
  position: relative;
}
.asat_ttl_wrapper {
  width: 185px;
  height: 125px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  padding: 65px 0;
  background: url(../images/common/logo02.png) no-repeat center top;
}
.asat_ttl { font-size: 160%; }
.asat_s_ttl::before,
.asat_s_ttl::after {
  content: '';
  height: 1px;
  width: 25px;
  background: #ed6d00;
  display: inline-block;
  margin: .35em 30px;
}
.asat_s_ttl::before { margin: .35em 30px .35em 0; }
.asat_s_ttl::after { margin: .35em 0 .35em 30px; }
.asat_lst {
  width: 100%;
  height: 100%;
  position: relative;
}
.asat_lst .lst_item {
  width: 165px;
  height: 163px;
  display: inline-block;
  position: absolute;
  text-align: center;
  padding-top: 100px;
  background-position: center 45px, top center;
  background-repeat: no-repeat, no-repeat;
}
.lst_item_link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}
.lst_item_txt { position: relative; }
.lst_item_txt::after {
  content: '';
  width: 0%;
  height: 2px;
  background: #fff;
  position: absolute;
  bottom: -2px;
  left: 50%;
  transition: .3s;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.lst_item.select .lst_item_txt::after { width: 100%; }
.asat01 {
  background: url(../images/icon_rnvt.png), url(../images/asat01.png);
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
}
.asat02 {
  background: url(../images/icon_mtrl.png), url(../images/asat02.png);
  top: 85px;
  right: 0;
}
.asat03 {
  background: url(../images/icon_solr.png), url(../images/asat03.png);
  bottom: 85px;
  right: 0;
}
.asat04 {
  background: url(../images/icon_bldn.png), url(../images/asat04.png);
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
}
.asat05 {
  background: url(../images/icon_cstm.png), url(../images/asat05.png);
  bottom: 85px;
  left: 0;
}
.asat06 {
  background: url(../images/icon_wood.png), url(../images/asat06.png);
  top: 85px;
}
.hide { display: none; }
.top_rnvt .rgt { padding: 0 0 0 50px; }
.rnvt_ttl {
  font-size: 120%;
  background: url(../images/common/icon_rnvt_b.png) no-repeat left;
  padding: 0 0 0 2em;
}
.ctch {
  font-weight: bold;
  font-size: 150%;
  line-height: 1.7em;
}
.btn_dtil {
  background-position: 25px;
  background-repeat: no-repeat;
  padding: 0 0 0 15px;
  display: block;
  width: 200px;
  margin: 0 auto;
  font-size: 115%;
  border-radius: 50px;
  line-height: 48px;
  transition: .2s;
}
.btn_dtil:hover { opacity: 1; }
.rgt_content,
.sub_lst_wrapper,
.has_sub::before,
.faq_lst_wrapper {
   animation: fadeIn .4s ease 0s 1 normal;
  -webkit-animation: fadeIn .4s ease 0s 1 normal;
}
@keyframes fadeIn {
  0% { opacity: 0; }
  100% { opacity: 1; }
}

@-webkit-keyframes fadeIn {
  0% { opacity: 0; }
  100% { opacity: 1; }
}
.rgt_content p { white-space: nowrap; /*for safari*/ }
.txt_inner { width: calc(100% / 2.5); }

@media screen and (max-width: 1050px) {
  .top_rnvt .lft {
    width: 500px;
    margin: 0 auto;
  }
  .top_rnvt .rgt { padding: 40px 0 0 0; }
  .rnvt_ttl { font-size: 110%; }
  .ctch { font-size: 125%; }
  .top_rnvt p.mgnBtm30,
  .top_rcrt p.mgnBtm30 { text-align: left; }
  .lst_item_txt::after { display: none; }
  .rnvt_ttl {
    display: inline-block;
    margin: 0 auto;
    white-space: nowrap; /*for safari*/
  }
  .rgt_content {
    display: block !important;
    width: calc(100% / 2.1);
    padding: 20px 20px 60px 20px;
    margin: 0 0 20px;
    position: relative;
    background: rgba(255, 255, 255, .7);
  }
  .rgt_content:nth-last-child(-n + 2) { margin: 0; }
  .txt_inner { width: 100%; }
  .txt_inner:first-child { padding-bottom: 20px; }
  .rgt_content p { white-space: normal; /*for safari*/ }
  .asat_ttl_wrapper {
    background: url(../images/common/logo02_sp.png) no-repeat center top;
    background-size: 56px;
  }
}

@media screen and (max-width: 420px) {
  .top_rnvt .lft,
  .asat_lst {
    width: 100%;
    height: 100vw;
  }
  .top_rnvt { height: auto; }
  .rnvt_ttl {
    background: url(../images/common/icon_rnvt_b_sp.png) no-repeat left;
    background-size: 22px;
  }
  .asat_lst .lst_item {
    height: 33vw;
    background-size: 9vw, 33vw;
    padding-top: 18vw;
    background-position: center 7vw, top center;
    background-repeat: no-repeat, no-repeat;
    line-height: 1.3em;
  }
  .lst_item_txt { font-size: 3vw; }
  .asat01 { background: url(../images/icon_rnvt_sp.png), url(../images/asat01.png); }
  .asat02 { background: url(../images/icon_mtrl_sp.png), url(../images/asat02.png); }
  .asat03 { background: url(../images/icon_solr_sp.png), url(../images/asat03.png); }
  .asat04 { background: url(../images/icon_bldn_sp.png), url(../images/asat04.png); }
  .asat05 { background: url(../images/icon_cstm_sp.png), url(../images/asat05.png); }
  .asat06 { background: url(../images/icon_wood_sp.png), url(../images/asat06.png); }
  .asat02,
  .asat06 { top: 15vw; }
  .asat03,
  .asat05 { bottom: 15vw; }
  .asat02,
  .asat03 { right: -5vw; }
  .asat05,
  .asat06 { left: -5vw; }
  .asat_ttl_wrapper {
    background-size: 10vw;
    height: 10vh;
    padding: 13vw 0;
  }
  .asat_ttl { font-size: 4vw; }
  .asat_s_ttl { font-size: 3vw; }
  .rgt_content { width: 100%; }
  .rgt_content:nth-last-child(-n + 2) { margin: 0 0 20px; }
  .rgt_content:last-child { margin: 0; }
  .rnvt_ttl_wrapper,
  .ctch { text-align: center; }
  .rgt_content { padding: 16px; }
}

/* top_rcrt */
.top_rnvt .btn_dtil {
  border: 1px solid #535353;
  background-image: url(../images/common/icon_arrow_b.png);
  margin: inherit;
}
.top_rcrt .btn_dtil {
  border: 1px solid #fff;
  background-image: url(../images/common/icon_arrow_w_s.png);
}
.top_rnvt .btn_dtil:hover {
  background: #535353;
  background-image: url(../images/common/icon_arrow_w_s.png);
  background-position: 25px;
  background-repeat: no-repeat;
  color: #fff;
}
.top_rcrt .btn_dtil:hover {
  background: #fff;
  background-image: url(../images/common/icon_arrow_b.png);
  background-position: 25px;
  background-repeat: no-repeat;
  color: #535353;
}
.top_rcrt {
  height: 432px;
  position: relative;
}
.top_rcrt .rgt {
  position: relative;
  z-index: 1;
}
.stf01 {
  position: absolute;
  bottom: 0;
  left: -110px;
}
.top_rcrt .grdt {
  display: block;
  width: 847px;
  height: 432px;
  position: absolute;
  top: 0;
  left: 0;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 80%, #fff);
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 80%, #fff);
  background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 80%, #fff);
  z-index: 1;
}
.rcrt_img {
  position: absolute;
  left: 0;
  top: 0;
  max-width: inherit;
}
.grdt_wht {
  width: 100%;
  height: 432px;
  background: #fff;
  position: absolute;
  top: 0;
  left: 1700px;
}

@media screen and (max-width: 1050px) {
  .top_rcrt {
    height: inherit;
    padding: 40px 0;
  }
  .top_rcrt .txt {
    width: 80%;
    margin: 0 auto;
  }
  .top_rcrt .rgt { display: none; }
  .stf01 {
    bottom: -40px;
    left: -40px;
    width: 150px;
  }
  .top_rnvt .btn_dtil {
    background-image: url(../images/common/icon_arrow_b_sp.png);
    background-position: 20px;
    background-repeat: no-repeat;
    padding: 0 0 0 10px;
    background-size: 13px;
    font-size: 100%;
    line-height: 38px;
    width: 180px;
    position: absolute;
    right: 10px;
    bottom: 10px;
  }
  .top_rcrt .btn_dtil {
    background-image: url(../images/common/icon_arrow_w_s_sp.png);
    background-position: 20px;
    background-repeat: no-repeat;
    padding: 0 0 0 10px;
    background-size: 13px;
    font-size: 100%;
    line-height: 38px;
    width: 180px;
  }
  .top_rnvt .btn_dtil:hover {
    background: #535353;
    background-image: url(../images/common/icon_arrow_w_s_sp.png);
    background-position: 20px;
    background-repeat: no-repeat;
    background-size: 13px;
    color: #fff;
  }
  .top_rcrt .btn_dtil:hover {
    background: #fff;
    background-image: url(../images/common/icon_arrow_b_sp.png);
    background-position: 20px;
    background-repeat: no-repeat;
    background-size: 13px;
    color: #535353;
  }
}

@media screen and (max-width: 420px) {
  .top_rcrt { height: inherit; }
  .stf01 {
    bottom: -40px;
    width: 120px;
  }
  .top_rnvt .btn_dtil {
    position: relative;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    margin-bottom: 15px;
  }
}

/* top_bnr */
.top_bnr { padding: 80px 0 0; }
.bnr_otlt {
  display: block;
  transition: none;
}

@media screen and (max-width: 1050px) {
  .top_bnr { padding: 40px 0 0; }
  .bnr_otlt img { width: 100%; }
}


/* =====================================================================================

    FOOTER

===================================================================================== */
.order_list_inner {
  font-size: 115%;
  height: 150px;
  overflow: auto;
}
.order_list_ttl {
  font-weight: normal;
  border-bottom: 1px solid;
  display: inline-block;
  margin: 0 auto;
  white-space: nowrap; /*for safari*/
}
.order_content {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.order_date {
  float: left;
  clear: left;
  width: 20%;
}
.no-order {
  line-height: 150px;
  text-align: center;
}
.fb-bnr_area {
  width: 1000px;
  margin: 0 auto;
}
.fb_area,
.bnr_area { width: 500px; }
.fb-page { overflow: hidden; }
.bnr_area li { padding: 7.5px; }
.bnr_area li:nth-child(odd) { padding-left: 29px; }
.bnr_area li:nth-child(-n+2) { padding-top: 0; }
.bnr_area li:nth-last-child(-n+2) { padding-bottom: 0; }
.bnr_area a { display: block; }
.formy_wrapper {
  background-image: url(../images/common/bg05.png);
  position: relative;
}
.formy_wrapper .s_ttl::before,
.formy_wrapper .s_ttl::after {
  background: #535353;
}
.fnav {
  background-image: url(../images/common/bg01.png);
  padding: 30px 0;
}
.fnav .lft { width: 60%; }
.fnav .lft dl { width: calc(100% / 3); }
.fnav .rgt {
  width: 30%;
  position: relative;
}
.fnav .rgt::before {
  content: '';
  background-size: 4px 4px;
  height: 100%;
  display: block;
  margin: 1px 0;
  background-image: linear-gradient(to bottom, #fff, #fff 20%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0) 100%);
  width: 1px;
  position: absolute;
  top: 0;
  left: 0;
}
.fnav a {
  color: #fff;
  display: block;
}
.fnav dt {
  font-weight: bold;
  padding: 5px;
}
.fnav dd { padding: 0 0 0 10px; }
.fnav dd a {
  position: relative;
  padding-left: 20px;
}
.fnav dd a::before {
  content: '';
  width: 7px;
  height: 7px;
  border: 0px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -4px;
}
.ft_tel {
  background: url(../images/footer/icon_tel_w.png) no-repeat left;
  font-size: 160%;
  font-weight: bold;
  padding: 0 0 0 35px;
  line-height: 25px;
  display: inline-block !important;
  white-space: nowrap; /*for safari*/
}
.ft_tel_s { font-size: 100%; }
.copyright {
  background: #e26911;
  padding: 15px 0;
}
.pbl {
  opacity: .5;
  display: block;
}

@media screen and (max-width: 1050px) {
  .order_list_inner { font-size: 100%; }
  .order_date { float: none; }
  .fb-bnr_area {
    width: 100%;
    display: block;
  }
  .bnr_area {
    width: 85%;
    margin: 0 auto;
  }
  .bnr_area li {
    float: none;
    padding: 5px;
    width: calc(100% / 3);
    text-align: center;
  }
  .bnr_area li:nth-child(odd),
  .bnr_area li:nth-child(-n+2),
  .bnr_area li:nth-last-child(-n+2) { padding: 5px; }
  .bnr_area img { width: 90%; }
  .fnav { padding: 15px 0; }
  .fnav .rgt::before { background: none; }
  .fnav .rgt img { width: 214px; }
}

@media screen and (max-width: 550px) {
  .fb_iframe_widget,
  .fb_iframe_widget span,
  .fb_iframe_widget iframe[style] { width: 100% !important; }
  .fnav .lft dl { width: 100%; }
}

@media screen and (max-width: 420px) {
  .bnr_area li { width: calc(100% / 2); }
  .bnr_area img { width: 100%; }
  .fnav,
  .copyright { padding: 15px 0; }
  .fnav dt { line-height: 2.5em; } 
  .ft_tel {
    background: url(../images/footer/icon_tel_w_sp.png) no-repeat left;
    background-size: 23px;
  }
}

/* formy
 **************************************** */
#formyForm {
  width: 800px;
  margin: 0 auto;
  background: #e7e7e7;
  padding: 60px 20px;
}
#formyForm table { width: 100%; }
#formyForm th,
#formyForm td {
  padding: 10px 20px;
  vertical-align: middle;
}
#formyForm th {
  font-weight: normal;
  white-space: nowrap;
  text-align: left;
  width: 34%;
}
#formyForm table input[type="text"],
#formyForm table input[type="password"],
#formyForm table textarea {
  width: 100%;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  vertical-align: bottom;
}
#formyForm table textarea {
  height: 150px;
}
#formyForm table input[type="text"],
#formyForm table input[type="password"],
#formyForm select,
#formyForm textarea {
  margin: 0;
  padding: 5px 15px;
  border: 1px solid #ccc;
  font: inherit;
  font-size: 100%;
}
#formyForm ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
#formyForm input:hover { opacity: .7; }
#formyForm textarea:hover { opacity: .7; }
#formyForm .parsley-validated { background-color: #eee; }
#formyForm .parsley-error { background-color: #fee; }
#formyForm .parsley-success { background-color: #fff; }
.help_text {
  font-size: 85%;
  color: #999;
}
.hidden_help { display: none; }
.formy_privacy div {
  overflow-y: scroll;
  height: 140px;
  border: solid 1px #ccc;
  font-size: 85%;
  padding: 10px;
}
.requiredIcon {
  background: #f55;
  color: #fff;
  margin: 0 0 0 1em;
  font-size: 70%;
  padding: 2px 5px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  float: right;
}
#formy_btn {
  padding: 30px 0 0;
  text-align: center;
}
#formy_btn input {
  border: none;
  cursor: pointer;
  border-radius: 5px;
  text-align: center;
  color: #fff;
}
.formy_confirm {
  width: 324px;
  height: 59px;
  background: #ee8440;
}
.formy_submit_disabled {
  width: 324px;
  height: 59px;
  background: #535353;
}
#formy_btn .formy_submit_disabled:hover {
  opacity: 1;
  cursor: default;
}
.autoConfirmBack {
  width: 134px;
  height: 59px;
  background: #535353;
}
.formy_send {
  width: 324px;
  height: 59px;
  background: #ee8440;
}
#total_required {
  background: rgba(240,50,50,.8);
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  padding: 20px;
  color: #fff;
  position: fixed;
  top: 100px;
  right: 20px;
  display: none;
  z-index: 9999;
}
#telSp {
  margin: 0px auto;
  width: 800px;
  border-bottom: 1px solid #DDDDDD;
  padding-bottom: 30px;
  color: #09c;
  text-align: center;
}
.contactBtn a {
  display: inline-block;
  margin: 0 auto;
  padding: 15px 80px;
  text-decoration: none;
  border: 2px solid #28a7e1;
}
.confirm-message { text-align: center; }

@media screen and (max-width: 1050px) {
  #formyForm { width: 100%; }
  #total_required {
    top: 90px;
    position: inherit;
    z-index: none;
    padding: 10px;
    margin: 30px 0 0;
    text-align: center;
  }
}

@media screen and (max-width: 420px) {
  #formyForm th,
  #formyForm td {
    width: 100%;
    display: block;
    padding: 5px 0;
  }
  .confirm-message { text-align: left; }
  .autoConfirmBack { margin: 0 0 10px; }
  .formy_submit_disabled,
  .formy_confirm,
  .formy_send {
    width: 100%;
  }
}


/* =====================================================================================

    PAGE

===================================================================================== */
.title_wrapper {
  position: relative;
  height: 200px;
  background-color: #ddd;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center top;
}
.title_wrapper .ttl {
  font-size: 250%;
  text-align: center;
  display: block;
  text-shadow: 0 0 5px #333; 
}
.ttl {
  font-size: 230%;
  font-weight: normal;
  line-height: 1.4em;
}
.s_ttl::before,
.s_ttl::after {
  content: '';
  height: 1px;
  width: 25px;
  background: #fff;
  display: inline-block;
  margin: .35em 40px;
}
.top_case .s_ttl::before,
.top_case .s_ttl::after,
.top_blog .s_ttl::before,
.top_blog .s_ttl::after { background-color: #535353; }
.title {
  position: relative;
  display: table;
  width: 100%;
  height: 100%;
}
.title .inner {
  display: table-cell;
  vertical-align: middle;
}
.content {
  padding: 32px 0;
  position: relative;
}
.outlet .content {
  padding: 60px 0;
}
.s_content {
  padding: 55px 0;
  position: relative;
}
.hdline {
  padding: 35px 0 55px;
  font-size: 280%;
  text-align: center;
  background: #fff;
  position: relative;
}
.hdline::after {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 25px 25px 0 25px;
  border-color: #fff transparent transparent transparent;
  left: 0;
  right: 0;
  bottom: -25px;
  margin: auto;
  z-index: 1;
}
.hdline_ttl {
  display: inline-block;
  position: relative;
  white-space: nowrap; /*for safari*/
}
.hdline_ttl::after {
  content: '';
  background-size: 4px 4px;
  height: 1px;
  display: block;
  margin: 1px 0;
  background-image: linear-gradient(to right, #959595, #959595 20%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0) 100%);
  width: 100%;
  position: absolute;
  top: 2em;
}
.hdline small { font-size: 80%; }
.btn_mr {
  background: url(../images/common/icon_arrow_w02.png), #ee8440;
  background-position: 40px;
  background-repeat: no-repeat;
  padding: 0 0 0 20px;
  display: block;
  width: 200px;
  margin: 0 auto;
  font-size: 115%;
  border-radius: 50px;
  line-height: 48px;
  position: relative;
}
.flex_img {
  display: block;
  margin: 0 auto;
}
#blog .title_wrapper { background-image: url(../images/blog/blog_ttl_bg.jpg); }
#archive .title_wrapper { background-image: url(../images/news/news_ttl_bg.jpg); }
#reform .title_wrapper { background-image: url(../images/reform/reform_ttl_bg.jpg); }
#case .title_wrapper { background-image: url(../images/case/case_ttl_bg.jpg); }
#solar .title_wrapper { background-image: url(../images/solar/solar_ttl_bg.jpg); }
#jyutaku .title_wrapper { background-image: url(../images/jyutaku/jyutaku_ttl_bg.jpg); }
#kenzai .title_wrapper { background-image: url(../images/kenzai/kenzai_ttl_bg.jpg); }
#outlet .title_wrapper {
  background-image: url(../images/outlet/pt_campaign.jpg);
  background-size: unset;
  background-repeat: repeat;
  height: 350px;
  overflow: hidden;
}
#outlet .title_wrapper::before,
.outlet-ttl {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 2;
}
.outlet-ttl { top: 54px; }
#outlet .title_wrapper::before {
  content: '';
  background-image: url(../images/outlet/outlet_ttl_bg_2_item.png);
  display: inline-block;
  width: 1123px;
  height: 442px;
  left: -35%;
}
#outlet .title_wrapper::after {
  content: '';
  position: absolute;
  right: 0;
  top: 0;
  height: auto;
  display: inline-block;
  width: 40%;
  height: 100%;
  background-image: url(../images/outlet/outlet_ttl_bg_2.png);
  background-position: left;
  background-size: cover;
}
#recruit .title_wrapper { background-image: url(../images/recruit/recruit_ttl_bg.jpg); }
#recruit .title_wrapper-recruit {
  position: relative;
  height: 350px;
}
#recruit .title_wrapper-recruit::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(83,83,83,.2);
  z-index: 9998;
}
#recruit .title_lst,
#recruit .title_lst .slick-list,
#recruit .title_lst .slick-track,
#recruit .title_lst .slick-slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
#recruit .title_lst .slick-slide { display: inline-block; }
#recruit .title_lst img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: 1920px;
}
#recruit .title_wrapper-recruit .title { z-index: 9998; }
#recruit .title_wrapper-recruit h2 {
  position: relative;
  font-weight: bold;
  letter-spacing: .1em;
}
#recruit .title_wrapper-recruit h2::after {
  content: '- recruit -';
  display: block;
  font-weight: 500;
  letter-spacing: .1em;
  font-size: 60%;
}
#requirement .title_wrapper { background-image: url(../images/requirement/requirement_ttl_bg.jpg); }
#company .title_wrapper { background-image: url(../images/company/company_ttl_bg.jpg); }
#news .title_wrapper { background-image: url(../images/news/news_ttl_bg.jpg); }
#blog .title_wrapper, #archive .title_wrapper { background-image: url(../images/blog/blog_ttl_bg.jpg); }
#group .title_wrapper { background-image: url(../images/company/group/group_ttl_bg.jpg); }
.content01 {
  background-image: url(../images/reform/bg_lifestyle.jpg);
  background-size: contain;
  background-repeat: repeat-x;
  background-position: center top;
}
.bg_blue {
  background-image: url(../images/reform/bg_point.jpg);
}
.bg_wht {
  background: #fff;
}
.bg_gray {
  background: #f8f8f8;
}
.bg_lorng {
  background: #fff0dd;
}
.bg_orng {
  background: #ffe9cd;
}
.bg_grn {
  background: url(../images/common/bg04.png);
}
.brdr_dashed::after {
  content: '';
  display: block;
  position: absolute;
  border: 1px dashed #eee;
  top: 4px;
  bottom: 4px;
  left: 4px;
  right: 4px;
  pointer-events: none;
}
.wdt995 {
  width: 995px;
  margin: 0 auto;
}
.wdt750 {
  width: 750px;
  margin: 0 auto;
}

@media screen and (max-width: 1050px) {
  .title_wrapper {
    margin-top: 65px;
    height: 150px;
  }
  #outlet .title_wrapper,
  #recruit .title_wrapper-recruit {
    height: 198px;
  }
  .outlet-ttl {
    width: 93%;
    max-width: 790px;
    top: 35px;
  }
  #outlet .title_wrapper::before {
    width: 80%;
    height: 250px;
    left: -20%;
    background-size: cover;
    background-position: right;
    background-repeat: no-repeat;
  }
  #outlet .title_wrapper::after {
    width: 53%;
  }
  .title_wrapper .ttl {
    font-size: 200%;
  }
  #recruit .title_lst img {
    width: 150%;
    height: auto;
  }
  .hdline {
    font-size: 185%;
    padding: 25px 0 45px;
  }
  .ttl {
    font-size: 180%;
  }
  .btn_mr {
    background: url(../images/common/icon_arrow_w02_sp.png), #ee8440;
    background-position: 30px;
    background-repeat: no-repeat;
    padding: 0 0 0 10px;
    background-size: 13px;
    font-size: 100%;
    line-height: 38px;
    width: 180px;
  }
  .content {
    padding: 40px 0;
  }
  .s_content {
    padding: 30px 0;
  }
  .wdt995,
  .wdt750 {
    width: 100%;
  }
}

@media screen and (max-width: 420px) {
  .title_wrapper .ttl,
  .hdline {
    font-size: 5vw;
  }
  .hdline_ttl::before {
    content: '';
    background-size: 4px 4px;
    height: 1px;
    display: block;
    margin: 1px 0;
    background-image: linear-gradient(to right, #959595, #959595 20%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0) 100%);
    width: 100%;
    position: absolute;
    bottom: 2em;
  }
}


/* =====================================================================================

    REFORM

===================================================================================== */
.img_lft,
.img_rgt,
.txt_lft,
.txt_rgt {
  width: 50%;
  height: 480px;
  position: relative;
}
.txt_rgt,
.txt_lft {
  border: 20px solid #daecff;
  padding: 20px;
}
.txt_lft {
  margin-top: -60px;
}
.txt_rgt .btn_mr {
  width: 230px;
  background-position: 30px;
}
.point_ttl {
  margin-top: 50px;
  font-size: 270%;
}
.point_ttl small {
  font-size: 75%;
}
.txt_lft::before,
.txt_rgt::before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 30px 0 0 30px;
  border-color: transparent transparent transparent #daecff;
  position: absolute;
  bottom: 0;
  left: 0;
}
.txt_lft::after,
.txt_rgt::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 30px 30px;
  border-color: transparent transparent #daecff transparent;
  position: absolute;
  bottom: 0;
  right: 0;
}
.edge::before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 30px 30px 0 0;
  border-color: #daecff transparent transparent transparent;
  position: absolute;
  top: 0;
  left: 0;
}
.edge::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 30px 30px 0;
  border-color: transparent #daecff transparent transparent;
  position: absolute;
  top: 0;
  right: 0;
}
.img_lft,
.img_rgt {
  background-size: cover !important;
}
.img_lft {
  background: url(../images/reform/img_point01.jpg) no-repeat left top;
  margin-top: -60px;
}
.img_rgt {
  background: url(../images/reform/img_point02.jpg) no-repeat left top;
}
.stf02 {
  position: absolute;
  bottom: -48px;
  right: -52px;
  z-index: 1;
}
.point {
  position: absolute;
  top: -20px;
  left: -20px;
}
.premiumplan {
  background-image: url(../images/reform/bg_pp.jpg);
  background-position: center;
  background-size: cover;
}
.pp_ttl {
  font-size: 230%;
  font-weight: normal;
}
.pp_s_ttl {
  font-size: 230%;
  font-style: italic;
  position: relative;
}
.pp_s_ttl::before,
.pp_s_ttl::after {
  content: '';
  position: absolute;
  width: 115px;
  height: 1px;
  background: #898989;
  top: 1em;
}
.pp_s_ttl::before {
  right: 280px;
}
.pp_s_ttl::after {
  left: 280px;
}
.pp_content {
  width: 750px;
  margin: 0 auto;
}
.point_c {
  padding: 0 15px 0 0;
}
.point_c_ttl {
  font-size: 185%;
  line-height: 1.5em;
}
.point_ttl_wrapper {
  display: table;
}
.point_c,
.point_c_ttl {
  display: table-cell;
  vertical-align: middle;
  white-space: nowrap; /*for safari*/
}
.point_cng,
.point_pls,
.point_hlf {
  background: #fff;
}
.point_cng,
.point_pls {
  width: 270px;
  height: 467px;
  padding: 100px 0;
  position: relative;
}
.point_cng_sp,
.point_pls_sp {
  display: none;
}
.point_cng {
  margin-right: 140px;
}
.point_pls {
  margin-left: 140px;
}
.point_cng .point_ttl_wrapper,
.point_pls .point_ttl_wrapper {
  margin: 0 auto;
  margin-left: -35px;
  margin-right: -35px;
  position: relative;
  z-index: 1;
}
.point_cng .point_content,
.point_pls .point_content {
  margin-left: -20px;
  margin-right: -20px;
  position: relative;
  z-index: 1;
}
.point_cng::before,
.point_pls::before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 233.5px 140px 233.5px 0;
  border-color: transparent #fff transparent transparent;
  position: absolute;
  top: 0;
  left: -140px;
}
.point_cng::after,
.point_pls::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 233.5px 0 233.5px 140px;
  border-color: transparent transparent transparent #fff;
  position: absolute;
  top: 0;
  right: -140px;
}
.point_hlf {
  padding: 40px;
}
.point_hlf .lft {
  width: 43%;
}
.point_hlf .rgt {
  width: 55%;
}
.table_cst,
.table_prfl {
  font-size: 115%;
  border: 1px solid #b8c0cf;
}
.table_cst {
  width: 100%;
}
.table_cst th,
.table_cst td,
.table_prfl dt,
.table_prfl dd {
  padding: 10px;
  border: 1px solid #b8c0cf;
  vertical-align: middle;
}
.bgOrng {
  background: #ee8440;
  font-weight: normal;
}
.bgGry {
  background: #eee;
  font-weight: bold;
}
.brdr_ttl {
  font-size: 250%;
  position: relative;
  width: 995px;
  margin: 0 auto;
}
.brdr_ttl::after {
  content: '';
  background-size: 4px 4px;
  height: 1px;
  display: block;
  margin: 1px 0;
  background-image: linear-gradient(to right, #959595, #959595 20%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0) 100%);
  width: 100%;
  position: absolute;
  bottom: 0;
}
.lineup_inner {
  display: table;
}
.lineup_img,
.lineup_content {
  display: table-cell;
  vertical-align: middle;
  margin: 0 auto;
}
.lineup_content {
  width: 58%;
}
.whatslixil {
  background: #ffe9cd;
  padding: 25px;
}
.qstn {
  background: url(../images/reform/icon_qstn.png) no-repeat left;
  font-size: 140%;
  padding: 0 0 0 42px;
}
.flow {
  background: url(../images/reform/bg_flow.jpg) center top;
  background-size: cover;
}
.flow_top,
.flow_btm {
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
.flow_top {
  width: 740px;
}
.flow_btm {
  width: 555px;
}
.flow_top::before,
.flow_top::after,
.flow_btm::before {
  content: '';
  background-size: 8px 8px;
  height: 2px;
  display: block;
  margin: 0;
  background-image: linear-gradient(to right, #7ecef4, #7ecef4 20%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0) 100%);
  width: 100%;
  position: absolute;
  z-index: -1;
}
.flow_btm::after,
.flow_brdr {
  content: '';
  background-size: 8px 8px;
  height: 98px;
  display: block;
  margin: 0;
  background-image: linear-gradient(to bottom, #7ecef4, #7ecef4 20%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0) 100%);
  width: 2px;
  position: absolute;
  z-index: -1;
}
.flow_top::before {
  top: 80px;
  left: 25px;
}
.flow_top::after {
  bottom: -28px;
  left: 25px;
}
.flow_btm::before {
  top: 81px;
  right: 67.5px;
}
.flow_btm::after {
  top: -22.5px;
  left: -67.5px;
}
#reform .flow_top::after {
  width: calc(100% + 50px);
  left: -23px;
}
#reform .flow_btm {
  width: 740px;
}
#reform .flow_btm::before {
  right: 23px;
}
#reform .flow_btm::after {
  left: -23px;
}
.flow_brdr {
  top: 87.5px;
  right: -23px;
}
.flow_item {
  background: linear-gradient(to bottom, #ee8440 50px, #fff 50px,#fff);
  width: 165px;
  height: 165px;
  border-radius: 100px;
  position: relative;
  box-shadow: 0px 4px 4px rgba(208, 224, 242, .7);
}
.item_top {
  position: relative;
  width: 165px;
  height: 50px;
}
.flow_num {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
}
.item_btm {
  width: 165px;
  height: 105px;
  font-size: 115%;
  line-height: 1.5em;
  display: table;
}
.item_content {
  display: table-cell;
  vertical-align: middle;
}
.tel_wrapper {
  background: url(../images/common/icon_tel_l.png), #fff;
  background-repeat: no-repeat;
  background-position: left;
  display: table;
  width: 765px;
  height: 81px;
  margin: 40px auto 0;
  border-radius: 100px;
  box-shadow: 0px 4px 4px rgba(208, 224, 242, .7);
}
.tel_wrapper .rgt,
.tel_wrapper .lft {
  display: table-cell;
  vertical-align: middle;
}
.tel_content {
  line-height: 1.7em;
  padding: 0 0 0 120px;
}
.tel_num {
  display: block;
  background: url(../images/common/icon_ftel.png) no-repeat left;
  padding: 0 30px 0 60px;
  font-size: 250%;
  font-weight: bold;
}

@media screen and (max-width: 1155px) {
  .point_cng {
    margin-right: 440px;
  }
  .point_pls {
    margin-left: 440px;
    margin-top: -233.5px;
  }
}

@media screen and (max-width: 1050px) {
  .content01 {
    padding: 40px 0;
  }
  .img_lft,
  .img_rgt,
  .txt_lft,
  .txt_rgt {
    width: 100%;
    height: 420px;
  }
  .img_lft {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: 0;
    -webkit-order: 0;
    order: 0;
    margin-top: -30px;
  }
  .img_rgt {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
  }
  .txt_lft {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 3;
    -webkit-order: 3;
    order: 3;
    margin-top: 0;
  }
  .txt_rgt {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
  }
  .txt_rgt p,
  .txt_lft p { margin-bottom: 20px !important; }
  .point_wrapper01 { width: 420px !important; }
  .point_ttl {
    margin-top: 10px;
    font-size: 180%;
    position: relative;
    z-index: 1;
  }
  .point { width: 70%; }
  .premiumplan { padding: 25px 0; }
  .pp_content { width: 85%; }
  .pp_s_ttl { font-size: 4vw; }
  .pp_ttl { font-size: 160%; }
  .pp_s_ttl::before,
  .pp_s_ttl::after {
    content: '';
    position: absolute;
    width: 10vw;
    height: 1px;
    background: #898989;
    top: 1em;
  }
  .pp_s_ttl::before { right: 20vw; }
  .pp_s_ttl::after { left: 20vw; }
  .point_cng,
  .point_pls {
    width: 216px;
    height: 374px;
    padding: 50px 0;
  }
  .point_cng::before,
  .point_pls::before {
    border-width: 187px 112px 187px 0;
    left: -112px;
  }
  .point_cng::after,
  .point_pls::after {
    border-width: 187px 0 187px 112px;
    right: -112px;
  }
  .point_cng { margin-right: 352px; }
  .point_pls {
    margin-left: 352px;
    margin-top: -187px;
  }
  .point_c_ttl { font-size: 145%; }
  .point_c img { width: 70px; }
  .point_hlf { display: block; }
  .point_smlt .lft { margin-bottom: 20px; }
  .table_cst,
  .table_prfl {
    font-size: 100%;
  }
  .brdr_ttl {
    width: 100%;
  }
  .brdr_ttl {
    font-size: 160%;
  }
  .lineup_img {
    width: 40%;
    padding: 0 30px 0 0;
  }
  .lineup_img img {
    width: 100%;
  }
  .bnr_lixil_reform {
    width: 160px;
  }
  .qstn {
    font-size: 125%;
  }
  .flow_top,
  .flow_btm {
    width: 80%;
    margin-bottom: 5vw !important;
  }
  #reform .flow_btm {
    width: 80%;
  }
  .flow_btm {
    width: 60%;
  }
  .flow_item {
    width: 16vw;
    height: 16vw;
    background: linear-gradient(to bottom, #ee8440 30%, #fff 30%,#fff);
  }
  .item_top,
  .item_btm {
    width: 16vw;
  }
  .item_top {
    height: 30%;
  }
  .item_btm {
    height: 65%;
    font-size: 100%;
  }
  .flow_top::before,
  .flow_top::after,
  .flow_btm::before,
  .flow_btm::after,
  .flow_brdr {
    display: none !important;
  }
  .tel_num {
    background: url(../images/common/icon_ftel_sp.png) no-repeat left;
    background-size: 48px;
  }
}

@media screen and (max-width: 890px) {
  .point_top {
    display: block;
    margin: 0 auto;
  }
  .point_cng { margin-bottom: 20px !important; }
  .point_cng,
  .point_pls { margin: 0 auto; }
  .lineup_img,
  .lineup_content { display: block; }
  .lineup_img {
    margin-bottom: 20px;
    padding: 0;
  }
  .lineup_content { width: 100%; }
  .item_btm { font-size: 2vw; }
  .flow_top,
  #reform .flow_btm { width: 100%; }
  .flow_btm { width: 75%; }
  .flow_item,
  .item_top,
  .item_btm { width: 21vw; }
  .flow_item  { height: 21vw; }
  .tel_wrapper { width: 100%; }
  .tel_wrapper .rgt { width: 45%; }
  .tel_num {
    background-size: 5vw;
    padding-left: 6vw;
    font-size: 4vw;
  }
  .tel_num_img {
    width: 80%;
    vertical-align: middle;
  }
  .pp_content { width: 100%; }
}

@media screen and (max-width: 420px) {
  .point_wrapper01,
  #reform .img_reform { width: 100% !important; }
  .img_lft,
  .img_rgt {
    background-size: 100% !important;
    height: 70vw;
  }
  .txt_lft,
  .txt_rgt {
    height: inherit;
    border: 10px solid #daecff
  } 
  .txt_lft::before,
  .txt_rgt::before {
    border-width: 20px 0 0 20px;
  }
  .txt_lft::after,
  .txt_rgt::after {
    border-width: 0 0 20px 20px;
  }
  .edge::before {
    border-width: 20px 20px 0 0;
  }
  .edge::after {
    border-width: 0 20px 20px 0;
  }
  .stf02 {
    width: 50%;
    bottom: -9.1vw;
    right: 60vw;
  }
  #reform .content01 { padding: 40px 0 0; }
  .point_hlf,
  .point_smlt { padding: 15px; }
  .lineup_img { width: 60%; }
  .flow_item,
  .item_top,
  .item_btm { width: 22vw; }
  .item_top { font-size: 115%; }
  .flow_item  { height: 22vw; }
  .tel_wrapper .rgt,
  .tel_wrapper .lft {
    display: block;
    padding-left: 70px;
    width: 100%;
  }
  .tel_wrapper {
    border-radius: 10px;
    background-size: 50px;
    background-position: 10px 10px;
    height: inherit;
    padding: 10px;
  }
  .tel_content { padding: 0; }
  .tel_num {
    background-size: 8vw;
    padding-left: 9vw;
    font-size: 5vw;
  }
  .point_top { margin-bottom: 20px !important; }
  .point_c img { width: 50px; }
  .table_cst th,
  .table_cst td,
  .table_prfl dt,
  .table_prfl dd { padding: 5px; }
  .point {
    width: 60%;
    top: -10px;
    left: -10px;
  }
}


/* =====================================================================================

    SOLAR

===================================================================================== */
.cmpn_lst_wrapper {
  width: 90%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
}
.cmpn_lst {
  width: calc(100% / 4);
  padding: 10px;
}
#solar .point_top { margin-bottom: 0 !important; }
.point_grt,
.point_cst,
.point_trtl { background: #fff; }
.point_grt,
.point_cst,
.point_trtl {
  width: 279px;
  height: 482px;
  position: relative;
}
.point_grt,
.point_trtl {
  margin-right: 440px;
  padding: 70px 0;
}
.point_cst {
  margin-left: 440px;
  margin-top: -230px;
  padding: 100px 0;
}
.point_trtl { margin-top: -227px; }
.point_grt .point_ttl_wrapper,
.point_cst .point_ttl_wrapper,
.point_trtl .point_ttl_wrapper {
  margin: 0 auto;
  margin-left: -35px;
  margin-right: -35px;
  position: relative;
  z-index: 1;
}
.point_grt .point_content,
.point_cst .point_content,
.point_trtl .point_content {
  margin-left: -30px;
  margin-right: -30px;
  position: relative;
  z-index: 1;
}
.point_grt::before,
.point_cst::before,
.point_trtl::before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 240px 138px 240px 0;
  border-color: transparent #fff transparent transparent;
  position: absolute;
  top: 0;
  left: -138px;
}
.point_grt::after,
.point_cst::after,
.point_trtl::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 240px 0 240px 138px;
  border-color: transparent transparent transparent #fff;
  position: absolute;
  top: 0;
  right: -138px;
}
#solar .content02 .lft.img,
#solar .content02 .rgt.img { width: 30%; }
#solar .content02 .lft.txt,
#solar .content02 .rgt.txt { width: 65%; }
#solar .flow_top { width: 555px; }
#solar .flow_top::before { left: 23.5px; }
#solar .flow_top::after {
  width: 605px;
  left: -25px;
}
#solar .flow_btm::before { right: 25px; }
#solar .flow_btm::after { left: -25px; }
#solar .flow_brdr { right: -22.5px; }
.advantage_lst {
  width: calc(100% / 2.05);
  padding: 20px;
  position: relative;
}
.advantage_lst:nth-last-child(-n + 2) {
  margin-bottom: 0 !important;
}
.advantage_ttl_wrapper {
  display: table;
  margin: 0 auto;
  line-height: 3em;
}
.advantage_ttl,
.advantage_num {
  display: table-cell;
  vertical-align: middle;
  white-space: nowrap; /*for safari*/
}
.advantage_ttl { font-size: 200%; }
.advantage_num {
  font-size: 350%;
  padding: 0 10px 0 0;
  text-shadow: 4px -4px 0 #eee;
  font-weight: bold;
}
.advantage_qstn {
  font-size: 90%;
  padding: 20px;
  border-radius: 8px;
  background: #fff;
  align-items: center;
  -webkit-align-items: center;
}
.advantage_qstn_content {
  width: calc(100% - 260px);
}
.img_battery { width: 260px; }
.no1 {
  align-items: center;
  -webkit-align-items: center;
}
.img_panelpic { width: 400px; }
.no1_content { width: calc(100% - 400px); }
.advantage_s_ttl {
  font-size: 140%;
  font-weight: normal;
}
.point_smlt {
  padding: 40px;
  background: #fff;
}
.point_smlt .lft { width: 45%; }
.point_smlt .rgt { width: 50%; }

@media screen and (max-width: 1120px) {
  .cmpn_lst { width: calc(100% / 3); }
  .cmpn_lst img { width: 100%; }
}

@media screen and (max-width: 1050px) {
  .point_grt,
  .point_cst,
  .point_trtl {
    width: 238px;
    height: 411px;
  }
  .point_grt,
  .point_trtl { margin-bottom: 30px; }
  .point_grt::before,
  .point_cst::before,
  .point_trtl::before {
    border-width: 206px 123px 206px 0;
    left: -123px;
  }
  .point_grt::after,
  .point_cst::after,
  .point_trtl::after {
    border-width: 206px 0 206px 123px;
    right: -123px;
  }
  .point_grt,
  .point_trtl { margin-right: 372px; }
  .point_cst {
    margin-left: 372px;
    margin-top: -230px;
  }
  .point_trtl { margin-top: -200px; }
  #solar .flow_top { width: 60%; }
  .advantage_lst,
  .point_lst { margin-bottom: 20px !important; }
  .advantage_ttl_wrapper,
  .new_point_ttl_wrapper { font-size: 85%; }
  .advantage_s_ttl { font-size: 120%; }
  .point_hlf,
  .point_smlt { padding: 24px; }
  .point_smlt { margin-bottom: 20px !important; }
  .triangle { display: none; }
  .img_panelpic { text-align: center; }
}

@media screen and (max-width: 890px) {
  .point_grt,
  .point_cst,
  .point_trtl {
    width: 100%;
    margin: 0 auto;
    height: auto;
  }
  .point_grt,
  .point_cst { margin-bottom: 20px !important; }
  .point_cng,
  .point_pls,
  .point_grt,
  .point_cst,
  .point_trtl {
    height: auto;
    padding: 15px;
  }
  .point_cng::before,
  .point_pls::before,
  .point_cng::after,
  .point_pls::after,
  .point_grt::before,
  .point_cst::before,
  .point_grt::after,
  .point_cst::after,
  .point_trtl::before,
  .point_trtl::after { display: none; }
  .point_cng .point_ttl_wrapper,
  .point_pls .point_ttl_wrapper,
  .point_cng .point_content,
  .point_pls .point_content,
  .point_grt .point_ttl_wrapper,
  .point_cst .point_ttl_wrapper,
  .point_grt .point_content,
  .point_cst .point_content,
  .point_trtl .point_ttl_wrapper,
  .point_trtl .point_content { margin: 0; }
  #solar .flow_top,
  #solar .flow_btm { width: 80%; }
  #solar .flow_item,
  #solar .item_top,
  #solar .item_btm { width: 22vw; }
  #solar .flow_item { height: 22vw; }
  .advantage_lst:nth-last-child(-n + 2) { margin-bottom: 20px !important; }
  .advantage_lst:last-child { margin-bottom: 0 !important; }
}

@media screen and (max-width: 640px) {
  .advantage_qstn_content,
  .img_battery { width: 100%; }
}

@media screen and (max-width: 420px) {
  .cmpn_lst_wrapper { width: 100%; }
  .cmpn_lst { padding: 5px; }
  #solar .flow_top,
  #solar .flow_btm { width: 100%; }
  #solar .flow_item,
  #solar .item_top,
  #solar .item_btm { width: 28vw; }
  #solar .flow_item { height: 28vw; }
  #solar .item_btm { font-size: 3vw; }
  .img_advantage { width: 100%; }
  .img_panelpic img { width: 100%; }
}


/* =====================================================================================

    JYUTAKU

===================================================================================== */
#jyutaku .flow_btm::before {
  width: calc(100% + 185px);
  left: -67px;
}
#jyutaku .flow_btm .flow_brdr {
  top: 88px;
  right: -116px;
}
#jyutaku .flow_top:nth-child(2)::after,
#jyutaku .flow_top:nth-child(3)::before {
  width: calc(100% + 50px);
  left: -23px;
}
#jyutaku .flow_top:nth-child(4)::after {
  top: -30px;
  width: calc(100% + 50px);
  left: -23px;
}
#jyutaku .flow_top:nth-child(4)::before {
  right: 23px;
  left: inherit;
}
#jyutaku .flow_top:nth-child(4) .flow_brdr {
  top: -23px;
  left: -23px;
}
#jyutaku .flow_top:nth-child(3)::after {
  content: '';
  background-size: 8px 8px;
  height: 98px;
  display: block;
  margin: 0;
  background-image: linear-gradient(to bottom, #7ecef4, #7ecef4 20%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0) 100%);
  width: 2px;
  position: absolute;
  z-index: -1;
  top: -23px;
  left: -23px;
}
.point_lst {
  padding: 20px;
  position: relative;
  display: table;
}
.point_lst:last-child { margin: 0 !important; }
.point_img,
.point_content {
  display: table-cell;
  vertical-align: middle;
}
.point_img { padding: 0 20px 0 0; }
.new_point_ttl { position: relative; }
.new_point_ttl::after {
  content: '';
  background-size: 4px 4px;
  height: 1px;
  display: block;
  margin: 1px 0;
  background-image: linear-gradient(to right, #959595, #959595 20%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0) 100%);
  width: 100%;
  position: absolute;
  bottom: 25px;
}

@media screen and (max-width: 1050px) {
  .point_img,
  .point_content { display: block; }
  .point_img {
    padding: 0;
    margin-bottom: 10px;
  }
  .new_point_ttl_wrapper {
    display: table;
    margin: 0 auto;
    line-height: 3em;
  }
  .new_point_ttl::after { display: none; }
}

@media screen and (max-width: 500px) {
  .img_point { width: 100%; }
}


/* =====================================================================================

    KENZAI

===================================================================================== */
.pdct_corp_logo {
  width: 80%;
  margin: 0 auto 15px;
}
.pdct_corp_logo img {
  width: calc(100%/6);
  height: auto;
  padding: 2px;
}
.pdct_lst_wrapper { font-size: 115%; }
.pdct_lst {
  margin-bottom: 10px;
  position: relative;
  height: 300px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
.pdct_lst:nth-child(1) {
  background-image: url(/wp/wp-content/themes/original_theme/images/kenzai/kenzai_img_aircon.jpg); }
.pdct_lst:nth-child(2) {
  background-image: url(/wp/wp-content/themes/original_theme/images/kenzai/kenzai_img_sash.jpg); }
.pdct_lst:nth-child(3) {
  background-image: url(/wp/wp-content/themes/original_theme/images/kenzai/kenzai_img_entrance.jpg); }
.pdct_lst:nth-child(4) {
  background-image: url(/wp/wp-content/themes/original_theme/images/kenzai/kenzai_img_outerwall.jpg); }
.pdct_lst:nth-child(5) {
  background-image: url(/wp/wp-content/themes/original_theme/images/kenzai/kenzai_img_exterior.jpg); }
.pdct_lst:nth-child(6) {
  background-image: url(/wp/wp-content/themes/original_theme/images/kenzai/kenzai_img_interior.jpg); }
.pdct_lst:nth-child(7) {
  background-image: url(/wp/wp-content/themes/original_theme/images/kenzai/kenzai_img_kitchen.jpg); }
.pdct_lst:nth-child(8) {
  background-image: url(/wp/wp-content/themes/original_theme/images/kenzai/kenzai_img_bath.jpg); }
.pdct_lst:nth-child(9) {
  background-image: url(/wp/wp-content/themes/original_theme/images/kenzai/kenzai_img_washbasin.jpg); }
.pdct_lst:nth-child(10) {
  background-image: url(/wp/wp-content/themes/original_theme/images/kenzai/kenzai_img_toilet.jpg); }
.pdct_lst:nth-child(11) {
  background-image: url(/wp/wp-content/themes/original_theme/images/kenzai/kenzai_img_ecoglass.jpg); }
.pdct_lst:nth-child(12) {
  background-image: url(/wp/wp-content/themes/original_theme/images/kenzai/kenzai_img_solar.jpg); }
.pdct_lst_inner {
  padding: 0 50px;
  width: 100%;
}
.pdct_ttl,
.pdct_txt {
  position: relative;
  z-index: 1;
}
.pdct_ttl {
  font-size: 180%;
  display: inline-block;
  border-bottom: 2px solid #535353;
  line-height: 1.7em;
  white-space: nowrap; /*for safari*/
}
.pdct_txt {
  display: block;
  text-shadow: 0 0 25px #fff, 0 0 20px #fff, 0 0 3.4px #fff;
}
.pdct_link {
  position: absolute;
  right: 50px;
  bottom: 50px;
  display: block;
  transition: none;
  background: url(../images/common/icon_arrow_b.png) no-repeat left;
  padding: 0 0 0 25px;
  white-space: nowrap; /*for safari*/
}
.pdct_link:hover {
  color: #ed6d00;
  opacity: 1;
  background: url(../images/common/icon_arrow_o.png) no-repeat left;
}
.pdct_overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 420px) {
  .pdct_corp_logo { width: 100%; }
  .pdct_corp_logo img { width: calc(100%/3); }
  .pdct_ttl { text-align: center; }
  .pdct_lst_inner { padding: 8vw 4vw; }
}


/* =====================================================================================

    RECRUIT

===================================================================================== */
.rqmt .btn_mr { width: 300px; }
.edct { font-size: 115%; }
.edct:last-child {
  width: 100%;
  margin: 0 auto;
}
.edct_ttl {
  color: #6dc692;
  padding: 5px 15px 2.5px;
  border-radius: 5px;
  font-size: 125%;
  position: relative;
}
.edct_ttl::before {
  content: '';
  width: 4px;
  height: 25px;
  background: #6dc692;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.edct_ttl::after {
  content: '';
  background-size: 4px 4px;
  height: 1px;
  display: block;
  margin: 1px 0;
  background-image: linear-gradient(to right, #959595, #959595 20%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0) 100%);
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
}
.edct_txt { padding: 10px 15px; }
.faq_ttl_wrapper { font-size: 115%; }
.faq_ttl {
  width: calc(100% / 5.1);
  padding: 10px 0;
  background: #eee;
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
}
.faq_ttl:hover,
.faq_ttl.select {
  background: #ee8440;
  color: #fff;
  cursor: pointer;
}
.faq_lst_wrapper {
  font-size: 115%;
  padding: 30px 40px;
}
.faq_lst_a,
.faq_lst_q {
  line-height: 1.7em;
  display: table;
  white-space: nowrap; /*for safari*/
}
.faq_lst_q {
  font-weight: bold;
  font-size: 120%;
}
.faq_intl {
  font-weight: bold;
  font-size: 22pt;
  padding: 0 10px 0 0;
  display: table-cell;
  vertical-align: middle;
}
.sempai_lst_content { width: 50%; }
.sempai_lst:nth-child(even) .sempai_lst_content { margin-left: 50%; }
.sempai_link {
  display: block;
  width: 100%;
  height: 400px;
  display: flex;
  align-items: center;
  display: -webkit-flex;
  -webkit-align-items: center;
  position: relative;
}
.sempai_link:hover { opacity: 1; }
.sempai_link::before { animation: hover; }
.sempai_link:hover::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(237, 109, 0, .3);
  transition: .4s;
   animation: fadeIn .4s ease 0s 1 normal;
  -webkit-animation: fadeIn .4s ease 0s 1 normal;
}
.sempai_link::after {
  content: '';
  position: absolute;
  top: 4px;
  bottom: 4px;
  left: 4px;
  right: 4px;
  border: 1px solid #fff;
  z-index: 2;
}
.sempai_link.stf_o {
  background: linear-gradient(to right, #fff 20%, transparent 60%), url(../images/recruit/stf_o01.jpg) no-repeat 200px;
  background: -webkit-linear-gradient(left, #fff 20%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_o01.jpg) no-repeat 200px;
  background: -moz-linear-gradient(left, #fff 20%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_o01.jpg) no-repeat 200px;
}
.sempai_link.stf_y {
  background: linear-gradient(to left, #fff 20%, transparent 60%), url(../images/recruit/stf_y01.jpg) no-repeat -200px;
  background: -webkit-linear-gradient(right, #fff 20%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_y01.jpg) no-repeat -200px;
  background: -moz-linear-gradient(right, #fff 20%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_y01.jpg) no-repeat -200px;
}
.sempai_link.stf_t {
  background: linear-gradient(to right, #fff 20%, transparent 60%), url(../images/recruit/stf_t01.jpg) no-repeat 200px;
  background: -webkit-linear-gradient(left, #fff 20%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_t01.jpg) no-repeat 200px;
  background: -moz-linear-gradient(left, #fff 20%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_t01.jpg) no-repeat 200px;
}
.sempai_link.stf_s {
  background: linear-gradient(to left, #fff 20%, transparent 60%), url(../images/recruit/stf_s01.jpg) no-repeat -200px;
  background: -webkit-linear-gradient(right, #fff 20%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_s01.jpg) no-repeat -200px;
  background: -moz-linear-gradient(right, #fff 20%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_s01.jpg) no-repeat -200px;
}
.sempai_link.stf_w {
  background: linear-gradient(to left, #fff 20%, transparent 60%), url(../images/recruit/stf_w01.jpg) no-repeat -200px;
  background: -webkit-linear-gradient(right, #fff 20%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_w01.jpg) no-repeat -200px;
  background: -moz-linear-gradient(right, #fff 20%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_w01.jpg) no-repeat -200px;
}
.sempai_name {
  font-size: 180%;
  border-bottom: 2px solid #535353;
  display: inline-block;
  white-space: nowrap; /*for safari*/
}
.modal {
  display: none;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 950px;
  z-index: 2;
  height: 82%;
  padding: 80px 0 0;
}
.modal_inner {
  position: relative;
  z-index: 3;
  background: #fff;
  height: 100%;
  overflow: auto;
}
.overLay {
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(237, 109, 0, .7);
  width: 100%;
  height: 100%;
  z-index: 2;
}
.btn_cls_wrapper {
  display: table;
  position: absolute;
  z-index: 4;
  top: 0;
  right: 17px;
  background: #ee8440;
  width: 50px;
  height: 50px;
  margin: 80px 0 0;
}
.btn_cls {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  line-height: 18px;
}
.close,
.btn_cls_txt { display: block; }
.itvw_wrapper,
.scdl_lst_wrapper { font-size: 115%; }
.sempai_wrapper {
  margin: 0 auto;
  position: relative;
}
.sempai_wrapper .grdt {
  width: calc(100% - 80px);
  height: 400px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: linear-gradient(to right, #fff, transparent 30%, transparent 85%, #fff);
  background: -webkit-linear-gradient(left, #fff, rgba(255, 255, 255, 0) 30%, rgba(255, 255, 255, 0) 85%, #fff);
  background: -moz-linear-gradient(left, #fff, rgba(255, 255, 255, 0) 30%, rgba(255, 255, 255, 0) 85%, #fff);
  z-index: 1;
}
.sempai_content {
  margin: 0 40px;
  padding-top: 430px;
}
#modal02 .sempai_wrapper .grdt { width: calc(100% - 180px); }
#modal02 .sempai_content { margin: 0 90px; }
.sempai_content.stf_o { background: url(../images/recruit/stf_o01.jpg) no-repeat center top; }
.sempai_content.stf_y { background: url(../images/recruit/stf_y01.jpg) no-repeat center top; }
.sempai_content.stf_t { background: url(../images/recruit/stf_t01.jpg) no-repeat center top; }
.sempai_content.stf_s { background: url(../images/recruit/stf_s01.jpg) no-repeat center top; }
.sempai_content.stf_w { background: url(../images/recruit/stf_w01.jpg) no-repeat center top; }
.sempai_inner {
  width: 100%;
  margin-bottom: 3px;
  display: table;
}
.sempai_item,
.sempai_txt {
  display: table-cell;
  padding: 5px 10px;
}
.sempai_item {
  width: 30%;
  background: #ffe9cd;
}
.sempai_txt {
  width: 70%;
  background: #fff;
}
.itvw_wrapper,
.modal .brdr_s_ttl { margin: 0 40px; }
.itvw_img_wrapper.fltLft { margin-right: 20px; }
.itvw_img_wrapper.fltRgt { margin-left: 20px; }
.itvw_txt {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: space-between;
}
.itvw_txt span { width: calc(100% / 2.05); }
.itvw_item {
  background: #ffe9cd;
  font-weight: bold;
  border-radius: 5px;
  padding: 5px 10px;
  overflow: hidden;
}
.scdl_lst_wrapper {
  width: 750px;
  margin: 0 auto;
  background: #fff;
  padding: 20px 0 1px;
}
.scdl_lst { position: relative; }
.scdl_lst::before {
  content: '';
  bottom: -15px;
  left: calc(50% - 7.5px);
  width: 15px;
  height: 15px;
  border-top: 2px solid #ed6d00;
  border-right: 2px solid #ed6d00;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  position: absolute;
}
.scdl_lst::after {
  content: '';
  bottom: -20px;
  left: calc(50% - 7.5px);
  width: 15px;
  height: 15px;
  border-top: 2px solid #ed6d00;
  border-right: 2px solid #ed6d00;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  position: absolute;
}
.scdl_lst:last-child::before,
.scdl_lst:last-child::after { display: none; }
.event_lst li {
  overflow: hidden;
  height: 16.25vw;
}
.event_lst li img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  min-height: 100%;
  width: auto;
  max-width: inherit;
}
.event_link {
  display: block;
  transition: all .4s ease-out;
}
.event_content_wrapper { display: none; }
.event_img {
  max-width: 100%;
  height: auto;
}
.event_content .cap {
  position: absolute;
  bottom: -46px;
  padding-left: 16px;
  color: #fff;
  word-break: break-all;
}
.event_content .cap::before {
  content: '';
  position: absolute;
  top: 8px;
  left: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 8px;
  border-color: transparent transparent transparent #fff;
}
#recruit #cboxLoadedContent {
  overflow: inherit !important;
}

@media screen and (max-width: 1366px) {
  .event_lst li { height: 19.5vw; }
}

@media screen and (max-width: 1080px) {
  .event_lst li { height: 24.25vw; }
}

@media screen and (max-width: 1050px) {
  .edct { font-size: 100%; }
  .pdct_lst_wrapper {
    width: 100%;
    font-size: 100%;
  }
  .pdct_lst_inner { padding: 0 4vw; }
  .pdct_ttl { width: 100%; }
  .pdct_link {
    right: 4vw;
    bottom: 4vw;
    background: url(../images/common/icon_arrow_b_sp.png) no-repeat left;
    background-size: 16px;
  }
  .pdct_link:hover {
    background: url(../images/common/icon_arrow_o_sp.png) no-repeat left;
    background-size: 16px;
  }
  .sempai_link { height: 38vw; }
  .sempai_link.stf_o {
    background: linear-gradient(to right, #fff 25%, transparent 60%), url(../images/recruit/stf_o01.jpg) no-repeat 17vw;
    background: -webkit-linear-gradient(left, #fff 25%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_o01.jpg) no-repeat 17vw;
    background: -moz-linear-gradient(left, #fff 25%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_o01.jpg) no-repeat 17vw;
    background-size: contain;
  }
  .sempai_link.stf_y {
    background: linear-gradient(to left, #fff 25%, transparent 60%), url(../images/recruit/stf_y01.jpg) no-repeat -17vw;
    background: -webkit-linear-gradient(right, #fff 25%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_y01.jpg) no-repeat -17vw;
    background: -moz-linear-gradient(right, #fff 25%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_y01.jpg) no-repeat -17vw;
    background-size: contain;
  }
  .sempai_link.stf_t {
    background: linear-gradient(to right, #fff 25%, transparent 60%), url(../images/recruit/stf_t01.jpg) no-repeat 17vw;
    background: -webkit-linear-gradient(left, #fff 25%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_t01.jpg) no-repeat 17vw;
    background: -moz-linear-gradient(left, #fff 25%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_t01.jpg) no-repeat 17vw;
    background-size: contain;
  }
  .sempai_link.stf_s {
    background: linear-gradient(to left, #fff 25%, transparent 60%), url(../images/recruit/stf_s01.jpg) no-repeat -17vw;
    background: -webkit-linear-gradient(right, #fff 25%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_s01.jpg) no-repeat -17vw;
    background: -moz-linear-gradient(right, #fff 25%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_s01.jpg) no-repeat -17vw;
    background-size: contain;
  }
  .sempai_link.stf_w {
    background: linear-gradient(to left, #fff 25%, transparent 60%), url(../images/recruit/stf_w01.jpg) no-repeat -17vw;
    background: -webkit-linear-gradient(right, #fff 25%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_w01.jpg) no-repeat -17vw;
    background: -moz-linear-gradient(right, #fff 25%, rgba(255, 255, 255, 0) 60%), url(../images/recruit/stf_w01.jpg) no-repeat -17vw;
    background-size: contain;
  }
  .modal { width: 95%; }
  .sempai_content { padding-top: 415px; }
  .itvw_wrapper,
  .modal .brdr_s_ttl { margin: 0 20px; }
  .itvw_wrapper,
  .scdl_lst_wrapper { font-size: 100%; }
  .itvw_txt span { width: 100%; }
  .scdl_lst_wrapper { width: 90%; }
  .scdl_lst { margin-bottom: 30px !important; }
  .btn_cls_wrapper {
    top: auto;
    bottom: -50px;
    right: 0;
    left: 0;
    margin: auto;
    background: none;
    font-size: 115%;
    width: 100%;
  }
  .close,
  .btn_cls_txt { display: inline; }
  .btn_cls_txt { padding-left: 1em; }
  .modal { padding: 65px 0 0; }
  .faq_ttl_wrapper,
  .faq_lst_wrapper { font-size: 100%; }
  .faq_lst_wrapper { padding: 15px 20px; }
  .faq_lst_a,
  .faq_lst_q { white-space: normal; /*for safari*/ }
}

@media screen and (max-width: 850px) {
  .itvw_img_wrapper { float: none; }
  .itvw_img_wrapper.fltLft { margin-right: 0; }
  .itvw_img_wrapper.fltRgt { margin-left: 0; }
  .itvw_img {
    padding-bottom: 10px;
    display: block;
    margin: 0 auto;
  }
}

@media screen and (max-width: 820px) {
  .sempai_wrapper .grdt { display: none; }
  .sempai_content { margin: 0 !important; }
}

@media screen and (max-width: 767px) {
  .event_lst li { height: 80vw; }
}

@media screen and (max-width: 500px) {
  .itvw_img { width: 100%; } 
}

@media screen and (max-width: 420px) {
  .faq_ttl {
    width: 100%;
    border-radius: 8px;
    margin-bottom: 5px;
  }
  .sempai_lst_content,
  .sempai_content { font-size: 85%; }
  .sempai_content {
    background-size: 640px !important;
    padding-top: 285px;
  }
  .event_content .cap { bottom: -32px; }
}


/* =====================================================================================

    COMPANY

===================================================================================== */
.jump {
  position: absolute;
  top: -65px;
}
.greeting {
  display: flex;
  align-items: center;
  justify-content: center;
}
.greeting img {
  margin-right: 40px;
  height: auto;
  flex-shrink: 0;
}
.grtg_strg {
  font-size: 140%;
  line-height: 2.5em;
}
.greeting_logo_wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.greeting_logo_wrapper img { margin-right: 0; }
.plsp_ttl {
  font-size: 190%;
  font-weight: normal;
}
.plsp_lst_wrapper,
.plsp_date { font-size: 140%; }
.sougyou_img { height: auto; }
.table_prfl,
.table_prfl dt,
.table_prfl dd { border: none; }
.table_prfl dl {
  display: table;
  width: 100%;
  margin-bottom: 5px;
}
.table_prfl dt,
.table_prfl dd {
  display: table-cell;
  padding: 10px 20px;
}
.table_prfl dt {
  font-weight: normal;
  width: 30%;
  color: #fff;
}
.table_prfl dd {
  background: #fff;
  width: 70%;
}
.brdr_s_ttl {
  font-size: 180%;
  position: relative;
  text-align: center;
}
.brdr_s_ttl::before {
  content: '';
  background-size: 4px 4px;
  height: 1px;
  display: block;
  margin: 1px 0;
  background-image: linear-gradient(to right, #959595, #959595 20%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0) 100%);
  width: 100%;
  position: absolute;
  bottom: 3px;
}
.brdr_s_ttl::after {
  content: '';
  background-size: 4px 4px;
  height: 1px;
  display: block;
  margin: 1px 0;
  background-image: linear-gradient(to right, #959595, #959595 20%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0) 100%);
  width: 100%;
  position: absolute;
  bottom: 0;
}
.lctn_lst_wrapper,
.srvs_lst_wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: center;
}
.lctn_lst {
  width: calc(100% / 3.1);
  background: #fff;
  padding: 20px;
}
.lctn_lst:nth-child(n + 2) { margin-left: 16px; }
.lctn_content { font-size: 105%; }
.grup_lst {
  background: #fff;
  padding: 20px;
}
.table_grup {
  width: 100%;
  font-size: 105%;
}
.table_grup th,
.table_grup td {
  border: 1px solid #b8c0cf;
  padding: 10px;
  vertical-align: middle;
}
.table_grup th {
  width: 30%;
  font-weight: normal;
  background: #eee;
}
.srvs_lst_wrapper,
.map_lst_wrapper { font-size: 115%; }
.srvs_lst {
  width: calc(100% / 2.05);
  margin-bottom: 20px;
}
.srvs_lst:nth-last-child(-n + 2) {
  margin-bottom: 0;
}
.srvs_link {
  display: table;
  width: 100%;
  padding: 10px;
  background: #fff;
}
.srvr_img,
.srvs_txt {
  display: table-cell;
  vertical-align: middle;
  height: 100%;
}
.srvs_img {
  width: 25%;
  padding: 0 10px 0 0;
}
.srvs_txt { width: 75%; }

@media screen and (max-width: 1050px) {
  .greeting img { width: 220px; }
  .brdr_s_ttl { font-size: 140%; }
  .map iframe { width: 100%; }
  .srvs_lst_wrapper,
  .map_lst_wrapper { font-size: 100%; }
  .lctn_content,
  .table_grup { font-size: 95%; }
  .grtg_strg { font-size: 120%; }
  .plsp_ttl { font-size: 130%; }
  .plsp_lst_wrapper,
  .plsp_date { font-size: 110%; }
}

@media screen and (max-width: 850px) {
  .img_philosophy { width: 100%; }
}

@media screen and (max-width: 650px) {
  .greeting {
    display: block;
    padding: 0 16px;
  }
  .greeting img {
    display: block;
    width: 190px;
    margin-bottom: 16px;
    margin-right: auto;
    margin-left: auto;
  }
  .greeting_logo_wrapper img { margin: 0; }
  .lctn_lst {
    width: 100%;
    margin-bottom: 10px;
  }
  .lctn_lst:last-child {
    margin-bottom: 0;
    margin-left: 0;
  }
  .srvs_lst {
    width: 100%;
    margin-bottom: 10px;
  }
  .srvs_lst:nth-last-child(-n + 2) { margin-bottom: 10px; }
  .srvs_lst:last-child { margin-bottom: 0; }
}


/* =====================================================================================

    GROUP

===================================================================================== */
.group:nth-child(odd) { background: #f8f8f8; }
.group_wrapper { display: table; }
.group_inner {
  display: table-cell;
  vertical-align: middle;
}
.group_inner.lft {
  width: 30%;
  padding: 0 30px 0 0;
}
.group_inner.rgt { width: 70%; }
.group_ttl_wrap {
  display: flex;
  align-items: center;
  margin-bottom: 24px;
}
.group_ttl_wrap img {
  width: 160px;
  height: auto;
  margin-right: 16px;
}
.group_lst_wrapper {
  font-size: 115%;
  padding: 0 0 0 2em;
}
.group_lst {
  list-style: disc;
  width: calc(100% / 2.1)
}
.tel_lst { font-size: 115%; }
.tel_txt { padding: 0 0 0 1em; }
.kyouei-btn {
  background-color: #EE8440;
  padding: 8px 24px;
  color: #fff;
  display: table;
  margin-left: auto;
  margin-right: auto;
  margin-top: 24px;
  border-radius: 24px
}

@media screen and (max-width: 1050px) {
  .group_lst_wrapper,
  .tel_lst { font-size: 100%; }
}

@media screen and (max-width: 850px) {
  .group_inner {
    display: block;
    width: 100% !important;
  }
  .group_inner.lft { padding: 0 0 20px; }
  .group_inner .ttl { text-align: center; }
}

@media screen and (max-width: 820px) {
  .group_ttl_wrap { flex-direction: column; }
  .group_ttl_wrap .ttl { margin: 0 }
  .group_ttl_wrap img { margin-bottom: 16px; }
}

@media screen and (max-width: 420px) {
  .group_img { width: 100%; }
}


/* =====================================================================================

    ARCHIVE

===================================================================================== */
.single-section,
.case-posts,
.news-posts,
.blog-posts,
.outlet-posts,
.requirement-posts { width: calc(100% - 270px); }
.outlet-posts .post-link {
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 3;
  top: 0;
  left: 0;
}
.catLink a {
  color :#fff;
  background: #ffa049;
  display: inline-block;
  padding: 0 .5em;
  border-radius: 3px;
  position: relative;
  z-index: 2;
  margin: 2.5px 5px 5.5px 0 !important
}
.outlet-posts .catLink a {
  z-index: 3;
}
.case-post .post-text,
.news-post .post-text,
.blog-post .post-text,
.outlet-post .post-text,
.requirement-post .post-text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.case-post,
.news-post,
.blog-post,
.outlet-post,
.requirement-post {
  position: relative;
  transition: all .4s;
  background: #fff;
  border-radius: 5px;
}
.case-post,
.news-post,
.blog-post,
.outlet-post {
  height: 310px;
  padding: 30px;
  margin: 0 0 16px;
}
.case-post .date,
.news-post .date,
.blog-post .date,
.outlet-post .date,
.single-post .date,
.requirement-post .date { font-size: 95%; }
.case-post::after,
.news-post::after,
.blog-post::after,
.outlet-post::after,
.case-search::after,
.requirement-post::after { border-radius: 5px; }
.post-img {
  width: 250px;
  height: 250px;
  float: left;
  margin: 0 20px 0 0;
  border-radius: 5px;
  position: relative;
}
.case-post:hover,
.news-post:hover,
.blog-post:hover,
.requirement-post:hover {
  opacity: .7;
}
.case-post .post-ttl,
.news-post .post-ttl,
.blog-post .post-ttl,
.outlet-post .post-ttl,
.requirement-post .post-ttl {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.case-link,
.news-link .blog-link,
.requirement-link {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
}
.no-post {
  border: none;
  height: 300px;
  font-size: 120%;
  display: flex;
  justify-content: center;
  align-items: center;
  display: -webkit-flex;
  -webkit-justify-content: center;
  -webkit-align-items: center;
  background: rgba(255, 255, 255, .5);
  border-radius: 5px;
  border: 2px solid #fff;
}
.no-post:hover {
  opacity: 1;
}

@media screen and (max-width: 1050px) {
  .case-posts,
  .single-section,
  .news-posts,
  .blog-posts,
  .outlet-posts,
  .requirement-posts {
    width: 100%;
    float: none;
  }
  .case-post,
  .news-post,
  .blog-post,
  .outlet-post,
  .requirement-post {
    padding: 15px;
  }
}

@media screen and (max-width: 767px) {
  .case-post .post-ttl,
  .requirement-post .post-ttl {
    white-space: normal;
  }
}

@media screen and (max-width: 640px) {
  .news-post,
  .blog-post {
    height: 170px;
  }
  .post-img {
    width: 140px;
    height: 140px;
  }
}

/* archive case
 **************************************** */
.cat_lst_wrapper,
.tag_lst_wrapper {
  overflow: hidden;
  margin: 10px 0;
  max-height: 33px;
}
.menu_lst,
.city_lst,
.tag_lst {
  float: left;
}
.menu_lst a,
.city_lst a,
.tag_lst a {
  position: relative;
  z-index: 2;
}
.menu_lst a,
.city_lst a,
.tag_lst a {
  margin: 2.5px 5px 2.5px 0 !important;
  padding: 0 .5em;
  border-radius: 3px;
  height: 100%;
  display: block;
  white-space: nowrap; /*for safari*/
}
.city_lst a {
  background: #ffa049;
}
.menu_lst a {
  background: #bfd5da;
}
.tag_lst a {
  border: 2px solid #6dc692;
}
.tag_lst a,
.fa-tag {
  color: #6dc692 !important;
}
.fa-tag {
  padding-right: 3px;
}
.city_lst:last-child,
.menu_lst:last-child,
.tag_lst:last-child {
  margin-right: 0;
}

@media screen and (max-width: 1050px) {
  .case-post {
    position: relative;
    height: inherit;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    display: -webkit-flex;
    -webkit-flex-wrap: wrap;
    -webkit-justify-content: space-between;
  }
  .case-post .post-ttl {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: 0;
    -webkit-order: 0;
    order: 0;
  }
  .case-post .tRgt {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
    width: 100%;
  }
  .cat_lst_wrapper {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
    margin: 5px 0 10px;
    width: 100%; /*for safari*/
  }
  .case-post .post-img {
    width: 100%;
    height: 50vw;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 3;
    -webkit-order: 3;
    order: 3;
    margin: 0 0 10px;
  }
  .case-post .post-text {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 4;
    -webkit-order: 4;
    order: 4;
  }
  .tag_lst_wrapper {
    -webkit-box-ordinal-group: 5;
    -ms-flex-order: 5;
    -webkit-order: 5;
    order: 5;
    margin: 5px 0;
    width: 100%; /*for safari*/
  }
}

/*case-search*/
.case-search {
  border-radius: 5px;
  padding: 32px 16px;
}
/* IE */
_:-ms-input-placeholder, :root .case-search {
  font-size: 95%;
}
.case-search .case-input {
  width: 100%;
}
.case-search .case-select {
  position: relative;
}
.case-search .case-select::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1em;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 5px 0 5px;
  border-color: #ed6d00 transparent transparent transparent;
  transition: .4s;
  z-index: 1;
}
.case-search input,
.case-search select,
.case-search button {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 5px;
  font-family: Lato, YuGothic, 貂ｸ繧ｴ繧ｷ繝�け, "繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3", "Hiragino Kaku Gothic Pro", 繝｡繧､繝ｪ繧ｪ, Meiryo, "�ｭ�ｳ �ｰ繧ｴ繧ｷ繝�け", sans-serif;
  font-size: 125%;
  padding: .25em 1em;
  line-height: 1.7em;
}
.case-search input,
.case-search select {
  border: 1px solid #ccc;
}
.case-search select,
.case-search button {
  cursor: pointer;
}
.case-search input {
  display: block;
  width: 100%;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.case-search select {
  padding-right: 2em;
}
.case-search select::-ms-expand {
  display: none;
}
.case-search button {
  border: none;
  margin-left: 1em;
  background-color: #ffa049;
  color: #fff;
  letter-spacing: .2em;
}
.case-search button:hover {
  background-color: #ffb36d;
}
.case-option-pref {
  font-weight: bold;
}
.case-search .fa-search {
  margin-right: .25em;
  font-size: 120%;
  vertical-align: middle;
  color: #fff;
}
.case-search .case-cross {
  font-size: 200%;
  font-weight: bold;
  padding-left: .5em;
  padding-right: .5em;
}

@media screen and (max-width: 767px) {
  .case-search {
    padding: 24px 16px;
  }
  .case-search .case-select {
    width: calc(100% / 3 - 12px);
    font-size: 92%;
  }
  .case-search input,
  .case-search select,
  .case-search button {
    padding: .15em .5em;
  }
  .case-search select {
    width: 100%;
  }
  .case-search button {
    margin-top: 16px;
    margin-left: 0;
  }
  .case-search .case-cross {
    font-size: 120%;
    padding-left: .15em;
    padding-right: .15em;
    width: 18px;
    text-align: center;
  }
  .case-search .case-select::before {
    right: .5em;
    border-width: 6px 4px 0 4px;
  }
}

/* archive outlet
 **************************************** */
.outlet-message {
  position: relative;
  background-color: #d22525;
  height: 46px;
  border-radius: 11px;
}
.outlet-message-txt {
  position: absolute;
  left: 50%;
  top: -13px;
  color: #fff;
  font-size: 216%;
  font-weight: 900;
  line-height: 1;
  transform: translateX(-50%);
  white-space: nowrap;
  text-shadow: #d22525 2px 0px 2px, #d22525 -2px 0px 2px,
               #d22525 0px -2px 2px, #d22525 -2px 0px 2px,
               #d22525 2px 2px 2px, #d22525 -2px 2px 2px,
               #d22525 2px -2px 2px, #d22525 -2px -2px 2px,
               #d22525 1px 2px 2px, #d22525 -1px 2px 2px,
               #d22525 1px -2px 2px, #d22525 -1px -2px 2px,
               #d22525 2px 1px 2px, #d22525 -2px 1px 2px,
               #d22525 2px -1px 2px, #d22525 -2px -1px 2px,
               #d22525 1px 1px 2px, #d22525 -1px 1px 2px,
               #d22525 1px -1px 2px, #d22525 -1px -1px 2px;
}
.outlet-message-txt span {
  font-size: 200%;
  color: #fff;
}
.outlet-br {
  display: none;
}
.outlet_ctch {
  position: relative;
  padding: 16px;
  padding-top: 64px;
  width: 100%;
  background-color: #fff;
  font-size: 100%;
  border: 3px solid #ffb985;
}
.outlet_ctch::before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 20px;
  margin: 0 auto;
  width:50px;
  height:42px;
  background-image: url(../images/outlet/outlet_megaphone.png);
  background-size: cover;
}
.outlet_ctch h3 {
  position: relative;
  padding: .2em .5em;
  color: #444;
  font-size: 170%;
  line-height: 1.5;
  text-align: center;
  text-shadow: #fff 2px 0px 2px, #fff -2px 0px 2px,
               #fff 0px -2px 2px, #fff -2px 0px 2px,
               #fff 2px 2px 2px, #fff -2px 2px 2px,
               #fff 2px -2px 2px, #fff -2px -2px 2px,
               #fff 1px 2px 2px, #fff -1px 2px 2px,
               #fff 1px -2px 2px, #fff -1px -2px 2px,
               #fff 2px 1px 2px, #fff -2px 1px 2px,
               #fff 2px -1px 2px, #fff -2px -1px 2px,
               #fff 1px 1px 2px, #fff -1px 1px 2px,
               #fff 1px -1px 2px, #fff -1px -1px 2px;
}
.outlet_ctch h3 span {
  color: #f00;
  padding-bottom: 5px;
  background: linear-gradient(transparent 70%, #ffdb4d 70%);
}
.outlet_ctch-large {
  font-size: 120%;
  padding-bottom: 3px;
}
.post-img-wrap {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.brand,
.single-post .brand {
  position: absolute;
  right: 4px;
  top: 4px;
  font-size: 91%;
  overflow: hidden;
}
.brand_link {
  border: 1px solid #535353;
  background-color: #fff;
  display: inline-block;
  padding: 0 .5em;
  border-radius: 3px;
  position: relative;
  z-index: 2;
  white-space: nowrap; /*for safari*/
}
.brand_link:hover {
  background: #535353;
  color: #fff;
  opacity: 1;
}
.price,
.price small,
.price-yen {
  color: #f00;
}
.price {
  font-size: 275%;
  font-weight: bold;
  -webkit-text-shadow: #fff 2px 0px 2px, #fff -2px 0px 2px,
                       #fff 0px -2px 2px, #fff -2px 0px 2px,
                       #fff 2px 2px 2px, #fff -2px 2px 2px,
                       #fff 2px -2px 2px, #fff -2px -2px 2px,
                       #fff 1px 2px 2px, #fff -1px 2px 2px,
                       #fff 1px -2px 2px, #fff -1px -2px 2px,
                       #fff 2px 1px 2px, #fff -2px 1px 2px,
                       #fff 2px -1px 2px, #fff -2px -1px 2px,
                       #fff 1px 1px 2px, #fff -1px 1px 2px,
                       #fff 1px -1px 2px, #fff -1px -1px 2px;
  text-shadow: #fff 2px 0px 2px, #fff -2px 0px 2px,
               #fff 0px -2px 2px, #fff -2px 0px 2px,
               #fff 2px 2px 2px, #fff -2px 2px 2px,
               #fff 2px -2px 2px, #fff -2px -2px 2px,
               #fff 1px 2px 2px, #fff -1px 2px 2px,
               #fff 1px -2px 2px, #fff -1px -2px 2px,
               #fff 2px 1px 2px, #fff -2px 1px 2px,
               #fff 2px -1px 2px, #fff -2px -1px 2px,
               #fff 1px 1px 2px, #fff -1px 1px 2px,
               #fff 1px -1px 2px, #fff -1px -1px 2px;
  position: absolute;
  right: 10px;
  bottom: 7px;
  text-align: right;
  line-height: 1;
}
.price small {
  font-size: 37%;
}
.price-yen {
  font-size: 90%;
}
.price-yen small {
  font-size: 60%;
}
.price-free {
  font-size: 191%;
  bottom: 10px;
}
.price-wrap {
  position: relative;
}
.outlet-post {
  width: calc(100% / 3 - 11px);
  height: auto;
  margin-right: 16px;
  padding: 12px;
}
.outlet-post .post-img {
  position: relative;
  float: none;
  width: 100%;
  height: auto;
  overflow: hidden;
}
.outlet-post .post-img::before {
  content:"";
  display: block;
  padding-top: 100%; 
}
.post-img svg,
.single-post svg {
  height: 0;
}
.price-back {
  width: 260px;
  height: 79px;
  background-image: url(../images/outlet/price-back.png);
  background-repeat: no-repeat;
  background-size: cover;
}
.outlet-post .price-back {
  position: absolute;
  bottom: -18px;
  right: -78px;
}
.outlet_single-wrap .price-back {
  position: absolute;
  top: 0;
  left: 0;
}
.price-back-shadow {
    background-image: unset;
    background-color: #ffae46;
  transform: scaleX(.42) scaleY(.25);
}
.outlet-post:nth-child(3n) {
  margin-right: 0;
}
.outlet-post .post-ttl {
  font-size: 160%;
  text-overflow: clip;
  white-space: normal;
  line-height: 1.6;
  margin-bottom: 10px;
}
.outlet-post .post-text {
  position: relative;
  margin-top: -5px;
  padding-top: 10px;
  font-size: 100%;
  margin-bottom: 64px;
}
.no-post .post-text {
  margin: 0;
  padding: 0;
}
.outlet-post .post-text::before {
  content: '';
  background-size: 4px 4px;
  height: 1px;
  display: block;
  margin: 1px 0;
  background-image: linear-gradient(to right, #959595, #959595 20%, rgba(0, 0, 0, 0) 20%, rgba(0, 0, 0, 0) 100%);
  width: 100%;
  position: absolute;
  top: 0;
}
.no-post .post-text::before {
  display: none;
}
.soldout_wrapper {
  position: absolute;
  bottom: -4px;
  left: -19px;
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  font-size: 250%;
  width: 120px;
  height: 120px;
  border: 4px solid #f55;
  border-radius: 100px;
  transform: rotate(15deg);
  -webkit-transform: rotate(15deg);
  z-index: 4;
}
.soldout {
  color: #f55;
  font-weight: bold;
  width: 58%;
}
.outlet-soldout-black {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: .45;
  z-index: 2;
}
.outlet-btn {
  display: block;
  height: 44px;
  line-height: 44px;
  font-size: 126%;
  font-weight: 700;
  text-align: center;
  border-width: 1px;
  border-style: solid;
  background: transparent;
  border-radius: .25em;
  cursor: pointer;
  box-shadow: 0 1.31em 0 0 rgba(255, 255, 255, .1) inset;
  transition: box-shadow .3s cubic-bezier(.215, .61, .355, 1), border-color .3s cubic-bezier(.215, .61, .355, 1);
  background-color: #ff4f4f;
  color: #fff;
  border-top-color: #ed9759;
  border-left-color: #f18d46;
  border-right-color: #f18d46;
  border-bottom-color: #c86912;
  overflow: hidden;
}
.outlet-post .outlet-btn {
  position: absolute;
  bottom: 12px;
  width: calc(100% - 24px);
}
.outlet-btn-under {
  width: 300px;
  margin: 0 auto;
}
.outlet-post .outlet-btn::before {
  content: '';
  position: absolute;
  top: 55%;
  right: 32px;
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  margin-top: -5px;
  transition: all .2s cubic-bezier(.29, .45, .36, 1);
}
.outlet-post:hover .outlet-btn::before {
  right: 24px;
}
.outlet-post .catLink a {
  padding: 0px 6px;
  background-color: #ffa049;
}
.outlet-badge,
.outlet-badge-outer {
  display: block;
  width: 57px;
  height: 57px;
  background: #f30909;
}
.outlet-badge {
  -webkit-transform: rotate(-76deg);
  transform: rotate(-76deg);
  text-align: center;
  text-decoration: none;
  font-weight: bold;
}
.outlet-post .outlet-badge {
  position: absolute;
  right: 13px;
  bottom: 82px;
}
.single-post .outlet-badge {
  display: inline-block;
  position: relative;
  left: 8px;
}
.outlet-badge-outer {
  -webkit-transform: rotate(22.5deg);
  transform: rotate(22.5deg);
}
.outlet-badge-txt {
  color: #fff;
  font-size: 180%;
  position: absolute;
  white-space: nowrap;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  text-shadow: 0px 2px 2px #000;
  line-height: 1.12;
  letter-spacing: .0em;
}
.outlet-badge-txt small {
  color: #fff;
  font-size: 76%;
}
.stamp_const small {
  color: #fff;
  font-size: 79%;
}
.outlet-badge-txt span {
  color: #fff;
  font-size: 143%;
}
.stamp_const span {
  color: #fff;
  font-size: 128%;
}

@media screen and (max-width: 1050px) {
  .outlet-posts-wrap {
    display: block;
  }
  .outlet-message {
    height: 6em;
  }
  .outlet-message-txt {
    font-size: 186%;
    line-height: 1.2;
    text-align: center;
  }
  .outlet-br {
    display: block;
  }
  .outlet-post {
    position: relative;
    display: block;
    width: 100%;
    height: inherit;
    margin-right: 0;
  }
  .outlet-post .post-ttl {
    font-size: 115%;
  }
  .outlet-post .post-text {
    margin-bottom: 0;
    font-size: 85%;
  }
  .outlet-post .clearfix {
    margin-bottom: 8px;
  }
  .outlet-post .price-back {
    bottom: -12px;
    right: -48px;
  }
  .price-back {
    width: 180px;
    height: 53px;
  }
  .price {
    font-size: 210%;
    right: 5px;
    bottom: 4px;
    z-index: 2;
  }
  .price-free {
    font-size: 160%;
  }
  .outlet-post .outlet-badge {
    right: 9px;
    bottom: 58px;
  }
  .outlet-post .outlet-badge-outer,
  .outlet-post .outlet-badge {
    width: 40px;
    height: 40px;
  }
  .outlet-post .outlet-badge-txt {
    font-size: 147%;
  }
  .outlet-post .tRgt, #outlet .single-post .tRgt {
    width: 100%;
  }
  .outlet-post .post-img {
    display: block;
    width: 50%;
    height: auto;
    float: left;
    margin-right: 10px;
  }
  .outlet-post .catLink a {
    padding: 0 4px;
    font-size: 80%;
  }
  .brand {
    width: 100%;
    left: 5px;
    right: auto;
  }
  .brand_link {
    font-size: 80%;
    padding: 0 4px;
  }
  .outlet-post .soldout_wrapper {
    font-size: 210%;
    width: 100px;
    height: 100px;
  }
  .outlet-post .outlet-btn {
    position: relative;
    bottom: auto;
    width: 100%;
  }
  .outlet-btn-under { width: 100%; }
  .outlet-post .soldout_wrapper {
    top: -5px;
    right: -2px;
    border: 2px solid #f55;
    font-size: 170%;
    width: 87px;
    height: 87px;
    z-index: 4;
  }
  .soldout { width: auto; }
}

/* archive requirement
 **************************************** */
.requirement-post .post-img {
  width: 100%;
  float: none;
  border-radius: 5px 5px 0 0;
}
.requirement-content { padding: 16px; }

/* wp-pagenavi
 **************************************** */
#pageNav,
.wp-pagenavi {
  text-align: center;
  padding: 32px 0 0;
}
.wp-pagenavi .pages { display: none; }
.wp-pagenavi a,
.wp-pagenavi .current {
  padding: 2px 20px;
  display: inline-block;
  background: #fff;
  margin: 0 2px 4px;
  text-decoration: none;
  font-weight: 300;
  font-size: 107%;
  border: 2px solid #fff;
  border-radius: 3px;
}
.wp-pagenavi a:hover {
  background: #ee8440;
  color: #fff;
  border-color: #ee8440;
}
.wp-pagenavi .extend { margin: 0 8px; }
.wp-pagenavi .current { background: transparent; }
#pageNav ul {
  width: 60%;
  margin: 0 auto;
}
#pageNav li { display: block; }
#pageNav li:first-child, #pageNav li:last-child { width: 40%; }
#pageNav li:nth-child(2) { width: 20%; }
#pageNav a {
  display: inline-block;
  vertical-align: middle;
  white-space: nowrap;
}
#pageNav li:first-child a, #pageNav li:last-child a {
  width: 70%;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media screen and (max-width: 1050px) {
  #pageNav,
  .wp-pagenavi {
    padding: 16px 0 32px;
    font-size: 95%;
  }
}

@media screen and (max-width: 640px) {
  #pageNav ul { width: 100%; }
  .wp-pagenavi .extend { margin: 0; }
}


/* =====================================================================================

    SINGLE

===================================================================================== */
.single-eyecatch img {
  max-width: 100%;
  height: auto;
}
.single-ttl,
.case-post .post-ttl,
.news-post .post-ttl,
.blog-post .post-ttl,
.outlet_single-ttl,
.requirement-post .post-ttl {
  font-size: 160%;
  line-height: 1.5em;
}
.postInfo {
  max-height: 33px;
  overflow: hidden;
}
.single-post {
  color: #535353;
  background: #fff;
  position: relative;
  padding: 30px;
  margin: 0 0 16px;
}
.single-section table {
  width: auto;
  max-width: 100%;
  height: auto !important;
  font-size: 93%;
  margin: 15px 0 10px;
  border: solid 2px #535353;
  line-height: 1.65;
}
.single-section th,
.single-section td {
  padding: 5px 10px;
  border: 1px solid #535353;
  vertical-align: middle;
}
.single-section th {
  background: #ffe2c9;
  white-space: nowrap;
}
.single-section hr { border-top: 1px solid #535353; }
.fa { color: #ed6d00; }

@media screen and (max-width: 1050px) {
  .single-post { padding: 15px; }
  .single-ttl,
  .case-post .post-ttl,
  .news-post .post-ttl,
  .blog-post .post-ttl,
  .outlet-post .post-ttl,
  .outlet_single-ttl { font-size: 130%; }
}

/* single reform
 **************************************** */
.twentytwenty-wrapper {
  position: relative;
  z-index: 2;
}
.twentytwenty-container img {
  width: 100% !important;
  bottom: 0;
  margin: auto;
}
.BeforeAfter {
  height: 900px !important;
  overflow: hidden;
  background: #535353;
  display: none;
}
.twentytwenty-wrapper .BeforeAfter { display: block; }
.case_info {
  margin: 25px 0;
  font-size: 100%;
}
.case_info_lst {
  width: calc(100% / 2.05);
  margin-bottom: 15px !important;
}
.case_info_lst:nth-last-child(-n + 2) { margin-bottom: 0; }
.case_info_ttl {
  background: #fff6d9;
  border-radius: 5px;
  padding: 2.5px 17.5px;
  position: relative;
}
.case_info_ttl::before {
  content: '';
  width: 4px;
  height: 20px;
  background: #dbb63a;
  position: absolute;
  left: 7.5px;
  top: 0;
  bottom: 0;
  margin: auto;
  border-radius: 10px;
}
.case_info_content { padding: 0 0 0 15px; }
li.case_info_txt { float: left; }
li.case_info_txt::after {
  content: '/';
  padding: 0 .5em;
}
li.case_info_txt:last-child::after { display: none; }
.carousel {
  position: relative;
  overflow: hidden;
  margin: 20px 20px 0;
}
.carousel .slick-track {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
}
.carousel #arrow {
  left: 0;
  right: 0;
  margin: auto;
}
.carousel_image {
  margin: 0 10px;
  width: 100px;
  height: 100px;
}
.carousel_image a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.carousel_image a:focus { outline: none; }
.carousel_image img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  min-height: 100%;
  width: auto;
  max-width: inherit;
}
#cboxOverlay {
  background: rgba(237, 109, 0, 1);
  cursor: inherit !important;
}
#colorbox, #cboxOverlay, #cboxWrapper {
  overflow: visible !important;
  z-index: 9998 !important;
}
#cboxContent, #cboxLoadedContent {
  background: none;
  padding: 0;
}
#colorbox button:focus { outline: none; }
#cboxPrevious, #cboxNext {
  background: none;
  height: 100%;
  top: 0;
  position: fixed;
  width: 80px;
}
#cboxClose,
#cboxPrevious,
#cboxNext {
  position: absolute !important;
  background-image: none !important;
  width: 60px !important;
  height: 60px !important;
}
#cboxPrevious,
#cboxNext {
  top: 0 !important;
  bottom: 0;
  margin: auto !important;
}
#cboxPrevious {
  left: -60px;
  right: inherit !important;
}
#cboxNext {
  left: inherit !important;
  right: -60px !important;
}
#cboxPrevious::before, #cboxNext::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  content: '';
  width: 40px;
  height: 40px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  display: block;
}
#cboxPrevious::before {
  border-bottom: 2px solid #ee8440;
  border-left: 2px solid #ee8440;
}
#cboxNext::before {
  border-top: 2px solid #ee8440;
  border-right: 2px solid #ee8440;
}
#cboxClose {
  top: -60px !important;
}
#cboxClose::before, #cboxClose::after {
  content: '';
  position: absolute;
  width: 40px;
  height: 2px;
  background-color: #ee8440;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
#cboxClose::before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#cboxClose::after  {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

@media screen and (max-width: 767px) {
  .BeforeAfter {
    height: 87vw !important;
  }
  .carousel {
    margin: 10px 10px 0;
  }
  .carousel_image {
    width: 80px;
    height: 80px;
    margin: 0 5px;
  }
  .slick-arrow {
    width: 30px !important;
  }
  #arrow .slick-prev::before,
  #arrow .slick-next::before {
    width: 15px !important;
    height: 15px !important;
  }
  #cboxClose,
  #cboxPrevious,
  #cboxNext {
    width: 48px !important;
    height: 48px !important;
  }
  #cboxPrevious,
  #cboxNext {
    background-color: #ee8440 !important;
  }
  #cboxPrevious {
    left: -5%;
  }
  #cboxNext {
    right: -5% !important;
  }
  #cboxPrevious::before, #cboxNext::before {
    width: 20px;
    height: 20px;
    border-color: #fff;
  }
  #cboxPrevious::before {
    left: 8px;
  }
  #cboxNext::before {
    right: 8px;
  }
  #cboxClose {
    top: -48px !important;
  }
  .case_info {
    font-size: 95%;
  }
}

/*col1*/
.col1 .single-section,
.col1 .side-section_wrapper {
  float: none;
  width: 100%;
}
.col1 .single-post::after,
.col1 .side-section::after {
  display: none;
}
.col1 .single-ttl {
  font-size: 180%;
}
.col1 .single-catch,
.col1 .single-ttl-sm {
  font-size: 160%;
}
.col1 .single-catch {
  position: relative;
  padding-left: 1em;
}
.col1 .single-catch::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 4px;
  height: 90%;
  background-color: #535353;
  border-radius: 2px;
}
.col1 .case_info_wrapper &gt; *:only-child,
.col1 .case_info_lst {
  width: 100%;
}
.col1 .case_post-text {
  width: calc(70% - 30px);
  margin-right: 30px;
}
.col1 .case_info {
  width: 30%;
  margin: 0;
}
.col1 .case_info_lst:nth-last-child(-n + 2) {
  margin-bottom: 15px;
}
.col1 .case_info_wrapper &gt; *:only-child .case_info_lst {
  width: calc(100% / 2.05);
}
.col1 .case_info_wrapper &gt; *:only-child .case_info_lst:nth-last-child(-n + 2) {
  margin-bottom: 0;
}
.col1 .single-article:last-child {
  margin-bottom: 0 !important;
}
.col1 .single-ttl-sm {
  background-color: #ffe9cd;
  padding: .5em 1em;
}
.col1 .single-catch-sm {
  font-size: 140%;
}
.col1 .single-eyecatch_wrapper &gt; * {
  position: relative;
}
.col1 .single-eyecatch.before {
  max-width: calc(30% - 30px);
  margin-right: 30px;
}
.col1 .single-eyecatch.after {
  max-width: 70%;
}
.col1 .single-eyecatch_wrapper &gt; *:only-child {
  margin-right: 0;
}
.col1 .single-eyecatch_wrapper &gt; *::before,
.col1 .single-eyecatch_wrapper &gt; * span {
  position: absolute;
  bottom: 0;
  right: 0;
}
.col1 .single-eyecatch_wrapper &gt; *::before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
}
.col1 .single-eyecatch.before::before {
  border-color: transparent transparent rgba(83,83,83,.8) transparent;
  border-width: 0 0 55px 60px;
}
.col1 .single-eyecatch.after::before {
  border-color: transparent transparent rgba(237,109,0,.8) transparent;
  border-width: 0 0 75px 80px;
}
.col1 .single-eyecatch_wrapper &gt; * span {
  color: #fff;
  font-weight: bold;
}
.col1 .single-eyecatch.before span {
  font-size: 90%;
  transform: translate(0,-.9em) rotate(-44deg);
}
.col1 .single-eyecatch.after span {
  font-size: 120%;
  transform: translate(-.3em,-.8em) rotate(-44deg);
}
.col1 .other_images {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.col1 .other_image {
  width: calc(100% / 4 - 23px);
  height: 232px;
  margin: 0 30px 30px 0;
}
.col1 .other_image:nth-last-child(-n+4) {
  margin: 0 30px 0 0;
}
.col1 .other_image:nth-child(4n) {
  margin: 0 0 30px;
}
.col1 .other_image:last-child {
  margin: 0;
}
.col1 .other_image a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}
.col1 .other_image img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  min-height: 100%;
  width: auto;
  max-width: inherit;
}
.col1 .side-section {
  background: none;
  padding: 0;
}
.col1 .side-section h3 {
  display: table;
  margin-left: auto;
  margin-right: auto;
  padding-left: .5em;
  padding-right: .5em;
  margin-bottom: 30px !important;
}
.col1 .cat {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.col1 .cat_lst {
  width: calc(100% / 7 - .35em);
  font-size: 110%;
}
.col1 .cat_lst:nth-child(7n-5) {
  width: calc(100% / 7 + 2em);
}
.col1 .cat_lst a {
  display: block;
  background-image: url(../images/common/icon_arrow_b.png);
  background-repeat: no-repeat;
  background-position: left;
  background-size: 1em;
  padding: 0 0 0 25px;
}
.col1 .cat_lst a:hover {
  opacity: 1;
  background-image: url(../images/common/icon_arrow_o.png);
  color: #ed6d00;
}

@media screen and (max-width: 1215px) {
  .col1 .other_image {
    height: 19.8vw;
  }
}

@media screen and (max-width: 767px) {
  .col1 .single-ttl {
    font-size: 150%;
  }
  .col1 .single-catch,
  .col1 .single-ttl-sm {
    font-size: 130%;
  }
  .col1 .case_post-text,
  .col1 .case_info {
    width: 100%;
  }
  .col1 .case_post-text {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
    margin-right: 0;
  }
  .col1 .single-catch-sm {
    font-size: 110%;
  }
  .col1 .single-eyecatch_wrapper {
    font-size: 85%;
  }
  .col1 .single-eyecatch.before {
    max-width: 70%;
    margin-bottom: 16px;
    margin-right: 0;
  }
  .col1 .single-eyecatch.after {
    max-width: 100%;
  }
  .col1 .single-eyecatch.before span {
    transform: translate(.25em,-.8em) rotate(-44deg);
  }
  .col1 .single-eyecatch.before::before {
    border-width: 0 0 45px 50px;
  }
  .col1 .single-eyecatch.after::before {
    border-width: 0 0 65px 70px;
  }
  .col1 .other_image,
  .col1 .other_image:nth-last-child(-n+4),
  .col1 .other_image:nth-child(4n) {
    width: calc(50% - 8px);
    margin: 0 16px 16px 0;
    height: 40.3vw;
  }
  .col1 .other_image:nth-last-child(-n+2) {
    margin: 0 16px 0 0;
  }
  .col1 .other_image:nth-child(2n) {
    margin: 0 0 16px;
  }
  .col1 .other_image:last-child {
    margin: 0;
  }
  .col1 .other_image img {
    transform: translate(-50%,-50%) scale(.8);
  }
  .col1 .cat_lst,
  .col1 .cat_lst:nth-last-child(-n+7),
  .col1 .cat_lst:nth-child(7n),
  .col1 .cat_lst:nth-child(7n-5) {
    width: calc(50% - .5em);
    margin: 0 1em .5em 0;
  }
  .col1 .cat_lst:nth-last-child(-n+2) {
    margin: 0 1em 0 0;
  }
  .col1 .cat_lst:nth-child(2n) {
    margin: 0 0 .5em;
  }
  .col1 .cat_lst:last-child {
    margin: 0;
  }
  .col1 .cat_lst a {
    line-height: 1.5;
  }
}

/* single outlet
 **************************************** */
.outlet_single-wrap {
  overflow: hidden;
}
.outlet_single-ttl {
  font-size: 210%;
  line-height: 1.5em;
}
.outlet_post-img {
  width: 400px;
  height: 300px;
  display: inline-block;
  float: left;
  margin-right: 20px;
  border-radius: 5px;
  position: relative;
}
.outlet_post-text {
  width: 100%;
  clear: both;
  font-size: 118%;
}
.btn_contact {
  position: relative;
  z-index: 2;
  font-size: 115%;
  background: #f55;
  padding: 10px 20px;
  border-radius: 5px;
  white-space: nowrap; /*for safari*/
}
.price-single {
  display: flex;
  align-items: center;
  margin-bottom: 16px;
}
.price-single-wrap {
  position: relative;
  width: 224px;
  height: 65px;
  margin-left: 16px;
}
.price-single-wrap .price-back {
  transform-origin: left top;
  width: 100%;
  height: 100%;
}
.single-post .price {
  position: absolute;
  top: 50%;
  left: 50%;
  right: auto;
  bottom: auto;
  text-align: right;
  font-size: 264%;
  white-space: nowrap;
  transform: translateX(-50%) translateY(-30%);
  line-height: .5;
  text-align: right;
}
.single-post .price small {
  font-size: 31%;
}
.single-post .soldout_wrapper {
  top: auto;
  bottom: 18px;
  left: 14px;
  transform: scale(1.2) rotate(15deg);
}

@media screen and (max-width: 1050px) {
  .outlet_single-wrap {
    width: 100%
  }
  .single-post .outlet_post-img {
    width: 100%;
    height:300px;
    max-width: 300px;
    margin: 0 auto;
    overflow: hidden;
  }
  .price-single {
    justify-content: center;
    width: 100%;
  }
}

/* single requirement
 **************************************** */
.single-section .requirement-table {
  width: 100%;
  font-size: 115%;
  border: 0;
}
.single-section .requirement-table th,
.single-section .requirement-table td {
  border: none;
  padding: 1em;
}
.single-section .requirement-table th {
  background-color: transparent;
  border-bottom: 2px solid #ed6d00;
  color: #ed6d00;
}
.single-section .requirement-table td {
  border-bottom: 2px solid #eee;
}

@media screen and (max-width: 767px) {
  .single-section .requirement-table th,
  .single-section .requirement-table td {
    display: block;
    width: 100%;
    padding: .5em 1em;
  }
}

/* Wysiwyg editor
 **************************************** */
.wysiwyg {
  text-align: justify;
  text-justify: inter-ideograph;
  -ms-text-justify: inter-ideograph;
}
.wysiwyg ul,
.wysiwyg ol {
  margin: 1em 0;
} 
.wysiwyg ul li,
.wysiwyg ol li {
  position: relative;
  margin: 0;
  border-bottom: none;
  padding: 0;
  margin-left: 2em;
  padding-top: 8px;
  line-height: 1.65;
}
.wysiwyg ul li {
  margin: 0;
  padding-left: 2em;
}
.wysiwyg ul li::before {
  content: "\f185";
  position: absolute;
  left: 14px;
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 14px;
  padding-top: 6px;
  font-weight: normal;
}
.wysiwyg ol li {
  list-style-type: decimal;
}
.wysiwyg img {
  margin: 20px 0;
  max-width: 100%;
  height: auto;
}
.wysiwyg hr {
  border-top: 3px double #ccc;
  background: transparent;
}
.wysiwyg .alignleft {
  float: left;
  clear: left;
  margin: 0 30px 30px 0;
}
.wysiwyg .alignright {
  float: right;
  clear: right;
  margin: 0 0 30px 30px;
}
.wysiwyg .aligncenter {
  display: block;
  margin: 30px auto;
}
.wysiwyg table {
  border: 2px solid #ccc;
  max-width: 100%;
  margin: 20px 0;
  line-height: 1.6;
}
.wysiwyg a,
.text-link {
  text-decoration: underline;
  color: #d00a23;
}
.wysiwyg table th,
.wysiwyg table td {
  padding: 8px 16px;
  border: 1px solid #ccc;
  font-size: 93%;
  vertical-align: middle;
}
.wysiwyg table th {
  white-space: nowrap;
}
.wysiwyg h1,
.wysiwyg h2,
.wysiwyg h3,
.wysiwyg h4,
.wysiwyg h5 {
  font-weight: normal;
  border-left: 5px solid;
  padding-left: 10px;
  line-height: 1;
  margin-bottom: 20px;
}
.wysiwyg h1 { font-size: 172%; }
.wysiwyg h2 { font-size: 158%; }
.wysiwyg h3 { font-size: 143%; }
.wysiwyg h4 { font-size: 129%; }
.wysiwyg h5 { font-size: 115%; }

.wysiwyg p {
  margin-bottom: 1em;
  letter-spacing: .1em;
}
.wysiwyg blockquote {
  margin: 1em 0;
  padding: 15px 40px;
  border-radius: 3px;
  position: relative;
  display: inline-block;
  font-style: oblique;
  color: #666;
}
.wysiwyg blockquote p { margin-bottom: 0; }
.wysiwyg blockquote::before,
.wysiwyg blockquote::after {
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transform: translate(0, 0);
  font-size: 100%;
  position: absolute;
  width: 1em;
  height: 1em;
}
.wysiwyg blockquote::before {
  content:  '\f10d ';
  top: 13px;
  left: 10px;
}
.wysiwyg blockquote::after {
  content:  '\f10e ';
  bottom: 13px;
  right: 10px;
}

@media screen and (max-width: 767px) {
  .wysiwyg { font-size: 100%; }
  .wysiwyg .alignright,
  .wysiwyg .alignleft  {
    float: none;
    margin: 20px auto;
    display: block;
  }
  .wysiwyg blockquote { padding: 15px; }
  .wysiwyg blockquote::before {
    top: 0;
    left: 0;
  }
  .wysiwyg blockquote::after {
    bottom: 0;
    right: 0;
  }
  .wysiwyg ul li,
  .wysiwyg ol li { margin-left: 1em; }
  .wysiwyg ul li { padding-left: 0; }
  .wysiwyg ul li::before {
    left: -14px;
    padding-top: 6px;
    font-size: 12px;
  }
  div.box-graybg,
  div.box-line { padding: 25px; }
}

/* pagenav
 **************************************** */
#pageNav {
  z-index: 1;
  position: relative;
}
#pageNav li {
  display: inline-block;
  vertical-align: top;
  color: #ed6d00;
}
#pageNav a { color: #ed6d00; }


/* =====================================================================================

    SIDEBAR

===================================================================================== */
.side-section_wrapper { width: 240px; }
.side-section {
  background: #fff;
  margin: 0 0 16px;
  border-radius: 5px;
  padding: 16px;
  position: relative;
}
.side-section:last-child { margin: 0; }
.side-section h3 {
  border-bottom: 3px solid;
  font-size: 140%;
}
.side-section .cat-item {
  line-height: 1.25em;
  display: inline-block;
}
.side-section .cat-item-none { display: none; }
.side-section .post-item,
.side-section.yearlyarchive li {
  border-bottom: 1px dashed #bebebe;
  line-height: 1em;
  overflow: hidden;
}
.side-section .post-item:last-child,
.side-section.yearlyarchive li:last-child { border-bottom: none; }
.side-section .post-link { display: block; }
.side-section .post-rgt,
.side-section .post-link { height: 100%; }
.side-section .post-date {
  font-size: 70%;
  text-align: right;
  margin-bottom: 8px;
}
.side-section .post-cat { display: none; }
.side-section .post-ttl {
  font-weight: normal;
  height: 3em;
  line-height: 1.5em;
  margin: 0;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  color: #535353;
}
.side-section .post-content { display: none; }
.side-section .post-eyecatch {
  width: 60px;
  height: 60px;
  display: inline-block;
  float: left;
  margin: 0 1em 0 0;
  border-radius: 5px;
}
.sns-btn span { vertical-align: top !important; }

@media screen and (max-width: 1050px) {
  .side-section_wrapper {
    width: 100%;
    float: none;
  }
  .side-section h3 { font-size: 125%; }
}

/* sidebar blog, outlet, news
 **************************************** */
.side-category .cat-item {
  display: block;
  width: 100%;
  padding: 0;
}
.side-category .cat-item:last-child a { border-bottom: none; }
.side-category .cat-item a {
  display: block;
  width: 100%;
  padding: 10px 0;
  border-bottom: 1px dashed #bebebe;
}
.side-category .children { border-bottom: 1px dashed #bebebe; }
.side-category .children li { padding: 0; }
.side-category .children a,
.side-category .children .children {
  border: none;
  padding-left: 20px;
}
.side-category .children a { position: relative; }
.side-category .children a::before {
  content: '';
  width: 6px;
  height: 6px;
  border-bottom: 1px solid #aaa;
  border-left: 1px solid #aaa;
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 5px;
  margin: auto;
}
.yearlyarchive li { padding: 0; }
.yearlyarchive a {
  padding: 10px 0;
  display: block;
}

/* sidebar outlet
 **************************************** */
.side-section.outlet-side { padding: 0; }
.outlet-side-head {
  width: 100%;
  height: 32px;
  background-color: #e26910;
  border-top: 4px solid #652f08;
  margin-bottom: 8px;
}
.side-section .outlet-side-ttl {
  display: inline-block;
  position: relative;
  padding: 0 8px;
  background-image: linear-gradient(180deg, #f6d365 0%, #fda085 100%);
  border-radius: 7px;
  border: 2px solid #fff;
  color: #242424;
  -webkit-box-shadow: 2px 3px 8px 0px rgba(0, 0, 0, .42);
  box-shadow: 2px 3px 8px 0px rgba(0, 0, 0, .42);
  transform: rotate(-3deg) translateY(-13px) translateX(4px);
}
.outlet-side-ttl::before {
  position: absolute;
  content: '';
  top: 100%;
  left: 18px;
  border: 10px solid transparent;
  border-top: 10px solid #fff;
  width: 0;
  height: 0;
}
.outlet-side-ttl::after {
  position: absolute;
  content: '';
  top: 91%;
  left: 18px;
  border: 10px solid transparent;
  border-top: 10px solid #fda085;
  width: 0;
  height: 0;
}
.outlet-side .side-category .cat-item a {
  position: relative;
  padding: 15px 28px;
}
.outlet-side .side-category .cat-item a::before,
.outlet-side .side-category .cat-item a::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: '';
  vertical-align: middle;
}
.outlet-side .side-category .cat-item a::before {
  left: 8px;
  width: 12px;
  height: 12px;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: #e26910;
}
.outlet-side .side-category .cat-item a::after {
  left: 13px;
  box-sizing: border-box;
  width: 3px;
  height: 3px;
  border: 3px solid transparent;
  border-left: 3px solid #fff;
}

/* sidebar case
 **************************************** */
.cat-area_ttl {
  font-weight: normal;
  font-size: 125%;
  border-bottom: 1px dashed #bebebe;
  overflow: hidden;
  position: relative;
  padding: 5px 65px 5px 0;
}
.cat-area_lst { padding: 0 !important; }
.cat-area_lst:last-child .cat-area_ttl { border-bottom: none; }
.btn_cat-area {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  display: -webkit-flex;
  -webkit-align-items: center;
  display: flex;
  align-items: center;
}
.btn_cat-area_txt {
  padding: 2.5px 17.5px 2.5px 10px;
  border-radius: 20px;
  position: relative;
  font-size: 65%;
  white-space: nowrap; /*for safari*/
}
.btn_cat-area_txt::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 7.5px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 4px 0 4px;
  border-color: #ed6d00 transparent transparent transparent;
  transition: .4s;
}
.btn_cat-area.active &gt; .btn_cat-area_txt::after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.cat-area_inner {
  font-size: 115%;
  padding: 10px 0;
  display: none;
}
.pref_ttl,
.city_ttl { display: block; }
.pref,
.city { padding: 0 !important; }
.pref_ttl {
  padding: 2.5px 7.5px;
  border-radius: 5px;
}
.city_ttl {
  padding: 2.5px 7.5px 2.5px 25px;
  position: relative;
}
.city_ttl::before {
  content: '';
  width: 6px;
  height: 6px;
  border-bottom: 1px solid #aaa;
  border-left: 1px solid #aaa;
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 10px;
  margin: auto;
}

@media screen and (max-width: 1050px) {
  .cat-area_ttl { font-size: 115%; }
  .cat-area_inner { font-size: 100%; }
}

/* sidebar requirement
 **************************************** */
.requirement-side-section {
  position: relative;
  padding-top: 42px;
}
.requirement-side-ttl {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  border-bottom: 0;
  background-color: #666;
  color: #fff;
  text-align: center;
  padding: 6px 16px 0;
}
.requirement-side-category .cat-item a {
  padding: 14px 0;
  font-size: 107%;
}


/* =====================================================================================

    THANKS

===================================================================================== */
#thanks .side-section_wrapper { display: none; }</pre></body></html>