@charset "UTF-8";
/* CSS Document */
@media (max-width:768px){
.sp_none {display: none !important;}
}
.mb_5 {margin-bottom: 5px;}
.mb_10{margin-bottom: 10px;}
.mb_15 {margin-bottom: 15px;}
.mb_20{margin-bottom: 20px;}
.mb_25 {margin-bottom: 25px;}
.mb_30{margin-bottom: 30px;}
.mb_35 {margin-bottom: 35px;}
.mb_40{margin-bottom: 40px;}
.mb_45 {margin-bottom: 45px;}
.mb_50{margin-bottom: 50px;}
.mb_55 {margin-bottom: 55px;}
.mb_60{margin-bottom: 60px;}
.mb_65 {margin-bottom: 65px;}
.mb_70{margin-bottom: 70px;}
.mb_75 {margin-bottom: 75px;}
.mb_80{margin-bottom: 80px;}
.mb_85 {margin-bottom: 85px;}
.mb_90{margin-bottom: 90px;}
.mb_100{margin-bottom: 100px;}

.txt_center {text-align: center;}
.container {
	width: 90%;
	margin: 0 auto;
}
.order_btn {
	margin: 10px auto 0;
	width: 270px;
	height: 60px;
	background-color: #e60012;
	border-radius: 30px;
	box-shadow: 1px 1px 10px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all .3s;
	z-index: 10;
}
.order_btn span {
	font-size: 1.4em;
	color: #FFF;
	position: relative;
	display: inline-block;
	padding-right: 30px;
	font-weight: bold;
}
.order_btn span::after {
	content: "";
	position: absolute;
	top: 5px;
	width: 27px;
	height: 27px;
	background: url(../images/icon_cart.png) center center / cover no-repeat;
}
.order_btn:hover {opacity: .7;}
.btn_1 {
	background-color: #493621;
	padding: 20px;
	color: #fff;
	display: inline-block;border-radius: 10px;
	
}
.order_btn1 {
	margin: 10px auto 0;
	width: 270px;
	height: 60px;
	background-color: #000080;
	border-radius: 30px;
	box-shadow: 1px 1px 10px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all .3s;
	z-index: 10;
}
.order_btn1 span {
	font-size: 1.4em;
	color: #FFF;
	position: relative;
	display: inline-block;
	padding-right: 30px;
	font-weight: bold;
}
.order_btn1 span::after {
	content: "";
	position: absolute;
	top: 5px;
	width: 27px;
	height: 27px;
	background: url(../images/icon_cart.png) center center / cover no-repeat;
}
.order_btn1:hover {opacity: .7;}
.btn_1 {
	background-color: #493621;
	padding: 20px;
	color: #fff;
	display: inline-block;border-radius: 10px;
	
}
.heading_1 {
	font-size: 1.2rem;
	color: #493621;
	font-weight: bold;
	padding: 10px;
	text-align: center;
	background-color: #FFFBED;
	border-top: 2px solid #493621;
	border-bottom: 3px solid #493621;
	position: relative;
	margin-bottom: 15px;
}
.heading_1::after{
	content: "";
	position: absolute;
	bottom: -12px;
	left: 49%;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 7.5px 0 7.5px;
	border-color: #493621 transparent transparent transparent;
}
.heading_2 {
	width: 40%;
	margin: 0 auto 10px;
	border: 2px solid #493621;
	position: relative;
	font-size: 1.1rem;
	color: #493621;
	padding: 3px 0;
	text-align: center;
	border-radius: 30px;
}
.heading_2::before {
	position: absolute;
	content: "";
	top: 3px;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #FFFBED;
	z-index: -1;
	border-radius: 30px;
}
.heading_3 {
	font-size: 1.2em;
	text-align: center;
	color: #493621;
	margin-bottom: 15px;
}
.heading_4 {
	font-size: 1.4em;
	text-align: center;
	margin-bottom: 15px;
}
.heading_5 {
	font-size: 1.4em;
	text-align: center;
	border-top: 2px solid #493621;
	border-bottom: 2px solid #493621;
	padding: 10px;
	margin-bottom: 15px;
	color: #493621;
}
.lead {
	font-weight: bold;
	text-align: center;
	color: #493621;
	margin-bottom: 15px;
	font-size: .9rem;
}
.red {color: #e60012;}
.link {color: #493621;}
.dot {position: relative;}
.dot::after {
	position: absolute;
	content: "・";
	top: -15px;
	left: 0;
	color: #e60012;
}
.triangle {
	position: relative;
	padding-left: 10px;
}
.triangle::after{
  width: 0;
  height: 0;
  border-left: 8px solid black;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
	position: absolute;
	content: "";
	top: 1px;
	left: 0;
}

    /* category-nav */


header {
	position: fixed;
	top: 0;
	width: 100%;
	height: 97px;
	background-color: rgba(255, 255, 255, .8);
	z-index: 10;
	transition: all .3s;
	text-align: right;
}
/*header.is-animation { height: 60px;}*/
header .header_in {
	padding: 5px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	box-sizing: border-box;
}
header h1 {
	width: 137px;
	transition: all .3s;
}
/*header.is-animation h1 {width: 115px;}*/
header nav {
	width: 100%;
	display: flex;
	align-items: center;
	order: 1;
	margin-top: 5px;
	font-size: .9rem;
}
header nav ul {
	display: flex;
	justify-content: space-around;
	width: 100%;
}
header nav ul li a {
	color: #493621;
	font-weight: bold;
	position: relative;
}
header nav ul li a::after {
	position: absolute;
	content: "";
	bottom: -5px;
	left: 0;
	height: 2px;
	width: 0;
	background-color: #493621;
	transition: all .3s;
}
header .header_r {font-weight: bold;}
header .header_r .contact_tell {width: 100%;}
header .header_r .contact_tell .time {
	font-size: 0.9rem;
	text-align: center;
}
header .header_r .contact_tell .time span {font-weight: normal;}
header .header_r .contact_tell .tell {
	font-size: 1rem;
	font-family: DIN Alternate;
	line-height: 1em;
	position: relative;
	padding-left: 17px;
	letter-spacing: 2px;
	text-align: center;
	display:block;
}
header .header_r .contact_tell .tell::before {
	content: "";
	position: absolute;
	top: 2px;
	left: 4px;
	width: 15px;
	height: 15px;
	background: url(../images/icon_tel.png) center center no-repeat / cover;
}
header .order_btn span::after {
	top: 4px;
	width: 28px;
	height: 28px;
}
header .order_btn {display: none;}
.bg_yellow {background: linear-gradient(#fff 30%, #FFF 30%);}
.hukidashiArea {
	background: url(../images/hukidashi.png) center / cover no-repeat;
	padding: 25px 0;
	margin-top: 105px;
	position: relative;
}
.hukidashiArea h2 {
	width: 95%;
	margin: 0 auto;
}
.hukidashiArea .priceArea {
	display: flex;
	padding: 10px 10%;
}
.hukidashiArea .priceArea .otoku {
	width: 30%;
	margin-right: 5%;
}
.hukidashiArea .priceArea .price {
	width: 65%;
	text-align: center;
}
.hukidashiArea .priceArea .kome {
	font-size: .7rem;
	color: #FFF;
}
.set4Area {
	margin-top: -5px;
	padding-bottom: 30px;
	background-color: #FFFBED;
}
.set4Area .set4txt {
	background-color: #FFFBED;;
	color: #493621;
	font-size: .6rem;
	text-align: center;
	font-weight: bold;
	padding: 5px 0 0;
}
.set4Area .set4txt span {
	display: inline-block;
	margin: 0 2px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8.7px 5px 0 5px;
	border-color: #FFFBED transparent transparent transparent;
}
.set4Area .set4img {
	width: 100%;
	background-color: #FFFBED;
	margin-top: 5px;
	padding: 10px 0;
}
.set4Area .set4img img {width: 70%;}
.set4Area .set4txtimg {
	width: 80%;
	margin: 15px auto;
}
#service {
	padding-top: 98px;
	margin-top: -98px;
	margin-bottom: 10px;
}
#service .service_container {
	max-width: 90%;
	margin: 0 auto;
	text-align: center;
	font-size: .9rem;
}
#service .service_lead {
	color: #493621;
	margin-bottom: 10px;
}
#service .service_box {margin-bottom: 10px;}
#service .service_text_1 {
	font-weight: bold;
	margin-bottom: 15px;
}
#service .service_text_2 {font-size: .8rem;}

