@charset "utf-8";

/*====================================================================================

		basic layout

====================================================================================*/
/*
body {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 16px;
	font-feature-settings: "palt";
	line-height: 1.8;
}

body * {
	box-sizing: border-box;
}*/

img {
	max-width: 100%;
	vertical-align: bottom;
	image-rendering: -webkit-optimize-contrast;		/* for chrome */
	display: block;
}

a {
	color: #782158;
	border: none;
	text-decoration: none;
	transition: all .3s;
}

a:hover {
	filter: brightness(110%);
}
/*
em {
	font-style: normal;
	font-weight: bold;
}*/

.pc_none {
	display: none;
}

.sp_none {
	display: inline;
}


@media screen and (min-width: 769px){
.back-img {
		max-width: 100%;
		margin: 0 auto;
		background: url("/user_data/lp/ichibou/01/img/main_bg.webp") center top / cover no-repeat;
		background-attachment: fixed;
	}
}


@media screen and (max-width: 768px){
	body {

	}
	.sp_none {
		display: none;
	}

	.pc_none {
		display: inline;
	}

	img {
		max-width: 100%;
		width: auto;
	}

	a.pc_not_tel {
		pointer-events: auto;
		cursor: pointer;
	}
}



/*------------------ clearfix layout ---------------------*/
.clearfix::after {
	content: "";
	display: block;
	clear: both;
}



/*------------------ set variable ---------------------*/
:root {
	--color_red: #811d5e;
}





/*====================================================================================

		#contents layout

====================================================================================*/

/*===============================================================

		#contents .cart_box layout

===============================================================*/

#contents_ichibo{

    width: 100%;
    /* max-width: 1035px; */
    max-width: 640px;
    margin-left: auto;
    margin-right: auto;

}

#contents_ichibo .cart_box {
	padding: 0 0 60px;
	background-color: var(--color_red);
}

#contents_ichibo .cart_box .inner {
	margin: 0 30px;
	padding: 0 20px;
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 12px 12px 16px rgba(0,0,0,0.3);
}

#contents_ichibo .cart_box .btn a {
	display: block;
}

#contents_ichibo .cart_box aside {
	max-width: 627px;
	margin: 40px auto;
	padding: 0 0 20px;
	/*background-color: #F6F3EC;*/
	background: url("/user_data/lp/ichibou/01/img/jpg/bg_01.webp") left bottom / cover #F6F3EC;
}

#contents_ichibo .cart_box aside p.btn_02 {
	max-width: 561px;
	margin: 0 auto;
}


#contents_ichibo .cart_box ul.caution {
	padding: 0 10px 40px;
    text-align: left;
    line-height: normal;
    font-size: 15px;
}

#contents_ichibo .cart_box ul.caption {
	padding: 10px 10px 0;
    text-align: left;
    line-height: normal;
    font-size: 15px;
}

#contents_ichibo .cart_box ul.caution li,
#contents_ichibo .cart_box ul.caption li {
	padding-left: 1em;
	text-indent: -1em;
	color: #503e32;
}

#contents_ichibo .cart_box ul.caution li a {
	text-decoration: underline;
}

#contents_ichibo .cart_box ul.caution li a:hover {
	text-decoration: none;
}


@media screen and (max-width: 768px){
	#contents_ichibo .cart_box {
		padding: 0 0 6vh;
	}

	#contents_ichibo .cart_box .inner {
		margin: 0 5vw;
		padding: 0 4vw;
	}

	#contents_ichibo .cart_box aside {
		max-width: 96%;
		margin: 4vh auto;
		padding: 0 0 2vh;
	}

	#contents_ichibo .cart_box aside p.btn_02 {
		max-width: inherit;
		margin: 0 4vw;
	}

	#contents_ichibo .cart_box ul.caution {
		height: auto;
		padding: 0 2% 4vh;
		font-size: 3vw;
	}

	#contents_ichibo .cart_box ul.caption {
		height: auto;
		padding: 2%;
		font-size: 3vw;
	}
}


/*===============================================================

		#contents_ichibo .trouble layout

===============================================================*/

#contents_ichibo .trouble {
	padding: 0 0 50px;
	background-color: #fff;
}


@media screen and (max-width: 768px){
	#contents_ichibo .trouble {
		padding: 0 0 5vh;
	}

	#contents_ichibo .trouble h2 {
		margin: 0 0 -1px;
	}

	#contents_ichibo .trouble p:not(:last-of-type) {
		margin: 0 0 -1px;
	}
}



/*===============================================================

		#contents_ichibo .solution layout

===============================================================*/

