@charset "UTF-8";
/* CSS Document */


/* contents-top */

.contents-top {
	width: 100%;
	padding-top: 140px;
	padding-bottom: 100px;
	position: relative;
	background-image: url("top/images/back01.png");
background-position: center top 730px;
background-repeat: no-repeat;
background-size: 100% auto;
}

.contents-top::before {
	content: "";
	position: absolute;
left: 2%;
top: 350px;
	background-image: url("common/images/scroll.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 20px;
	height: 200px;
}

.contents-top img {
	width: 100%;
	height: auto;
}

/* midashi-box */

.midashi-box {
	margin-bottom: 50px;
}

.contents-top h2 {
	font-family: "Josefin Sans", sans-serif;
	color: #53b7b0;
line-height: 0.9;
letter-spacing: 0.15em;
font-weight: 200;
}

.contents-top h3 {
	font-family: "Noto Serif JP", serif;
letter-spacing: 0.25em;
	font-weight: 400;
}


/* link01 */

.link01 a {
	font-family: "Noto Serif JP", serif;
line-height: 1.2;
letter-spacing: 0.2em;
font-weight: 400;
	display: inline-block;
	 padding: 17px 60px;
    padding-right: 80px;
	min-width: 280px;
	position: relative;
	border-style : solid;
border-color : #000;
border-width : 1px;
	background-color: #FFF;
	border-radius: 60px;
	text-align: left;
}

.link01 a:hover {
	opacity: 1;
}

.link01 a::before {
content: "";
	position: absolute;
right: 30px;
top: 27px;
	background-image: url("common/images/link-arrow01.svg");
background-position: right top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 38px;
	height: 8px;
	transition: .5s;
}

.link01 a:hover::before {
	right: 20px;
}


/* main-img-top */

.main-img-top {
	width: 90%;
	max-width: 1500px;
	background-color: #f9f1e7;
	border-radius: 15px;
	position: relative;
	padding: 50px 60px;
	margin-bottom: 160px;
}

.main-img-top::before {
	content: "";
	position: absolute;
right: 0px;
bottom: 0px;
	background-image: url("top/images/main-img.png");
background-position: right center;
background-repeat: no-repeat;
	background-size: 100% auto;
	width: 70%;
	min-width: 900px;
	max-width: 1200px;
	height: 130%;
	margin-right: -50px;
	margin-bottom: -80px;
}

.main-img-top h2, .main-img-top ul li a, .main-img-top ul li span {
	font-family: "Noto Serif JP", serif;
	color: #a67c52;
letter-spacing: 0.3em;
	font-weight: 400;
	position: relative;
}

.main-img-top h2 {
	font-size: 40px;
line-height: 1.4;
	margin-bottom: 40px;
}

.main-img-top ul {
	position: relative;
}

.main-img-top ul::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
	width: 27px;
	height: 100%;
	background-color: #998675;
	display: block;
	margin-left: -60px;
	border-radius: 0px 10px 10px 0px;
}

.main-img-top ul li:not(:last-child) {
	margin-bottom: 15px;
}

