@charset "utf-8";

html {
  height: auto !important;
}

body {
	height: auto !important;
}

dl,dt,dd,ul,ol,li,form,fieldset,input,textarea,th,td{
	margin: 0;
	padding: 0;
}
fieldset,img{
	border: 0;
	vertical-align : middle;
}

/* --------------------------------------------- */

form#mail_form{
	width : auto;
	border-radius : 7px;
	margin-top: 10px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	padding-top: 20px;
	padding-right: 0;
	padding-bottom: 0px;
	padding-left: 0;
}
form#mail_form dl{
	width : 90%;
	max-width: 800px;
	overflow : hidden;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
}
form#mail_form dl dt{
	clear : both;
	width : 40%;
	float : left;
	border-top : 1px solid #cccccc;
	text-align : right;
	overflow : hidden;
	padding-top: 15px;
	padding-right: 2%;
	padding-bottom: 15px;
	padding-left: 8%;
}
form#mail_form dl dd{
	width : 60%;
	float : right;
	border-top : 1px solid #cccccc;
	padding-top: 20px;
	padding-right: 5%;
	padding-bottom: 15px;
	padding-left: 5%;
}
form#mail_form dl dt:first-child,
form#mail_form dl dt:first-child+dd{
	border : none;
}
form#mail_form dl dt span{
	display : block;
	font-size : 80%;
	color : #648EB0;
	line-height: 120%;
}

/* -- for JavaScript ここから -------------------------------------------------------------------------------- */

form#mail_form dl dt span.required,
form#mail_form dl dt span.optional{
	display : inline-block;
	float : left;
	font-weight : bold;
	color : #ffffff;
	padding : 3px 5px;
	border-radius : 3px;
}
form#mail_form dl dt span.required{
	background-color: #DD3C3C;
}
form#mail_form dl dt span.optional{
	background-color: #527EA3;
}
form#mail_form dl dd span{
	display : block;
	color : #EE3939;
	-webkit-animation: blink 0.5s ease-in-out infinite alternate;
	-moz-animation: blink 0.5s ease-in-out infinite alternate;
	animation: blink 0.5s ease-in-out infinite alternate;
	font-size: 14px;
	line-height: 22px;
	padding: 5px;
	font-weight: bold;
	margin: 5px;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}

/* -- for JavaScript ここまで -------------------------------------------------------------------------------- */



form#mail_form input,
form#mail_form select {
	height : 1.8em;
	border : 1px solid #cccccc;
	border-radius : 3px;
	background : #fafafa;
	font-size: 16px;
	color: #505050;
	padding-left: 5px;
	padding-right: 5px;
}

form#mail_form textarea{
	width : 300px;
	height : 180px;
	resize : vertical;
	border : 1px solid #cccccc;
	border-radius : 3px;
	background : #fafafa;
	padding: 5px;
	color: #505050;
}
form#mail_form input:focus,
form#mail_form textarea:focus{
	box-shadow : 0px 0px 5px #55ccff;
	border : 1px solid #55ccff;
	background : #ffffff;
}
form#mail_form input#name_1,
form#mail_form input#name_2{
	width : 160px;
}
form#mail_form input#read_1,
form#mail_form input#read_2{
	width : 90px;
}
form#mail_form input#mail_address,
form#mail_form input#mail_address_confirm{
	width : 250px;
}
form#mail_form ul li{
	list-style-type : none;
	margin-bottom : 5px;
}
form#mail_form ul li label:hover{
	cursor : pointer;
}
form#mail_form ul li input{
	height : auto;
	margin-right : 0.5em;
}
form#mail_form input#postal{
	width : 100px;
}
form#mail_form input#address_1,
form#mail_form input#address_2{
	display : block;
	width : 300px;
	margin-bottom : 7px;
}
form#mail_form input#phone{
	width : 100px;
}
form#mail_form input#day{
	width : 160px;
}
form#mail_form input#form_submit_button {
	width : auto;
	height : auto;
	vertical-align : middle;
	border-radius : 3px;
	font-family : inherit;
	padding-top: 10px;
	padding-right: 35px;
	padding-bottom: 10px;
	padding-left: 35px;
	font-size: 17px;
	line-height: 26px;
	letter-spacing: 2px;
	color: #FFF;
	background-color: #2FC686;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
	border: 3px solid #FFF;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
	margin: auto;
	display: block;
}
form#mail_form input#form_submit_button:hover{
	cursor : pointer;
	background-color: #FFF;
	border: 3px solid #2FC686;
	color: #2FC686;
}

#mail_form dl dd input#address {
	width: 300px;
}


/* --responsive------------------------------------------- */

/* 640pixel start */
@media screen and (max-width : 640px){

form#mail_form{
	width : 95%;
}
form#mail_form dl{
	width : 90%;
}
form#mail_form dl dt{
	width : auto;
	float : none;
	text-align : left;
	padding : 10px 0 5px;
	font-weight : bold;
}
form#mail_form dl dd{
	width : auto;
	float : none;
	border-top : none;
	padding : 0px 0 13px 0px;
}
form#mail_form dl dt span{
	font-weight : normal;
}

