@charset "utf-8";
/******************************
TOP
*******************************/
/****TOP背景動画*****/
.mvsmpl{
	overflow: hidden;
	position: relative;
}
.topmsg{
	display: flex;
	flex-direction: row-reverse;
	position: absolute;
	transform: translateX(-50%);
	z-index: 1;
	left: 50%;
	top: 80px;
}
.topmsg2 > div > img{
  mask-image: linear-gradient(to bottom, black 50%, transparent 50%);
  -webkit-mask-image: linear-gradient(to bottom, black 50%, transparent 50%);
  mask-size: 100% 200%;
  -webkit-mask-size: 100% 200%;
  mask-position: 0 100%;
  -webkit-mask-position: 0 100%;
  animation: revealFromTop 1.5s forwards ease-out;
}
.topmsg2 > div:first-child > img{
	animation-delay: .5s;
}
.topmsg2 > div:nth-child(2) > img{
	animation-delay: 2.5s;
}
.topmsg2 > div:last-child > img{
	animation-delay: 4s;
}
@keyframes revealFromTop {
  to {
    mask-position: 0 0;
    -webkit-mask-position: 0 0;
  }
}
@media screen and (max-width: 699px) {
	.topmsg > div{margin: 0 1em;}
	.topmsg > div > img{
		width: 25px;
	}
}
@media screen and (min-width: 700px) {
	.topmsg{
		top: 100px;
	}
	.topmsg > div{margin: 0 1.75em;}
	.topmsg > div > img{
		width: 40px;
	}
}
@media screen and (min-width: 1280px) {
	.topmsg{
		top: 80px;
	}
	.topmsg > div > img{
		width: 55px;
	}
}

/****TOP Swiper****/
.swiper-container{
  width: 100%;
  margin: 0 auto;
  overflow: visible;
  position: relative;
}
.swiper-container .swiper-slide {
	width: 100%;
	height: 100%;
	position: relative;
}
.swiper-container .swiper-slide > img{
  width: 100%;
	height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 699px) {
	.swiper-container{
		height: 350px;
	}
}
@media screen and (min-width: 700px) {
	.swiper-container{
		height: 500px;
	}
}
@media screen and (min-width: 1280px) {
	.swiper-container{
		height: 1080px;
	}
}


/****TOP contents swiper****/
.fv_wrapper {
	padding: 3.5em;
	margin: 0 auto;
	background: hsl(0, 0%, 100%);
  position: relative;
}
.fv-slide_wrapper{
  padding: 0;
  margin: 0 auto;
}
.swiper-process{
  margin: 0 auto;
  overflow: hidden;
}
.fv-slide_wrapper .swiper-slide {
	text-align: left;
	height: 100%;
}
.fv-slide_wrapper .swiper-slide > img{
	width: 100%;
}
.fv-slide_wrapper .swiper-slide > .slide-img_wrapper > img{
	width: 100%;
}

/* ドット全体のコンテナ */
.fv-slide_wrapper .swiper-pagination {
  bottom: -50px; /* 位置の調整 */
}

.fv-slide_wrapper .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: #fff;
	border: 1px solid hsl(151, 44%, 67%);
  opacity: 1;
  border-radius: 50%;
  margin: 0 6px !important;
  transition: all 0.3s ease;
}

.fv-slide_wrapper .swiper-pagination-bullet-active {
  background: hsl(151, 44%, 67%);
}

/* スライド矢印 */
.swiper-button-next,
.swiper-button-prev {
	background: hsl(0, 0%, 100%);
	width: 100px;
	height: 100px;
	box-sizing: border-box;
	border-radius: 100%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
}
.swiper-button-prev {
	left: 10px;
}
.swiper-button-next {
	left: calc(100% - 10px);
}
.fv-slide_wrapper .swiper-button-next::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 30px;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 20px solid hsl(151, 44%, 67%);
  z-index: 1;
}

/* prev: 左向き三角形 */
.fv-slide_wrapper .swiper-button-prev::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 30px;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  border-right: 20px solid hsl(151, 44%, 67%);
  z-index: 1;
}
.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
	display: none !important;
}

@media screen and (max-width: 799px) {
	.fv_wrapper {
		padding: 40px;
		border-radius: 3em;
	}
	.swiper-button-next,
	.swiper-button-prev {
			width: 60px;
			height: 60px;
	}
	.fv-slide_wrapper .swiper-button-next::after {
		right: 10px;
	}

	/* prev: 左向き三角形 */
	.fv-slide_wrapper .swiper-button-prev::after {
		left: 10px;
	}
}
@media screen and (min-width: 800px) {
	.fv_wrapper {
		border-radius: 7em;
	}
	.fv-slide_wrapper{
		width: 100%;
	}
}
@media screen and (min-width: 1200px) {
}

/****TOPメッセージ*****/
#TPMsg{
  font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	text-align: center;
	background: url(../img/top/bg_green.jpg) center top repeat;
	position: relative;
	overflow: hidden;
}
#TPMsg h2{
	font-size: 1.8em;
	font-weight: 700;
	letter-spacing: .25em;
	line-height: 175%;
}
.mnlogo{
	margin: 3em auto;
}
dl[class^="TpMNcnts"]{
	font-family: "M PLUS 1", sans-serif;
	font-weight: 500;
	text-align: center;
	margin: 0 auto;
}
dl[class^="TpMNcnts"] dt{
	color: hsl(149, 36%, 50%);
	font-size: 2em;
	font-weight: 800;
	line-height: 135%;
	margin: 3em 0 1em;
	position: relative;
}
dl[class^="TpMNcnts"] dd{
	margin: 0 auto;
}
dl[class^="TpMNcnts"] dd a{
	text-decoration: none;
}
@media screen and (max-width: 699px) {
	#TPMsg{
		padding: 4em 0 10em;
	}
	.mnlogo img{
		width: 35%;
	}
	dl[class^="TpMNcnts"]{
		width: 88%;
	}
}
@media screen and (min-width: 700px) {
	#TPMsg{
		padding: 6.5em 0 12em;
	}
	dl[class^="TpMNcnts"]{
		width: 88%;
	}
}
@media screen and (min-width: 1280px) {
	#TPMsg{
		padding: 6.5em 0 8em;
	}
	dl[class^="TpMNcnts"]{
		width: 100%;
	}
}

ul.snslst{
	width: 88%;
	padding: 0;
	margin: 0 auto;
	list-style: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
ul.snslst li{
	text-align: center;
	width: calc(100% / 2 - 2em);
	padding: 0;
	margin: 0;
}
ul.snslst li img{
	width: 100%;
	border-radius: 15px;
}
ul.snslst dl dt{
	font-family: "M PLUS 1", sans-serif;
	color: hsl(149, 36%, 50%);
	font-size: 2em;
	font-weight: 800;
	line-height: 135%;
	margin: 3em 0 2em;
	position: relative;
}
@media screen and (max-width: 699px) {
	ul.snslst dl dt{
		margin: 3em 0 .5em;
	}
	ul.snslst li{
		width: calc(100% / 2 - .5em);
	}
}
@media screen and (min-width: 700px) {
}
@media screen and (min-width: 1280px) {
	dl.TpMNcnts02{
		width: 1000px;
		margin-bottom: 5em;
	}
	ul.snslst{
		width: 550px;
	}
}


#commsg, #comsns, #comnews{
	position: relative;
}
img[class^="leaf"]{
	position: absolute;
}
img.svcleaf01{
	position: absolute;
}
@media screen and (max-width: 699px) {
	img.leaf01{
		width: 100px;
		left: -40px;
		top: -20px;
	}
	img.leaf02{
		width: 120px;
		right: -20px;
		top: -60px;
	}
	img.leaf02_2{
		display: none;
	}
	img.leaf03{
		width: 90px;
		top: -60px;
		right: -30px;
		mix-blend-mode: multiply;
	}
	img.leaf04{
		display: none;
	}
	img.leaf05{
		width: 135px;
		left: -50px;
		top: -35px;
	}
	img.leaf06{
		width: 130px;
		right: -30px;
		top: -120px;
	}
	img.leaf07{
		width: 200px;
		left: -50px;
		top: -80px;
		mix-blend-mode: multiply;
	}
	img.leaf08{
		width: 200px;
		right: -50px;
		top: -60px;
		mix-blend-mode: multiply;
	}
	img.leaf09{
		width: 150px;
		left: -50px;
		top: -80px;
		mix-blend-mode: multiply;
	}
	img.svcleaf01{
		width: 160px;
		left: -80px;
		bottom: 0;
	}
}
@media screen and (min-width: 700px) {
	img.leaf01{
		width: 190px;
		left: -50px;
		top: -20px;
	}
	img.leaf02{
		width: 240px;
		right: -50px;
		top: -60px;
	}
	img.leaf02_2{
		width: 240px;
		left: -50px;
		top: -60px;
	}
	img.leaf03{
		width: 180px;
		top: -60px;
		right: -100px;
		mix-blend-mode: multiply;
	}
	img.leaf04{
		width: 200px;
		right: -50px;
		top: -100px;
	}
	img.leaf05{
		width: 170px;
		left: -50px;
		top: -35px;
	}
	img.leaf06{
		width: 160px;
		right: -50px;
		top: -80px;
	}
	img.leaf07{
		width: 300px;
		left: -100px;
		top: -130px;
		mix-blend-mode: multiply;
	}
	img.leaf08{
		width: 300px;
		right: -100px;
		top: -100px;
		mix-blend-mode: multiply;
	}
	img.leaf09{
		width: 260px;
		left: -100px;
		top: -150px;
		mix-blend-mode: multiply;
	}
	img.svcleaf01{
		width: 320px;
		left: calc((100% - 1600px) / 2);
		bottom: 5em;
	}
}
@media screen and (min-width: 1280px) {
	img.leaf01{
		left: calc((100% - 1300px) / 2);
	}
	img.leaf02{
		right: calc((100% - 1350px) / 2);
	}
	img.leaf02_2{
		left: calc((100% - 1600px) / 2);
	}
	img.leaf04{
		width: 320px;
		right: calc((100% - 1600px) / 2);
		top: -170px;
	}
	img.leaf05{
		width: 270px;
		left: calc((100% - 1800px) / 2);
		top: -35px;
	}
	img.leaf06{
		width: 260px;
		right: calc((100% - 1400px) / 2);
		top: -120px;
	}
	img.leaf07{
		width: 565px;
		left: calc((100% - 2000px) / 2);
		top: -130px;
		mix-blend-mode: multiply;
	}
	img.leaf08{
		width: 550px;
		right: calc((100% - 2000px) / 2);
		top: -300px;
		mix-blend-mode: multiply;
	}
	img.leaf09{
		width: 460px;
		left: calc((100% - 1900px) / 2);
		top: -40px;
		mix-blend-mode: multiply;
	}
	img.svcleaf01{
		width: 320px;
		left: calc((100% - 1600px) / 2);
		bottom: 5em;
	}
}

/****TOPICS*****/
ul.newslst{
	font-size: .9em;
	width: 100%;
	padding: 3em 4em;
	margin: 0 auto;
	background: hsl(0, 0%, 100%);
	border-radius: 3em;
	list-style: none;
	box-sizing: border-box;
}
ul.newslst > li{
	margin: 1em 0;
}
ul.newslst > li > a{
	text-decoration: none;
}
ul.newslst > li > a > div{
	display: flex;
}
ul.newslst > li > a > div > div:first-child{
	color: hsl(149, 36%, 50%);
	font-weight: 800;
	line-height: 135%;
	text-align: left;
}
ul.newslst > li > a > div > div:last-child{
	font-weight: 400;
	line-height: 135%;
	text-align: left;
}
@media screen and (max-width: 699px) {
	ul.newslst{
		padding: 2em 3em;
	}
	ul.newslst > li > a > div{
		flex-direction: column;
	}
}
@media screen and (min-width: 700px) {
	ul.newslst > li > a > div{
		flex-direction: row;
		justify-content: space-between;
	}
	ul.newslst > li > a > div > div:first-child{
		width: 120px;
	}
	ul.newslst > li > a > div > div:last-child{
		width: calc(100% - 140px);
	}
}
@media screen and (min-width: 1025px) {
	ul.newslst{
		width: 100%;
	}
}

