@charset "UTF-8";


@font-face {
	font-family: 'NotoSansJP';
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/NotoSansCJKjp-Regular.otf') format('opentype'),
		 url('../fonts/NotoSansCJKjp-Regular.woff') format('woff');
}
@font-face {
	font-family: 'NotoSansJP';
	font-style: normal;
	font-weight: 500;
	src: url('../fonts/NotoSansCJKjp-Medium.otf') format('opentype'),
		 url('../fonts/NotoSansCJKjp-Medium.woff') format('woff');
}
@font-face {
	font-family: 'NotoSansJP';
	font-style: normal;
	font-weight: 700;
	src: url('../fonts/NotoSansCJKjp-Bold.otf') format('opentype'),
		 url('../fonts/NotoSansCJKjp-Bold.woff') format('woff');
}

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap');


@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');



/* ----------------------------------------------------------------------------------------------------
*  基本情報
* --------------------------------------------------------------------------------------------------*/

html,body{
	height:100%;
}

html{
	font-size:62.5%;
	overflow-y: scroll;
}

body{
	-webkit-text-size-adjust: 100%;
}

body, h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, th, td, img, form {
	margin: 0;
	padding: 0;
	border: none;
	line-height: 100%;
	list-style-type: none;
	font-style: normal;
	font-weight: normal;
	font-family: "NotoSansJP","メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
	text-align: left;
	color:#333333;
}

h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, th, td, form, input, textarea, select{
	font-size: 1.6rem;
}

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
			box-sizing: border-box; }

table{
	border-spacing: 0;
}

input, textarea, select{
	vertical-align:middle;
	font-family: "NotoSansJP","メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
	background-color: #fff;
}
button{
	background-color: transparent;
		border: none;
		cursor: pointer;
		outline: none;
		padding: 0;
		appearance: none;
}
input,select,button,textarea{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
	border: none;
	border-radius: 0;
	padding: 0;
}
select::-ms-expand{
	display: none;
}
textarea{
	resize: none;
}
button,input[type="submit"],input[type="button"],select{
	cursor:pointer;
}
input[type="radio"]:checked{
	appearance: none;
}

