@charset "utf-8";
/*========= レイアウトのためのCSS ===============*/
#container {
  width: 100%;
  margin: 0 auto;
  padding: 70px 0;
  background-color: #fff;
  border-radius: 10px;
  overflow: hidden;
}
#container_second {
  margin: 0 auto;
}
h1 {
background-image: url("../images/h1_bg.jpg");
background-size: cover;
text-align: center;
padding: 50px 0;
letter-spacing: 0.3em;
font-size: 1.8em;
}

/* .area_right {
  min-height: 600px;
} */
#container_A {
  width: 100%;
  float: left;
  padding: 50px 0 0;
}
#container_A .area_left {
  text-align: justify;
  width: 10%;
  margin: 0;
  float: left;
}
#container_A .area_left h2 {
  width: 10%;
  height: 200px;
  padding: 0% 20% 0 100%;
  float: left;
  writing-mode: vertical-rl;
  border-right: 1px solid #000;
  font-size: 120%;
  font-weight: normal;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;　
}
#container_A .area_right {
  text-align: justify;
  width: 80%;
  margin: 0 5% 5em;
  float: left;
}
#container_A .area_right h3 {
  font-size: 100%;
  font-weight: normal;
  padding: 0 0 0.2em 0;
  font-weight: bold;
}
#container_A .area_right h3 span {
  color: #a01b35;
}

#container_A .area_right p, #container_A .area_right ul {
  padding: 0 1em 1em 1em;
  margin-bottom: 0.5em;
  /* border-bottom: 1px solid #ddd; */
}

#container_A .area_right dl {
  width: 100%;
  margin: 0 0 0.5em;
  float: left;
  padding-bottom: 0.5em;
  border-bottom: 1px solid #ddd;
}
#container_A .area_right dt {
  width: 15%;
  float: left;
  padding: 0;
  font-weight: bold;
  color: #a01b35;
}
#container_A .area_right dd {
  width: 85%;
  float: left;
  padding: 0;
}
#container_A .area_right dd ul {
  padding: 0 0 0.5em 0;
}
#container_A .area_right dd ul li {
  display: inline-block;
}

#container_B .area_right {
  text-align: justify;
  width: 90%;
  margin: 3em auto 5em;
}
#container_B .area_right h2 {
  color: #fff;
  text-align: left;
  padding: 5px;
  margin: 2em 0 0 0;
  background-color: #b34368;
  font-size: 1.2em;
  font-weight: normal;
  letter-spacing: 0em;
  width: 100%;
  float: left;
  clear: left;
}
.catch {
  color: #b34368;
  font-size: 1.4em;
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;　
}
.contact_area {
  width: 100%;
  margin: 4em auto 0 !important;
  padding-top: 1em;
  float: left;
  border-top: 1px solid #666;
}
.honmon {
  margin: 1em auto 0;
  float: left;
  clear: left;
}
.address {
  margin: 0.5em auto;
  float: left;
  clear: left;
}
.btn_contact {
  margin: 0.5em auto 0 0;
  float: left;
  clear: left;
  width: 250px;
}
dl.privacy_list dt {
  font-weight: bold;
  margin: 1em auto 0;
}
dl.privacy_list dt dd {
  margin: 0 auto 0.5em;
  float: left;
  clear: left;
}
dl.privacy_list dt dd ul.ul_list {
  margin: 1em auto 0;
}
ul.ul_list li {
  margin: 0 auto 0.5em;
  line-height: 1.2em;
}
ul#sitemap li {
  /* margin: 1em auto; */
  padding: 1em 0;
  border-bottom: 1px solid #666;
}
ul#sitemap li::before {
  content: '▶︎　';
  font-size: 0.9em;
  color: pink;
}
ul#sitemap li.ireko::before {
  content: none;
}
ul#sitemap li.ireko {
  border-bottom: none;
  padding: 1em 0 0;
}
ul#sitemap li.ireko ul li {
  border-bottom: 1px solid #dcdcdc;
  text-indent: 1em;
}
/* ####################### */
@media screen and (max-width:960px){
#container {
    padding: 50px 0;
  }
h1 {
  padding: 40px 0;
  }