#flow {
	padding: 30px 0;
	position: relative;
}
#flow::after,#flow::before {
	position: absolute;
	content: "";
	width: 100%;
	height: 20%;
	background-color: #FFFBED;
	z-index: -1;
}
#flow::after {top: 0;}
#flow::before {bottom: 0;}
#flow .step {
	background-color: #493621;
	border-radius: 50%;
	width: 285px;
	height: 285px;
	margin: 55px auto 0;
	padding: 40px 10px;
	box-sizing: border-box;
	position: relative;
}
#flow .step:not(:last-child) {margin-bottom: -30px;}
#flow .step dt {
	color: #FFFBED;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 10px;
	text-align: center;
}
#flow .step dd {
	color: #FFF;
	width: 80%;
	margin: 0 auto;
	font-size: .9rem;
}
#flow .step::before {
	background-size: cover;
	position: absolute;
	content: "";
	bottom: 10px;
	left: 50%;
	height: 96px;
}
#flow .step.step1::before {
	background-image: url(../images/icon_step1.png);
	width: 100px;
	margin-left: -50px;
}
#flow .step.step2::before {
	background-image: url(../images/icon_step2.png);
	width: 139px;
	margin-left: -69.5px;
}
#flow .step.step3::before {	
	background-image: url(../images/icon_step3.png);
	width: 99px;
	margin-left: -49.5px;
}
#flow .step::after {
	background-size: cover;
	position: absolute;
	content: "";
	top: -40px;
	left: 50%;
	margin-left: -31px;
	width: 62px;
	height: 66px;
}
#flow .step.step1::after {background-image: url(../images/step1.png);}
#flow .step.step2::after {background-image: url(../images/step2.png);}
#flow .step.step3::after {background-image: url(../images/step3.png);}
#flow .step:last-child{margin-bottom: 30px;}

