@charset "UTF-8";
/*common
----------------------------------------------------*/
/* 設定 */
* {
  margin: 0;
  padding: 0;
}

*,
*::before,
*::after {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

.arial {
  font-family: Arial, Helvetica, "sans-serif" !important;
}

html {
  margin: 0;
  padding: 0;
  font-size: 62.5%;
  height: 100%;
}

body {
  height: 100%;
  color: #333;
  font-family: "Noto Sans JP", YuGothic, "Yu Gothic Medium", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 1.6rem;
  line-height: 1.8;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  font-feature-settings: "palt";
}

img {
  display: block;
  max-width: 100%;
  height: auto;
  border: 0;
}

.imgsharp {
  -webkit-backface-visibility: hidden;
}

a {
  transition: 0.3s;
  text-decoration: none;
}

ul,
li {
  list-style: none;
}

.yu-mi {
  font-family: YuMincho, "Yu Mincho", "MS Mincho", serif;
}

/* clearfix */
.cf:after {
  content: "";
  display: block;
  clear: both;
}

/* 半透明 */
a {
  color: #333;
}

a:hover img {
  transition: all 0.3s;
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
}

.font-italic {
  font-style: italic;
}

img.alignright {
  display: block;
  margin: 0 0 0 auto !important;
}

/* 配置位置 右 */
img.alignleft {
  display: block;
  margin: 0 auto 0 0 !important;
}

/* 配置位置 左 */
img.aligncenter {
  display: block;
  margin: 0 auto !important;
}

/* 配置位置 中央 */
.center {
  text-align: center;
}

.w-100 {
  width: 100%;
}

.inner {
  max-width: 1200px;
  width: 90%;
  margin: 0 auto;
  position: relative;
}

.flex {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.flex.flex-return {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .flex.flex-return {
    display: block;
  }
}

.l-box,
.r-box {
  width: 50%;
}

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.cen {
  text-align: center;
}

.content-wrapper {
  overflow-x: hidden;
}

.for-sp {
  display: none;
}

.for-pc {
  display: block;
}

@media screen and (max-width: 768px) {
  .for-sp {
    display: block;
  }
  .for-pc {
    display: none;
  }
}
.bg_blue {
  background: #f3fafa;
}

.fc_blue {
  color: #0e6eb7;
}

.fc_yellow {
  color: #fdd85c;
}

.fc_orange {
  color: #f96e57;
}

.marker {
  background: linear-gradient(transparent 70%, #fdd85c 0%);
}

.maru_n {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-weight: 400;
  font-style: normal;
}

.maru_b {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-weight: 600;
  font-style: normal;
}

.acumin {
  font-family: acumin-pro, sans-serif;
  font-weight: 600;
  font-style: normal;
}

.tit_obi {
  font-size: 3.7rem;
  position: relative;
  padding: 25px;
  margin: 70px 50px 50px 0;
  padding: 0 2rem;
  color: #fff;
  background: #036eb7;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-weight: 400;
  font-style: normal;
  height: 66px;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .tit_obi {
    margin: 30px 40px 30px 0;
    font-size: 2.2rem;
    line-height: 1.4;
    height: 76px;
  }
}
.tit_obi span {
  position: relative;
  display: block;
}
.tit_obi:before {
  content: "";
  position: absolute;
  right: -20px;
  top: 0;
  bottom: 16px;
  width: 203px;
  height: 177px;
  margin: auto;
  background: url(../img/common/tit_obi_character.svg) no-repeat center center/cover;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .tit_obi:before {
    width: 88px;
    height: 78px;
    right: -45px;
    bottom: -13px;
  }
}
.tit_obi:after {
  position: absolute;
  top: 0;
  display: block;
  height: 48px;
  content: "";
  border: 33px solid #036eb7;
  right: -49px;
  border-right-width: 19px;
  border-right-color: transparent;
  background: #f3fafa;
}
@media screen and (max-width: 768px) {
  .tit_obi:after {
    height: 76px;
    border-right-width: 8px;
    right: -41px;
  }
}

.tit_border {
  font-size: 2.5rem;
  font-weight: bold;
  color: #0e6eb7;
  margin-bottom: 40px;
  padding-left: 30px;
  padding-bottom: 10px;
  border-bottom: 1px solid #0e6eb7;
  border-left: 1px solid #0e6eb7;
}
@media screen and (max-width: 768px) {
  .tit_border {
    font-size: 2rem;
    line-height: 1.6;
    padding: 0 0 15px 15px;
  }
}

.sec {
  padding: 80px 0;
}
@media screen and (max-width: 768px) {
  .sec {
    padding: 50px 0;
  }
}

.type_label {
  color: #fff;
  padding: 7px 10px;
  line-height: 1;
  background: #f96e57;
  display: block;
  width: 100%;
  max-width: 147px;
  text-align: center;
}
.type_label:nth-of-type(2n) {
  margin-top: 5px;
}

.madori_label {
  color: #333;
  padding: 7px 23px;
  line-height: 1;
  display: inline-block;
  background: #dcdcdc;
}

.house_list li {
  margin-bottom: 6%;
}
@media screen and (max-width: 768px) {
  .house_list li {
    margin-bottom: 50px;
  }
}
.house_list .thumbnail {
  width: 30%;
  margin-right: 5%;
}
@media screen and (max-width: 768px) {
  .house_list .thumbnail {
    width: 100%;
    margin-right: 0;
    margin-bottom: 4%;
  }
}
.house_list .txt {
  width: 65%;
}
@media screen and (max-width: 768px) {
  .house_list .txt {
    width: 100%;
  }
}
.house_list .txt .txt_tit {
  align-items: center;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .house_list .txt .txt_tit {
    display: block;
  }
}
.house_list .txt .txt_tit .l-box {
  width: 19%;
  margin-right: 2%;
}
@media screen and (max-width: 768px) {
  .house_list .txt .txt_tit .l-box {
    width: 100%;
  }
}
.house_list .txt .txt_tit .r-box {
  width: 79%;
}
@media screen and (max-width: 768px) {
  .house_list .txt .txt_tit .r-box {
    width: 100%;
  }
}
.house_list .txt .txt_tit .r-box h3 {
  font-size: 2.8rem;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .house_list .txt .txt_tit .r-box h3 {
    font-size: 2rem;
  }
}
.house_list .txt .txt_tit .r-box h3 a {
  color: #036eb7;
}
.house_list .txt .txt_tit .r-box h3 a:hover {
  text-decoration: underline;
}
.house_list .txt .price {
  color: #aa3b2c;
  font-size: 2.6rem;
  font-weight: bold;
}
.house_list .txt table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 20px;
}
.house_list .txt table th,
.house_list .txt table td {
  text-align: center;
  padding: 10px 20px;
  border: 1px solid #dcdcdc;
}
@media screen and (max-width: 768px) {
  .house_list .txt table th,
  .house_list .txt table td {
    padding: 10px;
  }
}
.house_list .txt table th {
  color: #333;
  text-align: center;
  font-weight: bold;
  background: #f3fafa;
}

.btn_box {
  margin-bottom: 80px;
  text-align: center;
}

.btn {
  color: #fff;
  width: 100%;
  display: block;
  max-width: 497px;
  margin: 0 auto;
  padding: 20px;
  background: #0e6eb7 url(../img/common/btn_arrow.svg) no-repeat 95% center/9.562px 16.1057px;
  border: 2px solid #0e6eb7;
}
@media screen and (max-width: 768px) {
  .btn {
    max-width: 280px;
    padding: 15px 20px;
  }
}
.btn:hover {
  color: #0e6eb7;
  background-color: #fff;
}

.btn_yellow {
  color: #333;
  background: #fdd85c url(../img/common/btn_arrow_black.svg) no-repeat 95% center/9.562px 16.1057px;
  border: 2px solid #fdd85c;
}
.btn_yellow:hover {
  color: #fdd85c;
  background-color: #333;
  border: 2px solid #333;
}

.btn_orange {
  color: #fff;
  background: #f96e57 url(../img/common/btn_arrow.svg) no-repeat 95% center/9.562px 16.1057px;
  border: 2px solid #f96e57;
}
.btn_orange:hover {
  color: #f96e57;
  background-color: #fff;
  border: 2px solid #f96e57;
}

.breadcrumbs {
  padding: 10px;
  background: #0e6eb7;
  color: #fff;
}
.breadcrumbs a {
  color: #fff;
}

.page_mv {
  padding: 85px 0;
  overflow: hidden;
  background: url(../img/common/page_mv_bg.jpg) no-repeat center bottom/cover;
}
@media screen and (max-width: 768px) {
  .page_mv {
    padding: 35px 0;
  }
}
.page_mv h2 {
  display: inline-block;
  position: relative;
}
@media screen and (max-width: 768px) {
  .page_mv h2 {
    display: block;
  }
}
.page_mv h2:after {
  content: "";
  width: 225.684px;
  height: 134.7218px;
  position: absolute;
  right: -265.684px;
  top: 0;
  bottom: 0;
  background: url(../img/common/page_mv_character.svg) no-repeat center center/cover;
}
@media screen and (max-width: 768px) {
  .page_mv h2:after {
    right: -41px;
    width: 139.684px;
    height: 102.7218px;
  }
}
.page_mv h2 .jp,
.page_mv h2 .en {
  display: block;
}
.page_mv h2 .jp {
  font-size: 5.2rem;
}
@media screen and (max-width: 768px) {
  .page_mv h2 .jp {
    font-size: 3rem;
    line-height: 1.4;
  }
}
.page_mv h2 .en {
  position: relative;
  color: #0e6eb7;
  font-size: 1.5rem;
  padding-left: 65px;
}
@media screen and (max-width: 768px) {
  .page_mv h2 .en {
    font-size: 1.2rem;
  }
}
.page_mv h2 .en:before {
  content: "";
  width: 57px;
  height: 1px;
  background: #0e6eb7;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  display: block;
}

.line_icon {
  color: #fff;
  display: block;
  background: #00b900;
  padding: 10px;
  text-align: center;
}
.line_icon img {
  width: 46px;
  height: 44px;
  margin: 0 auto 10px;
}

.mail_icon {
  color: #fff;
  display: block;
  background: #ba7d3a;
  padding: 10px;
  text-align: center;
}
.mail_icon img {
  width: 46px;
  height: 44px;
  margin: 0 auto 10px;
}

.login_icon {
  color: #fff;
  display: block;
  background: #ba7d3a;
  padding: 10px;
  text-align: center;
}
.login_icon img {
  width: 46px;
  height: 44px;
  margin: 0 auto 10px;
}

.user_icon {
  color: #fff;
  display: block;
  background: #ba7d3a;
  padding: 10px;
  text-align: center;
}
.user_icon img {
  width: 46px;
  height: 44px;
  margin: 0 auto 10px;
}

.contents .wp-pagenavi {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .contents .wp-pagenavi {
    margin-bottom: 50px;
  }
}
.contents .wp-pagenavi .pages {
  width: auto;
  display: block;
}
.contents .wp-pagenavi .pages:hover {
  color: #036eb7;
  background: none;
}
.contents .wp-pagenavi span,
.contents .wp-pagenavi a {
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #036eb7;
  border: none;
  width: 34px;
  display: inline-block;
}
.contents .wp-pagenavi span:hover,
.contents .wp-pagenavi a:hover {
  font-weight: bold;
  background: #036eb7;
  color: #fff;
  text-align: center;
  font-weight: normal;
}
.contents .wp-pagenavi span.current {
  font-weight: bold;
  background: #036eb7;
  color: #fff;
  width: 34px;
  display: inline-block;
  text-align: center;
  font-weight: normal;
}
.contents .wp-pagenavi .nextpostslink,
.contents .wp-pagenavi .previouspostslink {
  width: auto;
}

/*--------------------------------------
        ct_area
--------------------------------------*/
@media screen and (max-width: 768px) {
  .ct_area {
    padding: 100px 0 50px;
  }
}
.ct_area h2 {
  position: relative;
  text-align: center;
  font-size: 3.8rem;
  margin-bottom: 65px;
  padding-top: 60px;
}
@media screen and (max-width: 768px) {
  .ct_area h2 {
    font-size: 2.2rem;
    margin-bottom: 30px;
  }
}
.ct_area h2 small {
  display: block;
  font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
  .ct_area h2 small {
    font-size: 1.6rem;
  }
}
.ct_area h2:before {
  position: absolute;
  content: "";
  width: 243.2546px;
  height: 242.4665px;
  right: 20px;
  top: 0;
  background: url(../img/common/ct_character.svg) no-repeat center center/cover;
  z-index: -1;
}
@media screen and (max-width: 1078px) {
  .ct_area h2:before {
    width: 130px;
    height: 130px;
    top: -69px;
    left: 0;
    right: 0;
    margin: auto;
  }
}
@media screen and (max-width: 768px) {
  .ct_area h2:before {
    width: 98px;
    height: 99px;
    top: -50px;
  }
}
.ct_area .flex {
  justify-content: center;
  margin-bottom: 5%;
}
@media screen and (max-width: 768px) {
  .ct_area .flex {
    display: block;
  }
}
.ct_area .line_btn,
.ct_area .form_btn {
  width: 48%;
  max-width: 470px;
  text-align: center;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
}
@media screen and (max-width: 768px) {
  .ct_area .line_btn,
  .ct_area .form_btn {
    max-width: 100%;
    width: 100%;
  }
}
.ct_area .line_btn a,
.ct_area .form_btn a {
  color: #fff;
  padding: 60px;
  font-size: 2.4rem;
  font-weight: bold;
  display: block;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .ct_area .line_btn a,
  .ct_area .form_btn a {
    padding: 20px;
  }
}
.ct_area .line_btn {
  margin-right: 2%;
  background: #00b800 url(../img/common/btn_arrow.svg) no-repeat 95% center/9.562px 16.1057px;
  border: 2px solid #00b800;
}
@media screen and (max-width: 768px) {
  .ct_area .line_btn {
    margin-right: 0;
    margin-bottom: 30px;
  }
}
.ct_area .line_btn:hover {
  background: #fff;
}
.ct_area .line_btn:hover a {
  color: #00b800;
}
.ct_area .form_btn {
  margin-left: 2%;
  background: #0e6eb7 url(../img/common/btn_arrow.svg) no-repeat 95% center/9.562px 16.1057px;
  border: 2px solid #0e6eb7;
}
@media screen and (max-width: 768px) {
  .ct_area .form_btn {
    margin-left: 0;
  }
}
.ct_area .form_btn:hover {
  background: #fff;
}
.ct_area .form_btn:hover a {
  color: #0e6eb7;
}
.ct_area ul.flex {
  justify-content: space-between;
  max-width: 640px;
  margin: 0 auto;
}
.ct_area ul.flex li {
  position: relative;
  padding-left: 23px;
  font-size: 1.8rem;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .ct_area ul.flex li {
    font-size: 1.6rem;
    margin-bottom: 10px;
  }
}
.ct_area ul.flex li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 19.5247px;
  height: 16.1499px;
  margin: auto;
  background: url(../img/common/ct_icon_check.svg) no-repeat center center/cover;
}

/*--------------------------------------
        header
--------------------------------------*/
.head-sp.for-sp .btn-menu {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 999;
}

.pc-menu {
  box-sizing: border-box;
}

.pc-menu ul {
  box-sizing: border-box;
  margin: 0 auto;
}

.pc-menu ul li {
  box-sizing: border-box;
  float: left;
  width: 14.2%;
  position: relative;
  margin-bottom: 5px;
}
.pc-menu ul li:after {
  position: absolute;
  top: 0;
  right: 0;
  content: "";
  width: 1px;
  height: 100%;
  background: #ddd;
  display: block;
}
.pc-menu ul li:first-child:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 1px;
  height: 100%;
  background: #ddd;
  display: block;
}

