@charset "utf-8";


/*------------------------------------------------------------------------------------------------------------------
　contact
-------------------------------------------------------------------------------------------------------------------*/

.subvisual {
	position: relative;
	width: 100%;
	height: 260px;
	background: url("../image/contact/subvisual.jpg") no-repeat top center;
	text-align: center;
	top: -50px;
}

.subvisual h1 {
	float: none;
	text-align: left;
	display: inline-block;
	margin: 80px auto 0;
}

#nav {
	margin-top: -50px;
}



/* -----------------------------------------------------------------------------
	link button
 -------------------------------------------------------------------------------*/

.link-button.mono a {
	border:2px solid #8d8d8d;
	color:#333333 !important;
	font-weight:normal;
}

.link-button.harf a {
	padding-top:10px;
	padding-bottom:10px;
	padding-left:55px;
	border:1px solid #cccccc;
}

.link-button a.pdf { background-image:url(../image/layout/pdf.png); text-align:left; }
.link-button a.doc { background-image:url(../image/layout/doc.png); text-align:left; }
.link-button.mono a.pdf { background-image:url(../image/layout/pdf-mono.png); text-align:left; }
.link-button.mono a.doc { background-image:url(../image/layout/doc-mono.png); text-align:left; }
.link-button.harf a.pdf { background-image:url(../image/layout/pdf.png); text-align:left; background-size:40px 59px; }
.link-button.harf a.doc { background-image:url(../image/layout/doc.png); text-align:left; background-size:40px 59px; }
.link-button.mono.harf a.pdf { background-image:url(../image/layout/pdf-mono.png); text-align:left; background-size:40px 59px; }
.link-button.mono.harf a.doc { background-image:url(../image/layout/doc-mono.png); text-align:left; background-size:40px 59px; }


/* -----------------------------------------------------------------------------
	form
 -------------------------------------------------------------------------------*/
 
.confmes {
    margin-bottom: 1em;
    text-align: center;
}

 .entry-mail_form {
    margin-top:0px;
}

.entry-mail_form table {
    width:100%;
    border-collapse:collapse;
    text-align:left;
    border:1px solid #1F492A;
}

.entry-mail_form tr:last-child th,
.entry-mail_form tr:last-child td {
    border-bottom:0;
}

.entry-mail_form th {
    text-align:left;
    background-color:#D1E0D5;
    width:28%;
    padding:20px;
    border-bottom:1px solid #1F492A;
    vertical-align:top;
    white-space:nowrap;
}

@media screen and (max-width: 640px) {
	#contact-table th, #contact-table td {
		display:block;
		width:100%;
		padding-left:20px;
		padding-right:20px;
		box-sizing:border-box;
	}
}


.entry-mail_form th .ic-required {
    float:right;
    margin-left:150px;
}

.entry-mail_form td {
    padding:15px;
    border-bottom:1px solid #1F492A;
}

/* send ok */

.sendok {
	font-size:26px !important;
	color:#ff2284;
	text-align:center;
	margin-bottom:1em !important;
	display:block;
	line-height:36px;
}

.entry-info {
    text-align: center;
}

.link-button {
    text-align: center;
    margin-top: 30px;
}

/* form material */

textarea    { resize:vertical; }
textarea,
.ip_l       { width:100%; }
.ip_ss      { width:10%; }
.ip_s       { width:15%; }
.ip_m       { width:60%; }

input[type="text"],
select,
textarea {
    padding:6px;
    border:1px solid #e0e0e0;
    background-color:#fff;
    box-sizing:border-box;
}

input[type="text"]:focus,
select:focus,
textarea:focus {
	border-color:#b9b9b9;
}

option {
	padding-right:0.5em;
}

.error input[type=text], 
.error textarea,
.error select {
	border-color:#f8bbbd;
	background-color:#ffeeee;
}

.error .m-ckbox+label:before,
.error .m-radio+label:before {
	border-color:#f8bbbd;
	background-color:#ffeeee;
}

.error p {
	padding-bottom:0.5em;
}

.txt-red {
	color:#ff0000;
}

.ic-required {
    display:inline-block;
    background-color:#f0686c;
    color:#fff;
    padding:0.15em 0.5em;
    box-sizing:border-box;
    border-radius:2px;
    -moz-border-radius:2px;
    -webkit-border-radius:2px;
    font-weight:normal;
}


/* form button */

