@charset "UTF-8";
@import url(//fonts.googleapis.com/earlyaccess/notosansjapanese.css); 

/* ===================================================================
CSS information

file name  :style.css

input[type="text"] 
 
=================================================================== */

.tablet,.sp{
	display:none;
}
::marker {
	margin:0;
}

/*-----------------------------------------------

	totop

-----------------------------------------------*/
.totop{
	position: fixed;
	right: 2%;
	bottom: 4rem;
	max-width: 100px;
	width: 8rem;
	min-width: 60px;
	cursor: pointer;
	z-index: 10;
	transition: .3s;
}

.fade_in{
	visibility: visible;
	opacity: 1;
}
.fade_out{
	visibility: hidden;
	opacity: 0;
}

/*-----------------------------------------------

	wrap

-----------------------------------------------*/

#index{
	background-image: url("../img/all_back.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-attachment: fixed;
}

#wrap{
	width:100%;
	max-width:1000px;
	margin:0 auto;
	background:#fff;
	box-shadow: 0px 0px 10px 1px rgba(0,0,0,0.2);
	position: relative;
	overflow: hidden;
}

/*-----------------------------------------------

	common

-----------------------------------------------*/

html{
	font-size: 62.5%;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
}
a{
    transition: .3s;
    text-decoration: none;
}
body{
    box-sizing: border-box;
	font-family: "Zen Maru Gothic", serif, sans-serif;
	font-weight: bold;
    font-feature-settings: "palt";
    color: #333;
    background-color: #fff;
}
.bg{
	background-image: url("../img/bg.webp");
	background-size: cover;
	background-repeat: no-repeat;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
}
.only-pc{
    display: block!important;
}
.only-pc-inline-block{
    display: inline-block!important;
}
.only-pc-tc {
    display: table-cell !important;
}
.only-sp{
    display: none!important;
}
.only-sp-inline-block {
    display: none !important;
}
.only-pc-flex{
    display: flex!important;
}
.only-sp-flex{
    display: none!important;
}
p{
    font-size: max(16px,2.2rem);
    color: #333;
    line-height: 1.8em;
	font-weight: bold;
    letter-spacing: -.5px;
}
small {
    font-size: max(14px,1.6rem);
}
a,img{
    width: 100%;
}
img {
    max-width: max-content;
}
img.blockImg{
	display:block;
	margin:auto;
}
span {
    line-height: 1em;
}
h4 {
    line-height: 1.2em;
}
em {
    font-weight: bold;
    font-style: normal;
}
.text-c {
    text-align: center;
}
.text-l {
    text-align: left;
}
.text-r {
    text-align: right;
}
.text-line {
    text-decoration: underline;
}
.inline-bl {
    display: inline-block;
}
.mark-asterisk {
    position: relative;
    padding-left: 1em;
}
.mark-asterisk::before {
    position: absolute;
    content: "â€»";
    left: 0;
}

.bracket-num {
    padding-left: 2.5em;
}
.bracket-num > li {
	list-style-type: none;
	counter-increment: cnt;
	position: relative;
}
.section__inner {
    max-width: calc(1250px + 8%);
    padding: 0 4%;
    margin: 0 auto;
}
@media screen and (max-width:1260px) {
    html {font-size: .8vw;}
}
@media (min-width: 1000px) {
    a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
    }
    }
@media only screen and (max-width:999px){
	img {
		max-width: 100%;
	}
    a:hover{
        opacity: 1!important;
    }
    html {font-size:1.65vw;}

    .only-pc{
        display: none!important;
    }
    .only-pc-inline-block{
        display: none!important;
    }
    .only-sp-inline-block {
        display: inline-block !important;
    }
    .only-pc-tc {
        display: none !important;
    }
    .only-sp{
        display: block!important;
    }
    .only-pc-flex{
        display: none!important;
    }
    .only-sp-flex{
        display: flex!important;
    }
    p{
        letter-spacing: 0;
    }
}

.flexbox{
	display:flex;
}

h2{
	text-align:center;
}