#point {padding: 30px 0 60px;}
#point .container {margin-bottom: 30px;}
#point dl {
	background-color: #FFFBED;
	padding: 5px 10px 5px 20%;
	margin-bottom: 10px;
	position: relative;
}
#point dl dt {
	font-size: 1.3em;
	font-weight: bold;
	color: #595956;
}
#point dl dt .flag {
	position: absolute;
	width: 17%;
	top: -2px;
	left: 5px;
	background: url(../images/bg_point.png) center center / cover no-repeat;
	font-family: DIN Alternate;
	padding: 28px 0 22px 0;
	box-sizing: border-box;
	display: block;
	text-align: center;
	color: #FFF;
}
#point dl dt .flag2 {
	position: absolute;
	width: 17%;
	top: -2px;
	left: 5px;
	background: url(../images/bg_point2.png) center center / cover no-repeat;
	font-family: DIN Alternate;
	height: 112px;
	box-sizing: border-box;
	display: block;
	text-align: center;
	color: #FFF;
}
#point dl dd {
	font-size: .8rem;
	font-weight: bold;
}

#reason {
	text-align: center;
	padding: 30px 0;
}
#reason .nashi3point {
	width:85%;
	margin: 0 auto 20px;
}
#reason dl dt {
	width: 65%;
	margin: 0 auto 20px;
}
#reason dl dd {
	margin-bottom: 20px;
	font-weight: bold;
}
#reason dl dd img {width: 160px;}
#caution dl {
	margin-bottom: 30px;
	border-bottom: dotted 2px #eee;
}
#caution dl dt {
	color: #493621;
	font-weight: bold;
	font-size: .9rem;
	margin-bottom: 10px;
}
#caution dl dd {
	font-size: .8rem;
	margin-bottom: 20px;
}

#product {
	padding-top: 100px;
	margin-top: -100px;
}
#product .heading_1 {margin-bottom: 20px;}
#product .img {
	width: 70%;
	margin: 0 0 20px 10%;
}
#product .details h3 {
	color: #493621;
	text-align: center;
	margin-bottom: 20px;
}
#product .flexbox {
	padding: 20px 0;
	position: relative;
}
#product .flexbox:not(:last-child)::after {
	position: absolute;
	content: "";
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px;
	background-image: url(../images/details_line.png);
}
#product dl {
	border-bottom: 1px solid #493621;
	padding: 10px 0;
}
#product dl dt {
	font-weight: bold;
}
#greeting {
	padding: 45px 10%;
	background: url(../images/bg_footer_greeting.jpg) 0 0 / cover no-repeat;
}
#greeting p {
	color: #493621;
	margin-bottom: 30px;
}
#greeting .greeting_logo {
	width: 50%;
	margin: 0 auto;
}

footer {
	padding: 10px 0;
	border-top: 5px solid #493621;
	font-size: .7rem;
}
footer .footer_nav {
	display: flex;
	margin-bottom: 10px;
}
footer p {
	margin-bottom: 10px;
}
footer small {
	display: block;
	text-align: center;
}
footer .footer_nav li {
	margin-right: 10px;
}
footer .footer_nav li a:hover {
	text-decoration: underline;
}

a.gotop {
	position: fixed;
	right: 15px;
	bottom: 15px;
	width: 40px;
	height: 40px;
	background-color: #493621;
	border-radius: 20px;
}
a.gotop span {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 10px 17.3px 10px;
	border-color: transparent transparent #FFFBED transparent;
	display: block;
	margin: 10px auto 0;
}

