@charset "utf-8";
i {font-style: normal;}
input, select, textarea {font-family: 'Noto Sans JP','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',sans-serif; color: #333;}
input[type="submit"],
input[type="button"] {
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}

input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

input[type="button"],
input[type="text"],
input[type="submit"],
input[type="image"],textarea{
   -webkit-appearance: none;
}

:focus {
    outline: none;
}

form#mail_form{
    width : 100%;
    max-width: 660px;
    margin : 20px auto 0;
    padding : 0;
}
form#mail_form dl{
	width : 100%;
	margin : 0 auto;
	overflow : hidden;
}
form#mail_form dl dt{
	clear : both;
	height: 72px;
	width : 40%;
	float : left;
	border-top : 1px solid #eee;
	padding-top: 32px;
	overflow : hidden;
}
form#mail_form dl dd{
	width : 60%;
	float : right;
	border-top : 1px solid #eee;
	padding : 24px 0;
}

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

form#mail_form dl dt span.required,
form#mail_form dl dt span.optional{
    display : inline-block;
    float : right;
    padding: 1px 5px 2px;
    margin: 1px 15px;
    border-radius: 2px;
    color: #fff;
    font-size: 11px;
    font-weight: bold;
}
form#mail_form dl dt span.required{
    background-color: #d72424;
}
form#mail_form dl dt span.optional{
    background-color: #a2b9d8;
}

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

form#mail_form input#name_1,
form#mail_form input#name_2,
form#mail_form input#read_1,
form#mail_form input#read_2{
    width: calc(50% - 5px);
    height: 40px;
    padding: 0 10px;
}
form#mail_form input#mail_address,
form#mail_form input#mail_address_confirm{
    width: 100%;
    height: 40px;
	padding: 0 10px;
}
form#mail_form dl dd span {
    color: #c72e2e;
    display: block;
}
form#mail_form ul li{
    list-style-type : none;
    width: calc(33.33% - 6px);
}
form#mail_form ul li label:hover{
	cursor : pointer;
}
form#mail_form ul li input{
	height : auto;
	margin-right : 0.5em;
}
form#mail_form ul {list-style-type: none;}
label {
    display: block;
    height: 40px;
    padding-left: 35px;
    border-radius: 4px;
    line-height: 39px;
}
input[type=radio] {display: none;}
label {position: relative;padding: 0 0 0 37px;}
label:after, label:before {
    position: absolute;
    content: "";
    display: block;
    top: 50%;
}
label:after {
    left: 14px;
    margin-top: -7px;
    width: 12px;
    height: 12px;
    border: 1px solid #ddd;
    border-radius: 50%;
}
label:before {
    left: 17px;
    margin-top: -4px;
    width: 8px;
    height: 8px;
    background: #27489c;
    border-radius: 50%;
    opacity: 0;
}
label:hover,form#mail_form dd select:hover {cursor: pointer;background: #e7f0fe;}
label:hover:after {border-color: #889cd0;}
label,label:after,label:before,form#mail_form dd select{transition: 0.2s;}
input[type=radio]:checked + label:before {opacity: 1;}
form#mail_form input#address_1,
form#mail_form input#address_2{
	display : block;
	width : 100%;
	padding: 0 10px;
}
#shop, #item, #phone, #age {
    width: 250px;
    padding: 0 10px;
}

#postal {
    width: 200px;
    padding: 0 10px;
    border: 1px solid #cccccc;
}

.send {
	width: 100%;
	padding: 50px 0;
	border-top: 1px solid #eee;
	text-align: center;
}

.note {
	font-size: 13px;
}

.row_small {
	text-align: center;
    line-height: 1.4;
    margin-bottom: 3em;
}

.anonymity {
	margin-bottom: 40px;
}

.kind {
	margin-right: 10px;
	vertical-align: -1px;
}

#name_1, #read_1{margin-right: 10px;}

#zip-btn{
    color: #0a1e52;
    background: #fff;
    padding: 3px 8px 3px;
    margin-left: 17px;
    border: 2px #0a1e52 solid;
    border-radius: 21px;
    font-size: 12px;
    font-weight: bold;
    vertical-align: 1px;
    transition: 0.2s;
}
form#mail_form dd textarea,
form#mail_form dd input,
form#mail_form dd select,
form#mail_form dd label{
    height: 40px;
    border : 1px solid #ddd;
    border-radius: 4px;
    appearance: none;
    -webkit-appearance : none;
}
form#mail_form dd textarea{height: auto;width: 100%; padding: 9px;}
#zip-btn:hover{background-color: #a5b0cc;}
select:after{
    left: 14px;
    margin-top: -7px;
    width: 12px;
    height: 12px;
    border: 1px solid #ddd;
    border-radius: 50%;
    background: url("../images/downarrow.svg") no-repeat calc(100% - 5px) 50%;
}
a.note.position_absolute{top: 48px;left: 0;}
::placeholder{color: #aaa;}
form#mail_form dl dt.two_rows {padding-top: 19px;}
form#mail_form dl dt.two_rows span{margin-top: 14px;}
.max660{max-width: 660px;}

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

form#mail_form dl{
	width : 100%;
}
form#mail_form dl dt{
    height: auto;
    width : auto;
    float : none;
    text-align : left;
    padding : 10px 0 5px;
    border-top : 0;
}
form#mail_form dl dd{
	width : auto;
	float : none;
	border-top : none;
	padding : 0px 0 20px 0px;
}

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

form#mail_form dl dt span.required,form#mail_form dl dt span.optional{margin: 1px 10px 0px 1px;float: left;}

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

.send {
	border: 0;
	padding-top: 40px;
}

.note {
	margin: 0;
}

a.note.position_absolute {top: 11px;left: 181px;}
form#mail_form dl dt.two_rows {padding-top: 10px;}

}

@media screen and (max-width : 400px){
#shop, #item, #phone, #age{width:100%;}
#postal{width:calc(100% - 85px);}
#name_1, #read_1{margin-right: 8px;}
form#mail_form input#name_1,
form#mail_form input#name_2,
form#mail_form input#read_1,
form#mail_form input#read_2{
    width: calc(50% - 4px);
}
.flex{flex-direction: column;}
form#mail_form ul li {width: 100%;}
form#mail_form ul li:not(:last-child) {margin-bottom: 10px;}

}