@charset "UTF-8";

/* ---------------------------------------------------

	Layout - Contact Us
	/contactus/
	/contactus/confirm
	/contactus/thanks

-------------------------- */

/* ---------------------------------------------------

	Setting

--------------------------- */
input[type=text], input[type=tel], input[type=email], 
textarea,
select {
	background-color: rgba(235, 235, 235, 1);
	border: none;
	display: inline-block;
	font-weight: 400;
	outline: none;
	vertical-align: middle;
	box-sizing: border-box;
	transition: .3s;
	}
input[type=text], input[type=tel], input[type=email] {
	width: 100%;
	line-height:1.4;
	border-radius: 100px;
	}
label,
input[type=radio] { cursor: pointer; }
textarea {
	vertical-align: bottom;
	resize: vertical;
	width: 100%;
	}
input[type="radio"],
input[type="checkbox"] {
	background-color: rgba(255, 255, 255, 1);
	position: relative;
	}
select { cursor: pointer; }
input[type=text]:focus, input[type=tel]:focus, input[type=email]:focus,
textarea:focus,
select:focus {
	background-color: rgba(255, 255, 255, 1);
	box-shadow: 0 0 30px rgba(0, 0, 0, .3);
	}
select::-ms-expand { display: none; }
[type=submit] { border: none; }
	/* input-number Spinbutton Dsiapper */
	input[type="number"]::-webkit-outer-spin-button,
	input[type="number"]::-webkit-inner-spin-button {
		-webkit-appearance: none;
		margin: 0;
		}
	input[type="number"] { -moz-appearance: textfield; }
/* ------------------------------------------------ */
@media (min-width: 751px) {
input[type="radio"],
input[type="checkbox"] { margin-right: 5px; }
input[type=text], input[type=tel], input[type=email], 
textarea,
select {
	font-size: 17px;
	padding: 20px 25px;
	}
textarea {
	line-height: 1.75;
	border-radius: 20px;
	}
}
/* ------------------------------------------------ */
@media (max-width: 750px) {
input[type="radio"],
input[type="checkbox"] { margin-right: 5px; }
input[type=text], input[type=tel], input[type=email], 
textarea,
select {
	border-width: 1px;
	padding: 15px;
	}
/*input.com-frm-ipt-lrg[type="radio"],
input.com-frm-ipt-lrg[type="checkbox"] {
	border: 1px solid rgba(125, 185, 10, 1);
	border-radius: 50%;
	height: 20px;
	width: 20px;
	}
input.com-frm-ipt-lrg[type="radio"]:checked:before,
input.com-frm-ipt-lrg[type="checkbox"]:checked:before {
	background-image: url(/src/img/common/icon/check-blue.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 12.5px;
	bottom: 0;
	content: '';
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	}
select {
	background-color: rgba(255, 255, 255, 1);
	background-image: url(/src/img/common/icon/arrow-facedown-blue.svg);
    background-repeat: no-repeat;
    background-position: right 5px center;
    background-size: 10px;
    padding: 15px 20px 15px 12.5px;
	}*/
}

/* ---------------------------------------------------

	Pagenation

--------------------------- */
.ctt-pagenation {
	margin: 0 auto;
	display: flex;
	justify-content: center;
	}
	.ctt-pagenation .item {
		background-color: rgba(255, 255, 255, 1);
		line-height: 1;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		}
	body#ls_contactus_input .ctt-pagenation .item.input,
	body#ls_contactus_confirm .ctt-pagenation .item.confirm,
	body#ls_contactus_thanks .ctt-pagenation .item.thanks { background-color: rgba(225, 210, 145, 1); }
/* ------------------------ */
@media (min-width: 751px) {
.ctt-pagenation {
	max-width: 1200px;
	padding: 0 100px;
	}
	.ctt-pagenation .item {
		font-size: 30px;
		height: 100px;
		margin: 0.25%;
		max-width: 32.83333333333333%;
		}
	.ctt-pagenation .item:first-child { border-radius: 20px 0 0 20px; }
	.ctt-pagenation .item:last-child { border-radius: 0 20px 20px 0; }
}
/* ------------------------ */
@media (max-width: 750px) {
.ctt-pagenation { padding: 0 20px; }
	.ctt-pagenation .item {
		font-size: 18px;
		height: 60px;
		margin: 0.5%;
		max-width: 32.33333333333333%;
		}
	.ctt-pagenation .item:first-child { border-radius: 10px 0 0 10px; }
	.ctt-pagenation .item:last-child { border-radius: 0 10px 10px 0; }
}