/****私たちについて*****/
#aboutus{
  font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	text-align: center;
	background: url(../img/top/bg_orange.jpg) center top repeat;
	position: relative;
}
@media screen and (max-width: 699px) {
	#aboutus{
		padding: 4em 0 14em;
	}
}
@media screen and (min-width: 700px) {
	#aboutus{
		padding: 6.5em 0 15em;
	}
}
@media screen and (min-width: 1280px) {
	#aboutus{
		padding: 6.5em 0 15em;
	}
}


[class^="ccltit"]{
	width: 340px;
	height: 170px;
	border-radius: 50% / 100% 100% 0 0;
	position: absolute;
	left: 50%;
	top: -120px;
	transform: translateX(-50%);
}
[class^="ccltit"] > img{
	width: 55px;
	position: absolute;
	transform: translateX(-50%);
	top: -30px;
	left: 50%;
}
[class^="ccltit"] strong{
	position: absolute;
	bottom: 10px;
	left: 50%;
	transform: translateX(-50%);
}
[class^="ccltit"] strong > img{
	width: 205px;
	opacity: 0;
}
[class^="ccltit"] span{
	color: hsl(33, 17%, 41%);
	font-family: "M PLUS 1", sans-serif;
	font-weight: 800;
	line-height: 110%;
	margin-top: .6em;
	display: block;
	opacity: 0;
}
[class^="ccltit"] strong > img.move{
  animation: lineup .5s forwards ease-out;
	animation-delay: .5s;
}
[class^="ccltit"] span.move{
  animation: linedwn .5s forwards ease-out;
	animation-delay: .3s;
}
.ccltit01{
	background: url(../img/top/bg_orange2.jpg) center top no-repeat;
	background-size: 100% auto;
}
.ccltit02-blue{
	background: url(../img/top/bg_blue2.jpg) center top no-repeat;
	background-size: 100% auto;
}
.ccltit02-green{
	background: url(../img/top/bg_green2.jpg) center top no-repeat;
	background-size: 100% auto;
}
.ccltit02-orange{
	background: url(../img/top/bg_orange2.jpg) center top no-repeat;
	background-size: 100% auto;
}
.SPimg1{
	margin: 0 auto;
	position: relative;
}
.SPimg1 img.Mnpic{width: 100%;}
.SPimg1 a{
	color: hsl(0,0%,100%);
  font-weight: 500;
	text-decoration: none;
	white-space: nowrap;
	padding: 0 3em;
	margin: 0;
	background: hsl(151, 44%, 67%);
	border-radius: 1.5em;
	display: inline-block;
	box-sizing: border-box;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	transition: 0.3s ease-in;
}
.SPimg1 a:hover{opacity: 0.8;}

.lkbtn_black a{background: hsl(0, 0%, 0%);}
.lkbtn_gray a	{background: hsl(330, 1%, 42%);}
.lkbtn_green a	{background: hsl(151, 44%, 67%);}

@media screen and (max-width: 699px) {
	[class^="ccltit"]{
		width: 225px;
		height: 112px;
		top: -80px;
	}
	[class^="ccltit"] > img{
		width: 40px;
	}
	[class^="ccltit"] strong > img{
		width: 150px;
	}
	.ccltit01{
		background: url(../img/top/bg_orange2.jpg) center top no-repeat;
		background-size: 255px auto;
	}
	.ccltit02-blue{
		background: url(../img/top/bg_blue2.jpg) center top no-repeat;
		background-size: 255px auto;
	}
	.ccltit02-green{
		background: url(../img/top/bg_green2.jpg) center top no-repeat;
		background-size: 255px auto;
	}
	.ccltit02-orange{
		background: url(../img/top/bg_orange2.jpg) center top no-repeat;
		background-size: 255px auto;
	}
	.SPimg1{
		width: 88%;
	}
	.SPimg1 img.Mnpic{
		border-radius: 1em;
	}
	.SPimg1 a{
		font-size: .9em;
		line-height: 40px;
		bottom: -20px;
	}
}
@media screen and (min-width: 700px) {
	[class^="ccltit"]{
		width: 340px;
		height: 170px;
		top: -120px;
	}
	.SPimg1{
		width: 88%;
	}
	.SPimg1 a{
		font-size: 1.1em;
		line-height: 60px;
		bottom: -30px;
	}
	.SPimg1 img.Mnpic{
		border-radius: 2em;
	}
}
@media screen and (min-width: 1280px) {
	.SPimg1{
		width: 1200px;
	}
	.SPimg1 a{
		line-height: 65px;
		bottom: 35px;
	}
	.SPimg1 img.Mnpic{
		border-radius: 150px;
	}
}

/****私たちにできる事*****/
#service{
  font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	text-align: center;
	padding: 1em 0 0;
	background: url(../img/top/bg_blue.jpg) center top repeat;
	position: relative;
}
.l-rowKHl{
	width: 88%;
	margin: 0 auto;
	align-items: center;
}
.l-rowKHl > div:last-child > img{
	width: 165px;
	margin-top: 3em;
}
.l-rowKHl > div:last-child > h3{
	font-size: 2em;
	letter-spacing: .2em;
	margin: 1em auto;
}
.l-rowKHl > div:last-child > p{
	font-size: .9em;
	line-height: 135%;
}
@media screen and (max-width: 699px) {
	.l-rowKHl{
		flex-direction:column-reverse;
	}
	.l-rowKHl > div{
		width: 100%;
	}
	.l-rowKHl > div:last-child > h3{
		font-size: 1.7em;
		letter-spacing: .1em;
	}
}
@media screen and (min-width: 700px) {
	.l-rowKHl > div:first-child{
		width: 45%;
	}
	.l-rowKHl > div:last-child{
		width: 50%;
	}
}
@media screen and (min-width: 1280px) {
	.l-rowKHl{
		width: 1200px;
	}
}

main.sidecut{
	overflow: hidden;
}
[id^="works"]{
	position: relative;
}
#works02, #works04, #works06{
	background: hsl(60, 100%, 94%);
}
#works03{
	background: url(../img/top/bg_green.jpg) center top repeat;
}
#works05{
	background: url(../img/top/bg_orange.jpg) center top repeat;
}
#works06{
	padding-bottom: 13em;
}
@media screen and (max-width: 699px) {
	[id^="works"]{
		padding: 2em 0 6em;
	}
}
@media screen and (min-width: 700px) {
	[id^="works"]{
		padding: 2em 0;
	}
}
@media screen and (min-width: 1280px) {
	[id^="works"]{
		padding: 8em 0;
	}
}

/******************************
投稿ページ
*******************************/
/****ページネーション***/
.pagenation{
	line-height: 150%;
	padding: 0;
	margin: 10em 0 0;
	display: flex;
	flex-direction: row;
	justify-content: center;
}
.pagenation span{
	text-align: center;
	padding: .3em .7em;
	margin: .2em .5em;
	display: inline-block;
	background: hsl(0, 0%, 95%);
	border-radius: 50%;
	aspect-ratio: 1 / 1;
}
.pagenation a{
	text-align: center;
	text-decoration: none;
	padding: .3em .7em;
	margin: .2em .5em;
	display: inline-block;
	transition: 0.3s ease-in;
}
.pagenation a:hover{
	background: hsl(0, 0%, 85%);
}
.pagenation span.nonlnk, a.prev, a.next{
	width: 25px;
	text-align: center;
	text-decoration: none;
	padding: .5rem;
	margin: .2em .5em;
	display: inline-block;
	background: none;
}
@media screen and (max-width: 799px) {
	.pagenation{
		margin: 5em 0 0;
	}
}
@media screen and (min-width: 800px) {
}
@media screen and (min-width: 1280px) {
}

.wrks-postnavi{
	margin: 5em auto 3em;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.wrks-postnavi a{
	color: hsl(0, 00, 20%);
	font-weight: 700;
	text-decoration: none;
}
.wrks-postnavi > div{
	width: calc(100% / 3);
}
.wrks-postnavi > div:first-child{text-align: left;}
.wrks-postnavi > div:nth-child(2){
	text-align: center;
	padding-top: 3em;
}
.wrks-postnavi > div:last-child{text-align: right;}

@media screen and (max-width: 699px) {
	.wrks-postnavi{
		font-size: .9em;
		width: 88%;
		margin: 3em auto 0;
	}
}
@media screen and (min-width: 700px) {
	.wrks-postnavi{
		width: 100%;
		padding: 0;
		margin: 5em auto 2em;
		box-sizing: border-box;
	}
}
@media screen and (min-width: 1280px) {
}



/****index***/
#idx-orange{
	background: url(../img/top/bg_orange.jpg) center top repeat;
	padding-bottom: 20em;
	overflow: hidden;
}
#Nwsidx{
	padding: 5em 0 8em;
	margin: 0 auto;
	background: hsl(0, 0%, 100%);
	border-radius: 2em;
	position: relative;
}
#Nwsidx h2{
  font-family: "Zen Maru Gothic", sans-serif;
	font-size: 1.4em;
	line-height: 135%;
	text-align: center;
	margin-bottom: 2em;
}
.tpcsset{
	display: flex;
}
[class^="nwsleaf"]{
	position: absolute;
}
@media screen and (max-width: 699px) {
	#Nwsidx{
		width: 96%;
		padding: 3em 6% 1em;
	}
	#Nwsidx h2 img{
		width: 40px;
	}
	.tpcsset{
		flex-direction: column;
	}
	.tpcsset > div:last-child{
		padding: 3em 3em 0;
		margin-top: 5em;
		border-top: 1px solid hsl(0, 0%, 0%);
	}
	img.nwsleaf01{
		width: 95px;
		left: -32px;
		top: 0;
	}
	img.nwsleaf02{
		width: 120px;
		right: -60px;
		top: 100px;
	}
	img.nwsleaf03{
		width: 95px;
		left: -35px;
		bottom: 25px;
	}
	img.nwsleaf04{
		width: 120px;
		right: -32px;
		bottom: -10px;
	}
}
@media screen and (min-width: 700px) {
	#Nwsidx{
		width: 92%;
	}
	.tpcsset{
		flex-direction: row;
		justify-content: space-around;
	}
	.tpcsset > div:first-child{
		width: calc(100% - 200px);
		padding: 0 2em;
	}
	.tpcsset > div:last-child{
		width: 200px;
		padding: 0 2em;
		border-left: 1px solid hsl(0, 0%, 0%);
	}
	img.nwsleaf01{
		width: 190px;
		left: -65px;
		top: -70px;
	}
	img.nwsleaf02{
		width: 240px;
		right: -120px;
		top: 100px;
	}
	img.nwsleaf03{
		width: 190px;
		left: -150px;
		bottom: 200px;
	}
	img.nwsleaf04{
		width: 240px;
		right: -65px;
		bottom: -20px;
	}
}
@media screen and (min-width: 1280px) {
	#Nwsidx{
		width: 1200px;
	}
	.tpcsset > div:first-child{
		width: calc(100% - 330px);
		padding: 0 4em;
	}
	.tpcsset > div:last-child{
		width: 330px;
		padding: 0 3em;
		border-left: 1px solid hsl(0, 0%, 0%);
	}
}

