@charset "UTF-8";



/*********** 共通 *************/

.all-wrap {
	overflow: visible;
}

main h2 {
	color: #000;
}

.sakura_r {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 35.63%;
	z-index: 5;
}

.sakura_l-area {
	padding-bottom: 200px;
}

.sakura_r-area {
	padding-bottom: 100px;
}

.v-title {
	color: #999a9a;
	font-size: 11.0rem;
	letter-spacing: 0.2em;
	line-height: 1.0;
	writing-mode: vertical-rl;
	text-orientation: upright;
}


.plan_bt-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.plan_bt-wrap li {
	width: 19.38%;
}

.plan_bt-wrap li a {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #a2833b;
	font-size: 2.2rem;
	text-align: center;
	line-height: 1.3;
	text-decoration: none;
	background: #fff;
	border: 1px solid #a2833b;
	width: 100%;
	min-height: 80px;
	padding: 10px 0;
	transition: all .2s ease;
}

.plan_bt-wrap li a:hover {
	color: #fff;
	background: #a2833b;
}

.plan_bt-wrap li.current a {
	color: #fff;
	background: #a2833b;
}

.plan_bt-wrap sup {
	font-size: 1.1rem;
	top: -1.0em;
}



/*********** ↑共通 *************/




.headline img {
	width: 65px;
	padding: 10px 0;
}

/* Safari */
_::-webkit-full-page-media, _:future, :root .headline img {	margin-left: 55px;}


.headline h3 .cap {
	margin-top: -10px;
}

.headline h3 p:nth-child(1) {
	margin-left: 20px;
}

.headline h3 p:nth-child(2) {
	font-size: 5.0rem;
	margin-top: 2.8em;
	margin-left: 20px;
}

.headline h3 p:nth-child(3) {
	font-size: 2.8rem;
	letter-spacing: 0.1em;
	margin-left: 20px;
}

/* Safari */
_::-webkit-full-page-media, _:future, :root .headline h3 p:nth-child(3) {	margin-left: -40px;}






.plan_01-wrap {
	display: grid;
	grid-template-columns: 10.16% 33.67% 46.88%;
	grid-template-rows: auto;
	justify-content: space-between;
	margin-top: 80px;
}

.plan_01-wrap li:nth-child(1) {
	grid-column: 1 / 2;
	grid-row: 1 / 2;
}

.plan_01-wrap li:nth-child(2) {
	grid-column: 2 / 3;
	grid-row: 1 / 2;
	margin-top: 160px;
}

.plan_01-wrap li:nth-child(3) {
	grid-column: 3 / 4;
	grid-row: 1 / 2;
	margin-top: 160px;
}

.plan_01-wrap .cap {
	margin-top: -25px;
}

@media only screen and (max-width: 1100px){
	.plan_01-wrap .cap {margin-top: 0;}
}




/*********** pickup *************/

.pickup_sticky-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	max-width: 960px;
	margin: 0 auto;
	margin-top: 0px;
}

.pickup_sticky-wrap > li:nth-child(1) {
    position: -webkit-sticky; /* Safari */
	position: sticky;
    top: 0;
	width: 35%;
	padding-top: 150px;
}

.pickup_sticky-wrap > li:nth-child(2) {
	width: 47%;
	padding-top: 150px;
}

.pickup-cont {
	margin-top: 100px;
}

.pickup-cont dl {
	display: flex;
	align-items: center;
}

.pickup-cont dt {
	display: inline-block;
	font-family: 'Cinzel', serif;
	color: #fff;
	font-size: 40px;
	text-align:center;
	line-height: 60px;
	width: 57px;
	height: 57px;
	background: #a2833b;
	margin-right: 10px;
}

.pickup-cont dd {
	font-size: 2.0rem;
	line-height: 1.5;
	letter-spacing: 0;
	width: calc(100% - 67px);
}

