@charset "utf-8";
/* CSS Document */

/*リセットcss↓*/
html {
  overflow-y: scroll;
}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
  margin: 0;
  padding: 0;
}
address,caption,cite,code,dfn,em,strong,th,var {
  font-style: normal;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
caption,th {
  text-align: left;
}
q:before,q:after {
  content: '';
}
object,embed {
  vertical-align: top;
}
hr,legend {
  display: none;
}
h1,h2,h3,h4,h5,h6 {
  font-size: 100%;
}
img,abbr,acronym,fieldset {
  border: 0;
}
li {
  list-style-type: none;
}
sup {
  vertical-align: super;
  font-size: 0.5em;
}
img {
  vertical-align: top;
}
i {
  font-style: normal;
}
.msg{
	color:#E31E21;
}


table.formTable tr th{
	font-size: 15px;
  line-height: 1.8;
  color: #151515;
	font-family:  Meiryo, Osaka, "ＭＳ ゴシック", "MS Gothic", sans-serif;
  font-weight: normal;
}










/*----リセットcss*----/

/*デザインcss↓*/
.box_con {
  max-width: 900px;
  margin: 0  auto;
	padding-bottom:50px;
}
@media only screen and (max-width: 640px) {
  .box_con {
    width: 95%;
	padding-bottom:100px;
  }
}
.box_con form {
  width: 100%;
}
.box_con form table {
  width: 100%;
}
.box_con form table tr {
  position: relative;
}
.box_con form table tr:after {
  content: "";
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  height: 1px;
  border-bottom: dotted #cdcdcd 1px;
}
.box_con form table tr th {
  width: 30%;
  padding: 1em .5em;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 640px) {
  .box_con form table tr th {
    text-align: left;
    width: 100%;
    display: block;
    padding: 1em .2em 0 .2em;
  }
}
.box_con form table tr th span {
  background: #cd6f55;
  padding: .05em .4em;
  color: #fff;
  margin-left: .5em;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.box_con form table tr td {
  padding: .1em .5em 1em .5em;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
text-align: left;
}
@media only screen and (max-width: 640px) {
  .box_con form table tr td {
    padding: .1em .5em 1em .5em;
    display: block;
    width: 100%;
  }
}
.box_con form table tr .box_br {
  display: block;
}
.box_con form table tr select {
  border: 1px solid #97ae88;
}
.box_con form table tr label input {
  cursor: pointer;
  display: none;
  vertical-align: middle;
}
.box_con form table tr .radio02-input + label {
  padding-left: 23px;
  margin-right: 20px;
  position: relative;
}
.box_con form table tr .radio02-input + label:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 16px;
  height: 16px;
  border: 1px solid #999;
  border-radius: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.box_con form table tr .radio02-input:checked + label:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 3px;
  width: 12px;
  height: 12px;
  background: #97ae88;
  border-radius: 50%;
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.box_con form table tr select, .box_con form table tr input, .box_con form table tr textarea {
  width: 100%;
  height: 3em;
  padding: .5em;
  border-radius: 3px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; 
}
.box_con form table tr textarea {
  height: 10em;
}

/*プライバシーのデザインcss↓*/
.con_pri {
  max-width: 700px;
  margin: 0  auto;
}
@media only screen and (max-width: 640px) {
  .con_pri {
    width: 95%;
  }
}
.con_pri .box_pri {
  height: 300px;
  overflow-y: scroll;
  border: 1px solid #cdcdcd;
  background: #f7f7f7;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-top: 20px;
  padding: 20px 55px;
}
@media only screen and (max-width: 640px) {
  .con_pri .box_pri {
    margin-top: 4%;
    padding: 3%;
  }
}
@media only screen and (min-width: 640px) and (max-width: 1200px) {
  .con_pri .box_pri {
    padding: 4%;
  }
}
.con_pri .box_pri .box_tori {
  text-align: left;
  margin-top: 40px;
}
@media only screen and (max-width: 640px) {
  .con_pri .box_pri .box_tori {
    margin-top: 4%;
  }
}
.con_pri .box_pri .box_tori h4 {
  font-weight: normal;
  margin-bottom: 30px;
  font-size: 150%;
}
@media only screen and (max-width: 640px) {
  .con_pri .box_pri .box_tori h4 {
    margin-bottom: 4%;
  }
}
.con_pri .box_pri .box_tori .txt {
  padding: 0 20px;
}
@media only screen and (max-width: 640px) {
  .con_pri .box_pri .box_tori .txt {
    padding: 0;
  }
}
.con_pri .box_pri .box_num {
  margin-top: 30px;
}
@media only screen and (max-width: 640px) {
  .con_pri .box_pri .box_num {
    margin-top: 5%;
  }
}
.con_pri .box_pri .box_num h4 {
  font-weight: normal;
  font-size: 113%;
}
.con_pri .box_pri .box_num .txt {
  padding: 10px 0 0 20px;
}
@media only screen and (max-width: 640px) {
  .con_pri .box_pri .box_num .txt {
    padding: 3% 0 0 3%;
  }
	
}

.box_check {
  text-align: center;
  margin: 1em auto;
}
.box_check label {
  display: inline-block;
}
.box_check label span {
  margin-left: .3em;
}
.btn {
  text-align: center;
}
.btn input {
  display: inline-block;
  background: #eee;
  padding: .5em 4em;
  color: #000;
  text-decoration: none;
  cursor: pointer;
  border: none;
  -moz-transition: all 0.4s;
  -o-transition: all 0.4s;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.btn input:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}








button, input, optgroup, select, textarea {
  font-size: 15px;
  line-height: 1.15;
  margin: 0;
}
label {
  color: #151515;
  display: block;
  font-weight: 600;
  margin-bottom: 15px;
}
fieldset {
  margin-bottom: 1em;
}
input[type="text"], input[type="email"], input[type="phone"], input[type="furigana"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"] {
  color: #151515;
  background: transparent;
  border: 1px solid #e6e6e6;
  display: block;
  padding: 12px 15px;
  width: 100%;
}
textarea {
  color: #151515;
  background: transparent;
  border: 1px solid #e9e9e9;
  display: block;
  padding: 15px;
  width: 100%;
  resize: none;
  height: 200px;
}
select {
  color: #151515;
  border: 1px solid #e9e9e9;
  padding: 10px 5px;
  max-width: 100%;
}
input[type="radio"], input[type="checkbox"] {
  margin-right: 0.5em;
}
input[type="radio"] + label, input[type="checkbox"] + label {
  font-weight: 400;
}
button, input[type="button"], input[type="submit"] {
  background-color: #F74782;
  border: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
  padding: 14px 28px;
  text-shadow: none;
  text-transform: uppercase;
  letter-spacing: 1px;
  -webkit-transition: 80ms ease-in;
  transition: 80ms ease-in;
}
button:hover, input[type="button"]:hover, input[type="submit"]:hover {
  background-color: #f77da6;
  color: #fff;
}
#form-tbl {
  margin-left: 1.5em;
  text-align: center;
  display: block;
}
#form-tbl .conf {
  display: inline-block;
}
#form-tbl p {
  text-align: left;
}