@media screen and (max-width: 768px){
	#contents_ichibo .solution ul li {
		margin: 0 0 -1px;
	}
}



/*===============================================================

		#contents_ichibo .point layout

===============================================================*/

#contents_ichibo .point {
max-width: 100%;
width: 1035px;
}

#contents_ichibo .point h2 {
	position: relative;
}

#contents_ichibo .point h2 img:nth-of-type(1) {
	max-width: 381px;
	display: block;
	position: absolute;
	left: 50%;
	top: -55px;
	transform: translateX(-50%);
}


@media screen and (max-width: 768px){
	/*
	#contents_ichibo .point h2 {
		margin: 0 0 -1px;
	}
	*/
	#contents_ichibo .point h2 img:nth-of-type(1) {
		max-width: inherit;
		width: min(381px, 50%);
		top: -8vw;
	}
}



/*===============================================================

		#contents_ichibo .qanda layout

===============================================================*/

#contents_ichibo .qanda {
	padding: 80px 40px;
	background-color: #eaeaea;
}

#contents_ichibo .qanda h2 {
	max-width: 255px;
	margin: 0 auto 70px;
	text-align: center;
}

#contents_ichibo .qanda dl {
	margin: 35px 0 0;
}

#contents_ichibo .qanda dl dt .on {
	display: none;
}

#contents_ichibo .qanda dl dt.selected .off {
	display: none;
}

#contents_ichibo .qanda dl dt.selected .on {
	display: inline;
}


@media screen and (max-width: 768px){
	#contents_ichibo .qanda {
		padding: 8vh 5vw;
	}

	#contents_ichibo .qanda h2 {
		max-width: inherit;
		width: min(255px, 40%);
		margin: 0 auto 5vh;
	}

	#contents_ichibo .qanda dl {
		margin: 4vw 0 0;
	}
}



/*===============================================================

		#contents_ichibo .flow layout

===============================================================*/

#contents_ichibo .flow {
	padding: 80px 0;
	background-color: #fff;
}


@media screen and (max-width: 768px){
	#contents_ichibo .flow {
		padding: 8vh 0;
	}
}



/*===============================================================

		#contents_ichibo .component layout

===============================================================*/

#contents_ichibo .component {
	padding: 60px 50px;
	background-color: #F1F1F1;
}

#contents_ichibo .component dl {
	margin: 0 0 25px;
	display: flex;
	justify-content: space-between;
	gap: 0 13px;
}

#contents_ichibo .component dl:last-of-type {
	margin: 0 0 40px;
}


@media screen and (max-width: 768px){
	#contents_ichibo .component {
		padding: 5vh 5vw;
	}

	#contents_ichibo .component dl {
		margin: 0 0 3vw;
		gap: 0 2vw;
	}

	#contents_ichibo .component dl:last-of-type {
		margin: 0 0 4vh;
	}
}





/*====================================================================================

		footer layout



footer {
	padding: 20px 30px 260px;
	background-color: #fff;
}

footer ul {
	margin: 0 0 20px;
	display: flex;
	justify-content: space-between;
	gap: 0 1em;
}

footer ul li a {
	text-decoration: underline;
}

footer ul li a:hover {
	text-decoration: none;
}

footer p {
	max-width: 214px;
	margin: 0 auto;
}


@media screen and (max-width: 768px){
	footer {
		padding: 2vw 4vw 30vw;
	}

	footer ul {
		margin: 0 0 1vh;
		gap: 0 2vw;
		font-size: 2.6vw;
	}

	footer p {
		max-width: inherit;
		width: min(214px, 30%);
	}
}


====================================================================================*/


/*====================================================================================

		#float_btn layout adp 231214_JavaScriptのみで編成

====================================================================================*/

        #float_btn {
            position: fixed;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            width: 100%; /* 幅を100%に変更 */
            /* max-width: 1030px; 最大幅を設定 */
            max-width: 640px; /* 最大幅を設定 */
            transition: opacity 0.3s; /* オプション: フェード効果を追加 */
        }

        #float_btn:hover img {
            opacity: 0.7; /* オンマウス時の画像の半透明度を指定 */
        }

        #float_btn a {
            display: block;
        }

        #float_btn img {
            width: 100%;
            height: auto;
        }


/* adp 231214_加筆修正　JavaScriptのみの編成 */
/* Q&A accordion */

    .acmenu .acbtn {
      cursor: pointer;
    }

    .acmenu .cls,
    .acmenu .acbtn.active .opn,
    .acmenu .acctt {
      display: none;
    }

    .acmenu .acbtn.active .cls,
    .acmenu .acbtn.active + .acctt {
      display: inline;
    }
