/* CSS Document */
body {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	/* word-break: keep-all; */
	line-break: strict;
	word-wrap: break-word;
	overflow-wrap: break-word;
	font-feature-settings: "palt";
	text-align: left;
}

header {
	background: #000;
	border-bottom: 1px solid #fff;
	padding: 6px 10px 6px 10px;
	height: 30px;
	overflow: hidden !important;
}

a:hover {
	opacity: 0.8;
}

a {
	transition: opacity 0.3s ease-out;
}

.sp {
	display: none;
}

.pc {
	display: block;
}

@media (max-width: 750px) {
	.sp {
		display: block;
	}

	.pc {
		display: none;
	}
}

img {
	width: 100%;
}

#main img {
	width: 100%;
	height: auto;
}

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

	SNSフッタ
	
-----------------------------------------*/
#sns-footer {
	background: #eee;
}

#sns-footer svg {
	width: 100%;
}

#sns-footer #sns-footer-inner {
	max-width: 750px;
	margin: auto;
}

#sns-footer #sns-footer-inner #sns-footer-tit {
	padding: 12% 20% 5%;
}

#sns-footer #sns-footer-inner #sns-footer-line {
	padding: 0 14% 10%;
}

#sns-footer #sns-footer-inner #sns-footer-tit-02 {
	padding: 0 33% 3.5%;
}

#sns-footer #sns-footer-inner #sns-footer-list {
	padding: 0 14% 15%;
	overflow: hidden;
}

#sns-footer #sns-footer-inner #sns-footer-list li {
	float: left;
	width: 33.33333%;
	width: -webkit-calc(100% / 3);
	width: calc(100% / 3);
}

#sns-footer #sns-footer-inner #sns-footer-list li a {
	display: block;
	padding: 5%;
}

/* -----------------------------------------
contents
-----------------------------------------*/
#container {
	margin: auto;
	width: 100%;
	max-width: 750px;
	overflow: hidden;
}

#container {
	margin: auto;
	font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	line-height: 1.6;
	font-size: 30px;
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
	display: block;
	font-feature-settings: "palt";
	color: #000;
}

@media (max-width: 750px) {
	#contents {
		font-size: 3.45vw;
	}
}

#contents img {
	width: 100%;
}

.link_wrap {
	display: flex;
	justify-content: flex-end;
	/* text-align: right; */
	margin-top: 5%;
	padding: 0 7%;
}

.link_content {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	margin-left: auto;
	margin-right: 0;
}

.link_group {
	/* display: flex;
	justify-content: flex-end;
	align-items: center; */
	display: block;
	/* width: 100%; */
	font-size: 26px;
	color: #000;
	letter-spacing: 0.1em;
}

.link_group img {
	display: inline-block;
	width: 24.13% !important;
	padding-left: 2%;
}

.link_wrap span {
	display: block;
	font-size: 20px;
}

.flex01 .link_wrap {
	margin-top: auto;
	padding: 0 4.5%;
}

.flex01 .link_wrap .link_group {
	font-size: 24px;
	/* padding-left: 9%; */
}

.flex01 .link_wrap .link_group img {
	/* width: 18.39% !important; */
	/* vertical-align: -4px; */
}

.flex01 .link_wrap span {
	display: block;
	font-size: 20px;
	/* padding-left: 9%; */
}

@media (max-width: 750px) {
	.link_group {
		font-size: 13px;
		/* line-height: 1.8; */
		/* width: calc(100% - 19%); */
		margin-left: 14%;
		padding-left: 5%;
	}

	.link_group img {

	}

	.link_wrap span {
		font-size: 10px;
		padding-left: 19%;
	}

	.flex01 .link_wrap .link_group {
		font-size: 12px;
		margin-left: 0;
		padding-left: 0;
	}

	.flex01 .link_wrap span {
		font-size: 10px;
		padding-left: 0;
	}
}

@media (max-width: 374px) {
	.flex01 .link_wrap .link_group {
		font-size: 11px;
	}
}

/* .Sec01 */
.Sec01 {
	position: relative;
	background: #c5aa50;
	background: linear-gradient(0deg, rgba(197, 170, 80, 1) 0%, rgba(217, 205, 176, 1) 100%);
}

.Sec01::before {
	content: "";
	position: absolute;
	bottom: -1px;
	left: 0;
	background-image: url(../img/250819/Sec01_deco01.webp);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	width: 100%;
	height: 0;
	padding-top: 16.4%;
}