ul.Nwslst{
	padding: 0;
	margin: 2em auto 10em;
	list-style: none;
}
ul.Nwslst li{
	font-weight: 400;
	font-size: .95em;
	line-height: 135%;
	padding: 0;
	margin: 2em 0 3em;
}
ul.Nwslst li a{
	color: hsl(0, 0%, 0%);
	text-decoration: none;
}
.kijidtl{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
.kijidtl > div:first-child img{
	width: 100%;
	height: auto;
	object-fit: cover;
	aspect-ratio: 4 / 3;
}
.tmcate{
	color: hsl(146, 43%, 53%);
	font-weight: 700;
	margin-bottom: .5em;
}
.colldtl h3{
	font-size: 1.1em;
	font-weight: 700;
	margin-bottom: .7em;
}
.colldtl .rt{
	color: hsl(146, 43%, 53%);
	font-weight: 700;
}
@media screen and (max-width: 699px) {
	ul.Nwslst{
		margin: 2em auto 5em;
	}
	.kijidtl > div:first-child{
		width: 80px;
	}
	.kijidtl > div:last-child{
		width: calc(100% - 100px);
	}
}
@media screen and (min-width: 700px) {
	.kijidtl > div:first-child{
		width: 150px;
	}
	.kijidtl > div:last-child{
		width: calc(100% - 180px);
	}
}
@media screen and (min-width: 1280px) {
}



dl.sidedtl{
	margin: 2em 0;
}
dl.sidedtl dt{
	font-size: 1.1em;
	font-weight: 700;
	line-height: 110%;
	color: hsl(146, 43%, 53%);
}
dl.sidedtl dt span{
	color: hsl(33, 17%, 41%);
	font-size: .7em;
	font-weight: 900;
}
dl.sidedtl dd{
	margin-bottom: 5em;
}
dl.sidedtl dd ul{
	padding: 0;
	margin: 1em 0 1em 1.5em;
}
dl.sidedtl dd ul li{
	padding: 0;
	margin: 0 0 1em 0;
}
dl.sidedtl dd ul li a{
	text-decoration: none;
	transition: .3s all;
}
dl.sidedtl dd ul li a:hover{
	color: hsl(0, 0%, 30%);
}
@media screen and (max-width: 699px) {
}
@media screen and (min-width: 700px) {
	dl.sidedtl dt span{
		display: block;
	}
}
@media screen and (min-width: 1280px) {
	dl.sidedtl dt span{
		display: inline-block;
		margin-left: 1em;
	}
}

/****詳細***/
.tpcspost{
  font-family: "Zen Maru Gothic", sans-serif;
}
.tpcspostcate{
	font-weight: 700;
	margin: 2em 0 1em;
}
.tpcsposttime{
	color: hsl(146, 39%, 52%);
	font-size: 1.3em;
	font-weight: 700;
	margin-bottom: 2em;
}
.tpcspost h3{
	font-size: 1.4em;
	line-height: 135%;
	padding: 0 0 1em 0;
	margin: 1em 0;
	border-bottom: 1px solid hsl(0, 0%, 0%);
}
.tpcspost h3 strong{
	font-size: 1.5em;
	line-height: 135%;
	margin-bottom: 1em;
	display: block;
}
@media screen and (max-width: 699px) {
	.tpcspostcate{
		margin: 0 0 1em;
	}
	.tpcsposttime{
		margin-bottom: 1em;
	}
	.tpcspost h3 strong{
		font-size: 1.3em;
	}
}
@media screen and (min-width: 700px) {
	.tpcspostcate{
		font-size: 1.1em;
	}
}
@media screen and (min-width: 1280px) {
}


/******************************
事業案内
*******************************/
[id^="mnpg"]{
	text-align: center;
	padding: 0;
	position: relative;
}
#mnpg-blue{
	background: url(../img/top/bg_blue.jpg) center top repeat;
}
#mnpg-green{
	background: url(../img/top/bg_green.jpg) center top repeat;
}
#mnpg-orange{
	background: url(../img/top/bg_orange.jpg) center top repeat;
}
[id^="mnpg"] > img{
	width: 170px;
	height: auto;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
}
[id^="mnpg"] h1{
	position: absolute;
	left: 50%;
	bottom: 110px;
	transform: translateX(-50%);
}
[id^="mnpg"] h1 img{width: 60px;}
[id^="mnpg"] h1 strong{
  font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	white-space: nowrap;
	letter-spacing: .05em;
	line-height: 150%;
	margin: .3em auto .1em;
	display: block;
	opacity: 0;
}
[id^="mnpg"] h1 strong.move{
  animation: lineup .5s forwards ease-out;
	animation-delay: .5s;
}
[id^="mnpg"] h1 span{
	font-weight: 600;
	line-height: 100%;
	letter-spacing: 0;
	display: block;
	opacity: 0;
}
[id^="mnpg"] h1 span.move{
  animation: linedwn .5s forwards ease-out;
	animation-delay: .5s;
}
[id^="mnpg"] h1 span.shrt.move{
	font-size: .7em;
	margin-top: .7em;
  animation: lineup .5s forwards ease-out;
}
[id^="mnpg"] h1 span.lng.move{
	font-size: .5em;
	margin-top: .7em;
  animation: lineup .5s forwards ease-out;
}
[id^="mnpg"] h1 > span{
	color: hsl(33, 17%, 41%);
	font-size: 1.05em;
	font-weight: 800;
	line-height: 175%;
	display: block;
}

[class^="sideset"]{
  font-family: "Zen Maru Gothic", sans-serif;
	text-align: left;
	padding: 0;
	margin: 0 auto;
}
@media screen and (max-width: 699px) {
	[id^="mnpg"]{
		height: 320px;
	}
	[id^="mnpg"] h1{
		bottom: 80px;
	}
	[id^="mnpg"] h1 img{width: 40px;}
	[id^="mnpg"] > img{
		width: 130px;
	}
	[id^="mnpg"] h1 strong{
		font-size: 2em;
	}
	.sideset-oth{
		width: 88%;
	}
}
@media screen and (min-width: 700px) {
	[id^="mnpg"]{
		height: 500px;
	}
	[id^="mnpg"] h1 strong{
		font-size: 3em;
	}
	.sideset-oth{
		width: 88%;
	}
}
@media screen and (min-width: 1280px) {
	.sideset-mn{
		width: 1280px;
	}
	.sideset-oth{
		width: 850px;
	}
}

/****生命保険事業****/
[id^="life-insurance"]{
  font-family: "Zen Maru Gothic", sans-serif;
	text-align: center;
	padding: 0;
	margin: 0 auto;
}
[id^="life-insurance"] h3{
	margin: 1em auto;
}
[id^="life-insurance"] h3 img{
	width: 350px;
}
#life-insurance02, #life-insurance06{
	padding: 7em 0;
	background: url(../img/top/bg_lblue.jpg) center top repeat;
}
#life-insurance03{
	padding: 6em 0;
}
#life-insurance04{
	padding: 2em 0;
}
#life-insurance05{
	padding: 0 0 6em 0;
}
#life-insurance07{
	padding: 7em 0 15em;
	position: relative;
}

@media screen and (max-width: 699px) {
	[id^="life-insurance"] h3 img{
		width: 280px;
	}
	#life-insurance02, #life-insurance06{
		padding: 4em 0;
	}
	#life-insurance03{
		padding: 4em 0;
	}
	#life-insurance07{
		padding: 4em 0;
	}
}
@media screen and (min-width: 700px) {
}
@media screen and (min-width: 1280px) {
}

.mnhdset{
	text-align: left;
	margin: 7em auto 5em;
	position: relative;
	overflow: hidden;
}
.mnhdset > div:last-child img{width: 100%;}
.mnhdset h2{
	font-weight: 700;
	letter-spacing: .05em;
	line-height: 150%;
	margin: .5em auto;
}
.mnhdset h2 > span{
	font-size: .6em;
	line-height: 150%;
	margin-bottom: .5em;
	display: block;
}
.mnhdset h2 > strong{
	display: block;
}
.mnhdset > div:first-child > strong{
	font-size: 1.2em;
	font-weight: 600;
}
.mnhdset ul.ptn02{
	text-align:left;
	padding:0;
	margin: 3rem 0;
	list-style:none;
}
.mnhdset ul.ptn02 li{
	padding: 0 0 0 1.5em;
	margin: 0 0 .2em;
	position: relative;
}
.mnhdset ul.ptn02 li::before{
	content: "";
	height: 1.2em;
	width: 1.2em;
	content:"";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	background: url(../img/service/real-estate/icon01.svg) no-repeat;
	background-size: 100% auto;
}

@media screen and (max-width: 699px) {
	.mnhdset{
		width: 88%;
		margin: 3em auto;
	}
	.mnhdset h2{
		font-size: 1.8em;
	}
}
@media screen and (min-width: 700px) {
	.mnhdset{
		width: 88%;
		line-height: 135%;
	}
	.mnhdset h2{
		font-size: 2em;
	}
	.mnhdset > div:first-child{
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateY(-50%);
	}
	.mnhdset > div:last-child{
		width: 60%;
		float: right;
	}
}
@media screen and (min-width: 1280px) {
	.mnhdset{
		width: 1280px;
		line-height: unset;
	}
	.mnhdset h2{
		font-size: 3em;
	}
}

