@charset "UTF-8";
/**************************************************/
/****** 共通設定 ******/
/* SP用CSS記述（767px以下） */
.sp {
  display: block;
}
.pc {
  display: none;
}
/* TB用CSS記述（768px以上） */
@media print, screen and (min-width:768px) {
  .sp {
    display: none;
  }
  .pc {
    display: block;
  }
}
/* PC用CSS記述（1000px以上）*/
@media print, screen and (min-width:1000px) {
  .sp {
    display: none;
  }
  .pc {
    display: block;
  }
}
/**************************************************/
/****** body ******/
body {
  clear: both;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  color: #333;
  font-family: "游ゴシック", "游ゴシック体", YuGothic, Yu Gothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
  font-size: 100%;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%; /* iPhone版Safariの文字サイズ対応 */
}
/****** link ******/
a {
  background: none;
  text-decoration: none;
}
a:link, a:visited, a:active {
  color: #000;
}
a:hover {
  color: #39F;
}
/****** etc ******/
.red {
  color: #F00;
}
.blue {
  color: #39F;
}
.small {
  font-size: small;
}
.large {
  font-size: large;
}
.clear {
  clear: both;
}
hr {
  clear: both;
  border: 0;
  border-top: 1px solid #666;
  margin: 4% 0;
  overflow: hidden;
}
hr.dot {
  clear: both;
  border: 0;
  border-top: 1px dotted #666;
  margin: 4% 0;
  overflow: hidden;
}
.bottom10 {
  margin-bottom: 10px;
  overflow: hidden;
}
.bottom20 {
  margin-bottom: 20px;
  overflow: hidden;
}
.bottom30 {
  margin-bottom: 30px;
  overflow: hidden;
}
.bottom40 {
  margin-bottom: 40px;
  overflow: hidden;
}
.bottom50 {
  margin-bottom: 50px;
  overflow: hidden;
}
/* PC用CSS記述（1000px以上）*/
@media print, screen and (min-width:1000px) {
  hr {
    clear: both;
    border: 0;
    border-top: 1px solid #666;
    margin: 2% 0;
    overflow: hidden;
  }
  hr.dot {
    clear: both;
    border: 0;
    border-top: 1px dotted #666;
    margin: 2% 0;
    overflow: hidden;
  }
}
/**************************************************/
/****** main ******/
main {}
/****** content ******/
.content {
  clear: both;
  overflow: hidden;
}
.content a:hover img {
  filter: alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
}
.content img {
  max-width: 100%;
}
/* PC用CSS記述（1000px以上）*/
@media print, screen and (min-width:1000px) {
  /****** content ******/
  .content {
    /*max-width: 1200px;
    margin: 0 auto;*/
  }
}
/**************************************************/
/****** setplan_top ******/
h1.setplan_top {
  margin-bottom: 4%;
}
/* TB用CSS記述（768px以上） */
@media print, screen and (min-width:768px) {
  .setplan_ad {}
}
/* PC用CSS記述（1000px以上）*/
@media print, screen and (min-width:1000px) {
  .setplan_ad {
    max-width: 1000px;
    margin: 0 auto 6%;
  }
}
/**************************************************/
/****** setplan_box ******/
/**************************************************/
/****** setplan_h2 ******/
.h2_img {
  max-width: 100%;
  margin: 0 auto 4%;
}
.h2_img2 {
  max-width: 100%;
  margin: 0 auto 4%;
}
.h2_txt {
  color: #009245;
  font-size: 120%;
  font-weight: bold;
  margin-bottom: 4%;
}
.h2_txt2 {
  text-align: left;
  font-size: 90%;
  margin-bottom: 4%;
}
.h2_txt3 {
  text-align: left;
  font-size: 90%;
  margin-bottom: 4%;
}
/* TB用CSS記述（768px以上） */
@media print, screen and (min-width:768px) {
  .h2_img {
    margin: 0 auto 2%;
  }
  .h2_img2 {
    max-width: 70%;
    margin: 0 auto 2%;
  }
  .h2_txt {
    font-size: 140%;
    margin-bottom: 2%;
  }
  .h2_txt2 {
    font-size: 100%;
    margin-bottom: 2%;
  }
  .h2_txt3 {
    text-align: center;
    font-size: 100%;
    margin-bottom: 2%;
  }
}
/* PC用CSS記述（1000px以上）*/
@media print, screen and (min-width:1000px) {
  .h2_img {
    max-width: 100%;
  }
}
/**************************************************/
/****** setplan_area ******/
.setplan_area {
  clear: both;
  overflow: hidden;
  margin: 0 3% 8%;
  /*border-top: 1px solid #808080;
  padding-top: 2%;*/
}
.area_title {}
.area_txt {
  font-size: 100%;
  margin-bottom: 2%;
}
.area_img {
  margin-bottom: 4%;
}
.area_left {
  margin-bottom: 2%;
}
.area_right {
  margin-bottom: 2%;
}
/* TB用CSS記述（768px以上） */
@media print, screen and (min-width:768px) {
  .area_title {}
  .area_img {
    margin-bottom: 2%;
  }
  .area_left {
    float: left;
    max-width: 48%;
  }
  .area_right {
    float: right;
    max-width: 48%;
  }
}
/* PC用CSS記述（1000px以上）*/
@media print, screen and (min-width:1000px) {
  .setplan_area {
    max-width: 1000px;
    margin: 0 auto 6%;
  }
  .area_txt {
    font-size: 110%;
  }
}
/**************************************************/
/****** setplan_house ******/
.setplan_house {
  clear: both;
  overflow: hidden;
  margin: 0 3% 8%;
}
.house_title {
  margin-bottom: 2%;
}
.house_txt {
  clear: both;
  text-align: left;
  font-size: 100%;
  margin-bottom: 2%;
}
.house_img {
  margin-bottom: 3%;
}
.house_left {
  margin-bottom: 2%;
}
.house_right {
  margin-bottom: 2%;
}
.house_copy {
  text-align: left;
  color: #ff6600;
  font-size: 120%;
  font-weight: bold;
  margin-bottom: 1%;
}
.house_color {
  color: #ff6600;
}
.house_memo {
  text-align: left;
  font-size: 80%;
  margin-bottom: 1%;
}
.house_more {
  text-align: left;
  font-size: 100%;
  font-weight: bold;
  margin-bottom: 4%;
}
.house_more a {
  color: #009245;
}
/* TB用CSS記述（768px以上） */
@media print, screen and (min-width:768px) {
  .house_title {
    margin: 0 auto 2%;
  }
  .house_img {
    margin-bottom: 2%;
  }
  .house_left {
    float: left;
    max-width: 48%;
  }
  .house_right {
    float: right;
    max-width: 48%;
  }
  .house_more {
    font-size: 110%;
    font-weight: bold;
  }
}
/* PC用CSS記述（1000px以上）*/
@media print, screen and (min-width:1000px) {
  .setplan_house {
    max-width: 1000px;
    margin: 0 auto 6%;
  }
  .house_txt {
    font-size: 110%;
  }
  .house_copy {
    font-size: 130%;
  }
}
/**************************************************/
/****** soudan ******/
.soudan_title {
  clear: both;
  padding-top: 4%;
  font-size: 100%;
  font-weight: bold;
  margin-bottom: 1%;
}
.soudan_btn {
  clear: both;
}
.soudan_btn a {
  display: inline-block;
  position: relative;
  border: 1px solid #b3b3b3;
  background-color: #b3b3b3;
  border-radius: 30px;
  padding: 10px 60px;
  color: #fff;
  font-size: 110%;
  font-weight: bold;
}
.soudan_btn a:hover {
  border: 1px solid #b3b3b3;
  background-color: #fff;
  color: #b3b3b3;
}
/* TB用CSS記述（768px以上） */
@media print, screen and (min-width:768px) {
  .soudan_title {
    font-size: 120%;
  }
  .soudan_btn a {
    font-size: 120%;
  }
}
/* PC用CSS記述（1000px以上）*/
@media print, screen and (min-width:1000px) {
  .soudan_title {
    padding-top: 2%;
  }
}
/**************************************************/
/****** setplan_kankyo ******/
.setplan_kankyo {
  clear: both;
  overflow: hidden;
  background-color: #ecfecc;
  padding: 2%;
  margin: 0 3% 8%;
}
.kankyo_txt {
  font-size: 100%;
  margin-bottom: 2%;
}
.kankyo_img {
  margin-bottom: 4%;
}
.kankyo_copy {
  text-align: left;
  font-size: 90%;
  margin-bottom: 1%;
}
ul.kankyo_near {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 4%;
}
ul.kankyo_near li {
  display: block;
  width: 80%;
  padding: 0.5%;
}
ul.kankyo_near li img {
  margin-bottom: 1%;
}
ul.kankyo_near li p {
  text-align: center;
  font-size: 80%;
}
.google_map {
  clear: both;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  margin-bottom: 2%;
}
.google_map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
.kankyo_more {
  text-align: left;
  font-size: 100%;
  font-weight: bold;
}
.kankyo_more a {
  color: #009245;
}
/* TB用CSS記述（768px以上） */
@media print, screen and (min-width:768px) {
  .kankyo_img {
    margin-bottom: 2%;
  }
  ul.kankyo_near {
    margin-bottom: 2%;
  }
  ul.kankyo_near li {
    width: 32%;
  }
  .google_map {
    margin-bottom: 2%;
  }
  .kankyo_more {
    font-size: 110%;
  }
}
/* PC用CSS記述（1000px以上）*/
@media print, screen and (min-width:1000px) {
  .setplan_kankyo {
    max-width: 940px;
    padding: 30px;
    margin: 0 auto 6%;
  }
}
/**************************************************/
/****** mail ******/
.mail {
  clear: both;
  overflow: hidden;
  margin: 0 3% 3%;
}
.mail_title {
  margin-bottom: 2%;
}
.mail_txt {
  text-align: left;
  font-size: 90%;
  margin-bottom: 2%;
}
.mail_img {
  margin-bottom: 2%;
}
.mail dl {
  display: table;
  width: 100%;
  margin: 0 auto;
  border-bottom: 1px dotted #CCC;
  padding: 15px 0;
}
.mail dl:first-of-type {
  border-top: 1px dotted #CCC;
}
.mail dl dt, .mail dl dd {
  text-align: left;
  font-size: 90%;
  padding: 5px 0;
}
.require {
  background: #F00;
  border-radius: 3px;
  padding: 2px 5px;
  color: #FFF;
  font-size: 70%;
  font-weight: bold;
  margin-left: 10px;
}
.submit {
  padding: 20px 0;
}
.policy {
  color: #F00;
  font-size: 90%;
  font-weight: bold;
}
form {
  width: 100%;
}
input[type="text"] {
  width: 100%;
}
textarea {
  width: 100%;
}
input, textarea {
  box-sizing: border-box;
  border: 1px solid #CCC;
  border-radius: 3px;
  padding: 5px;
  font-size: 100%;
  font: inherit;
}
input[type=text]:focus, textarea:focus, select:focus {
  border: 1px solid #39F;
}
input[type=submit] {
  -webkit-appearance: none; /* オリジナルデザインが適用 */
  width: 40%;
  cursor: pointer;
  border: 1px solid #39F;
  background-color: #39F;
  border-radius: 5px;
  padding: 10px;
  color: #FFF;
  font-size: 100%;
  font-weight: bold;
}
input[type=submit]:hover {
  background-color: #FFF;
  color: #39F;
}
/****** tel ******/
.tel {
  clear: both;
  overflow: hidden;
  margin: 0 3% 6%;
}
/* TB用CSS記述（768px以上） */
@media print, screen and (min-width:768px) {
  /****** mail ******/
  .mail_txt {
    font-size: 100%;
  }
  .mail dl dt, .mail dl dd {
    display: table-cell;
    vertical-align: top;
  }
  .mail dl dt {
    width: 40%;
  }
  /****** tel ******/
  .tel {
    margin: 0 auto 3%;
  }
}
/* PC用CSS記述（1000px以上）*/
@media print, screen and (min-width:1000px) {
  /****** mail ******/
  .mail {
    max-width: 1000px;
    margin: 0 auto 3%;
  }
  .mail_wrap {
    width: 80%;
    margin: 0 auto;
  }
  /****** tel ******/
  .tel {
    margin: 0 auto 3%;
  }
}
/**************************************************/
/****** .bnr ******/
.bnr {
  clear: both;
  margin: 0 5% 2%;
}
/* TB用CSS記述（768px以上） */
@media print, screen and (min-width:768px) {}
/* PC用CSS記述（1000px以上）*/
@media print, screen and (min-width:1000px) {
  .bnr {
    max-width: 800px;
    margin: 0 auto 4%;
  }
}
/**************************************************/
/****** .pagetop ******/
.pagetop {
  clear: both;
  margin: 0 3% 30px;
}
.pagetop a {
  font-size: 75%;
  font-weight: bold;
}
.pagetop a:hover {
  color: #39F;
}
.pagetop a i {
  padding-right: 2px;
}
/* TB用CSS記述（768px以上） */
@media print, screen and (min-width:768px) {
  .pagetop a {
    float: right;
  }
}
/* PC用CSS記述（1000px以上）*/
@media print, screen and (min-width:1000px) {
  .pagetop {
    max-width: 1000px;
    margin: 0 auto 50px;
  }
}
/****** footer ******/
footer {
  clear: both;
  overflow: hidden;
  border-top: 1px solid #CCC;
}
footer img {
  max-width: 100%;
}
footer div {
  max-width: 90%;
  margin: 15px auto;
}
footer h6 {
  width: 200px;
  margin: 0 auto 10px;
}
footer p {
  font-size: 75%;
}
/* TB用CSS記述（768px以上） */
@media print, screen and (min-width:768px) {
  footer {}
  footer div {
    display: flex;
    justify-content: center;
    margin: 20px auto;
  }
  footer h6 {
    margin: 0;
    padding-right: 20px;
  }
  footer p {
    text-align: left;
  }
}
/* PC用CSS記述（1000px以上）*/
@media print, screen and (min-width:1000px) {
  footer {}
  footer div {
    max-width: 800px;
    margin: 20px auto;
  }
}
/****** .copyright ******/
.copyright {
  clear: both;
  overflow: hidden;
  border-top: 1px solid #CCC;
  background-color: #EEE;
  padding: 20px 10px;
  color: #666;
  font-size: 80%;
}