@charset "UTF-8";
@font-face {
  font-family: "Skia";
  src: url("../font/mplus.woff") format("woff");
}

body {
  position: relative;
  -webkit-text-size-adjust: 100%;
  font-size: 16px;
  font-size: 1.6rem;
  font-family: noto-sans-cjk-jp, sans-serif;
  font-weight: normal;
  font-style: normal;
  color: #3a3a3a;
  letter-spacing: -0.02em;
  overflow: hidden;
}

#wrapper {
  position: relative;
  margin: 0 auto;
}

figure,
figcaption {
  margin-bottom: 0;
  padding: 0;
}

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

img {
  max-width: 100%;
  height: auto;
}

.no-click {
  pointer-events: none;
}

/*==============================================================
	#header
===============================================================*/
header {
  position: relative;
  width: 100%;
  /*　ハンバーガーボタン　*/
}

header.fixed {
  position: fixed;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  z-index: 97;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

header.fixed .nav_box {
  display: none;
}

header .head_logo {
  padding: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: clamp(20px, 2vw, 24px);
}

header .head_logo img {
  width: 300px;
}

header .head_logo a {
  color: #000;
}

header .header_top {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #fff;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

header .btn_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

header .nav_box {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: #000;
  padding: 40px 0;
}

header .nav_box .nav_ul {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

header .nav_box .nav_ul li {
  position: relative;
  padding-right: 20px;
  margin-right: 20px;
}

header .nav_box .nav_ul li::before {
  content: "/";
  position: absolute;
  left: 100%;
  color: #fff;
}

header .nav_box .nav_ul li:last-child {
  margin-right: 0;
  padding-right: 0;
}

header .nav_box .nav_ul li:last-child::before {
  content: none;
}

header .nav_box .nav_ul a {
  color: #fff;
  font-size: clamp(16px, 2vw, 18px);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

header .nav_box .nav_ul a:hover {
  border-bottom: 2px solid #fff;
  padding-bottom: 5px;
}

header #globalMenuSp {
  display: none;
}

header .hamburger_box {
  width: 100px;
  position: relative;
}

header .hamburger {
  display: block;
  position: absolute;
  z-index: 99;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  width: 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
}

header .hamburger span {
  display: block;
  position: absolute;
  width: 30px;
  height: 2px;
  left: 6px;
  background: #000;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

header .hamburger span:nth-child(1) {
  top: 10px;
}

header .hamburger span:nth-child(2) {
  top: 20px;
}

header .hamburger span:nth-child(3) {
  top: 30px;
}

header .hamburger.active {
  position: fixed;
  top: 37px;
  right: 7px;
  left: auto;
}

header .hamburger.active span:nth-child(1) {
  top: 16px;
  left: 6px;
  background: #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

header .hamburger.active span:nth-child(2),
header .hamburger.active span:nth-child(3) {
  top: 16px;
  background: #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

header #globalMenuSp {
  z-index: 98;
  top: 0;
  left: 0;
  height: 100%;
  color: #000;
  background: #000;
  text-align: center;
  width: 100%;
  display: none;
  -webkit-transition: opacity 0.6s ease, visibility 0.6s ease;
  transition: opacity 0.6s ease, visibility 0.6s ease;
}

header #globalMenuSp .nav_ul {
  padding: 100px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

header #globalMenuSp .nav_ul li {
  margin: 0 1%;
  list-style-type: none;
  padding: 0;
  width: 30%;
  -webkit-transition: 0.4s all;
  transition: 0.4s all;
  border-left: none;
  font-size: 18px;
  font-size: 1.8rem;
  border-bottom: 1px solid #fff;
}

header #globalMenuSp .nav_ul li a {
  font-size: 20px;
  font-size: 2rem;
  display: block;
  padding: 20px 0;
  color: #fff;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

header #globalMenuSp .nav_ul li a:hover {
  background-color: #747e6a;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

header #globalMenuSp .contents ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

header #globalMenuSp .contents ul li {
  margin: 0 10px;
}

header #globalMenuSp .sub_menu {
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  top: auto;
  left: auto;
  border-top: 1px solid #fff;
}

header #globalMenuSp .sub_menu li {
  width: 50%;
  padding: 0;
  border-bottom: none;
}

header #globalMenuSp .sub_menu li a {
  padding: 10% 0;
}

header #globalMenuSp .sub_menu li:last-child {
  padding: 0;
}

header #globalMenuSp .tel_btn {
  color: #fff;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 10px 20px 0;
  border-radius: 100px;
  font-size: clamp(20px, 2vw, 28px);
}

header #globalMenuSp .tel_btn img {
  width: 25px;
  margin-right: 10px;
}

header #globalMenuSp .time {
  color: #fff;
}

header #globalMenuSp.active {
  position: fixed;
  display: block;
  overflow: scroll;
}

/*==============================================================
	#共通
===============================================================*/
.document_btn {
  position: relative;
  width: 260px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: #747e6a;
  color: #fff;
  text-align: center;
  padding: 20px 20px 20px 50px;
  font-size: clamp(20px, 2vw, 24px);
}

.document_btn span {
  position: relative;
}

.document_btn span::before {
  content: "";
  background: url(../img/ico_document_w.svg) no-repeat;
  width: 30px;
  height: 30px;
  position: absolute;
  right: 105%;
  top: 0;
  bottom: 0;
  margin: auto;
}

.document_btn small {
  position: absolute;
  bottom: 5px;
  left: 0;
  right: 0;
  margin: auto;
  font-size: 12px;
}

.contact_btn {
  width: 260px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: #8f6a53;
  color: #fff;
  text-align: center;
  padding: 20px 20px 20px 50px;
  font-size: clamp(20px, 2vw, 24px);
}

.contact_btn span {
  position: relative;
}

.contact_btn span::before {
  content: "";
  background: url(../img/ico_mail_w.svg) no-repeat;
  width: 37px;
  height: 30px;
  position: absolute;
  right: 105%;
  top: 0;
  bottom: 0;
  margin: auto;
}

.more_btn {
  width: 200px;
  font-family: "Skia";
  border: 2px solid #747e6a;
  background-color: #fff;
  padding: 12px 10px;
  font-size: clamp(20px, 2vw, 24px);
  color: #747e6a;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border-radius: 100px;
}

.more_btn::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 80%;
  margin: auto;
  width: 10px;
  height: 10px;
  border-top: 2px solid #747e6a;
  border-right: 2px solid #747e6a;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.more_btn:hover {
  opacity: 0.8;
}

