@charset "utf-8";

/* ========================================================================================

Name: design.css

Description: Page Layout Settings

Update: 2019.10.22

======================================================================================== */





/* MAIN
-------------------------------------------------- */

/*main {
	position:relative;
	padding:0;
	overflow:hidden;
	z-index:10;
}


@media screen and (max-width: 767px){
	
	header {
		z-index:10;
	}
	
	main {
		position:relative;
		padding:0;
		overflow:hidden;
		z-index:10;
	}
	
}*/


/* CONTACT index
-------------------------------------------------- */

.titlearea {
	width:100%;
	padding:40px 0 0;
}


.text-lead{
	text-align:center;
	margin:15px 0 40px 0;
}

.ctg-contact .list-index-menu .no-photo a {
	border:1px #ddd solid;
	display:block;
}

.ctg-contact .list-index-menu .no-photo a p.caption {
	padding: 25px 10px 25px 35px;
}

.ctg-contact .list-index-menu .no-photo a p.caption::before {
	left:15px;
	top:37px;
}


@media screen and (max-width: 767px){
	
	.titlearea {
		width:100%;
		padding:40px 0 0;
	}
	
	
	.text-lead{
		text-align:center;
		margin:15px 0 20px 0;
	}
	
	
	.ctg-contact .list-index-menu .no-photo a {
		border:1px #ddd solid;
		display:block;
	}
	
	.ctg-contact .list-index-menu .no-photo a p.caption {
		padding: 10px 10px 10px 22px;
	}
	
	.ctg-contact .list-index-menu .no-photo a p.caption::before {
		left:7px;
		top:18px;
	}
		
}


/* CONTACT form
-------------------------------------------------- */


.contact-step {
	margin:60px 0 30px;
}

.contact-step li {
	width:33.33%;
	height:76px;
	float:left;
	text-align:center;
	background:url(../img/contact/bg_step.gif) no-repeat;
	background-size: 100% 100%;
/*	border:1px #CCCCCC;
	border-left-style:solid;*/
	margin:0 0 0 0 !important;
	position:relative;
}

.contact-step li.active {
	background:url(../img/contact/bg_step_active.gif) no-repeat;
	background-size: 100% 100%;
/*	border:2px #e60012;
	border-left-style:solid;*/
	color:#ffffff;
}

.contact-step li span {
	position:absolute;
	display:block;
	height:3em;
	font-size:15px;
	font-weight:500;
	line-height:1.5em;
	margin:auto;
	padding:0 20px 0 0;
	left:0;
	right:0;
	top:0;
	bottom:0;
}

.contact-lead {
	margin:0 0 40px;
}


.contact-tourism {
	margin:40px 0 0 0;
}

.contact-kessan {
	margin:0 0 50px 0;
	padding:20px 35px 20px 35px;
	border: solid #dddddd 1px;
}

.agree {
    border: 1px #CCCCCC solid;
    margin-bottom: 30px;
    margin: 50px 0 20px;
}

.agree h2 {
    background-color: #f2f3f7;
    font-size: 18px;
    padding: 15px 15px;
    font-weight: normal;
    text-align: center;
}

.agree p {
	padding:20px 30px;
}

.agree p + p {
	padding:0 30px 20px;
	margin-top:-20px;
}

.agree p.txt-eng {
	font-style:italic;
	color:#999;
}

.form-comp-message {
    border: 1px #CCCCCC solid;
    margin: 40px 0 40px;
	padding:50px 20px;
	text-align:center;
}

.form-comp-message strong {
	font-size:20px;
	line-height:2em;
	display:block;
	margin-bottom:0;
}

.contact-btnarea {
	margin:40px 0 10px 0;
}

#page-contents .contact-btnarea .btn-base a {
	margin:0 20px;
}

#page-contents .contact-btnarea #btn-pcr-confirm a {
	width:300px;
}

.form-error {
	color:#C00;
}

.item-need {
	color:#FFFFFF;
	background-color:#01a1df;
	display:inline-block;
	font-size:13px;
	line-height:1em;
	padding:5px 10px;
	float:right;
	margin:5px 0 0 8px;
}

.sec-requirement-block table input {
	padding:8px 8px;
	border:1px #999999 solid;
	border-radius: 3px;
	margin:0 8px 0 8px;
}

.sec-requirement-block table td span {
	display:inline-block;
}

.sec-requirement-block table select {
	padding:8px 0 8px 10px;
	border:1px #999999 solid;
	border-radius: 3px;
	margin:0 0 0 8px;
}

.sec-requirement-block table textarea {
	padding:10px 0 10px 10px;
	border:1px #999999 solid;
	border-radius: 3px;
	margin:0 0 0 8px;
}


.sec-requirement-block > table th span.note {
	display:block;
	font-size:13px;
	font-weight:normal;
	line-height:1.4em;
	padding:10px 0 0;
}

.sec-requirement-block table td br {
	display:none;
}

.sec-requirement-block table.tbl-confirm td br {
	display:block;
}

.sec-requirement-block table td > div {
	padding:4px 0;
}

.sec-requirement-block table .input-wid-short00 {
	width:50px;
}

.sec-requirement-block table .input-wid-short01 {
	width:80px;
}

.sec-requirement-block table select.input-wid-short01 {
	width:90px;
}

.sec-requirement-block table .input-wid-short02 {
	width:160px;
}
.sec-requirement-block table .input-wid-middle01 {
	width:50%;
}
.sec-requirement-block table .input-wid-middle02 {
	width:70%;
}
.sec-requirement-block table .input-wid-wide {
	width:100%;
}

.tbl-base-style .txt-notice {
	font-size:80%;
	line-height:1.5em;
}

.tbl-base-style .notice-eng {
	font-style:italic;
	color: #89abd4;
}