.post-btn {
	width:100%;
	margin-left:auto;
	margin-right:auto;
	text-align:center;
	margin-top:30px;
}

.form-btn,
.link-button a {
    width:220px;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    border:none;
    margin-left:auto;
    margin-right:auto;
    outline:none;
    text-decoration:none;
    border-radius:3px;
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    background-color:#b54443;
    color:#fff;
    padding:15px;
    font-size:20px;
    display:inline-block;
    -moz-transition:background-color ease-in-out  0.15s;
    -o-transition:background-color ease-in-out  0.15s;
    -webkit-transition:background-color ease-in-out  0.15s;
    transition:background-color ease-in-out  0.15s;
}

.form-btn:hover,
.link-button a:hover {
    background-color:#d9a519;
}

.form-btn:disabled,
.form-btn:disabled:hover,
.link-button a:disabled,
.link-button a:disabled:hover {
    background-color:#cccccc;
}


.form-btn-back,
.form-btn-clear {
    width:220px;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    border:none;
    margin-right:20px;
    outline:none;
    text-decoration:none;
    border-radius:3px;
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    background-color:rgba(200,200,200,1);
    color:#fff;
    padding:15px;
    font-size:20px;
    -moz-transition:background-color ease-in-out  0.15s;
    -o-transition:background-color ease-in-out  0.15s;
    -webkit-transition:background-color ease-in-out  0.15s;
    transition:background-color ease-in-out  0.15s;
    display:inline-block;
}

.form-btn-back:hover,
.form-btn-clear:hover {
    background-color:rgba(200,200,200,0.65);
}

.form-btn-back:disabled,
.form-btn-back:disabled:hover,
.form-btn-clear:disabled,
.form-btn-clear:disabled:hover {
    background-color:#c8c8c8;
}


/* chkbox */

.m-ckbox {
    display:none;
    margin-top:-0.25em;
}

.m-ckbox+label {
    display:inline-block;
    cursor:pointer;
    margin-top:0.25em;
    margin-bottom:0.25em;
    font-family:inherit;
}

.m-ckbox+label:before {
    width:1.5em;
    height:1.5em;
    line-height:1.5em;
    font-size:1em;
    display:inline-block;
    vertical-align:middle;
    text-align:center;
    color:transparent;
    padding:0;
    border-radius:3px;
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    border:2px solid #c8c8c8;
    background-color:#fff;
    margin:-2px 0.5em 0 0;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    box-sizing:border-box;  
    -webkit-transition:border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s, background-color ease-in-out .15s;
    -o-transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s, background-color ease-in-out .15s;
    transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s, background-color ease-in-out .15s;
}

.m-ckbox:hover+label:before {
    background-color:#c8c8c8;
    color:#fff;
}

.m-ckbox:checked+label:before {
    border-color:#ffc841;
    background-color:#ffc841;
    color:#fff;
}


/* chkbox group */

.m-ckbox-group label {
    margin-right:1.5em;
}

/* label size */

.m-ckbox+label.label--s  { min-width:6em; }
.m-ckbox+label.label--m  { min-width:10em; }
.m-ckbox+label.label--l  { min-width:15em; }
.m-ckbox+label.label--2l { min-width:31.5em; }


/* radio button */

.m-radio {
    display:none;
    margin-top:-0.25em;
}

.m-radio+label {
    display:inline-block;
    cursor:pointer;
    margin-top:0.25em;
    margin-bottom:0.25em;
    font-family:inherit;
}

.m-radio+label:before {
    width:1.25em;
    height:1.25em;
    display:inline-block;
    content:"";
    border-radius:1.25em;
    -moz-border-radius:1.25em;
    -webkit-border-radius:1.25em;
    vertical-align:middle;
    border:2px solid #c8c8c8;
    background-color:#fff;
    margin:-2px 5px 0 0;
    -webkit-transition:border-color ease-in-out .15s, background-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
    -o-transition:border-color ease-in-out .15s, background-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
    transition:border-color ease-in-out .15s, background-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
}

.m-radio:hover+label:before {
    border-color:#c8c8c8;
    background-color:#c8c8c8;
    box-shadow:inset 0 0 0 0.25em #fff;
}

.m-radio:checked+label:before {
    border-color:#bd550d;
    background-color:#bd550d;
    box-shadow:inset 0 0 0 0.25em #fff;
}


/* radio button group */

.m-radio-group label {
    margin-right:1.5em;
}