@charset "utf-8";

/*============================
ヘッダー
============================*/
header {
	transition: transform 0.5s 0.3s;
	/* height: 1.32rem; */
	height: 1.00rem;
	position: relative;
	z-index: 10;
	width: 100%;
	max-width: 16.00rem;
	margin: auto;
}

@media screen and (max-width: 640px) {
	header {
		height: 0.50rem;
	}
}

/* --------- 以下、必要に応じて有効化 ---------- */

/* ヘッダーが上に消える
header.hide {
	transform: translateY(-1.50rem);
}
 */

/* スクロールで表示された状態
header.scr {
	background-color: rgba(255, 255, 255, 0.85);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}
*/

/* ロゴ */
header .logo {
	width: 1.92rem;
	position: absolute;
	top: 50%;
	left: 0.46rem;
	transform: translateY(-50%);
}
@media screen and (max-width: 640px) {
	header .logo {
		width: 1.00rem;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
}


header .logo img {
	display: block;
}

/* 電話番号とメールアイコン */
header .header_cont_wrap {
	width: 100%;
	max-width: 5.96rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	position: relative;
	margin-left: auto;
}

/* 電話番号 */
header .header_cont_wrap .header_tel_wrap {
	width: 100%;
	max-width: 4.10rem;
}

header .header_cont_wrap .header_tel_wrap .upper {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 0.25rem;
}

header .header_cont_wrap .header_tel_wrap .upper .icon {
	width: 0.30rem;
}

header .header_cont_wrap .header_tel_wrap .upper .icon img {
	display: block;
}

header .header_cont_wrap .header_tel_wrap .upper .tel_num {
	font-family: "din-2014", sans-serif;
	font-weight: 600;
	font-style: normal;
	font-size: 0.42rem;
}

header .header_cont_wrap .header_tel_wrap .upper .division {
	font-size: 0.11rem;
	font-weight: 700;
	line-height: 1.27;
}

header .header_cont_wrap .header_tel_wrap .bottom {
	font-size: 0.13rem;
	padding-left: 0.44rem;
	padding-top: 0.08rem;
}

/* メールアイコン */
header .header_cont_wrap .header_contact {
	width: 1.60rem;
	height: 1.00rem;
	position: fixed;
	top: 0;
	right: 0;
}
@media screen and (max-width: 640px) {
	header .header_cont_wrap .header_contact {
		display: none;
	}
}

header .header_cont_wrap .header_contact a {
	display: block;
	height: 100%;
	background-color: #222;
	color: #FFF;
}

header .header_cont_wrap .header_contact a::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #FC6401;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .3s;
}

header .header_cont_wrap .header_contact a:hover::after {
	transform-origin: left top;
	transform: scale(1, 1);
}


header .header_cont_wrap .header_contact a .icon {
	display: block;
	width: 0.47rem;
	height: 0.31rem;
	margin: auto;
	padding-top: 0.22rem;
	position: relative;
	z-index: 1;
}

header .header_cont_wrap .header_contact a .txt {
	display: block;
	text-align: center;
	font-size: 0.13rem;
	font-weight: 700;
	padding-top: 0.10rem;
	position: relative;
	z-index: 1;
}