img{
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

a{
	text-decoration: none;
	color: #333;
	-webkit-transition: opacity .4s ease;
	transition: opacity .4s ease;
}
@media screen and (min-width: 769px) {
	a:hover{
		opacity: 0.8;
	}

	a[href^="tel:"]{
		display: inline-block;
		pointer-events: none;
	}
}

body{
	min-width: 1200px;
}

.wrap{
	max-width: 1120px;
	width: 100%;
	margin: 0 auto;
}

.content{
	overflow: hidden;
}

.en{
	font-family: 'Roboto', sans-serif;
}

@media screen and (min-width: 769px) {
	.sp{
		display: none !important;
	}
}

@media screen and (max-width: 768px) {
	body{
		min-width: initial;
	}

	h1, h2, h3, h4, h5, h6, p, address,
	ul, ol, li, dl, dt, dd,
	table, th, td, form, input, textarea, select{
		font-size: 1.4rem;
	}

	.wrap{
		width: 92%;
		max-width: initial;
	}
	.pc{
		display: none !important;
	}
	.sp{
		display: block;
	}
	.sp_ib{
		display: inline-block;
	}
}




/* ----------------------------------------------------------------------------------------------------
*  ヘッダー
* --------------------------------------------------------------------------------------------------*/
.header_wrap{
	position: absolute;
	z-index: 9999;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	padding: 30px 4% 0;
	pointer-events: none;
}
.header_wrap .logo{
	width: 285px;
}

.header_wrap a{
	pointer-events: auto;
}

.menu_btn{
	position: fixed;
	z-index: 10002;
	top: 0;
	right: 0;
	width: 93px;
	height: 93px;
	cursor: pointer;
	-webkit-transition: all .4s ease;
	transition: all .4s ease;
}
.menu_btn.active{
	background: #31251a;
}
@media screen and (min-width: 769px) {
	.menu_btn:hover{
		opacity: 1;
	}
	.menu_btn:hover span{
		background: #aa171d;
	}
	.menu_btn.active:hover{
		background: #1a130d;
	}
}

.menu_btn span{
	position:absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 34px;
	height: 5px;
	background: #988566;
	transition: all 0.5s ease-out;
}
.menu_btn span:nth-child(1){
	z-index: 2;
	top: 20px;
}
.menu_btn span:nth-child(2){
	z-index: 2;
}
.menu_btn span:nth-child(3){
	z-index: 3;
	bottom: 20px;
}

.menu_btn.active span:nth-child(1){
	top: 0;
	transform: rotate(45deg);
}
.menu_btn.active span:nth-child(2){
	background-color:rgba(255,255,255,0);
}
.menu_btn.active span:nth-child(3){
	bottom: 0;
	transform: rotate(-45deg);
}

.gnav{
	position: fixed;
	z-index: 10001;
	top: 0;
	right: -680px;
	display: block;
	width: 90%;
	max-width: 670px;
	height: 100vh;
	padding-top: 100px;
	background: #493c2f;
	-webkit-transition: all .4s ease-in-out;
	transition: all .4s ease-in-out;
	overflow: hidden;
}
.gnav.active{
	right: 0;
}

.gnav .logo{
	position: absolute;
	top: 30px;
	left: 50px;
	width: 145px;
}

.gnav_wrap{
	display: none;
	width: 100%;
	height: calc(100vh - 100px);
	padding: 20px 50px;
	overflow-y: auto;
}

.gnav li{
	border-top: 1px solid #71675d;
}
.gnav li:last-child{
	border-bottom: 1px solid #71675d;
}

.gnav li a{
	position: relative;
	display: flex;
	align-items: center;
	padding: 25px 50px 25px 20px;
	font-weight: bold;
	font-size: 2.4rem;
	line-height: 1.3;
	-webkit-transition: all .4s ease;
	transition: all .4s ease;
	color: #fff;
}
.gnav li a .min{
	font-size: 1.8rem;
}
@media screen and (min-width: 769px) {
	.gnav li a:hover{
		opacity: 1;
		background: #31251a;
	}
}

.gnav li a::before{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 28px;
	margin: auto;
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	border-right: 4px solid #e60012;
	border-bottom: 4px solid #e60012;
	transform: rotate(-45deg);
}

.gnav.active + .bg{
	position: fixed;
	z-index: 10000;
	top: 0;
	left: 0;
	background: rgba(0,0,0, 0.5);
	width: 100%;
	height: 100vh;
	cursor: pointer;
}

.gnav .shop_btn a{
	display: block;
	width: 100%;
	background: #31251a;
	-webkit-transition: all .4s ease;
	transition: all .4s ease;
}

.gnav .shop_btn .shop_btn_box{
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	height: 90px;
	padding: 0 50px 0 25px;
	font-weight: 500;
	font-size: 2.0rem;
	line-height: 1.3;
	color: #fff;
	-webkit-transition: all .4s ease;
	transition: all .4s ease;
}
.gnav .shop_btn .shop_btn_box::before{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 28px;
	margin: auto;
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	border-right: 4px solid #e60012;
	border-bottom: 4px solid #e60012;
	transform: rotate(45deg);
}

.gnav .shop_btn .shop_btn_box .ico{
	display: block;
	width: 64px;
	height: 100%;
	margin-right: 17px;
	background: url(../img/ico_shop.png) no-repeat center center;
	background-size: 100%;
}
.gnav .shop_btn .btn_btm{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 7px 0;
	background: #1d150d;
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 1.3;
	color: #c6bdb3;
	-webkit-transition: all .4s ease;
	transition: all .4s ease;
}
@media screen and (min-width: 769px) {
	.gnav .shop_btn a:hover{
		opacity: 1;
		background: #1d150d;
	}
	.gnav .shop_btn a:hover .btn_btm{
		background: #0c0805;
	}
}

.fix_btn{
	position: fixed;
	z-index: 9000;
	bottom: 0;
	right: 30px;
	width: 142px;
	-webkit-transition: opacity .4s ease;
	transition: opacity .4s ease;
}
.fix_btn a{
	display: block;
}
.fix_btn .hov{
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	-webkit-transition: opacity .4s ease;
	transition: opacity .4s ease;
}
@media screen and (min-width: 769px) {
	.fix_btn a:hover{
		opacity: 1;
	}
	.fix_btn a:hover .hov{
		opacity: 1;
	}
}


@media screen and (max-width: 768px) {
	.header_wrap{
		padding-top: 20px;
	}
	.header_wrap .logo{
		width: 162px;
	}

	.menu_btn{
		width: 60px;
		height: 60px;
	}

	.menu_btn span{
		width: 30px;
		height: 4px;
	}
	.menu_btn span:nth-child(1){
		top: 17px;
	}
	.menu_btn span:nth-child(3){
		bottom: 17px;
	}

	.gnav{
		right: -101vw;
		width: 100%;
		max-width: 100%;
		padding-top: 75px;
	}

	.gnav .logo{
		top: 20px;
		left: 0;
		right: 0;
		margin: auto;
		width: 107px;
	}

	.gnav_wrap{
		height: calc(100vh - 75px);
		padding: 5px 4% 100px;
	}

	.gnav li a{
		padding: 17px 30px 17px 0;
		font-size: 1.4rem;
	}
	.gnav li a .min{
		font-size: 1.1rem;
	}

	.gnav li a::before{
		right: 12px;
		width: 12px;
		height: 12px;
		border-width: 3px;
		transform: rotate(45deg);
	}

	.gnav .shop_btn .shop_btn_box{
		height: 60px;
		padding-right: 30px;
		font-size: 1.3rem;
	}
	.gnav .shop_btn .shop_btn_box::before{
		right: 15px;
		width: 12px;
		height: 12px;
		border-width: 3px;
		transform: rotate(-45deg);
	}

	.gnav .shop_btn .shop_btn_box .ico{
		width: 33px;
		margin-right: 10px;
	}

	.gnav .shop_btn .btn_btm{
		font-size: 1.0rem;
	}

	.fix_btn{
		right: 10px;
		width: 90px;
		opacity: 0;
		visibility: hidden;
	}
	.fix_btn.on{
		opacity: 1;
		visibility: visible;
	}
}



/* ----------------------------------------------------------------------------------------------------
*  フッター
* --------------------------------------------------------------------------------------------------*/
.footer_wrap .shop_btn a{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 60px 0;
	background: #493c2f;
	text-align: center;
	letter-spacing: 0.015em;
	-webkit-transition: all .4s ease;
	transition: all .4s ease;
}

.footer_wrap .shop_btn .shop_btn_box{
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-weight: 500;
	font-size: 2.4rem;
	line-height: 1.3;
	color: #fff;
	text-align: center;
}
.footer_wrap .shop_btn .shop_btn_box .btn_txt{
	position: relative;
	padding-right: 20px;
}
.footer_wrap .shop_btn .shop_btn_box::before{
	position: absolute;
	bottom: 7px;
	right: 0;
	margin: auto;
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	border-right: 3px solid #e60012;
	border-bottom: 3px solid #e60012;
	transform: rotate(-45deg);
}

.footer_wrap .shop_btn .shop_btn_box .ico{
	display: block;
	width: 77px;
	height: 49px;
	margin-bottom: 15px;
	background: url(../img/ico_shop.png) no-repeat center center;
	background-size: 100%;
}

.footer_wrap .shop_btn .btn_btm{
	margin-top: 8px;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1.3;
	color: #c6bdb3;
	letter-spacing: 0.1em;
	-webkit-transition: all .4s ease;
	transition: all .4s ease;
	text-align: center;
}
@media screen and (min-width: 769px) {
	.footer_wrap .shop_btn a:hover{
		opacity: 1;
		background: #2c231a;
	}
}

.footer_wrap .logo_box{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 222px;
	background: #c0af95;
	border-top: 2px solid #f4eee4;
}

.footer_wrap .logo_box .logo{
	width: 190px;
}


@media screen and (max-width: 768px) {
	.footer_wrap .shop_btn a{
		padding: 35px 0 30px;
	}
	.footer_wrap .shop_btn .shop_btn_box .ico{
		width: 42px;
		height: 28px;
	}
	.footer_wrap .shop_btn .shop_btn_box .btn_txt{
		padding-right: 16px;
	}
	.footer_wrap .shop_btn .shop_btn_box::before{
		bottom: 6px;
		width: 12px;
		height: 12px;
		border-width: 2px;
	}
	.footer_wrap .shop_btn .shop_btn_box .btn_txt{
		font-size: 1.7rem;
	}
	.footer_wrap .shop_btn .btn_btm{
		font-size: 1.1rem;
	}

	.footer_wrap .logo_box{
		height: 155px;
		border-top: 1px solid #fff;
	}

	.footer_wrap .logo_box .logo{
		width: 133px;
	}
}




/* ----------------------------------------------------------------------------------------------------
*  共通
* --------------------------------------------------------------------------------------------------*/
.txt{
	line-height: 1.6;
	letter-spacing: 0.015em;
}

.bold{
	font-weight: bold;
}

.txt_up{
	text-transform: uppercase;
}
.txt_noup{
	text-transform: none;
}

.center{
	text-align: center;
}

.txt_brown{
	color: #573d34;
}
.txt_wh{
	color: #fff;
}
.txt_red{
	color: #e60012;
}

.note{
	padding-left: 1em;
	text-indent: -1em;
}


@media screen and (max-width: 768px) {
	.img img{
		width: 100%;
	}
}



/* ------------------------------
    ttl
------------------------------ */
.sec_ttl{
	padding-top: 80px;
	background: url(../img/sec_ttl_img.png) no-repeat center top;
	background-size: 343px;
	text-align: center;
	font-size: 5.0rem;
	line-height: 1.3;
	font-weight: bold;
	color: #573d34;
}
.sec_ttl .min{
	display: block;
	margin-top: 5px;
	font-size: 2.4rem;
}
.sec_ttl.txt_wh{
	background: url(../img/sec_ttl_img_wh.png) no-repeat center top;
	background-size: 343px;
	color: #fff;
}


@media screen and (max-width: 768px) {
	.sec_ttl{
		padding-top: 45px;
		font-size: 2.8rem;
		background-size: 205px;
	}
	.sec_ttl.txt_wh{
		background-size: 205px;
	}
}



/* ------------------------------
    box
------------------------------ */
.flex{
	display: flex;
	justify-content: space-between;
}


@media screen and (max-width: 768px) {
}



/* ------------------------------
    frame
------------------------------ */
.frame{
	position: absolute;
	z-index: 5;
	left: 0;
	right: 0;
	bottom: -2vw;
	margin: auto;
	display: block;
	width: 100%;
	height: 0;
	padding-top: 8%;
	background: url(../img/frame_img01.svg) no-repeat center bottom;
	background-size: 100%;
}
.frame.frame2{
	background: url(../img/frame_img02.svg) no-repeat center bottom;
	background-size: 100%;
}
.frame.frame3{
	background: url(../img/frame_img03.svg) no-repeat center bottom;
	background-size: 100%;
}


@media screen and (max-width: 768px) {
}




/* ------------------------------
    clearfix
------------------------------ */

.cf:after{
  content: ".";
  display: block;
  height: 0;
  font-size:0;
  clear: both;
  visibility:hidden;
}

.cf {display: inline-block;}

/* Hides from IE Mac */
* html .cf {height: 1%;}
.cf {display:block;}
/* End Hack */





/* ----------------------------------------------------------------------------------------------------
*  style
* --------------------------------------------------------------------------------------------------*/


/* ------------------------------
	.fv
------------------------------ */
.fv{
	position: relative;
	background: #CCAF85 url(../img/fv_bg01.jpg) repeat-x left bottom;
	background-size: auto 100%;
}

.fv::before,
.fv::after{
	position: absolute;
	z-index: 1;
	top: 0;
	content: "";
	display: block;
	width: 50%;
	height: 100%;
}
.fv::before{
	left: 0;
	background: url(../img/fv_bg01.jpg) repeat-x left top;
}
.fv::after{
	right: 0;
	background: url(../img/fv_bg02.jpg) repeat-x right top;
}

.fv .fv_slide{
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	text-align: center;
}

.fv .fv_txt_img{
	position: absolute;
	z-index: 10;
	bottom: -5px;
	right: calc(50% - 30px);
	width: 587px;
}

.fv .fv_slide .slick-slide{
	transition: opacity 1800ms ease-in 0s !important;
}
.fv .fv_slide .slick-slide.slick-current{
	transition: opacity 1000ms ease 0s !important;
}


@media screen and (max-width: 768px) {
	.fv .fv_img{
		width: 100%;
	}
	.fv .fv_txt_img{
		left: 4%;
		width: 284px;
	}
}



/* ------------------------------
	.lead
------------------------------ */
.lead{
	position: relative;
	padding: 100px 0 135px;
	background: #493c2f;
}

.lead .wrap{
	position: relative;
	z-index: 20;
}

.lead .ttl{
	margin-bottom: 30px;
	text-align: center;
	font-size: 3.7rem;
	color: #fff;
	line-height: 1.3;
	font-weight: bold;
	letter-spacing: 0.015em;
}

.lead .txt{
	color: #fff;
	text-align: center;
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 2;
	letter-spacing: 0.015em;
}

.lead .txt + .txt{
	margin-top: 1.5em;
}


@media screen and (max-width: 768px) {
	.lead{
		padding: 70px 0 90px;
	}

	.lead .ttl{
		font-size: 2.6rem;
	}

	.lead .txt{
		font-size: 1.5rem;
	}

	.lead .txt .sp{
		display: inline;
	}
}



/* ------------------------------
	.about
------------------------------ */
.about{
	position: relative;
	padding: 80px 0 135px;
	background: #f4eee4;
}

.about .wrap{
	position: relative;
	z-index: 20;
}

.about .sec_ttl{
	margin-bottom: 40px;
}

.ttl_btm_img{
	width: 450px;
	margin: 0 auto;
}

.about_box{
	width: 100%;
	padding: 30px 20px 20px;
	margin-top: 30px;
	background: #e8dfd0;
	border-radius: 10px;
}

.about_box .txt.center{
	margin-bottom: 30px;
	font-weight: bold;
	font-size: 2.2rem;
	line-height: 1.5;
}
.about_box .txt.center .txt_red{
	font-size: 2.6rem;
}

.about_list{
	display: flex;
	flex-wrap: wrap;
}

.about_list li{
	width: calc(33.3333% - 6px);
	overflow: hidden;
}
.about_list li + li{
	margin-left: 9px;
}
.about_list li:nth-child(3n + 1){
	margin-left: 0;
}
.about_list li:nth-child(n + 4){
	margin-top: 15px;
}

.about_list li .ttl_box{
	display: flex;
	align-items: center;
	background: #fff;
	width: 100%;
	height: 85px;
	border-radius: 6px 6px 0 0;
}

.about_list li .ico_box{
	flex-shrink: 0;
	width: 65px;
	height: 100%;
	background: url(../img/check_ico01.png) no-repeat center center;
	background-size: 36px;
	border-right: 1px solid #ddd3c2;
}

.about_list li .txt_box{
	width: 100%;
	padding: 0 20px;
}

.about_list li .txt{
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
}


@media screen and (max-width: 768px) {
	.about{
		padding: 40px 0 70px;
	}

	.about .sec_ttl{
		margin-bottom: 20px;
	}

	.ttl_btm_img{
		width: 100%;
	}

	.about_box{
		padding: 35px 5%;
	}

	.about_box .txt.center{
		margin-bottom: 20px;
		font-size: 1.6rem;
	}
	.about_box .txt.center .txt_red{
		font-size: 1.6rem;
	}

	.about_list li{
		width: 100%;
	}
	.about_list li + li,
	.about_list li:nth-child(3n + 1),
	.about_list li:nth-child(n + 4){
		margin-top: 9px;
		margin-left: 0;
	}

	.about_list li .ttl_box{
		width: 100%;
		height: 70px;
	}

	.about_list li .ico_box{
		width: 45px;
		background-size: 23px;
	}

	.about_list li .txt_box{
		padding: 0 5%;
	}

	.about_list li .txt{
		font-size: 1.5rem;
	}
}



/* ------------------------------
	.point
------------------------------ */
.point{
	position: relative;
	padding: 80px 0 135px;
	background: #ffffff;
}

.point .sec_ttl{
	margin-bottom: 40px;
}

.point_wrap{
	margin-top: 40px;
}

.point_box{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 380px;
	background: #f9f6f2;
	border-radius: 10px;
}
.point_box + .point_box{
	margin-top: 60px;
}

.point_box:nth-child(odd){
	margin-right: 40px;
}
.point_box:nth-child(even){
	margin-left: 40px;
}

.point_box:nth-child(even) .img_box{
	order: 2;
}
.point_box:nth-child(even) .txt_box{
	order: 1;
}

.point_box .img_box{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50%;
	height: 100%;
	background: #f5f2ed;
	border-radius: 10px 0 0 10px;
}

.point_box .img_box .num{
	position: absolute;
	top: -45px;
	left: -27px;
	width: 138px;
}
.point_box:nth-child(even) .img_box .num{
	left: auto;
	right: -27px;
}

.point_box .img_box .img{
	width: 379px;
}

.point_box .txt_box{
	width: 50%;
	padding: 60px;
}

.point_box .txt_box .txt{
	line-height: 2.2;
}
.point_box .txt_box .note{
	margin-top: 10px;
	font-size: 1.2rem;
	color: #666;
	line-height: 1.5;
}


@media screen and (max-width: 768px) {
	.point{
		padding: 40px 0 70px;
	}

	.point .sec_ttl{
		margin-bottom: 20px;
	}

	.point_wrap{
		margin-top: 50px;
	}

	.point_box{
		flex-direction: column;
		height: auto;
	}
	.point_box + .point_box{
		margin-top: 40px;
	}

	.point_box .img_box{
		display: block;
		width: 100%;
		height: auto;
		padding-bottom: 25px;
	}

	.point_box .txt_box{
		width: 100%;
		padding: 20px 5% 25px;
	}

	.point_box:nth-child(odd){
		margin-right: 0;
	}
	.point_box:nth-child(even){
		margin-left: 0;
	}

	.point_box:nth-child(even) .img_box{
		order: 1;
	}
	.point_box:nth-child(even) .txt_box{
		order: 2;
	}

	.point_box .img_box .num{
		position: relative;
		top: -25px;
		left: 0;
		width: 108px;
		margin: 0 auto;
		text-align: center;
	}
	.point_box:nth-child(even) .img_box .num{
		right: 0;
	}

	.point_box .img_box .img{
		width: 90%;
		margin: -5px auto 0;
	}

	.point_box .txt_box .txt{
		line-height: 1.8;
	}
	.point_box .txt_box .note{
		margin-top: 5px;
		font-size: 1.0rem;
	}
}



/* ------------------------------
	.flow
------------------------------ */
.flow{
	position: relative;
	padding: 80px 0 135px;
	background: #f4eee4;
}

.flow .sec_ttl{
	margin-bottom: 40px;
}

.flow_content{
	margin-top: 30px;
}

.flow_content .img{
	width: 451px;
	margin: 17px auto;
}

.flow_box{
	position: relative;
	width: 100%;
	border: 8px solid #fff;
	background: #fff;
	border-radius: 10px;
}
.flow_box + .flow_box{
	margin-top: 35px;
}

.flow_box::before{
	position: absolute;
	left: 0;
	right: 0;
	bottom: -25px;
	margin: auto;
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 25px solid #fff;
	border-left: 30px solid transparent;
	border-right: 30px solid transparent;
}
.flow_box:nth-child(6)::before,
.flow_box:nth-child(7)::before,
.flow_box:last-child::before{
	display: none;
}

.flow_box .flow_ttl{
	display: flex;
	align-items: center;
	width: 100%;
	padding: 45px 120px 45px 60px;
	background: #fff;
	border-radius: 3px;
}
.flow_box .flow_btn{
	width: 100%;
	background: #fff url(../img/flow_ico01.png) no-repeat;
	background-size: 58px;
	background-position: calc(100% - 50px) center;
	cursor: pointer;
	-webkit-transition: all .4s ease;
	transition: all .4s ease;
}
.flow_box.open .flow_btn{
	border-radius: 3px 3px 0 0;
	background: #f9f6f2 url(../img/flow_ico02.png) no-repeat;
	background-size: 58px;
	background-position: calc(100% - 50px) center;
}
@media screen and (min-width: 769px) {
	.flow_box .flow_btn:hover{
		background-color: #ece7e1;
	}
}

.flow_box .ttl_box .ttl{
	font-size: 3.5rem;
	line-height: 1.3;
	font-weight: bold;
	color: #573d34;
}
.flow_box .ttl_box .ttl .min{
	font-size: 2.2rem;
}

.flow_box .ttl_box .mid_ttl{
	font-size: 2.8rem;
	line-height: 1.3;
	font-weight: bold;
	color: #967e67;
}
.flow_box .ttl_box .mid_ttl .min{
	font-size: 1.8rem;
}

.flow_box .ttl_box .txt{
	margin-top: 5px;
}

.flow_box .num_box{
	flex-shrink: 0;
	width: 70px;
}
.flow_box .num_box .num{
	width: 44px;
}

.flow_box .flow_txt_box{
	display: none;
	padding: 20px 50px 30px;
}

.flow_box .flow_txt_box .flow_txt_inner{
	padding: 30px 0;
}

.flow_box .flow_txt_box > .txt{
	line-height: 2.2;
}

.flow_box .col_box_wrap{
	border-top: 1px solid #f4eee4;
}
.flow_box .col_box_wrap + .col_box_wrap{
	margin-top: 50px;
}

.flow_box .col_box_wrap .ttl{
	padding: 25px 0;
	font-weight: bold;
	text-align: center;
	font-size: 2.4rem;
	line-height: 1.3;
}

.flow_box .col_box{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	max-width: 860px;
	margin: 0 auto;
}

.flow_box .col_box > div{
	width: calc(33.3333% - 24px);
	height: 200px;
	border-radius: 10px;
	background: #e8dfd0;
}
.flow_box .col_box > div + div{
	margin-left: 36px;
}
.flow_box .col_box > div:nth-child(3n + 1){
	margin-left: 0;
}
.flow_box .col_box > div:nth-child(n + 4){
	margin-top: 30px;
}

.flow_box .col_box .txt{
	font-weight: bold;
	text-align: center;
}

.flow_box .col_box .ico{
	width: 100%;
	height: 115px;
	margin-bottom: 15px;
}
.flow_box .col_box .ico1{
	background: url(../img/flow_ico03.png) no-repeat;
	background-position: center calc(100% - 7px);
}
.flow_box .col_box .ico2{
	height: 107px;
	background: url(../img/flow_ico04.png) no-repeat;
	background-position: center calc(100% - 12px);
	margin-bottom: 0;
}
.flow_box .col_box .ico3{
	background: url(../img/flow_ico05.png) no-repeat;
	background-position: center bottom;
}
.flow_box .col_box .ico4{
	background: url(../img/flow_ico06.png) no-repeat;
	background-position: center bottom;
}
.flow_box .col_box .ico5{
	background: url(../img/flow_ico07.png) no-repeat;
	background-position: center bottom;
}
.flow_box .col_box .ico6{
	background: url(../img/flow_ico08.png) no-repeat;
	background-position: center bottom;
}
.flow_box .col_box .ico7{
	background: url(../img/flow_ico09.png) no-repeat;
	background-position: center bottom;
}
.flow_box .col_box .ico8{
	background: url(../img/flow_ico10.png) no-repeat;
	background-position: center bottom;
}
.flow_box .col_box .ico{
	background-size: 121px;
}

.flow_box .flow_list{
	display: flex;
}

.flow_box .flow_list li{
	position: relative;
	flex: 1;
	padding: 25px 20px 20px;
	background: #e8dfd0;
	border-radius: 10px;
}
.flow_box .flow_list.col3 li{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.flow_box .flow_list li + li::before{
	position: absolute;
	top: 0;
	bottom: 0;
	left: -14px;
	margin: auto;
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;
	border-left: 10px solid #a79079;
}
.flow_box .flow_list li + li{
	margin-left: 20px;
}

.flow_box .flow_list.col3 li + li::before{
	left: -17px;
}
.flow_box .flow_list.col3 li + li{
	margin-left: 25px;
}

.flow_box .flow_list li .ttl{
	text-align: center;
	font-weight: bold;
	font-size: 2.0rem;
}
.flow_box .flow_list li .ttl .min{
	font-size: 1.4rem;
}

.flow_box .flow_list li .txt{
	margin-top: 15px;
	font-size: 1.2rem;
	line-height: 1.8;
}
.flow_box .flow_list.col3 li .txt{
	margin-top: 10px;
}


@media screen and (max-width: 768px) {
	.flow{
		padding: 40px 0 70px;
	}

	.flow .sec_ttl{
		margin-bottom: 20px;
	}

	.flow_box{
		border-width: 4px;
	}
	.flow_box::before{
		bottom: -18px;
		border-top: 15px solid #fff;
		border-left: 17px solid transparent;
		border-right: 17px solid transparent;
	}
	.flow_box + .flow_box{
		margin-top: 25px;
	}

	.flow_content .img{
		width: 100%;
		margin: 10px auto;
	}

	.flow_box .flow_ttl{
		align-items: normal;
	}

	.flow_box .num_box{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 62px;
		padding: 20px 0;
		background: #f9f6f2;
	}
	.flow_box .num_box .num{
		width: 22px;
	}

	.flow_box .ttl_box{
		display: flex;
		align-items: center;
		width: 100%;
		padding: 15px 55px 15px 20px;
	}

	.flow_box .ttl_box .ttl{
		font-size: 2.0rem;
	}
	.flow_box .ttl_box .ttl .min{
		display: inline-block;
		font-size: 1.3rem;
	}

	.flow_box .flow_btn{
		padding: 0;
		background-size: 35px;
		background-position: calc(100% - 10px) center;
	}
	.flow_box.open .flow_btn{
		background-size: 35px;
		background-position: calc(100% - 10px) center;
	}

	.flow_box .flow_txt_box{
		padding: 15px 4% 20px;
	}

	.flow_box .ttl_box .mid_ttl{
		font-size: 1.7rem;
		line-height: 1.4;
	}
	.flow_box .ttl_box .mid_ttl .min{
		font-size: 1.3rem;
	}

	.flow_box .flow_txt_box > .txt{
		line-height: 1.8;
		font-size: 1.3rem;
	}

	.flow_box .flow_txt_box .note{
		font-size: 1.2rem;
		margin-top: 5px;
	}

	.flow_box .flow_txt_box .flow_txt_inner{
		padding: 0;
		margin-top: 20px;
	}

	.flow_box .col_box_wrap + .col_box_wrap{
		margin-top: 25px;
	}

	.flow_box .col_box_wrap .ttl{
		padding: 15px 0;
		font-size: 1.7rem;
	}

	.flow_box .col_box > div{
		width: calc(50% - 10px);
		height: 100px;
	}
	.flow_box .col_box > div + div{
		margin-left: 10px;
	}
	.flow_box .col_box > div:nth-child(3n + 1){
		margin-left: 10px;
	}
	.flow_box .col_box > div:nth-child(n + 3),
	.flow_box .col_box > div:nth-child(n + 4){
		margin-top: 10px;
	}
	.flow_box .col_box > div:nth-child(2n + 1){
		margin-left: 0;
	}

	.flow_box .col_box .ico{
		height: 54px;
		margin-bottom: 8px;
		background-size: 60px;
	}
	.flow_box .col_box .ico1{
		background-position: center bottom;
	}
	.flow_box .col_box .ico2{
		height: 42px;
		background-position: center bottom;
	}
	.flow_box .col_box .txt{
		font-size: 1.1rem;
	}

	.flow_box .flow_list{
		flex-direction: column;
		margin-top: 20px;
	}

	.flow_box .flow_list li{
		padding: 15px 6%;
	}
	.flow_box .flow_list li + li,
	.flow_box .flow_list.col3 li + li{
		margin-left: 0;
		margin-top: 15px;
	}
	.flow_box .flow_list li + li::before{
		top: -11px;
		left: 0;
		right: 0;
		bottom: auto;
		border-top: 8px solid #a79079;
		border-left: 12px solid transparent;
		border-right: 12px solid transparent;
		border-bottom: none;
	}

	.flow_box .flow_list li .ttl{
		font-size: 1.3rem;
	}
	.flow_box .flow_list li .txt,
	.flow_box .flow_list.col3 li .txt{
		margin-top: 5px;
		font-size: 1.0rem;
	}
}



/* ------------------------------
	.starter
------------------------------ */
.starter{
	position: relative;
	padding: 80px 0 135px;
	background: #f4eee4;
}

.starter .wrap{
	position: relative;
}

.starter .sec_ttl{
	margin-bottom: 20px;
}

.starter .sec_ttl + .txt{
	font-size: 2.0rem;
	text-align: center;
}

.starter .ttl_btm_img{
	position: absolute;
	top: 60px;
	right: 85px;
	width: 217px;
}

.starter_wrap{
	display: block;
	width: 100%;
	max-width: 980px;
	margin: 65px auto 0;
}

.starter_box{
	display: flex;
	width: 100%;
	padding: 30px 0;
	border-top: 1px solid #d5cbc1;
}

.starter_box .img_box{
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}
.starter_box .img_box .img{
	height: 260px;
}
.starter_box .img_box .img img{
	width: auto;
	height: 100%;
}

.starter_box .img_box .txt{
	position: absolute;
	right: 0;
	bottom: 0;
	font-size: 1.1rem;
	color: #666;
}

.starter_box .txt_box{
	flex-shrink: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 390px;
	margin-left: 30px;
	background: #fff;
}
.starter_box .txt_box::before{
	position: absolute;
	top: 0;
	bottom: 0;
	left: -15px;
	margin: auto;
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 20px solid transparent;
	border-bottom: 20px solid transparent;
	border-right: 20px solid #fff;
}

.starter_box .txt_box_wrap{
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 25px;
}

@media screen and (min-width: 769px) {
	.starter_box:nth-child(even) .img_box{
		order: 2;
	}
	.starter_box:nth-child(even) .txt_box{
		margin-left: 0;
		margin-right: 30px;
	}
	.starter_box:nth-child(even) .txt_box::before{
		left: auto;
		right: -15px;
		border-right: 0;
		border-left: 20px solid #fff;
	}
}

.starter_box .txt_box .ttl{
	font-size: 3.0rem;
	line-height: 1.3;
	font-weight: bold;
}
.starter_box .txt_box .ttl .min{
	font-size: 1.8rem;
}
.starter_box .txt_box .japan{
	display: inline-block;
	padding: 2px 10px;
	margin-top: 8px;
	background: #a3957f;
	border-radius: 20px;
	text-align: center;
	font-size: 1.2rem;
	font-weight: bold;
	color: #fff;
}

.starter_box .txt_box .txt{
	text-align: center;
	font-size: 1.3rem;
}

.starter_box .txt_box .must{
	font-size: 1.4rem;
}

.starter_box .txt_box .price{
	width: 290px;
	padding: 10px 0;
	margin: 15px auto 5px;
	background: #f4eee4;
	text-align: center;
	font-size: 1.8rem;
	line-height: 1.3;
	font-weight: 500;
}
.starter_box .txt_box .price .big{
	font-size: 2.0rem;
}
.starter_box .txt_box .price .yen{
	font-size: 1.6rem;
}
.starter_box .txt_box .price .min{
	font-size: 1.4rem;
}

.starter_box .txt_box .note{
	color: #666;
}

.starter_box .txt_box .starter_btn{
	width: 100%;
	padding: 15px 25px 20px;
	background: #fcfaf7;
	text-align: center;
}
.starter_box .txt_box .starter_btn a{
	position: relative;
	display: inline-block;
	padding: 3px 20px 3px 0;
	line-height: 1.5;
	font-size: 1.4rem;
	font-weight: bold;
	border-bottom: 1px solid #c6c1bb;
}
.starter_box .txt_box .starter_btn a::before{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 5px;
	margin: auto;
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border-right: 2px solid #e60012;
	border-bottom: 2px solid #e60012;
	transform: rotate(-45deg);
}


@media screen and (max-width: 768px) {
	.starter{
		padding: 40px 0 70px;
	}

	.starter .sec_ttl{
		margin-bottom: 20px;
	}

	.starter .sec_ttl + .txt{
		font-size: 1.4rem;
	}

	.starter .ttl_btm_img{
		position: relative;
		top: 0;
		right: 0;
		width: 100%;
		margin-top: 20px;
	}

	.starter_wrap{
		flex-direction: column;
		margin-top: 25px;
	}

	.starter_box{
		flex-direction: column;
		width: 100%;
		padding: 0;
	}
	.starter_box + .starter_box{
		margin-top: 25px;
	}

	.starter_box .img_box{
		height: 170px;
		margin-bottom: 15px;
	}
	.starter_box .img_box .img{
		height: auto;
		padding: 0 15px;
	}
	.starter_box .img_box .img img{
		height: auto;
		max-height: 170px;
	}

	.starter_box .txt_box{
		width: 100%;
		margin-left: 0;
	}
	.starter_box .txt_box::before{
		top: -10px;
		bottom: auto;
		left: 0;
		right: 0;
		border-top: 0;
		border-right: 11px solid transparent;
		border-left: 11px solid transparent;
		border-bottom: 11px solid #fff;
	}

	.starter_box .txt_box_wrap{
		padding: 20px 25px;
	}

	.starter_box .txt_box .must{
		font-size: 1.2rem;
	}

	.starter_box .txt_box .ttl{
		text-align: center;
		font-size: 2.3rem;
	}
	.starter_box .txt_box .ttl .min{
		font-size: 1.2rem;
	}
	.starter_box .txt_box .japan{
		margin: 5px auto 0;
		font-size: 1.0rem;
	}

	.starter_box .txt_box .price{
		width: 100%;
		max-width: 265px;
		font-size: 1.3rem;
	}
	.starter_box .txt_box .price .big{
		font-size: 1.5rem;
	}
	.starter_box .txt_box .price .yen{
		font-size: 1.3rem;
	}
	.starter_box .txt_box .price .min{
		font-size: 1.0rem;
	}

	.starter_box .txt_box .txt{
		font-size: 1.2rem;
	}

	.starter_box .txt_box .note{
		font-size: 1.0rem;
	}

	.starter_box .txt_box .starter_btn{
		padding: 10px 10px 15px;
	}
}



/* ------------------------------
	.eyesight
------------------------------ */
.eyesight{
	position: relative;
	padding: 80px 0 135px;
	background: #493c2f;
}

.eyesight .wrap{
	position: relative;
}

.eyesight .sec_ttl{
	margin-bottom: 20px;
}

.eyesight .sec_ttl + .txt{
	font-size: 1.8rem;
	text-align: center;
}

.eyesight .fukidashi{
	position: absolute;
    top: -40px;
    right: 110px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	width: 170px;
	height: 170px;
	border-radius: 50%;
	background: #f4eee4;
	text-align: center;
	line-height: 1.5;
	font-weight: bold;
}
.eyesight .fukidashi .big{
	font-size: 2.8rem;
	line-height: 1;
}
.eyesight .fukidashi::before{
	position: absolute;
	left: 13px;
	bottom: 13px;
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-bottom: 15px solid #f4eee4;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	transform: rotate(-130deg);
}

.eyesight_box{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin-top: 35px;
}

.eyesight_box dl{
	display: flex;
	align-items: center;
	padding: 8px 0;
	border-top: 1px solid #5c5044;
}
.eyesight_box dl:last-child{
	border-bottom: 1px solid #5c5044;
}

.eyesight_box dt,
.eyesight_box dd{
	font-size: 1.8rem;
}

.eyesight_box dt{
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 105px;
	height: 30px;
	border-radius: 100px;
	background: #f4eee4;
	color: #573d34;
	font-weight: 500;
}

.eyesight_box dd{
	padding: 0 15px;
	color: #fff;
	text-align: center;
}

.eyesight .note{
	margin-top: 10px;
	text-align: center;
	font-size: 1.2rem;
}

.eyesight .btn{
	display: flex;
	justify-content: center;
	margin-top: 20px;
}
.eyesight .btn a{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 340px;
	height: 60px;
	background: #fff;
	border: 4px solid #fff;
	border-radius: 100px;
	text-align: center;
	font-size: 1.8rem;
	color: #493c2f;
	font-weight: bold;
	-webkit-transition: all .4s ease;
	transition: all .4s ease;
}
.eyesight .btn a::before{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 28px;
	margin: auto;
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	border-right: 3px solid #e60012;
	border-bottom: 3px solid #e60012;
	transform: rotate(-45deg);
}
@media screen and (min-width: 769px) {
	.eyesight .btn a:hover{
		opacity: 1;
		background: #ded3c6;
	}
}


@media screen and (max-width: 768px) {
	.eyesight{
		padding: 40px 0 70px;
	}

	.eyesight .sec_ttl{
		margin-bottom: 20px;
	}

	.eyesight .sec_ttl + .txt{
		font-size: 1.4rem;
	}

	.eyesight .fukidashi{
		position: relative;
		top: 0;
		right: 0;
		width: 270px;
		height: 65px;
		margin: 18px auto 0;
		border-radius: 50px;
		font-size: 1.5rem;
	}
	.eyesight .fukidashi .big{
		font-size: 2.6rem;
		line-height: 1;
	}
	.eyesight .fukidashi::before{
		top: -9px;
		left: 0;
		right: 0;
		bottom: auto;
		margin: auto;
		border-bottom: 10px solid #f4eee4;
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		transform: none;
	}

	.eyesight_box{
		margin-top: 25px;
	}

	.eyesight_box dl{
		padding: 6px 0;
	}

	.eyesight_box dt{
		width: 80px;
		height: 25px;
		font-size: 1.3rem;
	}

	.eyesight_box dd{
		font-size: 1.4rem;
	}

	.eyesight .note{
		font-size: 1.0rem;
	}

	.eyesight .btn a{
		width: 265px;
		height: 50px;
		font-size: 1.4rem;
	}
	.eyesight .btn a::before{
		right: 20px;
	}
}



/* ------------------------------
	.voice
------------------------------ */
.voice{
	position: relative;
	padding: 80px 0 110px;
	background: #fff;
}

.voice .wrap{
	max-width: 980px;
}

.voice .sec_ttl{
	margin-bottom: 40px;
}

.voice_box{
	position: relative;
	padding: 45px 50px;
	background: #f9f6f2;
}
.voice_box + .voice_box{
	margin-top: 40px;
}

.voice_box .box_ico{
	position: absolute;
	left: -25px;
	top: -25px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 130px;
	height: 130px;
	border-radius: 50%;
	background: #573d34;
	text-align: center;
	font-size: 2.2rem;
	color: #f4eee4;
	font-weight: bold;
	line-height: 1.3;
	letter-spacing: 0.1em;
}
.voice_box .box_ico .num{
	font-size: 2.4rem;
	color: #fff;
	font-weight: 500;
}

.voice_box .ico{
	position: absolute;
	z-index: 2;
	right: 14px;
	bottom: 0;
	width: 91px;
}

.voice_box .ttl_wrap{
	display: flex;
}

.voice_box .img_box{
	flex-shrink: 0;
}

.voice_box .img{
	width: 184px;
	margin-right: 25px;
}

.voice_box .ttl_box .name{
	display: inline-block;
	padding: 5px 20px;
	background: #e8dfd0;
	border-radius: 30px;
	text-align: center;
	line-height: 1.3;
	font-weight: 500;
}

.voice_box .ttl_box .ttl{
	margin-top: 5px;
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 1.6;
}

.voice_box .ttl_box .tag_box{
	display: flex;
	flex-wrap: wrap;
	margin-top: 5px;
}
.voice_box .ttl_box .tag_box .tag{
	margin-right: 5px;
	margin-top: 5px;
	padding: 5px 20px;
	border: 1px solid #c6bba8;
	border-radius: 2px;
	line-height: 1.3;
	font-weight: 500;
	font-size: 1.4rem;
}

.voice_box .txt_box{
	width: 100%;
	padding: 30px 40px 40px;
	margin-top: 35px;
	background: #fff;
}

.voice_box .txt_box .ttl{
	display: flex;
	justify-content: center;
	margin-bottom: 20px;
	align-items: center;
	font-size: 2.2rem;
	line-height: 1.3;
	font-weight: bold;
	letter-spacing: 0.1em;
}
.voice_box .txt_box .ttl .ttl_ico{
	flex-shrink: 0;
	width: 43px;
	height: 20px;
	margin-right: 10px;
	background: url(../img/voice_ico02.png) no-repeat center center;
	background-size: 100%;
}

.voice_box .txt_box .ttl .line01,
.voice_box .txt_box .ttl .line02{
	width: 1px;
	height: 22px;
	background: #573d34;
}
.voice_box .txt_box .ttl .line01{
	margin-right: 12px;
	transform: rotate(-20deg);
}
.voice_box .txt_box .ttl .line02{
	margin-left: 12px;
	transform: rotate(20deg);
}

.voice_box .txt_box .txt{
	width: 100%;
	padding-bottom: 2px;
	font-size: 1.8rem;
	line-height: 50px;
	border-top: 1px solid #e3ddd1;
	background: repeating-linear-gradient(rgba(255,255,255,0) 0, rgba(255,255,255,0) 49px, #e3ddd1 49px, #e3ddd1 50px);
}


@media screen and (max-width: 768px) {
	.voice{
		padding: 40px 0 60px;
		background: #fff;
	}

	.voice .wrap{
		width: 100%;
		padding: 0 4%;
	}

	.voice .sec_ttl{
		margin-bottom: 35px;
	}

	.voice_box{
		padding: 35px 5% 50px;
	}

	.voice_box .box_ico{
		top: -15px;
		left: -3%;
		width: 100px;
		height: 100px;
		font-size: 1.7rem;
	}
	.voice_box .box_ico .num{
		font-size: 1.9rem;
	}

	.voice_box .ico{
		left: 0;
		right: 0;
		margin: auto;
		width: 72px;
	}

	.voice_box .ttl_wrap{
		flex-direction: column;
		align-items: center;
	}

	.voice_box .ttl_box{
		text-align: center;
	}
	.voice_box .ttl_box .name{
		margin-top: -10px;
		font-size: 1.3rem;
	}

	.voice_box .ttl_box .ttl{
		margin-top: 10px;
		font-size: 1.6rem;
	}

	.voice_box .ttl_box .tag_box .tag{
		padding: 5px 10px;
		font-size: 1.2rem;
	}

	.voice_box .img_box{
		width: 100%;
	}
	.voice_box .img_box .img{
		width: 144px;
		margin: 0 auto;
	}

	.voice_box .txt_box{
		padding: 30px 5% 35px;
	}

	.voice_box .txt_box .ttl{
		font-size: 1.6rem;
		letter-spacing: 0.05em;
	}
	.voice_box .txt_box .ttl .ttl_ico{
		width: 33px;
		height: 15px;
		margin-right: 8px;
	}
	.voice_box .txt_box .ttl .line01,
	.voice_box .txt_box .ttl .line02{
		height: 18px;
	}

	.voice_box .txt_box .txt{
		font-size: 1.4rem;
		line-height: 36px;
		background: repeating-linear-gradient(rgba(255,255,255,0) 0, rgba(255,255,255,0) 35px, #e3ddd1 35px, #e3ddd1 36px);
	}
}