.pickup-cont .photo {
	position: relative;
	margin-top: 20px;
}


/*** 個別 ***/

.pickup-cont.no1 {
	margin-top: 0;
}

.pickup-cont.no1 .photo {
	width: calc(100% - 67px);
	margin-left: 67px;
}

.pickup-cont.no4 dl {
	align-items: flex-start;
}

.pickup-cont.no4 dt {
	margin-top: 3px;
}

.pickup-cont.no5 .cap-cover {
	bottom: 15px;
}

/*********** ↑pickup *************/




/*********** 南 *************/

.south-wrap.wide-l {
	display: grid;
	grid-template-columns: 59% 33.67%;
	grid-template-rows: auto auto auto;
	justify-content: space-between;
	margin-top: 20px;
}

.south-wrap.wide-l > li:nth-child(1) {
	grid-column: 2 / 3;
	grid-row: 2 / 3;
}

.south-wrap.wide-l > li:nth-child(2) {
	grid-column: 1 / 2;
	grid-row: 2 / 4;
	width: calc((100vw - 1280px)/2 + (1280px * 0.59) - 7px );
	margin-left: calc((1280px - 100vw)/2 + 7px);
}

.south-wrap.wide-l > li:nth-child(3) {
	grid-column: 2 / 3;
	grid-row: 3 / 4;
	align-self: flex-end;
}

.south-wrap.wide-l > li:nth-child(4) {
	grid-column: 1 / 3;
	grid-row: 1 / 2;
	justify-self: flex-end;
}

@media only screen and (max-width: 1340px){
.south-wrap.wide-l > li:nth-child(2) {
	width: calc(100% + 20px);
	margin-left: -20px;
}
}

/*********** ↑南 *************/
	
	
	

/*********** 多彩 *************/

.space-bg {
	position: relative;
	background: #f0f3f4;
	padding: 120px 0 60px;
	margin-top: 100px;
}

.space-wrap {
	display: grid;
	grid-template-columns: 24.69% 67.03%;
	grid-template-rows: auto 1fr;
	justify-content: space-between;
}

.space-wrap > li:nth-child(1) {
	grid-column: 1 / 2;
	grid-row: 1 / 2;
}

.space-wrap > li:nth-child(2) {
	grid-column: 1 / 2;
	grid-row: 2 / 3;
	margin-top: 60px;
}

.space-wrap > li:nth-child(3) {
	grid-column: 2 / 3;
	grid-row: 1 / 3;
}

.space-wrap .qbox-wrap {
	position: relative;
	z-index: 10;
}

.space-wrap .qbox-wrap > li {
	width: 46.85%;
	padding-bottom: 60px;
}

/*********** ↑多彩 *************/



/*********** 時短 *************/

.equipment-wrap {
	display: grid;
	grid-template-columns: 66.95% 24.69%;
	grid-template-rows: auto 1fr;
	justify-content: space-between;
	margin-top: 140px;
}

.equipment-wrap > li:nth-child(1) {
	grid-column: 2 / 3;
	grid-row: 1 / 2;
	justify-self: flex-end;
}

.equipment-wrap > li:nth-child(2) {
	grid-column: 2 / 3;
	grid-row: 2 / 3;
	margin-top: 60px;
}

.equipment-wrap > li:nth-child(3) {
	grid-column: 1 / 2;
	grid-row: 1 / 3;
}


.shaan-bg {
	background: #eaeef1;
	padding: 40px;
}

.shaan_01-wrap {
	font-family: 'Noto Sans JP', sans-serif;
	color: #0068b7;
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.1em;
	text-align: center;
}

.shaan_02-wrap {
	display: grid;
	grid-template-columns: 57.27% 37.32%;
	grid-template-rows: auto 1fr;
	justify-content: space-between;
	margin-top: 40px;
}

.shaan_02-wrap > li:nth-child(1) {
	grid-column: 1 / 2;
	grid-row: 1 / 3;
}