.btn a{
	color: #fff;
	font-size: 3.6rem;
	border-radius: 10rem;
	position: relative;
	margin: auto;
	padding: 3rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transform: rotate(.05deg);
	transform: rotate(.05deg);
	background: -webkit-gradient(linear,left top,right top,from(#ff8a00),to(#ff4e00));
	background: -webkit-linear-gradient(left,#ff8a00,#ff4e00);
	background: linear-gradient(to right,#ff8a00,#ff4e00);
	max-width: 650px;
	transform: rotate(0.05deg);
}
.btn a:after {
	content: "";
	background: url("../img/btn_arrow.svg") no-repeat;
	background-size: auto;
	background-size: cover;
	width:14px;
	height: 23px;
	position: absolute;
	right: 30px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.CautionaryMote{
	margin:auto 4%;
    font-size: max(16px,1.6rem);
	font-weight: normal;
}
.CautionaryMote li{
	padding-left:1em;
	text-indent:-1em;
	line-height: 1.8em;
}
#cont04 .CautionaryMote li{
	padding-left:2em;
	text-indent:-2em;
}
.price {
	background: #f1f8fd;
	border-radius: 100px;
	margin: 20px auto 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.price__title {
	font-size: 1.8rem;
	background: #0288d1;
	color: #fff;
	padding: 15px 35px;
	display: inline-block;
	border-radius: 100px;
	-webkit-transform: rotate(.05deg);
	transform: rotate(.05deg);
}
.price__price {
	color: #0288d1;
	font-size: 3.6rem;
	font-family: 'Josefin Sans',sans-serif;
	font-weight: 700;
	display: inline-block;
	margin-bottom: -5px;
	margin-left: 20px;
}
.price__tax {
	font-size: 1.6rem;
	color: #0288d1;
}

@media only screen and (max-width:999px){

p,
.CautionaryMote{
    font-size: max(14px,1.6rem);
}

}

/*-----------------------------------------------

	header

-----------------------------------------------*/
#header{
	position: absolute;
	top: -1rem;
	left: 4rem;
	z-index: 10;
	width: 36%;
}
@media only screen and (max-width:999px){
	#header{
		width: 48%;
	}
}

/*-----------------------------------------------

	section

-----------------------------------------------*/
section {
	padding: 0 4rem;
	position: relative;
}
@media only screen and (max-width:999px){
	section {
		padding: 0 4%;
	}
}


/*-----------------------------------------------

	mv

-----------------------------------------------*/
#mv{
	margin: 0 0 -18rem;
	padding: 0;
}
@media only screen and (max-width:999px){
	#mv{
		margin: 0 0 -10rem;
	}
}

/*-----------------------------------------------

	shop

-----------------------------------------------*/
.shop{
	z-index: 1;
	padding: 8rem 0;
}
.shop h2{
	width: 96%;
	margin: auto;
}
.shop__content{
	width: calc(100% - 8rem);
	margin: -6rem auto 0;
	padding: 0 2rem 2rem;
	border-radius: 2rem;
	border: 4px solid #0b8f11;
	border-width: 0 4px 4px;
}
.shop__txt{
	margin: 0 0 3rem 3rem;
    width: 103%;
}
.shop__btn{
	display: block;
	margin: auto;
	text-align: center;
}
.shop__ttl{
	text-align: center;
	display: block;
}
@media only screen and (max-width:999px){
	.shop{
		padding: 4rem 0;
	}
	.shop__content {
		width: 92%;
		margin: -3rem auto 0;
	}
	.shop__txt {
		margin: 0 0 2rem 0;
		width: 113%;
		max-width: 113%;
	}
}
@media only screen and (max-width:400px){
	.shop__txt {
		margin: 2rem 0;
		width: 100%;
	}
	.shop__content {
		margin: -5rem auto 0;
	}
}

/*-----------------------------------------------

	qol

-----------------------------------------------*/
#qol{
	background-image: url("../img/qol_bg_01.webp");
	background-size: contain;
	background-repeat: no-repeat;
	z-index: 1;
}
.qol__content.--01 {
	margin: 0 0 4rem;
}
.qol__content.--01 h2{
	text-align: left;
	position: relative;
	top: -4rem;
	width: 85%;
	margin: 0 0 0 -2rem;
}
.qol__content.--01 p{
	margin: -2rem 0 0;
	max-width: 350px;
	width: 40%;
}
.qol__content.--01 p b{
	background-color: #ffff8c;
}