ul.wrylst{
	padding: 0;
	margin: 0 auto 10em;
	list-style: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
ul.wrylst li{
	text-align: left;
	line-height: 135%;
}
ul.wrylst li img{
	width: 100%;
	margin-bottom: 1em;
}
@media screen and (max-width: 699px) {
	ul.wrylst{
		width: 88%;
		margin: 0 auto 6em;
		justify-content: space-between;
	}
	ul.wrylst li{
		width: calc(100% / 2 - 1.5em);
	}
}
@media screen and (min-width: 700px) {
	ul.wrylst{
		width: 88%;
		justify-content: center;
	}
	ul.wrylst li{
		width: calc(100% / 3 - 3em);
		margin: 1em;
	}
}
@media screen and (min-width: 1280px) {
	ul.wrylst{
		width: 1280px;
		justify-content: space-between;
	}
	ul.wrylst li{
		width: calc(100% / 5 - 3em);
		margin: 0;
	}
}

ul[class^="implst"]{
	padding: 0;
	margin: 3em auto 0;
	list-style: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
ul[class^="implst"] li{
	padding: 0;
	margin: 0;
}
ul.implst01 li{
	font-size: .9em;
	text-align: left;
	line-height: 135%;
}
ul.implst02{
	margin: 3em auto 8em;
}
ul.implst02 li{
	font-size: .9em;
	text-align: center;
	line-height: 135%;
}
ul[class^="implst"] li strong{
	font-size: 1.25em;
	line-height: 150%;
	text-align: center;
	margin: 1em auto;
	display: block;
}
ul.implst01 li img{
	width: 60%;
	margin: 0 auto 1em;
	display: block;
}
ul.implst02 li img{
	width: 85%;
	margin: 0 auto 1em;
	display: block;
}
@media screen and (max-width: 699px) {
	ul[class^="implst"]{
		width: 88%;
	}
	ul.implst01 li{
		width: calc(100% / 2 - 1.5em);
		margin-bottom: 1.5em;
	}
	ul.implst02 li{
		width: calc(100% / 2 - 1em);
		margin-bottom: 1.5em;
	}
	ul.implst02 li img{
		width: 100%;
	}
}
@media screen and (min-width: 700px) {
	ul[class^="implst"]{
		width: 88%;
	}
	ul.implst01 li{
		width: calc(100% / 4 - 2em);
	}
	ul.implst02 li{
		width: calc(100% / 4 - 1em);
		margin-bottom: 1.5em;
	}
}
@media screen and (min-width: 1280px) {
	ul[class^="implst"] {
		width: 1200px;
	}
	ul.implst01 li{
		width: calc(100% / 4 - 6em);
	}
	ul.implst02 li{
		width: calc(100% / 4 - 3em);
		margin-bottom: 1.5em;
	}
}

ul.flwlst{
	padding: 0;
	margin: 3em auto 0;
	list-style: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
ul.flwlst li{
	font-size: .9em;
	text-align: center;
	line-height: 135%;
	width: calc(100% / 3 - 5em);
	margin: 2.5em;
}
ul.flwlst li img{
	width: 100%;
	margin: 0 auto 1em;
	border-radius: 2em;
	display: block;
}
ul.flwlst li dl dt{
	font-size: 1.25em;
	font-weight: 700;
	line-height: 150%;
	text-align: center;
	margin: 1em auto;
	display: block;
}
@media screen and (max-width: 699px) {
	ul.flwlst{
		width: 88%;
	}
	ul.flwlst li{
		width: 100%;
	}
}
@media screen and (min-width: 700px) {
}
@media screen and (min-width: 1280px) {
	ul.flwlst{
		width: 1200px;
	}
}

dl.cntctdtl{
	text-align: center;
	margin: 6em auto;
}
dl.cntctdtl dt{
	font-size: 1.4em;
	font-weight: 700;
	line-height: 150%;
	margin-bottom: 1em;
}
dl.cntctdtl dd{
	line-height: 150%;
	margin-bottom: 4em;
}
dl.cntctdtl dd a{
	text-decoration: none;
}
dl.cntctdtl dd a img{
	width: 28px;
	vertical-align:middle;
	margin-right: .5em;
}
dl.cntctdtl dd strong{
	font-size: 1.6em;
	display: block;
	margin: .5em 0;
}
dl.cntctdtl dd span{
	font-size: .6em;
	display: block;
}
@media screen and (max-width: 699px) {
	dl.cntctdtl{
		width: 88%;
		margin: 0 auto 3em;
	}
}
@media screen and (min-width: 700px) {
}
@media screen and (min-width: 1280px) {
}

a[class^="combtn"]{
	color: hsl(0,0%,100%);
	font-size: 1.2em;
	text-align: center;
	padding: .7em;
	border-radius: .7em;
	display: inline-block;
	transition: .3s ease-in;
}
a.combtn-lblue{
	padding: .7em 2em;
	background: hsl(199, 84%, 70%);
}
a.combtn-lgreen{
	padding: .7em 2em;
	background: hsl(79, 73%, 44%);
}
dl.cntctdtl dd > a.combtn-orange, dl.cntctdtl dd > a.combtn-lgreen{
	padding: .7em 7em;
}
dl.cntctdtl dd > a.combtn-orange{
	background: hsl(40, 94%, 69%);
}
dl.cntctdtl dd > a.combtn-lgreen{
	background: hsl(79, 73%, 44%);
}
@media screen and (max-width: 699px) {
}
@media screen and (min-width: 700px) {
}
@media screen and (min-width: 1280px) {
}


dl.cntctdtl ul{
	padding: 0;
	margin: .5em auto 3em;
	list-style: none;
	display: flex;
	flex-direction: row;
	justify-content: center;
}
dl.cntctdtl ul li{
	padding: 0;
	margin: 0 1em;
}
dl.cntctdtl ul li a{
	font-family: "M PLUS 1", sans-serif;
}

@media screen and (max-width: 699px) {
	dl.cntctdtl ul{
		justify-content: space-between;
	}
	dl.cntctdtl ul li{
		width: calc(100% / 2 - .5em);
		margin: 0;
	}
	dl.cntctdtl dd > a.combtn-orange, dl.cntctdtl dd > a.combtn-lgreen{
		width: 100%;
		padding: 1em 0;
	}
}
@media screen and (min-width: 700px) {
}
@media screen and (min-width: 1280px) {
}


ul.itemslst{
	padding: 0;
	margin: 3em auto 0;
	list-style: none;
}
ul.itemslst li{
	font-size: .9em;
	text-align: center;
	line-height: 135%;
	padding: 1.5em 3em;
	border-bottom: 1px solid hsl(0, 0%, 0%);
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}
ul.itemslst li > div:first-child{
	width: 130px;
}
ul.itemslst li > div:last-child{
	font-size: 1.15em;
	line-height: 150%;
	text-align: left;
	width: calc(100% - 150px);
}
ul.itemslst li img{width: 100%;}
ul.itemslst li h4{
	font-size: 1.1em;
	font-weight: 700;
	letter-spacing: .1em;
	line-height: 150%;
	margin: 0 auto .2em;
}
@media screen and (max-width: 699px) {
	ul.itemslst{
		width: 88%;
	}
	ul.itemslst li{
		padding: 2em 1em;
	}
	ul.itemslst li > div:first-child{
		width: 80px;
	}
	ul.itemslst li > div:last-child{
		width: calc(100% - 100px);
	}
}
@media screen and (min-width: 700px) {
	ul.itemslst{
		width: 88%;
	}
}
@media screen and (min-width: 1280px) {
	ul.itemslst{
		width: 900px;
	}
}

ul.bnrlst{
	padding: 0;
	margin: 3em auto;
	list-style: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
ul.bnrlst li{
	width: calc(100% / 3 - 2em);
	margin: 1em;
}
ul.bnrlst li img{width: 100%;}

@media screen and (max-width: 699px) {
	ul.bnrlst{
		width: 80%;
	}
	ul.bnrlst li{
		width: 100% ;
		margin: 1em 0;
	}
}
@media screen and (min-width: 700px) {
	ul.bnrlst{
		width: 88%;
	}
}
@media screen and (min-width: 1280px) {
	ul.bnrlst{
		width: 900px;
	}
}

dl.cntctgaibu{
	text-align: center;
	margin: 6em auto 0;
}
dl.cntctgaibu dt{
	font-size: 1.6em;
	font-weight: 700;
	line-height: 150%;
	margin-bottom: 1em;
}
dl.cntctgaibu dd{
	line-height: 150%;
	margin-bottom: 4em;
}
dl.cntctgaibu dd a{
	text-decoration: none;
}
dl.cntctgaibu dd strong a{
	font-size: 1.6em;
}
dl.cntctgaibu dd strong{
	display: block;
	margin: .5em 0;
}
@media screen and (max-width: 699px) {
	dl.cntctgaibu dd:last-of-type{
		margin-bottom: 0;
	}
}
@media screen and (min-width: 700px) {
}
@media screen and (min-width: 1280px) {
}

dl.jikoactn{
	text-align: left;
	margin: 3em auto 0;
}
dl.jikoactn dt{
	font-size: 1.3em;
	line-height: 135%;
	margin-bottom: .5em;
}
dl.jikoactn dd{
	line-height: 150%;
	padding-left: 1.5em;
	margin-bottom: 5em;
}
@media screen and (max-width: 699px) {
	dl.jikoactn{
		width: 88%;
	}
}
@media screen and (min-width: 700px) {
	dl.jikoactn{
		width: 88%;
	}
}
@media screen and (min-width: 1280px) {
	dl.jikoactn{
		width: 650px;
	}
}

/****損害保険事業****/
[id^="non-life-insurance"]{
  font-family: "Zen Maru Gothic", sans-serif;
	text-align: center;
	padding: 0;
	margin: 0 auto;
}
[id^="non-life-insurance"] h3{
	margin: 1em auto;
}
[id^="non-life-insurance"] h3 img{
	width: 350px;
}
#non-life-insurance01{
	text-align: left;
}
#non-life-insurance02{
	padding: 7em 0;
	background: url(../img/top/bg_lblue.jpg) center top repeat;
}
#non-life-insurance03{
	padding: 6em 0;
}
#non-life-insurance04{
	padding: 2em 0;
}
#non-life-insurance05{
	padding: 8em 0 10em;
}
#non-life-insurance06{
	padding: 4em 0;
	background: url(../img/top/bg_lblue.jpg) center top repeat;
}
#non-life-insurance07{
	padding: 7em 0 0;
}

@media screen and (max-width: 699px) {
	[id^="non-life-insurance"] h3 img{
		width: 280px;
	}
	#non-life-insurance02, #non-life-insurance06{
		padding: 4em 0;
	}
	#non-life-insurance03{
		padding: 4em 0;
	}
	#non-life-insurance04{
		padding: 4em 0;
	}
	#non-life-insurance05{
		padding: 4em 0;
	}
	#non-life-insurance07{
		padding: 4em 0;
	}
	#non-life-insurance08{
		padding: 4em 0;
	}
}
@media screen and (min-width: 700px) {
}
@media screen and (min-width: 1280px) {
	#non-life-insurance01{
		width: 1280px;
	}
}

