@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=EB+Garamond");


.sh-gradient-wrapper {
  padding-bottom: 40px;
}


.MT30_0 {
	margin-top: 30px;
}
.MT40_0 {
	margin-top: 40px;
}

.sh-contents {
	max-width: 1180px;
}
.sh-contents.__W1280 {
	max-width: 1300px;
	margin-inline: auto;
}
.sh-contents.__W1600 {
	max-width: 1620px;
	margin-inline: auto;
}

.__caption1 {
	position: absolute;
	bottom: 0px;
	right: 0px;
	color: #fff;
	background-color: rgba(0, 0, 0, 0.6);
	padding: 5px 5px;
}
.__caption1._posi1 {
	right: 50%;
}

.sh-topfloor-box4 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	row-gap: 40px;
}
.sh-topfloor-box4 > div {
	width: 80%;
	max-width: 80%;
}

.sh-topfloor-box5 {
  display: grid;
  gap: 40px 40px;
  align-items: start;
}
.sh-topfloor-box5 > div:first-child {
  grid-column: 1 / 2;
}

.__title1 {
  font-family: 'Cinzel', "Yu Mincho", "游明朝", serif;
	color: #1f2b64;
	display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 16px;
}
.__title1::after {
	content: "";
  display: block;
  height: 1px;
  background-color: #1f2b64;
}

.LH135 {
	line-height: 1.35;
}


.sh-contents-comment {

}
.sh-contents-comment-text {
}

.sh-flex-reverse {
	flex-direction: row-reverse;
}


sub {
    bottom: 0;
	vertical-align: baseline;
}

.MT80 {
	margin-top: 80px;
}
.MB80 {
	margin-bottom: 80px;
}
.TR_TL {
	text-align: right;
}

@media screen and (min-width: 768px) {
	.sh-topfloor-box1 {
		display: flex;
		justify-content: space-between;
	}
	.sh-topfloor-box1 > div:first-child {
		width: 26.7241379%;
		max-width: 310px;
	}
	.sh-topfloor-box1 > div:last-child {
		width: 69.8275862%;
		max-width: 810px;
	}

	.sh-topfloor-box2 {
		display: flex;
	}
	.sh-topfloor-box2 > div {
		width: 50%;
	}

	.sh-topfloor-box3 {
		display: flex;
		justify-content: space-between;
	}
	.sh-topfloor-box3 > div {
		width: 48.4375%;
		max-width: 620px;
	}

	.sh-topfloor-box4 > div {
		width: 22.65625%;
		max-width: 290%;
	}

	.sh-topfloor-box5 {
	  grid-template-columns: 2.13793fr 1fr 1fr;
	 }

	.sh-topfloor-box5 > div:first-child {
	  grid-row: 1 / span 2;
	}

}


@media (min-width: 768px) and (max-width: 1024px) {
  .sh-topfloor-box5 {
    /* 1列目: メイン画像、2列目: 下段のサブ要素（3列構成） */
    grid-template-columns: repeat(3, 1fr);
    gap: 30px 20px;
  }
	.sh-topfloor-box5 > div:first-child {
    grid-column: 1 / -1; /* 横幅いっぱいに使う */
    grid-row: auto;      /* 縦の結合を解除 */
    max-width: 620px;
    margin-inline: auto;
  }
}


@media screen and (max-width: 767px) {
	.sh-gradient-wrapper {
		padding-bottom: 0;
	}

	.__caption1._posi1 {
		right: 0%;
		bottom: 50%;
	}

	.sh-topfloor-box1 > div:first-child {
		margin-bottom: 30px;
  }
	.sh-topfloor-box3 > div:last-child {
		margin-top: 30px;
		width: 80%;
		max-width: 80%;
		margin-inline: auto;
	}
	.sh-topfloor-box4 > div {
		margin-inline: auto;
	}
	.sh-topfloor-box5 {
    grid-template-columns: 1fr;
  }
	.sh-topfloor-box5 > div:first-child {
    grid-row: auto;
  }
	.sh-topfloor-box5 > div:nth-child(n+2) {
		width: 80%;
		margin-inline: auto;
  }

	.MT60_0 {
		margin-top: 0px;
	}
	.PB20-smp {
		padding-bottom: 20px;
	}

	.TR_TL {
		text-align: left;
	}

}

@media screen and (max-width: 600px) and (orientation: portrait) {


}

