main h2{
	font-weight:normal;
}
.mainimage{
	padding-top:clamp(30px,4.68dvw,90px);
	position:relative;
	margin:0 auto 180px;
}
.mainimage-inner{
	display:flex;
	position:relative;
	z-index:1;
}
.mainimage .catch{
	width:35.4dvw;
	flex:none;
	writing-mode: vertical-rl;
	font-size:48px;
	padding:70px 0 0;
	display:flex;
	align-items:center;
}
.mainimage figure{
	width:calc(100% - 35.4dvw);
	flex:none;
}
.mainimage figure img{
	width:100%;
	height:100%;
	display:block;
	object-fit:cover;
}
#receuit_button{
	position:absolute;
	z-index:2;
	width:200px;
	height:200px;
	border-radius:50%;
	background:#fff;
	box-shadow:0 0 10px rgba(0,0,0,0.2);
	bottom:-140px;
	right:3.64dvw;
}
#receuit_button a{
	display:flex;
	width:100%;
	height:100%;
	border-radius:50%;
	align-items:center;
	justify-content:center;
	text-align:center;
	text-decoration:none;
	background:url('../images/common/button_recruit.png') no-repeat center center;
}
#receuit_button a:hover{
	background:#f3e5e7 url('../images/common/button_recruit.png') no-repeat center center;
}
.news{
	max-width:1040px;
	margin:0 auto 75px;
	position:relative;
}
.news h2{
	font-size:30px;
	margin-bottom:20px;
}
.news article{
	border-top:2px solid #9c9a98;
}
.news dl{
	border-bottom:2px solid #9c9a98;
	padding:4px 0;
	display:flex;
	gap:10px;
}
.news dt{
	border-radius:10px;
	background:#fff;
	text-align:center;
	width:150px;
	display:flex;
	align-items:center;
	justify-content:center;
	flex:none;
}
.news dd{
	width:calc(100% - 160px);
	padding:20px 0;	
	font-family: "source-han-sans-japanese", sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size:18px;
}
.more-news{
	position:absolute;
	top:0;
	right:0;
	padding:0 20px 0 0;
	text-decoration:none;
	background:url('../images/common/more.png') no-repeat right center;
}
.recruit{
	max-width:1520px;
	padding:40px 0 0 4.1dvw;
	border-radius:20px;
	margin:0 auto 100px;
	background:#fff;
}
.recruit article{
	display:flex;
}
.recruit .text{
	width:calc(510px + 4.1dvw);
	padding:50px 30px 0 4.1dvw;
	box-sizing:border-box;
	flex:none;
}
.recruit .text h3{
	font-size:28px;
	font-weight:normal;
	margin-bottom:45px;
	line-height:1.5em;
}
main .more{
	padding:60px 0 0;
}
main .more a{
	width:320px;
	line-height:60px;
	border-radius:30px;
	box-shadow:0 0 10px rgba(0,0,0,0.2);
	padding:0 0 0 40px;
	box-sizing:border-box;
	display:block;
	text-decoration:none;
	background:#fff url('../images/common/more.png') no-repeat right 20px center;
}
main .more a:hover{
	background:#f3e5e7 url('../images/common/more.png') no-repeat right 20px center;
}
.recruit_l h2{
	font-size:30px;
	margin:0 0 110px 40px;
}
.recruit-thumbs img{
	display:block;
}
.recruit-thumbs img:first-child{
	float:right;
	display:block;
	margin-bottom:130px;
}
.recruit-thumbs img:first-child:after{
	content:"";
	display:block;
	clear:both;
}
.about-saiseikai{
	max-width:1520px;
	margin:0 auto 60px;
	padding:0 0 60px;
	border-bottom:2px solid #fff;
}
.about-saiseikai article{
	display:flex;
	gap:5.2dvw;
}
.about-saiseikai .text{
	width:640px;
	flex:none;
	display:flex;
	flex-direction:column;
	justify-content:center;
}
.about-saiseikai .text h2{
	font-size:30px;
	padding:0 0 70px;
	margin-bottom:20px;
	border-bottom:3px double #fff;
}
.about-saiseikai .text h2 img{
	vertical-align:middle;
}
.about-saiseikai .more{
	margin:0 0 0 320px;
}
.about-iwate-saiseikai{
	max-width:1520px;
	margin:0 auto 60px;
}
.about-iwate-saiseikai article{
	display:flex;
	gap:5.2dvw;
	justify-content:flex-end;
}
.about-iwate-saiseikai .text{
	width:640px;
	flex:none;
	display:flex;
	flex-direction:column;
	justify-content:center;
}
.about-iwate-saiseikai .text h2{
	font-size:30px;
	padding:0 0 70px;
	margin-bottom:20px;
	border-bottom:3px double #fff;
}
.about-iwate-saiseikai .text h2 img{
	vertical-align:middle;
}
.about-iwate-saiseikai .more{
	margin:0 0 0 320px;
}
@media (max-width: 768px) {
  .mainimage {
    flex-direction: column;
    margin: 0 auto 100px;
  }

  .mainimage-inner {
    flex-direction: column;
  }

  .mainimage .catch {
    width: 100%;
    font-size: 24px;
    padding: 20px 0 0;
    writing-mode: horizontal-tb;
    text-align: center;
    justify-content: center;
  }

  .mainimage figure {
    width: 100%;
  }

  #receuit_button {
    width: 120px;
    height: 120px;
    bottom: -80px;
    right: 20px;
  }

  .news {
    padding: 0 20px;
    margin-bottom: 50px;
  }

  .news h2 {
    font-size: 24px;
  }

  .news dl {
    flex-direction: column;
  }

  .news dt {
    width: 100%;
    margin-bottom: 10px;
  }

  .news dd {
	  width: 100%;
	  font-size: 16px;
	  padding:0 0 0 !important;
  }

  .more-news {
    padding-right: 10px;
    background-size: 16px auto;
  }

  .recruit {
    padding: 20px;
    margin-bottom: 60px;
  }

  .recruit article {
    flex-direction: column;
  }

  .recruit .text {
    width: 100%;
    padding: 30px 0;
  }

  .recruit .text h3 {
    font-size: 22px;
    margin-bottom: 20px;
  }

  main .more {
    padding-top: 30px;
  }

  main .more a {
	  margin:0 auto;
	  line-height: 50px;
    padding-left: 20px;
    background-size: 20px auto;
  }

  .recruit_l h2 {
    font-size: 24px;
    margin: 0 0 60px 0;
    padding: 0 20px;
  }

  .recruit-thumbs img:first-child {
    float: none;
    margin: 0 auto 40px;
  }

  .about-saiseikai,
  .about-iwate-saiseikai {
    padding: 0 20px 40px;
  }

  .about-saiseikai article,
  .about-iwate-saiseikai article {
    flex-direction: column;
    gap: 20px;
  }

  .about-saiseikai .text,
  .about-iwate-saiseikai .text {
    width: 100%;
  }

  .about-saiseikai .text h2,
  .about-iwate-saiseikai .text h2 {
    font-size: 24px;
    padding-bottom: 20px;
    margin-bottom: 20px;
  }

  .about-saiseikai .more,
  .about-iwate-saiseikai .more {
    margin: 0 auto;
  }
	.recruit-thumbs{
		width:100%;
		display:flex;
		justify-content:space-between;
	}
	.recruit-thumbs img{
		width:43dvw;
		height:43dvw;
		object-fit:cover;
	}
}