.kraftcf-form{
	text-align: center;
}
div.kraftcf .ajax-loader.is-active {
  visibility: hidden;
}
.kraftcf-form div.kraftcf-mail-sent-ok, .kraftcf-form div.kraftcf-response-output {
  display: none;
  border: 0;
  text-align: center;
}
.kraftcf-form div.kraftcf-mail-sent-ok.validated, .kraftcf-form div.kraftcf-validation-errors.validation-error {
  display: block;
}
.kraftcf-form .contact-form-main .kraftcf-submit {
  display: inherit;
	margin:40px auto;
	text-align: center;
}
.kraftcf-form .contact-form-main + .kraftcf-validation-errors, .kraftcf-form .contact-form-main + .kraftcf-mail-sent-ok {
  text-align: center;
}
.kraftcf-form .contact-form-fields-wrap {
  margin-left: -15px;
  margin-right: -15px;
}
.kraftcf-form .contact-form-fields-wrap {
  margin-bottom: 30px;
}
.kraftcf-form .contact-form-fields-wrap:after, .kraftcf-form .contact-form-fields-wrap:before {
  content: "";
  display: table;
  table-layout: fixed;
}
.kraftcf-form input, .kraftcf-form textarea {
  background-color: #f4e3dc;
}



.kraftcf-form > p {
  clear: both;
}
.kraftcf-form .contact-form-fields {
  display: inline-block;
  width: 33.33333333333333%;
  float: left;
  padding: 0 15px;
}
.kraftcf-form .kraftcf-form-control-wrap {
  display: block;
  width: 100%;
}
.kraftcf-form input[type="submit"] {
  margin-top: 20px;
}
.kraftcf-form span.kraftcf-not-valid-tip {
  display: none;
  color: #e8252e;
  margin-top: 10px;
}
.kraftcf-form span.kraftcf-not-valid-tip.validation-error {
  display: block;
}
.kraftcf-form div.kraftcf-validation-errors, .kraftcf-form div.kraftcf-acceptance-missing {
  display: none;
  border: none;
  color: #e8252e;
  margin: 0;
  padding: 0;
  font-size: 16px;
  font-weight: 500;
}
.kraftcf-form textarea {
  height: 150px;
}
.kraftcf-form .kraftcf-submit {
  background-color: #F74782;
  color: #fff;
}
.kraftcf-form .kraftcf-submit-off {
  background-color: #CDB4BC;
  color: #fff;
}
.kraftcf-form .kraftcf-submit:hover {
  opacity: .9;
}
div.kraftcf .ajax-loader {
  position: absolute;
  bottom: -13px;
}
@media (max-width: 767px) {
  .left-block, .right-block {
    padding: 0 !important;
  }
}
@media (max-width: 767px) {
  .kraftcf-form .contact-form-fields {
    float: none;
    width: 100%;
    display: block;
    margin-top: 30px;
  }
  .kraftcf-form .contact-form-fields:first-of-type {
    margin-top: 0;
  }
}








