/*----- Common Style -----*/
html {
	height: -webkit-fill-available;
}

body {
	margin: 0;
	padding: 0;
	min-height: 100vh;
	background: repeating-linear-gradient(-45deg,
			/* 角度の指定 */
			#faf3e5,
			/* 色A ... 開始 */
			#faf3e5 3px,
			/* 色A ... 終了 */
			#f6eed5 3px,
			/* 色B ... 開始 */
			#f6eed5 6px
			/* 色B ... 終了 */
		);
	/* mobile viewport bug fix */
	min-height: -webkit-fill-available;
	text-align: justify;
	overflow-x: hidden;
	/* bodyに入れないとはみ出る */
}

@supports(-webkit-touch-callout: none) {

	/* iPhoneの表示のみ指定を上書き */
	#Wrapper {
		height: -webkit-fill-available;
	}
}

#Wrapper {
	text-align: center;
	width: 98vw;
	height: 100%;
	font-size: 21px;
	padding: 5px 0 0;
	margin: 0px;
	font-family: 'Zen Maru Gothic', sans-serif;
	background-repeat: repeat;
	background-size: 100% auto;
}


#Wrapper div.Container img {
	width: 100%;
}

#Wrapper div.Container .brand-logo {
	width: 30%;
	margin: auto;
}

#Wrapper div.Container h1 {
	font-size: 40px;
	margin-bottom: 50px;
	padding: 5px 15px;
}

#Wrapper div.Container h2.nallow {
	font-size: 32px;
	margin: 60px auto 20px auto;
	padding: 10px;
	text-align: center;
	background-image: url("../img/title-bg-nallow.png");
	background-repeat: no-repeat;
	background-position: 10% center;
	background-size: 100% 100%;
}

#Wrapper div.Container h2.balloon {
	font-size: 32px;
	line-height: 32px;
	margin: 60px auto 20px auto;
	padding: 1.1em 0 2em 0;
	text-align: center;
	background-image: url("../img/title-bg-balloon.png");
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: 100% 90%;
}

/* Caption */
#Wrapper .small-txt {
	font-size: 20px;
	line-height: 18px;
}

/* Caption */


#Wrapper .left {
	text-align: left;
}

#Wrapper .center {
	display: block !important;
	width: 100% !important;
	text-align: center !important;
}

/*---------------------------*/
#Wrapper div.product span {
	font-size: 24px;
	margin: 60px auto 20px auto;
	padding: 0;
	text-align: center;
	color: #703017;
}

#Wrapper .product ul {
	margin: 1em auto 1em auto;
	padding-left: 3em;
	text-align: left;
	width: 80%;
}

#Wrapper .product ul li {
	position: relative;
	font-size: 18px;
}

#Wrapper .product ul li::after {
	display: block;
	content: '';
	position: absolute;
	top: .5em;
	left: -1em;
	width: 8px;
	height: 3px;
	border-left: 2px solid #A82818;
	border-bottom: 2px solid #A82818;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#Wrapper div.product h2 {
	font-size: 32px;
	margin: 60px auto 20px auto;
	padding: 0;
	text-align: center;
}


#Wrapper div.product h3:before,
div.product h3:after {
	content: '';
	position: absolute;
	top: 50%;
	display: block;
	width: 60px;
	height: 1px;
	background-color: brown;

}

#Wrapper div.product h3 {
	font-size: 26px;
	position: relative;
	text-align: center;
	display: block;
	box-sizing: border-box;
	padding: 0 80px;
	margin: 10px auto 10px auto !important;
	width: 100%;
	clear: both !important;
}

#Wrapper div.product h3:before {
	left: 0;
}

#Wrapper div.product h3:after {
	right: 0;
}

#Wrapper h3+img {
	width: 100%;
	display: block;
	/* ★ 修正ポイント 3: h3が崩れたことによる回り込みを画像側で止める */
	clear: both;
}

/*---------------------------*/
/*---------------------------*/
#Wrapper div.Container h3,
div.Container h2,
div.Container h1 {
	font-family: 'Kaisei Opti', serif;
	font-weight: 700;
	color: #703017;
}

#Wrapper div.Container {
	width: 940px;
	margin: 80px auto 50px auto;
}

#Wrapper div.Container h2 {
	font-size: 32px;
	line-height: 38px;
	margin: 20px auto 20px auto;
	text-align: center;
}

#Wrapper div.Container p {
	margin: 10px auto;
}

/*----- Common Style -----*/

/*---- 3つ横並び -----*/
#Wrapper .contents-box3 {
	width: 250px;
	text-align: center;
	margin: 0 0 10px 0;
	display: inline-block;
	vertical-align: top;
	/* 上端揃え */
	font-size: 16px;
	line-height: 1.4em;
}

#Wrapper .contents-box3 img {
	width: 100%;
}

#Wrapper div.contents-box3 a {
	width: 100%;
	height: 100%;
	display: block;
}

#Wrapper .contents-box3 div.contents-info {
	margin: 15px 0;
	padding: 0;
}