.more_btn:hover::before {
  left: 85%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.more_btn_box {
  text-align: center;
}

.more_btn_box .more_btn {
  width: 390px;
  margin: auto;
  font-size: clamp(24px, 2vw, 36px);
}

.more_btn_box .more_btn::before {
  width: 15px;
  height: 15px;
  left: 85%;
  border-top: 2px solid #747e6a;
  border-right: 2px solid #747e6a;
}

.more_btn_box .more_btn:hover {
  opacity: 0.8;
}

.more_btn_box .more_btn:hover::before {
  left: 90%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.contact_area .contact_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.contact_area .contact_list li {
  width: 33.33%;
  text-align: center;
  padding: 70px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.contact_area .contact_list .tl {
  color: #fff;
  font-size: clamp(36px, 2vw, 42px);
  margin-bottom: 20px;
}

.contact_area .contact_list .btn {
  color: #fff;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 10px 20px;
  border-radius: 100px;
  font-size: clamp(20px, 2vw, 25px);
}

.contact_area .contact_list .btn img {
  width: 25px;
  margin-right: 10px;
}

.contact_area .contact_list .btn:hover {
  opacity: 0.8;
}

.contact_area .contact_list .time {
  color: #fff;
}

.contact_area .contact_list .document_box {
  background: url(../img/bg_quotation.png) no-repeat center/cover;
  background-color: #000;
  position: relative;
}

.contact_area .contact_list .document_box .btn {
  background-color: #747e6a;
}

.contact_area .contact_list .document_box small {
  color: #fff;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}

.contact_area .contact_list .contact_box {
  background: url(../img/bg_contact.png) no-repeat center/cover;
  background-color: #000;
}

.contact_area .contact_list .contact_box .btn {
  background-color: #8f6a53;
}

.contact_area .contact_list .tel_box {
  background: url(../img/bg_tel.png) no-repeat center/cover;
  background-color: #000;
}

.contact_area .contact_list .tel_box .tl {
  margin-bottom: 0;
}

.contact_area .contact_list .tel_box .btn {
  font-size: clamp(32px, 2vw, 42px);
  padding: 0;
}

#sidebar {
  position: fixed;
  right: 0px;
  bottom: 30vh;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  z-index: 9;
}

#sidebar span {
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}

#sidebar a {
  color: #8f6a53;
  background-color: #eee7e3;
  border-radius: 10px 0 0 10px;
  padding: 35px 15px;
  font-size: clamp(22px, 2vw, 24px);
  display: block;
  border: 2px solid #8f6a53;
  border-right: none;
}

#sidebar:hover {
  opacity: 0.8;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

#toTop {
  position: fixed;
  right: 20px;
  bottom: 20px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  z-index: 9;
}

#toTop img {
  width: 50px;
  height: 50px;
}

#toTop:hover {
  bottom: 25px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

footer {
  background: #efefef;
  color: #333;
  padding: 50px 0 0;
}

footer .ft_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin-bottom: 30px;
}

footer .ft_box {
  width: 30%;
}

footer .ft_logo {
  font-size: clamp(20px, 2vw, 24px);
  color: #000;
  display: block;
  margin-bottom: 20px;
}

footer access {
  font-size: 14px;
  font-size: 1.4rem;
  display: block;
  margin-bottom: 10px;
}

footer .tel {
  display: block;
  color: #000;
  margin-bottom: 30px;
}

footer .tel img {
  width: 20px;
  margin-right: 10px;
}

footer .sns_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

footer .sns_list li {
  margin-right: 20px;
}

footer .sns_list img {
  width: 40px;
}

footer .sns_list a:hover {
  opacity: 0.8;
}

footer .map_box {
  width: 30%;
  margin-right: 50px;
}

footer .map {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

footer .map iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

footer .ft_nav_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

footer .ft_nav_box .nav {
  margin-right: 30px;
}

footer .ft_nav_box .nav li {
  line-height: 1;
  margin-bottom: 15px;
}

footer .ft_nav_box .nav li a {
  color: #000;
}

footer .ft_nav_box .nav li a:hover {
  opacity: 0.5;
}

footer .r2 {
  width: 100%;
  text-align: right;
  margin-left: auto;
}

footer .r2 img {
  max-width: 200px;
}

footer .copy {
  background: #000;
  text-align: center;
  padding: 10px;
  color: #fff;
  font-size: 12px;
  font-size: 1.2rem;
}

/*==============================================================
	#home
===============================================================*/
#home .mainvisual_area {
  margin-bottom: 100px;
}

#home .mainvisual_area .mv {
  position: relative;
}

#home .mainvisual_area .mv .sp_el {
  display: none;
}

#home .mainvisual_area .mv_list {
  width: 100%;
  margin-left: auto;
}

#home .mainvisual_area .mv_list img {
  width: 100%;
  height: auto;
}

#home .mainvisual_area .mv_bnr {
  position: absolute;
  right: 0;
  bottom: 30px;
  width: 100%;
  max-width: 500px;
}

#home .mainvisual_area .mv_bnr img {
  max-width: 100%;
  height: auto;
}

#home .mainvisual_area .mv_box {
  position: absolute;
  top: 50%;
  left: 29%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

#home .mainvisual_area .mv_box .mv_tl {
  opacity: 0;
  font-size: 51px;
  font-size: 5.1rem;
  font-size: clamp(30px, 3.7vw, 50px);
  font-weight: normal;
}

#home .mainvisual_area .mv_box .mv_tl .green {
  color: #747e6a;
  background-color: rgba(255, 255, 255, 0.8);
  padding: 10px 20px;
  display: inline-block;
  margin-bottom: 10px;
}

#home .mainvisual_area .mv_box .mv_tl .orange {
  color: #8f6a53;
  background-color: rgba(255, 255, 255, 0.8);
  padding: 10px 20px;
  display: inline-block;
}

#home .mainvisual_area .mv_box .mv_tl.is-scroll {
  -webkit-animation: slideUP 1.5s ease-out 0.5s 1 forwards;
  animation: slideUP 1.5s ease-out 0.5s 1 forwards;
}

#home .mainvisual_area .slick-dots {
  bottom: 15px;
}

#home .mainvisual_area .slick-dots li {
  width: 100px;
  height: 10px;
}

#home .mainvisual_area .slick-dots li button:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  opacity: 1;
  width: 100px;
  height: 10px;
  color: #fff;
  border: 2px solid;
}

#home .mainvisual_area .slick-dots li.slick-active button::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  opacity: 1;
  width: 100px;
  height: 10px;
  background: #fff;
  border: 2px solid;
}

#home .mainvisual_area .news_box {
  width: 33vw;
  background-color: #fff;
  padding: 20px;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 3;
  height: 150px;
}

#home .mainvisual_area .news_box::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 100%;
  border-bottom: 150px solid #fff;
  border-left: 70px solid transparent;
}

#home .mainvisual_area .news_box .news_tl_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 20px;
}

#home .mainvisual_area .news_box .tl {
  font-weight: normal;
  font-size: clamp(24px, 2vw, 42px);
  color: #747e6a;
  position: relative;
}

#home .mainvisual_area .news_box .news_list li {
  position: relative;
  color: #000;
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: 15px;
}

#home .mainvisual_area .news_box .news_list li:last-child {
  margin-bottom: 0;
}

#home .mainvisual_area .news_box .news_list li .new {
  margin-right: 8px;
  background-color: #747e6a;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #fff;
  padding: 3px 10px;
}

#home .mainvisual_area .news_box .news_list li .date {
  margin-right: 10px;
}

#home .mainvisual_area .news_box .news_list li .txt {
  white-space: nowrap;
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
}

#home .mainvisual_area .news_box .news_list li a {
  color: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#home .about_area {
  margin-bottom: 100px;
}

#home .about_area .about_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 80px;
}

#home .about_area .about_list li {
  width: 32%;
}

#home .about_area .about_list li .photo {
  margin-bottom: 30px;
}

#home .about_area .about_list li .tl {
  text-align: center;
  font-size: clamp(30px, 3vw, 40px);
  line-height: 1.3;
  margin: 0 auto 30px;
  color: #fff;
  width: 200px;
  height: 200px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border-radius: 100%;
}

#home .about_area .about_list li .tl span {
  display: block;
  font-size: clamp(24px, 2vw, 34px);
}

#home .about_area .about_list li .txt {
  padding: 0 5px;
  font-size: clamp(16px, 2vw, 19px);
}

#home .about_area .about_list li:nth-child(1) .tl {
  background-color: #8f6a53;
}