/*============================
お電話でのお問い合わせ
============================*/
.footer_tel_wrap {
	width: 100%;
	max-width: 7.72rem;
	margin: 0.80rem auto;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
@media screen and (max-width: 640px) {
	.footer_tel_wrap {
		margin: 0.60rem auto 0.30rem;
	}		
}


.footer_tel_wrap .tit {
	width: 2.60rem;
	font-size: 0.18rem;
	font-weight: 700;
}
@media screen and (max-width: 640px) {
	.footer_tel_wrap .tit {
		width: 100%;
		text-align: center;
	}		
}

.footer_tel_wrap .txt_box {
	width: calc(100% - 2.60rem);
	box-sizing: border-box;
	padding: 0.20rem 0 0.20rem 0.30rem;
	border-left: 1px solid rgba(0,0,0,0.2);
}
@media screen and (max-width: 640px) {
	.footer_tel_wrap .txt_box {
		width: 100%;;
		padding: 0.20rem 0 0 0;
		border-left: none;
	}		
}


.footer_tel_wrap .txt_box .upper {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
@media screen and (max-width: 640px) {
	.footer_tel_wrap .txt_box .upper {
		flex-wrap: wrap;
		justify-content: center;
	}		
}


.footer_tel_wrap .txt_box .upper .icon {
	width: 0.30rem;
}

.footer_tel_wrap .txt_box .upper .icon img {
	display: block;
}

.footer_tel_wrap .txt_box .upper .tel_num {
	font-family: "din-2014", sans-serif;
	font-weight: 600;
	font-style: normal;
	font-size: 0.52rem;
	letter-spacing: 0.03em;
}
@media screen and (max-width: 640px) {
	.footer_tel_wrap .txt_box .upper .tel_num {
		font-size: 0.40rem;
	}
}

.footer_tel_wrap .txt_box .upper .division {
	font-size: 0.11rem;
	font-weight: 700;
	line-height: 1.27;
}
@media screen and (max-width: 640px) {
	.footer_tel_wrap .txt_box .upper .division {
		padding: 0.10rem 0;
		text-align: center;
		font-size: 0.13rem;
		line-height: 1.4;
	}		
}

.footer_tel_wrap .txt_box .bottom {
	font-size: 0.14rem;
	padding-left: 0.44rem;
	padding-top: 0.08rem;
}
@media screen and (max-width: 640px) {
	.footer_tel_wrap .txt_box .bottom {
		font-size: 0.14rem;
		padding-left: 0;
		padding-top: 0.08rem;
		text-align: center;
	}
}

/*============================
株式会社イースト・デイリーサイトへ
============================*/
.sitetop_btn_wrap {
	padding-bottom: 0.80rem;
}

.sitetop_btn_wrap .btn {
	max-width: 5.33rem;
	margin: auto;
}
@media screen and (max-width: 640px) {
	.sitetop_btn_wrap .btn {
		max-width: 3.25rem;
	}		
}

.sitetop_btn_wrap .btn a {
	background-color: #FC6401;
	text-align: center;
	font-size: 0.18rem;
	padding: 0.25rem 0 0.27rem;
	box-shadow: 0 0.03rem 0.12rem rgba(239,135,31,0.46);
	position: relative;
}
@media screen and (max-width: 640px) {
	.sitetop_btn_wrap .btn a {
		font-size: 0.16rem;
		padding: 0.20rem 0 0.22rem;
	}
}


.sitetop_btn_wrap .btn a span::after {
	content: '';
	display: inline-block;
	background: url(../img/top/btn_arrow_wh.svg) no-repeat center;
	background-size: contain;
	width: 0.07rem;
	height: 0.11rem;
	position: relative;
	margin-left: 0.35rem;
	right: auto;
	top: -0.01rem;
	transform: translate(0);
}
@media screen and (max-width: 640px) {
	.sitetop_btn_wrap .btn a {
		margin-top: 0.30rem;
	}
	.sitetop_btn_wrap .btn a span::after {
		margin-left: 0.15rem;
	}
}

/*============================
CUSTOMER’S VOICE
============================*/
#voice {
	padding: 1rem 0;
}
@media screen and (max-width: 640px) {
	#voice {
		padding: 0.5rem 0;
	}		
}

#voice .title_wrap {
	text-align: center;
}

#voice .title_wrap .green {
	color: #06C755;
}

#voice .list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 0 0.25rem;
}
@media screen and (max-width: 640px) {
	#voice .list {
		display: block;
	}
}

#voice .list .item {
	width: calc(20% - 0.24rem);
}
@media screen and (max-width: 640px) {
	#voice .list .item {
		width: 2.2rem;
	}
}

#voice .list .item .ph_wrap {
	width: 100%;
	height: 1.60rem;
	overflow: hidden;
	position: relative;
	border-radius: 0.10rem;
}
@media screen and (max-width: 640px) {
	#voice .list .item .ph_wrap {
		width: 2.2rem;
		height: 1.60rem;
	}		
}