.tbl-base-style .txt-notice + input ,
.tbl-base-style .notice-eng + input ,
.tbl-base-style .txt-notice + label ,
.tbl-base-style .notice-eng + label ,
.tbl-base-style input + .txt-notice ,
.tbl-base-style input + .notice-eng {
	margin-top:10px;
}

.tbl-base-style .txt-eng {
	display:block;
	font-size:80%;
	font-style:italic;
	font-weight:normal;
	line-height:1.33em;
	color: #89abd4;
}

.tbl-base-style td .txt-eng {
	margin-top:5px;
	padding-left:10px;
}

.tbl-base-style label {
	display:inline-block;
}

input::placeholder,
textarea::placeholder {
	color: #999;
}

.txt-pcr-contact {
	margin-top:20px;
	padding:0 20px;
}

.txt-pcr-contact p {
	font-size:14px;
	line-height:1.67em;
}

.txt-pcr-contact h2 {
	padding:20px 0 10px;
}

.txt-pcr-contact h2 span {
	display:block;
	font-size:16px;
	line-height:1.5em;
}

.txt-pcr-contact dl {
}

.txt-pcr-contact dt {
	display:inline-block;
	margin:0 0 0 10px;
}

.txt-pcr-contact dd {
	display:inline-block;
	margin:0 20px 0 0;
}

input[type="text"],
input[type="password"],
textarea,
select {
    outline: none;
}

input.error ,
select.error {
	background-color:#FDDDE6;
}

label.error {
	color:#CC0000;
	display:block;
	margin: 5px 0 0 10px;
}



@media screen and (max-width: 767px){

	.contact-step {
		margin:30px 0 20px;
	}
	
	.contact-step li {
		width:33.33%;
		height:42px;
		float:left;
		text-align:center;
		background:url(../img/contact/bg_step.gif) no-repeat;
		background-size: 100% 100%;
	/*	border:1px #CCCCCC;
		border-left-style:solid;*/
		margin:0 0 0 0 !important;
		position:relative;
	}
	
	.contact-step li.active {
		background:url(../img/contact/bg_step_active.gif) no-repeat right top;
		background-size: 100% 100%;
	/*	border:1px #e60012;
		border-left-style:solid;*/
		color:#ffffff;
	}
	
	.contact-step li span {
		position:absolute;
		display:block;
		height:3em;
		font-size:11px;
		font-weight:500;
		line-height:1.5em;
		margin:auto;
		padding:0 8px 0 0;
		left:0;
		right:0;
		top:0;
		bottom:0;
	}


	.contact-lead {
		margin:0 0 30px;
	}
	
	.contact-tourism {
		margin:30px 0 0 0;
	}

	.contact-kessan {
		margin:0 0 30px 0;
		padding:15px 20px 15px 20px;
		border: solid #dddddd 1px;
	}
	
	.ctg-contact .tbl-base-style th ,
	.ctg-contact .tbl-base-style td {
		display: block;
		width:100%;
		box-sizing:border-box;
	}
	
	.ctg-contact .tbl-base-style th {
		padding:6px 10px 6px 10px;
		border-bottom:none;
	}
	
	.ctg-contact .tbl-base-style td {
		border-bottom:none;
	}

	.agree {
		border:1px #CCCCCC solid;
		margin:20px 0 0;
	}
	
	.agree h2 {
		background-color:#f2f3f7;
		font-size:15px;
		padding:10px 15px;
		font-weight:normal;
		text-align:center;
	}
	.agree p {
		padding:10px 15px;
		font-size:13px;
		line-height:1.6em;
	}
	
	.agree p + p {
		padding:0 15px 20px;
		margin-top:0;
	}
	
	.agree p.txt-eng {
		font-style:italic;
		color:#999;
	}
	
	.contact-btnarea{
		margin:20px 0 0 0;
	}
	
	#page-contents .contact-btnarea .btn-base a {
		margin:0 10px;
		width:150px;
	}
	
	#page-contents .contact-btnarea #btn-pcr-confirm a {
		width:240px;
	}
		
	#page-contents .contact-btnarea .btn-base a.return {
		width:90px;
	}
	
	#page-contents .contact-btnarea .btn-base a:after {
		width:20px;
		right:-10px;
	}

	.form-error {
		color:#C00;
	}

	.item-need {
		color:#FFFFFF;
		background-color:#01a1df;
		display:inline-block;
		font-size:10px;
		line-height:1em;
		padding:3px 5px;
		float:right;
		margin:5px 0 0 8px;
	}
	
	.sec-requirement-block table .input-wid-short01 {
		width:50px;
	}
	.sec-requirement-block table select.input-wid-short01 {
		width:50px;
	}
	.sec-requirement-block table .input-wid-short02 {
		width:75px;
	}
	.sec-requirement-block table .input-wid-middle01 {
		width:50%;
	}
	.sec-requirement-block table .input-wid-middle02 {
		width:70%;
	}
	.sec-requirement-block table .input-wid-wide {
		width:95%;
		box-sizing:border-box;
	}
	
	.txt-pcr-contact {
		margin-top:20px !important;
		padding:0 0;
	}
	
	.txt-pcr-contact p {
		font-size:13px;
		line-height:1.67em;
	}
	
	.txt-pcr-contact h2 {
		padding:0px 0 10px;
	}
	
	.txt-pcr-contact h2 span {
		display:block;
		font-size:14px;
		line-height:1.5em;
	}
	
	.txt-pcr-contact dl {
		font-size:13px;
		line-height:1.5em;
	}
	
	.txt-pcr-contact dt {
		display:block;
		margin:0 0 0 10px;
		width:110px;
		clear:both;
		float:left;

	}
	
	.txt-pcr-contact dd {
		display:block;
		margin:0 0 0 120px;
	}
	
	
}