/*フォームページ*/
.formPage {
	font-size: .9rem;
}
.formPage .container {
	margin-bottom: 50px;
}
.formPage header {
	position: relative;
	padding: 10px;
	background-color: #FFFBED;
	height: auto;
	box-sizing: border-box;
}
.formPage .heading_1 {
	margin-bottom: 30px;
}
.formPage .text,.formPage label {
	color: #493621;
}
.formPage label {
	font-weight: bold;
}
.formPage .text {
	margin-bottom: 20px;
}
.formPage .formItem {
	margin-bottom: 30px;
}
.formPage input {
	border: 1px solid #493621;
	padding: 10px;
	width: 100%;
	border-radius: 5px;
	font-size: 1em;
	box-sizing: border-box;
	color: #493621;
}
.formPage textarea {
	border: 1px solid #493621;
	padding: 10px;
	min-height: 10em;
	font-size: 1em;
	width: 100%;
	box-sizing: border-box;
	border-radius: 5px;
}
.formPage .kojinjouhou {
	display: flex;
	flex-wrap: wrap;
}
.formPage .kojinjouhou_link {
	display: inline-block;
	text-decoration: underline;
	margin-bottom: 10px;
}
.formPage .kojinjouhou input {
	width: 25px;
	margin-left: 10px;
	padding: 0;
	height: 25px;
}
.formPage .kojinjouhou .douisite {
	width: 100%;
}
.formPage button {
	width: 220px;
	height: 50px;
	background-color: #493621;
	border: none;
	border-radius: 10px;
	font-size: 1.1rem;
	color: #FFF;
	margin: 0 auto 30px;
	display: block;
}
.formPage .red {
	margin-bottom: 20px;
	font-size: .8rem;
}
.bg_graybox {
	background-color: #eee;
	padding: 15px;
	border-radius: 10px;
	font-size: .7rem;
}