.Sec01 .group_button {
	background-image: url(../img/250819/kv_img02.webp);
	background-size: 100%;
	background-position: center bottom;
	background-repeat: no-repeat;
	padding: 0 calc((100% - 84.264%) / 2) 35%;
}

.Sec01 .group_button ul {
	display: flex;
	flex-wrap: wrap;
	column-gap: 3%;
}

.btn1 {
	width: calc(49.602% - 1.5%);
}

.btn2 {
	width: calc(49.602% - 1.5%);
}

.btn3 {
	width: 100%;
	margin-top: 7%;
}

.btn4 {
	width: 100%;
	margin-top: 3.5%;
}

.btn5 {
	width: 100%;
	margin-top: 3.5%;
}

/* .Sec02 */
.Sec02 {
	position: relative;
	background: #c5aa50;
	background: linear-gradient(0deg, rgba(197, 170, 80, 1) 0%, rgba(217, 205, 176, 1) 100%);
	padding-top: 10%;
	padding-bottom: 30%;
}

.Sec02::before {
	content: "";
	position: absolute;
	bottom: -1px;
	left: 0;
	background-image: url(../img/250819/Sec02_deco01.webp);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	width: 100%;
	height: 0;
	padding-top: 16.53%;
}

.Sec02 .text01 {
	font-size: 24px;
	color: #644702;
	padding: 4% calc((100% - 86.67%) / 2) 0;
}

.Sec02 .flex01 {
	display: flex;
	justify-content: space-between;
	padding: 15% calc((100% - 94.67%) / 2) 0;
}

.Sec02 .half01 {
	display: flex;
	flex-direction: column;
	background-color: #fff;
	width: 49.014%;
	padding-bottom: 3%;
}

.Sec02 .half01 h4 {
	position: relative;
	top: -5.5%;
}

.Sec02 .half01 p {
	font-size: 24px;
	color: #644702;
	padding-bottom: 10%;
}

.Sec02 .pd01 {
	padding: 4% 5.32% 0;
}

.Sec02 .bg01 {
	background-image: url(../img/250819/Sec02_bg01.webp);
	background-repeat: no-repeat;
	background-size: 100%;
    background-position: 0 83%;
}

.Sec02 .bg02 {
	background-image: url(../img/250819/Sec02_bg02.webp);
	background-repeat: no-repeat;
	background-size: 100%;
    background-position: 0 76%;
}

.Sec02 .bg03 {
	background-image: url(../img/250819/Sec02_bg03.webp);
	background-repeat: no-repeat;
	background-size: 100%;
    background-position: 0 18%;
}

@media (max-width: 750px) {
	.Sec02 .half01 h4 {
		top: -6%;
	}

	.Sec02 .text01 {
		font-size: 12px;
	}

	.Sec02 .half01 p {
		font-size: 12px;
	}

.Sec02 .bg03 {
    background-position: 0 30%;
}

}

/* .Sec03 */
.Sec03 {
	background: #c1c2b3;
	background: linear-gradient(0deg, rgba(193, 194, 179, 1) 0%, rgba(122, 148, 96, 1) 100%);
	padding-top: 10%;
	padding-bottom: 10%;
}

.Sec03 .text01 {
	font-size: 24px;
	color: #3b472e;
	padding: 3% calc((100% - 86.67%) / 2) 0;
}

.Sec03 .flex01 {
	display: flex;
	justify-content: space-between;
	margin-top: 15%;
	padding: 0 calc((100% - 94.67%) / 2);
}

.Sec03 .half01 {
	display: flex;
	flex-direction: column;
	background-color: #fff;
	width: 49.014%;
	padding-bottom: 3%;
}

.Sec03 .half01 h4 {
	position: relative;
	top: -5%;
}

.Sec03 .half01 p {
	font-size: 24px;
	color: #191919;
	padding-bottom: 10%;
}

.Sec03 .pd01 {
	padding: 5% 5.32% 0;
}

.Sec03 .bg01 {
	background-image: url(../img/250819/Sec03_bg01.webp);
	background-repeat: no-repeat;
	background-size: 100%;
    background-position: 0 115%;
}

.Sec03 .bg02 {
	background-image: url(../img/250819/Sec03_bg02.webp);
	background-repeat: no-repeat;
	background-size: 100%;
    background-position: 0 95%;
}

@media (max-width: 750px) {
	.Sec03 .text01 {
		font-size: 12px;
	}

	.Sec03 .half01 p {
		font-size: 12px;
	}
}

/* .Sec04 */
.Sec04 {
	position: relative;
	background: #c5aa50;
	background: linear-gradient(0deg, rgba(197, 170, 80, 1) 0%, rgba(217, 205, 176, 1) 100%);
	padding-top: 8%;
}