ul.wecanlst{
	padding: 0;
	margin: 3em auto 6em;
	list-style: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
ul.wecanlst li{
	font-size: .95em;
	text-align: left;
	line-height: 135%;
}
ul.wecanlst li img{
	width: 100%;
	margin: 0 auto 1em;
	border-radius: 1em;
	display: block;
}
ul.wecanlst li strong{
	font-size: 1.25em;
	line-height: 150%;
	text-align: center;
	margin: 1em auto;
	display: block;
}
@media screen and (max-width: 699px) {
	ul.wecanlst{
		width: 88%;
	}
	ul.wecanlst li{
		width: calc(100% / 2 - 1.5em);
		margin-bottom: 1.5em;
	}
}
@media screen and (min-width: 700px) {
	ul.wecanlst{
		width: 88%;
	}
	ul.wecanlst li{
		width: calc(100% / 4 - 1em);
	}
}
@media screen and (min-width: 1280px) {
	ul.wecanlst{
		width: 1000px;
	}
	ul.wecanlst li{
		width: calc(100% / 4 - 4em);
	}
}

ul.strglst{
	padding: 0;
	margin: 3em auto;
	list-style: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
ul.strglst li{
	line-height: 150%;
	margin: 0;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

ul.strglst li > div:first-child{
	width: 100px;
}
ul.strglst li > div:first-child img{
	width: 100%;
	border-radius: 50%;
}
ul.strglst li > div:last-child{
	text-align: left;
	width: calc(100% - 120px);
}
ul.strglst h4{
	font-size: 1.35em;
	line-height: 135%;
	margin-bottom: .3em;
}
@media screen and (max-width: 699px) {
	ul.strglst{
		width: 88%;
	}
	ul.strglst li{
		width: 100%;
		padding: 1.5em 0;
		border-bottom: 1px solid hsl(0, 0%, 0%);
	}
	ul.strglst li:last-child{
		border-bottom: none;
	}
}
@media screen and (min-width: 700px) {
	ul.strglst li{
		width: calc(100% / 2);
		padding: 2em 4em;
		border-right: 1px solid hsl(0, 0%, 0%);
		border-bottom: 1px solid hsl(0, 0%, 0%);
	}
	ul.strglst li:nth-child(even){
		border-right: none;
	}
	ul.strglst li:nth-child(3), ul.strglst li:nth-child(4){
		border-bottom: none;
	}
}
@media screen and (min-width: 1280px) {
	ul.strglst{
		width: 1200px;
	}
}

.hokenbnrset{
	margin: 2em auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
.hokenbnrset > div{
	text-align: center;
	width: calc(100% / 2 - 1em);
	padding: 1em;
	border: 1px solid hsla(0, 0%, 0%, .8);
	border-radius: 1em;
}
.hokenbnrset > div h4 img{
	width: 80%;
	margin: 0 auto 1em;
}
.hokenbnrset > div h5 img{
	width: 80%;
	margin: 1em auto;
}
@media screen and (max-width: 699px) {
	.hokenbnrset{
		width: 88%;
	}
	.hokenbnrset > div{
		width: 100%;
		padding: 1em 2em;
		margin-bottom: 2em;
	}
	.hokenbnrset > div h4 img{
		width: 100%;
		margin: 0 auto .5em;
	}
	.hokenbnrset > div h5 img{
		width: 100%;
		margin: .5em auto;
	}
}
@media screen and (min-width: 700px) {
	.hokenbnrset{
		width: 88%;
	}
}
@media screen and (min-width: 1280px) {
	.hokenbnrset{
		width: 900px;
	}
}

ul.onlnbnrlst{
	width: 100%;
	padding: 0;
	margin: 1em auto;
	list-style: none;
	display: flex;
	flex-direction: column;
}
ul.onlnbnrlst li{
	width: 100%;
	padding: .5em 0;
	margin: 0;
}
ul.onlnbnrlst li.bnrmini{
	width: 85%;
}
ul.onlnbnrlst li img{width: 100%;}

@media screen and (max-width: 699px) {
	ul.onlnbnrlst{
		width: 100%;
	}
	ul.onlnbnrlst li{
		width: 100%;
	}
}
@media screen and (min-width: 700px) {
	ul.onlnbnrlst{
		width: 88%;
	}
}
@media screen and (min-width: 1280px) {
	ul.onlnbnrlst{
		width: 75%;
	}
}

dl.accdntcnt{
	color: hsl(0, 0%, 100%);
	font-size: 1.6em;
	font-weight: 500;
	line-height: 135%;
	width: 100%;
	padding: 1.5em;
	margin: 4em auto 1em;
	background: hsl(168, 45%, 62%);
	border-radius: 1em;
}
dl.accdntcnt a{
	color: hsl(0, 0%, 100%);
	text-decoration: none;
}

dl.accdntcnt dt{
	margin-bottom: .5em;
}
@media screen and (max-width: 699px) {
	dl.accdntcnt{
		width: 88%;
		font-size: 1.35em;
	}
}
@media screen and (min-width: 700px) {
	dl.accdntcnt{
		width: 88%;
	}
}
@media screen and (min-width: 1280px) {
	dl.accdntcnt{
		width: 950px;
	}
}


/****レンタカー事業****/
[id^="rental-car"]{
  font-family: "Zen Maru Gothic", sans-serif;
	text-align: center;
	padding: 0;
	margin: 0 auto;
}
[id^="rental-car"] h3{
	margin: 1em auto;
}
[id^="rental-car"] h3 img{
	width: 400px;
}
#rental-car03{
	margin: 15em auto;
}
@media screen and (max-width: 699px) {
	[id^="rental-car"] h3 img{
		width: 300px;
	}
	#rental-car03{
		margin: 4em auto;
	}
}
@media screen and (min-width: 700px) {
}
@media screen and (min-width: 1280px) {
}

.rchdset{
	text-align: left;
	margin: 7em auto 5em;
	display: flex;
}
.rchdset > div:last-child img{width: 100%;}
.rchdset h2{
	font-weight: 700;
	letter-spacing: .05em;
	line-height: 150%;
	margin: .5em auto;
}
.rchdset h2 span{
	font-size: .6em;
	line-height: 150%;
	margin-bottom: .5em;
	display: block;
}
.rchdset h2 strong{
	display: block;
}
.rchdset > div:first-child > strong{
	font-size: 1.2em;
	font-weight: 600;
}
@media screen and (max-width: 699px) {
	.rchdset{
		width: 88%;
		margin: 0 auto 5em;
		flex-direction: column;
	}
	.rchdset > div:first-child img{width: 30%;}
	.rchdset h2{
		font-size: 2em;
	}
}
@media screen and (min-width: 700px) {
	.rchdset{
		width: 88%;
		flex-direction: row;
		flex-wrap: wrap;
		align-items: flex-end
	}
	.rchdset h2{
		font-size: 2em;
	}
	.rchdset > div:first-child{
		width: 55%;
	}
	.rchdset > div:last-child{
		width: 45%;
	}
}
@media screen and (min-width: 1280px) {
	.rchdset{
		width: 1150px;
	}
	.rchdset h2{
		font-size: 3em;
	}
}

ul.benri{
	padding: 0;
	margin: 3em auto;
	list-style: none;
	display: flex;
}
ul.benri li{
	padding: 0;
	margin: 0;
}
ul.benri li img{width: 100%;}
@media screen and (max-width: 699px) {
	ul.benri{
		flex-direction: column;
	}
	ul.benri li{
		margin: 1.5em 0;
	}
	ul.benri li img{width: 80%;}
}
@media screen and (min-width: 700px) {
	ul.benri{
		width: 88%;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	ul.benri li{
		width: calc(100% / 3 - 2em);
	}
}
@media screen and (min-width: 1280px) {
	ul.benri{
		width: 1200px;
	}
}

ul.svcpoint{
	padding: 0;
	margin: 1.5em auto 4em;
	list-style: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
ul.svcpoint > li{
	text-align: left;
	padding: 2em 1em;
	margin: 1.5em 0;
	border: 2px solid hsl(0, 0%, 0%);
	border-radius: 1.5em;
}
ul.svcpoint > li:first-child{
	border: 2px solid hsl(196, 100%, 50%);
}
ul.svcpoint > li:nth-child(2){
	border: 2px solid hsl(79, 73%, 44%);
}
ul.svcpoint > li:last-child{
	border: 2px solid hsl(37, 96%, 61%);
}
ul.svcpoint > li ul{
	padding: 0;
	margin: 0;
	list-style: none;
	display: flex;
}
ul.svcpoint > li ul > li{
	padding: 0;
	margin: 0;
}
ul.svcpoint > li ul > li img{
	width: 100%;
}
ul.svcpoint > li:first-child ul{
	padding: 1em;
	margin: .5em 0 1em;
	flex-direction: column;
	background: url(../img/service/rental-car/pic05.jpg) no-repeat right bottom;
	background-size: 40% auto;
}
ul.svcpoint > li:first-child ul li{
	text-align: left;
	margin: 0 0 .5em 0;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}
ul.svcpoint > li:first-child ul li > div:first-child{
	width: 60px;
}
ul.svcpoint > li:first-child ul li > div:last-child{
	width: calc(100% - 70px);
}
ul.svcpoint > li:nth-child(2) ul{
	padding: 1em;
	margin: .5em 0;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
ul.svcpoint > li:nth-child(2) ul li{
	line-height: 135%;
}
ul.svcpoint > li:last-child ul{
	padding: 0 2.5em;
	display: flex;
}

ul.svcpoint > li > dl > dt{
	font-size: 1.35em;
	font-weight: 700;
	text-align: center;
	line-height: 135%;
	margin-bottom: .5em;
}
ul.svcpoint > li > dl > dd{
	text-align: center;
	line-height: 150%;
}
ul.svcpoint > li > dl > dd > strong{
	font-size: 1.2em;
}
@media screen and (max-width: 699px) {
	ul.svcpoint{
		width: 88%;
	}
	ul.svcpoint > li{
		width: 100%;
		padding: 1.5em;
		margin: 1em 0;
	}
	ul.svcpoint > li > dl > dt{
		text-align: left;
	}
	ul.svcpoint > li > dl > dd{
		text-align: left;
	}
	ul.svcpoint > li > dl > dt img{
		width: 100%;
	}
	ul.svcpoint > li:nth-child(2) ul{
		justify-content: center;
	}
	ul.svcpoint > li:nth-child(2) ul li{
		text-align: center;
		width: calc(100% / 3 - 1em);
		margin: 0 .5em;
	}
	ul.svcpoint > li:last-child ul{
		width: 100%;
		padding: 0;
		margin: 0;
		flex-direction: column;
	}
	ul.svcpoint > li:last-child ul li img{
		width: 100%;
	}
}
@media screen and (min-width: 700px) {
	ul.svcpoint{
		width: 88%;
	}
	ul.svcpoint > li:first-child{
		width: calc(40% - 1.5em);
	}
	ul.svcpoint > li:nth-child(2){
		width: 60%;
	}
	ul.svcpoint > li:nth-child(2) ul li{
		width: calc(100% / 5 - 1em);
	}
	ul.svcpoint > li:last-child{
		width: 100%;
	}
	ul.svcpoint > li:last-child ul{
		flex-direction: row;
		justify-content: space-between;
	}
	ul.svcpoint > li:last-child ul li{
		width: calc(100% / 3 - 1em);
	}
}
@media screen and (min-width: 1280px) {
	ul.svcpoint{
		width: 1200px;
	}
}

dl.gosoudan{
	margin: 3em auto;
	display: flex;
}
dl.gosoudan dt{
	color: hsl(0, 0%, 100%);
	line-height: 150%;
	padding: 1.5em 0;
	background: hsl(37, 96%, 61%);
	position: relative;
}
dl.gosoudan ul{
	width: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
dl.gosoudan ul li{
	padding: 0;
	margin: 0;
	width: calc(100% / 5 - 1em);
}
dl.gosoudan ul li img{
	width: 100%;
}

@media screen and (max-width: 699px) {
	dl.gosoudan{
		width: 88%;
		flex-direction: column;
	}
	dl.gosoudan dt{
		font-size: 1.2em;
	}
	dl.gosoudan dt::after {
		content: "";
		position: absolute;
		top: 100%;
		left: 0;
		width: 100%;
		height: 30px;
		background: hsl(37, 96%, 61%);
		clip-path: polygon(0 0, 100% 0, 50% 100%);
		z-index: 1;
	}
	dl.gosoudan dd {
		margin-top: 50px;
	}
	dl.gosoudan ul{
		justify-content: center;
	}
	dl.gosoudan ul li{
		width: calc(100% / 3 - 2em);
		margin: 0 1em;
	}
}
@media screen and (min-width: 700px) {
	dl.gosoudan{
		width: 88%;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
	}
	dl.gosoudan dt{
		width: 200px;
	}
	dl.gosoudan dt::after {
		content: "";
		position: absolute;
		top: 0;
		left: 100%;
		width: 60px;
		height: 100%;
		background: hsl(37, 96%, 61%);
		clip-path: polygon(0 0, 100% 50%, 0 100%);
		z-index: 1;
	}
	dl.gosoudan dd{
		width: calc(100% - 300px);
	}
}
@media screen and (min-width: 1280px) {
	dl.gosoudan{
		width: 1100px;
	}
	dl.gosoudan dt{
		font-size: 1.35em;
		width: 300px;
	}
	dl.gosoudan dd{
		width: calc(100% - 400px);
	}
}

ul.rcvalue{
	padding: 0;
	margin: 3em auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	list-style: none;
}
ul.rcvalue li{
	color: hsl(116, 34%, 37%);
	font-size: 1.35em;
	letter-spacing: .1em;
	line-height: 175%;
	text-align: center;
	padding: .4em 0;
	margin: 0;
	border: 2px solid hsl(79, 73%, 44%);
	border-radius: 40px;
}
ul.rcvalue li img {
	width: 45px;
	margin-right: .3em;
	vertical-align:middle;
}
@media screen and (max-width: 699px) {
	ul.rcvalue{
		width: 88%;
	}
	ul.rcvalue li{
		width: 100%;
		margin: .5em 0;
	}
}
@media screen and (min-width: 700px) {
	ul.rcvalue{
		width: 88%;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	ul.rcvalue li{
		width: calc(100% / 3 - 1em);
	}
}
@media screen and (min-width: 1280px) {
	ul.rcvalue{
		width: 950px;
	}
}

ul.rcvaluelst{
	font-family: "M PLUS 1", sans-serif;
	font-size: 1.1em;
	line-height: 150%;
	padding: 0;
	margin: 4em auto;
	list-style: none;
}
ul.rcvaluelst > li{
	padding: 2em 1em;
	margin: 1em 0;
	border-bottom: 1px solid hsl(0, 0%, 0%);
	display: flex;
}
ul.rcvaluelst > li > div:first-child img{width: 100%;}
ul.rcvaluelst > li > div:last-child{
	text-align: left;
}
ul.rcvaluelst h4 strong{
	font-size: 2em;
	font-weight: 700;
	line-height: 150%;
	display: block;
}
ul.rcvaluelst h4 span{
	color: hsl(0, 0%, 100%);
	font-size: 1.2em;
	font-weight: 500;
	line-height: 135%;
	background: hsl(148, 100%, 29%);
	padding: .3em 1em;
	margin-bottom: .5em;
	border-radius: 30px;
	display: inline-block;
}
ul.rcvaluelst h4 span.kei{
	background: hsl(30, 34%, 49%);
}
ul.rcvaluelst p{
	margin: 1em 0;
}
.price{
	font-size: 1.4em;
	line-height: 110%;
	margin-bottom: 1em;
}
.price strong{
	color: hsl(0, 100%, 40%);
	font-size: 1.8em;
	line-height: 110%;
	margin: 0 .1em 0 .5em;
}
ul.vldtl{
	padding: 0;
	margin: .5em 0;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	list-style: none;
}
ul.vldtl li{
	text-align: left;
	margin-right: 1em;
}
ul.vldtl li img{
	width: 25px;
	margin-right: .2em;
	vertical-align:middle;
}

@media screen and (max-width: 699px) {
	ul.rcvaluelst{
		width: 88%;
	}
	ul.rcvaluelst > li{
		padding: 2em 0;
		flex-direction: column;
	}
	ul.rcvaluelst > li > div:first-child img{
		margin-bottom: 1em;
	}
}
@media screen and (min-width: 700px) {
	ul.rcvaluelst{
		width: 88%;
	}
	ul.rcvaluelst > li{
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	ul.rcvaluelst > li > div:first-child{
		width: calc(50% - 1em);
	}
	ul.rcvaluelst > li > div:last-child{
		width: 50%;
	}
}
@media screen and (min-width: 1280px) {
	ul.rcvaluelst{
		width: 1000px;
	}
	ul.rcvaluelst > li > div:first-child{
		width: 400px;
	}
	ul.rcvaluelst > li > div:last-child{
		width: calc(100% - 420px);
	}
}


/****生活サポート事業****/
[id^="lifes"]{
  font-family: "Zen Maru Gothic", sans-serif;
	text-align: center;
	padding: 0;
	margin: 0 auto;
}
[id^="lifes"] h3{
	margin: 1em auto;
}
[id^="lifes"] h3 img:first-child{
	width: 350px;
	margin: 10em auto 2em;
	display: block;
}

.lifestit{
	margin: 8em auto 3em;
}
ul.point3{
	padding: 0;
	margin: 3em auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	list-style: none;
	justify-content: space-between;
}
ul.point3 li{
	padding: 0;
	margin: 0;
	width: calc(100% / 3 - 2em);
}
ul.point3 li img{
	width: 100%;
}
#lifes00 p{
	font-size: 1.2em;
	line-height: 175%;
	text-align: left;
	margin: 3em auto 6em;
}
@media screen and (max-width: 699px) {
	[id^="lifes"] h3 img:nth-child(2){
		display: none;
	}
	[id^="lifes"] h3 img:last-child{
		width: 300px;
	}
	.lifestit > img{
		width: 300px;
	}
	.lifestit > img:first-child{
		display: none;
	}
	ul.point3{
		width: 88%;
	}
	ul.point3 li{
		width: calc(100% / 3);
	}
	#lifes00 p{
		width: 88%;
	}
}
@media screen and (min-width: 700px) {
	ul.point3{
		width: 88%;
	}
	[id^="lifes"] h3 img:last-child{
		display: none;
	}
	.lifestit > img:last-child{
		display: none;
	}
	#lifes00 p{
		width: 600px;
	}
}
@media screen and (min-width: 1280px) {
	ul.point3{
		width: 650px;
	}
}

ul.supolst{
	padding: 0;
	margin: 3em auto 0;
	list-style: none;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
ul.supolst > li{
	text-align: left;
	padding: 3em;
	border: 2px solid hsl(0, 0%, 0%);
	aspect-ratio: 10 / 9;
	border-radius: 1.5em;
	margin: 1em 0;
}
ul.supolst > li:first-child{
	border: 2px solid hsl(196, 100%, 50%);
	background: url(../img/service/life-support/pic01.jpg) no-repeat right 2em bottom 2em;
	background-size: 60% auto;
}
ul.supolst > li:nth-child(2){
	border: 2px solid hsl(79, 73%, 44%);
	background: url(../img/service/life-support/pic02.jpg) no-repeat right 2em bottom 2em;
	background-size: 60% auto;
}
ul.supolst > li:nth-child(3){
	border: 2px solid hsl(37, 96%, 61%);
	background: url(../img/service/life-support/pic03.jpg) no-repeat right 2em bottom 2em;
	background-size: 60% auto;
}
ul.supolst > li:last-child{
	border: 2px solid hsl(338, 100%, 74%);
	background: url(../img/service/life-support/pic04.jpg) no-repeat right 2em bottom 2em;
	background-size: 60% auto;
}
ul.supolst > li h4{
	font-size: 1.35em;
	line-height: 150%;
	text-align: center;
	margin-bottom: 1em;
}
ul.supolst > li ul{
	padding: 0;
	margin: .5em 0 .5em 1.5em;
	list-style: disc;
}
ul.supolst > li ul li{
	line-height: 135%;
	margin-bottom: .3em;
}
@media screen and (max-width: 699px) {
	ul.supolst{
		width: 88%;
	}
	ul.supolst > li{
		font-size: 1.1em;
		line-height: 135%;
		padding: 2em;
		width: 100%;
		padding-bottom: 160px;
		background-size: auto 200px;
	}
}
@media screen and (min-width: 700px) {
	ul.supolst{
		width: 88%;
	}
	ul.supolst > li{
		width: calc(100% / 2 - 1em);
	}
}
@media screen and (min-width: 1280px) {
	ul.supolst{
		width: 1000px;
	}
}


/****不動産事業****/
[id^="real-estate"]{
  font-family: "Zen Maru Gothic", sans-serif;
	text-align: center;
	padding: 0;
	margin: 0 auto;
}
[id^="real-estate"] h3{
	margin: 1em auto;
}
[id^="real-estate"] h3 img{
	width: 350px;
}
#real-estate02{
	padding: 6em 0 8em;
	background: url(../img/top/bg_lorange.jpg) center top repeat;
}
#real-estate03{
	padding: 6em 0 3em;
}

@media screen and (max-width: 699px) {
	[id^="real-estate"] h3 img{
		width: 300px;
	}
}
@media screen and (min-width: 700px) {
}
@media screen and (min-width: 1280px) {
}

ul.recanlst{
	padding: 0;
	margin: 3em auto 6em;
	list-style: none;
	display: flex;
}
ul.recanlst li{
	font-size: .95em;
	text-align: left;
	padding: 0;
	margin: 0;
	line-height: 135%;
}
ul.recanlst li img{
	width: 65%;
	margin: 0 auto 1em;
	border-radius: 1em;
	display: block;
}
ul.recanlst li strong{
	font-size: 1.25em;
	line-height: 150%;
	text-align: center;
	margin: .5em auto;
	display: block;
}
@media screen and (max-width: 699px) {
	ul.recanlst{
		font-size: 1.1em;
		line-height: 135%;
		width: 88%;
		flex-direction: column;
	}
	ul.recanlst li{
		text-align: center;
		width: 100%;
		margin: 1.5em auto;
	}
	ul.recanlst li strong{
		font-size: 1.4em;
	}
}
@media screen and (min-width: 700px) {
	ul.recanlst{
		width: 88%;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	ul.recanlst li{
		width: calc(100% / 3 - 2em);
	}
}
@media screen and (min-width: 1280px) {
	ul.recanlst{
		width: 1200px;
	}
	ul.recanlst li{
		width: calc(100% / 3 - 4em);
	}
}

ul.renayami{
	padding: 0;
	margin: 3em auto 10em;
	list-style: none;
	display: flex;
}
ul.renayami > li{
	padding: 0;
	margin: 0;
}
ul.renayami > li dl{
	padding: 2em;
	background: hsl(0, 0%, 100%);
	border-radius: 1.5em;
}
ul.renayami > li dl dt{
	font-size: 1.4em;
	font-weight: 700;
	line-height: 135%;
	border-bottom: 1px solid hsla(0, 0%, 0%, .2);
	padding: .5em;
	margin-bottom: .5em;
}
ul.renayami > li dl dd ul{
	text-align: left;
	list-style: disc;
}
ul.renayami > li dl dd ul li{
	line-height: 135%;
	margin: 1em 0;
}
ul.renayami > li dl dd ul li strong{
	color: hsl(0, 100%, 40%);
}

@media screen and (max-width: 699px) {
	ul.renayami{
		width: 88%;
		flex-direction: column;
	}
	ul.renayami > li{
		width: 100%;
		margin: 1.5em auto;
	}
}
@media screen and (min-width: 700px) {
	ul.renayami{
		width: 88%;
		flex-direction: row;
		justify-content: space-between;
	}
	ul.renayami > li{
		width: calc(100% / 2 - 1em);
	}
}
@media screen and (min-width: 1280px) {
	ul.renayami{
		width: 1280px;
	}
}

dl.restrglst{
	margin: auto;
	background: hsl(0, 0%, 100%);
	border-radius: 1.5em;
	display: flex;
}
dl.restrglst dt{
	padding: 2em;
	position: relative;
}
dl.restrglst dt img{
	position: absolute;
}
dl.restrglst dd ul{
	padding: 0;
	margin: 0;
	list-style: none;
	display: flex;
}
dl.restrglst dd ul li{
	padding: 0;
	margin: 0;
}
dl.restrglst dd ul li img{
	width: 60%;
}
dl.restrglst dd ul li strong{
	color: hsl(203, 93%, 33%);
	font-size: 1.1em;
	line-height: 175%;
	margin: .5em auto;
	display: block;
}
dl.restrglst dd ul li div{
	text-align: left;
	line-height: 150%;
}

@media screen and (max-width: 699px) {
	dl.restrglst{
		width: 88%;
		flex-direction: column-reverse;
	}
	dl.restrglst dt{
		height: 180px;
		position: relative;
	}
	dl.restrglst dt img{
		height: 220px;
		right: 0;
		bottom: 0;
	}
	dl.restrglst dd{
		padding: 2em;
	}
	dl.restrglst dd ul{
		font-size: 1.1em;
		line-height: 135%;
		flex-direction: column;
	}
	dl.restrglst dd ul li{
		text-align: center;
		margin-bottom: 1em;
	}
}
@media screen and (min-width: 700px) {
	dl.restrglst{
		width: 88%;
		flex-direction: row;
		flex-wrap: wrap;
	}
	dl.restrglst dt{
		width: 200px;
	}
	dl.restrglst dt img{
		width: 200px;
		left: 50%;
		bottom: 0;
		transform: translateX(-50%);
	}
	dl.restrglst dd{
		width: calc(100% - 200px);
		padding: 2em;
	}
	dl.restrglst dd ul{
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	dl.restrglst dd ul li{
		width: calc(100% / 3 - 1em);
	}
}
@media screen and (min-width: 1280px) {
	dl.restrglst{
		width: 1280px;
	}
	dl.restrglst dt{
		width: 370px;
	}
	dl.restrglst dt img{
		width: 220px;
		left: 50%;
		bottom: 0;
		transform: translateX(-50%);
	}
	dl.restrglst dd{
		width: calc(100% - 370px);
		padding: 2em 6em 2em 1em;
	}
	dl.restrglst dd ul li{
		width: calc(100% / 3 - 4em);
	}
}

ul.reflwlst{
	padding: 0;
	margin: 3em auto 0;
	list-style: none;
	display: flex;
}
ul.reflwlst li{
	padding: 0;
	margin: 1.5em 0;
	text-align: center;
	line-height: 135%;
}
ul.reflwlst li img{
	width: 100%;
	margin: 0 auto 1em;
	border-radius: 2em;
	display: block;
}
ul.reflwlst li dl dt{
	font-size: 1.25em;
	font-weight: 700;
	line-height: 150%;
	text-align: center;
	margin: 1em auto;
	display: block;
}
@media screen and (max-width: 699px) {
	ul.reflwlst{
		width: 88%;
		flex-direction: column;
	}
}
@media screen and (min-width: 700px) {
	ul.reflwlst{
		width: 88%;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	ul.reflwlst li{
		font-size: .9em;
		width: calc(100% / 4 - 1em);
	}
}
@media screen and (min-width: 1280px) {
	ul.reflwlst{
		width: 1280px;
	}
	ul.reflwlst li{
		width: calc(100% / 4 - 3em);
	}
}


/****コラボ事業****/
[id^="collaboration"]{
  font-family: "Zen Maru Gothic", sans-serif;
	text-align: center;
	padding: 0;
	margin: 0 auto;
}
[id^="collaboration"] h3{
	margin: 1em auto;
}
[id^="collaboration"] h3 img{
	width: 350px;
}
#collaboration01{
	font-weight: 700;
}
#collaboration02{
	margin: 8em auto;
}
#collaboration03{
	margin: 8em auto;
}
@media screen and (max-width: 699px) {
	[id^="collaboration"] h3 img{
		width: 300px;
	}
	#collaboration01{
		line-height: 200%;
	}
	#collaboration01 p{
		font-size: 1.15em;
		width: 88%;
		margin: 3em auto;
	}
}
@media screen and (min-width: 700px) {
	#collaboration01{
		font-size: .9em;
		line-height: 250%;
	}
	#collaboration01 p{
		width: 88%;
		margin: 3em auto;
	}
	#collaboration02 h3 img{
		width: 480px;
	}
}
@media screen and (min-width: 1280px) {
	#collaboration01 p{
		width: 100%;
	}
}