.shaan_02-wrap > li:nth-child(2) {
	grid-column: 2 / 3;
	grid-row: 1 / 2;
}

.shaan_02-wrap > li:nth-child(3) {
	grid-column: 2 / 3;
	grid-row: 2 / 3;
	align-self: flex-end;
}

.shaan_02b {
	width: 70%;
	margin: 0 auto;
}

.shaan_02-wrap .txt1 {
	font-size: 2.0rem;
	line-height: 1.5;
	margin-top: 40px;
}

.shaan_02-wrap .txt2 {
	font-size: 1.4rem;
	text-align: justify;
	margin-top: 30px;
}

.shaan_02c {
	margin-top: 20px;
}

.shaan_03-wrap {
	margin-top: 50px;
	padding-bottom: 20px;
}

.shaan-ttl {
	display: flex;
	align-items: center;
	font-family: 'Noto Sans JP', sans-serif;
	color: #0068b7;
	font-size: 2.0rem;
	font-weight: 500;
	margin-top: 40px;
}

.shaan-ttl:after {
	content: "";
	flex-grow: 1;
	height: 1px;
	display: block;
	margin-left: 0.4em;
	background: #0068b7;
}

.shaan_05-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 20px;
}

.shaan_05-wrap li {
	width: 47.49%;
}

.shaan_06-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 20px;
}

.shaan_06-wrap li {
	width: 47.49%;
}

.shaan_06-wrap li:nth-child(2) {
	margin-top: -10px;
}


.equipment-wrap .qbox-wrap {
	margin-top: 40px;
}

.equipment-wrap .qbox-wrap > li {
	width: 46.91%;
	padding-bottom: 0;
}

/*********** ↑時短 *************/



/*********** type *************/

.type-bg {
	background: #f0f3f4;
	padding: 120px 0;
	margin-top: 120px;
}

.type-title {
	font-family: 'Cinzel', serif;
	font-size: 5.5rem;
	line-height: 1.2;
	text-align: center;
	border-bottom: 1px solid #666;
	margin-top: 60px;
}

.type-title.second {
	margin-top: 20px;
}


.type-title .s {
	font-size: 0.7em;
}

.type-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 80px;
}

.type-wrap li {
	width: 28%;
	padding: 10px;
	margin: 0 2%;
	margin-bottom: 100px;
	transition: all .2s ease;
}

.type-wrap li:hover {
	box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
}

.type-wrap li.nolink:hover {
	box-shadow: none;
}

.limited_bt-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	border-top: 1px solid #666;
	padding-top: 120px;
	margin-top: 20px;
}

.limited_bt-wrap li {
	width: 25%;
	margin: 0 2%;
	transition: all .2s ease;
}

.limited_bt-wrap li:hover {
	box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
}

/*********** ↑type *************/



/*********** casbee *************/

#kankyo_bt {
	color: #fff;
	text-align: center;
	max-width: 400px;
	padding: 10px 0;
	margin: 80px auto 0;
	background: #aa8420;
	cursor: pointer;
	transition: 0.2s;
}

#kankyo_bt:hover {
	filter: brightness(120%);
}

#kankyo {
	max-width: 340px;
	margin: 100px auto 0;
}

#kankyo li {
	width: 100%;
}

/*********** ↑casbee *************/






.anc_plan1 {
	display: block;
    padding-top: 60px;
	margin-top: -60px;
}

.anc_plan2 {
	display: block;
    padding-top: 140px;
	margin-top: -140px;
}

.anc_plan3 {
	display: block;
    padding-top: 40px;
	margin-top: -40px;
}

.anc_plan4 {
	display: block;
    padding-top: 60px;
	margin-top: -60px;
}

.anc_plan5 {
	display: block;
    padding-top: 0;
	margin-top: 0;
}

.anc_shaan {
	display: block;
    padding-top: 140px;
	margin-top: -140px;
}