#voice .list .item .ph_wrap img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.3s;
}

#voice .list .item a {
	color: #000;
	position: relative;
	display: block;
	height: 100%;
}
@media screen and (max-width: 640px) {
	#voice .list .item a {
		/* width: 2.2rem; */
		width: 100%;
		margin: 0;
	}		
}

#voice .list .item a:hover .ph_wrap img {
	transform: scale(1.04);
}

#voice .list .item a .hash {
	background: #06C755;
	color: #fff;
	font-size: 0.11rem;
	font-weight: 600;
	padding: 0.05rem;
	position: absolute;
	top: -0.32rem;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 0.1rem;
	width: max-content;
}

#voice .list .item .txt_box {
	position: relative;
}

#voice .list .item .text {
	margin-top: 0.20rem;
	font-size: 0.14rem;
	line-height: 1.5;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	transition: all 0.3s;
}
@media screen and (max-width: 640px) {
	#voice .list .item .text {
		padding: 0 0.05rem;
	}		
}

#voice .list .item a:hover .text {
	color: #06C755;
}

#voice .list .item .btn_wrap {
	margin-top: 0.20rem;
	padding-top: 0.12rem;
	text-align: center;
}

#voice .list .item .btn_wrap .btn {
	font-size: 0.14rem;
	border-bottom: 1px solid #000;
	position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}

#voice .list .item .btn_wrap .btn::after {
	content: '';
	width: 0.05rem;
	height: 0.08rem;
	background: url(../img/top/voice_arrow.svg) no-repeat center;
	background-size: cover;
	position: absolute;
	right: -0.15rem;
	top: 50%;
	transform: translateY(-50%);
	transition: all .3s;
}

#voice .list .item a:hover .btn_wrap .btn:after {
	right: -0.18rem;
}

/* ボタン */
#voice .btn {
	text-align: center;
}

#voice .btn a {
	background-color: #222222;
	box-shadow: 0px 0px 15px -5px #222222
}


#voice .btn a span::after {
	background: url(../img/top/btn_arrow_wh.svg) no-repeat center;
	background-size: cover;
	width: 0.07rem;
	height: 0.11rem;
}
@media screen and (max-width: 640px) {
	#voice .btn a span::after {
		right: -0.7rem;
	}		
}

/* slick */
#voice .slick-dots {
	bottom: -0.40rem;
}

#voice .slick-dots li.slick-active button:before {
	color: #06C755;
}

/*============================
フッター
============================*/
footer {
	background-color: #F2F2F2;
	padding: 0.40rem 0;
}
@media screen and (max-width: 640px) {
	footer {
		padding: 0.20rem 0;
	}
}
footer .in {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

footer .in .logo {
	width: 1.92rem;
}
@media screen and (max-width: 640px) {
	footer .in .logo {
		width: 1rem;
		margin-bottom: 0.10rem;
	}
}

footer .in .logo img {
	display: block;
}

footer .in .copyright {
	padding-left: 0.20rem;
	font-size: 0.12rem;
	letter-spacing: 0.06em;
	font-family: "Poppins", sans-serif;
}
@media screen and (max-width: 640px) {
	footer .in .copyright {
		font-size: 0.1rem;
	}
}

/*============================
下層ヘッダー
============================*/
.under_mv {
	height: 2.50rem;
	background-color: #06C755;
	position: relative;
}
@media screen and (max-width: 640px) {
	.under_mv {
		height: 1.50rem;
	}
}

.under_mv .in {
	position: relative;
	height: 100%;
}

.under_mv .txt_box {
	width: 100%;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	color: #FFF;
}

.under_mv .txt_box .tit {
	font-size: 0.36rem;
	font-weight: 700;
}
@media screen and (max-width: 640px) {
	.under_mv .txt_box .tit {
		font-size: 0.26rem;
		text-align: center;
	}
}


.under_mv .txt_box .txt {
	font-size: 0.15rem;
	font-weight: 700;
	line-height: 1.53;
	padding-top: 0.20rem;
}
@media screen and (max-width: 640px) {
	.under_mv .txt_box .txt {
		font-size: 0.13rem;
		text-align: center;
		padding-top: 0.1rem;
	}
}



/* ボタン */
.btn_common a {
	width: 5.33rem;
	color: #fff;
	background: #06C755;
	font-size: 0.16rem;
	font-weight: bold;
	display: block;
	margin: 0.5rem auto 0;
	box-sizing: border-box;
	padding: 0.20rem 0;
	border-radius: 0.06rem;
	box-shadow: 0px 0px 15px -5px #06C755;
}
@media screen and (max-width: 640px) {
	.btn_common a {
		width: 100%;
		line-height: 1.4;
		padding: 0.15rem 0;
		margin-top: 0.8rem;
	}		
}

.btn_common a:hover {
	opacity: 0.7;
}

.btn_common a span {
	position: relative;
}

.btn_common a span::after {
	content: '';
	background-size: cover;
	position: absolute;
	top: 50%;
	right: -0.30rem;
	transform: translateY(-50%);
}

/*============================
CONTACT
============================*/
#contact {
	padding-top: 1rem;
}