#home .about_area .about_list li:nth-child(2) .tl {
  background-color: #797a7a;
}

#home .about_area .about_list li:nth-child(3) .tl {
  background-color: #747e6a;
}

#home .characteristic_area {
  margin-bottom: 100px;
}

#home .characteristic_area .characteristic_tl {
  text-align: center;
  margin-bottom: 50px;
}

#home .characteristic_area .characteristic_tl .bk {
  color: #fff;
  font-size: clamp(24px, 2vw, 32px);
  padding: 5px 20px;
  display: inline-block;
  border-radius: 5px;
  margin-bottom: 10px;
}

#home .characteristic_area .characteristic_tl .bk.green {
  background-color: #747e6a;
}

#home .characteristic_area .characteristic_tl .bk.orange {
  background-color: #8f6a53;
}

#home .characteristic_area .characteristic_tl .ja {
  display: block;
  font-size: clamp(36px, 2vw, 42px);
}

#home .characteristic_area .characteristic_tl_box .characteristic_tl .ja {
  font-size: clamp(48px, 2vw, 60px);
}

#home .characteristic_area .characteristic_box {
  border: 2px solid #b1bda5;
  margin-bottom: 80px;
}

#home .characteristic_area .characteristic_box .tl {
  background-color: #b1bda5;
  text-align: center;
  padding: 10px;
  font-size: clamp(24px, 2vw, 42px);
}

#home .characteristic_area .characteristic_box .txt {
  padding: 20px 40px;
  font-size: clamp(18px, 2vw, 20px);
}

#home .characteristic_area .characteristic_box .txt span {
  display: block;
  font-size: clamp(20px, 2vw, 25px);
  color: #747e6a;
}

#home .characteristic_area .interior_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 80px;
}

#home .characteristic_area .interior_list li {
  width: 33%;
  margin: 0 2%;
}

#home .characteristic_area .interior_list .photo {
  margin-bottom: 20px;
}

#home .characteristic_area .interior_list .tl {
  font-size: clamp(24px, 2vw, 28px);
  margin-bottom: 20px;
  position: relative;
  padding-left: 40px;
}

#home .characteristic_area .interior_list .tl::before {
  content: "";
  width: 25px;
  height: 25px;
  border-radius: 5px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-color: #747e6a;
}

#home .characteristic_area .interior_list .txt {
  font-size: clamp(16px, 2vw, 18px);
}

#home .characteristic_area .exterior_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 80px;
}

#home .characteristic_area .exterior_list li {
  width: 31%;
}

#home .characteristic_area .exterior_list .photo {
  margin-bottom: 20px;
}

#home .characteristic_area .exterior_list .tl {
  font-size: clamp(24px, 2vw, 28px);
  margin-bottom: 20px;
  position: relative;
  padding-left: 40px;
}

#home .characteristic_area .exterior_list .tl::before {
  content: "";
  width: 25px;
  height: 25px;
  border-radius: 5px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-color: #8f6a53;
}

#home .characteristic_area .exterior_list .txt {
  font-size: clamp(16px, 2vw, 18px);
}

#home .characteristic_area .exterior_list .txt small {
  display: block;
  margin-top: 10px;
}

#home .introduction_area {
  margin-bottom: 80px;
}

#home .introduction_area .product_box {
  border: 2px solid #747e6a;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 10px;
  margin-bottom: 100px;
}

#home .introduction_area .product_box .tl {
  background-color: #747e6a;
  color: #fff;
  padding: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: clamp(40px, 2vw, 49px);
  border-radius: 5px;
}

#home .introduction_area .product_box .txt {
  padding: 10px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: clamp(20px, 2vw, 22px);
}

#home .introduction_area .housetype {
  margin-bottom: 50px;
}

#home .introduction_area .housetype .type_tl {
  position: relative;
  background-color: #7f7f7f;
  color: #fff;
  text-align: center;
  padding: 50px 0 10px;
  font-size: clamp(48px, 2vw, 57px);
}

#home .introduction_area .housetype .type_tl span {
  width: 100%;
  max-width: 600px;
  position: absolute;
  top: -25px;
  left: 0;
  right: 0;
  margin: auto;
  color: #7f7f7f;
  background-color: #fff;
  border: 2px solid;
  border-radius: 100px;
  font-size: clamp(30px, 2vw, 36px);
}

#home .introduction_area .housetype .box {
  padding: 50px;
}

#home .introduction_area .housetype .box .photo {
  margin-bottom: 50px;
}

#home .introduction_area .housetype .box .txt {
  font-size: clamp(20px, 2vw, 24px);
}

#home .point_area {
  background-color: #e8e8e6;
  padding: 100px 0;
}

#home .point_area .point_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 30px;
}

#home .point_area .point_list li {
  width: 31%;
  max-width: 400px;
  height: 360px;
  border: 2px solid #747e6a;
  border-radius: 20px;
  margin: 0 1%;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: #fff;
  margin-bottom: 30px;
  overflow: hidden;
}

#home .point_area .point_list li:first-child {
  display: block;
  background-color: #7e8f5f;
}

#home .point_area .point_list .ico {
  margin-bottom: 20px;
}

#home .point_area .point_list .ico img {
  max-width: 300px;
  height: 150px;
}

#home .point_area .point_list .tl {
  font-size: clamp(30px, 2vw, 36px);
  margin-bottom: 10px;
}

#home .point_area .point_list .txt {
  font-size: clamp(18px, 2vw, 18px);
}

#home .construction_area {
  padding: 100px 0;
}

#home .construction_area .construction_box {
  margin-bottom: 80px;
}

#home .construction_area .construction_box:nth-child(even) .type {
  background-color: #747e6a;
}

#home .construction_area .construction_box:nth-child(odd) .type {
  background-color: #8f6a53;
}

#home .construction_area .box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#home .construction_area .photo {
  height: 500px;
  margin-bottom: 30px;
}

#home .construction_area .type {
  width: 30%;
  border-radius: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 50px 0;
  color: #fff;
  font-size: clamp(42px, 2vw, 50px);
}

#home .construction_area .txt_box {
  width: 70%;
}

#home .construction_area .txt {
  padding: 30px;
}

#home .construction_area .more_btn {
  margin: auto;
}

#home .construction_area .blockquote_box {
  width: 80%;
  margin: 50px auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#home .construction_area .blockquote_box .sub_photo {
  margin-right: 20px;
}

#home .construction_area .blockquote_box .sub_txt_box a {
  color: #3c98ff;
}

#home .construction_area .blockquote_box blockquote {
  padding: 40px;
  background: #efefef;
  margin-bottom: 10px;
  border-radius: 5px;
  position: relative;
}

#home .construction_area .blockquote_box blockquote::before {
  content: "”";
  position: absolute;
  top: 0px;
  line-height: 1;
  left: 10px;
  font-size: 90px;
  opacity: 0.2;
}

/*==============================================================
	#hakobune
===============================================================*/
#hakobune .about_area {
  margin-bottom: 100px;
}

#hakobune .about_area .about_list {
  margin-bottom: 80px;
}

#hakobune .about_area .about_list li .fl_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 50px 50px 80px;
}

#hakobune .about_area .about_list li .photo {
  width: 30%;
}

#hakobune .about_area .about_list li .tl {
  text-align: center;
  font-size: clamp(34px, 3vw, 42px);
  color: #747e6a;
  border: 2px solid #747e6a;
  border-radius: 100px;
  padding: 10px;
}

#hakobune .about_area .about_list li .txt {
  width: 65%;
  font-size: clamp(16px, 2vw, 19px);
}