.Sec04::before {
	content: "";
	position: absolute;
	bottom: -1px;
	left: 0;
	background-image: url(../img/250819/Sec04_deco01.webp);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	width: 100%;
	height: 0;
	padding-top: 6.67%;
}

.Sec04 .flex01 {
	display: flex;
	justify-content: space-between;
	margin-top: 12%;
	padding: 0 calc((100% - 94.67%) / 2);
}

.Sec04 .half01 {
	display: flex;
	flex-direction: column;
	background-color: #fff;
	width: 49.014%;
	padding-bottom: 3%;
}

.Sec04 .half01 h4 {
	position: relative;
	top: -3.5%;
}

.Sec04 .half01 p {
	font-size: 24px;
	color: #191919;
	padding-bottom: 10%;
}

.Sec04 .pd01 {
	padding: 5% 5.46% 0;
}

.Sec04 .bg01 {
	background-image: url(../img/250819/Sec04_bg01.webp);
	background-repeat: no-repeat;
	background-size: 100%;
    background-position: center bottom;
	padding-bottom: 20%;
}

@media (max-width: 750px) {
	.Sec04 .half01 h4 {
		top: -3%;
	}

	.Sec04 .half01 p {
		font-size: 12px;
	}
}

.Sec05 {
	background-color: #8f3703;
	padding-top: 10%;
	padding-bottom: 14%;
}

.Sec05 .flex01 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 7%;
	padding: 0 calc((100% - 94.67%) / 2);
}

.Sec05 .half01 {
	display: flex;
	flex-direction: column;
	background-color: #fff;
	width: 49.014%;
	margin-top: 2.5%;
	padding-bottom: 7.5%;
}

.Sec05 .half01 figure {
	padding: 6.5% 5.46% 0;
}

.Sec05 .half01 dt {
	font-size: 24px;
	font-weight: bold;
	color: #8f3703;
}

.Sec05 .half01 .text01 {
	font-size: 24px;
	color: #191919;
}

.Sec05 .half01 .text01 em {
	font-style: normal;
	color: #f00;
}

.Sec05 .half01 .text01 span {
	display: block;
}

.Sec05 .half01 .pd01 {
	padding: 0 3.5%;
}

@media (max-width: 750px) {
	.Sec05 .half01 dt {
		font-size: 12px;
	}

	.Sec05 .half01 .text01 {
		font-size: 12px;
	}
}

/* .Sec06 */
.Sec06 {
	position: relative;
	background: #8a4c83;
	background: linear-gradient(0deg, rgba(138, 76, 131, 1) 0%, rgba(143, 145, 154, 1) 100%);
	padding-top: 24%;
	padding-bottom: 15%;
}

.Sec06::before {
	content: "";
	position: absolute;
	top: -1px;
	left: 0;
	background-image: url(../img/250819/Sec06_deco01.webp);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	width: 100%;
	height: 0;
	padding-top: 6.67%;
}

.Sec06 .flex01 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 0 calc((100% - 94.67%) / 2);
}

.Sec06 .half01 {
	display: flex;
	flex-direction: column;
	background-color: #fff;
	width: 49.014%;
	padding-bottom: 5%;
}

.Sec06 .half01 figure {
	padding: 6.5% 5.46% 0;
}

.Sec06 .half01 dt {
	font-size: 24px;
	font-weight: bold;
	color: #753d6f;
	margin-top: 6%;
}

.Sec06 .half01 .text01 {
	font-size: 24px;
	color: #191919;
	margin-top: 8%;
}

.Sec06 .half01 .pd01 {
	margin-bottom: 20%;
	padding: 0 5.46%;
}

@media (max-width: 750px) {
	.Sec06 .half01 dt {
		font-size: 12px;
	}

	.Sec06 .half01 .text01 {
		font-size: 12px;
	}
}

/* .Sec07 */
.Sec07 {
	background-color: #f0f0eb;
	padding-top: 3.5%;
}

.Sec07 .text01 {
	font-size: 26px;
	padding: 3% 6.5% 0;
}

@media (max-width: 750px) {
	.Sec07 .text01 {
		font-size: 13px;
	}
}

/* .Sec08 */
.Sec08 {
	background-color: #f0f0eb;
	padding: 20% 5.134% 15%;
}

.Sec08 .dTxt {
	font-size: 24px;
	margin-top: 10%;
}

@media (max-width: 750px) {
	.Sec08 .dTxt {
		font-size: 12px;
	}
}