.qol__content.--02{
	background-image: url("../img/qol_bg_02.webp");
	background-size: cover;
	background-repeat: no-repeat;
	width: calc(100% - 8rem);
	background-color: #fff;
	z-index: 1;
	margin: auto;
	border-radius: 2rem;
	padding: 6rem 6rem 0;
	position: relative;
}
.qol__txt{
	width: 108.9rem;
    height: 63.1rem;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
	aspect-ratio: 1089/631;
	object-fit: cover;
	margin: 0 0 -6rem;
	overflow: visible !important;
}
/* .qol__content.--02 p{
	max-width: 400px;
	margin: 2rem auto 0;
	text-align: center;
} */

.qol__content.--03 h3{
	width: 1295px;
    height: 975px;
    position: relative;
    left: 47%;
    transform: translateX(-50%);
	aspect-ratio: 1295/975;
	object-fit: cover;
	text-align: center;
}
@media only screen and (max-width:999px){
	.qol__content.--01 {
		margin: 0 0 2rem;
	}
	.qol__content.--01 h2{
		top: -2rem;
	}
	.qol__content.--01 p {
		max-width: 370px;
		width: 40%;
	}
	.qol__content.--02{
		width: 100%;
		padding: 4rem;
	}
	.qol__txt{
		height: 40rem;
	}
	.qol__content.--03 h3{
		width: 80rem;
		height: 60rem;
	}
}
@media only screen and (max-width:500px){
	#qol{
		background-image: url("../img/qol_bg_01_sp.webp");
	}
	.qol__content.--01 p {
		width: 100%;
	}
}
@media only screen and (max-width:400px){
	.qol__txt{
		height: 60rem;
		margin: 2rem 0 0;
	}
}

/*-----------------------------------------------

	wish

-----------------------------------------------*/
#wish{
	background-image: url("../img/wish_bg.webp");
	background-size: cover;
	background-repeat: no-repeat;
	margin: -368px 0 -4rem;
	padding: 12rem 0 0;
}
#wish h3{
	text-align: center;
	width: 69%;
	margin: auto;
}
#wish ul{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 4rem 0;
}
#wish ul li{
	width: 50%;
}

@media only screen and (max-width:999px){
	#wish{
	margin: -21rem 0 -4rem;
	padding: 8rem 0 0;
}
}

/*-----------------------------------------------

	power

-----------------------------------------------*/
#power{
	padding: 12rem 8rem 0;
	overflow: hidden;
}
.power__content.--01{
	background-image: url("../img/detail_bg_v.webp");
	background-size: cover;
	background-repeat: no-repeat;
	border-radius: 2rem;
	box-shadow: 0 0 1rem 1rem rgba(0,0,0,.05);
	margin: 0 0 12rem;
	padding: 18rem 4rem 8rem;
	position: relative;
	z-index: 1;
}
.power__content.--01::after{
	content: "";
	background-image: url("../img/arrow.webp");
	background-size: contain;
	background-repeat: no-repeat;
	width: 23.4rem;
	height: 13.8rem;
	position: absolute;
	bottom: -8rem;
	left: 50%;
	transform: translateX(-50%);
}
.power__content.--01 h2{
	text-align: center;
	position: absolute;
	top: -12rem;
	left: 50%;
	transform: translateX(-50%);
	width: 69rem;
}
.power__box.--01{
	margin: 0 0 4rem;
}
.power__content.--01 h3{
	text-align: center;
	margin: 0 auto 3rem;
}
.power__flex{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 3rem;
	margin: 0 0 0 -8rem;
}
.power__flex img{
	width: 46%;
}

.power__box.--02 p{
	text-align: center;
	margin: 0 0 4rem;
}
.power__img{
	display: block;
	margin: auto;
	padding: 0 0 0 8rem;
	width: 100%;
}

.power__content.--02{
	width: 141.5rem;
	height: 118.3rem;
	position: relative;
	top: -4rem;
	left: 55%;
	transform: translateX(-50%);
	aspect-ratio: 1415/1183;
	object-fit: cover;
}

@media only screen and (max-width:999px){
	#power{
		padding: 8rem 4% 0;
	}
	.power__content.--01{
		padding: 12rem 4% 8rem;
	}
	.power__content.--01 h2{
		width: 48rem;
		top: -8rem;
	}
	.power__flex{
		gap: 1.5rem;
		margin: 0 0 0 -6%;
	}
	.power__flex img {
		width: 41%;
	}
	.power__content.--02{
		width: 96rem;
		height: 84rem;
	}
}
@media only screen and (max-width:400px){
	.power__flex{
		flex-direction: column;
		margin: 0;
	}
	.power__flex img {
        width: 60%;
    }
}