#hakobune .characteristic_area {
  margin-bottom: 100px;
}

#hakobune .characteristic_area .characteristic_tl {
  text-align: center;
  margin-bottom: 50px;
}

#hakobune .characteristic_area .characteristic_tl .bk {
  color: #fff;
  font-size: clamp(24px, 2vw, 32px);
  padding: 5px 20px;
  display: inline-block;
  border-radius: 5px;
  margin-bottom: 10px;
}

#hakobune .characteristic_area .characteristic_tl .bk.green {
  background-color: #747e6a;
}

#hakobune .characteristic_area .characteristic_tl .bk.orange {
  background-color: #8f6a53;
}

#hakobune .characteristic_area .characteristic_tl .ja {
  display: block;
  font-size: clamp(36px, 2vw, 42px);
}

#hakobune .characteristic_area .characteristic_tl_box .characteristic_tl .ja {
  font-size: clamp(48px, 2vw, 60px);
}

#hakobune .characteristic_area .characteristic_box {
  border: 2px solid #c6d3a9;
  margin-bottom: 80px;
}

#hakobune .characteristic_area .characteristic_box .tl {
  background-color: #c6d3a9;
  text-align: center;
  padding: 10px;
  font-size: clamp(24px, 2vw, 42px);
}

#hakobune .characteristic_area .characteristic_box .txt {
  padding: 20px 40px;
  font-size: clamp(18px, 2vw, 20px);
}

#hakobune .characteristic_area .characteristic_box .txt span {
  display: block;
  font-size: clamp(20px, 2vw, 25px);
  color: #747e6a;
}

#hakobune .characteristic_area .interior_box {
  margin-bottom: 80px;
}

#hakobune .characteristic_area .interior_list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 50px;
}

#hakobune .characteristic_area .interior_list .photo {
  width: 30%;
}

#hakobune .characteristic_area .interior_list .txt_box {
  width: 66%;
}

#hakobune .characteristic_area .interior_list .tl {
  font-size: clamp(24px, 2vw, 28px);
  margin-bottom: 20px;
  position: relative;
  padding-left: 40px;
}

#hakobune .characteristic_area .interior_list .tl::before {
  content: "";
  width: 25px;
  height: 25px;
  border-radius: 5px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-color: #747e6a;
}

#hakobune .characteristic_area .interior_list .txt {
  font-size: clamp(16px, 2vw, 18px);
}

#hakobune .characteristic_area .exterior_list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 50px;
}

#hakobune .characteristic_area .exterior_list .photo {
  width: 30%;
}

#hakobune .characteristic_area .exterior_list .txt_box {
  width: 66%;
}

#hakobune .characteristic_area .exterior_list .tl {
  font-size: clamp(24px, 2vw, 28px);
  margin-bottom: 20px;
  position: relative;
  padding-left: 40px;
}

#hakobune .characteristic_area .exterior_list .tl::before {
  content: "";
  width: 25px;
  height: 25px;
  border-radius: 5px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-color: #8f6a53;
}

#hakobune .characteristic_area .exterior_list .txt {
  font-size: clamp(16px, 2vw, 18px);
}

#hakobune .introduction_area {
  margin-bottom: 80px;
}

#hakobune .introduction_area .product_box {
  border: 2px solid #747e6a;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 10px;
  margin-bottom: 100px;
}

#hakobune .introduction_area .product_box .tl {
  background-color: #747e6a;
  color: #fff;
  padding: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: clamp(40px, 2vw, 49px);
  border-radius: 5px;
}

#hakobune .introduction_area .product_box .txt {
  padding: 10px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: clamp(20px, 2vw, 22px);
}

#hakobune .introduction_area .housetype {
  margin-bottom: 50px;
}

#hakobune .introduction_area .housetype .type_tl {
  position: relative;
  background-color: #7f7f7f;
  color: #fff;
  text-align: center;
  padding: 50px 0 10px;
  font-size: clamp(48px, 2vw, 57px);
}

#hakobune .introduction_area .housetype .type_tl span {
  width: 100%;
  max-width: 600px;
  position: absolute;
  top: -25px;
  left: 0;
  right: 0;
  margin: auto;
  color: #7f7f7f;
  background-color: #fff;
  border: 2px solid;
  border-radius: 100px;
  font-size: clamp(30px, 2vw, 36px);
}

#hakobune .introduction_area .housetype .box {
  padding: 50px;
}

#hakobune .introduction_area .housetype .box .photo {
  margin-bottom: 50px;
}

#hakobune .introduction_area .housetype .box .txt {
  font-size: clamp(20px, 2vw, 24px);
}

#hakobune .standard_area {
  margin-bottom: 100px;
}

#hakobune .standard_area .standard_tbl {
  margin-bottom: 50px;
}

#hakobune .standard_area .standard_tbl table {
  width: 100%;
}

#hakobune .standard_area .standard_tbl th,
#hakobune .standard_area .standard_tbl td {
  padding: 10px;
  border: 1px solid #808080;
  text-align: center;
  font-weight: normal;
}

#hakobune .standard_area .standard_tbl thead th {
  background-color: #9caa8c;
}

#hakobune .standard_area .standard_tbl thead .colspan3 {
  background-color: #d6e2c9;
}

#hakobune .standard_area .standard_tbl tbody th,
#hakobune .standard_area .standard_tbl tbody td {
  padding: 15px 10px;
}

#hakobune .standard_area .standard_tbl tbody th {
  background-color: #d6e2c9;
}

#hakobune .standard_area .txt {
  font-size: clamp(16px, 2vw, 18px);
}

#hakobune .flow_area {
  background-color: #f3f3f3;
  padding: 100px 0;
}

#hakobune .flow_area .txt {
  font-size: clamp(20px, 2vw, 20px);
  text-align: center;
  margin-bottom: 30px;
}

#hakobune .point_area {
  background-color: #fff;
  padding: 100px 0;
}

#hakobune .point_area .point_list li {
  margin-bottom: 30px;
}

#hakobune .point_area .point_list .box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#hakobune .point_area .point_list .ico {
  width: 250px;
  height: 250px;
  border: 2px solid #747e6a;
  border-radius: 20px;
  margin: 0 30px 0 0;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: #fff;
  overflow: hidden;
}

#hakobune .point_area .point_list .ico img {
  max-width: 200px;
  height: 150px;
}

#hakobune .point_area .point_list .txt_box {
  width: calc(100% - 280px);
  padding: 30px 0 0;
}

#hakobune .point_area .point_list .tl {
  font-size: clamp(30px, 2vw, 36px);
  margin-bottom: 15px;
}

#hakobune .point_area .point_list .txt {
  font-size: clamp(16px, 2vw, 16px);
}

#hakobune .practicaln_area {
  padding: 100px 0;
}

#hakobune .practicaln_area .fl_box {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

#hakobune .practicaln_area .practicaln_box {
  width: 48%;
}

#hakobune .practicaln_area .photo {
  margin-bottom: 30px;
}

#hakobune .practicaln_area .tl {
  font-size: clamp(30px, 2vw, 30px);
  text-align: center;
  margin-bottom: 30px;
}

#hakobune .practicaln_area .tl span {
  padding-bottom: 15px;
  border-bottom: 3px solid #747e6a;
}

#hakobune .specification_area {
  margin-bottom: 100px;
}

#hakobune .specification_area .fl_box {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

#hakobune .specification_area .specification_box {
  width: 48%;
}

#hakobune .specification_area .photo {
  margin-bottom: 30px;
}

