@charset "utf-8";
.ajax-loader {
  display: none !important;
}
html[lang="ja"] {
  margin: 0 !important;
}
body {
  font-size: 3.6vw;
  text-align: justify;
  text-justify: inter-ideograph;
}
.pc-only {
  display: none !important;
}
#wpadminbar {
  display: none !important;
}
@media all and (min-width:501px) {
  body {
    font-size: 18px;
  }
}
.inner {
  width: 90%;
  margin: auto;
}
#splash {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  background: #fff;
  z-index: 10000;
  pointer-events: none;
  transition: all 1s ease .5s;
}
#splash .loader {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
#splash svg path, #splash svg rect {
  fill: #FF6700;
}
body.page__open #splash {
  opacity: 0;
}
#anchor-kengaku {
  padding: 40px 0 0;
  margin: -40px 0 0;
}
#first-movie {
  position: fixed;
  z-index: 100000;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 120%;
  height: 120%;
  background: #fff;
  transition: all 3s;
}
#first-movie video {
  width: 100%;
  height: 100%;
  outline: none;
  border: none;
}
body.movie__end #first-movie {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
/* == parts ============================================== */
.btn_arrow {
  margin: 0 auto;
  text-align: right;
}
.btn_arrow a {
  display: inline-block;
  position: relative;
  font-weight: 600;
  padding: 5px 40px 5px 15px;
  overflow: hidden;
  transform-origin: right bottom;
}
.btn_arrow a::before {
  content: '';
  width: 100%;
  height: 1px;
  background: #231815;
  position: absolute;
  left: 0;
  bottom: 0;
  transition: all .2s ease .3s;
}
.btn_arrow a::after {
  content: '';
  width: 30px;
  height: 1px;
  background: #231815;
  position: absolute;
  right: 0;
  bottom: 0;
  transform-origin: right bottom;
  transform: rotateZ(45deg);
  transition: all .2s;
}
.btn_base {
  width: 85%;
  max-width: 360px;
  margin: 12% auto 0;
  border: solid 1px #231815;
  border-radius: 10px;
  overflow: hidden;
  text-align: center;
  background: #fff;
}
.btn_base a {
  display: block;
  padding: 25px 0;
  line-height: 1;
  position: relative;
  font-size: 125%;
  font-weight: 600;
}
.btn_base a::before {
  content: '';
  width: 0%;
  height: 100%;
  background: #90ac5c;
  position: absolute;
  right: -20%;
  top: 0;
  transition: all .4s;
  transform: skewX(-45deg);
}
.btn_base.arrow2 a::before {
  background: #f39a59;
}
.btn_base.touch__start a::before {
  left: -20%;
  right: auto;
  width: 140%;
}
.btn_base a::after {
  content: '';
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent #90ac5c;
  transition: all .4s;
  z-index: 2;
}
.btn_base a.anchor::after {
  border-width: 10px 10px 0 10px;
  border-color: #90ac5c transparent transparent transparent;
}
.btn_base.arrow2 a::after {
  border-color: transparent transparent transparent #f39a59;
}
.btn_base.touch__start a::after {
  border-color: transparent transparent transparent #fff !important;
}
.btn_base span {
  position: relative;
  z-index: 2;
  transition: all .4s;
}
.btn_base.touch__start a span {
  color: #fff;
}
.btn_big {
  width: 80%;
  max-width: 400px;
  margin: 30px auto;
  border: solid 1px #90ac5c;
  text-align: center;
  transition: all .3s;
  position: relative;
  border-radius: 10px;
  z-index: 5;
  -webkit-animation: fuwa 2s ease 0s infinite alternate;
  animation: fuwa 2s ease 0s infinite alternate;
  box-shadow: 0px 0px 5px 1px #bbb;
}
@-webkit-keyframes fuwa {
  0% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(10px);
  }
}
@keyframes fuwa {
  0% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(10px);
  }
}
.btn_big::after {
  content: "";
  width: 90%;
  height: 10px;
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  right: 0;
  margin: auto;
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
  z-index: 10;
  transition: .3s;
  -webkit-animation: fuwa2 2s ease 0s infinite alternate;
  animation: fuwa2 2s ease 0s infinite alternate;
}
@-webkit-keyframes fuwa2 {
  0% {
    transform: translateY(10px);
    width: 50%;
  }
  100% {
    transform: translateY(0px);
    width: 80%;
  }
}
@keyframes fuwa2 {
  0% {
    transform: translateY(10px);
    width: 50%;
  }
  100% {
    transform: translateY(0px);
    width: 80%;
  }
}
.btn_big a {
  display: block;
  font-size: 135%;
  font-weight: 600;
  padding: 5% 0;
  color: #fff;
  position: relative;
  transition: all .4s;
  background: #90ac5c;
  border-radius: 6px;
}
.btn_big a::before {
  content: '';
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent #fff;
  transition: all .4s;
  z-index: 2;
}
.title_center {
  text-align: center;
  font-size: 170%;
  font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho ProN', '游明朝', 'Yu Mincho', '游明朝体', 'YuMincho', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', 'MS PMincho', serif;
  margin: 0 0 30px;
  position: relative;
  letter-spacing: 2px;
  line-height: 2;
}
.title_center.bg-ki {
  padding: 150px 0 0;
  background: url(../img/title-ki01.jpg) no-repeat center top 135px;
  background-size: 160px 20px;
}
.title_center.bg-ki::before {
  content: '';
  width: 160px;
  height: 135px;
  background: url(../img/title-ki02.jpg) no-repeat center;
  background-size: contain;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  transform-origin: center bottom;
  margin: auto;
  -webkit-animation: ki 10s ease 0s infinite;
  animation: ki 10s ease 0s infinite;
}
.title_center.bg-ki-gif01::after {
  content: '';
  position: absolute;
  top: 20px;
  left: 0;
  right: 0;
  margin: auto;
  width: 240px;
  height: 135px;
  background: url("../img/gif/aoba001.gif") no-repeat;
  background-size: contain;
  z-index: 5;
}
.title_center.bg-ki-gif02::after {
  content: '';
  position: absolute;
  top: 20px;
  left: 0;
  right: 0;
  margin: auto;
  width: 240px;
  height: 135px;
  background: url("../img/gif/aoba002.gif") no-repeat;
  background-size: contain;
  z-index: 5;
}
.title_center.bg-ki-gif03::after {
  content: '';
  position: absolute;
  top: 20px;
  left: 0;
  right: 0;
  margin: auto;
  width: 240px;
  height: 135px;
  background: url("../img/gif/aoba003.gif") no-repeat;
  background-size: contain;
  z-index: 5;
}
@-webkit-keyframes ki {
  0% {
    transform: rotateZ(3deg);
  }
  25% {
    transform: rotateZ(-3deg);
  }
  50% {
    transform: rotateZ(3deg);
  }
  75% {
    transform: rotateZ(-3deg);
  }
  100% {
    transform: rotateZ(3deg);
  }
}
@keyframes ki {
  0% {
    transform: rotateZ(3deg);
  }
  25% {
    transform: rotateZ(-3deg);
  }
  50% {
    transform: rotateZ(3deg);
  }
  75% {
    transform: rotateZ(-3deg);
  }
  100% {
    transform: rotateZ(3deg);
  }
}
.title_center span.en {
  display: block;
  font-size: 50%;
}
.title_center span.follow {
  font-size: 60%;
  display: block;
  letter-spacing: 6px;
}
.scroll_anime .title_center {
  opacity: 0;
  transform: translateY(-30px);
  transition: all 1.5s ease .2s;
  letter-spacing: -5px;
}
.scroll__start .title_center {
  opacity: 1;
  transform: translateY(0);
  letter-spacing: 2px;
}
.lead_center {
  text-align: center;
  font-size: 150%;
  font-weight: 600;
  font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho ProN', '游明朝', 'Yu Mincho', '游明朝体', 'YuMincho', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', 'MS PMincho', serif;
  margin: 12% 0 6%;
}
.scroll_anime .lead_center {
  opacity: 0;
  transition: all 1.8s ease .4s;
  letter-spacing: -5px;
}
.scroll__start .lead_center {
  opacity: 1;
  letter-spacing: 0;
}
.bg-fixed {
  height: 0;
  padding: 100% 0 0;
  background-size: cover;
  background-position: center;
}
.bg-fixed.fixed01 {
  background-image: url(../img/works-bg.jpg);
}
.btn_link {
  max-width: 360px;
  width: 90%;
  margin: 3%;
  background: rgba(60, 86, 42, 0.8);
  text-align: center;
  border-radius: 6px;
  transition: all .3s;
}
.btn_link a {
  display: table;
  width: 100%;
  height: 80px;
  color: #fff;
  font-size: 115%;
  font-weight: 600;
  position: relative;
  line-height: 1.5;
}
.btn_link a::after {
  content: '';
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent #fff;
  transition: all .4s;
  z-index: 2;
}
.btn_link span {
  display: table-cell;
  vertical-align: middle;
}
.btn_wrap {
  text-align: center;
}
/* == header ============================================== */
header .h-main {
  position: fixed;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 1000;
}
header .inner::after {
  content: '';
  display: block;
  clear: both;
}
header .inner h1 {
  float: left;
  width: 113px;
  margin: 11px 0 0;
  position: relative;
  z-index: 1000;
}
header .inner h1 img {
  vertical-align: top;
}
/**/
.menu-trigger {
  position: absolute;
  right: 10px;
  top: 10px;
  width: 32px;
  height: 36px;
  background: none;
  border: none;
  appearance: none;
  cursor: pointer;
  z-index: 101;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #231815;
  border-radius: 4px;
  margin: auto;
  transition: all .4s;
}
.menu-trigger span:nth-of-type(1) {
  top: 4px;
}
.menu-trigger span:nth-of-type(2) {
  top: 0;
  bottom: 0;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 4px;
}
body.nav__open .menu-trigger span:nth-of-type(1) {
  transform: translateY(12.5px) rotate(-45deg);
}
body.nav__open .menu-trigger span:nth-of-type(2) {
  opacity: 0;
}
body.nav__open .menu-trigger span:nth-of-type(3) {
  transform: translateY(-12.5px) rotate(45deg);
}
/**/
header nav {
  position: fixed;
  left: -100%;
  top: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  padding: 60px 0 0;
  background: #fff;
  z-index: 100;
  transition: all .5s ease 0s;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}