.collmnart img{
	width: 88%;
	margin: 4em auto;
}
.collqr{
	margin: 2.5em auto;
}
@media screen and (max-width: 699px) {
	.collqr img{
		width: 90%;
	}
}
@media screen and (min-width: 700px) {
	.collqr img{
		width: 60%;
	}
}
@media screen and (min-width: 1280px) {
	.collmnart img{
		width: 600px;
	}
	.collqr img{
		width: 350px;
	}
}

ul.colltpcs{
	padding: 0;
	margin: 3em auto;
	list-style: none;
	display: flex;
}
ul.colltpcs li{
	text-align: left;
	line-height: 135%;
	padding: 0;
}
ul.colltpcs li a{
	text-decoration: none;
	display: block;
}
ul.colltpcs li img{
	width: 100%;
	height: auto;
	border-radius: 1.5em;
	aspect-ratio: 7 / 4;
	object-fit: cover;
}
.colldtl{
	padding: 0 .5em;
}
.ctg{
	color: hsl(0, 0%, 100%);
	padding: .5em 1em;
	margin: 1em 0 .5em;
	background: hsl(79, 73%, 44%);
	border-radius: .6em;
	display: block;
}
.tm{
	color: hsl(79, 73%, 44%);
	font-weight: 700;
	font-size: 1.2em;
	padding: 0;
	margin: .5em 0;
}
.colldtl h2{
	font-size: 1.3em;
	font-weight: 700;
	line-height: 135%;
	margin-bottom: .5em;
}
.colldtl .rt{
	margin-top: 1em;
}
@media screen and (max-width: 699px) {
	ul.colltpcs{
		width: 88%;
		flex-direction: column;
	}
	ul.colltpcs li{
		margin: 1.5em 0;
	}
}
@media screen and (min-width: 700px) {
	ul.colltpcs{
		width: 88%;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
	}
	ul.colltpcs li{
		font-size: .9em;
		width: calc(100% / 3 - 1em);
		margin: 0 .5em;
	}
}
@media screen and (min-width: 1280px) {
	ul.colltpcs{
		width: 1200px;
	}
	ul.colltpcs li{
		width: calc(100% / 3 - 6em);
		margin: 0 3em;
	}
}