#container_A .area_right dt {
  width: 100%;

}
#container_A .area_right dd {
  width: 100%;
  margin-bottom: 0.4em;
  line-height: 1.2em;
  clear: left;
}
}

/* ＃＃＃＃お問い合わせ */
.contact .read p {
  margin: 0 auto 1em;
}
.contact .notes {
  text-align: right;
}
.caution {
  margin: 1em auto;
  color: gray;
}
.hissu {
  color: #fff;
  padding: 1px 2px;
  margin: 0 0 0 10px;
  background-color: #ff0000;
  border-radius: 5px;
  font-size: 0.8em;
}
#selform table {
width: 100%;
line-height: 1.5;
/* border-collapse: collapse; */
}
#selform table tr th {
width: 30%;
padding: 0.5em;
vertical-align: middle;
text-align: left;
background-color: #efefef;
}
#selform table tr td {
padding: 1em;
border: 1px solid #efefef;
}
#selform table tr td dl dd {
margin-bottom: 1em;
}
input {
border: solid #ccc 1px;
padding: 1em;
background-color: #ffffef;
cursor: auto;
border-radius: 5px;
}
.input_length input {
  width: 100% !important;
}
select {
    min-width: 230px;
    padding: 1em;
    border: 1px solid #d0d0d0;
    border-radius: 3px;
    background-color: #fff;
    color: #333333;
    font-size: 1em;
    cursor: pointer;
    padding-right: 3em;
}
.select_ {
  position: relative;
}
.select_::after {
    position: absolute;
    right: 20px;
    top: 5px;
    width: 15px;
    height: 10px;
    background-color: #535353;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '▼';
    pointer-events: none;
}
textarea {
  border: solid #ccc 1px;
  padding: 1em;
  background-color: #ffffef;
  cursor: auto;
  border-radius: 5px;
}
.errors {
  color: #ff0000;
}
.formbtn {margin: auto;
text-align: center;
}
input.send {
margin: 1em auto;
border: solid #ccc 1px;
padding: 1em;
background-color: #FF0000;
color: #fff;
cursor: pointer;
border-radius: 5px;
}
input.back {
margin: 1em auto;
border: solid #ccc 1px;
padding: 1em;
background-color: #aaa;
color: #fff;
cursor: pointer;
border-radius: 5px;
}
label {
  display: block;
  vertical-align: middle;
}
.rei {
  color: #aaa;
}
.kakunin {
  width: 100%;
}
.kakunin th {
  width: 40%;
  background-color: #efefef;
}
.kakunin td {
  border-bottom: 1px solid #ccc;
}
.kakunin th,
.kakunin td {
  padding: 1em;
  /* border-bottom: 1px solid #ccc; */
}
.thanks_text {
  float: left;
  width: 100%;
  margin: 1.0em auto 0.5em;
}
.top_link a {
  display: block;
  margin: auto;
  text-align: center;
  color: #ff0000;
}
/*---------------
  radio
-----------------*/
input[type="radio"] {
    position: relative;
    -webkit-appearance: button;
    appearance: button;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 1em;
    height: 1em;
    content: "";
    margin-top: -4px;
    margin-right: 0.5em;
    /* background-color: #FFFFFF;
    border: 1px solid #999999;
    -webkit-border-radius: 24px; */
    /* border-radius: 24px; */
    vertical-align: middle;
    cursor: pointer;
}

/* input[type="radio"]:checked:after {
    display: block;
    position: absolute;
    top: 5px;
    left: 5px;
    content: "";
    width: 12px;
    height: 12px; */
    /* background: #CC0000; */
    /* -webkit-border-radius: 12px;
    border-radius: 12px;
} */

@media screen and (max-width:1240px){
  #selform table tr th {
    display: block;
    width: 100%;
  }
  #selform table tr td {
    display: block;
    width: 100%;
  }
  .input_length input {
    width: 290px !important;
  }
  .input_length textarea {
    width: 290px !important;
  }
  .kakunin th,
  .kakunin td {
    display: block;
    width: 100%;
  }
  input[type="radio"] {
    -webkit-transform: scale(0.5);
 transform: scale(0.5);
 margin-top: -2px;
 margin-right: 0.1em;
  }
}