.pc-menu ul li a {
  padding: 10px 0;
  box-sizing: border-box;
  color: #333;
  display: block;
  font-size: 15px;
  line-height: 15px;
  text-align: center;
  text-decoration: none;
}
.pc-menu ul li a .jp,
.pc-menu ul li a .en {
  display: block;
}
.pc-menu ul li a .jp {
  font-size: 1.6rem;
  margin-bottom: 3px;
}
.pc-menu ul li a .en {
  color: #0e6eb7;
  font-size: 1.3rem;
}

.pc-menu ul li.now a,
.pc-menu ul li a:hover {
  transition: 0.3s;
  background: #0e6eb7;
}
.pc-menu ul li.now a .jp,
.pc-menu ul li.now a .en,
.pc-menu ul li a:hover .jp,
.pc-menu ul li a:hover .en {
  color: #fff;
}

.hd_top {
  color: #fff;
  padding: 5px 20px;
  background: #0e6eb7;
}
@media screen and (max-width: 1020px) {
  .hd_top {
    padding: 5px 0;
  }
}
.hd_top h1 {
  font-size: 1.4rem;
  font-weight: normal;
  margin: 0;
}
@media screen and (max-width: 1020px) {
  .hd_top h1 {
    font-size: 1.2rem;
    text-align: center;
  }
}
@media screen and (max-width: 400px) {
  .hd_top h1 {
    font-size: 1rem;
  }
}

header {
  overflow: hidden;
}
header .head-pc-inner {
  max-width: 1240px;
  padding: 40px 20px;
  margin: 0 auto;
}
header .head-pc-inner .head_l {
  width: 27%;
}
header .head-pc-inner .head_r {
  width: 73%;
}

dl.head-pc-contact {
  justify-content: flex-end;
}
dl.head-pc-contact dt {
  width: 41%;
  margin-right: 2%;
}
dl.head-pc-contact dt p {
  margin-top: 15px;
  font-size: 1.6rem;
  font-weight: bold;
}
dl.head-pc-contact dd {
  width: 17%;
}
dl.head-pc-contact dd a {
  display: block;
  max-width: 126px;
  color: #fff;
  background: #0e6eb7;
  text-align: center;
  line-height: 1;
  height: 91px;
  padding: 18px 10px;
  margin-right: 0;
  margin-left: auto;
}
@media screen and (max-width: 1020px) {
  dl.head-pc-contact dd a {
    font-size: 1vw;
  }
}
dl.head-pc-contact dd a img {
  margin: 0 auto;
}

.fix_btn {
  position: fixed;
  right: 0;
  top: 20%;
  width: 126px;
  z-index: 100;
}
.fix_btn .tel_icon {
  display: none;
  background: #036eb7;
  text-align: center;
  color: #fff;
}
.fix_btn .tel_icon img {
  width: 50px;
  margin: 0 auto 6px auto;
}
@media screen and (max-width: 768px) {
  .fix_btn {
    top: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    display: flex;
  }
}
.fix_btn .line_icon,
.fix_btn .mail_icon,
.fix_btn .login_icon,
.fix_btn .user_icon {
  display: block;
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .fix_btn .line_icon,
  .fix_btn .mail_icon,
  .fix_btn .login_icon,
  .fix_btn .user_icon {
    width: 20%;
    padding: 10px 5px 5px 5px;
  }
  .fix_btn .line_icon img,
  .fix_btn .mail_icon img,
  .fix_btn .login_icon img,
  .fix_btn .user_icon img {
    width: 25px;
    height: auto;
  }
}
.fix_btn .tel_icon {
  font-size: 1rem;
  padding: 10px 5px 5px 5px;
}
@media screen and (max-width: 768px) {
  .fix_btn .tel_icon {
    width: 20%;
    display: block;
  }
  .fix_btn .tel_icon img {
    width: 25px;
    height: auto;
  }
}
.fix_btn .line_icon {
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .fix_btn .line_icon {
    margin-bottom: 0;
  }
}
.fix_btn .mail_icon {
  background: #036eb7;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .fix_btn .mail_icon {
    margin-bottom: 0;
  }
}
.fix_btn .login_icon {
  background: #0e6eb7;
}
.fix_btn .user_icon {
  background: #ee9e48;
}

/*--------------------------------------
        footer
--------------------------------------*/
.fixed-top-btn {
  position: fixed;
  bottom: 100px;
  right: 20px;
  z-index: 100;
}
@media screen and (max-width: 768px) {
  .fixed-top-btn {
    bottom: 68px;
  }
}

footer .inner {
  padding: 50px 0 60px;
}
footer .inner .foot-flex.flex {
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  footer .inner .foot-flex.flex {
    display: block;
  }
  footer .inner .foot-flex.flex .foot-flex-l {
    margin-bottom: 30px;
  }
  footer .inner .foot-flex.flex .foot-flex-l,
  footer .inner .foot-flex.flex .foot-flex-r {
    width: 100%;
  }
}
footer .footer_address {
  font-size: 1.6rem;
  font-weight: bold;
  margin-top: 10px;
}
footer .photo {
  position: relative;
  max-width: 300px;
  margin-right: 0;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  footer .photo {
    max-width: 100%;
  }
}
footer .photo a {
  color: #fff;
  font-size: 1.4rem;
  padding: 10px 40px 10px 40px;
  position: absolute;
  bottom: 0;
  left: 0;
  line-height: 1;
  background: #f96e57 url(../img/common/ft_arrow.svg) no-repeat 95% center/26px 5px;
}
footer .photo a:hover {
  opacity: 0.8;
}
footer .footer_tel {
  margin: 30px auto 0;
}
footer .footer_tel .flex {
  justify-content: flex-start;
}
@media screen and (max-width: 768px) {
  footer .footer_tel .flex {
    display: flex;
  }
}
footer .footer_tel .flex .l-box {
  width: 14%;
  margin-right: 2%;
}
@media screen and (max-width: 768px) {
  footer .footer_tel .flex .l-box {
    width: 23%;
  }
}
footer .footer_tel .flex .r-box {
  width: 84%;
}
@media screen and (max-width: 768px) {
  footer .footer_tel .flex .r-box {
    width: 75%;
  }
}
footer .footer_tel .flex p {
  font-size: 1.4rem;
  line-height: 1.4;
  margin-top: 20px;
}
footer .copyright {
  color: #fff;
  padding: 20px;
  text-align: center;
  background: #0e6eb7;
  font-weight: normal;
}
footer .copyright p {
  font-weight: normal;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  footer .copyright {
    font-size: 1.3rem;
    padding-bottom: 75px;
  }
}