dl.collprjctsample{
	margin: 5em auto;
}
dl.collprjctsample dt{
	font-size: 1.8em;
	font-weight: 700;
	line-height: 135%;
	margin-bottom: 1.5em;
}
dl.collprjctsample dd{
	margin-bottom: 10em;
	display: flex;
}
dl.collprjctsample dd > div:first-child img{
	width: 100%;
	margin: 1.5em 0;
}
dl.collprjctsample dd > div:last-child{
	font-weight: 700;
	line-height: 135%;
	text-align: left;
}
dl.collprjctsample a{
	color: hsl(0, 0%, 100%);
	font-weight: 500;
	line-height: 175%;
	text-align: center;
	text-decoration: none;
	padding: .6em 0;
	margin-top: 3em;
	background: hsl(79, 73%, 44%);
	border-radius: .4em;
	display: block;
}
@media screen and (max-width: 699px) {
	dl.collprjctsample{
		width: 88%;
	}
	dl.collprjctsample dd{
		font-size: 1.2em;
		line-height: 135%;
		flex-direction: column;
	}
}
@media screen and (min-width: 700px) {
	dl.collprjctsample{
		width: 88%;
	}
	dl.collprjctsample dd{
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	dl.collprjctsample dd > div:first-child{
		width: 40%;
	}
	dl.collprjctsample dd > div:last-child{
		font-size: .9em;
		width: calc(60% - 3em);
	}
	dl.collprjctsample a{
		font-size: 1.4em;
	}
}
@media screen and (min-width: 1280px) {
	dl.collprjctsample{
		width: 1000px;
	}
}


/******************************
会社案内など
*******************************/
[id^="sbpg"]{
	text-align: center;
	padding: 0;
	position: relative;
}
#sbpg-blue{
	background: url(../img/top/bg_blue.jpg) center top repeat;
}
#sbpg-green{
	background: url(../img/top/bg_green.jpg) center top repeat;
}
#sbpg-orange{
	background: url(../img/top/bg_orange.jpg) center top repeat;
}
[id^="sbpg"] h1{
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
}
[id^="sbpg"] h1 strong{
  font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	letter-spacing: .05em;
	line-height: 150%;
	margin: .3em auto .1em;
	display: block;
	opacity: 0;
}
[id^="sbpg"] h1 strong.move{
  animation: lineup .5s forwards ease-out;
	animation-delay: .5s;
}
[id^="sbpg"] h1 > span{
	color: hsl(33, 17%, 41%);
	font-size: 1.05em;
	font-weight: 800;
	line-height: 175%;
	display: block;
	opacity: 0;
}
[id^="sbpg"] h1 > span.move{
  animation: linedwn .5s forwards ease-out;
	animation-delay: .5s;
}
@media screen and (max-width: 699px) {
	[id^="sbpg"]{
		height: 320px;
	}
	[id^="sbpg"] h1{
	top: 55%;
	}
	[id^="sbpg"] h1 strong{
		font-size: 2em;
	}
}
@media screen and (min-width: 700px) {
	[id^="sbpg"]{
		height: 450px;
	}
	[id^="sbpg"] h1 strong{
		font-size: 3em;
	}
}
@media screen and (min-width: 1280px) {
}


/****会社案内****/
h2.sbtitcom{
	margin: 5em auto;
}
h2.sbtitcom img:first-child{
	margin: 0 auto 1em;
	display: block;
}
[id^="company"]{
  font-family: "Zen Maru Gothic", sans-serif;
	margin: 10em auto;
}
[id^="company"] h3 img{
	width: 350px;
}
#company01 > p{
	text-align: left;
	margin: 3em auto;
}
#company04{
	margin: 10em auto 0;
}
ol.comvsn{
	text-align: left;
	margin: 3em auto;
}
ol.comvsn li{
	font-size: 1.1em;
	line-height: 175%;
	margin-bottom: .5em;
}
ol.comvsn.move li {
	animation: lt-sld 1s ease forwards;
	animation-delay: calc(var(--i) * 0.3s);
}
@keyframes lt-sld {
	0% {
		opacity:0;
		transform:translate(2rem, 0);
	}
	100% {
		opacity:1;
		transform:translate(0, 0);
	}
}

@media screen and (max-width: 699px) {
	h2.sbtitcom img:first-child{
		width: 55px;
	}
	h2.sbtitcom img:last-child{
		width: 80%;
	}
	[id^="company"]{
		margin: 4em auto;
	}
	[id^="company"] h3 img{
		width: 300px;
	}
	#company01 > p{
		width: 88%;
	}
	ol.comvsn{
		width: 88%;
		box-sizing: border-box;
	}
}
@media screen and (min-width: 700px) {
	h2.sbtitcom img:first-child{
		width: 55px;
	}
	h2.sbtitcom img:last-child{
		width: 460px;
	}
	#company01 > p{
		width: 88%;
	}
	ol.comvsn{
		width: 88%;
	}
}
@media screen and (min-width: 1280px) {
	#company01 > p{
		width: 900px;
	}
	ol.comvsn{
		width: 900px;
	}
}

#contact{
	padding: 7em 0 10em;
	position: relative;
}
#contact h3 img{
	width: 400px;
}
@media screen and (max-width: 699px) {
	#contact h3{
		margin: 3em auto;
	}
	#contact h3 img{
		width: 300px;
	}
	#contact{
		padding: 4em 0;
	}
}
@media screen and (min-width: 700px) {
}
@media screen and (min-width: 1280px) {
}



dl[class^="comhis"]{
	margin: 3em auto;
	display: flex;
	flex-direction: ow;
	flex-wrap: wrap;
}
dl[class^="comhis"] > dt{
	text-align: right;
	padding: .5em 1em;
}
dl[class^="comhis"] > dd{
	text-align: left;
	padding: .5em 1em;
}
dl[class^="comhis"] > dt:nth-of-type(odd){
	background: hsl(0, 0%, 90%);
}
dl[class^="comhis"] > dd:nth-of-type(odd){
	background: hsl(0, 0%, 90%);
}
dl.comhis01 > dt{
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
}
dl.comhis01 > dt > div{
	text-align: right;
	width: 45px;
}
@media screen and (max-width: 699px) {
	dl[class^="comhis"]{
		width: 100%;
	}
	dl[class^="comhis"] > dt{
		width: 120px;
	}
	dl[class^="comhis"] > dd{
		width: calc(100% - 120px);
	}
}
@media screen and (min-width: 700px) {
	dl[class^="comhis"]{
		width: 88%;
	}
	dl[class^="comhis"] > dt{
		width: 250px;
	}
	dl[class^="comhis"] > dd{
		width: calc(100% - 250px);
	}
}
@media screen and (min-width: 1280px) {
	dl[class^="comhis"]{
		width: 800px;
	}
}

