@charset "utf-8";

/* ========================================
* File Name: style.css
* Created Date: 2015.04.01
* Author: TAM
======================================== */

/* ========================================
	gHeader
======================================== */
/* pc */
@media screen and (min-width:641px) {
#gHeader .chara {
	position: absolute;
	top: 84px;
	left: 575px;
}

#gHeader .chara img {
	width: 146px;
	height: 179px;
}
}

/* sp */
@media screen and (max-width:640px) {
#gHeader .chara {
  position: absolute;
  top: 60px;
  right: 0;
}
#gHeader .chara img {
	width: 69px;
	height: 84px;
}
}

/* ========================================
	main-contents
======================================== */

#main-contents .main-cont {
  float: none;
  width: auto;
  margin: 0 35px;
}
#main-contents .main-cont h2 {
	font-size:24px;
	font-weight:bold;
	background:url("/mailform/images/ttl_icon.png") left top no-repeat;
	padding:0 0 0 40px;
	color: #7E461E;
  margin-bottom: 20px;
}





/* sp */
@media screen and (max-width:640px) {
#main-contents h1 {
	width:100px;
}
#main-contents .main-cont {
	float: none;
	width: auto;
	margin: 0;
}
#main-contents .main-cont h2 {
	font-size:18px;
	background:url("/mailform/images/ttl_icon.png") no-repeat 16px 4px;
	padding:10px 0 0 50px;
}

}


/* ========================================
	form
======================================== */
@charset "UTF-8";
#form {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
  color: #522000;
}

#form .inputArea {
  margin-bottom: 30px;
}

@media only screen and (max-width: 640px) {
#form .inputArea {
  margin-bottom: 0;
}
}

#form .cf:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
#form .cf {
  min-height: 1px;
}
#form * html .cf {
  height: 1px;
  /*ﾂ･*/
  /*/
  height: auto;
  overflow: hidden;
  /**/
}

#form img {
  width: auto;
  max-width: 100%;
  height: auto;
}



#form input[type="text"],
#form input[type="tel"],
#form input[type="email"] {
  box-sizing: border-box;
  background: #F9F7F6;
  border: 1px solid #BCA08B;
  -webkit-border-radius: 5px;
          border-radius: 5px;
  width: 100%;
  padding: 10px;
}

@media only screen and (max-width: 640px) {
  #form input[type="text"],
  #form input[type="tel"],
  #form input[type="email"] {
    width: 100%;
  }
}
#form select {
  box-sizing: border-box;
  border: 1px solid #CCCCCC;
  width: 100%;
  padding: 10px;
}

@media only screen and (max-width: 640px) {
  #form select {
    width: 100%;
  }
}
#form textarea {
  box-sizing: border-box;
  background: #F9F7F6;
  border: 1px solid #BCA08B;
  -webkit-border-radius: 5px;
          border-radius: 5px;
  width: 100%;
  max-width: 100%;
  min-height: 120px;
  padding: 10px;
}
@media only screen and (max-width: 640px) {
  #form textarea {
    width: 100%;
    max-width: 100%;
  }
}
#form input[type="text"]:focus,
#form input[type="tel"]:focus,
#form input[type="email"]:focus,
#form select:focus,
#form textarea:focus {
  box-sizing: border-box;
  border: 1px solid #8aba7c !important;
  outline: none;
  background: #fbfef8 !important;
}
#form select {
  display: block;
}
#form .show-sp {
  display: none !important;
}
@media only screen and (max-width: 640px) {
  #form .show-sp {
    display: block !important;
  }
}