/*--------------------------------------
        top
--------------------------------------*/
.top_sec01 .flex {
  align-items: center;
}
.top_sec01 .flex .l-box {
  width: 30%;
}
@media screen and (max-width: 768px) {
  .top_sec01 .flex .l-box {
    width: 100%;
    margin-bottom: 30px;
  }
}
.top_sec01 .flex .l-box h2 span {
  display: block;
  line-height: 1.2;
}
.top_sec01 .flex .l-box h2 .jp {
  font-size: 2.5rem;
}
.top_sec01 .flex .r-box {
  width: 70%;
}
@media screen and (max-width: 768px) {
  .top_sec01 .flex .r-box {
    width: 100%;
  }
}
.top_sec01 .flex .r-box ol li {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 2px dotted #333333;
}
.top_sec01 .flex .r-box ol li a {
  padding-left: 20px;
}
.top_sec01 .flex .r-box ol li a:hover {
  text-decoration: underline;
}
.top_sec01 .flex .r-box ol li a .top-news-list-date {
  padding-right: 20px;
}

.top_bnr .l-box,
.top_bnr .r-box {
  width: 48%;
}

.top_sec03 h2 {
  color: #fff;
  padding: 0 20px 40px 20px;
  background: url(../img/top/tit_bg.jpg) no-repeat center left/cover;
}
@media screen and (max-width: 768px) {
  .top_sec03 h2 {
    padding: 20px 20px 20px 20px;
  }
}
.top_sec03 h2 span {
  font-size: 4rem;
}
@media screen and (max-width: 768px) {
  .top_sec03 h2 span {
    font-size: 3rem;
    display: block;
    position: relative;
    z-index: 3;
    line-height: 1.4;
  }
  .top_sec03 h2 span .fc_yellow {
    font-size: 5rem;
  }
}
.top_sec03 h2 strong {
  font-size: 9.5rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .top_sec03 h2 strong {
    font-size: 6.5rem;
  }
}
.top_sec03 h2 strong:after {
  content: "";
  width: 42.5229px;
  height: 38.2215px;
  position: absolute;
  right: -16px;
  top: 0;
  background: url(../img/top/icon_oukan.svg) no-repeat center center/cover;
}
@media screen and (max-width: 768px) {
  .top_sec03 h2 strong:after {
    width: 30.5229px;
    height: 27.2215px;
    right: -10px;
    top: 5px;
  }
}
.top_sec03 h2 .icon_character {
  display: block;
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
}
.top_sec03 h2 .icon_character:after {
  content: "";
  width: 231.1145px;
  height: 234.4753px;
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  background: url(../img/common/character01.svg) no-repeat center center/cover;
  z-index: 2;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .top_sec03 h2 .icon_character:after {
    width: 90.1145px;
    height: 90.4753px;
    position: absolute;
    right: -14px;
    top: auto;
    bottom: 0;
    z-index: 0;
  }
}
.top_sec03 ul li {
  width: 30%;
  padding: 40px 20px 40px 20px;
  border: 1px solid #f96e57;
  background: #fff url(../img/top/sec03_yellow_bg.svg) no-repeat top left/127px;
}
@media screen and (max-width: 768px) {
  .top_sec03 ul li {
    width: 100%;
    margin-bottom: 30px;
  }
}
.top_sec03 ul li h3 {
  font-size: 2.8rem;
  margin-bottom: 30px;
  position: relative;
  padding-left: 40px;
}
.top_sec03 ul li h3:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.top_sec03 ul li:nth-of-type(1) h3 {
  padding-left: 30px;
}
.top_sec03 ul li:nth-of-type(1) h3:after {
  width: 21.3384px;
  height: 64.8555px;
  background: url(../img/top/sec03_number01.svg) no-repeat center center/cover;
}
.top_sec03 ul li:nth-of-type(2) h3:after {
  width: 35.2954px;
  height: 65.292px;
  background: url(../img/top/sec03_number02.svg) no-repeat center center/cover;
}
.top_sec03 ul li:nth-of-type(3) h3:after {
  width: 33.2145px;
  height: 66.0859px;
  background: url(../img/top/sec03_number03.svg) no-repeat center center/cover;
}

.top_sec04 ul.top_sec04_new {
  padding: 0 4%;
  margin-bottom: 50px;
}
.top_sec04 ul.top_sec04_new li {
  margin-bottom: 30px;
}
.top_sec04 ul.top_sec04_new li:last-child {
  margin-bottom: 0;
}
.top_sec04 ul.top_sec04_new li a.flex {
  justify-content: flex-start;
  align-items: center;
  border-bottom: 1px solid #fff;
}
.top_sec04 ul.top_sec04_new li a.flex:hover {
  color: #f96e57;
}
.top_sec04 ul.top_sec04_new li a.flex .date,
.top_sec04 ul.top_sec04_new li a.flex .type_label,
.top_sec04 ul.top_sec04_new li a.flex .madori_label {
  margin: 0 20px 0 0;
}
@media screen and (max-width: 768px) {
  .top_sec04 ul.top_sec04_new li a.flex .date,
  .top_sec04 ul.top_sec04_new li a.flex .type_label,
  .top_sec04 ul.top_sec04_new li a.flex .madori_label {
    font-size: 13px;
  }
}
.top_sec04 ul.top_sec04_new li a.flex .kakaku {
  margin: 0 0 0 auto;
}
@media screen and (max-width: 768px) {
  .top_sec04 ul.top_sec04_new li a.flex .kakaku {
    margin: 0;
    padding-left: 30px;
  }
}
@media screen and (max-width: 768px) {
  .top_sec04 ul.top_sec04_new li a.flex .date {
    width: 100%;
  }
}

.top_sec05 {
  color: #fff;
  background: url(../img/top/sec05_bg.jpg) no-repeat center center/cover;
}
.top_sec05 .top_sec05_tit h2 {
  color: #f96e57;
  font-size: 3.8rem;
  background: #fff;
  border-radius: 100vh;
  display: inline-block;
  padding: 0 50px;
}
@media screen and (max-width: 768px) {
  .top_sec05 .top_sec05_tit h2 {
    font-size: 2rem;
    padding: 10px 20px;
    width: 100%;
  }
}
.top_sec05 .top_sec05_tit .triangle {
  width: 30px;
  margin: 0 auto 50px;
  transform: rotate(-180deg);
  border-right: 30px solid transparent;
  border-bottom: 20px solid #fff;
  border-left: 30px solid transparent;
}
.top_sec05 .sec05_box {
  padding-right: 48%;
  background: url(../img/top/sec05_character.svg) no-repeat 98% center/366.8734px 325.8609px;
}
@media screen and (max-width: 768px) {
  .top_sec05 .sec05_box {
    padding-right: 0;
    padding-bottom: 0;
    background-position: center bottom;
    background-image: none;
  }
}
.top_sec05 .sec05_box .sec05_box_img {
  width: 200px;
  margin: 0 auto;
}
.top_sec05 .sec05_box h3 {
  font-size: 2.8rem;
  font-weight: bold;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .top_sec05 .sec05_box h3 {
    font-size: 2.4rem;
    line-height: 1.4;
  }
  .top_sec05 .sec05_box h3 br {
    display: none;
  }
}
.top_sec05 .sec05_box p {
  margin-bottom: 50px;
}
.top_sec05 .sec05_box .l-box,
.top_sec05 .sec05_box .r-box {
  width: 48%;
}
@media screen and (max-width: 768px) {
  .top_sec05 .sec05_box .l-box,
  .top_sec05 .sec05_box .r-box {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .top_sec05 .sec05_box .l-box {
    margin-bottom: 30px;
  }
}

/*--------------------------------------
        shop
--------------------------------------*/
.shop .sec01 .sec01_box {
  margin-bottom: 50px;
}
.shop .sec01 .sec01_box .l-box {
  width: 31%;
}
@media screen and (max-width: 768px) {
  .shop .sec01 .sec01_box .l-box {
    width: 100%;
    margin-bottom: 30px;
  }
}
.shop .sec01 .sec01_box .r-box {
  width: 65%;
}
@media screen and (max-width: 768px) {
  .shop .sec01 .sec01_box .r-box {
    width: 100%;
  }
}
.shop .sec01 .sec01_box .r-box .logo {
  max-width: 364px;
}
.shop .sec01 .sec01_box .r-box .bg_gray {
  max-width: 510px;
  padding: 20px;
  background: #f9f9f9;
}
.shop .sec01 .sec01_box .r-box .bg_gray p {
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .shop .sec01 .map iframe {
    height: 230px;
  }
}
.shop .sec02 h2 {
  margin-bottom: 0;
}
.shop .sec02 .company_txt {
  margin-bottom: 50px;
  padding: 50px 20px;
  background: #fff0c0;
}
.shop .sec02 .company_txt h3 {
  color: #0e6eb7;
  font-size: 3.5rem;
  font-weight: bold;
  margin-bottom: 30px;
}
.shop .sec02 .company_txt p {
  font-size: 2.4rem;
  text-align: center;
  line-height: 2.4;
}
@media screen and (max-width: 768px) {
  .shop .sec02 .company_txt p {
    font-size: 1.8rem;
    line-height: 2;
  }
}
.shop .sec02 .ceo_txt {
  margin-bottom: 50px;
}
.shop .sec02 .ceo_txt .l-box {
  width: 31%;
}
@media screen and (max-width: 768px) {
  .shop .sec02 .ceo_txt .l-box {
    width: 100%;
    margin-bottom: 50px;
  }
}
.shop .sec02 .ceo_txt .r-box {
  width: 65%;
}
@media screen and (max-width: 768px) {
  .shop .sec02 .ceo_txt .r-box {
    width: 100%;
  }
}
.shop .sec02 .ceo_txt .r-box h3 {
  color: #0e6eb7;
  font-size: 3.5rem;
  font-weight: bold;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .shop .sec02 .ceo_txt .r-box h3 {
    font-size: 2.4rem;
    margin-bottom: 20px;
  }
}
.shop .sec02 .ceo_txt .r-box p {
  margin-bottom: 30px;
}
.shop .sec02 .ceo_txt .r-box div.ceo_name {
  max-width: 280px;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 768px) {
  .shop .sec02 .ceo_txt .r-box div.ceo_name {
    max-width: 100%;
    text-align: center;
  }
}
.shop .sec02 .ceo_txt .r-box div.ceo_name p {
  margin-top: 20px;
}
.shop .sec02 .ceo_txt .r-box div.ceo_name p small {
  display: block;
  font-size: 1.6rem;
  line-height: 1;
}
.shop .sec02 .ceo_txt .r-box div.ceo_name p strong {
  font-size: 3.6rem;
  display: block;
}
.shop .sec02 .bg_blue {
  padding: 50px 20px;
}
@media screen and (max-width: 768px) {
  .shop .sec02 .bg_blue {
    padding: 25px 15px;
  }
}
.shop .sec02 .bg_blue table {
  width: 100%;
  max-width: 970px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .shop .sec02 .bg_blue table tr:nth-of-type(1) th {
    padding-top: 0;
  }
}
.shop .sec02 .bg_blue table th,
.shop .sec02 .bg_blue table td {
  font-size: 1.6rem;
  padding-top: 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid #dddddd;
}
@media screen and (max-width: 768px) {
  .shop .sec02 .bg_blue table th,
  .shop .sec02 .bg_blue table td {
    display: block;
  }
}
.shop .sec02 .bg_blue table th {
  width: 20%;
  text-align: left;
  padding-left: 20px;
}
@media screen and (max-width: 768px) {
  .shop .sec02 .bg_blue table th {
    width: 100%;
    border-bottom: none;
    padding-bottom: 0;
    padding-left: 0;
  }
}
.shop .sec02 .bg_blue table th:before {
  color: #0e6eb7;
  content: "●";
  font-size: 1rem;
  padding-right: 10px;
}
.shop .sec02 .bg_blue table td {
  width: 80%;
}
@media screen and (max-width: 768px) {
  .shop .sec02 .bg_blue table td {
    width: 100%;
    padding-top: 0;
  }
}
.shop #staff .staff_inner {
  padding: 50px 20px;
  max-width: 970px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .shop #staff .staff_inner {
    padding: 20px;
  }
}
.shop #staff h3 {
  font-size: 2.8rem;
  position: relative;
  padding: 10px 25px;
  margin-bottom: 50px;
  line-height: 1.4;
  color: #fff;
  background: #036eb7;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  font-weight: 400;
  font-style: normal;
}
@media screen and (max-width: 768px) {
  .shop #staff h3 {
    font-size: 2rem;
  }
}
.shop #staff .staff_box {
  margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
  .shop #staff .staff_box {
    margin-bottom: 30px;
  }
}
.shop #staff .staff_box:last-child {
  margin-bottom: 0;
}
.shop #staff .staff_box .l-box {
  width: 29%;
}
.shop #staff .staff_box .r-box {
  width: 67%;
  margin-left: 4%;
}
.shop #staff .staff_box .r-box .staff_name {
  padding-bottom: 15px;
  margin-bottom: 30px;
  border-bottom: 1px solid #ddd;
}
.shop #staff .staff_box .r-box .staff_name h4 {
  font-size: 2.6rem;
  line-height: 1.2;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .shop #staff .staff_box .r-box .staff_name h4 {
    font-size: 1.8rem;
    line-height: 1.2;
    margin-bottom: 10px;
  }
}
.shop #staff .staff_box .r-box .staff_name .position {
  font-size: 1.4rem;
  background: #fff0c0;
  display: inline-block;
  padding: 3px 15px;
}
@media screen and (max-width: 768px) {
  .shop #staff .staff_box .r-box .staff_name .position {
    font-size: 1.2rem;
  }
}
.shop #staff .staff_box .r-box .staff_discri p {
  font-size: 1.8rem;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .shop #staff .staff_box .r-box .staff_discri p {
    font-size: 1.4rem;
    margin-bottom: 10px;
  }
}