/* -- for JavaScript ここから -------------------------------------------------------------------------------- */

form#mail_form dl dt span.required,
form#mail_form dl dt span.optional{
	margin-right : 1em;
}

/* -- for JavaScript ここまで -------------------------------------------------------------------------------- */


form#mail_form input{
	height : 25px;
}
form#mail_form input#name_1,
form#mail_form input#name_2,
form#mail_form input#read_1,
form#mail_form input#read_2,
form#mail_form input#mail_address,
form#mail_form input#mail_address_confirm,
form#mail_form input#postal,
form#mail_form input#address_1,
form#mail_form input#address_2,
form#mail_form input#phone,
form#mail_form input#day,
form#mail_form textarea{
	max-width : 98%;
	-webkit-appearance : none;
}


}
/* 640pixel end */

input.sample_input {
text-align: right;
margin-right: 5px;
font-size: 24px !important;
}

input.sample_input[readonly] {
cursor: default;
background-color: #EEE!important;
font-weight: bold;
font-size: larger;
border: none;
color: #E20 !important;
}

.form_title {
	font-size: 22px;
	text-align: center;
	padding: 20px;
	font-weight: bold;
	letter-spacing: 0.1em;
	margin-top: 30px;
	border-top-width: 3px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-bottom-style: dotted;
	border-top-color: #67B5D6;
	border-bottom-color: #CEC9C1;
	background-color: #F8F7F5;
}

p.form_price {
	text-align: center;
}
p.form_price span {
	font-size: 20px;
}
p.form_price span strong {
	font-size: 24px;
}


form#mail_form dl.dl_pr dt {
	width : 23%;
	padding-right: 3%;
	padding-left: 3%;
}
form#mail_form dl.dl_pr dd {
	width : 65%;
	padding-right: 3%;
	padding-left: 3%;
}












#formWrap {
	width:80%;
	margin:0 10%;
	color:#555;
	line-height:120%;
}
table.formTable{
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}
table.formTable td,table.formTable th{
	border:1px solid #ccc;
	padding:10px;
}
table.formTable th{
	width:30%;
	font-weight:normal;
	background:#efefef;
	text-align:left;
	text-align: center;
}
/*　簡易版レスポンシブ用CSS（必要最低限のみとしています。ブレークポイントも含め自由に設定下さい）　*/
@media screen and (max-width:572px) {
#formWrap {
	width:95%;
	margin:0 auto;
}
table.formTable th, table.formTable td {
	width:auto;
	display:block;
}
table.formTable th {
	margin-top:5px;
	border-bottom:0;
}
form input[type="text"], form textarea {
	width:80%;
	padding:5px;
	font-size:110%;
	display:block;
}
form input[type="submit"], form input[type="reset"], form input[type="button"] {
	display:block;
	width:100%;
	height:40px;
}
}


table.formTable th span{
	display : block;
	font-size : 80%;
	color : #648EB0;
	line-height: 120%;
}


form#formWrap input#form_submit_button:hover {
    cursor: pointer;
    background-color: #FFF;
    border: 3px solid #2FC686;
    color: #2FC686;
}

form#formWrap input#form_submit_button {
    width: auto;
    height: auto;
    vertical-align: middle;
    border-radius: 3px;
    font-family: inherit;
    padding-top: 10px;
    padding-right: 35px;
    padding-bottom: 10px;
    padding-left: 35px;
    font-size: 17px;
    line-height: 26px;
    letter-spacing: 2px;
    color: #FFF;
    background-color: #2FC686;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
    -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
    -moz-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
    border: 3px solid #FFF;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -webkit-transition: 0.2s linear;
    -moz-transition: 0.2s linear;
    transition: 0.2s linear;
    margin: auto;
    display: block;
}

.button {
  display       : inline-block;
  border-radius : 5%;          /* 角丸       */
  font-size     : 100%;        /* 文字サイズ */
  text-align    : center;      /* 文字位置   */
  cursor        : pointer;     /* カーソル   */
  padding       : 12px 12px;   /* 余白       */
  color         : #ffffff;     /* 文字色     */
  line-height   : 1em;         /* 1行の高さ  */
  transition    : .3s;         /* なめらか変化 */
	background-color: #2FC686;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
	border: 3px solid #FFF;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}



.button:hover {
  box-shadow    : none;        /* カーソル時の影消去 */
  color         : #2FC686;    /* 背景色     */
  background    : #ffffff;  
 border: 3px solid #2FC686;
}







.font {
    margin-right: 15px;
    padding:0.5%;
/*    background: rgba(128,32,34,1.00);
*//*    border-radius: 8px;
*/    font-size: 80%;
letter-spacing: 0.2rem;	color:rgba(128,32,34,1.00);
	border-radius: 10%;
	font-weight: bold;
}
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	