@charset "utf-8";

.pc-center {
    text-align: center;
}
.mb{
margin-bottom: 20px;
}
.mbb{
margin-bottom: 40px;
}
/* ----------------------------------------
 box
------------------------------------------- */
.right-img{
  display: flex;
  flex-wrap: wrap;
  flex-direction: row-reverse;
  justify-content: space-between;
}
.right-img .box01{
  width: 40%;
}
.right-img .box02{
  width: 55%;
}
.left-img{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.left-img .box01{
  width: 40%;
}
.left-img .box02{
  width: 55%;
}
/* ----------------------------------------
 gallery
------------------------------------------- */
.three-img{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.three-img li{
  width: 31%;
  background-color: #f8f4e6;
}
.group01 li div{
padding: 5% 8%;
}
.group01 li h3{
color: #8b764b;
font-size: 1.8rem;
font-weight: 500;
text-align: center;
margin-bottom: 10px;
}
.group01 li p{
font-size: 90%;
}

/* ----------------------------------------
 table
------------------------------------------- */
.info-table{
width: 100%;
}
.info-table th{
width: 25%;
border-right: 2px solid #cab49a;
}
.info-table th,.info-table td{
box-sizing: border-box;
font-weight: 400;
text-align: left;
vertical-align: top;
line-height: 1.6;
border-bottom: 1px solid #a6a49d;
padding: 15px 0;
}
.info-table tr:last-child th,.info-table tr:last-child td{
border-bottom: none;
}
.info-table td{
padding-left: 5%;
}
/* ----------------------------------------
 menu
------------------------------------------- */
.menu {
  margin-bottom: 30px;
}
.menu li {
  border-bottom: 1px solid #a6a49d;
  padding: 10px 0;
}
.menu dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  font-size: 1.9rem;
  line-height: 1.4;
}
.menu dl span{
  font-size: 70%;
}
.menu dl dt{
  font-weight: 500;
  text-align: left;
}
.menu dl dd{
  color: #951f0c;
  font-weight: 500;
  text-align:right;
}
.price span{
  font-size: 70%;
}
.price{
  color: #951f0c;
  font-size: 120%;
  font-weight: 500;
  text-align:right;
}
/* ----------------------------------------
 bg-group
------------------------------------------- */
.bg-group {
  position: relative;
}
.bg-group::after {
  position: absolute;
  display: block;
  content: "";
  width: 60%;
  height: 50%;
  background: url("../images/cmn-images/bg01.jpg") 0 0;
  top: 0;
  left: 40%;
  z-index: 1;
}
.bg-group .box01 {
  width: 45%;
  position: relative;
  z-index: 10;
}
.bg-group .box02 {
  width: 50%;
  position: relative;
  z-index: 10;
}

.bg-group2 {
  position: relative;
}
.bg-group2::after {
  position: absolute;
  display: block;
  content: "";
  width: 60%;
  height: 50%;
  background: url("../images/cmn-images/bg01.jpg") 0 0;
  top: 0;
  left: 0;
  z-index: 1;
}
.bg-group2 .box01 {
  width: 45%;
  position: relative;
  z-index: 10;
}
.bg-group2 .box02 {
  width: 50%;
  position: relative;
  z-index: 10;
}
.bg-group3 {
  background-color: #f8f4e6;
  padding: 30px 50px;
}
.bg-group3 ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.bg-group3 ul li{
  width: 50%;
}
/* ----------------------------------------
  list
---------------------------------------- */
.info-list {
  margin-left: 1em;
}
.info-list li {
  position: relative;
  margin-bottom: 10px;
}
.info-list li::before, .info-list02 li::before {
  position: absolute;
  content: "・";
  display: inline-block;
  left: -1em;
}
/* ----------------------------------------
  tel
---------------------------------------- */
.tel{
color: #8b764b;
font-size: 2.8rem;
font-weight: 500;
line-height: 1;
margin-bottom: 15px;
}
.tel span{
font-size: 130%;;
}
/* ----------------------------------------
form
------------------------------------------- */
.form{
background-color: #fff;
padding: 60px;
}
.form .txt01{
text-align: center;
margin-bottom: 50px;
}
.form table {
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 50px;
}
.form table th {
  width: 26%;
  position: relative;
  text-align: left;
  vertical-align: top;
  line-height: 1.7;
  font-weight: normal;
  box-sizing: border-box;
  border-bottom: 1px solid #e5e5e5;
  padding: 20px 10px;
}
.need {
  position: absolute;
  color: #fff;
  font-size: 1.2rem;
  background-color: #c70024;
  padding: 1px 5px;
  left: 170px;
}
.need2 {
  color: #fff;
  font-size: 1.2rem;
  background-color: #c70024;
  padding: 1px 5px;
}
.form table td {
  text-align: left;
  vertical-align: top;
  line-height: 1.7;
  border-bottom: 1px solid #e5e5e5;
  box-sizing: border-box;
  padding: 20px 10px;
}
.form table tr:last-child th, .form table tr:last-child td {
  border-bottom: none;
}
.form table td p {
  padding: 15px 0 0 0;
}
.input01 {
  width: 100%;
  box-sizing: border-box;
  color: #000;
  font-size: 1.6rem;
  background-color: #fff;
  border: 1px solid #d0d0d0;
  padding: 20px;
}
.input01::placeholder {
  color: #b5b5b5;
}
.input02 {
  width: 80%;
  box-sizing: border-box;
  color: #000;
  font-size: 1.6rem;
  background-color: #fff;
  border: 1px solid #d0d0d0;
  padding: 20px;
}
.input03 {
  box-sizing: border-box;
  color: #000;
  font-size: 1.6rem;
  background-color: #fff;
  border: 1px solid #d0d0d0;
  padding: 20px;
}
.select01 {
  padding: 10px 15px;
}
.submit input {
  display: inline-block;
  position: relative;
  color: #fff;
  font-size: 1.6rem;
  width: 100%;
  box-sizing: border-box;
  max-width: 300px;
  background-color: #8b764b;
  border: solid 1px #8b764b;
  border-radius: 40px;
  cursor: pointer;
  padding: 20px 30px;
  margin-bottom: 15px;
  -webkit-transition: 0.4s ease-in-out;
  -moz-transition: 0.4s ease-in-out;
  -o-transition: 0.4s ease-in-out;
  transition: 0.4s ease-in-out;
}
.submit input:hover {
  color: #fff;
  background-color: #8b764b;
  border: solid 1px #8b764b;
  cursor: pointer;
}
.cmn-submit {
  display: inline-block;
  position: relative;
  color: #fff;
  font-size: 1.6rem;
  width: 100%;
  box-sizing: border-box;
  max-width: 200px;
  background-color: #8b764b;
  border: solid 1px #8b764b;
  border-radius: 40px;
  cursor: pointer;
  padding: 20px 30px;
  margin-bottom: 15px;
  -webkit-transition: 0.4s ease-in-out;
  -moz-transition: 0.4s ease-in-out;
  -o-transition: 0.4s ease-in-out;
  transition: 0.4s ease-in-out;
}
.cmn-submit:hover {
  color: #fff;
  background-color: #8b764b;
  cursor: pointer;
}
.form input[type="date"]{
padding: 10px 15px;
}
.form select {
  padding: 10px 15px;
}
/* =======================
  PC
======================== */
@media screen and (min-width: 1100px) {}
/* =======================
  TABLET
======================== */
@media screen and (max-width:1099px) {}
/* =======================
  SP
======================== */
@media screen and (max-width: 799px) {
.pc-center {
    text-align: left;
}
/* ----------------------------------------
 box
------------------------------------------- */
.right-img .box01{
  width: 100%;
  margin-bottom: 30px;
}
.right-img .box02{
  width: 100%;
}
.left-img .box01{
  width: 100%;
  margin-bottom: 30px;
}
.left-img .box02{
  width: 100%;
}
/* ----------------------------------------
 gl
------------------------------------------- */
.three-img{
  margin-bottom: -30px;
}
.three-img li{
  width: 100%;
  margin-bottom: 30px;
}
.group01 li div{
padding: 5% 8%;
}
.group01 li h3{
font-size: 1.6rem;
}

/* ----------------------------------------
 bg-group
------------------------------------------- */
.bg-group::after {
  width: 100%;
  height: 30%;
  background-size: 150% auto;
  top: 0;
  left: 0;
  z-index: 1;
}
.bg-group .box01 {
  width: 100%;
  margin-bottom: 30px;
}
.bg-group .box02 {
  width: 100%;
}
.bg-group2::after {
  width: 100%;
  height: 30%;
  background-size: 150% auto;
  top: 0;
  left: 0;
  z-index: 1;
}
.bg-group2 .box01 {
  width: 100%;
  margin-bottom: 30px;
}
.bg-group2 .box02 {
  width: 100%;
}

.bg-group3 {
  padding: 5%;
}
.bg-group3 ul li{
  width: 100%;
}


/* ----------------------------------------
 menu
------------------------------------------- */
.menu dl {
  font-size: 1.5rem;
}
.menu dl dt{
  width: 100%;
}
.menu dl dd{
  width: 100%;
}
/* ----------------------------------------
form
------------------------------------------- */
  .form {
    padding: 5%;
  }
  .form table {
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 30px;
  }
  .form table th {
    display: block;
    width: 100%;
    border-bottom: none;
    padding: 15px 10px 10px 10px;
  }
  .form table td {
    display: block;
    width: 100%;
    padding: 0 10px 15px 10px;
  }
  .input01 {
    width: 100%;
  }
  .input02 {
    width: 100%;
  }
  .input03 {
    width: 100%;
  }
  .select01 {
    width: 100%;
    box-sizing: border-box;
  }
  .need {
    font-size: 1.1rem;
    left: auto;
    margin-left: 10px;
  }
  
}