#hakobune .specification_area .txt_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#hakobune .specification_area .tl_box {
  text-align: center;
  width: 200px;
  height: 200px;
  border-radius: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #fff;
  font-size: clamp(30px, 2vw, 40px);
  margin-right: 30px;
}

#hakobune .specification_area .tl_box span {
  display: block;
  font-size: clamp(20px, 2vw, 24px);
}

#hakobune .specification_area table tr {
  border-bottom: 8px solid #fff;
}

#hakobune .specification_area table th {
  padding: 5px 10px;
}

#hakobune .specification_area table td {
  padding: 5px 10px;
}

#hakobune .specification_area .green .tl_box {
  background-color: #747e6a;
}

#hakobune .specification_area .green table th {
  background-color: rgba(126, 143, 95, 0.3);
}

#hakobune .specification_area .orange .tl_box {
  background-color: #8f6a53;
}

#hakobune .specification_area .orange table th {
  background-color: rgba(219, 113, 42, 0.3);
}

/*==============================================================
	#faq
===============================================================*/
#faq .faq_area {
  margin-bottom: 100px;
}

#faq .faq_area .box {
  margin-bottom: 50px;
}

#faq .faq_area .box .q_tl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  margin-bottom: 30px;
}

#faq .faq_area .box .q_tl .ico {
  position: absolute;
  left: 0;
  color: #747e6a;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  background-color: #fff;
  border-radius: 100%;
  border: 3px solid;
  font-size: clamp(50px, 2vw, 60px);
  font-family: "Skia";
}

#faq .faq_area .box .q_tl .txt {
  width: calc(100% - 40px);
  margin-left: auto;
  background-color: #747e6a;
  color: #fff;
  padding: 15px 15px 15px 50px;
  border-radius: 10px;
  font-size: clamp(20px, 2vw, 24px);
}

#faq .faq_area .box .answerBox {
  display: none;
}

#faq .faq_area .box .a_txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

#faq .faq_area .box .a_txt .ico {
  position: absolute;
  left: 0;
  color: #8f6a53;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  background-color: #fff;
  border-radius: 100%;
  border: 3px solid;
  font-size: clamp(50px, 2vw, 60px);
  font-family: "Skia";
}

#faq .faq_area .box .a_txt .txt {
  width: calc(100% - 40px);
  margin-left: auto;
  border: 3px solid #8f6a53;
  color: #333;
  padding: 15px 15px 15px 50px;
  border-radius: 10px;
  line-height: 1.7;
  font-size: clamp(18px, 2vw, 18px);
}

/*==============================================================
	#company
===============================================================*/
#company .about_area {
  margin-bottom: 80px;
}

#company .about_area .base_contents .photo {
  background: url(../../company/img/pho_about.png) no-repeat center/cover;
  height: 600px;
}

#company .about_area .base_contents .txt_box {
  padding-right: 0;
}

#company .about_area .base_contents .txt_box .m_tl {
  font-size: clamp(26px, 1vw, 28px);
  text-align: left;
  position: relative;
  padding-left: 30px;
  margin-bottom: 30px;
}

#company .about_area .base_contents .txt_box .m_tl::before {
  content: "";
  position: absolute;
  left: 0;
  width: 8px;
  height: 100%;
  background-color: #747e6a;
  border-radius: 10px;
}

#company .about_area .base_contents .txt_box .txt {
  margin-bottom: 0;
}

#company .company_area {
  margin-bottom: 80px;
}

#company .company_area .tbl_box {
  width: 800px;
  margin: auto;
}

#company .company_area table th {
  background-color: rgba(126, 143, 95, 0.3);
  padding: 10px 20px;
  border-bottom: 10px solid #fff;
}

#company .company_area table td {
  padding: 10px 10px 10px 30px;
}

#company .access_area {
  margin-bottom: 100px;
}

#company .access_area .base_contents .map_box {
  width: 80%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

#company .access_area .base_contents .map {
  position: relative;
  width: 100%;
  padding-top: 36.25%;
}

#company .access_area .base_contents .map iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

#company .access_area .base_contents .txt_box {
  width: 40%;
  right: auto;
}

#company .access_area .base_contents .txt_box .m_tl {
  text-align: left;
  position: relative;
  padding-left: 30px;
  margin-bottom: 30px;
  line-height: 1;
}

#company .access_area .base_contents .txt_box .m_tl::before {
  content: "";
  position: absolute;
  left: 0;
  width: 8px;
  height: 100%;
  background-color: #747e6a;
  border-radius: 10px;
}

#company .access_area .base_contents .txt_box address {
  font-size: clamp(18px, 2vw, 18px);
}

#company .access_area .base_contents .txt_box .txt {
  margin-bottom: 0;
  font-size: clamp(18px, 2vw, 18px);
}

#company .access_area .access_box .tl_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

#company .access_area .access_box .tl_box .tl {
  background-color: #747e6a;
  color: #fff;
  padding: 5px 0 5px 30px;
  font-size: clamp(20px, 2vw, 24px);
  width: calc(100% - 50px);
  margin-left: auto;
  text-align: left;
}

#company .access_area .access_box .ico {
  position: absolute;
  background-color: #fff;
  width: 60px;
  height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border: 2px solid #747e6a;
  border-radius: 100%;
}

#company .access_area .access_box .ico.train img {
  width: 25px;
}

#company .access_area .access_box .ico.car img {
  width: 35px;
}

/*==============================================================
	#webcatalog
===============================================================*/
#webcatalog .webcatalog_area {
  margin-bottom: 100px;
}

#webcatalog .webcatalog_area .catalog_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#webcatalog .webcatalog_area .catalog_list li {
  width: 23%;
  margin-bottom: 50px;
  position: relative;
}

#webcatalog .webcatalog_area .catalog_list li.new::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0px 0px 60px 60px;
  border-color: transparent transparent transparent #747e6a;
  position: absolute;
  top: 0;
  left: 0;
}

#webcatalog .webcatalog_area .catalog_list li.new::after {
  content: "NEW";
  color: #fff;
  position: absolute;
  left: 5px;
  top: 5px;
  font-size: 14px;
}

#webcatalog .webcatalog_area .catalog_list .photo {
  margin-bottom: 20px;
  display: block;
  cursor: pointer;
}

#webcatalog .webcatalog_area .catalog_list .tl {
  text-align: center;
  font-size: clamp(18px, 2vw, 20px);
  margin-bottom: 20px;
}

#webcatalog .webcatalog_area .catalog_list .txt {
  font-size: clamp(14px, 2vw, 14px);
  margin-bottom: 30px;
}

#webcatalog .webcatalog_area .catalog_list .dl_btn {
  width: 90%;
  cursor: pointer;
  margin: auto;
  color: #747e6a;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: clamp(20px, 2vw, 20px);
  border: 2px solid;
  padding: 10px;
  border-radius: 100px;
  font-family: "Skia";
}

#webcatalog .webcatalog_area .catalog_list .dl_btn img {
  width: 20px;
  margin-right: 15px;
}

/*==============================================================
	#sale
===============================================================*/
#sale .sale_area {
  margin-bottom: 80px;
}

#sale .sale_area .sale_box {
  margin-bottom: 80px;
}

#sale .sale_area .sale_box .m_tl {
  text-align: center;
  border: 2px solid #747e6a;
  border-radius: 100px;
  color: #747e6a;
  margin-bottom: 50px;
  padding: 10px;
  font-size: clamp(34px, 2vw, 38px);
}

#sale .sale_area .sale_box .box {
  padding: 0 50px;
}

