@charset "utf-8";

.thanksbox {
	font-size: 20px;
	text-align: center;
	line-height: 2;
}

/* top
----------------------------------------------- */
.toppage {
	padding-top: 104px;
}

.toppage #header .headerin {
	background: #fff;
}

.toppage #header .headerlogo a {
	color: #000;
}

.toppage .gnavi li a {
	color: #000;
}

.topnews {
	background: #fff;
	padding: 65px 20px 50px;
}

.topnews .topnewsin {
	max-width: 840px;
	margin: 0 auto;
}

.topnews .topnewshd {
	text-align: center;
	font-size: 32px;
	line-height: 1.2;
	font-weight: 600;
	margin-bottom: 60px;
}

.topnews .topnewslist li {
	border-bottom: 1px #707070 solid;
	padding: 15px 0;
	display: flex;
	align-items: flex-start;
}

.topnews .topnewsdate {
	width: 140px;
	text-align: center;
	color: #fff;
	font-size: 21px;
	background: #333;
	margin-right: 30px;
}

.topnews .topnewslist a {
	flex: 1;
	color: #000;
	font-size: 21px;
}

.topnews .topnewslink {
	text-align: center;
	margin-top: 40px;
}

.topnews .topnewslink a {
	display: inline-block;
	background: url("../img/top/arrow_top.png") 0 center no-repeat;
	padding-left: 20px;
	font-size: 16px;
	color: #000;
}

.topplan {
	background: url("../img/top/bg_topplan.png") right bottom no-repeat;
	background-size: cover;
	padding: 120px 20px;
}

.topplan .topplanin {
	max-width: 950px;
	margin: 0 auto;
	border: 1px #b89b75 solid;
	padding: 35px 65px 40px;
	background: #fff;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
}

.topplan .topplanbox+.topplanbox {
	margin-top: 30px;
}

.topplan .topplanhd {
	text-align: center;
	font-size: 21px;
	font-weight: 700;
	color: #b89b75;
	margin-bottom: 15px;
}

.topplan .topplantxt {
	font-size: 16px;
}

@media (max-width: 1024px) {}

@media (max-width: 767px) {
	.topnews {
		padding: 50px 20px 30px;
	}

	.topnews .topnewshd {
		font-size: 24px;
		margin-bottom: 15px;
	}

	.topnews .topnewslist li {
		padding: 15px 0;
		display: block;
	}

	.topnews .topnewsdate {
		width: 110px;
		font-size: 16px;
		display: inline-block;
		margin: 0 0 10px;
	}

	.topnews .topnewslist a {
		display: block;
		font-size: 16px;
	}

	.topnews .topnewslink {
		margin-top: 30px;
	}

	.topplan {
		background: none;
		padding: 30px 20px 60px;
	}

	.topplan .topplanin {
		padding: 35px 20px 40px;
	}

	.topplan .topplanbox+.topplanbox {
		margin-top: 40px;
	}

	.topplan .topplanhd {
		text-align: left;
		font-size: 18px;
		margin-bottom: 10px;
	}
}

.detailslook {
	position: relative;
}

.imglarslick a,
.imglarslick .larimgall {
	display: block;
	width: 100%;
	height: calc(100vh - 104px);
}

.imglarslick .larimgall {
	background: url("../img/top/img_slider_all.png") center center no-repeat;
	background-size: cover;
	position: relative;
}

.imglarslick .larimgallin {
	position: absolute;
	left: 0;
	top: 10%;
	width: 100%;
	padding: 0 20px;
	z-index: 2;
}

.imglarslick .larimgalltxt {
	max-width: 1100px;
	margin: 0 auto;
	text-align: right;
	color: #fff;
}

.imglarslick .larimgalltxt img {
	display: inline-block;
}

.imglarslick .larimg01 {
	background: url("../img/top/img_slider01_l.jpg") center center no-repeat;
	background-size: cover;
}

.imglarslick .larimg02 {
	background: url("../img/top/img_slider02_l.jpg") center center no-repeat;
	background-size: cover;
}

.imglarslick .larimg03 {
	background: url("../img/top/img_slider03_l.jpg") center center no-repeat;
	background-size: cover;
}

.imglarslick .larimg04 {
	background: url("../img/top/img_slider04_l.jpg") center center no-repeat;
	background-size: cover;
}

.imglarslick .larimg05 {
	background: url("../img/top/img_slider05_l.jpg") center center no-repeat;
	background-size: cover;
}

.mainnavi {
	position: absolute;
	left: 0;
	bottom: 0;
	background: #333333cc;
	padding: 30px 20px 50px;
	display: flex;
	justify-content: center;
	width: 100%;
	z-index: 3;
}

.mainnavi li {
	margin: 0 13px;
}

.mainnavi li a {
	display: block;
	color: #fff;
}

.mainnaviimg {
	margin-bottom: 8px;
}