/*--------------------------------------
        buy
--------------------------------------*/
.buy .sec01 .sec01_box {
  margin-bottom: 50px;
}
.buy .sec01 .sec01_box:last-child {
  margin-bottom: 0;
}
.buy .sec01 .sec01_box .l-box {
  width: 40%;
}
@media screen and (max-width: 768px) {
  .buy .sec01 .sec01_box .l-box {
    width: 100%;
    margin-bottom: 30px;
  }
}
.buy .sec01 .sec01_box .r-box {
  width: 55%;
}
@media screen and (max-width: 768px) {
  .buy .sec01 .sec01_box .r-box {
    width: 100%;
  }
}
.buy .sec01 .sec01_box .r-box p {
  margin-bottom: 30px;
}
.buy .sec01 .sec01_box .r-box p:last-child {
  margin-bottom: 0;
}
.buy .sec02 .btn_box {
  margin-bottom: 0;
}
.buy .sec03 h2 {
  margin-bottom: 0;
}
.buy .sec03 .gray_bg {
  padding: 70px 0;
  background: #f9f9f9;
}
@media screen and (max-width: 768px) {
  .buy .sec03 .gray_bg {
    padding: 30px 15px;
  }
}
.buy .sec03 .gray_bg h3 {
  color: #0e6eb7;
  font-size: 3.5rem;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .buy .sec03 .gray_bg h3 {
    font-size: 2.4rem;
    line-height: 1.6;
  }
}
.buy .sec03 .gray_bg p {
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .buy .sec03 .gray_bg p {
    margin-bottom: 20px;
  }
}
.buy .sec03 .gray_bg img {
  margin: 0 auto;
}

/******************************************/
/*info
******************************************/
.info_single_sec01,
.info_list_sec01 {
  padding-bottom: 80px;
}
.info_single_sec01 #main,
.info_list_sec01 #main {
  width: 72.8%;
}
@media screen and (max-width: 767px) {
  .info_single_sec01 #main,
  .info_list_sec01 #main {
    width: 100%;
  }
}
.info_single_sec01 #main .time,
.info_list_sec01 #main .time {
  color: #fff;
  background: #036eb7;
  font-size: 1.6rem;
  line-height: 1.2;
  margin-bottom: 30px;
  padding: 5px 15px;
  display: inline-block;
}
.info_single_sec01 #main h2,
.info_list_sec01 #main h2 {
  font-size: 2.2rem;
  margin-bottom: 45px;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .info_single_sec01 #main h2,
  .info_list_sec01 #main h2 {
    font-size: 1.8rem;
  }
}
.info_single_sec01 #main #single_nav,
.info_list_sec01 #main #single_nav {
  margin-top: 80px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
.info_single_sec01 #main #single_nav a,
.info_list_sec01 #main #single_nav a {
  color: #036eb7;
  width: 100%;
  padding: 20px;
  line-height: 1.2;
  text-align: center;
  max-width: 152px;
  display: inline-block;
  text-decoration: none;
}
.info_single_sec01 #main #single_nav a:hover,
.info_list_sec01 #main #single_nav a:hover {
  color: #fff;
  background: #036eb7;
}
.info_single_sec01 #main .return_btn,
.info_list_sec01 #main .return_btn {
  display: block;
  padding: 15px 0;
  color: #fff;
  width: 100%;
  max-width: 307px;
  margin: 68px auto 86px;
  font-size: 1.5rem;
  border-radius: 60px;
  background: #036eb7;
  text-decoration: none;
  border: 1px solid #036eb7;
}
.info_single_sec01 #main .return_btn:hover,
.info_list_sec01 #main .return_btn:hover {
  transition: 0.3s;
  color: #036eb7;
  background: #fff;
}
.info_single_sec01 #side,
.info_list_sec01 #side {
  width: 23.2%;
}
@media screen and (max-width: 767px) {
  .info_single_sec01 #side,
  .info_list_sec01 #side {
    width: 100%;
  }
}
.info_single_sec01 #side aside,
.info_list_sec01 #side aside {
  margin-bottom: 64px;
  border: 1px solid #036eb7;
}
.info_single_sec01 #side aside h3,
.info_list_sec01 #side aside h3 {
  color: #fff;
  font-size: 1.4rem;
  padding: 15px 0;
  text-align: center;
  background: #036eb7;
  margin-bottom: 18px;
}
.info_single_sec01 #side aside ul,
.info_list_sec01 #side aside ul {
  padding: 20px;
}
.info_single_sec01 #side aside ul li,
.info_list_sec01 #side aside ul li {
  display: flex;
  flex-direction: column-reverse;
  margin-bottom: 20px;
  border-bottom: 1px solid #cccccc;
}
.info_single_sec01 #side aside ul li a,
.info_list_sec01 #side aside ul li a {
  color: #000;
  font-size: 1.4rem;
  line-height: 1.3;
  padding: 10px 20px;
}
.info_single_sec01 #side aside ul li .post-date,
.info_list_sec01 #side aside ul li .post-date {
  color: #036eb7;
  font-size: 1.4rem;
}
.info_single_sec01 #side aside ul li:last-child,
.info_list_sec01 #side aside ul li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.info_single_sec01 #side aside.widget_archive ul li,
.info_single_sec01 #side aside.widget_categories ul li,
.info_single_sec01 #side aside.widget_recent_entries ul li,
.info_list_sec01 #side aside.widget_archive ul li,
.info_list_sec01 #side aside.widget_categories ul li,
.info_list_sec01 #side aside.widget_recent_entries ul li {
  display: flex;
  justify-content: flex-start;
  flex-direction: row;
  align-items: center;
}
.info_single_sec01 #side aside.widget_archive ul li a,
.info_single_sec01 #side aside.widget_categories ul li a,
.info_single_sec01 #side aside.widget_recent_entries ul li a,
.info_list_sec01 #side aside.widget_archive ul li a,
.info_list_sec01 #side aside.widget_categories ul li a,
.info_list_sec01 #side aside.widget_recent_entries ul li a {
  display: block;
}
.info_single_sec01 #side aside.widget_archive ul li a:hover,
.info_single_sec01 #side aside.widget_categories ul li a:hover,
.info_single_sec01 #side aside.widget_recent_entries ul li a:hover,
.info_list_sec01 #side aside.widget_archive ul li a:hover,
.info_list_sec01 #side aside.widget_categories ul li a:hover,
.info_list_sec01 #side aside.widget_recent_entries ul li a:hover {
  opacity: 0.6;
  text-decoration: underline;
}
.info_single_sec01 #side aside.widget_archive ul li a .top-info-list-date,
.info_single_sec01 #side aside.widget_categories ul li a .top-info-list-date,
.info_single_sec01 #side aside.widget_recent_entries ul li a .top-info-list-date,
.info_list_sec01 #side aside.widget_archive ul li a .top-info-list-date,
.info_list_sec01 #side aside.widget_categories ul li a .top-info-list-date,
.info_list_sec01 #side aside.widget_recent_entries ul li a .top-info-list-date {
  padding-right: 20px;
}
.info_single_sec01 #side aside.widget_recent_entries ul li,
.info_list_sec01 #side aside.widget_recent_entries ul li {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  align-items: baseline;
}
.info_single_sec01 #side aside.widget_recent_entries ul li .post-date,
.info_list_sec01 #side aside.widget_recent_entries ul li .post-date {
  color: #000;
  padding-right: 10px;
}

@media screen and (max-width: 767px) {
  .single_page {
    border-top: 1px solid #ddd;
  }
}