/*-----------------------------------------------

	worry

-----------------------------------------------*/
#worry{
	margin: -14rem 0 0;
	padding: 0;
	z-index: 1;
}

/*-----------------------------------------------

	point

-----------------------------------------------*/
#point{
	background-color: #ededeb;
	padding: 14rem 8rem 4rem;
	margin-top: -8rem;
}
#point h3{
	width: 90%;
	text-align: center;
	margin: 0 auto 6rem;
}
.point__link-list{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 2rem 3rem;
}
.point__link-list li{
	width: calc((100% - 3rem) / 2);
}
.point__list{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 6rem;
	margin-top: 12rem;
}
.point__item{
	background-color: #fff;
	border-radius: 2rem;
	padding: 6rem 4rem 4rem;
	position: relative;
}
.point__item::before{
	content: "";
	background-size: contain;
	background-repeat: no-repeat;
	width: 11.1rem;
	height: 12.7rem;
	position: absolute;
	top: -8rem;
	left: 50%;
	transform: translateX(-50%);
}
.point__item:nth-child(1)::before{
	background-image: url("../img/point_check_01.webp");
}
.point__item:nth-child(2)::before{
	background-image: url("../img/point_check_02.webp");
}
.point__item:nth-child(3)::before{
	background-image: url("../img/point_check_03.webp");
}
.point__item:nth-child(4)::before{
	background-image: url("../img/point_check_04.webp");
}

.point__flex{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 3rem;
}
.point__flex.--01{
	gap: 4rem;
}
.point__item:nth-child(2n-1) .point__flex.--01{
	margin: 0 0 2rem -8rem;
}
.point__item:nth-child(2n) .point__flex.--01{
	margin: 0 -8rem 2rem 0;
	flex-direction: row-reverse;
}
.point__flex.--01 > img{
	border-radius: 3rem;
	box-shadow: 0 0 4rem 2rem rgba(0,0,0,.03);
	width: 48%;
}
#point h4{
	margin: 0 0 1rem;
}
.point__ttl{
	color: #fff;
	background-color: #95503d;
	display: inline-block;
	font-size: max(16px,2.8rem);
	padding: 0 2rem;
	border-radius: 2rem 2rem 0 0;
}
.point__box{
	border-radius: 0 2rem 2rem 2rem;
	padding: 4rem 2rem;
	background-image: url("../img/detail_bg_b.webp");
	background-size: cover;
	background-repeat: no-repeat;
	position: relative;
	border: 2px solid #95503d;
}
/* .point__box::after{
	content: "";
	background-image: url("../img/icon_point.webp");
	background-size: contain;
	background-repeat: no-repeat;
	width: 18.2rem;
	height: 8.4rem;
	position: absolute;
	top: -4rem;
	right: -1rem;
} */
.point__box img{
	width: 26%;
}
#point h5{
	margin: 0 0 1rem;
	background-color: #d4370c;
	color: #fff;
	padding: 0 0 .5rem;
	line-height: 2em;
	font-size: max(16px,2.8rem);
	font-weight: bold;
	display: inline;
}
.point__box b{
	color: #d4370c;
	font-size: max(18px,2.6rem);
}
@media only screen and (max-width:999px){
	#point {
		padding: 14rem 4% 4rem;
		margin-top: -8rem;
	}
	.point__link-list {
		gap: 1rem;
	}
	.point__link-list li {
		width: calc((100% - 1rem) / 2);
	}
	.point__item:nth-child(2n) .point__flex.--01 {
		margin: 0 -6% 2rem 0;
	}
	.point__item:nth-child(2n-1) .point__flex.--01 {
		margin: 0 0 2rem -6%;
	}
	.point__flex.--01 {
		gap: 2rem;
	}
	.point__item {
		padding: 6rem 4% 4rem;
	}
	.point__box {
		padding: 2rem 4%;
	}
	.point__flex {
		gap: 2rem;
	}
}
@media only screen and (max-width:400px){
	.point__flex {
		flex-direction: column!important;
		margin: 0 0 3rem!important;
	}
	.point__flex.--01 > img {
		width: 100%;
        aspect-ratio: 5 / 3;
        object-fit: cover;
	}
	.point__box img {
		width: 50%;
	}
	#point h4 {
		width: 80%;
		margin: 2rem 0;
	}
}