#sale .sale_area .sale_box .photo {
  margin-bottom: 30px;
}

#sale .sale_area .sale_box .tl_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 2px solid #000;
  padding-bottom: 10px;
  margin-bottom: 30px;
}

#sale .sale_area .sale_box .category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#sale .sale_area .sale_box .category li {
  padding: 5px 20px;
  color: #fff;
  text-align: center;
  padding: 5px 20px;
  border-radius: 5px;
  font-size: clamp(14px, 2vw, 18px);
  margin-right: 10px;
}

#sale .sale_area .sale_box .category .new {
  background-color: #747e6a;
}

#sale .sale_area .sale_box .category .stock {
  background-color: #8f6a53;
}

#sale .sale_area .sale_box .category .nostock {
  background-color: #797a7a;
}

#sale .sale_area .sale_box .name {
  font-size: clamp(30px, 2vw, 36px);
  margin-left: 30px;
}

#sale .sale_area .sale_box .price {
  font-size: clamp(30px, 2vw, 36px);
  margin-left: auto;
}

#sale .sale_area .sale_box .txt_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

#sale .sale_area .sale_box .txt {
  width: 65%;
  font-size: clamp(20px, 2vw, 20px);
}

#sale .sale_area .sale_box .info_box {
  width: 30%;
  background-color: #e8e8e6;
  padding: 20px 50px;
}

#sale .sale_area .sale_box .info_box .size {
  text-align: center;
  font-size: clamp(30px, 2vw, 40px);
  margin-bottom: 10px;
}

#sale .sale_area .sale_box .info_box .size small {
  font-size: clamp(20px, 2vw, 20px);
}

#sale .sale_area .sale_box .info_box table tr {
  border-bottom: 10px solid #e8e8e6;
}

#sale .sale_area .sale_box .info_box table th {
  background-color: rgba(126, 143, 95, 0.3);
  padding: 5px 10px;
}

#sale .sale_area .sale_box .info_box table td {
  padding: 5px 10px;
}

#sale .sale_area .sale_box.old_box .m_tl {
  color: #8f6a53;
  border: 2px solid #8f6a53;
}

#sale .sale_area .sale_box.old_box .info_box {
  background-color: #fff4d4;
}

#sale .sale_area .sale_box.old_box table tr {
  border-bottom: 10px solid #fff4d4;
}

#sale .sale_area .sale_box.old_box table th {
  background-color: rgba(219, 113, 42, 0.3);
}

/*==============================================================
	#construction
===============================================================*/
#construction .construction_area .construction_menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0 50px;
  margin-bottom: 60px;
}

#construction .construction_area .construction_menu li {
  width: 24%;
  position: relative;
}

#construction .construction_area .construction_menu li::before {
  content: "";
  width: 15px;
  height: 15px;
  border: 0;
  border-bottom: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  bottom: 15px;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#construction .construction_area .construction_menu li a {
  padding: 10px 0 30px;
  text-align: center;
  color: #fff;
  display: block;
  font-size: clamp(20px, 2vw, 24px);
  border-radius: 10px;
}

#construction .construction_area .construction_menu li:nth-child(odd) a {
  background-color: #747e6a;
}

#construction .construction_area .construction_menu li:nth-child(even) a {
  background-color: #8f6a53;
}

#construction .construction_area .construction_box {
  margin-bottom: 80px;
}

#construction .construction_area .construction_box .m_tl {
  text-align: center;
  border: 2px solid #747e6a;
  border-radius: 100px;
  color: #747e6a;
  margin-bottom: 50px;
  padding: 10px;
  font-size: clamp(34px, 2vw, 38px);
}

#construction .construction_area .construction_box .box {
  padding: 0 50px;
}

#construction .construction_area .construction_box .photo {
  height: 500px;
  margin-bottom: 50px;
}

#construction .construction_area .construction_box .txt_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

#construction .construction_area .construction_box .txt {
  width: 65%;
  font-size: clamp(20px, 2vw, 20px);
}

#construction .construction_area .construction_box .info_box {
  width: 30%;
  background-color: #e8e8e6;
  padding: 20px 50px;
}

#construction .construction_area .construction_box .info_box .size {
  text-align: center;
  font-size: clamp(30px, 2vw, 40px);
  margin-bottom: 10px;
}

#construction .construction_area .construction_box .info_box .size small {
  font-size: clamp(20px, 2vw, 20px);
}

#construction .construction_area .construction_box .info_box table tr {
  border-bottom: 10px solid #e8e8e6;
}

#construction .construction_area .construction_box .info_box table th {
  background-color: rgba(126, 143, 95, 0.3);
  padding: 5px 10px;
}

#construction .construction_area .construction_box .info_box table td {
  padding: 5px 10px;
}

#construction .construction_area .construction_box:nth-child(even) .m_tl {
  color: #8f6a53;
  border: 2px solid #8f6a53;
}

#construction .construction_area .construction_box:nth-child(even) .info_box {
  background-color: #fff4d4;
}

#construction .construction_area .construction_box:nth-child(even) table tr {
  border-bottom: 10px solid #fff4d4;
}

#construction .construction_area .construction_box:nth-child(even) table th {
  background-color: rgba(219, 113, 42, 0.3);
}

#construction .construction_area .blockquote_box {
  width: 80%;
  margin: 50px auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#construction .construction_area .blockquote_box .sub_photo {
  margin-right: 20px;
}

#construction .construction_area .blockquote_box .sub_txt_box {
  font-size: clamp(16px, 2vw, 16px);
}

#construction .construction_area .blockquote_box .sub_txt_box a {
  color: #3c98ff;
}

#construction .construction_area .blockquote_box blockquote {
  padding: 40px;
  background: #efefef;
  margin-bottom: 10px;
  border-radius: 5px;
  position: relative;
}

#construction .construction_area .blockquote_box blockquote::before {
  content: "”";
  position: absolute;
  top: 0px;
  line-height: 1;
  left: 10px;
  font-size: 90px;
  opacity: 0.2;
}

#construction .construction_area .wp-pagenavi {
  margin-bottom: 50px;
}

/*==============================================================
	#topics
===============================================================*/
#topics .topics_area {
  margin-bottom: 100px;
}

#topics .topics_area .topics_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 2px solid #747e6a;
  margin-bottom: 50px;
}

#topics .topics_area .topics_box .topics_map {
  display: none;
}

#topics .topics_area .photo {
  width: 400px;
}

#topics .topics_area .box {
  position: relative;
  width: 100%;
  padding: 30px;
}

#topics .topics_area .tl_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid #747e6a;
  padding-bottom: 10px;
  margin-bottom: 10px;
  font-size: clamp(22px, 2vw, 22px);
}

#topics .topics_area .new {
  background-color: #747e6a;
  color: #fff;
  text-align: center;
  padding: 2px 10px;
  margin-right: 20px;
  font-size: clamp(16px, 2vw, 16px);
}

#topics .topics_area .date {
  margin-bottom: 10px;
}

#topics .topics_area .txt {
  margin-bottom: 20px;
  height: 73px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

#topics .topics_area .more_btn {
  margin-left: auto;
}

#topics .topics_detail_area {
  margin-bottom: 100px;
}

#topics .topics_detail_area .photo {
  width: 100%;
  height: 400px;
  margin-bottom: 50px;
}

#topics .topics_detail_area .tl_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid #747e6a;
  padding-bottom: 10px;
  margin-bottom: 10px;
  font-size: clamp(22px, 2vw, 22px);
}