/*--------------------------------------------------------------------------------------------------------
ここからPC
--------------------------------------------------------------------------------------------------------*/
@media (min-width:769px){
	.pc_none {display: none !important;}
	.container {
		max-width: 980px;
	}
	.heading_3 {
		font-size: 2rem;
		letter-spacing: 3px;
		margin-bottom: 30px;
	}
	.txt_center_pc {text-align: center;}
	.dot::after {top: -25px;}

	header .header_in {
		max-width: 984px;
		flex-wrap: nowrap;
		position: relative;
	}
	header h1 {width: 198px;}
	header nav {
		order: 0;
		width: 430px;
		font-size: 0.9rem;
		margin-top: 0;
	}
	header nav ul li:hover a::after {width: 100%;}
	header .header_r .contact_tell {width: 220px;}
	header .header_r .contact_tell .time br {display:none;}
	header .header_r .contact_tell .time span {font-size: .7rem;}
	header .header_r .contact_tell .tell {
		font-size: 2rem;
		letter-spacing: 0;
		margin-left: 5px;
		padding-left: 0px;
	}
	header .header_r .contact_tell .tell::before {
		width: 30px;
		height: 30px;
		top: 8px;
	}
	header .header_r .order_btn {
		display: flex;
		position: absolute;
		right: 65px;
    bottom: -20px;
	}
	header .order_btn {
		width: 180px;
		height: 40px;
	}
	header .order_btn span {
		font-size: 1.5rem;
    padding-right: 20px;
	}
	.hukidashiArea {
		width: 900px;
		height: 346px;
		margin: 97px auto 0;
		box-sizing: border-box;
		padding: 40px 0;
		position: relative;
		z-index: 0;
	}
	.hukidashiArea h2 {width: 582px;}
	.hukidashiArea .priceArea {
		width: 900px;
		margin: 0 auto;
		justify-content: space-between;
	}
	.hukidashiArea .priceArea .otoku {
		width: 145px;
		margin-right: 0;
	}
	.hukidashiArea .priceArea .price {width: 401px;	}
	.hukidashiArea .priceArea .kome {
		font-size: .9rem;
		margin-top: 10px;
	}
	.set4Area {	margin-top: 0;}
	.set4Area .set4_in {background-color: #FFFBED;	}
	.set4Area .set4txt {
		font-size: 1rem;
		max-width: 600px;
		margin: 0 auto;
		position: relative;
		padding: 10px 0px 10px 0;
		background-color: #FFFBED;
	}
	.set4Area .set4txt span {
		border-width: 5px 0 5px 8.7px;
		border-color: transparent transparent transparent #FFFBED;
		margin: 0 5px;
	}
	.set4Area .set4txt span.left {display: none;}
	.set4Area .set4img {
		position: absolute;
		top: -105px;
		right: 30px;
		width: 338px;
		margin: 0;
		background-color: transparent;
	}
	.set4Area .set4img img {width: 90%;}
	.set4Area .set4txtimg {
		max-width: 986px;
		margin: 30px auto;
	}
	.set4Area .set4txtimg img {width: 396px;}
	#service .service_container {width: 700px;}
	.heading_1 {
		font-size: 2.2rem;
		padding: 14px;
		margin-bottom: 30px;
	}
	.heading_1::after{
		bottom: -18px;
		border-width: 15px 14px 0 14px;
	}
	#service .service_lead {margin-bottom: 15px;}
	.heading_2 {
		width: 350px;
		border: 1px solid #493621;
		font-size: 1.8rem;
		padding: 6px 0;
	}
	.heading_2::before {top: 5px;}
	#service .service_box {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
		margin-bottom: 50px;
	}
	#service .kaden4 {order: 3;}
	#service .service_text_1 {
		text-align: center;
		font-size: 1.2rem;
	}
	#service .service_text_2 {
		order: 2;
		font-size: 1rem;
		font-weight: bold;
		margin-left: 50px;
	}
	#flow {padding: 60px 0;}
	#flow::after {height: 225px;	}
	#flow::before {display: none;}
	#flow .step {
		width: 255px;
		height: 255px;
		margin-top: 15px;
	}
	#flow .step dt {font-size: 2rem;}
	#flow .step dd {
		width: 11em;
		text-align: justify;
	}
	.flexbox {
		display: flex;
		justify-content: space-between;
	}
	#flow .flexbox {
		width: 850px;
		margin: 0 auto;
	}
	#flow .step::after {
		width: 72px;
		height: 67px;
		left: -10px;
		top: 50%;
		margin-top: -33px;
	}
	#flow .step:first-child::after {left: 10px;}
	#flow .step.step1::after {background-image: url(../images/step1_pc.png);}
	#flow .step.step2::after {background-image: url(../images/step2_pc.png);}
	#flow .step.step3::after {background-image: url(../images/step3_pc.png);}
	#flow .step:not(:last-child) {margin-bottom: 0;}
	#flow .step::before {bottom: -50px;}
	#point .flexbox {
		flex-wrap: wrap;
		width: 880px;
		margin: 0 auto;
	}
	#point dl {
		width: 432px;
		margin-bottom: 15px;
    box-sizing: border-box;
		border-radius: 5px;
		padding: 10px 10px 10px 10%
	}
	#point dl dt {font-size: 2rem;}
	#point dl dt .flag {
		width: 72px;
		height: 112px;
		padding: 34px 0 0;
	}
	#point dl dt .flag2 {
		width: 72px;
		height: 112px;
		padding: 34px 0 0;
	}
	#point dl dd {font-size: .9rem;}
	#reason .nashi3point {
		width: 650px;
		margin-bottom: 50px;
	}
	#reason .flexbox {
		width: 860px;
		margin: 0 auto;
	}
	.heading_4 {
		font-size: 2.3rem;
		color: #493621;
	}
	#reason dl dt {width: 275px;}
	#caution {
		width: 650px;
		margin: 0 auto;
		padding: 80px 0;
	}
	#caution .container {width: 600px;}
	#caution dl dt {font-size: 1rem;}
	#caution dl dd{font-size: .9rem;}
	#caution .link {
		font-weight: bold;
		font-size: 1.1rem;
	}
	
	#product .container {width: 670px;}
	#product .img {
		width: 308px;
		margin: 0;
	}
	#product .details {width: 40%;}
	#product .flexbox {padding: 50px 0;}
	
	#greeting {padding: 105px 0;}
	#greeting .container {
		width: 600px;
		margin: 0 auto;
	}
	#greeting p {font-size: 1.2rem;}
	#greeting .greeting_logo {
		width: 266px;
	}
	
	footer .flexbox {align-items: flex-end;}
	footer p {margin-bottom: 0;}
	
	.formPage {font-size: 1rem;}
	.formPage header .logo {
		max-width: 980px;
		margin: 0 auto;
	}
	.formPage .container {
		max-width: 700px;
		margin: 0 auto 100px;
	}
	.formPage .red {
		font-size: .9rem;
	}
	.bg_graybox {
		font-size: .8rem;
		padding: 30px;
	}
	.formPage button {
		cursor: pointer;
	}
	.formPage .flexbox .formItem {
		width:49%;
	}







}