#Wrapper .contents-box3 div.contents-info span {
	font-family: 'Kaisei Opti', serif;
	color: #703017;
	font-size: 21px;
	display: block;
	margin-bottom: 5px;
	font-weight: bold;
}

#Wrapper .contents-box3_number {
	width: 250px;
	text-align: center;
	margin: 40px 1% 10px 1%;
	padding-bottom: 15px;
	display: inline-block;
	vertical-align: top;
	/* 上端揃え */
	font-size: 21px;
	line-height: 1.4em;
	background-color: #D2B48C;
	border-radius: 1.5em;
}

#Wrapper .contents-box3_number span {
	font-size: 250%;
	font-weight: bold;
	color: #703017;
	position: relative;
	top: -15px;
}

#Wrapper .flexbox {
	display: flex;
	justify-content: center;
}

/*---- ２つ並び -----*/
#Wrapper .contents-box2 {
	width: 390px;
	text-align: center;
	margin: 0px 5px 10px 0;
	display: inline-block;
	vertical-align: top;
	/* 上端揃え */
	font-size: 16px;
	padding: 0;
}

#Wrapper .Container .contents-box2>img {
	transition-duration: 0.3s;
}

#Wrapper .contents-box2 h3 {
	font-size: 140%;
	font-weight: bold;
	padding: 0.25em 0.25em;
	/*上下 左右の余白*/
	margin-bottom: 0.5em;
	background: transparent;
	/*背景透明に*/
	border-left: solid 5px #F9BB15;
	/*左線*/
	line-height: 100%;
}

/*---- 4つ並び -----*/
#Wrapper div.contents-box4 {
	width: 190px;
	text-align: center;
	margin: 0 0px 20px 0;
	display: inline-block;
	vertical-align: top;
	font-size: 16px;
}

#Wrapper div.contents-box4 span {
	font-weight: bold;
	display: block;
	text-align: center;
}

#Wrapper div.contents-box4 img {
	width: 100%;
}

#Wrapper div.contents-box4 img {
	width: 100%;
}

#Wrapper div.contents-box4 div.contents-info p {
	margin: 0;
	padding: 0;
}

#Wrapper div.contents-box4 a {
	width: 100%;
	height: 100%;
	display: block;
}

#Wrapper .hover10 {
	border-radius: 50%;
	transition: all 0.6s ease 0s;
}

#Wrapper .hover10:hover {
	cursor: pointer;
	transform: scale(1.1, 1.1);
	transform: rotateZ(5deg);
	opacity: 1 !important;
}

#Wrapper .hover10:active {
	cursor: pointer;
	transform: scale(1.1, 1.1);
	transform: rotateZ(5deg);
	opacity: 1 !important;
}

/*------ ふわっとホバーボタンオレンジ ------*/
#Wrapper div.Container .btn_orange {
	display: block;
	width: 99%;
	line-height: 2.5em;
	/* 高さ指定のため */
	letter-spacing: 0.15em;
	font-size: 21px;
	/* 高さ指定のため */
	background-color: #F9BB15;
	border: 1px solid #F9BB15;
	text-align: center;
	border-radius: 6px;
	font-weight: 500;
	margin-top: 0.5em;
}

#Wrapper div.Container .btn_orange a {
	width: 100%;
	height: 2.5em;
	font-size: 21px;
	line-height: 2.5em;
	padding: 0;
	border-radius: 6px;
	display: inline-block;
	color: #703018;
	font-weight: bold;
}

#Wrapper div.Container .btn_orange a:hover {
	background-color: #f99215;
	border-radius: 6px;
}

#Wrapper div.Container .btn_orange a:hover::after {
	border-color: transparent transparent transparent #f99215;
	border: 1px solid;
}

/*---- ミニコラムと画像 -----*/
#Wrapper .product-wrap {
	display: flex;
	justify-content: space-between;
}

#Wrapper .product-wrap h3 {
	font-size: 140%;
	font-weight: bold;
	padding: 0.25em 0.25em;
	/*上下 左右の余白*/
	margin-bottom: 0.5em;
	background: transparent;
	/*背景透明に*/
	border-left: solid 5px #F9BB15;
	/*左線*/
	line-height: 100%;
}

#Wrapper .product-info>p {
	width: 100%;
	letter-spacing: -0.025em;
	font-size: 16px;
	line-height: 1.6em;
	text-align: left;
	margin-bottom: 30px;
}

#Wrapper .product-info .button {
	text-align: right;
	width: 380px;
}


#Wrapper .product-image {
	width: 100%;
	margin-right: 25px;
}

/*------ ふわっとホバーボタンホワイト ------*/
#Wrapper div.Container .btn_white {
	display: block;
	width: 99%;
	line-height: 2.5em;
	/* 高さ指定のため */
	letter-spacing: 0.1em;
	font-size: 28px;
	/* 高さ指定のため */
	background-color: #D9CBAD;
	border: 1px solid #703017;
	text-align: center;

	font-weight: 500;
	margin-top: 0.5em;
}