#topics .topics_detail_area .new {
  background-color: #747e6a;
  color: #fff;
  text-align: center;
  padding: 2px 10px;
  margin-right: 20px;
  font-size: clamp(16px, 2vw, 16px);
}

#topics .topics_detail_area .date {
  margin-bottom: 20px;
}

#topics .topics_detail_area .txt_box {
  margin-bottom: 50px;
}

#topics .topics_detail_area .txt_box p {
  margin-bottom: 30px;
}

#topics .topics_detail_area .topics_map {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin-bottom: 20px;
}

#topics .topics_detail_area .topics_map iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/*==============================================================
	#policy
===============================================================*/
#policy .policy_area {
  margin-bottom: 100px;
}

#policy .policy_area .t_txt {
  margin-bottom: 50px;
  font-size: clamp(18px, 2vw, 18px);
}

#policy .policy_area .box {
  margin-bottom: 50px;
}

#policy .policy_area .tl {
  position: relative;
  padding-left: 20px;
  font-size: clamp(30px, 2vw, 36px);
  margin-bottom: 30px;
}

#policy .policy_area .tl::before {
  content: "";
  background-color: #747e6a;
  width: 8px;
  height: 100%;
  position: absolute;
  left: 0;
  border-radius: 10px;
}

#policy .policy_area .txt {
  font-size: clamp(18px, 2vw, 18px);
}

#policy .policy_area .info_box {
  width: 620px;
  margin-top: 30px;
  margin-bottom: 20px;
  background-color: #e8e8e6;
  padding: 30px;
  line-height: 1.8;
  font-size: clamp(18px, 2vw, 18px);
}

#policy .policy_area .list {
  margin: 10px 0;
}

#policy .policy_area .list li {
  position: relative;
  padding-left: 30px;
  font-size: clamp(18px, 2vw, 18px);
}

#policy .policy_area .list li::before {
  content: "・";
  position: absolute;
  left: 0;
}

/*==============================================================
	#company
===============================================================*/
#company .philosophy_area .base_contents .txt_box .tl {
  display: block;
}

#company .greeting_area {
  background: url(../../img/company/bg_greeting.png) no-repeat top/cover;
  padding: 80px 0 120px;
}

#company .greeting_area .base_tl .en {
  color: #333;
}

#company .greeting_area .box.is-scroll .txt {
  -webkit-animation: fadeIn 1s ease-out 0.5s 1 forwards;
  animation: fadeIn 1s ease-out 0.5s 1 forwards;
}

#company .greeting_area .box.is-scroll .photo_box {
  -webkit-animation: fadeIn 1s ease-out 0.8s 1 forwards;
  animation: fadeIn 1s ease-out 0.8s 1 forwards;
}

#company .greeting_area .txt {
  opacity: 0;
  width: 100%;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.8;
  margin-bottom: 50px;
}

#company .greeting_area .photo_box {
  opacity: 0;
  width: 100%;
  text-align: right;
}

#company .greeting_area .photo_box img {
  max-width: 100%;
  height: auto;
}

#company .information_area {
  padding: 80px 0 0px;
}

#company .history_area {
  padding: 80px 0 0px;
}

#company .group_area {
  padding: 80px 0;
}

#company .group_area .base_tl_box {
  margin-bottom: 50px;
}

#company .group_area .txt {
  text-align: center;
  margin-bottom: 50px;
  font-size: 18px;
  font-size: 1.8rem;
}

#company .group_area .fl_box {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#company .group_area .fl_box .logo {
  margin-right: 20px;
}

#company .group_area .fl_box .access {
  font-size: 24px;
  font-size: 2.4rem;
}

/*==============================================================
	#article
===============================================================*/
#article .property_area {
  padding-bottom: 80px;
}

/*==============================================================
	#concept
===============================================================*/
#concept .system_area {
  padding-bottom: 80px;
}

#concept .system_area .inner_wrap {
  width: 1100px;
}

#concept .system_area .lead_tl {
  background-color: #e60012;
  border-radius: 100px;
  text-align: center;
  color: #fff;
  font-size: 24px;
  font-size: 2.4rem;
  padding: 10px;
  margin-bottom: 30px;
}

#concept .system_area .lead_txt {
  font-size: 18px;
  font-size: 1.8rem;
  margin-bottom: 30px;
  line-height: 1.8;
}

#concept .system_area .fl_box {
  opacity: 0;
}

#concept .system_area .fl_box .photo {
  width: 50%;
}

#concept .system_area .fl_box .photo img {
  width: 100%;
  height: auto;
}

#concept .system_area .fl_box .txt {
  width: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 19px;
  font-size: 1.9rem;
  line-height: 1.8;
  padding: 20px;
}

#concept .system_area .fl_box.is-scroll {
  -webkit-animation: slideUP 1s ease-out 0.5s 1 forwards;
  animation: slideUP 1s ease-out 0.5s 1 forwards;
}

#concept .system_area .bottom_txt {
  opacity: 0;
  border: 3px solid #e60012;
  padding: 20px;
  text-align: center;
  font-size: 24px;
  font-size: 2.4rem;
  margin-top: 50px;
}

#concept .system_area .bottom_txt .red {
  color: #e60012;
  font-size: 36px;
  font-size: 3.6rem;
}

#concept .system_area .bottom_txt.is-scroll {
  -webkit-animation: fadeIn 1s ease-out 0.3s 1 forwards;
  animation: fadeIn 1s ease-out 0.3s 1 forwards;
}

#concept .land_area {
  background: url(../../img/concept/bg_land.png) no-repeat top/cover;
  padding: 80px 0 140px;
  position: relative;
}

#concept .land_area::before {
  position: absolute;
  width: 50%;
  left: 0;
  bottom: 0;
  border-bottom: 50px solid #fff;
  border-right: 150px solid transparent;
  display: block;
  content: " ";
}

#concept .land_area::after {
  position: absolute;
  left: 50%;
  bottom: 0;
  right: 0;
  border-bottom: 50px solid #fff;
  border-left: 150px solid transparent;
  display: block;
  content: " ";
}

#concept .land_area .lead_tl {
  font-size: 30px;
  font-size: 3rem;
  margin-bottom: 50px;
  text-align: center;
  font-weight: bold;
  text-shadow: 1px 1px 1px #ffffff, -1px 1px 1px #ffffff, 1px -1px 1px #ffffff, -1px -1px 1px #ffffff, 1px 0px 1px #ffffff, 0px 1px 1px #ffffff, -1px 0px 1px #ffffff, 0px -1px 1px #ffffff;
}

#concept .land_area .lead_tl span {
  position: relative;
  z-index: 1;
}

#concept .land_area .lead_tl span::before {
  content: "";
  background-color: #e60012;
  width: 100%;
  height: 10px;
  position: absolute;
  left: 0;
  bottom: 8px;
  z-index: -1;
}

#concept .land_area .lead_box {
  background-color: #fff;
  padding: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  margin-bottom: 80px;
}

#concept .land_area .lead_box::before {
  content: "";
  position: absolute;
  bottom: -50px;
  left: 0;
  right: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
  border-width: 50px 150px 0 150px;
}

#concept .land_area .lead_box .photo {
  margin-right: 25px;
}

#concept .land_area .lead_box .lead_txt {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.8;
}

#concept .land_area .important_tl {
  background-color: #e60012;
  color: #fff;
  text-align: center;
  padding: 20px;
  font-weight: bold;
  font-size: 30px;
  font-size: 3rem;
  margin-bottom: 50px;
}

#concept .land_area .land_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 50px;
}

#concept .land_area .land_box .box {
  width: 48%;
  padding: 40px;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}