.info_list_sec01 #main li {
  padding: 37px 47px;
  background: #fff;
  margin-bottom: 60px;
  border: 1px solid #0e6eb7;
}
@media screen and (max-width: 767px) {
  .info_list_sec01 #main li {
    padding: 20px 15px;
  }
}
.info_list_sec01 #main li .flex .l-box {
  width: 37%;
  margin-right: 2%;
}
.info_list_sec01 #main li .flex .l-box img {
  -webkit-backface-visibility: hidden;
}
@media screen and (max-width: 767px) {
  .info_list_sec01 #main li .flex .l-box {
    width: 100%;
    margin-bottom: 30px;
    margin-right: 0;
  }
}
.info_list_sec01 #main li .flex .r-box {
  width: 61%;
}
@media screen and (max-width: 767px) {
  .info_list_sec01 #main li .flex .r-box {
    width: 100%;
  }
}
.info_list_sec01 #main li .flex .r-box .time {
  margin-bottom: 14px;
}
.info_list_sec01 #main li .flex .r-box .info_list_tit {
  font-size: 2.2rem;
  padding: 10px 15px 10px 20px;
  line-height: 1.6;
  border-left: 5px solid #036eb7;
  margin-bottom: 25px;
  background: #efefef;
}
@media screen and (max-width: 767px) {
  .info_list_sec01 #main li .flex .r-box .info_list_tit {
    font-size: 2rem;
  }
}
.info_list_sec01 #main li .flex .r-box .info_list_tit a {
  color: #000;
}
.info_list_sec01 #main li .flex .r-box .info_list_tit a:hover {
  text-decoration: underline;
}
.info_list_sec01 #main li .aricle_btn a {
  display: block;
  color: #036eb7;
  font-weight: bold;
  font-size: 1.4rem;
  text-decoration: none;
  position: relative;
  padding-left: 15px;
  margin-top: 37px;
}
.info_list_sec01 #main li .aricle_btn a:before {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  background: url(../img/common/icon-news-arrow.svg) no-repeat center center/cover;
}
.info_list_sec01 #main li .aricle_btn a:hover {
  opacity: 0.8;
}

.info_single_sec01 {
  padding-top: 80px;
}
@media screen and (max-width: 767px) {
  .info_single_sec01 {
    padding-top: 40px;
  }
}
.info_single_sec01 .tit_single {
  color: #fff;
  padding: 20px;
  font-size: 2rem;
  background: #0e6eb7;
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .info_single_sec01 .tit_single {
    font-size: 1.8rem;
    line-height: 1.6;
  }
}
.info_single_sec01 .info_contents {
  padding: 70px;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .info_single_sec01 .info_contents {
    padding: 20px;
  }
}
.info_single_sec01 .btn_inner {
  margin-top: 80px;
}

/******************************************/
/*contact
******************************************/
.contact input[type=text],
.contact input[type=submit],
.check input[type=text],
.check input[type=submit],
.complete input[type=text],
.complete input[type=submit] {
  font-size: 16px;
  border: 1px solid #ccc;
  -webkit-border-radius: 0;
  -webkit-appearance: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.contact .sec01_txt,
.check .sec01_txt,
.complete .sec01_txt {
  margin: 0 auto 50px;
}
.contact .tel_area,
.check .tel_area,
.complete .tel_area {
  max-width: 1100px;
  margin: 0 auto;
  border: 1px solid #036eb7;
}
.contact .tel_area h2,
.check .tel_area h2,
.complete .tel_area h2 {
  color: #fff;
  font-size: 2.8rem;
  padding: 10px;
  background: #036eb7;
}
@media screen and (max-width: 767px) {
  .contact .tel_area h2,
  .check .tel_area h2,
  .complete .tel_area h2 {
    font-size: 2rem;
  }
}
.contact .tel_area .tel_area_txt,
.check .tel_area .tel_area_txt,
.complete .tel_area .tel_area_txt {
  padding: 40px 30px;
}
.contact .tel_area .tel_area_txt .l-box,
.check .tel_area .tel_area_txt .l-box,
.complete .tel_area .tel_area_txt .l-box {
  width: 60%;
}
@media screen and (max-width: 767px) {
  .contact .tel_area .tel_area_txt .l-box,
  .check .tel_area .tel_area_txt .l-box,
  .complete .tel_area .tel_area_txt .l-box {
    width: 100%;
    margin-bottom: 30px;
  }
}
.contact .tel_area .tel_area_txt .l-box p,
.check .tel_area .tel_area_txt .l-box p,
.complete .tel_area .tel_area_txt .l-box p {
  margin-top: 10px;
}
.contact .tel_area .tel_area_txt .r-box,
.check .tel_area .tel_area_txt .r-box,
.complete .tel_area .tel_area_txt .r-box {
  width: 20%;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 767px) {
  .contact .tel_area .tel_area_txt .r-box,
  .check .tel_area .tel_area_txt .r-box,
  .complete .tel_area .tel_area_txt .r-box {
    width: 100%;
  }
}
.contact .tel_area .tel_area_txt .r-box .line_icon,
.check .tel_area .tel_area_txt .r-box .line_icon,
.complete .tel_area .tel_area_txt .r-box .line_icon {
  max-width: 192px;
}
@media screen and (max-width: 767px) {
  .contact .tel_area .tel_area_txt .r-box .line_icon,
  .check .tel_area .tel_area_txt .r-box .line_icon,
  .complete .tel_area .tel_area_txt .r-box .line_icon {
    max-width: 100%;
  }
}
.contact .form_inner,
.check .form_inner,
.complete .form_inner {
  max-width: 800px;
  margin: 0 auto;
  padding: 20px 20px 50px 20px;
}
.contact .form_inner .privacypolicy,
.check .form_inner .privacypolicy,
.complete .form_inner .privacypolicy {
  margin: 0 auto 50px;
}
.contact .form_inner .privacypolicy h3,
.check .form_inner .privacypolicy h3,
.complete .form_inner .privacypolicy h3 {
  color: #f96e57;
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.4;
  margin-bottom: 20px;
}
.contact .form_inner .privacypolicy .txt,
.check .form_inner .privacypolicy .txt,
.complete .form_inner .privacypolicy .txt {
  border: 1px solid #cccccc;
  padding: 30px 20px;
  background: #fff;
}
.contact .form_inner .privacypolicy .txt h4,
.check .form_inner .privacypolicy .txt h4,
.complete .form_inner .privacypolicy .txt h4 {
  font-size: 1.6rem;
}
.contact .form_inner .privacypolicy .txt p,
.check .form_inner .privacypolicy .txt p,
.complete .form_inner .privacypolicy .txt p {
  font-size: 1.4rem;
}
.contact .form_inner .form_box ul li,
.check .form_inner .form_box ul li,
.complete .form_inner .form_box ul li {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #efefef;
}
.contact .form_inner .form_box ul li dl,
.check .form_inner .form_box ul li dl,
.complete .form_inner .form_box ul li dl {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 20px;
}
@media screen and (max-width: 767px) {
  .contact .form_inner .form_box ul li dl,
  .check .form_inner .form_box ul li dl,
  .complete .form_inner .form_box ul li dl {
    display: block;
    padding: 0;
  }
}
.contact .form_inner .form_box ul li dl dt,
.check .form_inner .form_box ul li dl dt,
.complete .form_inner .form_box ul li dl dt {
  width: 30%;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .contact .form_inner .form_box ul li dl dt,
  .check .form_inner .form_box ul li dl dt,
  .complete .form_inner .form_box ul li dl dt {
    width: 100%;
    margin-bottom: 20px;
  }
}
.contact .form_inner .form_box ul li dl dt .req,
.check .form_inner .form_box ul li dl dt .req,
.complete .form_inner .form_box ul li dl dt .req {
  font-size: 1.2rem;
  color: #fff;
  background: #d93832;
  display: inline-block;
  width: 45px;
  text-align: center;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 767px) {
  .contact .form_inner .form_box ul li dl dt .req,
  .check .form_inner .form_box ul li dl dt .req,
  .complete .form_inner .form_box ul li dl dt .req {
    margin: 0 0 0 20px;
  }
}
.contact .form_inner .form_box ul li dl dt small,
.check .form_inner .form_box ul li dl dt small,
.complete .form_inner .form_box ul li dl dt small {
  display: block;
}
.contact .form_inner .form_box ul li dl dd,
.check .form_inner .form_box ul li dl dd,
.complete .form_inner .form_box ul li dl dd {
  width: 70%;
  padding-left: 8%;
}
@media screen and (max-width: 767px) {
  .contact .form_inner .form_box ul li dl dd,
  .check .form_inner .form_box ul li dl dd,
  .complete .form_inner .form_box ul li dl dd {
    width: 100%;
    padding-left: 0;
  }
}
.contact .form_inner .form_box ul li dl dd input,
.contact .form_inner .form_box ul li dl dd textarea,
.check .form_inner .form_box ul li dl dd input,
.check .form_inner .form_box ul li dl dd textarea,
.complete .form_inner .form_box ul li dl dd input,
.complete .form_inner .form_box ul li dl dd textarea {
  width: 100%;
  padding: 10px;
  border: 1px solid #efefef;
}
.contact .form_inner .form_box ul li dl dd .mwform-checkbox-field.horizontal-item input,
.check .form_inner .form_box ul li dl dd .mwform-checkbox-field.horizontal-item input,
.complete .form_inner .form_box ul li dl dd .mwform-checkbox-field.horizontal-item input {
  width: auto;
}
.contact .form_inner .btn_inner,
.check .form_inner .btn_inner,
.complete .form_inner .btn_inner {
  margin-top: 80px;
}
.contact .form_inner .btn_inner .btn,
.check .form_inner .btn_inner .btn,
.complete .form_inner .btn_inner .btn {
  cursor: pointer;
}

/******************************************/
/*archive.taxonomy
******************************************/
.tax_list {
  padding: 30px 20px;
  background: #f9f9f9;
}
@media screen and (max-width: 767px) {
  .tax_list {
    padding: 20px 10px;
  }
}
.tax_list dl {
  margin-bottom: 50px;
}
.tax_list dl dt {
  margin-bottom: 20px;
}
.tax_list dl dd ul {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .tax_list dl dd ul {
    flex-wrap: wrap;
  }
}
.tax_list dl dd ul li {
  margin-right: 2%;
  margin-bottom: 2%;
}
.tax_list dl dd ul li a {
  color: #fff;
  width: 100%;
  display: block;
  text-align: center;
  max-width: 497px;
  margin: 0 auto;
  padding: 20px 2%;
  background: #f96e57 url(../img/common/btn_arrow.svg) no-repeat 95% center/9.562px 16.1057px;
  border: 2px solid #f96e57;
}
@media screen and (max-width: 767px) {
  .tax_list dl dd ul li a {
    font-size: 1.3rem;
  }
}
.tax_list dl dd ul li a:hover {
  color: #f96e57;
  background-color: #fff;
  border: 2px solid #f96e57;
}
.tax_list dl dd ul li.current a {
  color: #f96e57;
  background-color: #fff;
  border: 2px solid #f96e57;
}
.tax_list dl dd ul li:last-child {
  margin-right: 0;
}
.tax_list dl:not(:first-child) dd ul li a {
  padding: 10px 2%;
}
.tax_list dl:last-child {
  margin-bottom: 0;
}
.tax_list dl.area_menu dd ul li {
  width: 23.5%;
}
@media screen and (max-width: 767px) {
  .tax_list dl.area_menu dd ul li {
    width: 48%;
    margin-right: 4%;
    margin-bottom: 4%;
  }
}
.tax_list dl.area_menu dd ul li:nth-of-type(4n) {
  margin-right: 0;
}
@media screen and (max-width: 767px) {
  .tax_list dl.area_menu dd ul li:nth-of-type(2n) {
    margin-right: 0;
  }
}
.tax_list dl.type_menu dd ul li,
.tax_list dl.madori_menu dd ul li {
  width: 18.4%;
}
@media screen and (max-width: 767px) {
  .tax_list dl.type_menu dd ul li,
  .tax_list dl.madori_menu dd ul li {
    width: 48%;
    margin-right: 4%;
    margin-bottom: 4%;
  }
}
.tax_list dl.type_menu dd ul li:nth-of-type(5n),
.tax_list dl.madori_menu dd ul li:nth-of-type(5n) {
  margin-right: 0;
}
@media screen and (max-width: 767px) {
  .tax_list dl.type_menu dd ul li:nth-of-type(5n),
  .tax_list dl.madori_menu dd ul li:nth-of-type(5n) {
    margin-right: 4%;
  }
}
@media screen and (max-width: 767px) {
  .tax_list dl.type_menu dd ul li:nth-of-type(2n),
  .tax_list dl.madori_menu dd ul li:nth-of-type(2n) {
    margin-right: 0;
  }
}

#acMenu {
  margin-bottom: 40px;
  width: 160px;
  border-top: 1px solid #ddd;
  border-left: 1px solid #ddd;
  border-right: 1px solid #ddd;
}
#acMenu dt,
#acMenu dd {
  width: 100%;
  display: block;
  color: #fff;
  font-size: 1.6rem;
  background-color: #f96e57;
}
#acMenu dt {
  display: inline-block;
  text-align: center;
  padding: 5px 10px;
  cursor: pointer;
}
#acMenu dt:hover {
  opacity: 0.6;
}
#acMenu dd {
  display: none;
}
#acMenu dd ul li {
  width: 160px;
  text-align: center;
  background: #efefef;
}
#acMenu dd ul li a {
  padding: 5px 10px;
  color: #333;
  display: block;
  border-bottom: 1px solid #ddd;
}
#acMenu dd ul li a:hover {
  color: #fff;
  background-color: #f96e57;
}
#acMenu dt {
  background: #f96e57 url(../img/common/btn_arrow_bottom.svg) no-repeat 20px 50%/16px 9px;
}