/*-----------------------------------------------

	shodo

-----------------------------------------------*/
#shodo{
	background-image: url("../img/shodo_bg.webp");
	background-size: cover;
	background-repeat: no-repeat;
	padding: 6rem 8rem 65rem;
}
.shodo__box{
	background-color: rgba(255,255,255,.7);
	padding: 6rem 4rem;
}
.shodo__box p {
	text-align: center;
}
.shodo__box p span{
	background-color: #ffff8c;
}
@media only screen and (max-width:999px){
	#shodo {
		padding: 4rem 8% 36rem;
	}
	.shodo__box {
		padding: 4rem 4%;
	}
}

/*-----------------------------------------------

	history

-----------------------------------------------*/
#history{
	margin-top: -10rem;
}
#history p b{
	color: #d4370c;
}
.history__content{
	background-image: url("../img/history_bg.webp");
	background-size: cover;
	background-repeat: no-repeat;
	border-radius: 2rem;
	padding: 3rem 6rem 6rem;
	text-align: center;
}
#history h2{
	margin-bottom: 1rem;
}
.history__img{
	margin: 3rem 0;
}
@media only screen and (max-width:999px){
	#history h2{
		width: 63%;
		margin: auto;
	}
	.history__content{
		padding: 2rem 4% 4rem;
	}
}

/*-----------------------------------------------

	power02

-----------------------------------------------*/
#power02{
	padding: 0;
	background-image: url("../img/power02_bg.webp");
	background-size: contain;
	background-repeat: no-repeat;
}
#power02 h2{
	width: 86%;
	margin: 0 auto 6rem;
}
@media only screen and (max-width:999px){
	#power02 h2{
		margin: 0 auto 2rem;
	}
}

/*-----------------------------------------------

	voice

-----------------------------------------------*/
#voice{
	padding: 0;
}
#voice h2{
	padding: 6rem 0 0;
	margin: 0 0 -14rem;
	z-index: 1;
	position: relative;
}
.voice__content{
	background-image: url("../img/detail_bg_v.webp");
	background-size: cover;
	background-repeat: no-repeat;
	padding: 15rem 4rem 8rem;
	position: relative;
}
#voice ul{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	flex-wrap: wrap;
	padding: 4rem 0 6rem;
}
#voice ul li{
	width: calc((100% - 1rem) / 2);
}
@media only screen and (max-width:999px){
	.voice__content {
		padding: 15rem 4% 4rem;
	}
	#voice ul{
		margin: 0;
		padding: 2rem 0 4rem;
	}
	#voice h2 {
		padding: 3rem 0 0;
	}
}
@media only screen and (max-width:500px){
	#voice ul li{
		width: 100%;
	}
}


/*-----------------------------------------------

	voice02

-----------------------------------------------*/
#voice02{
	padding: 4rem 4rem 8rem;
	background-image: url("../img/voice02_bg.webp");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
#voice02 h3{
	margin: 0 0 4rem;
}
#voice02 ul{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6rem;
	margin: 0 0 4rem;
}
#voice02 ol{
	font-size: max(12px,1.4rem);
	color: #333;
}
@media only screen and (max-width:999px){
	#voice02{
		padding: 4rem 4%;
	}
}


/*-----------------------------------------------

	habit

-----------------------------------------------*/
#habit {
	padding: 8rem 4rem 42rem;
	background-image: url("../img/habit_bg.webp");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: bottom;
	background-color: #f0f0ee;
}
#habit h2{
	margin-bottom: 4rem;;
}
#habit p{
	text-align: center;
}
#habit p b{
	background-color: #ffff8c;
}
@media only screen and (max-width:999px){
	#habit {
	padding: 4rem 4% 32rem;
	background-size: contain;
}
}

/*-----------------------------------------------

	reason

-----------------------------------------------*/
#reason{
	background-color: #f8f5e8;
	padding-bottom: 8rem;
	position: relative;
	z-index: 1;
}
#reason::after{
    content: "";
    background-image: url(../img/arrow.webp);
    background-size: contain;
    background-repeat: no-repeat;
    width: 23.4rem;
    height: 13.8rem;
    position: absolute;
    bottom: -6rem;
    left: 50%;
    transform: translateX(-50%);
}
#reason h2{
	position: relative;
	top: -12rem;
	margin-top: 10rem;
}
.reason__mv{
	margin: -16rem auto 4rem;
	display: block;
}
.reason__flex{
	display: flex;
	align-items: flex-start;
	justify-content: center;
	gap: 4rem;
}
.reason__flex img{
	width: 27%;
}
.reason__flex p b{
	color: #d4370c;
}
@media only screen and (max-width:999px){
	#reason h2 {
		top: -9rem;
		margin: 8rem auto 0;
		width: 80%;
	}
}
@media only screen and (max-width:400px){
	#reason{
		padding-bottom: 10rem;
	}
	.reason__flex{
		gap: 1.5rem;
		flex-direction: column;
		align-items: center;
	}
	.reason__flex img{
		width: 35%;
	}
}