body.nav__open nav {
  left: 0;
}
.list_main-nav {
  overflow: hidden;
  border-bottom: dashed 1px #999;
}
.list_main-nav > li {
  border-top: dashed 1px #999;
}
.list_main-nav > li > a {
  display: block;
  padding: 2.5% 25px;
  font-weight: 600;
  position: relative;
  transition: all .4s;
}
.list_main-nav > li > a::after {
  content: '';
  width: 0px;
  height: 0px;
  background: #ff8c00;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 10px;
  margin: auto;
  transition: all .4s;
  pointer-events: none;
}
.list_main-nav > li.active a {
  color: #ff8c00;
}
#page_concept .list_main-nav li.list01 > a::after, #page_works .list_main-nav li.list02 > a::after, #page_model-house .list_main-nav li.list03 > a::after, #page_blog .list_main-nav li.list04 > a::after, #page_company .list_main-nav li.list05 > a::after, #page_contact .list_main-nav li.list06 > a::after, #page_movie .list_main-nav > li.list07 > a::after, #page_realty .list_main-nav > li.list08 > a::after {
  width: 8px;
  height: 8px;
  bottom: 0;
  top: 0;
  margin: auto;
}
#page_concept .list_main-nav li.list01 > a, #page_works .list_main-nav li.list02 > a, #page_model-house .list_main-nav li.list03 > a, #page_blog .list_main-nav li.list04 > a, #page_company .list_main-nav li.list05 > a, #page_contact .list_main-nav li.list06 > a, #page_realty .list_main-nav li.list08 > a, #page_movie .list_main-nav > li.list07 > a {
  color: #ff8c00;
}
.list_sub-nav a {
  display: block;
  padding: 2% 35px;
  font-weight: 600;
  border-top: dashed 1px #ccc;
  color: #666;
  position: relative;
}
.list_sub-nav a::before {
  content: '';
  width: 8px;
  height: 1px;
  background: #666;
  position: absolute;
  left: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
}
/**/
.list_h-side {
  position: fixed;
  left: 0;
  width: 100%;
  bottom: 0;
  z-index: 1001;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.list_h-side li {
  line-height: 1;
  transition: all .3s;
  border-right: none !important;
  color: #fff;
  text-align: center;
  width: 100%;
  position: relative;
}
.list_h-side li:nth-child(1) {
  background: #729b3c;
}
.list_h-side li:nth-child(2) {
  background: #db7830;
}
.list_h-side li:nth-child(3) {
  background: #5c6c63;
}
.list_h-side a {
  display: block;
  padding: 12% 0;
  font-weight: 600;
}
/**/
.list_h-side .side_select {
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100%;
  box-sizing: border-box;
  background: #FDFCE4;
  opacity: 0;
  pointer-events: none;
  transition: all .4s;
}
.list_h-side li.select--active .side_select {
  top: -100%;
  opacity: 1;
  pointer-events: auto;
}
.list_h-side .side_select .selectWrap {
  display: flex;
	height: 100%;
}
.list_h-side .side_select p {
  width: 50vw;
  height: 100%;
  text-align: center;
  box-sizing: border-box;
}
.list_h-side .side_select p + p {
  border-left: solid 1px #000;
}
.list_h-side .side_select a {
  padding: 0;
  color: #000 !important;
	display: flex;
	align-items: center;
	height: 100%;
}
.list_h-side .side_select a span{
	display: block;
	width: 100%;
}
/* == footer ============================================== */
footer {
  border-top: solid 1px #4c4948;
  padding: 6% 0 15%;
}
footer .inner {
  overflow: hidden;
  margin: 0 auto 30px;
  width: 90%;
}
footer .area_info .logo-sns {
  margin: 0 0 15px;
}
footer .area_info .logo-sns .logo {
  width: 50%;
  display: inline-block;
  vertical-align: middle;
}
footer .area_info .logo-sns .list_f-sns {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 0 5%;
  width: 43%;
}
footer .area_info .logo-sns .list_f-sns li {
  display: inline-block;
  vertical-align: middle;
  margin: 0 7% 0 0;
  width: 23%;
}
footer .area_info address {
  font-size: 94%;
  margin: 0 0 8%;
}
footer .area_nav {
  overflow: hidden;
}
footer .area_nav .list_f-nav {
  float: left;
  width: 50%;
}
footer .area_nav .list_f-nav li.margin {
  margin: 10px 0 0;
}
footer .area_nav .list_f-nav a {
  display: block;
  font-size: 88%;
  font-weight: 600;
  position: relative;
  transition: all .4s;
  padding: 3px 0;
}
footer .area_nav .list_f-nav .small-link a {
  font-weight: 400;
}
footer .area_nav .list_f-nav.last-nav {
  overflow: hidden;
  width: 100%;
}
footer .area_nav .list_f-nav.last-nav li {
  float: left;
  width: 50%;
  padding: 5px 0 0;
}
footer .copyright {
  text-align: center;
  font-size: 75%;
}
#pagetop {
  width: 45px;
  height: 45px;
  background-color: #90ac5c;
  position: fixed;
  right: 10px;
  bottom: 60px;
  z-index: 100;
  cursor: pointer;
  transition: all .3s;
}
#pagetop:hover {
  opacity: .7;
}
#pagetop::before {
  content: '';
  width: 15px;
  height: 15px;
  box-sizing: border-box;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  left: 0;
  top: 0;
  bottom: -10px;
  right: 0;
  margin: auto;
  transform: rotateZ(-45deg);
}
/* == frontpage ==============================================*/
.block_front-top {
  height: 0;
  padding: 157% 0 0;
  position: relative;
  overflow: hidden;
}
.block_front-top .top-slide {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.block_front-top .top-slide .slick-list {
  pointer-events: none;
}
.block_front-top .top-slide .slide-contents img {
  vertical-align: top;
}
.block_front-top .main-title {
  position: absolute;
  bottom: 15%;
  width: 40%;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 5;
}
/*----------------------------------------*/
.block_front-info {
  padding: 60px 0 120px;
  position: relative;
  z-index: 4;
}
.block_front-info .pen {
  position: absolute;
  left: 0;
  top: 130px;
  transform: translate3d(-100px, 0px, 0) rotateZ(-45deg);
  width: 25%;
  transition: all 2s ease .3s;
}
.block_front-info.scroll__start .pen {
  transform: translate3d(0, 0, 0) rotateZ(0);
}
.block_front-info .info-title {
  background: url(../img/info-title.png) no-repeat center top;
  background-size: 240px 95px;
  padding: 65px 0 50px;
  font-size: 115%;
  box-sizing: border-box;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.block_front-info .info-title::before {
  content: '';
  width: 100%;
  height: 100%;
  background: #fff;
  position: absolute;
  left: 0;
  top: 0;
  transition: all 2s ease .3s;
}
.block_front-info.scroll__start .info-title::before {
  left: 100%;
}
.block_front-info .list_info {
  opacity: 0;
  transform: translateX(-50px);
  transition: all 2s ease 1s;
}
.block_front-info.scroll__start .list_info {
  opacity: 1;
  transform: translateX(0px);
}
.list_info {
  margin: 0 0 8% 0;
}
.list_info a {
  display: block;
  overflow: hidden;
  padding: 10px 0;
  font-size: 94%;
  line-height: 1.5;
}
.list_info span.date {
  float: left;
  width: 35%;
  color: #90ac5c;
}
.list_info span.cat {
  float: left;
  width: 35%;
  color: #fff;
  background: #90ac5c;
  text-align: center;
}
.list_info span.title {
  clear: both;
  display: block;
  transition: all .2s;
  padding: 8px 0 0;
}
.block_front-info .btn_arrow {
  opacity: 0;
  transform: translateX(-50px);
  transition: all 2s ease 1.5s;
}
.block_front-info.scroll__start .btn_arrow {
  opacity: 1;
  transform: translateX(0px);
}
/*----------------------------------------*/
.block_front-about {
  padding: 0 0 30%;
  position: relative;
  z-index: 3;
}
.block_front-about::after {
  content: '';
  width: 35%;
  height: auto;
  padding: 46% 0 0;
  background: url(../img/ha01.png) no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  bottom: -10%;
  opacity: 0;
  transform: translateY(-200px) skewY(45deg);
  transition: 4s ease-out .2s;
}
.block_front-about.scroll__start::after {
  transform: translateY(0);
  opacity: 1;
}
.block_front-about .about-bg {
  background: url(../img/about-bg.jpg) no-repeat center;
  background-size: cover;
  overflow: hidden;
  padding: 50% 0 0;
}
.block_front-about .white-box {
  box-sizing: border-box;
  background: rgba(255, 255, 255, .6);
  padding: 10% 0 5%;
  transform: translateY(100%);
  transition: all 2s ease-out .5s;
}
.block_front-about .about-bg.scroll__start .white-box {
  transform: translateY(0);
}
.block_front-about .white-box .box-title {
  text-align: center;
  font-size: 140%;
  font-weight: 600;
  box-sizing: border-box;
  opacity: 0;
  transform: skewX(10deg) rotateZ(15deg);
  transition: all 1.5s ease 1.5s;
  transform-origin: center;
  margin: 0 0 5%;
}
.block_front-about .about-bg.scroll__start .white-box .box-title {
  opacity: 1;
  transform: none;
}
.block_front-about .white-box .box-text {
  line-height: 2;
  opacity: 0;
  transform: skewX(-5deg) rotateZ(10deg);
  transition: all 1.5s ease 1.5s;
  width: 96%;
  margin: auto;
  font-size: 94%;
}
.block_front-about .about-bg.scroll__start .white-box .box-text {
  opacity: 1;
  transform: none;
}
/*----------------------------------------*/
.block_front-event {
  background: #f7f0ea;
  padding: 15% 0;
  position: relative;
  z-index: 2;
  margin: 0 0 20%;
}
/*
.block_front-event::after {
    content: '';
    width: 150px;
    height: 74px;
    background: url(../img/dog.png) no-repeat;
    background-size: contain;
    position: absolute;
    right: 5%;
    bottom: -30px;
    opacity: 0;
    transform: translateY(-50px) skewX(-15deg);
    transition: all 4s ease .3s;
}
*/
.block_front-event.scroll__start::after {
  opacity: 1;
  transform: translateY(0);
}
.block_front-event .slick-slide {
  margin: 0 10px;
}
.block_front-event .event-slide .slide-contents a {
  display: block;
}
.block_front-event .slide-contents .slide-title {
  font-size: 115%;
  font-weight: 600;
  margin: 10px 0 0;
}
/*----------------------------------------*/
.block_front-works {
  margin: 0 0 20%;
}
.block_front-works .works-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.block_front-works .works-flex > div::before {
  display: none !important;
}
.block_front-works .works-flex > div {
  width: 50%;
}
.block_front-works .works-flex > div:nth-child(5) {
  display: none;
}
.block_front-works .works-flex > div.long {
  width: 100%;
}
.block_front-works .works-flex > div > a > img {
  vertical-align: top;
  width: 150%;
  max-width: none;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.block_front-works .works-flex > div.long > a > img {
  width: 100%;
}
.block_front-works .works-flex a {
  display: block;
  width: 100%;
  height: 0;
  position: relative;
  overflow: hidden;
  padding: 100% 0 0;
}
.block_front-works .works-flex .long a {
  padding: 50% 0 0;
}
.block_front-works .works-flex a::before {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, .6);
  width: 100%;
  height: 100%;
  transition: all 1s ease 1s;
  opacity: 0;
  z-index: 3;
}
.block_front-works .works-flex .text-box {
  position: absolute;
  width: 90%;
  left: 5%;
  bottom: 5%;
  color: #fff;
  font-weight: 600;
  opacity: 0;
  transform: translateY(30px);
  transition: all 1.5s ease 1s;
  font-size: 82%;
  line-height: 1.5;
  z-index: 5;
}
.block_front-works .works-flex .text-box .works-title img {
  width: 56px;
}
.block_front-works .works-flex .scroll__start a::before {
  opacity: 1;
}
.block_front-works .works-flex .touch__start a::before {
  opacity: .3;
  transition: all .5s ease 0s;
}
.block_front-works .works-flex .scroll__start a .text-box {
  transform: translateY(0);
  opacity: 1;
}
.block_front-works .works-flex .text-box .case-number {
  font-size: 200%;
  font-weight: 400;
  vertical-align: middle;
}
.block_front-works .works-flex .text-box .works-title img {
  vertical-align: middle;
  margin: 0 8px 0 0;
}
/*----------------------------------------*/
.block_front-house {
  margin: 20% 0 15%;
}
.block_front-house .house-bg {
  background: url(../img/house-img.jpg) no-repeat center;
  background-size: cover;
  height: 0;
  padding: 53% 0 0;
  margin: 0 0 10%;
}
.block_front-house .house-text {
  text-align: center;
  line-height: 2.3;
}
/*----------------------------------------*/
.block_front-lineup {
  position: relative;
  padding: 25% 0 30%;
  overflow: hidden;
}
.block_front-lineup::before {
  content: '';
  width: 25%;
  height: 0;
  padding: 32% 0 0;
  background: url(../img/ha02.png) no-repeat;
  background-size: contain;
  position: absolute;
  right: 1%;
  top: 2%;
  opacity: 0;
  transition: 3s ease-out .2s;
  transform: translateY(200px) skewX(45deg);
}
.block_front-lineup.scroll__start::before {
  opacity: 1;
  transform: translateY(0);
}
.block_front-lineup::after {
  content: '';
  width: 24%;
  height: 0;
  padding: 30% 0 0;
  background: url(../img/ha03.png) no-repeat;
  background-size: contain;
  position: absolute;
  left: 5%;
  bottom: 0%;
  opacity: 0;
  transition: 4s ease-out .2s;
  transform: translateY(-200px) skewX(-45deg);
  pointer-events: none;
}
.block_front-lineup.scroll__start::after {
  opacity: 1;
  transform: translateY(0);
}
.block_front-lineup .lineup_lead {
  text-align: center;
  font-size: 150%;
  font-weight: 700;
  margin: 0 0 17%;
}
.block_front-lineup .lineup_lead strong {
  font-size: 116.7%;
}
.block_front-lineup .lineup-box {
  position: relative;
  margin: 12% auto;
  text-align: center;
}
.block_front-lineup .lineup-box.scroll-bar {
  padding: 0 0 140px;
  margin: 0 0 60px;
}
.block_front-lineup .lineup-box .left {
  margin: 0 0 15%;
}
.block_front-lineup .lineup-box .left img {
  width: 70%;
}
.block_front-lineup .lineup-box .right img {
  width: 80%;
}
.block_front-lineup .lineup-box .lineup-name {
  margin: 10px 0 0;
  font-weight: 600;
}
.block_front-lineup .lineup-link {
  margin: auto;
  overflow: hidden;
}
.block_front-lineup .lineup-link .link-text {
  text-align: center;
  line-height: 2;
  font-size: 94%;
  margin: 0 auto 10%;
}
/*----------------------------------------*/
.block_front-sns {
  margin: 0 auto 35%;
}
.list_sns {
  text-align: center;
  margin: 10% 0;
}
.list_sns li {
  display: inline-block;
  width: 40%;
  text-align: center;
}
.list_sns li span {
  display: block;
}
.list_sns li img {
  width: 45%;
}
/*----------------------------------------*/
.block_contact {
  margin: 0 0 25%;
}
.block_contact .contact-lead {
  text-align: center;
  margin: 15% 0 10%;
}
.list_form {
  margin: 0 auto 5%;
  border: solid 1px #231815;
  box-sizing: border-box;
  text-align: left;
  padding: 0 !important;
}
.list_form li {
  display: table;
  width: 100%;
}
.list_form li + li {
  border-top: solid 1px #231815;
}
.list_form .area_label {
  display: table-cell;
  vertical-align: middle;
  width: 30%;
  background: #ebeaea;
  padding: 2%;
  box-sizing: border-box;
  border-right: solid 1px #231815;
  font-weight: 600;
  position: relative;
  font-size: 88%;
}
.list_form .area_label.hissu::before {
  content: '※必須';
  position: absolute;
  right: 5px;
  bottom: 3px;
  color: #e60012;
  font-size: 75%;
}
.list_form .area_input {
  display: table-cell;
  vertical-align: middle;
  padding: 3%;
  width: 70%;
  box-sizing: border-box;
  font-size: 88%;
}
.list_form .area_input.type-radio label, .list_form .area_input.type-radio .wpcf7-list-item {
  display: block;
  cursor: pointer;
  margin: 0 !important;
}
.list_form .area_input.type-radio input {
  margin: 0 3px 0 0;
}
.list_form .att-text {
  font-size: 70%;
  margin: 5px 0 0;
}
.list_form input[type="text"], .form_base input[type="email"], .form_base input[type="tel"], .list_form textarea, .form_base select {
  width: 100%;
  background: #ebeaea;
  border: none;
  padding: 10px;
  vertical-align: top;
}
.form_base select {
  background-image: url("../img/arrow-select.png");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 25.5px 14px;
  font-size: 16px !important;
}
.list_form .radio-inline + .radio-inline {
  margin: 5px 0 0;
}
.list_form .radio-inline > span {
  display: block;
  font-weight: 600;
}
.list_form .radio-inline label {
  display: block;
}
.list_form .radio-inline label input {
  margin: 0 2px 0 0;
  vertical-align: middle;
}
.list_form .radio-inline label input + span {
  vertical-align: middle;
}
.form_base .wpcf7-list-item {
  margin: 0 1em 0 0;
}
.form_base input[type="text"], .form_base input[type="email"], .form_base input[type="tel"], .form_base input[type="submit"], .form_base select, .form_base textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.form_base .form-policy {
  text-align: center;
  margin: 30px 0;
}
.form_base .form-policy a{
	text-decoration: underline;
}
.form_base .form-policy a:hover{
	opacity: .7;
}
.form_base .area_submit {
  text-align: center;
}
.form_base .area_submit .btn {
  display: inline-block;
  width: 280px;
  margin: 5px;
  border: solid 1px #231815;
  padding: 20px 0;
  background: #fff;
  cursor: pointer;
  font-size: 94%;
  font-weight: 600;
  transition: all .4s;
  border-radius: 6px;
  color: #000;
}
.form_base .area_submit .btn.back {
  background: #999;
  color: #fff;
}
.form_base .date-select-box .date {
  margin: 0 0 10px;
}
.form_base .date-select-box .kengaku-text {
  font-size: 88%;
  font-weight: 600;
  margin: 0 0 5px;
}
/* == underpage ============================================== */
.page-margin {
  margin: 0 0 25%;
}
.block_page-top {
  padding: 20% 0 0;
}
.block_page-top .page_title {
  text-align: center;
  padding: 15% 0 20%;
  background: url(../img/ha09.png) no-repeat center;
  background-size: 303px 187px;
}
.block_page-top .page_title img {
  opacity: 0;
  transition: all 1.5s ease .7s;
  transform: scale(.9);
  max-width: 80%;
}
body.page__open .block_page-top .page_title img {
  opacity: 1;
  transform: scale(1);
}
.block_page-top .page_title.title-text {
  font-size: 155%;
  line-height: 1.5;
  position: relative;
  box-sizing: border-box;
  padding: 90px 0 0;
  margin: 0 auto 30px;
}
.block_page-top .page_title.title-text span.case-number {
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  padding: 30px 0 0 60px;
  background: url(../img/case02.png) no-repeat left top;
  background-size: 90px 40px;
  font-size: 175%;
  line-height: 1;
  width: 70px;
  margin: auto;
}
.block_page-top .list_page-nav {
  margin: 0 auto 10%;
}
.list_page-nav {
  margin: auto;
  box-sizing: border-box;
}
.list_page-nav li {
  width: 100%;
  text-align: center;
}
.list_page-nav li + li {
  border-top: solid 1px #231815;
}
.list_page-nav a {
  display: block;
  font-size: 115%;
  font-weight: 600;
  padding: 3% 0;
  transition: all .3s;
  /*
    background: -moz-linear-gradient(left, #a2c975 0%, #a2c975 50%, #ffffff 100%);
    background: -webkit-linear-gradient(left, #a2c975 0%, #a2c975 50%, #ffffff 100%);
    background: linear-gradient(to right, #a2c975 0%, #a2c975 50%, #ffffff 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a2c975', endColorstr='#a2c975', GradientType=1);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 000% auto;
    */
}
.list_page-nav li.active a {
  background: #a2c975;
  background-size: 95% auto;
}
/* ====================================
page-name #concept
====================================*/
.block_concept-top {
  position: relative;
  overflow: hidden;
}
.block_concept-top::before {
  content: '';
  width: 100%;
  height: 100%;
  background: url("../img/concept/main-bg.jpg") no-repeat center;
  background-size: cover;
  transition: all 4s;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  transform: scale(1.1);
}
body.page__open .block_concept-top::before {
  transform: scale(1);
}
.block_concept-top .page_title {
  text-align: center;
  width: 80%;
  margin: auto;
  padding: 45% 0;
}
.block_concept-top .white-box {
  padding: 10% 0;
  background: rgba(255, 255, 255, .6);
}
.block_concept-top .white-box .top-title {
  font-size: 140%;
  line-height: 1.5;
  margin: 0 0 6%;
  letter-spacing: 2px;
  text-align: center;
}
.block_concept-top .white-box .top-lead {
  line-height: 2;
  width: 90%;
  margin: auto;
  font-size: 115%;
}
.block_concept-top .white-box {
  opacity: 0;
  transform: translateY(100%);
  transition: all 2s ease 1s;
}
.block_concept-top .white-box .top-title, .block_concept-top .white-box .top-lead {
  opacity: 0;
  transform: translateY(50px);
  transition: all 2s ease 2s;
}
.block_concept-top .white-box .top-lead {
  transition-delay: 2.2s;
}
body.page__open .block_concept-top .white-box {
  opacity: 1;
  transform: translateY(0);
}
body.page__open .block_concept-top .white-box .top-title {
  line-height: 2;
}
body.page__open .block_concept-top .white-box .top-title, body.page__open .block_concept-top .white-box .top-lead {
  opacity: 1;
  transform: translateY(0);
}
/*------------------------------------------------------------*/
.block_concept-theme {
  padding: 0 0 13%;
  position: relative;
  z-index: 2;
}
.block_concept-theme::after {
  content: "";
  width: 30%;
  height: 0;
  padding: 23% 0 0;
  background: url(../img/pen02.png) no-repeat;
  background-size: contain;
  position: absolute;
  right: 6%;
  bottom: -2%;
}
.block_concept-theme .area_top {
  position: relative;
  margin: 0 0 15%;
}
.block_concept-theme .area_top .pen {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 40%;
  z-index: 5
}
.block_concept-theme .area_top .theme-title {
  text-align: center;
  font-size: 175%;
  padding: 40% 0 50%;
  background: url(../img/title-ki.jpg) no-repeat center;
  background-size: 95% auto;
}
.block_concept-theme .area_top .theme-title .gif-anime {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  pointer-events: none;
}
.block_concept-theme .area_top .theme-title .gif-anime img {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  bottom: 18%;
}
.scroll-bar {
  position: relative;
}
.scroll-bar::after {
  content: '';
  width: 1px;
  height: 100px;
  background: #231815;
  -webkit-animation: bar 3s ease 0s infinite;
  animation: bar 3s ease 0s infinite;
  position: absolute;
  top: calc(100% - 100px);
  left: 0;
  right: 0;
  margin: auto;
}
@-webkit-keyframes bar {
  0% {
    height: 0px;
    top: calc(100% - 100px);
  }
  50% {
    height: 130px;
    top: calc(100% - 100px);
  }
  100% {
    height: 0px;
    top: 100%;
  }
}
@keyframes bar {
  0% {
    height: 0px;
    top: calc(100% - 100px);
  }
  50% {
    height: 130px;
    top: calc(100% - 100px);
  }
  100% {
    height: 0px;
    top: 100%;
  }
}
.block_concept-theme .theme-set {
  position: relative;
}
.block_concept-theme .theme-set .bg {
  padding: 60% 0 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin: 0 0 12%;
}
.block_concept-theme .theme-set .bg.bg01 {
  background-image: url("../img/concept/theme01.jpg");
}
.block_concept-theme .theme-set .bg.bg02 {
  background-image: url("../img/concept/theme02.jpg");
}
.block_concept-theme .theme-set .bg.bg03 {
  background-image: url("../img/concept/theme03.jpg");
}
.block_concept-theme .theme-set .title {
  position: absolute;
  left: 10%;
  top: -5%;
  width: 9%;
  transition: all 1.5s ease 1s;
}
.block_concept-theme .theme-set.set01 .title {
  width: 18%;
  left: 5%;
}
.block_concept-theme .theme-set .text {
  width: 90%;
  margin: auto;
}
.block_concept-theme .theme-set .text p + p {
  margin: 20px 0 0;
}
.block_concept-theme .theme-set.scroll-bar {
  padding: 0 0 150px;
  margin: 0 0 100px;
}
/*------------------------------------------------------------*/
.block_concept-kihon {
  padding: 15% 0;
  background: #edf0e9;
  overflow: hidden;
}
.block_concept-kihon .title_center {
  line-height: 1.7;
}
.block_concept-kihon .kihon-lead {
  margin: 0 auto 15%;
  width: 90%;
  opacity: 0;
  transition: all 1.5s ease .5s;
  transform: scale(.9);
}
.block_concept-kihon.scroll__start .kihon-lead {
  opacity: 1;
  transform: scale(1);
}
.block_concept-kihon .kihon-set {
  margin: auto;
  transition: all 2s;
  padding: 80% 0 0;
}
.block_concept-kihon .kihon-set + .kihon-set {
  margin: 10% auto 0;
}
.block_concept-kihon .kihon-set .set-title {
  font-size: 140%;
  padding: 55px 4% 4%;
  margin: 0 0 6%;
  position: relative;
}
.block_concept-kihon .kihon-set .set-title::before {
  content: '';
  width: calc(100% - 80px);
  height: 1px;
  background: #231815;
  position: absolute;
  left: 0;
  bottom: 0;
}
.block_concept-kihon .kihon-set .set-title::after {
  content: '';
  width: 70px;
  height: 1px;
  background: #a4ba70;
  position: absolute;
  right: 0;
  bottom: 0;
}
.block_concept-kihon .kihon-set.set01 {
  background: url("../img/concept/kihon01.jpg") no-repeat center top;
  background-size: contain;
}
.block_concept-kihon .kihon-set.set01 .set-title {
  background: url("../img/concept/no01.png") no-repeat left 6% top;
  background-size: 55px 42px;
}
.block_concept-kihon .kihon-set.set02 {
  background: url("../img/concept/kihon02.jpg") no-repeat center top;
  background-size: contain;
}
.block_concept-kihon .kihon-set.set02 .set-title {
  background: url("../img/concept/no02.png") no-repeat left 6% top;
  background-size: 56px 42px;
}
.block_concept-kihon .kihon-set.set03 {
  background: url("../img/concept/kihon03.jpg") no-repeat center top;
  background-size: contain;
}
.block_concept-kihon .kihon-set.set03 .set-title {
  background: url("../img/concept/no03.png") no-repeat left 6% top;
  background-size: 59px 41px;
  position: relative;
}
/*
.block_concept-kihon .kihon-set.set03 .set-title::after {
    content: '';
    width: 25%;
    height: 0;
    padding: 30% 0 0;
    background: url("../img/concept/rank04.png") no-repeat;
    background-size: contain;
    position: absolute;
    right: 2%;
    top: 0;
}
*/
.block_concept-kihon .kihon-set .set-text {
  margin: auto;
  width: 90%;
  line-height: 2;
}
.block_concept-kihon .kihon-final {
  text-align: center;
  padding: 60px 0 60px;
  font-size: 170%;
  position: relative;
}
.block_concept-kihon .kihon-final span {
  position: relative;
  display: inline-block;
  padding: 10px 0;
  border-bottom: solid 1px #231815;
}
.block_concept-kihon .kihon-final::before {
  content: '';
  width: 172px;
  height: 120.5px;
  position: absolute;
  left: 0;
  bottom: 0;
  background: url(../img/ha07.png) no-repeat;
  background-size: contain;
}
.block_concept-kihon .kihon-final::after {
  content: '';
  width: 58.5px;
  height: 32.5px;
  position: absolute;
  right: 0;
  top: 0;
  background: url(../img/ha08.png) no-repeat;
  background-size: contain;
}
/*------------------------------------------------------------*/
.block_concept-links {
  background: url("../img/concept/links-bg.jpg") no-repeat center;
  background-size: cover;
  padding: 10% 0;
  margin: 0 0 20%;
}
.block_concept-links .links-text {
  text-align: center;
  font-size: 120%;
  font-weight: 600;
  color: #fff;
  margin: 0 0 8%;
}
/*------------------------------------------------------------*/
.block_concept-suggestion {
  margin: 0 0 30%;
}
.block_concept-suggestion .title_center {
  font-size: 160%;
}
.block_concept-suggestion .bg {
  background: url("../img/concept/suggestion-bg.jpg") no-repeat center;
  background-size: cover;
  padding: 100% 0 0;
  margin: 0 0 5%;
}
.block_concept-suggestion .suggestion-text {
  text-align: center;
  line-height: 2;
  font-size: 94%;
}
/* ====================================
page-name #concept - lineup -
====================================*/
.block_concept-lineup {
  padding: 20% 0 10%;
}
.block_concept-lineup .area_case {
  position: relative;
}
.block_concept-lineup .case_title {
  text-align: center;
  font-size: 218.75%;
  font-weight: 700;
  margin: 0 0 10%;
}
.block_concept-lineup .case_lead {
  text-align: center;
  font-size: 150%;
  font-weight: 700;
  margin: 0 0 15%;
}
#page_concept .block_page-top .page_title.lineup-title img {
  max-width: 60%;
}
.block_concept-lineup .area_aoba-base .bg {
  background: url(../img/concept/lineup-img02.jpg) no-repeat center;
  background-size: cover;
  height: 0;
  padding: 75% 0 0;
  margin: 0 0 10px;
}
.block_concept-lineup .area_aoba-base .ha {
  background: url(../img/ha12.png) no-repeat right 1% top 18%;
  background-size: 100px 153px;
}
.under-base .block_front-lineup {
  padding: 0 0 25% 0;
}
.under-base .block_front-lineup::before, .under-base .block_front-lineup::after {
  display: none;
}
.block_front-lineup .lineup-box .lineup-menu {
  font-size: 130%;
  font-weight: 700;
  margin: 0 0 2%;
}
.block_concept-lineup .plan-title {
  position: relative;
  background: url(../img/concept/lineup-img01.jpg) no-repeat center;
  height: 0;
  padding: 90% 0 0;
  background-size: cover;
}
.block_concept-lineup .plan-title .title {
  position: absolute;
  left: 0;
  right: 0;
  top: -18%;
  margin: auto;
  width: 80%;
}
.block_concept-lineup .aoba-att {
  text-align: right;
  font-size: 75%;
}
.block_concept-lineup .area_aoba-base .float-pc {
  text-align: center;
  margin: 0 0 3%;
}
.block_concept-lineup .area_aoba-base .float-pc img {
  vertical-align: top;
}
.lead_center-small {
  font-size: 94%;
  text-align: center;
  margin: 0 0 10%;
}
.block_concept-lineup .area_aoba-base .aoba-price {
  text-align: center;
  margin: 0 0 8%;
}
.block_concept-lineup .area_aoba-base .wrap-impact {
  background: #edf0e9;
  padding: 5%;
  border-radius: 10px;
}
.block_concept-lineup .area_aoba-base .wrap-impact .title_center {
  font-size: 150%;
  line-height: 1.8;
  margin: 0 0 15px;
}
.list_numbers {
  overflow: hidden;
  margin: 0 0 5%;
}
.att_list_numbers {
  margin: 0 0 10%;
}
.list_numbers li {
  padding: 2% 0 2% 15%;
  box-sizing: border-box;
  position: relative;
  font-size: 150%;
  font-weight: 700;
}
.list_numbers li + li {
  margin: 10px 0 0;
}
.list_numbers li::before {
  content: '';
  width: 10%;
  padding: 3.5% 0;
  line-height: 1;
  text-align: center;
  color: #fff;
  font-size: 125%;
  position: absolute;
  left: 0;
  top: 0;
  margin: auto;
  background: #90ac5c;
  font-family: 'Times New Roman';
}
.list_numbers li:nth-child(1)::before {
  content: "1";
}
.list_numbers li:nth-child(2)::before {
  content: "2";
}
.list_numbers li:nth-child(3)::before {
  content: "3";
}
.list_numbers li:nth-child(4)::before {
  content: "4";
}
.list_numbers li:nth-child(5)::before {
  content: "5";
}
.list_numbers li:nth-child(6)::before {
  content: "6";
}
.list_numbers li:nth-child(7)::before {
  content: "7";
}
.list_numbers li:nth-child(8)::before {
  content: "8";
}
.list_numbers li:nth-child(9)::before {
  content: "9";
}
.list_numbers li:nth-child(10)::before {
  content: "10";
}
.list_numbers li small {
  display: block;
  font-size: 60%;
}
.list_point {
  text-align: center;
}
.list_point li {
  background: #90ac5c;
  color: #fff;
  font-size: 150%;
  font-weight: 700;
  margin: 5px 0;
}
sup {
  font-size: 50% !important;
}
.block_concept-lineup .area_case .title_center {
  padding: 20% 0 35%;
  margin: 0 0 15%;
}
.block_concept-lineup .area_case .case-set {
  padding: 0 0 10%;
  margin: 0 0 5%;
}
.block_concept-lineup .area_case .case-title {
  text-align: center;
  font-size: 180%;
  font-weight: 700;
  margin: 0 0 10%;
}
.block_concept-lineup .area_case .case-title span {
  display: inline-block;
  padding: 75px 0 0;
  background-position: center top;
  background-size: 75px;
  background-repeat: no-repeat;
  letter-spacing: 1px;
}
.block_concept-lineup .area_case .set01 .case-title span {
  background-image: url("../img/concept/no01a.png");
}
.block_concept-lineup .area_case .set02 .case-title span {
  background-image: url("../img/concept/no02a.png");
}
.block_concept-lineup .area_case .set03 .case-title span {
  background-image: url("../img/concept/no03a.png");
}
.dl_data {
  margin: 0 auto 5%;
  position: relative;
  padding: 20px 0;
}
.dl_data dt {
  margin: 0 0 2%;
  font-size: 170%;
  font-weight: 700;
}
.dl_data dd {
  font-size: 115%;
  font-weight: 700;
}
.dl_data dd .ua {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 23%;
  height: 0;
  padding: 5.25% 0;
  display: table;
  text-align: center;
  border-radius: 50%;
  background: #f39a59;
  color: #fff;
  font-size: 170%;
  font-weight: 700;
  line-height: 1;
}
.dl_data dd .ua small {
  font-size: 50%;
  display: block;
  margin: 0 0 3px;
}
.block_concept-lineup .area_case .case-image {
  text-align: center;
  margin: 0 0 8%;
}
.block_concept-lineup .area_case .madori-wrap {
  text-align: center;
}
/*--------------------------------------------------*/
.parts_planTitle {
  padding: 12% 0 0;
  margin: 0 0 20%;
  position: relative;
  background: url("../img/ha12.png") no-repeat left top, url("../img/ha04.png") no-repeat right top 10%;
  background-size: 15% auto, 20% auto;
}
.parts_planTitle .plan_lead {
  text-align: center;
  font-size: 175%;
  font-weight: 700;
  position: relative;
  padding: 0 0 30%;
}
.parts_planTitle .plan_lead::before {
  content: '';
  width: 1px;
  height: 35%;
  background: #231815;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 20%;
  margin: auto;
}
.block_freePlan .parts_planTitle .plan_name {
  width: 80%;
  margin: 0 auto 10%;
}
.block_simplePlan .parts_planTitle .plan_name {
  width: 90%;
  margin: 0 auto 10%;
}
.parts_planTitle .plan_text {
  text-align: center;
  font-size: 125%;
  font-weight: 700;
  margin: 0 0 100px;
}
.parts_planTitle .dl_planOsusume {
  padding: 0 0 100px;
  background: url(../img/concept/arrow.svg) no-repeat center bottom;
  background-size: 18px auto;
}
.parts_planTitle .dl_planOsusume dt {
  text-align: center;
  margin: 0 0 10%;
}
.block_freePlan .parts_planTitle .dl_planOsusume dt img {
  width: 80%;
}
.block_simplePlan .parts_planTitle .dl_planOsusume dt img {
  width: 85%;
}
.parts_planTitle .dl_planOsusume dt span {
  font-size: 76.5%;
}
.parts_planTitle .dl_planOsusume dt strong {
  font-weight: 900;
}
.parts_planTitle .dl_planOsusume dd {
  font-weight: 700;
}
.parts_planTitle .dl_planOsusume ul li {
  font-size: 120%;
  background: url("../img/concept/plan_check.png") no-repeat left center;
  background-size: 40px auto;
  padding: 15px 0 15px 55px;
}
.parts_planTitle .plan_line {
  text-align: center;
  margin: 30px 0 0;
}
.parts_planTitle .plan_line p {
  display: inline;
  border-bottom: solid 1px #231815;
  font-size: 150%;
  font-weight: 700;
  padding: .5em;
}
/*--------------------------------------------------*/
.block_conceptDetail .area_ua {
  background: #f7f0ea;
  padding: 15% 0;
}
.block_conceptDetail .detail_title {
  text-align: center;
  font-size: 160%;
  margin: 0 0 10%;
}
.block_conceptDetail .ua_setTitle {
  text-align: center;
  font-size: 130%;
  font-weight: 700;
  margin: 0 0 10%;
  padding: 15% 0 0;
}
.block_conceptDetail .ua_set.set--01 .ua_setTitle {
  background: url("../img/concept/no01.svg") no-repeat center top;
  background-size: 10% auto;
}
.block_conceptDetail .ua_set.set--02 .ua_setTitle {
  background: url("../img/concept/no02.svg") no-repeat center top;
  background-size: 12% auto;
}
.block_conceptDetail .ua_set.set--03 .ua_setTitle {
  background: url("../img/concept/no03.svg") no-repeat center top;
  background-size: 12% auto;
}
.block_conceptDetail .ua_setTitle span {
  position: relative;
  display: inline-block;
}
.block_conceptDetail .ua_setTitle small {
  position: absolute;
  right: 0;
  bottom: -20px;
  font-size: 14px;
}
.block_conceptDetail .dl_white {
  background: #fff;
  margin: auto;
  box-sizing: border-box;
  padding: 10% 8%;
}
.block_conceptDetail .dl_white dt {
  text-align: center;
}
.block_conceptDetail .dl_white dt span {
  display: inline-block;
  font-size: 150%;
  font-weight: 700;
  border-bottom: solid 1px #231815;
  margin: 0 0 8%;
}
.block_conceptDetail .dl_white dd .white-lead {
  text-align: center;
  font-size: 143.75%;
  font-weight: 700;
}
.block_conceptDetail .ua_set.set--01 {
  margin: 0 0 15%;
}
.block_conceptDetail .ua_set.set--02 {
  margin: 0 0 15%;
}
.block_conceptDetail .mado_description {
  margin: 0 auto 15%;
  background: url(../img/concept/lineup-mado.jpg) no-repeat center;
  background-size: cover;
  padding: 5%;
}
.block_conceptDetail .mado_description .mado_text {
  background: rgba(255, 255, 255, .7);
  box-sizing: border-box;
  margin: auto;
  padding: 5%;
}
.block_conceptDetail .mado_description .mado_text p + p {
  margin: 30px 0 0;
}
.block_conceptDetail .taikan_description .taikan_title {
  text-align: center;
  font-size: 150%;
  font-weight: 700;
  margin: 0 0 8%;
}
.block_conceptDetail .taikan_description .taikan_img {
  margin: auto;
}
.block_conceptDetail .ua_setLead {
  font-size: 125%;
  margin: 0 0 15%;
}
.block_conceptDetail .set03_img01 {
  margin: 0 auto 15%;
}
.block_conceptDetail .ua_lastTitle {
  text-align: center;
  font-size: 150%;
  font-weight: 700;
  margin: 0 0 12%;
}
.block_conceptDetail .set03_img02 {
  margin: auto;
}
/*--------------------------------------------------*/
.block_concept-lineup .area_ua {
  background: #f7f0ea;
  padding: 12% 0;
}
.block_concept-lineup .area_ua .title_center {
  font-size: 160%;
}
.block_concept-lineup .area_ua hr {
  margin: 10% 0;
}
.ua-desc.desc01 {
  background: url("../img/concept/lineup-ua01.png") no-repeat center top;
  background-size: contain;
  margin: 8% 0;
  padding: 50% 0 0;
}
.ua-desc.desc02 {
  background: url("../img/concept/lineup-ua02.png") no-repeat center top;
  background-size: contain;
  margin: 8% 0;
  padding: 75% 0 0;
}
.ua-desc.desc03 {
  background: url("../img/concept/lineup-ua03.png") no-repeat center top;
  background-size: contain;
  margin: 8% 0;
  padding: 125% 0 0;
}
.ua-desc p.big {
  font-size: 120%;
  font-weight: 600;
  margin: 0 0 3%;
}
.ua-desc p + p {
  margin: 3% 0 0;
}
.scroll-padding {
  padding: 60px 0 120px;
  margin: 0 0 50px;
}
.block_concept-lineup .area_plan {
  margin: 0 0 10%;
}
.block_concept-lineup .area_plan .title_center {
  font-size: 150%;
}
.block_concept-lineup .area_plan .logo {
  text-align: center;
  margin: 0 0 3%;
}
.block_concept-lineup .area_plan .plan-name {
  text-align: center;
  font-size: 150%;
  font-weight: 700;
  margin: 0 0 3%;
}
.block_concept-lineup .area_plan .plan-title-box {
  position: relative;
  height: 0;
  padding: 80% 0 0;
  margin: 0 0 4%;
}
.block_concept-lineup .area_plan .plan-aoba .plan-title-box {
  background: url("../img/concept/lineup-aoba-img00.jpg") no-repeat center;
  background-size: cover;
}
.block_concept-lineup .area_plan .plan-craft .plan-title-box {
  background: url("../img/concept/lineup-craft-img00.jpg") no-repeat center;
  background-size: cover;
}
.block_concept-lineup .area_plan .plan-title-box .title {
  position: absolute;
  right: 5%;
  top: -5%;
}
.block_concept-lineup .plan-img-text {
  overflow: hidden;
}
.block_concept-lineup .plan-img-text .inner {
  position: relative;
}
.block_concept-lineup .plan-img-text .text-box {
  margin: 0 0 5%;
}
.block_concept-lineup .plan-img-text .text-box p + p {
  margin: 3% 0 0;
}
.block_concept-lineup .plan-img-text .img-box {
  margin: 0 0 3%;
}
.img-column3 {
  overflow: hidden;
}
.img-column3 > div {
  margin: 2% 0 0;
}
.block_concept-lineup .img-column3 {
  margin: 0 0 15%;
}
.title_border {
  border-bottom: solid 1px #231815;
  font-size: 180%;
  margin: 0 0 3%;
}
.block_concept-lineup .area_plan .madori-wrap .float-pc {
  margin: 4% 0 0;
}
.block_concept-lineup .area_plan .left {
  box-sizing: border-box;
  padding: 0 3%;
}
.block_concept-lineup .area_plan .right {
  box-sizing: border-box;
  padding: 0 3%;
}
.block_concept-lineup .area_plan .right .title_border {
  margin: 5% 0 3%;
}
.block_concept-lineup .area_plan .plan-aoba .madori-wrap {
  padding: 0 0 120px;
  margin: 0 0 80px;
}
/*------------------------------------------------------------*/
.block_concept-lineup .plan_accordionWrap .accordion_title {
  background: #90ac5c;
  padding: 15px 30px 15px 15px;
  color: #fff;
  font-size: 120%;
  font-weight: 700;
  margin: 0 0 1px;
  cursor: pointer;
  position: relative;
  transition: all .2s;
}
.block_concept-lineup .plan_accordionWrap .accordion_title::before {
  content: '';
  width: 20px;
  height: 20px;
  position: absolute;
  right: 15px;
  top: 0;
  bottom: 0;
  margin: auto;
  background: url(../img/arrow.svg) no-repeat center;
  background-size: contain;
  transition: all .3s;
}
.block_concept-lineup .plan_accordionWrap .accordion_title.accordion__open::before {
  transform: rotateX(180deg);
}
/*----------*/
.block_concept-lineup .lineup-title {
  text-align: center;
  margin: 0 auto 50px;
}
.block_concept-lineup .area_aoba-base .lineup-title {
  width: 65%;
}
.block_concept-lineup .area_single-plan .lineup-title {
  width: 75%;
}
.block_concept-lineup .lineup-title span {
  display: block;
  margin: 10px 0 0;
}
.block_concept-lineup .area_ua .desc04 {
  background: url(../img/concept/lineup-mado.jpg) no-repeat center;
  background-size: cover;
}
.block_concept-lineup .area_ua .mado-title {
  text-align: center;
  font-size: 150%;
  font-weight: 600;
  margin: 0 0 30px;
}
.block_concept-lineup .area_ua .desc04 .text-box {
  background: rgba(255, 255, 255, .7);
  box-sizing: border-box;
  padding: 8% 3%;
}
.block_concept-lineup .area_ua .desc04 .text-box p {
  line-height: 2;
}
.block_concept-lineup .area_ua .desc04 .text-box p + p {
  margin: 20px 0 0;
}
.block_concept-lineup .area_single-plan .title_center {
  padding: 80px 0 120px;
  margin: 0 0 60px;
  background: url(../img/ha02ex.png) no-repeat center;
  background-size: contain;
  letter-spacing: 1px;
}
.block_concept-lineup .area_single-plan .plan-detail {
  margin: 60px 0;
  border-radius: 10px;
  overflow: hidden;
  background: #efefef;
}
.block_concept-lineup .area_single-plan .plan-detail .detail-title {
  text-align: center;
  background: #898989;
  padding: 10px 0;
  color: #fff;
  font-size: 150%;
  font-weight: 600;
  position: relative;
}
.block_concept-lineup .area_single-plan .plan-detail .detail-title::before {
  content: '';
  width: 18px;
  height: 18px;
  box-sizing: border-box;
  border-right: solid 2px #fff;
  border-bottom: solid 2px #fff;
  position: absolute;
  right: 20px;
  top: 0;
  bottom: -6px;
  margin: auto;
  transform: rotateZ(-135deg);
  transition: all .3s;
  transform-origin: center;
}
.block_concept-lineup .area_single-plan .plan-detail .detail-title.active::before {
  transform: rotateZ(45deg);
  bottom: 6px;
}
.block_concept-lineup .area_single-plan .plan-detail .detail-box {
  padding: 40px 15px 0;
}
.block_concept-lineup .area_single-plan .plan-detail .detail-box .text-att {
  margin: 10px 0 0 35px;
}
.list_plan-detail > li {
  padding: 0 0 80px;
  margin: 0 0 30px;
}
.list_plan-detail > li .plan-detail-title {
  text-align: center;
  font-size: 150%;
  font-weight: 600;
  margin: 0 0 30px;
}
.list_plan-detail > li .plan-detail-title span {
  display: block;
  font-size: 150%;
}
.list_plan-detail-merit {
  background: url(../img/concept/plan-detail-img03.png) no-repeat center top;
  background-size: 50% auto;
  padding: 80% 0 0;
}
.list_plan-detail-merit > li {
  font-size: 115%;
  padding: 0 0 0 20px;
  position: relative;
  margin: 50px 0 0;
}
.list_plan-detail-merit > li::before {
  content: '';
  width: 27px;
  height: 24px;
  background: url(../img/concept/plan-detail-icon.png) no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: -20px;
}
/*----------------------------------------------*/
.block_conceptExample {
  margin: 0 0 20%;
}
.block_conceptExample .example_title {
  text-align: center;
  font-size: 130%;
  margin: 0 0 10%;
}
.list_conceptExample {
  margin: 0 0 12%;
}
.list_conceptExample li {
  width: 90%;
  margin: 0 auto 15%;
}
.list_conceptExample .thumbnail {
  position: relative;
}
.list_conceptExample .thumbnail .cat_tag {
  position: absolute;
  left: 0;
  top: 0;
  width: 120px;
  padding: 3px 0;
  background: #000;
  color: #fff;
  text-align: center;
  font-weight: 700;
}
.list_conceptExample .title {
  margin: 2% auto 4%;
}
.list_conceptExample .btn {
  margin: auto;
  background: #ad9987;
  text-align: center;
  transition: all .2s;
  padding: 10px 0;
}
.list_conceptExample .btn a {
  display: block;
  padding: 3px 0;
  color: #fff;
  font-weight: 700;
}
.list_conceptExample .btn:hover {
  opacity: .7;
}
.block_conceptExample .area_message {
  color: #fff;
  text-align: center;
  background: url(../img/concept/exsample_bg.jpg) no-repeat center;
  background-size: cover;
  display: flex;
  align-items: center;
  padding: 15% 5%;
}
.block_conceptExample .area_message p {
  width: 100%;
  font-size: 150%;
  font-weight: 700;
}
/*----------------------------------------------*/
.block_simplePlan .parts_planTitle .plan_line {
  padding: 50% 0 0;
  background: url(../img/concept/simple_illust01.svg) no-repeat center top;
  background-size: 40% auto;
}
.block_simplePlan .area_kaiketu {
  margin: 0 0 15%;
}
.block_simplePlan .kaiketu_title {
  margin: 0 auto 10%;
}
.list_simplePlan li {
  margin: 0 0 20%;
  overflow: hidden;
}
.list_simplePlan li + li {
  margin: 20% 0 0;
}
.list_simplePlan .thumbnail {
  margin: 0 0 5%;
}
.list_simplePlan li:nth-child(4) .thumbnail {
  width: 122%;
  margin: -10% 0 0;
}
.list_simplePlan .textBox {
  box-sizing: border-box;
}
.list_simplePlan .textBox h4 {
  font-size: 150%;
  font-weight: 700;
  margin: 0 0 5%;
}
.list_simplePlan .textBox p {
  font-size: 115%;
}
/*----------*/
.block_concept-nav .inner {
  margin: 0 auto 10%;
  overflow: hidden;
}
.block_concept-nav .nav-btn {
  border-radius: 10px;
  text-align: center;
  overflow: hidden;
}
.block_concept-nav .nav-btn + .nav-btn {
  margin: 10px 0 0;
}
.block_concept-nav .nav-btn a {
  display: block;
  color: #fff;
  font-size: 125%;
  font-weight: 600;
  line-height: 1.4;
  position: relative;
  padding: 8% 0;
  z-index: 1;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.block_concept-nav .nav-btn a::before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, .6);
  z-index: -1;
  transition: all .5s;
}
.block_concept-nav .nav-btn a::after {
  content: '';
  width: 20px;
  height: 20px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  transform: rotateZ(45deg);
}
.block_concept-nav .nav-btn.btn-concept a {
  background-image: url("../img/concept/concept-nav01.jpg?1");
}
.block_concept-nav .nav-btn.btn-seinou a {
  background-image: url("../img/concept/concept-nav02.jpg?1");
}
.block_concept-nav .nav-btn.btn-lineup a {
  background-image: url("../img/concept/concept-nav03.jpg?1");
}
.block_concept-nav .nav-btn a:hover::before {
  background: rgba(0, 0, 0, .3);
}
/* ====================================
page-name #concept - performance -
====================================*/
.block_performance {
  margin: 0 0 100px;
}
.block_performance .area_rank {
  background: url("../img/concept/performance-img01.jpg") no-repeat center;
  background-size: cover;
  padding: 12% 0;
  position: relative;
  margin: 5% 0 0;
}
.block_performance .area_rank::before {
  content: '';
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .6);
  position: absolute;
  left: 0;
  top: 0;
}
.block_performance .area_rank .title_center {
  color: #fff;
  margin: 0 0 6%;
}
.list_rank {
  overflow: hidden;
  width: 90%;
  margin: auto;
  position: relative;
  z-index: 2;
}
.list_rank li {
  display: table;
  width: 100%;
  margin: 4% 0 0;
}
.list_rank li .rank-img {
  text-align: center;
  width: 28%;
  display: table-cell;
  vertical-align: middle;
  padding: 0 5% 0 2%;
  box-sizing: border-box;
}
.list_rank li:nth-child(4) .rank-img {
  width: 29%;
  padding: 0 3% 0 0;
}
.list_rank li .rank-text {
  font-weight: 600;
  color: #fff;
  box-sizing: border-box;
  display: table-cell;
  vertical-align: middle;
  font-size: 98%;
}
.block_performance .area_rank .rank-att {
  color: #fff;
  font-size: 80%;
  font-weight: 600;
  margin: 30px auto 0;
  text-align: center;
  width: 94%;
  position: relative;
  z-index: 5;
}
/*---------------------*/
.block_performance .area_merit {
  background: #595a4e;
  padding: 40px 0;
  margin: 0 0 40px;
}
.block_performance .area_merit .merit-title {
  text-align: center;
  font-size: 130%;
  color: #fff;
  font-weight: 600;
  margin: 0 0 20px;
  position: relative;
}
.block_performance .area_merit .merit-title::before {
  content: "";
  width: 100%;
  height: 1px;
  background: #ffffff;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.block_performance .area_merit .merit-title span {
  display: inline-block;
  padding: 0 10px;
  background: #595a4e;
  position: relative;
  z-index: 5;
}
.block_performance .area_merit .merit-lead {
  text-align: center;
  font-size: 115%;
  font-weight: 600;
  margin: 0 0 30px;
  color: #fff;
}
.block_performance .area_merit .merit-box {
  position: relative;
  overflow: hidden;
  text-align: center;
}
.block_performance .area_merit .merit-box .merit-tate {
  font-size: 180%;
  font-weight: 700;
  margin: 0 0 10px;
  color: #fff;
}
.block_performance .area_merit .merit-box .box-left {
  margin: 0 0 15px;
}
/*---------------------*/
.list_anchor {
  overflow: hidden;
  padding: 0 0 130px;
}
.list_anchor li {
  float: left;
  width: 48%;
  margin: 1%;
  box-sizing: border-box;
  border-radius: 6px;
  border: solid 1px #231815;
  text-align: center;
}
.list_anchor a {
  display: flex;
	align-items: center;
  padding: 8px 0 16px;
  font-weight: 600;
  position: relative;
  overflow: hidden;
  transition: all .4s;
	line-height: 1.3;height: 2.6em;
}
.list_anchor a::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 6px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 8px 0 8px;
  border-color: #90ac5c transparent transparent transparent;
  transition: all .4s;
  z-index: 2;
}
.list_anchor a::after {
  content: '';
  width: 100%;
  height: 0%;
  background: #90ac5c;
  position: absolute;
  left: 0;
  bottom: 0;
  transition: all .4s;
}
.list_anchor a:hover {
  color: #fff;
}
.list_anchor a:hover::before {
  border-color: #fff transparent transparent transparent;
}
.list_anchor a:hover::after {
  top: 0;
  bottom: auto;
  height: 100%;
}
.list_anchor a span {
	display: block;
	width: 100%;
  position: relative;
  z-index: 2;
}
.list_column4 {
  overflow: hidden;
}
.list_column4 li {
  float: left;
  width: 46%;
  margin: 0 0 6% 8%;
  position: relative;
}
.list_column4.arrow li + li::before {
  content: '';
  position: absolute;
  left: -11%;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent #231815;
}
.list_column4 li:nth-child(2n + 1) {
  clear: both;
  margin: 0 0 6%;
}
.list_column4 p {
  font-size: 88%;
  line-height: 1.5;
}
.list_column4 .big {
  font-size: 110%;
  font-weight: 600;
  margin: 3px 0;
}
.title_center-small {
  text-align: center;
  font-size: 140%;
  font-weight: 600;
  margin: 0 0 6%;
}
.block_performance .area_detail .img-text-box {
  margin: 6% auto 8%;
}
.block_performance .area_detail .img-text-box p {
  line-height: 2;
  font-size: 105%;
}
.block_performance .area_detail .img-text-box p.center {
  text-align: center;
}
.block_performance .area_detail p.title_big {
  font-size: 140%;
  font-weight: 600;
  margin: 0 0 2%;
  line-height: 1.7;
}
.block_performance .area_detail .img-text-box p small {
  font-size: 88%;
}
.block_performance .area_detail section.scroll-bar {
  padding: 8% 0 110px;
  margin: 0 0 20px;
}
.block_performance .area_detail .sec01 .img-text-box {
  background: url(../img/concept/performance-sec01-img01.png) no-repeat center top;
  background-size: contain;
  padding: 80% 0 0;
  box-sizing: border-box;
}
.block_performance .area_detail .sec03 .img-text-box {
  background: url(../img/concept/performance-sec03-img01.png) no-repeat center top;
  padding: 160% 0 0;
  background-size: contain;
}
.block_performance .area_detail .sec04 .img-text-box.box01 {
  background: url(../img/concept/performance-sec04-img01.jpg) no-repeat center top;
  background-size: contain;
  padding: 50% 0 0;
}
.block_performance .area_detail .sec04 .img-text-box.box02 {
  background: url(../img/concept/performance-sec04-img03.jpg) no-repeat center top;
  background-size: contain;
  margin: 10% auto;
  padding: 90% 0 0;
}
.block_performance .area_detail .wrap-green {
  background: #edf0e9;
  padding: 6% 4%;
  box-sizing: border-box;
  margin: 0 auto 2%;
  font-size: 105%;
  border-bottom-left-radius: 10px;
}
.block_performance .area_detail .wrap-green + .wrap-green{
	margin: 4% auto 2%;
}
.block_performance .area_detail .wrap-green .green-title {
  text-align: center;
  font-size: 135%;
  color: #90ac5c;
  font-weight: 600;
  margin: 0 0 10px;
  line-height: 1.5;
}
.block_performance .area_detail .wrap-green .color-text {
  color: #90ac5c;
  font-size: 110%;
	font-weight: 700;
}
.block_performance .box-text .green-text {
  background: #edf0e9;
  padding: 10px 0;
  text-align: center;
  border-radius: 6px;
  font-size: 115%;
  color: #90ac5c;
  font-weight: 600;
  margin: 0 0 6px;
}
.list_column3 {
  max-width: 500px;
  margin: auto;
}
.list_column3 li + li {
  margin: 10% 0 0;
}
.list_column3 p.big {
  font-size: 125%;
  font-weight: 600;
  margin: 0 0 5px;
}
.list_maru li {
  position: relative;
  padding: 3px 0 3px 1.2em;
}
.list_maru li::before {
  content: '●';
  position: absolute;
  left: 0;
  top: 3px;
}
.block_performance .area_detail .list_maru {
  color: #90ac5c;
}
.block_performance .area_detail .sec04 .list_maru {
  color: #231815;
  background: none;
}
.block_performance .area_detail .att-text {
  font-size: 88%;
}
.block_performance .area_detail .plus-wrap {
  overflow: hidden;
}
.dl_plus {
  background: #ad9987;
  padding: 3% 5% 6%;
  color: #fff;
  border-radius: 6px;
}
.dl_plus dt {
  text-align: center;
  font-size: 200%;
  font-weight: 600;
}
.plus-wrap {
  overflow: hidden;
  margin: 0 auto 10%;
  position: relative;
}
.plus-wrap::before, .plus-wrap::after {
  content: '';
  position: absolute;
  background: #231815;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto
}
.plus-wrap::before {
  width: 40px;
  height: 1px;
}
.plus-wrap::after {
  width: 1px;
  height: 40px;
}
.dl_plus + .dl_plus {
  margin: 60px 0 0;
}
.block_performance .area_detail .spot-brake {
  max-width: 1000px;
  margin: auto;
}
.block_performance .area_detail .spot-brake .big {
  font-size: 150%;
  font-weight: 600;
  margin: 0 0 30px;
  line-height: 1.7;
}
.block_performance .area_detail .spot-brake p {
  background: url("../img/concept/performance-sec04-img04.jpg") no-repeat center top;
  background-size: contain;
  padding: 52% 0 0;
}
.thumbnail-text-box + .thumbnail-text-box {
  margin: 10% auto 0;
}
.thumbnail-text-box .box-thumbnail {
  margin: 0 0 3%;
}
.thumbnail-text-box .box-text .title {
  font-size: 150%;
  font-weight: 600;
  margin: 0 0 2%;
}
.thumbnail-text-box .box-text .text {
  line-height: 2;
}
.block_performance .area_detail .sec06 .max-width {
  margin: 8% auto;
  border-radius: 10px;
  overflow: hidden;
}
.block_performance .area_detail .sec06 .max-width img {
  vertical-align: top;
}
.block_performance .area_detail .images-box {
  text-align: center;
  margin: 0 0 10%;
}
.block_performance .area_detail .images-box .box {
  margin: 0 0 15%;
}
.block_performance .area_detail .images-box .title {
  margin: 0 0 3%;
  font-size: 110%;
}
.block_performance .area_detail .images-box .text {
  font-size: 120%;
}
.list_performance-point {
  margin: auto;
}
.list_performance-point li {
  background: #edf0e9;
  border-radius: 6px;
  padding: 6% 4%;
  box-sizing: border-box;
  margin: 0 0 2%;
}
.dl_point {
  width: 100%;
  display: table;
}
.dl_point dt {
  display: table-cell;
  vertical-align: middle;
  padding: 0 1em 0 .5em;
  width: 1em;
  font-size: 200%;
  font-weight: 600;
  color: #90ac5c;
  text-align: center;
  letter-spacing: 3px;
}
.dl_point dd {
  display: table-cell;
  vertical-align: middle;
  line-height: 2;
}
.block_performance .area_detail .border-wrap {
  position: relative;
  border: solid 1px #231815;
  padding: 10% 3% 6%;
  box-sizing: border-box;
  margin: 0 auto 8%;
}
.block_performance .area_detail .border-wrap .title_center {
  position: absolute;
  width: 100%;
  top: -1em;
  left: 0;
  font-size: 135%;
}
.block_performance .area_detail .border-wrap .title_center span {
  display: inline-block;
  background: #fff;
  padding: 0 12px;
}
.block_performance .area_detail .border-wrap .title_center small {
  font-size: 60%;
  display: block;
  line-height: 1;
}
.block_performance .area_detail .border-wrap .border-title-img {
  text-align: center;
}
.block_performance .area_detail .border-wrap .float-pc {
  margin: 0 0 8%;
}
.block_performance .area_detail .border-wrap .right {
  margin: 0 0 8%;
}
.block_performance .area_detail .border-wrap .left .images {
  text-align: center;
}
.block_performance .area_detail .border-wrap .left .images + .images {
  margin: 10% 0 0;
}
.block_performance .area_detail .border-wrap .title_center-small {
  font-size: 130%;
}
.block_performance .area_detail .sec04 .title_center-small {
  margin: 10% 0 4%;
  line-height: 1.5;
}
.block_performance .area_detail .border-wrap .border-att-text {
  background: #edf0e9;
  border-radius: 10px;
  font-size: 105%;
  font-weight: 600;
  padding: 10px;
  box-sizing: border-box;
  margin: 0 auto 12px;
}
/* ====================================
page-name #works
====================================*/
#page_works .block_page-top {
  background: url(../img/title-ki.jpg) no-repeat right -10% top;
  background-size: 50% auto;
}
#page_works .block_page-top .page_title img {
  max-width: 55%;
}
#page_works .block_blog {
  position: relative;
  padding: 0 0 30%;
  background: url(../img/title-ki.jpg) no-repeat right -10% bottom 0px;
  background-size: 35% auto;
}
#page_works .block_blog::before {
  content: '';
  width: 172px;
  height: 120.5px;
  background: url(../img/ha07.png) no-repeat;
  background-size: contain;
  position: absolute;
  left: 10%;
  bottom: 3%;
}
.list_works {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: auto;
}
.list_works li {
  width: 100%;
  margin: 0 0 3%;
}
@media all and (min-width:450px) {
  .list_works li {
    width: 48%;
    margin: 0 1% 3%;
  }
}
.list_works a {
  display: block;
}
.list_works .thumbnail {
  position: relative;
  overflow: hidden;
  padding: 66.66% 0 0;
}
.list_works .thumbnail::before {
  content: '';
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .4);
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  transition: all .3s;
  z-index: 2;
}
.list_works a.touch__start .thumbnail::before {
  opacity: 1;
}
.list_works .thumbnail .cat-tag {
  position: absolute;
  left: 0;
  top: 0;
  display: inline-block;
  background: #231815;
  color: #fff;
  font-size: 88%;
  font-weight: 600;
  padding: 3% 8%;
  line-height: 1;
  letter-spacing: 3px;
  z-index: 5;
}
.list_works .thumbnail img {
  vertical-align: top;
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  margin: auto;
  max-height: 100%;
  width: auto;
  transform: translateX(-50%);
}
.list_works .text-box {
  padding: 3%;
  font-size: 94%;
}
.list_works .text-box span.movie-release {
  display: block;
  font-size: 94%;
  margin: 0 0 1px;
}
/*--------------------*/
.block_works_single {
  overflow: hidden;
  position: relative;
  padding: 0 0 30%;
  background: url(../img/title-ki.jpg) no-repeat right -10% bottom 0px;
  background-size: 35% auto;
}
.block_works_single .area_works-slide {
  margin: 0 auto 8%;
}
.block_works_single .area_works-slide img {
  vertical-align: top;
}
.block_works_single .area_works-slide #jq_works-slide {
  margin: 0 0 10px;
}
.block_works_single .area_works-slide #jq_works-thumb .slick-slide {
  margin: 0 2px;
}
.block_works_single .area_works-slide #jq_works-thumb .slide-content {
  overflow: hidden;
  cursor: pointer;
  position: relative;
}
.block_works_single .area_works-slide #jq_works-thumb .slick-current .slide-content::before {
  content: '';
  width: 100%;
  height: 100%;
  border: solid 2px #ff8c00;
  position: absolute;
  box-sizing: border-box;
  left: 0;
  top: 0;
}
.block_works_single .area_works-data {
  overflow: hidden;
}
.block_works_single .area_works-data .data-title {
  font-size: 200%;
}
.block_works_single .area_works-data .data-box {
  overflow: hidden;
}
.block_works_single .area_works-data .data-box dl {
  padding: 5px 0;
  overflow: hidden;
  font-weight: 600;
}
.block_works_single .area_works-data .data-box dt {
  float: left;
  width: 35%;
}
.block_works_single .area_works-data .data-box dd {
  float: left;
  width: 65%;
}
.block_works_single .area_works-data {
  margin: 0 auto 6%;
}
.block_works_single .wp-editor {
  margin: 0 auto 6%;
}
.block_works_single .area_works-data.data--realty dt {
  width: 25%;
}
.block_works_single .area_works-data.data--realty dd {
  width: 75%;
}
/* ====================================
page-name #blog
====================================*/
#page_blog .block_page-top {
  background: url(../img/pen03.png) no-repeat left top 40%;
  background-size: 35%;
}
#page_blog .block_page-top img {
  width: 45%;
}
/* ====================================
page-name #company
====================================*/
#page_company .block_page-top .page_title img {
  max-width: 70%;
}
#page_company .block_page-top::before {
  content: '';
  background: url("../img/pen.png") no-repeat center;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 60vw;
  width: 100px;
  height: 90px;
  pointer-events: none;
}
.block_company .dl_base {
  margin: auto;
}
.block_company .area_company-info {
  width: 90%;
  margin: 0 auto 15%;
}
.dl_base {
  overflow: hidden;
  padding: 6px 0;
}
.dl_base + .dl_base {
  border-top: dashed 1px #999;
}
.dl_base dt {
  font-weight: 600;
  font-size: 105%;
}
.map-wrap {
  height: 0;
  padding: 75% 0 0;
  margin: auto;
  position: relative;
}
.map-wrap iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
#page_company .block_front-house {
  margin: 20% 0 30%;
}
.block_zero {
  padding: 15% 0 12%;
  background: url("../img/zero-bg.jpg") no-repeat center;
  background-size: cover;
}
.block_zero .zero-title {
  text-align: center;
}
.block_zero .zero-text {
  text-align: center;
  color: #fff;
  font-size: 108%;
  margin: 2% 0 12%;
}
.btn_long-link {
  text-align: center;
}
.btn_long-link a {
  display: inline-block;
  background: rgba(0, 0, 0, .4);
  padding: 3% 4%;
  border-radius: 6px;
  color: #fff;
  border: solid 1px #fff;
  font-size: 88%;
  font-weight: 600;
  transition: all .3s;
}
.btn_long-link a.touch__start {
  background: #fff;
  color: #333;
}
/* ====================================
page-name #model-house
====================================*/
.block_model .tohunomori {
  text-align: center;
  margin: 0 auto 60px;
  width: 80%;
}
.block_model .bg01 {
  background: url(../img/model-house/bg01.jpg) no-repeat center;
  background-size: cover;
  height: 0;
  padding: 52% 0 0;
  margin: 0 auto 10%;
}
.block_model .bg02 {
  background: url(../img/model-house/bg02.jpg) no-repeat center;
  background-size: cover;
  height: 0;
  padding: 52% 0 0;
  margin: 0 auto 20%;
}
.block_model .model-lead {
  margin: 0 0 12%;
}
.block_model .model-lead p {
  text-align: center;
  margin: 5% 0 0;
}
.block_model .area_model-set {
  margin: 0 0 15%;
}
.block_model .area_model-set .set {
  position: relative;
}
.block_model .area_model-set .set + .set {
  margin: 25% auto 0;
}
.block_model .area_model-set .set-title {
  position: absolute;
  left: 5%;
  top: -6%;
}
.block_model .area_model-set .set-title .set-title01 {
  width: 45%;
}
.block_model .area_model-set .set-title .set-title02 {
  width: 60%;
}
.block_model .area_model-set .set-title .set-title03 {
  width: 28%;
}
.block_model .area_model-set .set-title .set-title04 {
  width: 50%;
}
.block_model .area_model-set .set-title .set-title05 {
  width: 90%;
}
.block_model .area_model-set .set.scroll_anime .set-title {
  opacity: 0;
  transform: translateY(-30px);
  transition: all 1.5s ease .1s;
  z-index: 5;
}
.block_model .area_model-set .set.scroll__start .set-title {
  opacity: 1;
  transform: translateY(0);
}
.block_model .area_model-set .set-image {
  text-align: center;
  margin: 0 0 5%;
}
.block_model .area_model-set .set.scroll_anime .set-image {
  opacity: 0;
  transform: translateY(30px);
  transition: all 1.5s ease .3s;
}
.block_model .area_model-set .set.scroll__start .set-image {
  opacity: 1;
  transform: translateY(0);
}
.block_model .area_model-set .set-text {
  text-align: center;
  line-height: 2;
}
.block_model .area_model-set .set.scroll_anime .set-text {
  opacity: 0;
  transform: scale(.9);
  transition: all 1.5s ease .5s;
}
.block_model .area_model-set .set.scroll__start .set-text {
  opacity: 1;
  transform: scale(1);
}
.block_model .area_madori {
  margin: 0 0 8%;
}
.block_model .area_madori .inner {
  padding: 0 0 10%;
  ;
  border-bottom: solid 1px #231815;
}
.block_model .area_madori .left {
  text-align: center;
  margin: 0 auto 10%;
  width: 90%;
}
.block_model .area_madori .right {
  text-align: center;
}
.list_madori-info {
  text-align: center;
}
.list_madori-info li {
  font-size: 125%;
  font-weight: 700;
}
.dl_info {
  margin: auto;
  font-weight: 700;
}
.dl_info dt {
  margin: 0 0 2%;
  font-size: 125%;
}
.dl_info dd span.name {
  width: 6em;
  display: inline-block;
}
.dl_info dd span.text {
  display: inline-block;
}
.block_model .area_detail {
  margin: 0 0 15%;
}
.block_model .area_detail .inner {
  padding: 0 0 15%;
  border-bottom: solid 1px #231815;
}
.block_model .area_detail .detail-img-text {
  margin: 10% 0 0;
  background: url("../img/model-house/detail01.jpg") no-repeat center top;
  background-size: contain;
  padding: 68% 0 0;
  position: relative;
}
.block_model .area_detail .detail-img-text .zero-info {
  display: block;
  box-sizing: border-box;
  background: url("../img/model-house/zero.png") no-repeat left top;
  background-size: 112px 123px;
  padding: 0 0 0 135px;
  line-height: 2;
  margin: 5% 0 0;
  min-height: 130px;
}
/*------------------------------------------------------------*/
.section-covid .inner {
  background: #edf0e9;
  padding: 8% 4%;
  box-sizing: border-box;
  margin: 10% auto;
  border-radius: 10px;
}
.section-covid .title_center {
  font-weight: 700;
  font-size: 160%;
}
.section-covid .covid-title {
  font-size: 125%;
  font-weight: 600;
  margin: 0 0 10px;
  line-height: 1.5;
}
.section-covid .list_disc + .covid-title {
  margin: 30px 0 10px;
}
.list_disc li {
  list-style: disc;
  margin: 0 0 0 1em;
  padding: 3px 0;
}
.btn_small {
  text-align: center;
  margin: 6% 0 0;
}
.btn_small a {
  display: inline-block;
  background: #90ac5c;
  color: #fff;
  font-size: 115%;
  border: solid 1px #90ac5c;
  font-weight: 600;
  padding: 10px 40px 10px 15px;
  transition: all .4s;
  position: relative;
  box-sizing: border-box;
  min-width: 250px;
}
.btn_small a::after {
  content: '';
  position: absolute;
  right: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent #fff;
  transition: all .4s;
  z-index: 2;
}
.btn_small.btn--pdf a::after {
  display: none;
}
.btn_small.btn--pdf a::before {
  content: '';
  width: 1.5em;
  height: 1.5em;
  position: absolute;
  right: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("../img/icon_pdf01.svg");
  transition: all .3s;
}
.btn_small.btn--pdf a:hover::before {
  background-image: url("../img/icon_pdf02.svg");
}
/*------------------------------------------------------------*/
.block_kengaku-form {
  margin: 0 0 15%;
}
.block_kengaku-form .title_center {
  font-size: 150%;
}
.block_kengaku-form .kengaku-form-lead {
  text-align: center;
}
.block_kengaku-form .form-title {
  text-align: center;
  font-size: 150%;
  padding: 8% 0 0;
  margin: 0 0 3%;
}
/* ====================================
page-name #contact
====================================*/
#page_contact .block_page-top .page_title img {
  max-width: 70%;
}
/*------------------------------------------------------------*/
.block_thanks .thanks-text {
  text-align: center;
  line-height: 2;
}
#sbi_images {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
#sbi_images .sbi_item {
  width: 50% !important;
}
/*------------------------------------------------------------*/
#page_concept .block_front-lineup {
  padding: 0;
}
#page_concept .block_front-lineup::before, #page_concept .block_front-lineup::after {
  display: none;
}
#page_concept .block_front-house::before, #page_concept .block_front-house::after {
  display: none;
}
#page_concept.page-id-89 .block_page-top .page_title img {
  max-width: 70%;
}
.title_inline-center {
  text-align: center;
  padding: 50px 0 100px;
  background: url("../img/ha07.png") no-repeat left 5% center;
  background-size: 344px 241px;
}
.title_inline-center span {
  display: inline-block;
  font-size: 170%;
  font-weight: 600;
  letter-spacing: 3px;
}
.title_inline-center small {
  font-size: 40%;
  display: block;
  text-align: right;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
  -webkit-text-size-adjust: 100%;
  line-height: 1.8;
  -webkit-font-smoothing: antialiased;
}
#jq_plan-slide {
  max-width: 1440px;
  margin: auto;
}
#jq_plan-slide img {
  vertical-align: top;
}
#jq_plan-thumb {
  max-width: 960px;
  margin: auto;
}
#jq_plan-thumb img {
  vertical-align: top;
}
#jq_plan-thumb .slick-slide {
  margin: 10px 5px;
  cursor: pointer;
  outline: none;
}
.img-center {
  text-align: center;
  margin: 0 0 30px;
}
.title_center.sp-small {
  font-size: 120%;
}
/*------------------------------------------------------------*/
.block_single {
  padding: 80px 0 0;
  background: url(../img/ha10.png) no-repeat right 5% top 2%;
  background-size: 191px 145px;
  margin: 0 0 50px;
}
.block_single .cat-tag {
  margin: 0 0 10px;
}
.block_single .cat-tag span {
  display: inline-block;
  background: #333;
  min-width: 120px;
  text-align: center;
  padding: 2px 6px;
  color: #fff;
  font-weight: 600;
  box-sizing: border-box;
  font-size: 88%;
}
.block_single .single-title {
  font-size: 175%;
  margin: 0 0 10px;
  line-height: 1.4;
}
.block_single time {
  display: block;
  text-align: right;
}
#page_blog .block_kengaku-form {
  background: url(../img/ha10.png) no-repeat right 5% top;
  background-size: 191px 145px;
}
/**/
.parts-other-article {
  padding: 60px 0;
  border-top: solid 1px #333;
}
.list_news-others {
  overflow: hidden;
  max-width: 800px;
  margin: auto;
}
.list_news-others li + li {
  margin: 20px 0 0;
}
.list_news-others a {
  display: block;
  overflow: hidden;
}
.list_news-others .other-thumbnail {
  width: 35%;
  margin: 0 3% 0 0;
  float: left;
}
.list_news-others .text-box {
  float: left;
  width: 62%;
  line-height: 1.4;
}
.list_news-others .cat-tag {
  margin: 0 0 5px;
}
.list_news-others .cat-tag span {
  display: inline-block;
  background: #333;
  min-width: 120px;
  text-align: center;
  padding: 2px 6px;
  color: #fff;
  font-weight: 600;
  box-sizing: border-box;
  line-height: 1.4;
  font-size: 82%;
}
.list_news-others .text-box time {
  font-size: 82%;
}
.list_news-others .other-title {
  font-size: 110%;
}
/*add 20211029*/
.block_concept-lineup .lineup-pop {
  text-align: center;
  margin: 0 auto 20px;
}
.block_concept-lineup .area_aoba-base .lineup-pop {
  margin: 0 auto -30px;
  position: relative;
  z-index: 5;
}
#page_concept .lity {
  background: rgba(255, 255, 255, .3);
}
#page_concept .lity-content {
  background: rgba(255, 255, 255, .9);
  box-sizing: border-box;
  padding: 5%;
}
#page_concept .lity-container {
  background: #fff;
}
#page_concept .lity, #page_concept .lity-wrap, #page_concept .lity-container {
  width: 100%;
}
#page_concept .lity-content .pop-title {
  text-align: center;
  font-size: 115%;
  font-weight: 600;
  margin: 0 0 1%;
  width: 100%;
}
#page_concept .lity-content .pop-text {
  margin: 0 0 5%;
  line-height: 1.5;
}
#page_concept .lity-content .pop-text .pop-message {
  font-size: 135%;
  font-weight: 600;
  text-align: center;
}
#page_concept .lity-content .pop-text .pop-text-small {
  margin: 3% 0;
}
#page_concept .lity-content .pop-text .pop-text-big {
  font-size: 88%;
  line-height: 2;
}
#page_concept .lity-content .pop-text .pop-text-big + .pop-text-big {
  margin: 3% 0 0;
}
#page_concept .lity-content .pop-text .pop-text-big strong {
  color: darkorange;
}
#page_concept .lity-content .pop-image {
  text-align: center;
  margin: 0 0 3%;
}
#page_concept .lity-content .pop-image img {
  vertical-align: top;
}
#page_concept .lity-close {
  position: absolute;
  color: #000;
  width: 45px;
  height: 45px;
  line-height: 45px;
  text-shadow: inherit;
  font-size: 300%;
  font-weight: 400;
}
.block_concept-lineup .pop-wrap {
  position: relative;
}
.block_concept-lineup .pop-wrap .lineup-pop {
  text-align: center;
}
.block_concept-lineup .lineup-pop img {
  display: block;
  margin: 0 auto;
  width: 80%;
}
.block_concept-lineup .pop-wrap .dl_data {
  padding: 10px 0 0;
}
.block_concept-lineup .pop-wrap .dl_data dd .ua {
  display: none;
}
.block_concept-lineup .pop-wrap .dl_data dd small {
  font-size: 88%;
}
#page_concept .lineup-pop .btn_bg {
  text-align: center;
  background: url(../img/concept/pop/btn_bg.png) no-repeat center;
  background-size: contain;
  color: #000;
  margin: 15px auto 0;
  width: 90%;
  font-weight: 600;
  transition: all .2s;
  font-size: 88%;
  padding: 1.2% 0;
}
/* ====================================
page-name #youtube
====================================*/
.block_youtube {
  margin: 0 0 30%;
}
.block_youtube .inner {
  overflow: hidden;
}
.block_youtube .youtube-set {
  margin: 0 0 12%;
}
.block_youtube .youtube-set .youtube-wrap {
  position: relative;
  padding: 56.25% 0 0;
  margin: 0 0 10px;
}
.block_youtube .youtube-set .youtube-wrap iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.block_youtube .youtube-set p {
  font-size: 94%;
  font-weight: 600;
}
.list_youtube {
  overflow: hidden;
}
/* ====================================
page-name #movie
====================================*/
#page_movie .block_page-top img {
  width: 60%;
}
.block_single .movie-title-box {
  margin: 0 auto 10px;
}
.block_single .movie-wrap {
  position: relative;
  height: 0;
  padding: 56.25% 0 0;
  overflow: hidden;
  margin: 0 0 50px;
}
.block_single .movie-wrap iframe, .block_single .movie-wrap video {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.block_movie .list_works .thumbnail {
  height: 0;
  padding: 56.25% 0 0;
  margin: 0 0 10px;
}
.block_movie .list_works .thumbnail::before {
  z-index: 5;
}
.block_movie .list_works .thumbnail::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 50px;
  height: 50px;
  z-index: 6;
  pointer-events: none;
  background: url("../img/icon-youtube.png") no-repeat;
  background-size: contain;
}
.block_movie .list_works .thumbnail img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 1;
  bottom: auto;
}
/* ====================================
add 202209
====================================*/
.block_company .area_rinen {
  padding: 70px 0 0;
}
.block_company .area_rinen ul li {
  width: 90%;
  margin: auto;
  text-align: center;
}
.block_company .area_rinen ul li + li {
  margin: 20% auto 0;
}
.block_company .area_rinen .dl_rinen dt {
  background: url("../img/title-ki.jpg") no-repeat left 45%;
  background-size: cover;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 150%;
  font-weight: 700;
  padding: 30% 43%;
  text-shadow: 0 0 #fff, 0 0 #fff, 0 0 #fff, 0 0 #fff;
}
.block_company .area_rinen .dl_rinen dd {
  font-size: 112.5%;
}
.block_company .area_teigi {
  padding: 70px 0 0;
}
.block_company .area_teigi .teigi-text {
  text-align: center;
  font-size: 250%;
  font-weight: 700;
  padding: 10% 0 25%;
  background: url("../img/ha13.png") no-repeat center;
  background-size: contain;
}
.block_company .area_president {
  padding: 70px 0 0;
}
.block_company .area_president figure {
  margin: 0 auto 10%;
}
.block_company .area_president figure .image {
  width: 50%;
  margin: 0 auto 5%;
}
.block_company .area_president figure figcaption {
  width: 70%;
  margin: auto;
  font-size: 106.25%;
  font-weight: 700;
}
.block_company .area_president figure figcaption strong {
  font-size: 130%;
}
.block_company .area_president .president_text {
  font-size: 106.25%;
}
.block_company .area_president .president_text p + p {
  margin: 8% 0 0;
}
.block_company .area_company-info {
  padding: 40% 0 0;
  margin: 0 auto 10%;
  background: url("../img/ha14.png") no-repeat right 5% top;
  background-size: 40% auto;
}
.block_company .area_company-access {
  padding: 35% 0 0;
  background: url("../img/ha14.png") no-repeat left 5% top;
  background-size: 35% auto;
}
/*---------------------------------------------------------*/
.block_companyRecruit {
  margin: 0 0 20%;
}
.block_companyRecruit .recruit_title {
  border: solid 1px #231815;
  font-size: 150%;
  line-height: 64px;
  text-align: center;
  position: relative;
  cursor: pointer;
  padding: 0 65px 0 0;
}
.block_companyRecruit .recruit_title::before {
  content: '';
  width: 65px;
  height: 65px;
  background: #595a4e;
  position: absolute;
  right: 0;
  top: 0;
}
.block_companyRecruit .recruit_title::after {
  content: '';
  width: 35px;
  height: 35px;
  position: absolute;
  right: 13px;
  top: 0;
  bottom: 0;
  margin: auto;
  background: url(../img/company/arrow.svg) no-repeat center;
  background-size: contain;
  transition: all .5s;
}
.block_companyRecruit .recruit_title.accordion__open::after {
  transform: rotateX(180deg);
}
.block_companyRecruit .accordion_wrap {
  border: solid 1px #231815;
  border-top: none;
}
.block_companyRecruit .recruit_subTitle {
  font-size: 130%;
  padding: 20px 0;
  text-align: center;
}
.list_recruit {
  width: 90%;
  margin: auto;
}
.list_recruit > li {
  border-top: solid 1px #231815;
}
.list_recruit dl {
  padding: 15px 0;
}
.list_recruit dt {
  font-size: 125%;
  margin: 0 0 3%;
}
.list_recruit dd {
  font-size: 106.25%;
  line-height: 2;
}
.list_recruit dd small {
  display: inline-block;
  font-size: 86%;
  line-height: 1.5;
}
.list_recruit ol li + li {
  position: relative;
  padding: 25px 0 0;
}
.list_recruit ol li + li::before {
  content: '';
  width: 7px;
  height: 7px;
  border-bottom: solid 1px #231815;
  border-right: solid 1px #231815;
  transform: rotateZ(45deg);
  position: absolute;
  top: 5px;
  left: 80px;
  margin: auto;
}
/*---------------------------------------------------------*/
.block_companySdgs {
  margin: 0 0 20%;
}
.block_companySdgs .sdgs_title {
  text-align: center;
  font-size: 150%;
  margin: 0 0 10%;
}
.block_companySdgs .sdgs_img01 {
  text-align: center;
  margin: 0 auto 10%;
}
.block_companySdgs .sdgs_lead {
  font-size: 125%;
  text-align: center;
  margin: 0 0 8%;
}
.block_companySdgs .sdgs_img02 {
  text-align: center;
  margin: 0 auto;
}
.pdf_wrap .inner {
  width: 100%;
}
.bg02_1 {
  background-image: url(../img/model-house2/main.png) !important
}
.block_model .area_model-set .set-title .set-title02-1 {
  width: 30%;
}
.block_model .area_model-set .set-title .set-title03-1 {
  width: 38%;
}
.block_model-house2 .area_model-set .set.scroll__start .set-image {
  margin-top: 15px;
}
.block_model-house2 .area_model-set .set-title .set-title04 {
  width: 30%;
}
.block_model-house2 .area_model-set .set-title .set-title05 {
  width: 30%;
}
.hanbaitext {
  padding-top: 35px;
}
.hanbaitext h4 {
  font-size: 5vw;
}
.hanbaitext___data {
  margin: 20px 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  font-size: 4vw;
}
.block_model-house2 .area_model-set .set-title .set-title01 {
  width: 62%;
}
/*-------------  modelhouse2↓ ---------------*/
.block_model-house2 .model_title {
  position: relative;
  background: url(../img/model-house2/main.webp) no-repeat center top;
  background-size: contain;
  margin: auto;
  text-align: center;
  padding: 60% 0 0;
}
.block_model-house2 .model_title h2 {
  font-size: 175%;
  font-weight: 700;
  line-height: 1.5;
  text-shadow: 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff;
  letter-spacing: .05em;
}
.block_model-house2 .model-lead p {
  font-size: 125%;
}
.block_model-house2 .bnt_insta {
  text-align: center;
  margin: 0 0 5%;
}
.block_model-house2 .instagram_box {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.block_model-house2 .instagram_box li {
  width: calc(95% / 3);
}
.block_model-house2 .instagram_box li img {
  vertical-align: top;
}
.block_model-house2 .area_model-set .set-title {
  position: relative;
  left: 0;
  top: 0;
  margin: 0 0 5%;
}
.block_model-house2 .area_model-set .set-text {
  text-align: left;
  margin: 0 0 10%;
}
.block_model-house2 .section_passive .passive_text p {
  margin: 0 0 10%;
}
.block_model-house2 .section_passive .passive_img01 {
  margin: 0 0 5%;
}
.block_model-house2 .section_passive .passive_layout01 {
  width: 63.53%;
  margin: 10% auto 0;
}
/*-----------------------------*/
.block_pageTitle {
  padding: 200px 0 100px;
}
.block_pageTitle .pageTitle {
  text-align: center;
  font-size: 200%;
  font-weight: 700;
}
.block_base {
  margin: 0 0 100px;
}
.block_base .base_lead {
  margin: 0 0 30px;
}
.block_base p + p {
  margin: 15px 0 0;
}
.block_base p.small {
  font-size: 88%;
}
.list_policy {
  max-width: 1100px;
  margin: auto;
  font-size: 87.5%;
}
.list_policy > li + li {
  margin: 30px 0 0;
}
.list_policy dl dt {
  font-size: 114%;
  font-weight: 700;
  margin: 0 0 10px;
}
p + .list_subList {
  margin: 15px 0 0;
}
.list_subList > li + li {
  margin: 20px 0 0;
}

/*----20250414----*/
.sec04_set.set01 .set_image{
	max-width:975px;
	margin: auto;
}
.sec04_set.set02 .set_image{
	max-width:720px;
	margin: auto;
}
.sec04_set.set02 .att_text{
	text-align: center;
	margin: 1em 0 0;
	font-size: 75%;
}

#anchor02.sec02 .lead_center-small{
	font-size: 110%;
}

/*----202509----*/
.aobacoBnr{
    width: 90%;
    margin: 3em auto 0;
    text-align: center;
}