/* ---------------------------------------------------

	Block

--------------------------- */
.ctt-wrap { margin: 0 auto }
	.ctt-wrap .inner {
		background-color: rgba(255, 255, 255, 1);
		box-sizing: border-box;
		}
		.ctt-block.intro p { line-height: 1.75; }
		.ctt-block.intro p:last-child { margin-bottom: 0; }
		.ctt-block.con .item { border-top: 1px solid rgba(112, 112, 112, 0.5); }
		.ctt-block.con .item:last-child { border-bottom: 1px solid rgba(112, 112, 112, 0.5); }
		.ctt-block.con .item dl {
			display: flex;
			align-items: center;
			justify-content: flex-start;
			}
		.ctt-block.con .item dl dt {
			display: flex;
			align-items: center;
			justify-content: flex-start;
			}
		#ls_contactus_input .ctt-block.con .item dl dt:before {
			color: rgba(255, 255, 255, 1);
			content: '';
			line-height: 1;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			border-radius: 100px;
			}
		#ls_contactus_input .ctt-block.con .item.req dl dt:before {
			background-color: rgba(230, 10, 25, 1);
			content: '必須';
			}
		#ls_contactus_input .ctt-block.con .item.any dl dt:before {
			background-color: rgba(0, 65, 100, 1);
			content: '任意';
			}
		.ctt-block.con .item dl dd {
			width: 100%;
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			justify-content: flex-start;
			}
		.ctt-block.con .item dl dd .error p { color: rgba(230, 10, 25, 1); }
	.ctt-btnarea {
		margin: 0 auto;
		display: flex;
		justify-content: center;
		}
		.ctt-btnarea .item {
			color: rgba(255, 255, 255, 1);
			font-weight: 700;
			line-height: 1;
			width: 100%;
			position: relative;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			border-radius: 100px;
			}
		.ctt-btnarea .item:after {
			background-color: rgba(255, 255, 255, 1);
			background-position: center;
			background-repeat: no-repeat;
			content: '';
			position: absolute;
			top: 50%;
			border-radius: 50%;
			}
		.ctt-btnarea #submit,
		.ctt-btnarea #send { background: transparent linear-gradient(98deg, rgba(0, 155, 235, 1) 0%, rgba(2, 90, 209, 1) 100%) 0% 0% no-repeat padding-box; }
		.ctt-btnarea #submit:after,
		.ctt-btnarea #send:after {
			background-image: url(/src/img/common/arrow/right-blue.svg);
			transform: translateY(-50%);
			}
		.ctt-btnarea #back { background: transparent linear-gradient(102deg, rgba(197, 197, 197, 1) 0%, rgba(146, 146, 146, 1) 100%) 0% 0% no-repeat padding-box; }
		.ctt-btnarea #back:after {
			background-image: url(/src/img/common/arrow/right-gray.svg);
			transform: translateY(-50%) rotate(180deg);
			}
	/* Btn disabled */
	.ctt-btnarea #submit:disabled {
		background: transparent linear-gradient(102deg, rgba(197, 197, 197, 1) 0%, rgba(146, 146, 146, 1) 100%) 0% 0% no-repeat padding-box;
		pointer-events: none;
		}
	.ctt-btnarea #submit:disabled:after { background-image: url(/src/img/common/arrow/right-gray.svg); }
	/* Form Parts */
	.ctt-block.con .item dl.aifs { align-items: flex-start; }
	.ctt-block.con .item dl dd .cell.full {
		margin-right: 0;
		width: 100%;
		}
	.ctt-block.con .item dl dd a.link {
		color: rgba(0, 102, 255, 1);
		font-weight: 700;
		text-decoration: underline;
		}