/******************************************/
/*house-single
******************************************/
.house_single_sec01 {
  padding: 5% 0;
  background: #f9f9f9;
}
.house_single_sec01 h2 {
  border-left: 5px solid #f96e57;
  padding-left: 50px;
  margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .house_single_sec01 h2 {
    margin-bottom: 30px;
    padding-left: 5%;
  }
}
.house_single_sec01 .type_label {
  margin-bottom: 20px;
}
.house_single_sec01 .l-box {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .house_single_sec01 .l-box {
    width: 100%;
  }
}
.house_single_sec01 .l-box table {
  width: 100%;
}
.house_single_sec01 .l-box table td {
  padding: 4%;
}
.house_single_sec01 .l-box table td .price {
  color: #aa3b2c;
  font-size: 2.4rem;
  font-weight: bold;
}
.house_single_sec01 .r-box {
  width: 48%;
}
@media screen and (max-width: 767px) {
  .house_single_sec01 .r-box {
    width: 100%;
  }
}
.house_single_sec01 .r-box .acf-map {
  width: 100%;
  height: 100%;
  max-height: 500px;
}
@media screen and (max-width: 767px) {
  .house_single_sec01 .r-box .acf-map {
    height: 260px;
    margin-top: 30px;
  }
}
.house_single_sec01 .r-box .acf-map img {
  max-width: inherit !important;
}
.house_single_sec01 .comment_box {
  margin-top: 40px;
  word-break: break-all;
}

.house_single_sec02 ul {
  justify-content: flex-start;
}
.house_single_sec02 ul li {
  width: 23.5%;
  margin-right: 2%;
  margin-bottom: 4%;
}
.house_single_sec02 ul li a {
  display: block;
  overflow: hidden;
  max-height: 212px;
}
@media screen and (min-width: 1101px) and (max-width: 1334px) {
  .house_single_sec02 ul li a {
    max-height: 18vh;
  }
}
@media screen and (min-width: 1000px) and (max-width: 1100px) {
  .house_single_sec02 ul li a {
    max-height: 15vh;
  }
}
@media screen and (min-width: 768px) and (max-width: 999px) {
  .house_single_sec02 ul li a {
    max-height: 12vh;
  }
}
@media screen and (max-width: 767px) {
  .house_single_sec02 ul li a {
    max-height: 18vh;
  }
}
@media screen and (max-width: 480px) {
  .house_single_sec02 ul li a {
    max-height: 13.2vh;
  }
}
.house_single_sec02 ul li img {
  border: 1px solid #efefef;
}
@media screen and (max-width: 767px) {
  .house_single_sec02 ul li {
    width: 48%;
  }
}
.house_single_sec02 ul li:nth-of-type(4n) {
  margin-right: 0;
}
@media screen and (max-width: 767px) {
  .house_single_sec02 ul li:nth-of-type(4n) {
    margin-right: 2%;
  }
}
@media screen and (max-width: 767px) {
  .house_single_sec02 ul li:nth-of-type(2n) {
    margin-right: 0;
  }
}
.house_single_sec02 ul li p {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .house_single_sec02 ul li p {
    font-size: 1.2rem;
  }
}

.house_single_sec01 table,
.house_single_sec03 table {
  width: 100%;
  border: 1px solid #efefef;
  background: #fff;
  border-collapse: collapse;
}
.house_single_sec01 table th,
.house_single_sec01 table td,
.house_single_sec03 table th,
.house_single_sec03 table td {
  padding: 20px;
  border: 1px solid #efefef;
}
@media screen and (max-width: 767px) {
  .house_single_sec01 table th,
  .house_single_sec01 table td,
  .house_single_sec03 table th,
  .house_single_sec03 table td {
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding: 10px;
  }
}
.house_single_sec01 table th,
.house_single_sec03 table th {
  width: 20%;
  max-width: 200px;
  background: #f3fafa;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .house_single_sec01 table th,
  .house_single_sec03 table th {
    max-width: 100%;
    width: 100%;
  }
}
.house_single_sec01 .tel_area,
.house_single_sec03 .tel_area {
  max-width: 1100px;
  margin: 50px auto 0 auto;
  border: 1px solid #036eb7;
}
.house_single_sec01 .tel_area h2,
.house_single_sec03 .tel_area h2 {
  color: #fff;
  font-size: 2.8rem;
  padding: 10px;
  background: #036eb7;
}
@media screen and (max-width: 767px) {
  .house_single_sec01 .tel_area h2,
  .house_single_sec03 .tel_area h2 {
    font-size: 2rem;
  }
}
.house_single_sec01 .tel_area .tel_area_txt,
.house_single_sec03 .tel_area .tel_area_txt {
  padding: 40px 30px;
}
@media screen and (max-width: 767px) {
  .house_single_sec01 .tel_area .tel_area_txt,
  .house_single_sec03 .tel_area .tel_area_txt {
    padding: 20px 15px;
  }
}
.house_single_sec01 .tel_area .tel_area_txt .l-box,
.house_single_sec03 .tel_area .tel_area_txt .l-box {
  width: 40%;
}
@media screen and (max-width: 767px) {
  .house_single_sec01 .tel_area .tel_area_txt .l-box,
  .house_single_sec03 .tel_area .tel_area_txt .l-box {
    width: 100%;
    margin-bottom: 30px;
  }
}
.house_single_sec01 .tel_area .tel_area_txt .l-box p,
.house_single_sec03 .tel_area .tel_area_txt .l-box p {
  margin-top: 10px;
}
.house_single_sec01 .tel_area .tel_area_txt .r-box,
.house_single_sec03 .tel_area .tel_area_txt .r-box {
  width: 56%;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 767px) {
  .house_single_sec01 .tel_area .tel_area_txt .r-box,
  .house_single_sec03 .tel_area .tel_area_txt .r-box {
    width: 100%;
  }
}
.house_single_sec01 .tel_area .tel_area_txt .r-box .line_icon,
.house_single_sec03 .tel_area .tel_area_txt .r-box .line_icon {
  max-width: 192px;
}
@media screen and (max-width: 767px) {
  .house_single_sec01 .tel_area .tel_area_txt .r-box .line_icon,
  .house_single_sec03 .tel_area .tel_area_txt .r-box .line_icon {
    max-width: 100%;
    font-size: 1.2rem;
  }
}
.house_single_sec01 .tel_area .tel_area_txt .r-box .mail_icon,
.house_single_sec03 .tel_area .tel_area_txt .r-box .mail_icon {
  max-width: 192px;
}
@media screen and (max-width: 767px) {
  .house_single_sec01 .tel_area .tel_area_txt .r-box .mail_icon,
  .house_single_sec03 .tel_area .tel_area_txt .r-box .mail_icon {
    max-width: 100%;
    font-size: 1.2rem;
  }
}
.house_single_sec01 .tel_area .tel_area_txt .tel_character,
.house_single_sec03 .tel_area .tel_area_txt .tel_character {
  position: relative;
  padding-right: 17%;
}
@media screen and (max-width: 767px) {
  .house_single_sec01 .tel_area .tel_area_txt .tel_character,
  .house_single_sec03 .tel_area .tel_area_txt .tel_character {
    padding-right: 0;
  }
}
.house_single_sec01 .tel_area .tel_area_txt .tel_character:after,
.house_single_sec03 .tel_area .tel_area_txt .tel_character:after {
  content: "";
  width: 204px;
  height: 186px;
  position: absolute;
  right: 0;
  bottom: 0;
  background: url(../img/house/tel_character.svg) no-repeat center center/cover;
}
@media screen and (max-width: 767px) {
  .house_single_sec01 .tel_area .tel_area_txt .tel_character:after,
  .house_single_sec03 .tel_area .tel_area_txt .tel_character:after {
    content: none;
  }
}
.house_single_sec01 .tel_area .tel_area_txt .tel_character .l-box,
.house_single_sec01 .tel_area .tel_area_txt .tel_character .r-box,
.house_single_sec03 .tel_area .tel_area_txt .tel_character .l-box,
.house_single_sec03 .tel_area .tel_area_txt .tel_character .r-box {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .house_single_sec01 .tel_area .tel_area_txt .tel_character .l-box,
  .house_single_sec01 .tel_area .tel_area_txt .tel_character .r-box,
  .house_single_sec03 .tel_area .tel_area_txt .tel_character .l-box,
  .house_single_sec03 .tel_area .tel_area_txt .tel_character .r-box {
    width: 48%;
  }
}