#form .last {
  margin-bottom: 30px;
}
@media only screen and (max-width: 640px) {
  #form .last {
    margin-bottom: 0;
  }
}
#form .inputBlock {
  display: table;
}
@media only screen and (max-width: 640px) {
  #form .inputBlock {
    display: block;
    padding: 10px;
  }
}
#form .inputBlock.ptA {
  border-bottom: 1px dotted #ccc;
}
@media only screen and (max-width: 640px) {
  #form .inputBlock.ptA {
    border: none;
  }
}
#form .headText {
  display: table-cell;
  vertical-align: top;
  width: 25%;
  text-align: right;
}
@media only screen and (max-width: 640px) {
  #form .headText {
    display: block;
    text-align: left;
    height: auto !important;
    float: none;
    width: 100%;
  }
}
#form .headText .headTextInner {
  padding: 10px 10px 10px 0;
  position: relative;
}
@media only screen and (max-width: 640px) {
  #form .headText .headTextInner {
    padding: 0 0 10px 0;
  }
}
#form .headText .headTextInner .legend {
  display: inline-block;
  margin-bottom: 5px;
}
@media only screen and (max-width: 640px) {
  #form .headText .headTextInner .legend {
    margin-bottom: 2px;
  }
}
#form .headText .headTextInner p span {
  color: #E51F46;
}
#form .headText .headTextInner .fs11 {
  font-size: 11px;
  font-size: 1.1rem;
  font-weight: 400;
  padding-top: 5px;
  line-height: 1.7;
}
#form .headText .headTextInner .unchecked {
  position: absolute;
  top: 10px;
  right: 10px;
}
#form .inputBox {
  display: table-cell;
  vertical-align: middle;
  width: 75%;
}
@media only screen and (max-width: 640px) {
  #form .inputBox {
    display: block;
    width: 100%;
  }
}
#form .inputBox .inputBoxInner {
  padding: 0;
  /*
        .customSelect.require{
          background: #FFF8EA;
          border: 1px solid #E99D00;
        }
  */
}
@media only screen and (max-width: 640px) {
  #form .inputBox .inputBoxInner {
    padding: 0;
  }
}
#form .inputBox .inputBoxInner .example {
  display: inline-block;
  margin-bottom: 10px;
}
@media only screen and (max-width: 640px) {
  #form .inputBox .inputBoxInner .example {
    margin-bottom: 7px;
  }
}
#form .inputBox .inputBoxInner label {
  display: inline-block;
  padding-right: 5px;
}
#form .inputBox .inputBoxInner .pb3 {
  padding-bottom: 3px;
}
@media only screen and (max-width: 640px) {
  #form .inputBox .inputBoxInner .pb3 {
    padding-bottom: 0;
  }
}
#form .inputBox .inputBoxInner .input {
  position: relative;
}
#form .inputBox .inputBoxInner .input img {
  position: absolute;
  top: 7px;
  right: 0;
}
@media only screen and (max-width: 640px) {
  #form .inputBox .inputBoxInner .input img {
    top: -94px;
    right: 10px;
  }
}
#form .inputBox .inputBoxInner .customSelect {
  border: 1px solid #ccc;
  border: 1px solid #aaa;
  height: 17px;
  width: 90%;
  padding: 5px 10px 5px 5px;
  font-size: 14px;
  font-size: 1.4rem;
}
#form .inputBox .inputBoxInner .customSelect.checked {
  background: #fff;
  border: 1px solid #ccc;
}
#form .inputBox .inputBoxInner .customSelect.errer {
  border: 1px solid #FC7097;
  background: #FFECEF;
}
#form .inputBox .inputBoxInner .customSelect.customSelectFocus {
  border: 1px solid #8aba7c !important;
  outline: none;
  background: #fbfef8 !important;
}
#form .inputBox .inputBoxInner .customSelectInner {
  display: inline-block;
  background: url(../img/img_arw_bottom.png) no-repeat right center;
  width: 100% !important;
}
#form .inputBox .inputBoxInner .left,
#form .inputBox .inputBoxInner .right {
  width: 40%;
  float: left;
}
@media only screen and (max-width: 640px) {
  #form .inputBox .inputBoxInner .left,
  #form .inputBox .inputBoxInner .right {
    width: 100%;
    float: none;
  }
}
@media only screen and (max-width: 640px) {
  #form .inputBox .inputBoxInner .left label,
  #form .inputBox .inputBoxInner .right label {
    float: left;
    padding: 4px 0 0 0;
    width: 30px;
    text-align: center;
  }
}
#form .inputBox .inputBoxInner .left input,
#form .inputBox .inputBoxInner .right input {
  display: inline-block;
}
#form .inputBox .inputBoxInner .left .errerText,
#form .inputBox .inputBoxInner .right .errerText {
  float: left;
}
@media only screen and (max-width: 640px) {
  #form .inputBox .inputBoxInner .ptB .left input,
  #form .inputBox .inputBoxInner .ptB .right input {
    width: 82.2%;
    float: right;
  }
}
#form .inputBox .inputBoxInner .ptB img {
  top: inherit;
  right: 9.1%;
  top: 28px;
}
@media screen and (max-width: 767px) {
  #form .inputBox .inputBoxInner .ptB img {
    right: 6.1%;
  }
}
#form .inputBox .inputBoxInner .ptC img {
  top: inherit;
  right: 9.1%;
  top: 37px;
}
@media screen and (max-width: 767px) {
  #form .inputBox .inputBoxInner .ptC img {
    right: 6.1%;
  }
}
#form .inputBox .inputBoxInner .ptF {
  width: 40%;
}
@media only screen and (max-width: 640px) {
  #form .inputBox .inputBoxInner .ptF {
    width: 100%;
  }
}
#form .inputBox .inputBoxInner .ptF img {
  right: -12.9%;
}
@media screen and (max-width: 767px) {
  #form .inputBox .inputBoxInner .ptF img {
    right: -18.9%;
  }
}
#form .inputBox .inputBoxInner .left {
  padding-right: 25px;
}
@media only screen and (max-width: 640px) {
  #form .inputBox .inputBoxInner .left {
    padding: 0;
    margin-bottom: 20px;
  }
}
#form .db input {
  display: block;
}