[class^="comleaf"]{
	position: absolute;
}
@media screen and (max-width: 699px) {
	img.comleaf01{
		width: 85px;
		left: -20px;
		top: 0;
	}
	img.comleaf02{
		width: 120px;
		right: -40px;
		top: 70px;
	}
	img.comleaf03{
		width: 85px;
		left: -20px;
		bottom: 100px;
	}
	img.comleaf04{
		width: 120px;
		right: -40px;
		bottom: 0;
	}
}
@media screen and (min-width: 700px) {
	img.comleaf01{
		width: 190px;
		left: -60px;
		top: -70px;
	}
	img.comleaf02{
		width: 240px;
		right: -80px;
		top: 100px;
	}
	img.comleaf03{
		width: 190px;
		left: -60px;
		bottom: 200px;
	}
	img.comleaf04{
		width: 240px;
		right: -80px;
		bottom: 0;
	}
}
@media screen and (min-width: 1280px) {
	img.comleaf01{
		left: calc((100% - 1400px) / 2);
	}
	img.comleaf02{
		right: calc((100% - 1400px) / 2);
	}
	img.comleaf03{
		left: calc((100% - 1400px) / 2);
	}
	img.comleaf04{
		right: calc((100% - 1400px) / 2);
	}
}


/******************************
OTHER
*******************************/
#othpg{
	height: 450px;
	text-align: center;
	padding: 0;
	background: url(../img/top/bg_blue.jpg) center top repeat;
	position: relative;
}
#othpg h1{
  font-family: "Zen Maru Gothic", sans-serif;
	font-size: 2.2em;
	font-weight: 700;
	line-height: 150%;
	letter-spacing: .1em;
	position: absolute;
	top: 65%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
}
#othpg h1 span{
	display: block;
}
.entry-content{
	text-align: center;
	padding: 5em 0;
	margin: 0 auto;
	background: hsl(0, 0%, 100%);
}
.entry-content2{
	text-align: center;
	padding: 5em 0;
	margin: 0 auto;
	overflow-x: hidden;
}
[id^="PGother"]{
	padding: 0 0 10em;
	position: relative;
	overflow: hidden;
}
img.othleaf01{
	position: absolute;
	width: 320px;
	right: calc((100% - 1600px) / 2);
	top: 10em;
	z-index: -1;
}
img.othleaf02{
	position: absolute;
	width: 320px;
	left: calc((100% - 1600px) / 2);
	bottom: 0;
	z-index: -1;
}
@media screen and (max-width: 699px) {
	#othpg{
		height: 320px;
	}
	#othpg h1{
		font-size: 1.6em;
		letter-spacing: 0;
		width: 88%;
		top: 55%;
	}
	#othpg h1 span{
		font-size: .85em;
	}
	img.othleaf01{
		position: absolute;
		width: 160px;
		right: -80px;
		top: 10em;
	}
	img.othleaf02{
		position: absolute;
		width: 160px;
		left: -80px;
		bottom: 0;
	}
}
@media screen and (min-width: 700px) {
}
@media screen and (min-width: 1200px) {
}

/*****ＦＤ宣言・ＫＰＩ*****/
.mitsuba{
	text-align: center;
	margin: 5em 0;
}
h3.mitsuba{
	margin: 10em 0 3em;
}
.mitsuba > img{
	width: 350px;
}
.mitsuba > img:first-child{
	width: 60px;
	margin-bottom: 1em;
}
@media screen and (max-width: 699px) {
	.mitsuba > img{
		width: 280px;
	}
	.mitsuba > img:first-child{
		width: 50px;
	}
}
@media screen and (min-width: 700px) {
}
@media screen and (min-width: 1200px) {
}

ol.kptlst{
	font-size: 1.2em;
	line-height: 175%;
	margin: 3em auto 6em;
}
ol.kptlst li{
	padding: 0;
	margin: .3em 0;
}
.subtitkpi{
  font-family: "Zen Maru Gothic", sans-serif;
	line-height: 175%;
	margin: 3em auto 1em;
}
table.kpttbl{
  font-family: "Zen Maru Gothic", sans-serif;
	width: 100%;
	padding: 0;
	margin: 3em auto;
	border-collapse: separate;
	border-spacing: 5px;
	box-sizing: border-box;
}
table.kpttbl th{
	font-size: 1.35em;
	text-align: center;
	width: calc(100% / 3);
	padding: .5em 0;
	background: hsl(147, 77%, 93%);
}
table.kpttbl tr:nth-child(even) td{
	background: hsl(146, 78%, 96%);
}
table.kpttbl tr td:first-child{
	font-size: 1.4em;
	font-weight: 700;
	vertical-align: middle;
}
table.kpttbl tr td{
	vertical-align: top;
}
table.kpttbl tr:nth-child(odd) td{
	background: hsl(147, 77%, 93%);
}
table.kpttbl td{
	font-size: 1.1em;
	text-align: left;
	line-height: 150%;
	padding: 1em 1.5em;
}
@media screen and (max-width: 699px) {
	.subtitkpi{
		font-size: 1.6em;
	}
	.table-scroll {
		width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
	.table-scroll table {
		width: 100%;
		min-width: 600px; /* 最低幅 */
		border-collapse: collapse;
	}
}
@media screen and (min-width: 700px) {
	.subtitkpi{
		font-size: 2.2em;
	}
	ol.kptlst{
		padding: 0 3em;
	}
}
@media screen and (min-width: 1200px) {
	table.kpttbl{
		width: 1280px;
	}
}

ul.msglst{
	padding: 0;
	margin: 6em auto;
	list-style: none;
	display: flex;
}
ul.msglst li.lkbtn_green a{
	width: 100%;
}
@media screen and (max-width: 699px) {
	ul.msglst{
		width: 88%;
		flex-direction: column;
	}
}
@media screen and (min-width: 700px) {
	ul.msglst{
		width: 88%;
		flex-direction: row;
		justify-content: space-between;
	}
	ul.msglst li{
		width: calc(100% / 2 - 1em);
	}
}
@media screen and (min-width: 1200px) {
	ul.msglst{
		width: 1000px;
	}
}


/*****勧誘方針*****/
dl.soldtl{
  font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 500;
	text-align: left;
	margin: 4rem auto;
}
dl.soldtl dt{
	font-size: 1.05em;
	font-weight: 700;
	line-height: 175%;
	margin: 1em 0;
	padding-left: 1.5em;
	position: relative;
}
dl.soldtl dt::after{
	content: "■";
	position: absolute;
	top: 0;
	left: 0;
}

dl.soldtl dd{
	font-size: .95em;
	line-height: 175%;
	margin: 1em 0 3em;
}
dl.soldtl dd ul{
	margin: 0 0 0 1.5em;
	padding: 0;
}
dl.soldtl dd ul li{
	margin: 0 0 .5em;
}
@media screen and (max-width: 699px) {
	dl.soldtl{
		width: 88%;
	}
}
@media screen and (min-width: 700px) {
	dl.soldtl{
		width: 88%;
	}
}
@media screen and (min-width: 1200px) {
	dl.soldtl{
		width: 850px;
	}
}

/****個人情報保護に関する基本方針*****/
dl.pplst > dt{
	font-size: 1.1em;
	font-weight: 700;
	line-height: 150%;
	margin: 0 0 .5em;
}
dl.pplst > dd{
	font-size: .95em;
	line-height: 150%;
	margin: 0 0 3em;
}
dl.dtlset{
	padding: 2em;
	margin: 3em auto;
	background: hsl(177, 71%, 95%);
	border-radius: 2em;
}

/****セキュリティポリシー*****/


/******************************
フッター部分
*******************************/
/****ご案内*****/
[id^="access"]{
	text-align: center;
	padding: 6.5em 0 12em;
	position: relative;
}
#access-blue{
	background: url(../img/top/bg_blue.jpg) center top repeat;
}
#access-green{
	background: url(../img/top/bg_green.jpg) center top repeat;
}
#access-orange{
	background: url(../img/top/bg_orange.jpg) center top repeat;
}
img.bgctrl-access{
	width: 90%;
	position: absolute;
	left: 50%;
	bottom: -5px;
	transform: translateX(-50%);
	z-index: 1;
}
img.bgctrl-tphome{
	width: 100%;
}
dl.TPcomdtl{
	width: 88%;
	padding: 2em 0;
	margin: 3em auto;
	display: flex;
	border-bottom: 1px solid hsl(0, 0%, 0%);
}
dl.TPcomdtl dt{
	margin-right: 5em;
	display: inline-block;
}
dl.TPcomdtl dd{
	text-align: left;
	line-height: 150%;
	display: inline-block;
}
dl.TPcomdtl a{
	text-decoration: none;
}

.mapwth iframe{
	width: 88%;
	height: 450px;
	vertical-align:bottom;
	border-radius: 50px;
}
@media screen and (max-width: 699px) {
	[id^="access"]{
		padding: 6.5em 0;
	}
	#access-blue{
		background: url(../img/top/bg_blue.jpg) center top repeat;
		background-size: 1650px auto;
	}
	#access-green{
		background: url(../img/top/bg_green.jpg) center top repeat;
		background-size: 1650px auto;
	}
	#access-orange{
		background: url(../img/top/bg_orange.jpg) center top repeat;
		background-size: 1650px auto;
	}
	img.bgctrl-access{
		width: 98%;
	}
	#idx-orange img.bgctrl-access{
		width: 90%;
	}
	.mapwth iframe{
		width: 88%;
		height: 300px;
		border-radius: 1em;
	}
	dl.TPcomdtl{
		flex-direction: column;
	}
	dl.TPcomdtl dt{
		text-align: center;
		display: block;
	}
	dl.TPcomdtl dt img{
		width: 70%;
	}
	dl.TPcomdtl dd{
		text-align: center;
		display: block;
	}
}
@media screen and (min-width: 700px) {
	dl.TPcomdtl{
		flex-direction: row;
		justify-content: center;
	}
	dl.TPcomdtl dt img{
		width: 260px;
	}
}
@media screen and (min-width: 1280px) {
	img.bgctrl-access, img.bgctrl-tphome{
		width: 760px;
	}
	dl.TPcomdtl{
		width: 1000px;
	}
	.mapwth iframe{
		width: 1280px;
	}
}

dl.udrmnsub{
	text-align: left;
	margin: 3em auto;
	display: flex;
}
dl.udrmnsub dt{
	color: hsl(33, 17%, 41%);
	font-weight: 900;
}
@media screen and (max-width: 699px) {
	dl.udrmnsub{
		width: 80%;
		flex-direction: column;
	}
	dl.udrmnsub dt{
		text-align: center;
	}
}
@media screen and (min-width: 700px) {
	dl.udrmnsub{
		width: 88%;
		flex-direction: row;
		flex-wrap: wrap;
	}
	dl.udrmnsub dt{
		width: 140px;
	}
	dl.udrmnsub dd{
		width: calc(100% - 140px);
	}
}
@media screen and (min-width: 1280px) {
	dl.udrmnsub{
		width: 800px;
	}
}

[id^="mnft"]{
	line-height: 175%;
	text-align:center;
	padding: 3em 0;
	margin: 0;
}
.udrcom{
	color: hsl(78, 73%, 44%);
	font-size: .9em;
}

#page-top {
	width: 60px;
	background: hsl(39, 100%, 60%);
	border-radius: 30%;
	aspect-ratio: 1 / 1;
	position: fixed;
	right: 1em;
	bottom: 1em;
	z-index: 10;
}
#page-top a {
	color: hsl(0, 0%, 100%);
	text-align: center;
	text-decoration: none;
	aspect-ratio: 1 / 1;
	display: block;
	z-index: 110;
}
#page-top a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	width: 0;
	height: 0;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
	border-bottom: 10px solid #fff;
	z-index: 1;
}
@media screen and (max-width: 699px) {
	#page-top {
		width: 40px;
	}
}
@media screen and (min-width: 700px) {
}
@media screen and (min-width: 1200px) {
}