.house_single_sec03 .tel_area {
  margin-bottom: 80px;
}
.house_single_sec03 .recommend {
  padding: 50px 10px 10px;
}
.house_single_sec03 .recommend h3 {
  color: #036eb7;
  text-align: center;
  font-size: 2.5rem;
  font-weight: bold;
  font-family: dnp-shuei-mgothic-std, sans-serif;
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .house_single_sec03 .recommend h3 {
    font-size: 2rem;
    margin-bottom: 30px;
  }
}
.house_single_sec03 .recommend h3 span {
  position: relative;
  padding: 0 50px;
}
.house_single_sec03 .recommend h3 span:before {
  content: "";
  width: 31px;
  height: 47px;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  background: url(../img/house/recommend_border.svg) no-repeat center center/cover;
}
.house_single_sec03 .recommend h3 span:after {
  content: "";
  width: 31px;
  height: 47px;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  background: url(../img/house/recommend_border.svg) no-repeat center center/cover;
}
.house_single_sec03 .recommend ul {
  max-width: 1120px;
  margin: 0 auto 50px;
  justify-content: flex-start;
}
@media screen and (max-width: 767px) {
  .house_single_sec03 .recommend ul {
    padding: 20px 10px;
  }
}
.house_single_sec03 .recommend ul li {
  width: 32%;
  margin-right: 2%;
  padding: 20px;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .house_single_sec03 .recommend ul li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 30px;
  }
}
.house_single_sec03 .recommend ul li:nth-of-type(3n) {
  margin-right: 0;
}
@media screen and (max-width: 767px) {
  .house_single_sec03 .recommend ul li:nth-of-type(3n) {
    margin-bottom: 0;
  }
}
.house_single_sec03 .recommend ul li a h4 {
  font-size: 1.6rem;
  margin-top: 30px;
}
.house_single_sec03 .btn_box.recommend-btn {
  margin-top: 50px;
  margin-bottom: 0;
}
.house_single_sec03 .btn_box.recommend-btn .btn {
  color: #fff;
  width: 100%;
  display: block;
  max-width: 497px;
  margin: 0 auto;
  padding: 20px;
  background: #f96e57 url(../img/common/btn_arrow.svg) no-repeat 95% center/9.562px 16.1057px;
  border: 2px solid #f96e57;
}
@media screen and (max-width: 768px) {
  .house_single_sec03 .btn_box.recommend-btn .btn {
    max-width: 280px;
    padding: 15px 20px;
  }
}
.house_single_sec03 .btn_box.recommend-btn .btn:hover {
  color: #f96e57;
  background-color: #fff;
}

.sasainakoto_txt {
  margin: 50px 0;
  padding: 20px;
  background: #ffea44;
  border: 5px solid #d2c87b;
}
.sasainakoto_txt p {
  text-align: center;
  font-size: 2.5rem;
  font-weight: bold;
  font-family: dnp-shuei-mgothic-std, sans-serif;
}
@media screen and (max-width: 768px) {
  .sasainakoto_txt p {
    font-size: 1.6rem;
  }
}

.breadcrumbs .inner .news_pankuzu {
  display: none;
}
.breadcrumbs .inner .news_pankuzu:nth-child(2) {
  display: inline;
}

* {
  box-sizing: border-box;
}

.register-container {
  width: 60%;
  margin: 50px auto;
  background: #fff;
  border: 1px solid #ddd;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  padding: 20px;
}

.register-header {
  text-align: center;
  margin: 20px 0;
}

.register-header h1 {
  font-size: 36px;
  margin: 0;
}

.register-header p {
  font-size: 18px;
  color: #666;
}

.progressbar {
  display: flex;
  flex-wrap: wrap;
}

.progressbar .item {
  position: relative;
  width: 25%;
  text-align: center;
  position: relative;
  align-items: center;
  justify-content: center;
  padding: 13px 0;
  line-height: 1.5;
  background: #f5f5f5;
  color: #999999;
}

.progressbar .item:not(:last-child)::before,
.progressbar .item:not(:last-child)::after {
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  left: 100%;
  content: "";
  border: 37px solid transparent;
  border-left: 20px solid #f5f5f5;
  margin: auto;
}

.progressbar .item:not(:last-child)::before {
  margin-left: 1px;
  border-left-color: #fff;
}

@media screen and (max-width: 767px) {
  .progressbar .item {
    font-size: 11px;
    line-height: 1.4;
    padding: 10px 0;
  }
  .progressbar .item:not(:last-child)::before,
  .progressbar .item:not(:last-child)::after {
    border-width: 25px;
    border-left-width: 12px;
  }
  /* 2つ目の item を無効化 */
  .progressbar .item:nth-child(2)::before,
  .progressbar .item:nth-child(2)::after {
    content: none;
    /* before と after を非表示にする */
  }
}
/* active */
.progressbar .item.active {
  z-index: 1;
  background: #0070bd;
  color: #fff;
}

.progressbar .item.active:not(:last-child)::after {
  border-left-color: #0070bd;
}

.progressbar .item.active:not(:last-child)::before {
  border-left: none;
}

.form-section h2 {
  font-size: 20px;
  color: #333;
  margin-bottom: 20px;
}

.registration-form {
  width: 100%;
}

.form-group {
  margin-bottom: 20px;
}

.form-group .label-title {
  font-size: 17px;
  font-weight: bold;
}

.form-group label {
  display: block;
  margin-bottom: 5px;
  font-size: 14px;
}

.required {
  color: red;
  font-size: 12px;
  margin-left: 5px;
}

.optional {
  color: #666;
  font-size: 12px;
  margin-left: 5px;
}

.input-group {
  display: flex;
  gap: 10px;
}

.input-group input {
  flex: 1;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 5px;
}

input,
select {
  width: 50%;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 5px;
}

.input-age {
  width: 100px;
}

.input-email {
  width: 100%;
}

.input-address {
  width: 80%;
}

.accept-wrap {
  text-align: center;
  padding: 40px;
  background: #f7f7f7;
  margin-bottom: 20px;
}

.input-radio {
  width: unset;
  margin: 5px;
}

.radio-label {
  margin: 0 10px;
}

.policy-wrap {
  margin: 20px 0;
}

.policy-title {
  width: 100%;
  background: #f7f7f7;
  padding: 10px 20px;
  font-weight: bold;
}

.policy {
  width: 100%;
  height: 200px;
  margin: 20px auto;
  padding: 10px;
  overflow-y: auto;
}

.note {
  font-size: 12px;
  color: #666;
}

.submit-btn {
  width: 100%;
  padding: 20px;
  background-color: #00a19a;
  color: #fff;
  border: none;
  border-radius: 5px;
  font-size: 16px;
  transition: 0.2s;
  cursor: pointer;
}

.submit-btn:hover {
  background-color: #007a74;
}

.property-item {
  margin: 20px 0;
}

.property-item input[type=checkbox],
.check-item-wrap input[type=checkbox] {
  width: unset;
}

.property-item input[type=number] {
  width: 25%;
}

.property-item label {
  display: inline-block;
  width: 20%;
}

.check-item-wrap label.check-items {
  width: 48%;
  display: inline-block;
}

.priority-wrap {
  margin: 10px 0;
}

.other-area {
  width: 100%;
  height: 130px;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 5px;
}

.checking-title {
  width: 100%;
  background: #f7f7f7;
  padding: 10px 20px;
  font-weight: bold;
  font-size: 19px;
}

a.btn_fixed {
  display: block;
  text-align: center;
  text-decoration: none;
  width: 200px;
  margin: auto;
  padding: 1rem 2rem;
  font-weight: bold;
  border: 2px solid #f19c1d;
  background: #f19c1d;
  color: #fff;
  transition: 0.2s;
  margin: 40px auto;
}

a.btn_fixed:hover {
  color: #f19c1d;
  background: #fff;
}

a.btn_search {
  display: block;
  text-align: center;
  text-decoration: none;
  width: 200px;
  margin: auto;
  padding: 1rem 2rem;
  font-weight: bold;
  border: 2px solid #27acd9;
  background: #27acd9;
  color: #fff;
  transition: 0.2s;
  margin: 40px auto;
}

a.btn_search:hover {
  color: #27acd9;
  background: #fff;
}

.complete-desc {
  font-weight: bold;
  margin: 20px 0;
  text-align: center;
}

.error-message {
  color: #ff2190;
  font-weight: bold;
  font-size: 0.9em;
}

.all-error {
  text-align: center;
  margin: 15px 0;
}

/* --- レスポンシブ対応 --- */
/* タブレットサイズ */
@media screen and (max-width: 768px) {
  .register-container {
    width: 80%;
  }
}
/* スマートフォンサイズ */
@media screen and (max-width: 480px) {
  .register-container {
    width: 90%;
    padding: 10px;
  }
  .progressbar {
    width: 100%;
  }
  .progressbar .item {
    width: 50%;
  }
  .accept-wrap {
    padding: 20px;
  }
  .property-item label {
    display: block;
    width: 100%;
  }
}
.login-container {
  width: 60%;
  margin: 50px auto;
  background: #fff;
  border: 1px solid #ddd;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  padding: 20px;
}

.login-header {
  text-align: center;
  margin-bottom: 20px;
}

.login-header h1 {
  font-size: 36px;
  margin: 0;
}

.login-header p {
  font-size: 18px;
  color: #666;
}

.login-body {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}

.login-section,
.register-section {
  width: 48%;
  padding: 20px;
  border: 1px solid #ddd;
  background: #f7f7f7;
}

.login-section h2,
.register-section h2 {
  font-size: 18px;
  color: #f39800;
  margin-bottom: 15px;
}

.login-form label {
  display: block;
  margin-bottom: 5px;
  font-size: 14px;
  color: #333;
}

.login-form input {
  width: 100%;
  padding: 10px;
  margin-bottom: 15px;
  border: 1px solid #ddd;
  border-radius: 5px;
  box-sizing: border-box;
  /* パディングとボーダーを幅に含める */
}

.btn-000 {
  display: inline-block;
  width: 100%;
  text-align: center;
  padding: 10px;
  font-size: 16px;
  color: #fff;
  text-decoration: none;
  border: none;
  border-radius: 5px;
  cursor: pointer;
}

.login-btn {
  background-color: #f39800;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.login-btn:hover {
  background-color: #ffcb75;
  color: #fff;
}

.register-btn {
  margin: 10px 0;
  background-color: #00a19a;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.register-btn:hover {
  color: #fff;
  background-color: #1cddd5;
}

.forgot-password {
  display: block;
  margin-top: 10px;
  font-size: 14px;
  text-align: center;
  color: #0073aa;
  text-decoration: none;
}

.forgot-password:hover {
  text-decoration: underline;
}

/* --- レスポンシブ対応 --- */
/* タブレットサイズ */
@media screen and (max-width: 768px) {
  .login-container {
    width: 80%;
  }
  .login-body {
    flex-direction: column;
    gap: 10px;
  }
  .login-section,
  .register-section {
    width: 100%;
  }
}
/* スマートフォンサイズ */
@media screen and (max-width: 480px) {
  .login-container {
    width: 90%;
    padding: 10px;
  }
  .login-header h1 {
    font-size: 28px;
  }
  .login-header p {
    font-size: 16px;
  }
  .login-section h2,
  .register-section h2 {
    font-size: 16px;
  }
  .btn-000 {
    font-size: 14px;
    padding: 8px;
  }
  .forgot-password {
    font-size: 12px;
  }
}
#quiz-container {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
}

/* 全体コンテナ */
.question-container {
  display: none;
  text-align: center;
  max-width: 900px;
  min-height: 450px;
  margin: 20px auto;
  padding: 20px;
  background-color: #f9f9f9;
  border: 1px solid #ddd;
  border-radius: 8px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.question-container-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 400px;
}

