@charset "utf-8";

/* CSS Document */
@media only screen and (max-width:768px) {

	/*----------------------------------------
スマホ用レイアウト（768px以下のスクリーン）
----------------------------------------*/
	/*----------------------------------------
共通設定（スマホ）
----------------------------------------*/
	.contents {
		padding: 0rem 5%;
	}


	/*----------------------------------------
全体レイアウト/背景設定（スマホ）
----------------------------------------*/
	/*----------------------------------------
上部固定ヘッダー設定
----------------------------------------*/
	/*上部固定ヘッダー解除*/
	.header {
		background-color: rgba(255, 255, 255);
		position: relative;
		z-index: 5000;
	}

	/*ヘッダーロゴ*/
	.header_logo {
		width: 50%;
		float: none;
		margin: 0.5rem auto 0;
		padding-left: 0em;
		padding-top: 0em;
		padding-bottom: 0em;
	}

	/*ヘッダーボタンの削除*/
	.header_tell,
	.header_line,
	.header_mail {
		display: none;
	}

	/*----------------------------------------
ファーストビュー設定
----------------------------------------*/
.top_image {
	margin-top: 0;
}
	/*----------------------------------
スライダー設定
------------------------------------*/
	.slider1 li {
		width: 150px;
		list-style: none;
		margin: 0 0px;
		border-top: 5px solid #ffffff;
		border-bottom: 5px solid #ffffff;
		border-left: 2.5px solid #ffffff;
		border-right: 2.5px solid #ffffff;
	}


	/*----------------------------------------
セクションの設定
----------------------------------------*/
	/*----------------------------------
セクション（共通）
------------------------------------*/
	/*----------------------------------
セクション（CTA）
------------------------------------*/

	.secInr_cta {
		padding: 1.5em 0em 1.5em;
	}

	.sec_cta .contents {
		padding: 0 0px;
	}

	.btn_tel_cta {
		position: absolute;
		width: 82%;
		left: 50%;
		bottom: 34%;
		transform: translateX(-50%);
	}

	.btn_line_cta {
		position: absolute;
		width: 82%;
		left: 50%;
		bottom: 17%;
		transform: translateX(-50%);
	}

	.btn_mail_cta {
		position: absolute;
		width: 82%;
		left: 50%;
		bottom: 14.2%;
		transform: translateX(-50%);
	}

	/*----------------------------------
セクション（お悩み）
------------------------------------*/
	.sec_onayami {
		background-image: url(../img/bg_nayami.jpg);
		background-size: 300%;
	}

	.sec_onayami .contents {
		padding: 0 0px;
	}

	.secInr_onayami {
		padding: 0em 0em 1em;
	}

	/*----------------------------------
セクション（解決）
------------------------------------*/
	.sec_kaiketsu {
		background-size: 300%;
	}

	.secInr_kaiketsu {
		padding: 0em 0em 0.5em;
	}

	.box_kaiketsu {
		margin-bottom: 1.5rem;
	}

	.box_kaiketsu:last-child {
		margin-bottom: 0;
	}

	.box_kaiketsuInr {
		background-color: #ffffff;
		padding: 0.7rem 1rem 1rem;
	}

	.ba_kaiketsu {
		margin-bottom: 0.7rem;
	}

	.says p span.orange {
		font-size: 1.125rem;
	}

	/*--吹き出し設定--*/
	.box_koe {
		margin: 0em 0em 0rem;
		overflow: hidden;
	}

	.faceicon {
		margin-right: -50px;
		width: 50px;
	}

	.says {
		margin: 5px 0 0 65px;
		padding: 1rem 1.2rem;
	}

	/*--吹き出し設定ここまで--*/
	/*----------------------------------
	セクション（ポイント）
	------------------------------------*/
	.sec_point {
		background-size: 300%;
	}

	.secInr_point {
		padding: 4em 0em 0em;
	}

	.txt_30000 {
		width: auto;
		margin: 0 auto;
	}

	.title_point {
		margin: 0 -6%;
	}

	.box_point {
		border: 5px solid #99cc00;
		padding: 1rem 1.5rem 1rem 1.5rem;
		margin-bottom: 1.5rem;
	}

	.box_point:last-of-type {
		margin-bottom: 0rem;
	}

	.nmb_point {
		position: absolute;
		width: 16%;
		left: 0%;
		top: -0.8rem;
	}

	.sub_point {
		width: 86%;
		margin: 0 0 0 auto;
		margin-bottom: 0.7rem;
	}

	/* 分母は528px */
	.sub_point .img_sp1 {
		width: 95.08%;
	}

	.sub_point .img_sp2 {
		width: 87.5%;
	}

	.sub_point .img_sp3 {
		width: 92.42%;
	}

	.sub_point .img_sp4 {
		width: 79.73%;
	}

	.flex_point {
		display: flex;
		flex-direction: column-reverse;
	}

	.txt_point {
		width: auto;
	}

	.flex_point figure {
		width: auto;
		margin-bottom: 0.7rem;
	}

	.arrow {
		display: block;
		width: 50%;
		margin: 0 auto;
	}

	/*----------------------------------
セクション（最安値）
------------------------------------*/
	.sec_cheap {
		background-size: 300%;
	}

	.secInr_cheap {
		padding: 0.5em 0em 13em;
	}

	.box_cheap {
		padding: 0.7rem 0.7rem 0.7rem 0.7rem;
	}

	.meirou {
		margin-bottom: 1rem;
	}

	.box_place {
		padding: 0.7rem 0.7rem 0.7rem 0.7rem;
	}

	.txt_donna {
		width: auto;
		margin-bottom: 0.5rem;
	}

	.grid_place {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 0.5rem;
	}

	/*----------------------------------
セクション（危険）
------------------------------------*/

	.title_kiken {
		margin-left: 0rem;
	}

	.sec_kiken .contents {
		padding: 0 0px;
	}

	.secInr_kiken {
		padding: 1em 0em 1em;
	}

	.title_kiken {
		margin-left: 0rem;
	}

	/*----------------------------------
セクション（プロ）
------------------------------------*/
	.secInr_pro {
		padding: 6em 0em 0em;
	}

	/* divider設定 */
	.custom-shape-divider-top-1694228322 svg {
		height: 50px;
	}

	/* divider設定ここまで */

	.title_pro {
		width: auto;
		margin: 0 -6%;
		margin-bottom: 0.7rem;
	}

	.flex_merit {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.box_merit {
		width: 48%;
		display: flex;
		align-items: flex-start;
		margin-bottom: 0.7rem;

	}

	.txt_merit {
		padding: 1rem 1rem 1rem 1rem;
	}

	/*----------------------------------
セクション（緊急出動）
------------------------------------*/

	.secInr_syutsudou {
		padding: 7.5em 0em 0em;
	}

	.sec_syutsudou .contents {
		padding: 0 0px;
	}

	.box_syutudou {
		padding: 2.5rem 1.5rem 1.5rem;
		background-image:
			url(../img/line_caution.jpg),
			url(../img/line_tora.jpg),
			url(../img/line_tora.jpg);
		background-repeat: repeat-x, repeat-y, repeat-y;
		background-position: left top, right top, left top;
		background-size: 150%, 5%, 5%;
	}

	.title_syutsudou {
		top: -5rem;
	}

	.txt_touboku {
		width: auto;
		margin: 0 auto;
		margin-top: 0rem;
		margin-bottom: 1rem;
	}

	.flex_syutsudou {
		width: auto;
		margin: 0 auto;
		display: block;
	}

	.icon_caution {
		display: none;
	}

	.txt_caution {
		width: 85%;
		margin: 0 auto;
	}

	/*----------------------------------
セクション（お約束）
------------------------------------*/

	.secInr_promise {
		padding: 1em 0em 2.5em;
	}

	.title_promise {
		margin: 0 -6%;
	}

	.box_promise {
		border: 5px solid #99cc00;
		padding: 1rem 1.5rem 1rem 1.5rem;
		margin-bottom: 1.5rem;
	}

	.box_promise:last-of-type {
		margin-bottom: 0rem;
	}

	.nmb_promise {
		position: absolute;
		width: 16%;
		left: 0%;
		top: -0.8rem;
	}

	.sub_promise {
		width: 86%;
		margin: 0 0 0 auto;
		margin-bottom: 0.7rem;
	}

	/* 分母は528px */
	.sub_promise .img_sp1 {
		width: 100%;
	}

	.sub_promise .img_sp2 {
		width: 95.83%;
	}

	.sub_promise .img_sp3 {
		width: 85.04%;
	}

	.sub_promise .img_sp4 {
		width: 100%;
	}

	.flex_promise {
		display: flex;
		flex-direction: column-reverse;
	}

	.txt_promise {
		width: auto;
	}

	.flex_promise figure {
		width: auto;
		margin-bottom: 0.7rem;
	}

	/*----------------------------------------
セクション（よくある質問）
----------------------------------------*/
	.sec_qa {
		background-size: 300%;
	}

	.secInr_qa {
		padding-top: 2em;
		padding-bottom: 6em;
	}

	.title_qa {
		width: auto;
		margin: 0 -6%;
		margin-bottom: 1rem;
	}

	.box_qa {
		border: 5px solid #99cc00;
		padding: 0 1rem 1rem 0.7rem;
		margin-bottom: 1rem;
	}

	.box_qa:last-child {
		margin-bottom: 0rem;
	}

	.txt_q {
		background-position: left 0 top 0.9rem;
		background-size: 30px;
		font-size: 1.2rem;
		font-weight: bold;
		padding: 1rem 0 0.5rem 40px;
		margin-bottom: 0.7rem;
	}

	.txt_a {
		background-position: left 0 top 0;
		background-size: 30px;
		padding: 0rem 0 0rem 40px;
	}

	.sub_msg {
		width: auto;
		margin: 0 -6%;
		margin-top: 3rem;
		margin-bottom: 0.2rem;
	}

	.box_msg {
		background-color: rgb(255, 255, 255, .8);
		padding: 1.5rem 1.5rem 1.5rem;
		box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
	}

	.flex_msg {
		display: flex;
		flex-wrap: wrap;
		flex-direction: column-reverse;
	}

	.img_msg {
		width: 60%;
		margin: 0 auto;
		margin-bottom: 1rem;
	}

	.txt_msg {
		width: auto;
	}

	.sign {
		width: 75%;
        margin: 4% 0 0 auto;
        margin-top: 0.5rem;
	}

	/*----------------------------------------
セクション（エリア）
----------------------------------------*/
	img.area_map {
		width: 90%;
	}

	/*----------------------------------------
セクション（フォーム）
----------------------------------------*/
	.sec_form {
		background-color: #f6fbf5;
	}

	.secInr_form {
		padding-top: 2em;
		padding-bottom: 6em;
	}

	.title_form {
		width: auto;
		margin: 0 -6%;
		margin-bottom: 1rem;
	}

	.txt_form {
		text-align: left;
		margin-bottom: 0.5rem;
	}

	form {
		padding: 1.5rem 1.5rem 1.5rem;
	}

	form dl {
		display: block;
		flex-wrap: wrap;
		width: 100%;
		margin-bottom: 1rem;
	}

	form dl dt {
		width: auto;
		font-size: 1.125rem;
		background-color: #eeeeee;
		padding: 0.5rem;
		margin-bottom: 0.2rem;
	}

	form dl dd {
		width: auto;
		margin-bottom: 1rem;
	}

	input,
	select,
	textarea {
		padding: 12px 12px;
		margin-right: 2px;
		font-size: 1.125rem;
	}

	input[type="text"] {
		width: 92.5%;
	}

	input[type="email"] {
		width: 92.5%;
	}

	input[type="date"] {
		width: 30%;
	}

	textarea {
		width: 92.5%;
	}

	::placeholder {
		color: #ccc;
	}

	.require {
		background-color: #e60012;
		color: #fff;
		padding: 0.2rem 0.3rem 0.1rem;
		border-radius: 5px;
		font-size: 0.9rem;
		margin-left: 0.5rem;
	}

	.touroku_btn {
		display: block;
		width: 80%;
		border-radius: 10px;
		text-align: center;
		margin: 0.5rem auto;
		padding: 0.2rem 0.2rem;
		background-color: #f49500;
		box-shadow: 0 5px 0 rgb(191, 93, 51);
		transition: 0.3s;
	}

	.touroku_btn:hover {
		box-shadow: none;
	}

	.touroku_btn input {
		border: none;
		background-color: inherit;
		color: #fff;
		font-size: 1.5rem;
	}

	/*----------------------------------
	セクション（サンクス）
	------------------------------------*/
	.sec_thanks {
		padding: 1.5em 0em 3em;
	}

	.sec_thanks h2 {
		margin: 0rem 0rem 1.5rem;
		font-size: 1.8rem;
		font-weight: bold;
		text-align: center;
		color: #333;
		line-height: 1.3;
	}


	/*----------------------------------
セクション（プライバシー）
------------------------------------*/
	.sec_privacy {
		padding-top: 1.5em;
		padding-bottom: 3em;
	}

	.sec_privacy h2 {
		margin: 0rem 0rem 1.5rem;
		font-size: 1.8rem;
	}

	.sec_privacy h3 {
		font-size: 1.4rem;
	}

	.indent01 {
		margin-left: 1em;
	}

	.indent02 {
		margin-left: 1.5em;
	}

	/*----------------------------------------
フッター部分
----------------------------------------*/
	.footer {
		padding: 4% 0rem 25%;
	}

	.footer_inr {
		padding: 0 5%;
		display: block;
	}

	.info_footer th {
		vertical-align: top;
	}

	.info_footer td span {
		display: block;
	}

	.credit_footer {
		text-align: center;
		margin-top: 1rem;
	}

	.footer_cta_sp {
		display: block;
		position: fixed;
		width: 100%;
		bottom: 0;
		background-color: #ffffff;
	}

	.btn_footer {
		margin: 0.2rem 0.2rem 0rem;
		width: auto;
	}
}