/* ------------------------ */
@media (min-width: 751px) {
.ctt-wrap {
	margin-top: 40px;
	max-width: 1200px;
	padding: 0 100px;
	}
	.ctt-wrap .inner {
		padding: 80px 100px;
		border-radius: 20px;
		}
		.ctt-block.intro p {
			font-size: 18px;
			letter-spacing: 1.5px;
			margin-bottom: 40px;
			}
	.ctt-block.con { margin-top: 60px; }
		.ctt-block.con .item { padding: 30px 0; }
		.ctt-block.con .item .note {
			font-size: 18px;
			margin-bottom: 20px;
			}
		.ctt-block.con .item dl dt {
			font-size: 18px;
			min-width: 350px;
			}
		#ls_contactus_input .ctt-block.con .item dl dt:before {
			font-size: 16px;
			height: 30px;
			margin-right: 20px;
			min-width: 60px;
			}
	.ctt-btnarea { margin-top: 50px; }
	#ls_contactus_confirm .ctt-btnarea { flex-direction: row-reverse; }
		.ctt-btnarea .item {
			font-size: 25px;
			height: 100px;
			margin: 10px 20px;
			padding: 0 40px;
			transition: all 0.3s;
			}
		.ctt-btnarea .item:after {
			background-size: 50%;
			height: 50px;
			width: 50px;
			}
		.ctt-btnarea #submit { max-width: 500px; }
		.ctt-btnarea #send,
		.ctt-btnarea #back { max-width: 350px; }
		.ctt-btnarea #submit:after,
		.ctt-btnarea #send:after { right: 25px; }
		.ctt-btnarea #back:after { left: 25px; }
		.ctt-btnarea #submit:hover,
		.ctt-btnarea #send:hover { background: transparent linear-gradient(98deg, rgba(2, 90, 209, 1) 0%, rgba(0, 155, 235, 1) 100%) 0% 0% no-repeat padding-box; }
		.ctt-btnarea #back:hover { opacity: 0.6 }
	/* Form Parts */
	.ctt-block.con .item dl dd .cell {
		margin-right: 60px;
		padding: 5px 0;
		}
	.ctt-block.con .item dl dd #comment { min-height: 300px; }
	.ctt-block.con .item dl dd .mt10 { margin-top: 10px; }
}
/* ------------------------ */
@media (min-width: 1201px) {
.ctt-block.con .item dl dt {
	left: 0;
	position: sticky;
	top: 100px;
	}
}
/* ------------------------ */
@media (max-width: 1200px) {
.ctt-block.con .item dl { flex-wrap: wrap; }
.ctt-block.con .item dl dd { margin-top: 15px; }
}
/* ------------------------ */
@media (min-width: 751px) and (max-width: 1000px) {
.ctt-wrap .inner { padding: 60px; }
	.ctt-btnarea { flex-wrap: wrap; }
		.ctt-btnarea .item { font-size: 20px; }
		#ls_contactus_input .ctt-btnarea .item { justify-content: flex-start; }
		#ls_contactus_confirm .ctt-btnarea .item { justify-content: center; }
		.ctt-btnarea #submit,
		.ctt-btnarea #send,
		.ctt-btnarea #back { max-width: 100%; }
}
/* ------------------------ */
@media (max-width: 750px) {
.ctt-wrap {
	margin-top: 20px;
	padding: 0 20px;
	}
	.ctt-wrap .inner {
		padding: 30px;
		border-radius: 10px;
		}
		.ctt-block.intro p {
			font-size: 14px;
			letter-spacing: -0.5px;
			margin-bottom: 30px;
			}
	.ctt-block.con { margin-top: 30px; }
		.ctt-block.con .item { padding: 25px 0; }
		.ctt-block.con .item .note {
			font-size: 14px;
			margin-bottom: 10px;
			}
		.ctt-block.con .item dl dt { font-size: 16px; }
		#ls_contactus_input .ctt-block.con .item dl dt:before {
			font-size: 14px;
			height: 20px;
			margin-right: 10px;
			min-width: 50px;
			}
	.ctt-btnarea { margin-top: 30px; }
	#ls_contactus_confirm .ctt-btnarea { flex-direction: row-reverse; }
		.ctt-btnarea .item {
			font-size: 20px;
			height: 80px;
			margin: 5px;
			padding: 0 25px;
			}
		.ctt-btnarea .item:after {
			background-size: 50%;
			height: 20px;
			width: 20px;
			}
		.ctt-btnarea #submit:after,
		.ctt-btnarea #send:after { right: 10px; }
		.ctt-btnarea #back:after { left: 10px; }
	/* Form Parts */
	.ctt-block.con .item dl dd .cell {
		margin-right: 60px;
		padding: 5px 0;
		}
	.ctt-block.con .item dl dd #comment { min-height: 300px; }
	.ctt-block.con .item dl dd .mt10 { margin-top: 10px; }
}

/* ---------------------------------------------------

	Thanks

--------------------------- */
#ls_contactus_thanks .secintro .int-ttl .jp {
	line-height: 1.5;
	letter-spacing: 0;
	}
/* ------------------------ */
@media (min-width: 751px) {
#ls_contactus_thanks .secintro .int-ttl .jp { font-size: 45px; }
}
/* ------------------------ */
@media (max-width: 750px) {
#ls_contactus_thanks .secintro .int-ttl .jp { font-size: 25px; }
}