@charset "utf-8";

/*--------------------------------------
	トップ画像
---------------------------------------*/
/* トップ画像 */
	.bxslider_2 { width: 100%;display: inline-block;position: relative; }
		.bxslider_2::after { content: 'Contact';position: absolute;top: 60%;left: 5%;transform: translate(-5%, -60%);-webkit-transform: translate(-5%, -60%);-ms-transform: translate(-5%, -60%);
							color: #fff;font-size: 17rem;font-weight: bold;opacity:0.5;font-family:Arial; }
		.d-demo img { display: block; width: 100%;height: 100vh;object-fit: cover;margin: 0 auto; }
			.topimages_w { position: absolute;right: 0;bottom: 0;z-index: 99; }
			.topimages_w img { width: 100%;height: auto; }

	@media screen and (max-width: 1100px) {
		.bxslider_2::after { font-size: 12rem; }
	}
	@media screen and (max-width: 900px) {
		.bxslider_2::after { font-size: 10rem;top: 50%;left: 5%;transform: translate(-5%, -50%);-webkit-transform: translate(-5%, -50%);-ms-transform: translate(-5%, -50%); }
	}
	@media screen and (max-width: 600px) {
		.bxslider_2::after { font-size: 8rem;top: 50%;left: 50%;transform: translate(-50%, -50%);-webkit-transform: translate(-50%, -50%);-ms-transform: translate(-50%, -50%); }
	}
	@media screen and (max-width: 450px) {
		.bxslider_2::after { font-size: 6.5rem; }
	}


/*--------------------------------------
	見出し等
---------------------------------------*/
	h2.comtitle { font-size: 5rem;margin-bottom: 30px;color: #000;font-weight: bold;line-height: 1;letter-spacing: 0.5rem;text-align: left; }
	.comtitle span {display: inline-block;font-size: 2rem;font-weight: normal;color: #666;line-height: 1.8;letter-spacing: 0.3rem;margin-left: 15px;vertical-align: bottom; }
	.message_text { text-indent: 1em;text-align: justify !important;margin: 0 auto;padding: 0;font-size: 1.8rem;font-weight: normal;line-height: 2.25;color: #000;letter-spacing: 0.05em; }
	.message_text02 { text-align: right;margin: 15px 0 0 0;padding: 0;font-size: 1.8rem;font-weight: normal;line-height: 1.5;color: #000;letter-spacing: 0.05em; }

	/* ラインが薄くなる */
		.gurade{ position:relative;text-align:center;margin: 50px 0 30px 0;font-size:1.8rem;font-weight: normal;letter-spacing: 0.15em; }
		.gurade:before,
		.gurade:after{ content:"";display:block;position:absolute;height:1px;width:100%;border: 0;background: #ccc;
						background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(0.7,#bbb), color-stop(0.7,#cecece), to(#fff));
						background: -moz-linear-gradient(left,#fff 0%, #ccc 30%, #cecece 70%, #fff 100%);
						background: -o-linear-gradient(left,#fff 0%, #ccc 30%, #cecece 70%, #fff 100%);
						background: -ms-linear-gradient(left,#fff 0%, #ccc 30%, #cecece 70%, #fff 100%);
						background: linear-gradient(left,#fff 0%, #ccc 30%, #cecece 70%, #fff 100%); }
		.gurade:before{ top:-10px; }
		.gurade:after{bottom:-10px; }



	.works_text01 { text-align: justify !important;margin: 0 auto 20px auto;padding: 0;font-size: 1.7rem;font-weight: normal;line-height: 2.25;color: #000;letter-spacing: 0.05em; }
	p.con_text01 { margin-bottom: 15px;text-align: left;font-size:1.7rem;line-height: 1.75;color: #000;letter-spacing: 0.05em; }
	p.con_text02 { margin-bottom: 15px;text-align: left;font-size:2.5rem;line-height: 1.75;color: #000;letter-spacing: 0.05em; }




	@media screen and (max-width: 1100px) {
		.works_text01 { font-size: 1.6rem; }
	}
	@media screen and (max-width: 1000px) {
		h2.comtitle { font-size: 4rem; }
	}
	@media screen and (max-width: 800px) {
		h2.comtitle { font-size: 3.2rem; }
		.comtitle span { font-size: 1.8rem; }
		p.con_text01 { font-size:1.5rem; }
		p.con_text02 { font-size:2rem; }
	}
	@media screen and (max-width: 600px) {
		h2.comtitle { font-size: 2.8rem; }
		.comtitle span { font-size: 1.6rem; }
		.works_text01 { font-size: 1.5rem; }
	}
	@media screen and (max-width: 500px) {
		h2.comtitle { font-size: 2.3rem; }
		.comtitle span { font-size: 1.2rem; }
	}

/*--------------------------------------
	メールフォーム
---------------------------------------*/
/* メールフォーム枠 */
	.mform { width: 100%;border: #ccc 1px solid;border-collapse: collapse;font-size: 1.6rem;margin-bottom: 100px; }
	.mform th { width: 30%;background-color: #efefef;border-bottom: #ccc 1px solid;padding: 20px 0 20px 20px;text-align: left;font-weight: normal; }
	.mform td { background-color: #fff;border-bottom: #ccc 1px solid;padding: 20px;text-align: left; }

/* インプットスタイル */
	.inp{ width: 100%;color:000;font-size: 100%;padding: 3px;border-width: 0 0 1px 0;border-color: #444;border-style: dotted; }

/* フォーカス */
	.form-1 input[type=text]:focus,.form-1 select:focus,.form-1 textarea:focus{ background: #f8f8ff; }
	.form-1 input[type=text],.form-1 select,.form-1 textarea{ background: #fff; } 

/* 必須バッチ */
	.Form-Item-Label-Required { border-radius: 5px;margin-right: 8px;padding: 2px 5px;display: inline-block;text-align: center;background: #006EA8;color: #fff;font-weight: normal;font-size: 1.5rem; }

/* 送信ボタン */
	.submit-btn { border-radius: 50px;background-color: transparent;border: none;cursor: pointer;outline: none;appearance: none;color: #fff;font-size: 1.8rem;padding: 15px 80px;background-color: #006EA8;cursor: pointer; }
		.submit-btn[disabled] { background-color: #ccc;cursor: not-allowed; }

/* チェックボックス */
	input[type="checkbox"]  { margin: 0;padding: 0;background: none;border: none;border-radius: 0;outline: none;-webkit-appearance: none;-moz-appearance: none;appearance: none; }
	input[type="checkbox"] { cursor: pointer;padding-left: 30px;vertical-align: middle;position: relative; }
	input[type="checkbox"]::before,
	input[type="checkbox"]::after { content: "";display: block;position: absolute; }
	input[type="checkbox"]::before { background-color: #fff;border-radius: 0%;border: 1px solid #666464;width: 20px;height: 20px;transform: translateY(-50%);top: 50%;left: 5px; }
	input[type="checkbox"]::after { border-bottom: 3px solid #666464;border-left: 3px solid #666464;opacity: 0;height: 6px;width: 11px;transform: rotate(-45deg);top: -7px;left: 10px; }
	input[type="checkbox"]:checked::after { opacity: 1; }

/* 個人情報の取扱いで使用 */
	.list-002 { counter-reset: li;text-align: left; }
		.list-002 li { display: flex;align-items: center;padding: .5em;font-size:1.7rem;letter-spacing: 0.05em; }
		.list-002 li::before { display: inline-block;min-width: 1.7em;margin-right: 5px;border-radius: 50%;background-color: #109954;color: #fff;font-weight: noramal;font-size: 1.7rem;line-height: 1.7;text-align: center;content: counter(li);counter-increment: li; }

/* 同意の部分 */
	.checkdoui { font-size: 1.7rem; }
	.waku { padding: 0 0 50px 0; }
	.waku02 { padding: 0 0 100px 0; }

	@media screen and (max-width: 800px) {
		.list-002 li,.checkdoui,.mform,.inp { font-size:1.5rem; }
	}
	@media screen and (max-width: 800px) {
		.mform th,.mform td { display: block;width: 100%; }
		.mform { border-bottom:0; }
		.mform th { background: #eee;border-bottom:none;padding: 10px 0 10px 15px; }
		.mform td{ padding: 10px 15px; }
		.submit-btn { font-size: 1.6rem; }
	}