.mainnaviarea {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.mainnaviarrow {
	background: #000;
	width: 46px;
	height: 46px;
	margin-left: 5px;
	align-self: flex-start;
	position: relative;
}

.mainnaviarrow:before {
	position: absolute;
	content: "";
	width: 12px;
	height: 12px;
	left: 13px;
	top: 15px;
	border-bottom: 2px #ccc solid;
	border-right: 2px #ccc solid;
	transform: rotate(-45deg);
	z-index: 2;
}

.mainnavicont {
	flex: 1;
	line-height: 1.3;
	font-size: 16px;
}

.mainnavibig {
	display: block;
	font-size: 21px;
	font-weight: 600;
}


@media (max-width: 1024px) {
	.mainnavi {
		padding: 30px 20px;
	}

	.mainnavi li {
		margin: 0 5px;
	}

	.mainnavicont {
		font-size: 12px;
	}

	.mainnavibig {
		font-size: 16px;
	}
}

@media (max-width: 767px) {

	.imglarslick a,
	.imglarslick .larimgall {
		height: 439px;
	}

	.imglarslick .larimgall {
		background: url("../img/top/mainsp01.jpg") center center no-repeat;
		background-size: cover;
	}

	.imglarslick .larimgallin {
		position: absolute;
		left: 0;
		top: 10%;
		width: 100%;
		padding: 0 20px;
		z-index: 2;
	}

	.imglarslick .larimgalltxt {
		max-width: 1100px;
		margin: 0 auto;
		text-align: right;
		color: #fff;
	}

	.imglarslick .larimg01 {
		background: url("../img/top/mainsp02.jpg") center center no-repeat;
		background-size: cover;
	}

	.imglarslick .larimg02 {
		background: url("../img/top/mainsp03.jpg") center center no-repeat;
		background-size: cover;
	}

	.imglarslick .larimg03 {
		background: url("../img/top/mainsp04.jpg") center center no-repeat;
		background-size: cover;
	}

	.imglarslick .larimg04 {
		background: url("../img/top/mainsp05.jpg") center center no-repeat;
		background-size: cover;
	}

	.mainnavi {
		position: relative;
		left: auto;
		bottom: auto;
		background: #333333cc;
		padding: 35px 0 60px;
		display: block;
	}

	.mainnavi li {
		max-width: 300px;
		margin: 0 auto;
	}

	.mainnavi li+li {
		margin-top: 30px;
	}

	.mainnavicont {
		font-size: 16px;
	}

	.mainnavibig {
		font-size: 21px;
	}
}


/* introduction
----------------------------------------------- */
.introteaser {
	background: url("../img/introduction/teaser_intro.jpg") center center no-repeat;
	background-size: cover;
}

.introarea {
	padding: 45px 20px 120px;
}

.introkaitei {
	max-width: 950px;
	margin: 0 auto 100px;
	border: 1px #b89b75 solid;
	padding: 35px 65px 40px;
	background: #fff;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
}

.introkaitei h2 {
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 1em;
}

.introkaitei p {
	margin-bottom: 1em;
	text-align: justify;
}

.introkaitei .right {
	text-align: right;
}

.introdet {
	text-align: center;
	font-size: 28px;
	font-weight: 600;
	margin-bottom: 80px;
}

.introbtn {
	max-width: 440px;
	margin: 0 auto 80px;
}

.introbtn.fix {
	position: fixed;
	top: 130px;
	right: 20px;
	width: 280px;
	max-width: 90%;
}

.introbtn a {
	display: flex;
	width: 100%;
	height: 90px;
	justify-content: center;
	align-items: center;
	background: #de986a;
	font-weight: 700;
	color: #333;
	font-size: 21px;
	border: 1px #000 solid;
	position: relative;
}

.introbtn a:before {
	position: absolute;
	content: "";
	border-right: 2px #000 solid;
	border-bottom: 2px #000 solid;
	width: 15px;
	height: 15px;
	right: 35px;
	top: 50%;
	margin-top: -8px;
	transform: rotate(-45deg);
	z-index: 2;
}

.introbtn.fix a {
	font-size: 18px;
	height: 64px;
}

.introbtn.fix a:before {
	right: 18px;
}

.introteltxt {
	text-align: center;
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 20px;
}

.introtelnum {
	text-align: center;
	font-size: 44px;
	color: #de986a;
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: 130px;
}

.introlist {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	margin-bottom: 70px;
}

.introlist li {
	width: 31.25%;
}

.introlist .introlistin {
	padding: 30px 0 0;
}

.introlist .introlisttit {
	text-align: center;
	font-size: 32px;
	margin-bottom: 35px;
}

.introlist .introlisttxt {
	font-size: 18px;
}

.introcheck {
	background: #de986a33;
	max-width: 600px;
	height: 136px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	font-weight: 700;
	margin: 0 auto 180px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
}

.introcheck table td {
	padding: 0 5px;
}

.inforhd {
	text-align: center;
	font-size: 32px;
	margin-bottom: 30px;
}

.infordet {
	text-align: center;
	font-size: 18px;
	margin-bottom: 60px;
}

.informap {
	text-align: center;
	margin-bottom: 30px;
}

.infortit {
	text-align: center;
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 20px;
}

.infordot {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	max-width: 785px;
	margin: 0 auto;
}

.infordot li {
	font-size: 18px;
}

.introtaisaku {
	background-color: #FFF6F1;
	border: solid 1px #DE986A;
	border-radius: 10px;
	padding: 65px 5%;
	max-width: 1280px;
	margin: auto;
}

.taisaku_lead {
	margin-bottom: 50px;

}

.taisaku_mds {
	background-color: #DE986A;
	color: #FFF;
	font-weight: bold;
	font-size: 24px;
	margin-bottom: 1em;
	padding: 0.2em 1em;
}

.taisaku_title {
	color: #DE986A;
	font-weight: bold;
	font-size: 28px;
	margin-bottom: 1em;
	text-align: justify;
}

.taisaku_txt {
	font-weight: bold;
	font-size: 18px;
	text-align: justify;
}

.taisaku_koumoku_list {
	margin-bottom: 50px;
}

.taisaku_koumoku {
	display: flex;
	border: solid 1px #DE986A;
	align-items: center;
	margin-bottom: 10px;
	background-color: #FFF;
}

.taisaku_icon {
	width: 90px;
	height: 90px;
	background-color: #DE986A;
	display: flex;
	justify-content: center;
	align-items: center;
}

.taisaku_naiyou {
	color: #DE986A;
	font-weight: bold;
	font-size: 28px;
	padding-left: 1em;
}

.taisaku_list {
	display: flex;
	justify-content: space-between;
}

.taisaku_list_item {
	width: 30%;
}

.taisaku_list_item img {
	width: 100%;
	height: auto;
	line-height: 1.8;
}

@media (max-width: 767px) {
	.introarea {
		padding: 25px 20px 55px;
	}

	.introkaitei {
		padding: 35px 20px;
	}

	.introkaitei h2 {
		font-size: 16px;
	}

	.introdet {
		font-size: 14px;
		margin-bottom: 35px;
	}

	.introbtn {
		margin: 0 auto 30px;
	}

	.introbtn.fix {
		position: fixed;
		bottom: 10px;
		right: 5%;
		left: 5%;
		top: auto;
		width: 90%;
		margin-bottom: 0;
	}

	.introbtn a {
		height: 60px;
		font-size: 16px;
	}

	.introbtn a:before {
		width: 10px;
		height: 10px;
		right: 20px;
		top: 50%;
		margin-top: -5px;
	}

	.introteltxt {
		font-size: 18px;
		font-weight: 700;
		margin-bottom: 5px;
	}

	.introtelnum {
		font-size: 28px;
		margin-bottom: 50px;
	}

	.introlist {
		display: block;
		margin-bottom: 40px;
	}

	.introlist li {
		width: auto;
		margin: 0 -20px;
	}

	.introlist li+li {
		margin-top: 40px;
	}

	.introlist li img {
		width: 100%;
	}

	.introlist .introlistin {
		padding: 10px 20px 0;
	}

	.introlist .introlisttit {
		font-size: 21px;
		margin-bottom: 15px;
	}

	.introlist .introlisttxt {
		font-size: 16px;
	}

	.introcheck {
		height: 80px;
		font-size: 16px;
		margin: 0 auto 70px;
	}

	.inforhd {
		font-size: 18px;
		margin-bottom: 20px;
	}

	.infordet {
		font-size: 14px;
		margin-bottom: 20px;
	}

	.informap {
		text-align: center;
		margin: 0 0 30px
	}

	.informap img {
		width: 100%;
	}

	.infortit {
		font-size: 16px;
		margin-bottom: 30px;
	}

	.infordot {
		display: block;
	}

	.infordot li {
		font-size: 16px;
	}

	.introtaisaku {
		padding: 30px 2.5%;
	}

	.taisaku_lead {
		margin-bottom: 30px;
	}

	.taisaku_mds {
		font-size: 16px;
		margin-bottom: 1em;
	}

	.taisaku_title {
		font-size: 18px;
	}

	.taisaku_txt {
		font-size: 14px;
	}

	.taisaku_koumoku_list {
		margin-bottom: 25px;
	}

	.taisaku_koumoku {
		margin-bottom: 5px;
	}

	.taisaku_icon {
		width: 20%;
	}

	.taisaku_icon img {
		max-width: 90%;
		height: auto;
	}

	.taisaku_naiyou {
		width: 80%;
		font-size: 16px;
	}

	.taisaku_list {
		display: block;
	}

	.taisaku_list_item {
		width: 100%;
		margin-bottom: 15px;
	}

}



/* price
----------------------------------------------- */
.priceteaser {
	background: #c28c69;
	padding: 60px 20px 0;
	display: flex;
	justify-content: center;
}

.priceteaser .priceteain {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #de986a;
	width: 290px;
	height: 290px;
	transform: translateY(30%);
	-webkit-box-shadow: 20px 20px 0 #00000080;
	-moz-box-shadow: 20px 20px 0 #00000080;
	-ms-box-shadow: 20px 20px 0 #00000080;
	-o-box-shadow: 20px 20px 0 #00000080;
	box-shadow: 20px 20px 0 #00000080;
}

.priceteaser .priceteacont {
	color: #fff;
	text-align: center;
	font-size: 36px;
	line-height: 1.2;
}

.priceteaser .priceteacap {
	font-size: 16px;
	font-weight: 600;
	display: block;
}

/* 改定料金 */
.price-kaitei_box {
	border-bottom: 1px solid #ff0000;
	padding-bottom: 30px;
	margin: 50px auto;
}

.price-kaitei_title {
	position: relative;
	width: 100%;
	margin: 0 auto;
}

.price-kaitei_title h4 {
	background: #ffffff;
	max-width: 500px;
	width: 70%;
	margin: 0 auto;
	padding: 0 10px;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	color: #ff0000;
}

.price-kaitei_title::before {
	position: absolute;
	content: "";
	width: 100%;
	height: 0.5px;
	background: #ff0000;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	z-index: -1;
}

@media (max-width: 767px) {
	.priceteaser {
		height: 85px;
		padding: 0 20px;
		display: block;
		position: relative;
	}

	.priceteaser .priceteain {
		position: absolute;
		top: 15px;
		left: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		background: #de986a;
		width: 132px;
		height: 132px;
		transform: translate(-50%, 0);
		-webkit-box-shadow: 5px 5px 0 #00000080;
		-moz-box-shadow: 5px 5px 0 #00000080;
		-ms-box-shadow: 5px 5px 0 #00000080;
		-o-box-shadow: 5px 5px 0 #00000080;
		box-shadow: 5px 5px 0 #00000080;
	}

	.priceteaser .priceteacont {
		font-size: 21px;
	}

	.priceteaser .priceteacap {
		font-size: 13px;
	}

	/* 改定料金 */
	.price-kaitei_box {
		padding-bottom: 15px;
		margin: 30px auto;
	}

	.price-kaitei_title h4 {
		font-size: 16px;
	}

}

.pricebox {
	max-width: 1100px;
	margin: 0 auto;
	padding: 210px 20px 45px;
}

.pricehd {
	text-align: center;
	font-size: 32px;
}

.pricedot {
	text-indent: -1.25em;
	margin-left: 1.25em;
	text-align: justify;
	margin-top: 25px;
}

.pricedot li {
	font-size: 18px;
}

.pricekaitei {
	text-align: right;
	font-size: 16px;
	margin-top: 15px;
	font-weight: bold;
}

.pricezeikomi {
	font-size: 18px;
	font-weight: bold;
}

.pricein+.pricein {
	margin-top: 70px;
}

.pricein .slick-list {
	z-index: -1;
}

.pricein .calenderslick {
	margin: 30px auto 0;
	width: 322px;
	max-width: 95%;
	display: none;
}

.pricein .calenderslick li {
	padding: 0 10px;
}

.pricein .calenderslick li img {
	width: 100%;
	max-width: 302px;
}

.pricein .slick-prev,
.pricein .slick-next {
	position: absolute;
	display: block;
	height: 32px;
	width: 32px;
	border-radius: 3px;
	line-height: 0px;
	font-size: 0px;
	cursor: pointer;
	top: 50%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	padding: 0;
	border: none;
	outline: none;
	background-color: #333;

}

.pricein .slick-prev.slick-disabled:before,
.pricein .slick-next.slick-disabled:before {
	opacity: 0.25;
}

.pricein .slick-prev:before,
.pricein .slick-next:before {
	font-size: 20px;
	line-height: 1;
	color: white;
}

.pricein .slick-prev {
	left: -20px;
}

[dir=rtl] .pricein .slick-prev {
	left: auto;
	right: -20px;
}

.pricein .slick-prev:before {
	content: "←";
}

[dir=rtl] .pricein .slick-prev:before {
	content: "→";
}

.pricein .slick-next {
	right: -20px;
}

[dir=rtl] .pricein .slick-next {
	left: -20px;
	right: auto;
}

.pricein .slick-next:before {
	content: "→";
}

[dir=rtl] .pricein .slick-next:before {
	content: "←";
}

.pricein .slick-dots {
	position: absolute;
	bottom: -30px;
	list-style: none;
	display: block;
	text-align: center;
	padding: 0;
	margin: 0;
	width: 100%;
}

.pricein .slick-dots li {
	position: relative;
	display: inline-block;
	height: 18px;
	width: 18px;
	margin: 0 5px;
	padding: 0;
	cursor: pointer;
}

.pricein .slick-dots li button {
	border: 0;
	border-radius: 50%;
	background-color: #CCC;
	display: block;
	height: 20px;
	width: 20px;
	line-height: 0px;
	font-size: 0px;
	padding: 5px;
	cursor: pointer;
}

.pricein .slick-dots li button:hover,
.pricein .slick-dots li button:focus,
.pricein .slick-dots li.slick-active button:before {
	outline: none;
	background-color: #333;
}

.pricein .calender {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 1000px;
	margin: 30px auto 0;
	max-width: 100%;
}

.pricein .calender li {
	width: 30.2%;
	margin-bottom: 20px;
}

.pricein .calender li img {
	width: 100%;
	max-width: 100%;
	height: auto;
}

.pricetab01 {
	width: 100%;
	margin-top: 50px;
	border-left: 1px #de986a solid;
	border-top: 1px #de986a solid;
}

.pricetab01 th, .pricetab01 td {
	width: 50%;
	font-size: 24px;
	font-weight: 700;
	text-align: center;
	padding: 30px 10px;
	vertical-align: middle;
	border-right: 1px #de986a solid;
	border-bottom: 1px #de986a solid;
}

.pricetab01 th {
	background: #de986a80;
}

.pricetab01 td span {
	display: inline-block;
	font-size: 16px;
	font-weight: 400;
}

.pricetab02 {
	width: 100%;
	margin-top: 20px;
	border-left: 1px #a8a8a8 solid;
	border-top: 1px #a8a8a8 solid;
}

.pricetab02 th, .pricetab02 td {
	width: 50%;
	font-size: 21px;
	font-weight: 700;
	text-align: center;
	padding: 15px 10px;
	vertical-align: middle;
	border-right: 1px #a8a8a8 solid;
	border-bottom: 1px #a8a8a8 solid;
}

.pricetab02 th {
	background: #f1ecea;
}

.pricetab02 td {
	font-size: 16px;
	font-weight: 400;
}

.pricetab02 td span {
	display: inline-block;
	margin-right: 20px;
	width: 100px;
	font-size: 21px;
	font-weight: 700;
	text-align: center;
}

.pricetab03 {
	width: 100%;
	margin-top: 20px;
	border-left: 1px #a8a8a8 solid;
	border-top: 1px #a8a8a8 solid;
}

.pricetab03 th, .pricetab03 td {
	width: 33.3%;
	font-size: 21px;
	font-weight: 700;
	text-align: center;
	padding: 15px 10px;
	vertical-align: middle;
	border-right: 1px #a8a8a8 solid;
	border-bottom: 1px #a8a8a8 solid;
}

.pricetab03 th {
	background: #f1ecea;
}

.pricetab03 td {
	font-size: 16px;
	font-weight: 400;
}

.pricetab03 th span {
	font-size: 16px;
	font-weight: nomal;
	text-align: center;
}

.pricetab03 td span {
	display: inline-block;
	margin-right: 20px;
	width: 100px;
	font-size: 21px;
	font-weight: 700;
	text-align: center;
}

.pricetab04 {
	width: 100%;
	margin-top: 10px;
	border-left: 1px #de986a solid;
	border-top: 1px #de986a solid;
}

.pricetab04 th, .pricetab04 td {
	width: 20%;
	font-size: 24px;
	font-weight: 700;
	text-align: center;
	padding: 30px 10px;
	vertical-align: middle;
	border-right: 1px #de986a solid;
	border-bottom: 1px #de986a solid;
}

.pricetab04 th.heijitu {
	background-color: #fff2cc;
}

.pricetab04 th.doyoubi {
	background-color: #e1e8ff
}

.pricetab04 th.nitiyoubi {
	background-color: #ffd9d9
}

.pricetab04 th {
	background: #de986a80;
}

.pricetab04 td span {
	display: inline-block;
	font-size: 16px;
	font-weight: 400;
}

.pricedot li .red {
	color: #bf0000;
}

.pricenote {
	margin-top: 30px;
	border: 1px #de986a solid;
	font-size: 21px;
	font-weight: 700;
	text-align: center;
	line-height: 1.8;
	padding: 15px 10px;
}

@media (max-width: 767px) {
	.pricebox {
		padding: 100px 20px 50px;
	}

	.pricehd {
		font-size: 21px;
	}

	.pricedot {
		margin-top: 15px;
	}

	.pricedot li {
		font-size: 14px;
	}

	.pricekaitei {
		font-size: 14px;
	}

	.pricezeikomi {
		font-size: 14px;
	}

	.pricein .calenderslick {
		display: block;
	}

	.pricein .calender {
		display: none;
	}

	.pricein+.pricein {
		margin-top: 60px;
	}

	.pricetab01 {
		margin-top: 20px;
	}

	.pricetab01 th, .pricetab01 td {
		font-size: 16px;
		padding: 20px 10px;
	}

	.pricetab01 td span {
		font-size: 12px;
		display: block;
		text-align: center;
	}

	.pricetab02 th, .pricetab02 td {
		font-size: 16px;
		padding: 15px 5px;
	}

	.pricetab02 td {
		font-size: 12px;
	}

	.pricetab02 td span {
		margin-right: 10px;
		width: 80px;
		font-size: 16px;
	}

	.pricetab03 th, .pricetab03 td {
		font-size: 16px;
		padding: 15px 5px;
	}

	.pricetab03 td {
		font-size: 12px;
	}

	.pricetab03 th span {
		font-size: 12px;
	}

	.pricetab03 td span {
		margin-right: 10px;
		width: 80px;
		font-size: 16px;
	}

	.pricetab04 {
		margin-top: 20px;
	}

	.pricetab04 th, .pricetab04 td {
		font-size: 16px;
		padding: 20px 10px;
	}

	.pricetab04 td span {
		font-size: 12px;
		display: block;
		text-align: center;
	}


	.pricenote {
		margin-top: 20px;
		font-size: 16px;
	}
}

.reservation {
	background: #ebf2f5;
	padding: 75px 20px 120px;
}

.reservation .reserhd {
	text-align: center;
	font-size: 32px;
	margin-bottom: 110px;
}

.reservation .reserdet {
	max-width: 1000px;
	margin: 0 auto;
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 75px;
}

.reservation .lineblack {
	border-bottom: 1px #000 solid;
}

.reservation .linered {
	border-bottom: 1px #bf0000 solid;
	color: #bf0000;
}

.reservation .hissu {
	color: #bf0000;
}

.reservation .resertab {
	max-width: 725px;
	margin: 0 auto;
}

.reservation .resertab h4 {
	text-align: center;
	font-size: 23px;
	background: #ffffff;
	margin-bottom: 20px;
	padding: 6px 0;
}

.reservation .resertab table {
	width: 100%;
}

.reservation .resertab th, .reservation .resertab td {
	padding: 15px 0;
	vertical-align: middle;
	font-size: 18px;
}

.reservation .resertab th {
	width: 33%;
	font-weight: 700;
}

.reservation .resertab input[type=text],
.reservation .resertab input[type=email],
.reservation .resertab input[type=tel] {
	background: #fff;
	height: 44px;
	padding: 0 16px;
	border: 1px #98a6b5 solid;
}

.reservation .resertab input::placeholder {
	color: #cecece;
	font-size: 16px;
}

.reservation .resertab select {
	background: #fff;
	height: 44px;
	padding: 0 16px;
	border: 1px #98a6b5 solid;
	font-size: 16px;
}

.reservation .resertab textarea {
	width: 100%;
	height: 150px;
	background: #fff;
	padding: 15px 16px;
	border: 1px #98a6b5 solid;
}

.reservation .resertab textarea::placeholder {
	color: #cecece;
	font-size: 16px;
	font-family: "游ゴシック", YuGothic, "メイリオ", Meiryo, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "ＭＳ ゴシック", sans-serif;
}

.reservation .resertab input.wfull {
	width: 100%;
}

.reservation .resertab input.wmid {
	width: 70%;
}

.reservation .resertab input.wsmall {
	width: 33%;
}

.reservation .resertab label input {
	appearance: none;
	-webkit-appearance: none;
	width: 30px;
	height: 30px;
	margin-right: 10px;
	vertical-align: middle;
	position: relative;
}

.reservation .resertab label input:before {
	position: absolute;
	content: "";
	left: 0;
	top: 0;
	width: 28px;
	height: 28px;
	background: #fff;
	border: 1px #cdd6dd solid;
	/*z-index: 2;*/
}

.reservation .resertab label input:checked:after {
	position: absolute;
	content: "";
	width: 14px;
	height: 7px;
	left: 7px;
	top: 7px;
	border-bottom: 2px #98a6b5 solid;
	;
	border-left: 2px #98a6b5 solid;
	transform: rotate(-45deg);
	/*z-index: 2;*/
}

.reservation .resertab .resercheck {
	display: flex;

}

/* .reservation .resertab .resercheck label {
	width: 32%;
} */

.reservation .resertab .agree {
	margin-top: 30px;
}

.reservation .resertab .agreetxt,
.reservation .resertab .agree .mwform-checkbox-field-text {
	font-size: 12px;
}

.reservation .resertab .formbtn {
	margin-top: 65px;
	display: flex;
	justify-content: center;
}

.reservation .resertab .formbtn a,
.reservation .resertab .formbtn button,
.reservation .resertab .formbtn input {
	display: flex;
	width: 300px;
	height: 60px;
	border: 2px #4eaad4 solid;
	align-items: center;
	justify-content: center;
	background: #fff;
	font-weight: 500;
	color: #4eaad4;
	font-size: 16px;
	position: relative;
	cursor: pointer;
	margin: 0 20px;
}

.reservation .resertab .formbtn a:before,
.reservation .resertab .formbtn button:before,
.reservation .resertab .formbtn input:before {
	position: absolute;
	content: "";
	border-right: 2px #4eaad4 solid;
	border-bottom: 2px #4eaad4 solid;
	width: 10px;
	height: 10px;
	right: 20px;
	top: 50%;
	margin-top: -5px;
	transform: rotate(-45deg);
	z-index: 2;
}

/* order */
.reservation .resertab .order {
	margin-bottom: 40px;
}

.reservation .resertab .order td.gram span,
.reservation .resertab .order td.kingaku span {
	font-weight: bold;
}

.reservation .resertab .order td.gram input[type=checkbox],
.reservation .resertab .order td.kingaku input[type=checkbox] {
	display: none;
}

@media (max-width: 767px) {
	.reservation {
		padding: 50px 20px;
	}

	.reservation .reserhd {
		font-size: 21px;
		margin-bottom: 20px;
	}

	.reservation .reserdet {
		font-size: 14px;
		margin-bottom: 50px;
	}

	.reservation .resertab th, .reservation .resertab td {
		display: block;
		padding: 0;
		font-size: 16px;
	}

	.reservation .resertab th {
		width: auto;
	}

	.reservation .resertab td {
		padding-bottom: 10px;
	}

	.reservation .resertab input::placeholder {
		font-size: 14px;
	}

	.reservation .resertab textarea::placeholder {
		font-size: 14px;
	}

	.reservation .resertab input.wmid {
		width: 100%;
	}

	.reservation .resertab input.wsmall {
		width: 50%;
	}

	.reservation .resertab .resercheck {
		display: block;
	}

	.reservation .resertab .resercheck label {
		width: auto;
		display: block;
	}

	.reservation .resertab .resercheck label+label {
		margin-top: 10px;
	}

	.reservation .resertab .agree {
		margin-top: 20px;
	}

	.reservation .resertab .formbtn {
		max-width: 300px;
		margin: 30px auto 0;
	}

	.reservation .resertab .formbtn a {
		width: 100%;
	}

	.reservation .resertab input[type=text],
	.reservation .resertab input[type=email],
	.reservation .resertab input[type=tel] {
		height: 40px;
		padding: 0 10px;
	}

	.reservation .resertab select {
		height: 40px;
		padding: 0 10px;
	}
}



/* cafeplus
----------------------------------------------- */
.cafeplusteaser {
	background: url("../img/cafeplus/teaser_cafeplus.jpg") center center no-repeat;
	background-size: cover;
}

.cafedet {
	text-align: center;
	padding: 60px 20px 75px;
}

.cafedet .cafelogo {
	margin-bottom: 20px;
}

.cafedet .cafedettxt {
	font-size: 28px;
	font-weight: 600;
}

.cafehd {
	text-align: center;
	font-size: 80px;
	color: #c5cdd1;
	line-height: 1.2;
}

.cafenews {
	background: #f3f1ed;
	padding: 45px 20px 70px;
}

.cafenews .cafenewslist {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	margin: 40px -20px 0;
}

.cafenews .cafenewslist li {
	width: 360px;
	margin: 0 20px;
}

.cafenews .cafenewslist a {
	display: block;
	color: #000;
	line-height: 1.4;
}

.cafenews .cafenewsimg {
	text-align: center;
	margin-bottom: 15px;
}

.cafenews .cafenewstit {
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 5px;
}

.cafenews .cafenewsdate {
	font-size: 16px;
	font-weight: 500;
	color: #333;
}

.cafemenuimg {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
}

.cafemenuimg li {
	width: 50%;
}

.cafemenuimg li img {
	width: 100%;
}

.cafemenubox {
	background: #de986a33;
	padding: 80px 20px 135px;
}

.cafemenuin+.cafemenuin {
	margin-top: 160px;
}

.cafemenudet {
	text-align: center;
	font-size: 32px;
	margin-top: 5px;
}

.cafemenutime {
	font-size: 18px;
	text-align: center;
}

.cafemenuin .menukind {
	margin: 60px -20px 0;
	display: flex;
	justify-content: center;
	align-items: stretch;
}

.cafemenuin .kindbox {
	margin: 0 25px;
	font-size: 18px;
}

.cafemenuin .kindtit {
	color: #de986a;
	font-size: 44px;
	line-height: 1.3;
	margin-bottom: 20px;
}

.cafemenuin .kindcont+.kindcont {
	margin-top: 35px;
}

.cafemenuin .kindtab th, .cafemenuin .kindtab td {
	vertical-align: top;
}

.cafemenuin .kindtab th {
	padding-right: 25px;
}

.cafemenuin .kindsmall {
	font-size: 16px;
}

.cafemenuin .kindnote {
	text-align: right;
	margin-top: 30px;
	font-size: 16px;
}

.cafemenuin .lunchlist {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	margin: 20px -20px 0;
}

.cafemenuin .lunchlist li {
	width: 360px;
	margin: 0 20px;
	font-size: 18px;
}

.cafemenuin .lunchlist .lunchimg {
	text-align: center;
	margin-bottom: 20px;
}

.cafemenuin .lunchlist .lunchtit {
	font-weight: 700;
	margin-bottom: 5px;
}

.cafemenuin .lunchlist .lunchtxt {
	font-weight: 500;
}

.cafemenuin .lunchnote {
	margin-top: 30px;
	background: #ecd3d3;
	border: 1px #707070 solid;
	font-size: 18px;
	text-align: center;
	padding: 10px;
}

.cafemenuin .lunchclose {
	margin-top: 10px;
	background: #fff;
	border: 1px #707070 solid;
	padding: 25px 20px 20px;
}

.cafemenuin .lunchclosetit {
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 10px;
	text-align: center;
}

.cafemenuin .lunchclosetxt {
	font-size: 16px;
	text-align: center;
}

@media (max-width: 1024px) {
	.cafemenuin .menukind {
		margin: 60px 0 0;
		display: block;
	}

	.cafemenuin .kindbox {
		margin: 0;
	}

	.cafemenuin .kindbox+.kindbox {
		margin-top: 50px;
	}

	.cafemenuin .kindtab {
		width: 100%;
	}

	.cafemenuin .kindtab th {
		padding-right: 10px;
	}

	.cafemenuin .kindtab td {
		text-align: right;
		white-space: nowrap;
	}

	.cafemenuin .kindnote {
		text-align: left;
	}
}

@media (max-width: 767px) {
	.cafedet {
		padding: 30px 20px;
	}

	.cafedet .cafedettxt {
		font-size: 16px;
	}

	.cafehd {
		font-size: 28px;
		line-height: 1.6;
	}

	.cafenews {
		padding: 30px 20px;
	}

	.cafenews .cafenewslist {
		display: block;
		margin: 10px 0 0;
	}

	.cafenews .cafenewslist li {
		width: auto;
		margin: 0;
	}

	.cafenews .cafenewslist li+li {
		margin-top: 15px;
	}

	.cafenews .cafenewslist a {
		display: flex;
		align-items: flex-start;
	}

	.cafenews .cafenewscont {
		flex: 1;
		padding-top: 10px;
	}

	.cafenews .cafenewsimg {
		max-width: 170px;
		margin: 0 10px 0 0;
	}

	.cafenews .cafenewstit {
		font-size: 16px;
	}

	.cafenews .cafenewsdate {
		font-size: 14px;
	}

	.cafemenuimg {
		display: block;
	}

	.cafemenuimg li {
		width: auto;
	}

	.cafemenubox {
		padding: 30px 20px;
	}

	.cafemenuin+.cafemenuin {
		margin-top: 50px;
	}

	.cafemenudet {
		font-size: 21px;
	}

	.cafemenutime {
		font-size: 16px;
	}

	.cafemenuin .menukind {
		margin: 20px 0 0;
	}

	.cafemenuin .kindbox {
		font-size: 16px;
	}

	.cafemenuin .kindtit {
		font-size: 21px;
		margin-bottom: 15px;
	}

	.cafemenuin .kindcont+.kindcont {
		margin-top: 15px;
	}

	.cafemenuin .kindsmall {
		font-size: 14px;
	}

	.cafemenuin .kindnote {
		margin-top: 20px;
		font-size: 14px;
	}

	.cafemenuin .lunchlist {
		display: block;
		margin: 20px 0 0;
	}

	.cafemenuin .lunchlist li {
		width: auto;
		margin: 0;
		font-size: 16px;
	}

	.cafemenuin .lunchlist li+li {
		margin-top: 20px;
	}

	.cafemenuin .lunchlist .lunchimg {
		margin-bottom: 10px;
	}

	.cafemenuin .lunchnote {
		margin-top: 25px;
		font-size: 16px;
		padding: 5px;
	}

	.cafemenuin .lunchclose {
		padding: 20px;
	}

	.cafemenuin .lunchclosetit {
		font-size: 16px;
	}

	.cafemenuin .lunchclosetxt {
		font-size: 14px;
		text-align: left;
	}
}



/* workshop
----------------------------------------------- */
.workteaser {
	background: url("../img/workshop/teaser_workshop.jpg") center center no-repeat;
	background-size: cover;
}

.workfooter {
	background: url("../img/common/workshop_footer.jpg") right bottom no-repeat;
	background-size: cover;
	color: #fff;
	position: relative;
}

.workteaser .teasercap {
	margin-bottom: 20px;
}

.workftcap {
	position: absolute;
	right: 30px;
	bottom: 20px;
	display: block;
	z-index: 2;
	background: #000;
	color: #fff;
	font-size: 16px;
	padding: 2px 15px;
}

.teaserrube {
	display: inline-block;
	position: relative;
}

.teaserrube:before {
	position: absolute;
	content: "かわせみ";
	left: 0;
	bottom: 100%;
	width: 100%;
	text-align: center;
	font-weight: 400;
	line-height: 1;
	font-size: 18px;
	color: #fff;
	z-index: 2;
}

.footerrube {
	display: inline-block;
	font-weight: 600;
	position: relative;
}

.footerrube:before {
	position: absolute;
	content: "かわせみ";
	left: 0;
	bottom: 100%;
	width: 100%;
	text-align: center;
	font-weight: 400;
	line-height: 1;
	font-size: 14px;
	color: #fff;
	z-index: 2;
}

@media (max-width: 767px) {
	.workftcap {
		right: 10px;
		bottom: 10px;
		font-size: 12px;
		padding: 2px 5px;
	}

	.workteaser .teasercap {
		margin-bottom: 10px;
	}

	.teaserrube:before {
		font-size: 10px;
		white-space: nowrap;
	}

	.footerrube:before {
		font-size: 10px;
		white-space: nowrap;
	}
}


.workdet {
	background: url("../img/workshop/bg_workshop01.jpg") 0 0 repeat;
	background-size: cover;
	padding: 50px 20px 40px;
}

.workdetimg {
	text-align: center;
	margin-bottom: 60px;
}

.workdettxt {
	text-align: center;
	font-size: 28px;
}

.workimg {
	display: flex;
	align-items: stretch;
	justify-content: center;
}

.workimg li {
	width: 33.33333%;
}

.workimg li img {
	width: 100%;
}

.workfa {
	background: #333;
	padding: 55px 20px 115px;
}

.workfabox+.workfabox {
	margin-top: 40px;
}

.workhd {
	font-size: 80px;
	color: #c5cdd1;
	line-height: 1.3;
	margin-bottom: 20px;
	position: relative;
}

.workhd:before {
	position: absolute;
	content: "";
	background: #5cb975;
	width: 116px;
	height: 1px;
	left: 0;
	bottom: 0;
	z-index: 2;
}

.workfaname {
	color: #fff;
	font-size: 32px;
	margin-bottom: 35px;
}

.factorytxt {
	font-size: 18px;
	color: #fff;
}

.authorbox {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
}

.authorbox li {
	width: 48%;
	display: flex;
	align-items: center;
	color: #fff;
}

.authorimg {
	flex-shrink: 0;
}

.authorimg img {
	border: 1px #707070 solid;
}

.authorcont {
	flex: 1;
	text-align: center;
}

.authorinner {
	display: inline-block;
	text-align: left;
}

.authorname {
	font-size: 32px;
	margin-bottom: 20px;
}

.authorname span {
	font-size: 21px;
	display: block;
}

.authoren {
	font-size: 18px;
	color: #fff;
}

.aboutyu {
	background: url("../img/workshop/bg_workshop02.jpg") center center no-repeat;
	background-size: cover;
	display: flex;
	align-items: center;
	margin-top: 80px;
}

.aboutyuimg {
	flex-shrink: 0;
}

.aboutyucont {
	flex: 1;
	padding: 0 45px 0 70px;
}

.aboutyutit {
	font-size: 32px;
	margin-bottom: 20px;
}

.aboutyutxt {
	font-size: 20px;
}

.insbox {
	background: #5cb9751a;
	padding: 15px 20px 40px;
}

.insbox .inshd {
	text-align: center;
	color: #c5cdd1;
	font-size: 80px;
	line-height: 1.2;
	margin-bottom: 45px;
}


@media (max-width: 1024px) {
	.authorbox {
		display: block;
	}

	.authorbox li {
		width: auto;
	}

	.authorbox li+li {
		margin-top: 50px;
	}

	.aboutyu {
		display: block;
		padding: 40px 20px;
	}

	.aboutyuimg {
		text-align: center;
		margin-top: 40px;
	}

	.aboutyucont {
		padding: 0;
	}
}

@media (max-width: 767px) {
	.workdet {
		padding: 10px 20px 25px;
	}

	.workdetimg {
		margin-bottom: 30px;
		text-align: center;
	}

	.workdetimg img {
		max-width: 50%;
	}

	.workdettxt {
		font-size: 16px;
	}

	.workimg {
		flex-wrap: wrap;
	}

	.workimg li {
		width: 100%;
	}

	.workimg li+li {
		width: 50%;
	}

	.workfa {
		padding: 40px 20px 0;
	}

	.workhd {
		font-size: 28px;
		padding-bottom: 15px;
		margin-bottom: 15px;
	}

	.workhd:before {
		width: 75px;
	}

	.workfaname {
		font-size: 18px;
		margin-bottom: 20px;
	}

	.factorytxt {
		font-size: 16px;
	}

	.authorcont {
		text-align: left;
	}

	.authorimg {
		max-width: 152px;
	}

	.authorname {
		font-size: 21px;
		margin-bottom: 10px;
	}

	.authorname span {
		font-size: 16px;
	}

	.authoren {
		font-size: 14px;
	}

	.authorbox li+li {
		margin-top: 25px;
	}

	.aboutyu {
		margin: 50px -20px 0;
		padding: 40px 20px 20px;
	}

	.aboutyuimg {
		margin-top: 10px;
	}

	.aboutyucont {
		flex: 1;
	}

	.aboutyutit {
		font-size: 28px;
		text-align: center;
	}

	.aboutyutxt {
		font-size: 16px;
	}

	.insbox {
		padding: 40px 20px;
	}

	.insbox .inshd {
		text-align: center;
		font-size: 28px;
		margin-bottom: 20px;
	}

}



/* lineup
----------------------------------------------- */
.lineupteaser {
	background: url("../img/lineup/teaser_lineup.jpg") center center no-repeat;
	background-size: cover;
}

.lineupdet {
	text-align: center;
	padding: 60px 20px 100px;
	font-size: 28px;
	font-weight: 600;
}

.lineupbox {
	background: #f3f1ed;
	padding: 30px 20px 80px;
}

.lineupbox .lineuptit {
	font-size: 80px;
	color: #c5cdd1;
	text-align: center;
	margin-bottom: 20px;
}

.lineupbox .lineuptxt {
	text-align: center;
	font-weight: 600;
	font-size: 28px;
	margin-bottom: 40px;
}

.lineupbox .promess {
	max-width: 1280px;
	margin: 0 auto;
	padding-right: 120px;
	display: flex;
	flex-direction: row-reverse;
}

.lineupbox .promessimg {
	margin-right: 85px;
}

.lineupbox .promesscont {
	flex: 1;
}

.lineupbox .promesstab {
	width: 100%;
}

.lineupbox .promesstab th, .lineupbox .promesstab td {
	border-bottom: 2px #7d7d7c solid;
	vertical-align: middle;
	padding: 10px 5px;
}

.lineupbox .promesstab th {
	text-align: center;
	font-size: 16px;
}

.lineupbox .promesstab td {
	font-size: 18px;
	font-weight: 700;
}

.lineupbox .promesstab td.promesspink {
	font-size: 16px;
	font-weight: 400;
	text-align: center;
	color: #eb9393;
}

.lineuphrp {
	padding: 100px 20px;
}

.lineuphrp .hrparea {
	max-width: 1280px;
	margin: 0 auto 50px;
}

.lineuphrp .hrpbox {
	display: flex;
	align-items: flex-start;
}

.lineuphrp .hrpbox.reverse {
	flex-direction: row-reverse;
}

.lineuphrp .hrpbox+.hrpbox {
	margin-top: 75px;
}

.lineuphrp .hrpbox .hrpimg {
	margin: 0 30px 0 0;
}

.lineuphrp .hrpbox .hrpcont {
	flex: 1;
}

.lineuphrp .hrpbox.reverse .hrpimg {
	margin: 0 0 0 30px;
}

.lineuphrp .hrpbox .hrphd {
	color: #c5cdd1;
	font-size: 80px;
	margin-bottom: 20px;
	line-height: 1.3;
	position: relative;
}

.lineuphrp .hrpbox .hrphd:before {
	position: absolute;
	content: "";
	background: #eb9393;
	width: 116px;
	height: 1px;
	left: 0;
	bottom: 0;
	z-index: 2;
}

.lineuphrp .hrpbox .hrpdet {
	font-size: 32px;
	margin-bottom: 35px;
}

.lineuphrp .hrpbox .hrptxt {
	font-size: 18px;
}

.lineuphrp .hrpbox .hrppink {
	color: #eb9393;
}

.lineuphrp .hrpfax {

	text-align: center;
	font-size: 24px;
	font-weight: 600;
}

.lineuphrp .hrpfaxbtn {
	max-width: 300px;
	margin: 50px auto 0;
}

.lineuphrp .hrpfaxbtn a {
	display: flex;
	width: 100%;
	height: 60px;
	align-items: center;
	justify-content: center;
	color: #eb9393;
	font-size: 16px;
	font-weight: 500;
	border: 1px #eb9393 solid;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	-ms-border-radius: 30px;
	-o-border-radius: 30px;
	border-radius: 30px;
	position: relative;
}

.lineuphrp .hrpfaxbtn a:before {
	position: absolute;
	content: "";
	border-right: 2px #eb9393 solid;
	border-bottom: 2px #eb9393 solid;
	width: 10px;
	height: 10px;
	left: 30px;
	top: 50%;
	margin-top: -5px;
	transform: rotate(-45deg);
	z-index: 2;
}

.lineuphrp .hrptel {
	margin-top: 30px;
	text-align: center;
	font-size: 24px;
	font-weight: 600;
}

.lineuphrp .hrptel p.tel {
	margin-top: 20px;
}

.lineuphrp .hrptel p.tel a {
	color: #000000;
}


@media (max-width: 1024px) {
	.lineupbox .promess {
		padding-right: 0;
		display: block;
	}

	.lineupbox .promessimg {
		text-align: center;
		margin: 50px 0 0;
	}

	.lineuphrp .hrpbox {
		display: block;
	}

	.lineuphrp .hrpbox .hrpimg {
		text-align: center;
		margin: 0 0 50px;
	}

	.lineuphrp .hrpbox.reverse .hrpimg {
		margin: 0 0 50px;
	}
}

@media (max-width: 767px) {
	.lineupdet {
		padding: 25px 20px 30px;
		font-size: 16px;
	}

	.lineupbox {
		padding: 25px 20px;
	}

	.lineupbox .lineuptit {
		font-size: 28px;
		margin-bottom: 15px;
	}

	.lineupbox .lineuptxt {
		font-size: 16px;
		margin-bottom: 30px;
	}

	.lineupbox .promessimg {
		margin: 10px 0 0;
	}

	.lineupbox .promesstab {
		width: 100%;
	}

	.lineupbox .promesstab th, .lineupbox .promesstab td {
		border-bottom: 2px #7d7d7c solid;
		vertical-align: middle;
		padding: 10px 5px;
	}

	.lineupbox .promesstab th {
		font-size: 12px;
	}

	.lineupbox .promesstab td {
		font-size: 16px;
	}

	.lineupbox .promesstab td.promesspink {
		font-size: 14px;
	}

	.lineuphrp {
		padding: 0 20px 20px;
	}

	.lineuphrp .hrparea {
		max-width: 1280px;
		margin: 0 auto 50px;
	}

	.lineuphrp .hrpbox+.hrpbox {
		margin-top: 30px;
	}

	.lineuphrp .hrpbox .hrpimg {
		margin: 0 -20px 15px;
	}

	.lineuphrp .hrpbox.reverse .hrpimg {
		margin: 0 -20px 15px;
	}

	.lineuphrp .hrpbox .hrphd {
		font-size: 28px;
		margin-bottom: 15px;
		padding-bottom: 15px;
	}

	.lineuphrp .hrpbox .hrphd:before {
		width: 75px;
	}

	.lineuphrp .hrpbox .hrpdet {
		font-size: 21px;
		margin-bottom: 20px;
	}

	.lineuphrp .hrpbox .hrptxt {
		font-size: 16px;
	}

	.lineuphrp .hrpfax {
		font-size: 16px;
		margin: 40px -10px 0;
	}

	.lineuphrp .hrpfaxbtn {
		margin: 35px auto 0;
	}

	.lineuphrp .hrptel {
		margin: 35px auto 0;
	}
}

.error {
	color: #ff0000;
}

/* story
----------------------------------------------- */
.storyteaser {
	background: url("../img/story/story_main.jpg") center center no-repeat;
	background-size: cover;
}

.story_inner {
	background-color: #333333;
	padding-bottom: 85px;
}

.story_main {
	padding-top: 87px;
	width: 90%;
	max-width: 1268px;
	margin: auto;
}

.story_title {
	font-size: 36px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 80px;
	font-family: serif;
	color: #FFF;
}

.story_title span {
	color: #70FFC6;
}

.story_mds {
	font-size: 80px;
	color: #C5CDD1;
	font-family: serif;
	line-height: 1.0;
	position: relative;
	margin-bottom: 57px;
}

.story_mds::before {
	position: absolute;
	top: 1.2em;
	content: '';
	width: 116px;
	height: 1px;
	background-color: #5CB975;
}

.story_mds span {
	font-size: 32px;
}

.story_lead {
	display: flex;
	justify-content: space-between;
	margin-bottom: 85px;
}

.story_lead p {
	color: #FFF;
	font-family: serif;
	font-size: 20px;
	text-align: justify;
	line-height: 1.8;
}

.story_lead_title {
	width: 22%;
	font-family: serif;
}

.story_lead_txt {
	width: 75%;
}

.story_img_list {
	display: flex;
	justify-content: center;
	margin-bottom: 130px;
}

.story_img_item {
	width: 33.33%;
}

.story_img_item img {
	width: 100%;
	height: auto;
}

.story_block_left {
	display: flex;
	margin-bottom: 90px;
	justify-content: space-between;
}

.story_block_right {
	display: flex;
	flex-direction: row-reverse;
	margin-bottom: 90px;
	justify-content: space-between;
}

.story_block_txt {
	width: 64%;
}

.story_block_mds {
	font-size: 40px;
	font-family: serif;
	color: #FFF;
	margin-bottom: 0.5em;
}

.story_block_txt p {
	color: #FFF;
	font-family: serif;
	font-size: 20px;
	line-height: 1.8;
	text-align: justify;
}

.story_block_img {
	width: 31.5%;
}

.story_block_img img {
	width: 100%;
	height: auto;
}

.story_author {
	width: 90%;
	max-width: 1268px;
	margin: 0 auto 130px;
}

.story_author_list {
	display: flex;
	justify-content: space-between;
}

.story_author_item {
	width: 23.7%;
}

.story_author_item img {
	display: block;
	margin-bottom: 23px;
}

.story_author_name {
	color: #FFF;
	font-size: 32px;
	font-family: serif;
}

.story_author_name span {
	font-size: 21px;
}

.shop_linkbtn_list {
	display: flex;
	justify-content: center;
}

.shop_linkbtn_item {
	padding: 25px;
	width: 38%;
}

.shop_linkbtn_koubou,
.shop_linkbtn_shop {
	border: solid 1px #FFF;
	padding: 1em;
	display: block;
	width: 100%;
	max-width: 470px;
	margin: auto;
	color: #FFF;
	text-align: center;
	font-weight: bold;
	font-size: 24px;
	background: url(../img/story/arrow.png) #199999 no-repeat right 5% top 50%;
}

.shop_linkbtn_shop {
	background-color: #D275AA;
}

.shop_linkbtn_koubou:hover,
.shop_linkbtn_shop:hover {
	opacity: 0.8;
}

@media (max-width: 767px) {
	.story_main {
		padding-top: 45px;
	}

	.story_title {
		font-size: 18px;
		margin-bottom: 45px;
	}

	.story_mds {
		font-size: 40px;
		margin-bottom: 27px;
	}

	.story_mds::before {
		top: 1.2em;
		width: 70px;
	}

	.story_mds span {
		font-size: 16px;
	}

	.story_lead {
		margin-bottom: 45px;
	}

	.story_lead p {
		font-size: 14px;
	}

	.story_img_list {
		margin-bottom: 65px;
	}

	.story_block_left {
		margin-bottom: 45px;
		display: block;
	}

	.story_block_right {
		margin-bottom: 45px;
		display: block;
	}

	.story_block_mds {
		font-size: 20px;
	}

	.story_block_txt p {
		font-size: 14px;
	}

	.story_author {
		margin: 0 auto 45px;
	}

	.story_author_item {
		width: 32%;
	}

	.story_author_item img {
		margin-bottom: 11px;
	}

	.story_author_name {
		font-size: 16px;
	}

	.story_author_name span {
		font-size: 12px;
	}

	.shop_linkbtn_list {
		display: block;
		width: 90%;
		margin: auto;
	}

	.shop_linkbtn_item {
		padding: 10px 0;
		width: 100%;
	}

	.shop_linkbtn_koubou,
	.shop_linkbtn_shop {
		font-size: 14px;
		background-size: 9px;
	}
}

@media (max-width: 480px) {
	.story_lead {
		display: block;
	}

	.story_lead_title {
		width: 100%;
	}

	.story_lead_txt {
		width: 100%;
	}

	.story_block_txt {
		width: 100%;
		margin-bottom: 20px;
	}

	.story_block_img {
		width: 75%;
		margin: auto;
	}
}

/* news
----------------------------------------------- */

.newsarea {
	padding: 260px 20px 100px;
}

.newsarea .topnews {
	padding: 0;
}

.wp-pagenavi {
	display: flex;
	align-items: stretch;
	justify-content: center;
	margin-top: 80px;
}

.wp-pagenavi a,
.wp-pagenavi span {
	width: 50px;
	height: 50px;
	margin: 5px -1px;
	background: #fff;
	border: 1px #999 solid;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 24px;
	color: #000;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
}

.wp-pagenavi span.current {
	background: #de986a;
	color: #fff;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	margin-left: 30px;
	margin-right: 30px;
}

@media (max-width: 767px) {
	.newsarea {
		padding: 100px 20px 50px;
	}

	.wp-pagenavi {
		margin-top: 50px;
	}

	.wp-pagenavi a,
	.wp-pagenavi span {
		width: 40px;
		height: 40px;
		font-size: 18px;
	}

	.wp-pagenavi .previouspostslink,
	.wp-pagenavi .nextpostslink {
		margin-left: 20px;
		margin-right: 20px;
	}
}



/* news detail
----------------------------------------------- */

.newsdetail {
	padding: 210px 20px 240px;
}

.newsdetail .newsdetin {
	max-width: 840px;
	margin: 0 auto;
}

.newsdetail .newsdetdate {
	max-width: 140px;
	height: 32px;
	background: #333;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 21px;
	margin: 0 auto 15px;
}

.newsdetail .newsdethd {
	text-align: center;
	font-size: 32px;
	line-height: 1.3;
	margin-bottom: 20px;
}

.newsdetail .newsdetbox {
	border-bottom: 1px #707070 solid;
	border-top: 1px #707070 solid;
	padding: 60px 0 160px;
}

.newsdetail .newsdettxt {
	font-size: 21px;
}

.newsdetail .newsdetnavi {
	margin-top: 20px;
	text-align: center;
	position: relative;
}

.newsdetail .newsdetnavi a {
	font-size: 21px;
	color: #000;
}

.newsdetail .newsdetnavi .detlast {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
}

.newsdetail .newsdetnavi .detnext {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
}

@media (max-width: 767px) {
	.newsdetail {
		padding: 100px 20px 50px;
	}

	.newsdetail .newsdetdate {
		font-size: 16px;
	}

	.newsdetail .newsdethd {
		font-size: 20px;
	}

	.newsdetail .newsdetbox {
		padding: 50px 0;
	}

	.newsdetail .newsdettxt {
		font-size: 18px;
	}

	.newsdetail .newsdetnavi a {
		font-size: 16px;
	}
}