@charset "UTF-8";


/* -------------------------------------
rakkei2026
------------------------------------- */
.fv{
	position: relative;
}
.fv__slider{
	position: relative;
	z-index: 0;
}
/* .fv__slider::after{
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 1;
} */
.fv__text{
	position: absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	width: 80%;
	max-width: 506px;
	z-index: 2;
}

.intro{
	padding: 67px 0 10.13vw;
	background-color: #e3dfdc;
	position: relative;
	overflow: hidden;
}
.intro::after{
	position: absolute;
	content: '';
	display: block;
	right: -50px;
	bottom: -50px;
	width: 341px;
	height: 161px;
	background-image: url(../imgs/rakkei2026/deco.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
	z-index: 2;
}

.intro__imgText{
	width: 90%;
	max-width: 760px;
	margin: 0 auto 30px;
}
.intro__imgText02{
	width: 95%;
	max-width: 960px;
	margin: 0 auto 40px;
}
.intro__wrap{
	width: 100%;
	max-width: 653px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.intro__text01{
	margin-bottom: 5px;
	font-size: clamp(18px,2.083vw,30px);
	font-weight: 700;
	color: #be0008;
	font-family: 'Noto Sans JP', sans-serif;
	line-height: 1;
}
.intro__text01 .small{
	display: block;
	font-size: clamp(16px,1.666vw,24px);
	line-height: 1.75;
}
.intro__text02{
	font-size: clamp(14px, 1.041vw, 15px);
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 600;
    line-height: 1.75;
    color: #4a4a4a;
}
.intro__link{
	font-size: clamp(15px, 1.111vw, 16px);
	display: inline-block;
	line-height: 1.3;
	color: #4a017d;
	border-bottom: 1px solid #4a017d;
}
.intro__link:hover{
	opacity: 0.7;
	/* text-decoration: underline; */
}
.intro__img{
	width: 50%;
	max-width: 205px;
}

.goju{
	margin-bottom: 10.41vw;
	padding-top: 80px;
	background-image: url(../imgs/rakkei2026/goju_bg.jpg);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}
.goju__head{
	display: flex;
	justify-content: center;
	align-items: start;
	gap: 35px;
}
 .goju__ttl{
	font-size: clamp(18px,2.083vw,30px);
	 -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  letter-spacing: 0.05em;
 }
 .goju__num{
    text-orientation: upright;
 }
  .goju__textWrap {
	width: 100%;
	max-width: 600px;
	/* margin: 0 auto;
	padding: 0 20px; */
  }
 .goju__textWrap p{
 	font-size: 14px;
 	line-height: 2.14;
	letter-spacing: 0.1em;
	 -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
 }
 .goju__img{
	width: 90%;
	max-width: 700px;
	margin: 0 auto;
 }







.conts{
	margin-bottom: clamp(80px,11.66vw,168px);
}
.conts__wrap{
	width: 100%;
	max-width: 1180px;
	padding: 0 20px;
	margin: 0 auto;
	margin-bottom: clamp(80px,15.06vw,217px );
	display: flex;
	justify-content: space-between;
	align-items: start;
	gap: 30px;
}
.conts__wrap:last-child{
	margin-bottom: 0;
}

.conts__left{
	width: 40%;
	max-width: 472px;
}
.conts__ttl{
	margin-bottom: 15px;
	font-size: clamp(18px,1.944vw,28px);
	font-weight: 500;
	line-height: 1.75;
	color: #4a4a4a;
}
.conts__text{
	font-size: clamp(14px,1.041vw,15px);
	line-height: 1.75;
	color: #4a4a4a;
}

.conts__right{
	width: 60%;
	max-width: 597px;
}
dl.conts__list {
  display: grid;
  grid-template-columns: 220px 1fr;
  border-top: 1px solid #dddddd;
}
dl.conts__list dt,
dl.conts__list dd {
  padding: 20px 0;
 font-size: clamp(14px,1.041vw,15px);
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 600;
  line-height: 1.75;
  color: #4a4a4a;
	border-bottom: 1px solid #dddddd;
}
dl.conts__list dt {
	padding-left: 30px;
}
dl.conts__list dd {
  margin: 0;
}
dl.conts__list dd .purple{
	color: #4a017d;
	display: inline-block;
}
dl.conts__list dd .purple span.conts__list--bus{
	font-size: clamp(15px,1.18vw,17px);
}

.conts__rightText{
	margin-bottom: 45px;
	font-size: clamp(14px,1.041vw,15px);
  	font-family: 'Noto Sans JP', sans-serif;
  	font-weight: 600;
  	line-height: 1.75;
  	color: #4a4a4a;
}
.conts__rightBtn{
	margin-bottom: 60px;
}
.conts__rightBtn--link{
	width: 90%;
	max-width:523px ;
	margin: 0 auto;
	padding: 23px 0;
	display: block;
	font-size: clamp(15px,1.319vw,19px);
	font-family: 'Noto Sans JP', sans-serif;
	color: #fff;
	text-align: center;
	line-height: 1.75;
	background-color: #e64437;
	border-radius: 16px;
	line-height: 1.32;
}
.conts__list--tel,.conts__list--fax{
	display: inline-block;
}







@media screen and (max-width:1200px) {

.conts__left{
	width: 50%;
}
.conts__right{
	width: 50%;
}
dl.conts__list{
	grid-template-columns: 170px 1fr;
}
dl.conts__list dt {
    padding-left: 20px;
}
}

@media screen and (max-width:1000px) {
	.fv{
		margin-top: 69px;
	}
}
@media screen and (max-width:880px) {
	.conts__wrap{
		display: block;
	}
	.conts__left{
		width: 100%;
		margin: 0 auto 50px;
	}
	dl.conts__list dt{
		padding-left: 0;
	}
	.conts__right{
		width: 100%;
		max-width: 472px;
		margin: 0 auto;
	}
	.conts__rightText{
		margin-bottom: 30px;
		font-size: 14px;
	}
	.conts__rightBtn{
	margin-bottom: 30px;
}
}
@media screen and (max-width:768px) {
	.fv__text{
		width: 92%;
	}
	.intro__imgText{
		margin-bottom: 20px;
	}
	.intro__imgText02{
		width: 100%;
	}
	.intro__wrap{
		display: block;
		padding: 0 20px;
	}
	.intro__textWrap{
		margin-bottom: 20px;
	}
	.intro__img{
		width: 100%;
		margin: 0 auto;
		position: relative;
		z-index: 3;
	}

	.goju__head{
		margin-bottom: 30px;
		padding: 0 20px;
		flex-direction: column-reverse;
		align-items: center;
		gap: 30px;
	}
	.goju__ttl{
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
		text-align: center;
	}
	.goju__textWrap p{
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
				text-align: left;
	}
}
@media screen and (max-width:640px) {
	.fv{
		margin-top: 65px;
	}
}
@media screen and (max-width:500px) {
	.fv{
		margin-top: 60px;
	}
	dl.conts__list {
        grid-template-columns:1fr;
    }
	dl.conts__list dt{
		border-bottom: 0;
		padding-top: 15px;
		padding-bottom: 0;
	}
	dl.conts__list dd{
		padding-top: 0;
		padding-bottom: 15px;
	}
	
}
@media screen and (max-width:375px) {
	.intro {
    	padding: 50px 0 60px 0;
	}
	.intro__text01 .small{
		font-size: 15px;
	}
	.goju{
		padding-top: 50px;
	}
	.goju__textWrap p{
		font-size: 12px;
	}
	.conts__wrap{
		margin-bottom: 50px;
	}
	.conts__rightBtn{
	margin-bottom: 20px;
	}
	.conts__rightBtn--link{
		width: 100%;
		font-size: 14px;
		line-height: 1.5;
	}
}