@media screen and (max-width: 640px) {
	#contact {
		padding-top: 0.5rem;
	}
}

.contact_box {
	padding-top: 0.2rem;
}

@media screen and (max-width: 640px) {
	#page_cont_box .contact_box p {
		font-size: 0.18rem;
	}
}

.contact_box table {
	font-size: 0.14rem;
	line-height: 1.6;
	width: 100%;
}

.contact_box th {
	font-size: 0.16rem;
	font-weight: 600;
	text-align: left;
	width: 30%;
	vertical-align: middle;
	padding-top: 0.20rem;
	position: relative;
	vertical-align: top;
}


.contact_box th .Hissu {
	color: #fff;
	background: #06C755;
	font-size: 0.12rem;
	display: inline-block;
	padding: 0.01rem 0.05rem 0.02rem;
	box-sizing: border-box;
	position: absolute;
	right: 0.1rem;
	top: 0.24rem;
}

@media screen and (max-width: 640px) {
	.contact_box th .Hissu {
		right: auto;
		left: 0.1rem;
		top: 0;
		position: relative;
	}
}


.contact_box th a {
	color: #222;
	font-size: 0.14rem;
}

.contact_box th a:hover {
	color: #FC6401;
}

.contact_box td {
	text-align: left;
	vertical-align: top;
	padding-top: 0.1rem;
	padding-bottom: 0.1rem;
}

@media screen and (max-width: 640px) {
	.contact_box th {
		font-size: 0.15rem;
		width: 100%;
		display: block;
		padding: 0.1rem;
		box-sizing: border-box;
	}

	.contact_box td {
		width: 100%;
		display: block;
		padding: 0;
		font-size: 0.15rem;
		box-sizing: border-box;
		margin-bottom: 0.10rem;
	}

	.contact_box th a {
		font-size: 0.15rem;
	}

	.contact_box.confirm th {
		padding-left: 0;
		border-bottom: 1px solid #CCC;
	}
	.contact_box.confirm td {
		padding-bottom: 0.30rem;
		font-size: 0.14rem;
	}
}

.contact_box td .txt {
	font-size: 0.16rem;
	line-height: 1.65;
	padding-top: 0.10rem;
}


input::placeholder,
textarea::placeholder {
	color: #CDD6DD;
}

.contact_box td input[type=text], .contact_box td input[type=url], .contact_box td input[type=tel] {
	padding: 0.16rem 0.10rem;
	box-sizing: border-box;
	width: 100%;
	font-size: 0.16rem;
	border-radius: 0;
	border: 1px solid #CDD6DD;
}

@media screen and (max-width: 640px) {
	.contact_box td input[type=text], .contact_box td input[type=url], .contact_box td input[type=tel] {
		font-size: 0.14rem;
		border-radius: 0;
	}
}

.contact_box td input[type=radio] {
	position: relative;
	top: -3px;
}

.contact_box td .check_css {
	padding-left: 0.05rem;
}

#page_cont_wrapper .contact_box p {
	line-height: 1.6;
}