#Wrapper div.Container .btn_white a {
	width: 100%;
	height: 2.5em;
	font-size: 28px;
	line-height: 2.5em;
	padding: 0;

	display: inline-block;
}

#Wrapper div.Container .btn_white a:hover {
	background-color: #E0D0AC;
}

#Wrapper div.Container .btn_white a:hover::after {
	border-color: transparent transparent transparent #FEFEFE;
	border: 1px solid;
}

/*------ ふわっとホバーボタンホワイト ------*/
/*----- お問い合わせリスト関連 -----*/

/* アコーディオンメニュー */
/* ********************
         acc
******************** */
/*ベース*/
#Wrapper .toggle {
	display: none;
	position: relative;
}

#Wrapper .Label {
	/*タイトル*/
	margin: 20px auto;
	padding: 0.25em;
	display: block;
	color: #373737;
	background: #D2B48C;
	border-radius: 1.5em;
	text-align: center;
	font-weight: bold;
	font-size: 140%;
}

#Wrapper .Label::before {
	/*タイトル横の矢印*/
	content: "";
	width: 6px;
	height: 6px;
	border-top: 2px solid #373737;
	border-right: 2px solid #373737;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 3px);
	right: 20px;
	transform: rotate(135deg);
}

#Wrapper .Label,
#Wrapper .content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}

#Wrapper .content {
	/*本文*/
	height: 0;
	margin-bottom: 10px;
	padding: 0;
	overflow: hidden;
	width: 100%;
	display: block;
	margin: 0;
}

#Wrapper .toggle:checked+.Label+.content {
	/*開閉時*/
	height: auto;
	padding: 0;
	transition: all .3s;
}

#Wrapper .toggle:checked+.Label::before {
	transform: rotate(-45deg) !important;
}

#Wrapper .toggle-image {
	width: 12%;
	position: absolute;
	top: -80%;
	left: 10%;
}

#Wrapper .txtbox {
	text-align: left;
	font-size: 18px;
}

#Wrapper .txtbox p {
	margin-bottom: 20px;
}

#Wrapper .txtbox img {
	width: 85%;
	margin: 15px auto;
}


/*----- リスト関連 -----*/
@media screen and (max-width: 1024px) {

	/* スクリーンサイズが1024px以下の場合に適用 */
	/*----- layout -----*/
	body {
		width: 100%;
	}

	#Wrapper {
		width: 100%;
		height: 100%;
		font-size: 16px;
		padding: 0;
		text-align: center;
		background-color: rgba(255, 255, 255, 0.5);
		background-blend-mode: lighten;
	}

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

	/*----------*/
	body #Wrapper div.Container {
		width: 100%;
	}

	body #Wrapper div.Container p {
		width: 100%;
	}

	#Wrapper div.Container img {
		width: 100%;
		padding: 0 auto;
	}

	#Wrapper div.Container .btn_white {
		margin-bottom: 5px;
	}

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

	#Wrapper div.Container h2.balloon {
		font-size: 32px;
		line-height: 32px;
		margin: 50px auto 10px auto;
		padding: 1em 0 2em 0;
		text-align: center;
		background-image: url("../img/title-bg-balloon.png");
		background-repeat: no-repeat;
		background-position: 50% 50%;
	}

	/*---- toggle -----*/
	#Wrapper .toggle-image {
		width: 10%;
		position: absolute;
		left: 5%;
		top: -10%;
	}

	#Wrapper .Label {
		/*タイトル*/
		margin: 5px auto;
	}

	/*---- text -----*/
	#Wrapper h2 {
		font-size: 26px;
	}

	#Wrapper h3 {
		font-size: 24px;
		font-family: 'Kaisei Opti', serif;
		font-weight: 700;
	}

	/*---- 4つ横並び -----*/
	#Wrapper div.contents-box4 {
		width: 45%;
		text-align: center;
		margin: 0 0px 10px 0;
		display: inline-block;
		vertical-align: top;
		font-weight: bold;
		font-size: 16px;
	}

	/*---- 3つ横並び -----*/
	#Wrapper .contents-box3 {
		width: 42%;
		margin: 0 2%;
	}


	/*---- 3つ横並び -----*/
	/*---- ２つ並び -----*/
	#Wrapper .contents-box2 {
		width: 97%;
		height: auto;
	}

	#Wrapper .flexbox {
		margin-bottom: 20px;
	}

	/*---- ２つ並び -----*/
	/*-- product --*/
	#Wrapper .product {
		width: 97%;
	}

	#Wrapper .product-wrap .product-info {
		width: 97%;
		margin: auto;
	}

	#Wrapper .product-wrap {
		display: block;
		width: 100%;
	}

	#Wrapper .product-info>p {
		width: 97%;
		letter-spacing: -0.025em;
		font-size: 16px;
		line-height: 1.6em;
		padding: 2%;
	}


}

/*-- 文字と画像 for SP --*/