#concept .land_area .land_box .box .tl {
  font-size: 30px;
  font-size: 3rem;
  text-align: center;
  position: relative;
  font-weight: bold;
  margin-bottom: 40px;
}

#concept .land_area .land_box .box .tl::before {
  content: "";
  width: 200px;
  height: 3px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -20px;
  margin: auto;
  background-color: #333;
}

#concept .land_area .land_box .box .txt {
  font-size: 18px;
  font-size: 1.8rem;
}

#concept .land_area .land_box .box.up {
  background: url(../../img/concept/fig_up.png) no-repeat center;
  background-color: #ffebec;
}

#concept .land_area .land_box .box.up .tl::before {
  background-color: #e60012;
}

#concept .land_area .land_box .box.down {
  background: url(../../img/concept/fig_down.png) no-repeat center;
  background-color: #d5f5ff;
}

#concept .land_area .land_box .box.down .tl::before {
  background-color: #00a2e6;
}

#concept .land_area .f_box {
  background-color: #fff;
  padding: 20px;
  font-weight: bold;
  text-align: center;
  font-size: 24px;
  font-size: 2.4rem;
}

#concept .land_area .f_box .red {
  color: #e60012;
  font-size: 36px;
  font-size: 3.6rem;
}

#concept .history_area {
  padding: 80px 0 160px;
}

#concept .history_area .base_contents .txt_box .tl {
  font-size: 36px;
  font-size: 3.6rem;
}

#concept .history_area .base_contents.left {
  margin-bottom: 100px;
}

#concept .history_area .base_contents.left .txt_box .tl {
  font-size: 30px;
  font-size: 3rem;
}

#concept .history_area .base_contents.left .txt_box .tl small {
  display: block;
  color: #333;
}

#concept .lease_area {
  padding: 80px 0;
}

#concept .lease_area .comment_box {
  background-color: #fff38e;
  width: 80%;
  margin: auto;
  border-radius: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  margin-bottom: 80px;
}

#concept .lease_area .comment_box::before {
  content: "";
  position: absolute;
  bottom: -50px;
  left: 0;
  right: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #fff38e transparent transparent transparent;
  border-width: 50px 150px 0 150px;
}

#concept .lease_area .comment_box .txt {
  padding: 30px;
  font-size: 22px;
  font-size: 2.2rem;
  margin-right: 50px;
}

#concept .lease_area .comment_box .fig {
  padding-top: 20px;
}

#concept .lease_area .comment_tl {
  color: #e60012;
  font-size: 30px;
  font-size: 3rem;
  text-align: center;
  font-weight: bold;
  margin-bottom: 50px;
}

#concept .lease_area .fl_box .photo {
  margin-right: 25px;
}

#concept .lease_area .fl_box .photo img {
  max-width: 100%;
  height: auto;
}

#concept .lease_area .fl_box .txt {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.8;
}

#concept .partner_area .base_tl_box {
  background: url(../../img/concept/bg_partner.png) no-repeat top center/cover;
  padding: 70px 0;
  margin-bottom: 0;
}

#concept .partner_area .base_tl_box .base_tl {
  margin-bottom: 30px;
}

#concept .partner_area .base_tl_box .base_tl .en {
  color: #333;
}

#concept .partner_area .base_tl_box .txt {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
}

/*==============================================================
	#business
===============================================================*/
/*==============================================================
	#contact
===============================================================*/
.form_area {
  margin-bottom: 100px;
}

.form_area .base_tbl {
  width: 100%;
  margin-bottom: 40px;
}

.form_area .base_tbl tr {
  border-bottom: 8px solid #fff;
}

.form_area .base_tbl th {
  width: 30%;
  text-align: left;
  background-color: rgba(126, 143, 95, 0.3);
  padding: 15px 0 15px 20px;
}

.form_area .base_tbl td {
  padding: 5px 0 5px 20px;
}

.form_area .base_tbl input[type="text"],
.form_area .base_tbl input[type="tel"],
.form_area .base_tbl input[type="email"],
.form_area .base_tbl textarea {
  border: 1px solid rgba(126, 143, 95, 0.3);
  border-radius: 10px;
  width: 100%;
  padding: 10px;
}

.form_area .base_tbl input[type="radio"] {
  margin-right: 5px;
}

.form_area .base_tbl textarea {
  height: 200px;
}

.form_area .base_tbl select {
  border: 1px solid #cecece;
  padding: 10px;
}

.form_area .base_tbl label {
  margin-right: 15px;
  display: inline-block;
}

.form_area .base_tbl .fl_box {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.form_area .base_tbl .fl_box span {
  width: 70px;
}

.form_area .required {
  background-color: #e60012;
  color: #fff;
  padding: 5px;
  margin-right: 10px;
  line-height: 1.2;
}

.form_area .checkbox-label {
  text-align: center;
  display: block;
}

.form_area .checkbox-label a {
  text-decoration: underline;
  color: #000;
}

.form_area .btn_box {
  text-align: center;
  margin: 50px 0 80px;
}

.form_area .btn_box.custom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.form_area .btn_box.custom p {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.form_area #submit-btn-back {
  color: #fff;
  padding: 15px 20px;
  margin-right: 15px;
  width: 80%;
  border-radius: 100px;
  max-width: 100px;
  font-size: 20px;
  font-size: 2rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  background-color: #7f7f7f;
}

.form_area #submit-btn-back:hover {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  opacity: 0.8;
}

.form_area #submit-btn {
  color: #fff;
  padding: 15px 20px;
  width: 80%;
  border-radius: 100px;
  max-width: 400px;
  font-size: 32px;
  font-size: 3.2rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.form_area #submit-btn.green {
  background-color: #747e6a;
}

.form_area #submit-btn.orange {
  background-color: #8f6a53;
}

.form_area #submit-btn:hover {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  opacity: 0.8;
}

.form_area .checkbox-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.form_area .checkbox-label .wpcf7-not-valid-tip {
  width: 200px;
  position: absolute;
}

.form_area .checkbox-label .wpcf7-list-item-label {
  display: none;
}

.form_area .checkbox-label .inner {
  margin-left: 10px;
}

/*==============================================================
	#thanks
===============================================================*/
#thanks .thanks_area {
  margin-bottom: 50px;
  text-align: center;
}

#thanks .thanks_area .lead_tl {
  font-size: 24px;
  margin-bottom: 20px;
}

#thanks .thanks_area .lead_txt {
  font-size: 18px;
  margin-bottom: 20px;
}

#thanks .thanks_area .btn {
  color: #fff;
  width: 100%;
  max-width: 250px;
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 10px 20px;
  border-radius: 100px;
  font-size: clamp(20px, 2vw, 25px);
  background-color: #747e6a;
}

/*==============================================================
	#error
===============================================================*/
#error .error_area {
  margin-bottom: 50px;
}

#error .error_area #desc {
  font-size: clamp(24px, 2vw, 36px);
  margin-bottom: 20px;
}

#error .error_area .txt {
  margin-bottom: 20px;
}

#error .error_area .txt a {
  text-decoration: underline;
  color: #acba9d;
}

#error .error_area .box {
  margin-bottom: 40px;
}

#error .error_area .box .tl {
  background-color: #acba9d;
  font-size: clamp(20px, 2vw, 30px);
  padding: 10px;
  border-radius: 10px;
  margin-bottom: 20px;
}

#error .error_area .box .circle_list a {
  text-decoration: underline;
  color: #acba9d;
}

/*IEのみ*/
/*END
---------------------------------------------------------------------------------------*/