.contact_box textarea {
	padding: 0.16rem 0.10rem;
	box-sizing: border-box;
	width: 100%;
	font-size: 0.16rem;
	border-radius: 0;
	border: 1px solid #CDD6DD;
	min-height: 2rem;
}

#DouiText {
	font-size: 0.16rem;
	border: 1px solid #999;
	padding: 0.16rem;
	line-height: 1.7;
	height: 200px;
	overflow: scroll;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
	margin-top: 0.4rem;
}

@media screen and (max-width: 640px) {
	#DouiText {
		font-size: 0.14rem;
		padding: 0.14rem;
	}
}


#DouiText a {
	color: #222;
	font-size: 0.14rem;
}

@media screen and (max-width: 640px) {
	#DouiText a {
		color: #222;
		font-size: 0.16rem;
	}
}

#DouiText p {
	margin-bottom: 0.1rem;
}

#SubmitWrapper {
	padding-top: 20px;
	text-align: center;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

#SubmitWrapper p {
	font-size: 0.16rem;
	font-weight: 500;
	padding: 0.30rem 0;
	width: 100%;
}

#submitBtn {
	margin: 0.40rem 0.20rem 0;
	max-width: 3.80rem;
	width: 100%;
	-webkit-appearance: none;
	background: #06C755;
	color: #FFF;
	border: 0;
	padding: 0.2rem 0;
	font-size: 0.18rem;
	font-weight: 700;
	cursor: pointer;
	border-radius: 0.10rem;
	box-shadow: 0px 0px 15px -5px #06C755;
	position: relative;
	transition: all .3s;
}

@media screen and (max-width: 640px) {
	#submitBtn {
		font-size: 0.16rem;
	}
}

.input #submitBtn {
	margin: 0.40rem auto 0;
}

#resetBtn {
	margin: 0.40rem 0.20rem 0;
	max-width: 3.80rem;
	width: 100%;
	-webkit-appearance: none;
	background: #666;
	color: #FFF;
	border: 0;
	padding: 0.2rem 0;
	font-size: 0.18rem;
	font-weight: 700;
	cursor: pointer;
	border-radius: 0.10rem;
	box-shadow: 0px 0px 15px -5px #000;
	position: relative;
	transition: all .3s;
}

@media screen and (max-width: 640px) {
	#resetBtn {
		font-size: 0.16rem;
	}
}


.submit_box {
	position: relative;
	display: block;
	width: 100%;
}

.submit_box::after {
	content: '';
	background: url(../img/top/btn_arrow_wh.svg) no-repeat center;
	background-size: cover;
	width: 0.07rem;
	height: 0.11rem;
	display: block;
	position: absolute;
	top: 0.24rem;
	right: 0.3rem;
}

@media screen and (max-width: 640px) {
	.submit_box::after {
		top: -0.05rem;
	}
}


#submitBtn:hover {
	opacity: 0.7;
}
#resetBtn:hover {
	opacity: 0.7;
}



.ERR {
	color: #D90003;
}

/* プライバシーポリシーチェック */
.privacy_check {
	text-align: center;
	margin-top: 0.40rem;
}

.privacy_check span {
	font-size: 0.16rem;
	position: relative;
	top: 0.03rem;
}

@media screen and (max-width: 640px) {
	.privacy_check span {
		font-size: 0.14rem;
	}
}


.privacy_check a {
	text-decoration: underline;
	color: #222;
}

.privacy_check a:hover {
	text-decoration: none;
	color: #06C755;
}

/* プライバシーポリシー */
.privacy_box {
	padding-top: 0.2rem;
}

.privacy_box p {
	padding-bottom: 0.2rem;
}

@media screen and (max-width: 640px) {
	#page_cont_box .privacy_box p {
		font-size: 0.18rem;
	}
}

.privacy_box p a {
	font-size: 0.14rem;
	color: #222;
}

@media screen and (max-width: 640px) {
	.privacy_box p a {
		font-size: 0.18rem;
	}
}

.privacy_box p a:hover {
	color: #FC6401;
}

.privacy_box h5 {
	padding-bottom: 0.05rem;
	font-size: 0.2rem;
}