.question-group {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

/* 質問タイトル */
.question-title {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
  text-align: center;
}

/* 質問サブタイトル */
.question-subtitle {
  font-size: 18px;
  margin-bottom: 20px;
  text-align: center;
  color: #666;
}

.question {
  display: none;
  text-align: center;
}

.question-container.active {
  display: block;
}

button {
  padding: 10px 20px;
  margin: 5px;
  font-size: 16px;
  cursor: pointer;
}

.progress-container {
  width: 100%;
  background-color: #f0f0f0;
  height: 10px;
  margin-bottom: 20px;
  position: relative;
}

.progress-bar {
  width: 0%;
  height: 10px;
  background-color: #00bfa5;
  transition: width 0.3s ease-in-out;
}

.sell-select-field {
  width: 75%;
  padding: 10px;
  font-size: 14px;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
  margin-bottom: 20px;
  transition: border-color 0.3s, box-shadow 0.3s;
}

/* 入力フィールド */
.sell-input-field {
  width: 75%;
  padding: 10px;
  font-size: 14px;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
  margin-bottom: 20px;
  transition: border-color 0.3s, box-shadow 0.3s;
}

.sell-name-input-field {
  width: 37%;
  padding: 10px;
  font-size: 14px;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
  margin-bottom: 20px;
  transition: border-color 0.3s, box-shadow 0.3s;
}

.sell-input-field:focus,
.sell-name-input-field:focus {
  border-color: #007bff;
  box-shadow: 0 0 4px rgba(0, 123, 255, 0.2);
  outline: none;
}

/* ボタングループ */
.sell-button-group {
  display: flex;
  justify-content: space-between;
}

/* ボタン */
.sell-btn {
  padding: 10px 20px;
  font-size: 14px;
  font-weight: bold;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.3s, transform 0.2s;
}

.sell-btn-primary {
  background-color: #007bff;
  color: #fff;
}

.sell-input-field:read-only {
  border: none;
  background: none;
}

.sell-btn-primary:hover {
  background-color: #0056b3;
}

.btn-secondary {
  background-color: #6c757d;
  color: #fff;
}

.sell-btn-secondary:hover {
  background-color: #5a6268;
}

.sell-btn:active {
  transform: scale(0.95);
}

.previous-answer {
  text-align: center;
}

.previous-answer strong {
  color: #2c9b00;
}

.select-button-group {
  text-align: center;
}

.sell-thanks-img {
  width: 300px;
  margin: 15px auto;
}

/* スマートフォンサイズ */
@media screen and (max-width: 480px) {
  .question-container {
    max-width: 90%;
  }
  .question-subtitle {
    font-size: 14px;
  }
}
.widget-counter {
  padding: 0 0 20px 0;
}

.property-widget {
  font-family: Arial, sans-serif;
  background-color: #eff7ff;
  border: 1px solid #ddd;
  padding: 20px;
  border-radius: 8px;
  text-align: center;
  width: 100%;
  max-width: 70%;
  margin: 0 auto;
}

.property-header {
  margin-bottom: 20px;
}

.property-header h2 {
  font-size: 32px;
  font-weight: bold;
  color: #333;
}

.property-total {
  font-size: 26px;
  color: #007b7b;
  margin-bottom: 5px;
}

.property-total-count {
  font-size: 84px;
  font-weight: bold;
}

.property-date {
  font-size: 14px;
  color: #666;
  margin: -10px 0;
}

.property-stats {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
}

.stat-item {
  flex: 1;
  margin: 0 10px;
  padding: 10px;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 8px;
}

.stat-item h3 {
  font-size: 24px;
  color: #333;
}

.stat-item .stat-count {
  font-size: 34px;
  font-weight: bold;
  color: #007b7b;
}

.stat-item p {
  font-size: 16px;
  color: #666;
  margin: 5px 0;
}

.property-actions {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-bottom: 15px;
}

.btn-free {
  background-color: #00bfa5;
  color: white;
  border: none;
  padding: 10px 20px;
  border-radius: 8px;
  font-size: 16px;
  cursor: pointer;
}

.btn-register {
  background-color: #ff9800;
  color: white;
  text-decoration: none;
  padding: 10px 20px;
  border-radius: 8px;
  font-size: 16px;
  display: inline-block;
}

.property-note {
  font-size: 12px;
  color: #666;
  margin-top: 10px;
  text-align: center;
}

/* スマートフォンサイズ */
@media screen and (max-width: 480px) {
  .property-widget {
    max-width: 90%;
  }
  .property-header h2 {
    font-size: 24px;
  }
  .property-total {
    font-size: 26px;
  }
  .property-total-count {
    font-size: 38px;
  }
  .property-stats {
    display: block;
  }
  .stat-item {
    margin: 10px 0;
  }
  .stat-item p {
    margin: -5px 0;
  }
  .stat-item h3 {
    font-size: 18px;
  }
}
.policy-title-sell {
  width: 100%;
  background: #e5e5e5;
  padding: 10px 20px;
}

.policy-sell {
  width: 100%;
  height: 200px;
  margin: 20px auto;
  padding: 10px;
  overflow-y: auto;
  text-align: left;
  background: #fff;
}

.property-info-widget {
  display: flex;
  width: 85%;
  max-width: 1000px;
  margin: auto;
  background: #fff;
  border: solid 2px #878787;
  padding: 20px 20px;
  border-radius: 20px;
}

.property-info-stats {
  display: block;
  flex-grow: 1;
}

.property-info-header {
  padding: 20px 45px;
}

.stat-item-wrap {
  display: flex;
}

.stat-item-inner {
  width: 33.3%;
}

.stat-border {
  border-right: solid 1px #959595;
}

.stat-item-title-wrap {
  font-weight: bold;
  text-align: center;
}

.stat-count {
  font-size: 42px;
}

.stat-note {
  font-size: 12px;
  text-align: center;
}

a.btn_search {
  display: block;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  width: 100%;
  margin: 25px auto 15px auto;
  padding: 1rem 4rem;
  font-weight: bold;
  border: 2px solid #27acd9;
  background: #27acd9;
  color: #fff;
  transition: 0.5s;
  font-size: 30px;
}

a.btn_search:hover {
  color: #27acd9;
  background: #fff;
}

.pc-display {
  display: flex;
}

.sp-display {
  display: none;
}

.spec-title {
  font-size: 50px;
  font-weight: bold;
  color: #ff5858;
  text-align: center;
}

.spec-sec {
  margin-bottom: -35px;
  padding-top: 20px;
}

.property-actions2 {
  margin-bottom: 0;
}

a.btn_search2 {
  display: block;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  width: 65%;
  max-width: 350px;
  margin: 0 auto 15px auto;
  padding: 1rem 4rem;
  font-weight: bold;
  border: 2px solid #0e6eb7;
  background: #0e6eb7;
  color: #fff;
  transition: 0.5s;
  font-size: 19px;
}

a.btn_search2:hover {
  background-color: #fff;
  color: #0e6eb7;
}

/* タブレットサイズ */
@media screen and (max-width: 768px) {
  .register-container {
    width: 80%;
  }
  .pc-display {
    display: none;
  }
  .sp-display {
    display: block;
  }
  .property-info-widget {
    padding: 0 20px;
  }
  .property-info-header {
    padding: 10px 15px;
  }
  .maru_b {
    font-size: 18px;
    text-align: center;
    line-height: 3em;
  }
  .stat-count {
    font-size: 25px;
  }
  .sp-stat-sub {
    display: block;
  }
  .property-date {
    text-align: center;
  }
  a.btn_search {
    font-size: 18px;
  }
  .spec-title {
    font-size: 30px;
  }
  a.btn_search2 {
    width: 100%;
    font-size: 18px;
    margin-top: -15px;
  }
}
/* スマートフォンサイズ */
@media screen and (max-width: 480px) {
  .maru_b {
    line-height: 2em;
  }
}
.loan-wrap {
  width: 100%;
  margin: -30px 0;
  text-align: center;
}

.loan-wrap img {
  width: 85%;
  margin: auto;
  max-width: 900px;
}

/* 物件検索機能 */
.tax_check_list dl {
  margin-bottom: 50px;
}

.tax_check_list dl dd ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}

.tax_check_list dl dd ul li {
  color: #fff;
  width: 100%;
  display: block;
  max-width: 497px;
  margin: 0 auto;
  margin-right: 2%;
  margin-bottom: 2%;
  background: #f96e57;
  border: 2px solid #f96e57;
}

.tax_check_list dl dd ul li input {
  width: 10%;
}

.custom-checkbox {
  display: flex;
  cursor: pointer;
  padding: 20px 2%;
  transition: background 0.2s, border-color 0.2s;
}

.custom-checkbox:hover {
  color: #000;
  background-color: #f5f5f5;
  border-color: #999;
}

/* 見えないデフォルトのチェックボックス */
.custom-checkbox input[type=checkbox] {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  color: #ffffff;
  background: #ffffff;
  cursor: pointer;
  transition: all 0.15s ease-out;
  margin-right: 10px;
  /*デフォルト値を無効に*/
  border: none;
  outline: none;
  appearance: none;
}

/* チェック時の見た目 */
.custom-checkbox input[type=checkbox]:checked {
  display: flex;
  width: 30px;
  height: 30px;
  background: #036eb7;
}

.custom-checkbox input[type=checkbox]:hover {
  background: rgb(51, 131, 184);
}

.custom-checkbox input[type=checkbox]:checked::after {
  position: relative;
  content: "";
  display: block;
  background: #036eb7;
  animation: click-wave 0.8s ease;
}

.custom-checkbox input[type=checkbox]:checked::before {
  position: absolute;
  font-size: 130%;
  content: "✔";
}

/*クリックした時のアニメーション*/
@keyframes click-wave {
  0% {
    width: 30px;
    height: 30px;
    opacity: 0.25;
    border-radius: 40%;
  }
  100% {
    transform: scale(10);
    opacity: 0;
    border-radius: 50%;
  }
}
@media screen and (max-width: 767px) {
  .tax_check_list dl dd ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
}
.search-button {
  background: #ee9e48;
  position: relative;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 0 auto;
  font-size: 20px;
  max-width: 440px;
  width: 100%;
  padding: 30px 25px;
  color: #fff;
  border: none;
  transition: 0.3s ease-in-out;
  font-weight: 500;
  z-index: 0;
}

.search-button:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 0;
  display: block;
  background: #ff4c2e;
  transition: 0.3s;
  left: 0;
}

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

.search-button:hover:before {
  width: 100%;
  z-index: -1;
}

.sort-wrap {
  display: flex;
}

.sort-wrap label {
  display: flex;
  align-items: center;
  vertical-align: middle;
  color: #000;
}

.sort_select {
  position: relative;
  display: flex;
  align-items: center;
  margin: 2em 20px;
  border: 2px solid #da3c41;
  border-radius: 9px;
}

.sort_select:before {
  position: absolute;
  right: 15px;
  content: "";
  width: 16px;
  height: 8px;
  background: #fff;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  z-index: 10;
}

.sort_select select {
  width: 100%;
  padding: 10px 45px 10px 10px;
  color: #666666;
  color: #fff;
  cursor: pointer;
  text-overflow: ellipsis;
  /*テキストがオーバーしたら'...'で省略*/
  z-index: 1;
  /* 標準のスタイルを無効にする */
  border: none;
  appearance: none;
  outline: none;
  background: #f96e57;
}

/*# sourceMappingURL=style.css.map */