/*-----------------------------------------------

	merit

-----------------------------------------------*/
#merit {
	background-color: #f8ece8;
	padding: 8rem 8rem 4rem;
	position: relative;
}
#merit::before {
	content: "";
	background-image: url("../img/merit_rebon.webp");
	background-size: contain;
	background-repeat: no-repeat;
	width: 17.3rem;
	height: 17.9rem;
	position: absolute;
	top: 0;
	left: -.5rem;
}
#merit h3 {
	text-align: center;
	position: relative;
	margin-bottom: 3rem;
}
#merit ol{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	margin-bottom: 4rem;
}
.merit__box{
	overflow: hidden;
	background-color: #fff;
	border-radius: 2rem
}
.merit__box h4{
	background-color: #d4370c;
	text-align: center;
	padding: 3rem;
}
.merit__box ul{
	padding:3rem 4rem;
	display: flex;
	flex-direction: column;
	gap: 2rem;
}
.merit__box ul li p{
	text-indent: -1em;
	padding: 0 0 0 1em;
}
.merit__box ul li p:first-child{
	color: #d4370c;
}
.merit__box ul li p:last-child{
	font-size: max(14px,1.8rem);
}
.merit__box ul li p:last-child b{
	color: #0962c6;
}
@media only screen and (max-width:999px){
	#merit {
		padding: 8rem 4% 4rem;
	}
	#merit::before {
		width: 10rem;
		height: 10rem;
	}
	.merit__box h4 {
		padding: 3rem 4%;
	}
	.merit__box ul {
		padding: 3rem 4%;
	}
}

/*-----------------------------------------------

	spec

-----------------------------------------------*/
#spec{
	padding: 4rem;
}
.spec__box{
	background-color: #ededeb;
	padding: 4rem;
}
.spec__box ul {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}
.spec__box ul li{
	font-size: max(14px,1.8rem);
	color: #333;
	position: relative;
	padding: 0 0 0 1em;
}
.spec__box ul li::before{
	content: "■";
	position: absolute;
	top: 0;
	left: 0;
}
.spec__box ul li.spec__border::before{
	top: 1rem;
	left: 1em;
}
.spec__border{
	padding: 1rem 1rem 1rem 2em!important;
	border: 2px solid;
	margin: 0 0 3rem;
	position: relative;
}
.spec__border span{
	position: absolute;
	bottom: -3rem;
	left: 2em;
}
@media only screen and (max-width:999px){
	#spec{
		padding: 4rem 4%;
	}
	.spec__box {
		padding: 4rem 4%;
	}
}

/*-----------------------------------------------

	footer

-----------------------------------------------*/

.footer__content{
	background-color: #f7e5c1;
	padding: 3rem 4rem 2rem;
	text-align: center;
}
#footer .footer__content p{
	font-size: max(14px,1.4rem);
	color: #80472c;
	margin: auto;
	text-align: left;
	text-align: center;
}
.footer__hover img {
 transition: .3s;
}

.footer__hover img:hover {
  opacity: 0.6;              /* 半透明に */
}

#footer .footer__flex p{
	font-size: max(14px,1.4rem);
	color: #bd9e60;
}
#footer p a{
	font-size: max(16px,1.8rem);
	text-decoration: underline;
	color: #80472c;
	line-height: 2.5em;
}
#footer ul li a{
	font-size: max(14px,1.6rem);
	color: #bd9e60;
}
.footer__flex{
	display: flex;
	justify-content: space-between;
	gap: 2rem;
	padding: 1rem 4rem;
}
.footer__flex ul{
	display: flex;
	justify-content: flex-start;
	gap: 2rem;
}

@media only screen and (max-width:999px){

	.footer__content img {
		width: 80%;
	}
	.footer__flex {
		flex-direction: column;
		padding: 2rem 4%;
	}
	.footer__flex ul {
		flex-direction: column;
		gap: 0;
	}
}
