.main-img-top ul li a, .main-img-top ul li span {
	font-size: 21px;
line-height: 1.2;
	clip-path: url(#clip-frame);
	width: 287px;
	height: 53px;
	display: flex;
  justify-content: center;
align-items: center;
flex-wrap: wrap;
    background-color: #FFF;
}

.main-img-top ul li a:hover {
	color: #FFF;
    background-color: #a67c52;
	opacity: 1;
}



/* contents01 */

.contents01 {
	width: 100%;
	position: relative;
}

.contents01 .lay01 {
	width: 100%;
	display: flex;
  justify-content: flex-end;
flex-wrap: wrap;
}

.contents01 .lay01 .clip-img {
	width: 50%;
}

.contents01 .lay01 image {
	width: 100%;
height: auto;
	clip-path: url(#clip);
}

.contents01 .lay02 {
	position: absolute;
left: 0px;
top: 0px;
	width: 100%;
}

.contents01 .lay02 .box-inner {
	width: 88%;
	max-width: 1400px;
	padding-top: 50px;
}

.contents01 h2 {
	font-size: 64px;
}

.contents01 h3 {
	font-size: 37px;
	line-height: 1.4;
	padding: 20px 0px 40px;
}

.contents01 p {
	line-height: 2;
}

/* contents02 */

.contents02 {
	width: 100%;
	text-align: center;
	padding: 120px 0px;
	background-image: url("common/images/back-treatment.png");
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
}

.contents02 .box-inner {
	display: flex;
  justify-content: center;
flex-wrap: wrap;
	gap:0px 50px;
}

.contents02 .box {
	position: relative;
	padding-top: 80px;
	width: 390px;
}

.contents02 .box::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
background-position: center top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 100%;
	height: 56px;
}

.contents02 .box:nth-child(1)::before {
	background-image: url("common/images/t01.svg");
}

.contents02 .box:nth-child(2)::before {
	background-image: url("common/images/t02.svg");
}

.contents02 .box:nth-child(3)::before {
	background-image: url("common/images/t03.svg");
}

.contents02 .clip-img {
	width: 350px;
	display: inline-block;
}

.contents02 image {
	width: 100%;
height: auto;
	clip-path: url(#clip2);
}

.contents02 p {
	font-family: "Noto Serif JP", serif;
	padding-top: 30px;
	line-height: 2.2;
	font-size: 20px;
	letter-spacing: 0.05em;
}


/* contents03 */

.contents03 {
	width: 100%;
	text-align: center;
}

.contents03 .lay01 {
	width: 640px;
	margin-bottom: 50px;
}

.contents03 .lay01 ul {
	display: flex;
  justify-content: center;
align-items: center;
flex-wrap: wrap;
	gap:18px 40px;
}

.contents03 .lay01 ul li a {
	font-family: "Noto Serif JP", serif;
	font-size: 21px;
	color: #a67c52;
line-height: 1.2;
	background-image: url("top/images/frame-link2.svg");
background-position: center;
background-repeat: no-repeat;
background-size: cover;
	width: 287px;
	height: 53px;
	display: flex;
  justify-content: center;
align-items: center;
flex-wrap: wrap;
    transition: none;
}

.contents03 .lay01 ul li a:hover {
	color: #FFF;
	background-image: url("top/images/frame-link3.svg");
	opacity: 1;
}

.contents03 .lay02 {
	width: 100%;
	margin-bottom: 130px;
	position: relative;
	text-align: center;
	background-image: url("top/images/back02.jpg");
background-position: center top;
background-repeat: no-repeat;
background-size: cover;
	padding: 60px 0px 120px;
}

.contents03 .lay02::before {
	content: "";
	position: absolute;
left: 0px;
bottom: 0px;
	background-image: url("top/images/text01.svg");
background-position: center bottom;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 100%;
	height: 100px;
	margin-bottom: -40px;
	mix-blend-mode: multiply;
}

.contents03 .lay02 .box-img {
	width: 90%;
	max-width: 1420px;
	margin-bottom: 40px;
}

.contents03 .lay03 {
	width: 90%;
	max-width: 1420px;
	text-align: center;
}

.contents03 .lay03 .box {
	text-align: center;
	background-image: url("top/images/back03.png");
background-position: center top;
background-repeat: no-repeat;
background-size: cover;
	padding: 50px 100px 40px;
	border-radius: 35px;
}

.contents03 .lay03 .box:not(:last-child) {
	margin-bottom: 40px;
}

.contents03 .lay03 .box-text {
	background-color: #FFF;
	padding: 40px 0px;
	border-radius: 30px;
}

.contents03 .box-title {
	margin-bottom: 40px;
}

.contents03 .lay03 .box-title {
	margin-bottom: 30px;
}

.contents03 .box-title h4 {
	font-family: "Josefin Sans", sans-serif;
	font-size: 46px;
color: #a67c52;
letter-spacing: 0.25em;
font-weight: 200;
}

.contents03 .box-title h5 {
	font-family: "Noto Serif JP", serif;
	font-size: 22px;
color: #a67c52;
letter-spacing: 0.25em;
font-weight: 400;
	padding-top: 15px;
}

.contents03 .lay02 .box-title h5 {
	font-size: 25px;
color: #000;
}

.contents03 h6 {
	padding-top: 35px;
}

.contents03 p {
	line-height: 2.5;
}

.contents03 .lay03 p {
	font-size: 16px;
}


/* contents04 */

.contents04 {
	width: 100%;
	text-align: center;
	border-bottom-style : solid;
border-color : #f2f2f2;
border-width : 15px;
	padding-bottom: 60px;
}

.contents04 .news-box {
	width: 1000px;
	height: 440px;
}

.contents04 .news-box iframe {
	width: 100%;
	height: 440px;
}

.contents04 .box {
	border-style : solid;
border-color : rgba(173, 161, 173, 0.5);
border-width : 1px;
}

.contents04 .box:not(:last-child) {
	margin-bottom: 25px;
}

.contents04 .box a {
	display: flex;
  justify-content: space-between;
flex-wrap: wrap;
	padding: 15px 0px;
	position: relative;
}

.contents04 .box a:hover {
	opacity: 1;
	background-color: #f2f2f2;
}

.contents04 .box a::before {
	content: "more";
	position: absolute;
right: 20px;
bottom: 10px;
	font-family: "Josefin Sans", sans-serif;
	font-size: 16px;
color: #ada1ad;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 500;
}


.contents04 .midashi-box h2 {
	color: #348989;
	display: flex;
    align-items: center;
}

.contents04 .midashi-box h2::before,
.contents04 .midashi-box h2::after {
    content: "";
    height: 15px;
    flex-grow: 1;
    background-color: #f2f2f2;
}

.contents04 .midashi-box h2::before {
    margin-right: 60px;
}

.contents04 .midashi-box h2::after {
    margin-left: 60px;
}

.contents04 h5 {
	width: 150px;
	display: flex;
  justify-content: center;
align-items: center;
flex-wrap: wrap;
	font-size: 16px;
line-height: 1.2;
letter-spacing: 0em;
font-weight: 400;
	border-right-style : solid;
border-color : rgba(173, 161, 173, 0.5);
border-width : 1px;
}

.contents04 h6 {
	padding-top: 50px;
}

.contents04 p {
	flex: 1;
	padding: 20px 30px;
	text-align: left;
	font-size: 16px;
}




.sp-view {
	display: none;
}