#form #submitArea {
  display: table;
  width: 435px;
  text-align: center;
  margin: 0 auto;
}

#form #submitArea li {
  display: table-cell;
  margin-right: 25px;
}
#form #submitArea li:last-child {
  margin-right: 0;
}
@media only screen and (max-width: 640px) {
  #form #submitArea {
    display: block;
    width: 224px;
  }
  #form #submitArea li {
    display: block;
    margin-right: 0;
  }
}


@media only screen and (min-width: 641px) {
#form input[type="text"].p_w310 {
	width: 310px;
}
#form input[type="email"].p_w460 {
	width: 460px;
}
}


#form .radio-list li {
  margin-top: 10px;
}
#form .radio-list li:last-child {
  margin-bottom: 10px;
}
@media only screen and (max-width: 640px) {
#form .radio-list li {
  margin-top: 0;
}
}

#form .block {
  display: block;
}
@media only screen and (max-width: 640px) {
#form .block {
  display: inline-block;
}
}
#form input[type="text"].error,
#form input[type="tel"].error,
#form input[type="email"].error,
#form select.errer,
#form textarea.error {
  background-color: #FCE8EC;
}
#form .message {
  color: #E51F46;
}


#thanks h3 {
  font-size: 20px;
  color: #e52046;
  font-weight: bold;
  background-color: #fff3d7;
  margin-bottom: 15px;
  padding: 5px 10px;
  -webkit-border-radius: 5px;
          border-radius: 5px;
}
#thanks p {
  margin-bottom: 30px;
  font-size: 14px;
  color: #521F00;
}

#thanks p span {
  color: #FF9000;
  font-weight: bold;
}

#thanks .btn {
  text-align: center;
}

@media only screen and (max-width: 640px) {

#thanks {
  margin: 0 10px;
}
#thanks h3 {
  font-size: 16px;
}

}
