body{
	overflow-x: hidden;
	font-family: 'Noto Sans JP', sans-serif;
	color: #444;
}
header{
	display: flex;
	justify-content: space-between;
	position: absolute;
	top: 0;
	left: 0;
	max-width: 100%;
}
.logo{
	margin: 0;
	margin-left: min(100px,5vw);
}
.logo img{
	margin: 0;
}
.side_menu{
	display: block;
}
.side_btn{
	display: block;
}
.sp_contact_btn{
	display: none;
}
.contact_btn{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-right: min(100px,10vw);
	border-radius: 100vw;
	width: 200px;
	height: 60px;
	background: linear-gradient(90deg,#FED101,#36BEF0);
	font-family: 'Poppins', sans-serif;
	color: #fff;
}
.contact_btn img{
	display: block;
	margin: 0 10px 0 0;
	width: 24px;
}


.section_inner{
	margin: 0 auto;
	width: 100%;
	max-width: 1280px;
}
h2{
	justify-content: flex-start;
	height: auto;
	background: none;
	font-size: 90px;
	color: #444;
}
h2 strong{
	display: flex;
	align-items: flex-start;
	font-family: 'Poppins', sans-serif;
	font-weight: 600;
	letter-spacing: 6px;
}
h2 strong::before{
	content: '';
	display: block;
	margin-top: 20px;
	margin-right: 20px;
	width: 32px;
	height: 32px;
	background-image: url(..../img/dr01/home/wq_l.png);
	background-repeat: no-repeat;
	background-size: 32px;
}
h2 strong::after{
	content: '';
	display: block;
	margin-top: 20px;
	margin-left: 20px;
	width: 32px;
	height: 32px;
	background-image: url(..../img/dr01/home/wq_r.png);
	background-repeat: no-repeat;
	background-size: 32px;
}
h2 span{
	position: relative;
	bottom: 0;
	left: 10px;
	font-size: 16px;
	color: #26A3A9;
}
img{
	max-width: 100%;
}
.btn{
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	position: relative;
	margin: 0;
	border: 2px solid #26A3A9;
	border-radius: 100vw;
	width: 100%;
	max-width: 300px;
	height: 60px;
	background: #fff;
	color: #000;
	font-weight: normal;
}
.btn img{
	position: absolute;
	top: 50%;
	right: 25px;
	transform: translateY(-50%);
	transition: 0.3s;
}
.btn:hover img{
	right: 15px;
}
@media screen and (max-width: 1279px){
	h2{
		flex-direction: column;
		font-size: 56px;
	}
}
@media screen and (max-width: 1100px){
	header{
		position: relative;
		top: 0;
		left: 0;
		height: 60px;
	}
	.logo{
		margin: 0 0 0 20px;
	}
	.logo img{
		width: clamp(120px,50vw,200px);
	}
	.nav_btn i:nth-child(1){
		top: 22px;
	}
	.nav_btn i:nth-child(2){
		top: 30px
	}
	.nav_btn i:nth-child(3){
		top: 38px;
	}
	.contact_btn{
		display: none;
	}
	.side_menu{
		display: flex;
		width: 60px;
		height: 60px;
		background: #26A3A9;
	}
	.side_btn{
		display: flex;
		background: #26A3A9;
		position: absolute;
	}
	.side_btn .sp_contact_btn{
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
		width: 60px;
		height: 60px;
		background: #26A3A9;
	}
	.side_btn .sp_contact_btn img{
		width: 24px;
	}
	.side_btn .sp_contact_btn::after{
		content: "";
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
		width: 1px;
		height: 30px;
		background: #fff;
	}
}
@media screen and (max-width: 767px){
	h2{
		flex-direction: column;
		justify-content: flex-start;
		font-size: 48px;
		color: #444;
	}
	h2 strong{
		margin: 0 0 10px;
	}
	h2 strong::before{
		content: '';
		display: block;
		margin: 10px 10px 0 0;
		width: 16px;
		height: 16px;
		background-image: url(../img/dr01/home/wq_l.png);
		background-repeat: no-repeat;
		background-size: 16px;
	}
	h2 strong::after{
		content: '';
		display: block;
		margin: 10px 0 0 10px;
		width: 16px;
		height: 16px;
		background-image: url(../img/dr01/home/wq_r.png);
		background-repeat: no-repeat;
		background-size: 16px;
	}
	h2 span{
		position: relative;
		bottom: 0;
		left: 0;
		font-size: 14px;
		color: #26A3A9;
	}
	.btn{
		height: 42px;
	}
	.btn img{
		width: 16px;
	}
}



.top_container{
	background-image: url(../img/dr01/home/mv.png);
	background-position: right top;
	background-repeat: no-repeat;
	background-size: clamp(800px,65vw,1650px);
}
.top_container_inner{
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	margin: 0;
	width: 100%;
	max-width: 1280px;
	height: clamp(800px,70vw,1000px);
}
.top_container_inner p{
	display: inline-block;
	margin: 0;
	margin-left: min(100px,5vw);
	font-size: 56px;
	font-weight: bold;
	text-shadow:
		4px   4px 1px #fff,
		3px   4px 1px #fff,
		2px   4px 1px #fff,
		1px   4px 1px #fff,
		0px   4px 1px #fff,
		-1px  4px 1px #fff,
		-2px  4px 1px #fff,
		-3px  4px 1px #fff,
		-4px  4px 1px #fff,
		4px   3px 1px #fff,
		3px   3px 1px #fff,
		2px   3px 1px #fff,
		1px   3px 1px #fff,
		0px   3px 1px #fff,
		-1px  3px 1px #fff,
		-2px  3px 1px #fff,
		-3px  3px 1px #fff,
		-4px  3px 1px #fff,
		4px   2px 1px #fff,
		3px   2px 1px #fff,
		2px   2px 1px #fff,
		1px   2px 1px #fff,
		0px   2px 1px #fff,
		-1px  2px 1px #fff,
		-2px  2px 1px #fff,
		-3px  2px 1px #fff,
		-4px  2px 1px #fff,
		4px   1px 1px #fff,
		3px   1px 1px #fff,
		2px   1px 1px #fff,
		1px   1px 1px #fff,
		0px   1px 1px #fff,
		-1px  1px 1px #fff,
		-2px  1px 1px #fff,
		-3px  1px 1px #fff,
		-4px  1px 1px #fff,
		4px   0px 1px #fff,
		3px   0px 1px #fff,
		2px   0px 1px #fff,
		1px   0px 1px #fff,
		0px   0px 1px #fff,
		-1px  0px 1px #fff,
		-2px  0px 1px #fff,
		-3px  0px 1px #fff,
		-4px  0px 1px #fff,
		4px  -1px 1px #fff,
		3px  -1px 1px #fff,
		2px  -1px 1px #fff,
		1px  -1px 1px #fff,
		0px  -1px 1px #fff,
		-1px -1px 1px #fff,
		-2px -1px 1px #fff,
		-3px -1px 1px #fff,
		-4px -1px 1px #fff,
		4px  -2px 1px #fff,
		3px  -2px 1px #fff,
		2px  -2px 1px #fff,
		1px  -2px 1px #fff,
		0px  -2px 1px #fff,
		-1px -2px 1px #fff,
		-2px -2px 1px #fff,
		-3px -2px 1px #fff,
		-4px -2px 1px #fff,
		4px  -3px 1px #fff,
		3px  -3px 1px #fff,
		2px  -3px 1px #fff,
		1px  -3px 1px #fff,
		0px  -3px 1px #fff,
		-1px -3px 1px #fff,
		-2px -3px 1px #fff,
		-3px -3px 1px #fff,
		-4px -3px 1px #fff,
		4px  -4px 1px #fff,
		3px  -4px 1px #fff,
		2px  -4px 1px #fff,
		1px  -4px 1px #fff,
		0px  -4px 1px #fff,
		-1px -4px 1px #fff,
		-2px -4px 1px #fff,
		-3px -4px 1px #fff,
		-4px -4px 1px #fff;
}
.top_container_inner p span{
	color: #5FB2B7;
}
.top_container_inner p small{
	font-size: 48px;
}
.pickup{
	display: flex;
	align-items: flex-start;
	margin: 150px 0 60px 100px;
	margin-top: min(150px,10vw);
	margin-left: min(100px,5vw);
}
.pickup a{
	color: #444;
}
.pickup div{
	display: flex;
	flex-direction: column;
	margin: 25px 20px 0 30px;
	padding: 0 0 20px;
	border-bottom: 1px solid #EFEFEF;
	height: auto;
	line-height: 1.45;
}
.pickup div .date{
	margin: 0 0 10px;
	color: #5FB2B7;
}
@media screen and (max-width: 767px){
	.top_container{
		height: 150vw;
		background: url(../img/dr01/home/mv_sp.png) left top no-repeat;
		background-size: 100vw;
	}
	.top_container_inner{
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		margin: 0;
		width: 100%;
		height: min(1000px,150vw);
	}
	.top_container_inner p{
		display: inline-block;
		margin: 0 0 0 20px;
		font-size: 28px;
		text-shadow:
			2px   2px 1px #fff,
			1px   2px 1px #fff,
			0px   2px 1px #fff,
			-1px  2px 1px #fff,
			-2px  2px 1px #fff,
			2px   1px 1px #fff,
			1px   1px 1px #fff,
			0px   1px 1px #fff,
			-1px  1px 1px #fff,
			-2px  1px 1px #fff,
			2px   0px 1px #fff,
			1px   0px 1px #fff,
			0px   0px 1px #fff,
			-1px  0px 1px #fff,
			-2px  0px 1px #fff,
			2px  -1px 1px #fff,
			1px  -1px 1px #fff,
			0px  -1px 1px #fff,
			-1px -1px 1px #fff,
			-2px -1px 1px #fff,
			2px  -2px 1px #fff,
			1px  -2px 1px #fff,
			0px  -2px 1px #fff,
			-1px -2px 1px #fff,
			-2px -2px 1px #fff;
	}
	.top_container_inner p small{
		font-size: 24px;
	}
	.pickup{
		flex-direction: column;
		align-items: flex-start;
		margin: 80px 0 20px 0;
		padding: 0 4vw;
	}
	.pickup img{
		width: 100px;
	}
	.pickup div{
		display: flex;
		flex-direction: column;
		margin: 20px auto 0;
		padding: 0 0 20px;
		border-bottom: 1px solid #EFEFEF;
		max-width: 80vw;
		height: auto;
	}
}



.intro{
	padding: 70px 5vw;
	min-height: 700px;
	background: url(../img/dr01/home/intro_bg.png) right center no-repeat;
	background-size: min(1100px,70vw);
}
.intro .section_inner{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.intro .section_inner div{
	margin-right: 20px;
	font-size: 42px;
	font-weight: 800;
	line-height: 1.4;
}
.intro div span{
	color: #5FB2B7;
}
.intro i{
	display: block;
	margin: 50px 0;
	width: 40px;
	height: 3px;
	background: #26A3A9;
}
.intro p{
	width: 100%;
	max-width: 500px;
	font-size: 16px;
	line-height: 1.6;
	font-weight: normal;
}
.intro img{
	display: block;
	width: clamp(360px,33vw,540px);
}
@media screen and (max-width: 1279px){
	.intro .section_inner{
		justify-content: center;
		padding: 0 20px;
	}
	.intro .section_inner div{
		font-size: 32px;
		line-height: 1.4;
	}
	.intro img{
		margin: 20px 0 0 0;
		max-width: 400px;
	}
}
@media screen and (max-width: 767px){
	.intro{
		padding: 50px 0 0;
		height: auto;
		background: url(../img/dr01/home/intro_bg.png) center top no-repeat;
		background-size: 160vw;
	}
	.intro img{
		order: 1;
		margin: 0 auto;
		width: 80vw;
	}
	.intro .section_inner div{
		order: 2;
		margin: 20px auto 0;
		font-size: 20px;
		text-align: center;
		text-shadow:
			2px   2px 1px #fff,
			1px   2px 1px #fff,
			0px   2px 1px #fff,
			-1px  2px 1px #fff,
			-2px  2px 1px #fff,
			2px   1px 1px #fff,
			1px   1px 1px #fff,
			0px   1px 1px #fff,
			-1px  1px 1px #fff,
			-2px  1px 1px #fff,
			2px   0px 1px #fff,
			1px   0px 1px #fff,
			0px   0px 1px #fff,
			-1px  0px 1px #fff,
			-2px  0px 1px #fff,
			2px  -1px 1px #fff,
			1px  -1px 1px #fff,
			0px  -1px 1px #fff,
			-1px -1px 1px #fff,
			-2px -1px 1px #fff,
			2px  -2px 1px #fff,
			1px  -2px 1px #fff,
			0px  -2px 1px #fff,
			-1px -2px 1px #fff,
			-2px -2px 1px #fff;

	}
	.intro i{
		display: block;
		margin: 50px auto;
	}
	.intro p{
		margin: 0 auto;
		width: 90vw;
		max-width: 500px;
		font-size: 16px;
		line-height: 1.6;
		font-weight: normal;
		text-align: left;
	}
}



.service{
	margin: 60px 0 0;
}
.service{
	padding: 20px 0 80px;
	background: url(../img/dr01/home/service_bg.png) center bottom no-repeat;
	background-size: 1600px;
}
.service .flex{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 20px;
	margin: 50px 0 0;
	padding: 0 1vw;
}
.service .flex div{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	flex-grow: 1;
	width: calc(100% / 4 - 20px);
}
.service .flex div .num{
	width: 120px;
}
.service .flex div:nth-of-type(1) .num{
	color: #26A3A9;
}
.service .flex div:nth-of-type(2) .num{
	color: #37BDEF;
}
.service .flex div:nth-of-type(3) .num{
	color: #9454ac;
}
.service .flex div:nth-of-type(4) .num{
	color: #F2D00F;
}
.service .flex div .img_wrap{
	margin: 50px 0 30px;
	padding: 0 20px;
	width: 100%;
}
.service .flex div .img_wrap img{
	width: 100%;
}
.service .flex div h3{
	margin: 20px 0 0;
	font-size: 28px;
	font-weight: 800;
	letter-spacing: 2px;
}
.service .flex div .text{
	margin: 20px 0 0;
	height: 80px;
}
.service .flex a{
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 20px auto 0;
	width: 100%;
	max-width: 300px;
	height: 64px;
	border-radius: 100vw;
	color: #fff;
	transition: 0.3s;
}
.service .flex a:hover{
	opacity: 0.8;
}
.service .flex div:nth-child(1) a{
	background: #9454ac;
}
.service .flex div:nth-child(2) a{
	background: #37BDEF;
}
.service .flex div:nth-child(3) a{
	margin-bottom: 0;
	background: #26A3A9;
}
.service .flex div:nth-child(4) a{
	margin-bottom: 0;
	background: #F2D00F;
}
@media screen and (max-width: 1280px){
	.service .flex div h3{
		margin: 20px 0 10px;
		font-size: 20px;
	}
}
@media screen and (max-width: 767px){
	.service{
		margin: 40px 0 0;
		padding: 20px 0 0;
		background: url(../img/dr01/home/service_bg.png) center top 180px no-repeat;
		background-size: 180vw;
	}
	.service .flex{
		flex-direction: column;
		margin: 20px 0 0;
	}
	.service .flex div{
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		width: 100%;
	}
	.service .flex div .num{
		width: 18vw;
	}
	.service .flex div .img_wrap{
		margin: 20px 0;
		width: 40vw;
		height: auto;
	}
	.service .flex div h3{
		margin: 10px 0 20px;
	}
	.service .flex div .text{
		padding: 0 5vw;
		height: auto;
		text-align: center;
	}
	.service .flex div .text span{
		display: inline-block;
	}
	.service .flex a{
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 20px auto 50px;
		width: 100%;
		max-width: 300px;
		height: 48px;
		border-radius: 100vw;
		color: #fff;
	}
}



.works{
	overflow-x: hidden;
	position: relative;
	margin: 0;
}
.works .works_bg1{
	position: absolute;
	top: 0;
	right: max(20px,8vw);
	width: min(250px,20vw);
}
.works .works_bg2{
	position: absolute;
	top: -100px;
	right: -100px;
	width: 300px;
}
.works h2{
	margin: 0 0 30px;
	padding-top: 100px;
}
.works .overflow_bg{
	position: relative;
	margin-left: -80px;
	margin-right: calc(50% - 50vw);
	padding-left: 80px;
	padding-right: calc(50vw - 50% + 8px);
	padding-top: 80px;
	padding-bottom: 80px;
	border-radius: 30px 0 0 30px;
	background-color: #E8F4F6;
}
.works .flex{
	justify-content: space-between;
}
.works .flex > div{
	width: 30%;
}
.works .flex p{
	margin: 20px 0 10px;
}
.works .flex a{
	color: #000;
}
.works .flex img{
	width: 100%;
}
.works .flex h3{
	margin: 20px 0;
	padding: 8px 0;
	border-radius: 4px;
	background: #26A3A9;
	font-size: 14px;
	color: #fff;
}
.works .works_area{
	position: relative;
	padding: 0 5vw 20px;
	width: 100%;
	max-width: 1280px;
}
.works .btn{
	margin: -30px auto 0;
}
@media screen and (max-width: 767px){
	.works{
		margin: 0;
		padding: 0;
		background-image: url(../img/dr01/home/works_bg_sp.png);
		background-repeat: no-repeat;
		background-position: right top 5vw;
		background-size: 40vw;
	}
	.works .works_bg1{
		display: none;
	}
	.works .works_bg2{
		display: none;
	}
	.works h2{
		padding-top: 60px;
	}
	.works .flex{
		flex-direction: inherit;
	}
	.works .flex div{
		width: 100%;
	}
	.works .overflow_bg{
		background: none;
		padding-top: 0;
		padding-bottom: 0;
		padding-right: 0;
	}
	.works .works_area{
		padding: 0 0 60px;
	}
	.works .overflow_bg .swiper-slide{
		height: auto;
	}
	.works .overflow_bg .swiper-slide .slide_inner{
		box-sizing: border-box;
		margin: 0;
		padding: 30px;
		border-radius: 20px 0 0 20px;
		height: 100%;
		background: #E8F4F6;
	}
	.swiper-button-prev,.swiper-button-next{
		position: absolute;
		bottom: 0;
		border-radius: 50%;
		width: 36px;
		height: 36px;
		background: #26A3A9 url(../img/dr01/home/arrow_w.png) center no-repeat;
		background-size: 14px;
	}
	.swiper-button-prev{
		left: calc(45vw - 36px);
		transform: rotate(180deg);
	}
	.swiper-button-next{
		right: calc(45vw - 36px);
	}
	.works .btn_wrap{
		padding: 0 5vw;
	}
	.works .btn{
		margin: 20px auto 40px;
	}
}



.about{
	margin: 100px 0 0;
	background: url(../img/dr01/home/about_bg.png) right -50px top 50px no-repeat;
	background-size: min(1100px,65vw);
}
.about .flex{
	justify-content: flex-start;
	align-items: center;
	margin: 0 0 50px;
}
.about .flex h2{
	margin: 0;
	width: auto;
	text-align: left;
}
.about .flex h2 span{
	left: auto;
	margin: 0 0 0 50px;
}
.about .flex > img{
	width: 50%;
	max-width: 688px;
}
.about .flex div{
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	margin: 0 0 0 50px;
}
.about .flex div h3{
	text-align: left;
	font-size: 16px;
	color: #fff;
}
.about .flex div p{
	display: inline-block;
	padding: 4px 16px;
	border-radius: 8px;
	background: #5FB2B7;
	font-size: min(42px,3.6vw);
	font-weight: 800;
	color: #fff;
}
.about .flex div p:first-of-type{
	margin: 0 0 4px;
}
.about .flex div .btn{
	margin: 50px 0 0;
}
.about .flex_link{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.about .flex_link a{
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	position: relative;
	border-radius: 10px;
	width: 100%;
	max-width: 620px;
}
.about .flex_link a img{
	width: 100%;
	max-width: 620px;
	transition: 0.3s;
}
.about .flex_link a:hover img{
	transform: scale(1.1);
}
.about .flex_link a h3{
	display: flex;
	align-items: center;
	position: absolute;
	top: 50%;
	left: 10%;
	transform: translateY(-50%);
	margin: 0;
	font-size: 32px;
	color: #fff;
}
.about .flex_link a h3 span{
	margin: 0 0 0 16px;
	font-size: 14px;
}
.about .flex_link a::after{
	content: "";
	position: absolute;
	right: 5vw;
	top: 50%;
	transform: translateY(-50%);
	width: 32px;
	height: 32px;
	background: url(../img/dr01/home/arrow_w.png) center no-repeat;
	transition: 0.3s;
}
.about .flex_link a:hover::after{
	right: 3vw;
}
@media screen and (max-width: 1279px){
	.about .flex{
		justify-content: center;
		padding: 0 5vw;
	}
	.about .flex_link{
		margin: 0 auto;
		width: 90%;
	}
	.about .flex_link a:first-child{
		margin: 0 20px 0 0;
	}
	.about .flex_link a h3{
		font-size: 28px;
	}
}
@media screen and (max-width: 767px){
	.about{
		margin: 0;
		background: url(../img/dr01/home/about_bg.png) center top 24vw no-repeat;
		background-size: clamp(500px,120vw,600px);
	}
	.about .flex{
		flex-direction: column;
	}
	.about .flex > img{
		width: 90%;
		max-width: 500px;
	}
	.about .flex div{
		margin: 0 auto;
	}
	.about .flex div h3{
		margin: 15px 0 50px;
	}
	.about .flex div p{
		margin: 0 auto;
		font-size: 24px;
	}
	.about .flex div p:first-of-type{
		margin: 0 auto 5px;
	}
	.about .flex_link{
		flex-direction: column;
	}
	.about .flex_link a:first-child{
		margin: 0 0 20px 0;
	}
	.about .flex_link a h3{
		font-size: 6vw;
	}
}



.news{
	margin: 80px 0 0;
}
.news .overflow_bg{
	box-sizing: border-box;
	margin-left: calc(50% - 50vw);
	padding-left: calc(50vw - 50%);
	padding-top: 60px;
	padding-bottom: 60px;
	border-radius: 0 30px 30px 0;
	background: #FAF7F3;
	background-image: url(../img/dr01/home/ptn_dot.png);
	background-repeat: no-repeat;
	background-position: center left -200px;
}
.news li a{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: 30px auto;
	padding: 30px 40px;
	border-radius: 10px;
	width: 90%;
	height: auto;
	background: #fff;
	font-size: 14px;
	color: #444;
}
.news li div{
	display: flex;
	align-items: center;
	padding: 5px 0;
}
.news li .date{
	font-size: 16px;
	color: #5FB2B7;
}
.news li .cat{
	display: flex;
	align-items: center;
	margin: 0 20px;
	padding: 0 16px;
	border-radius: 100vw;
	height: 28px;
	background: #444;
	color: #fff;
}
.news li .title{
	padding: 5px 0;
}
.news .news_inner{
	position: relative;
}
.news .btn{
	position: absolute;
	left: 50%;
	bottom: -120px;
	z-index: 1;
	transform: translateX(-50%);
	margin: 0 auto;
}
@media screen and (max-width: 767px){
	.news .overflow_bg{
		margin-left: auto;
		padding-left: calc(50vw - 50%);
		padding-top: 40px;
		padding-bottom: 40px;
		border-radius: 0 30px 30px 0;
		background-image: url(../img/dr01/home/news_bg_sp.png);
		background-position: top 40px left -5vw;
		background-size: 40vw;
	}
	.news li{
		padding: 10px 24px;
	}
	.news li .date{
		font-size: 13px;
	}
	.news li .cat{
		height: 22px;
		font-size: 12px;
	}
	.news .btn{
		bottom: -92px;
	}
}



#banner_area{
	flex-wrap: wrap;
	padding-top: 150px;
	width: 100%;
	max-width: 1280px;
}
#banner_area a {
	display: block;
	box-sizing: border-box;
	border: 2px solid #5FB2B7;
	border-radius: 8px;
	width: 100%;
	max-width: 400px;
}
#banner_area a img {
	display: block;
	border-radius: 8px;
	margin: 0;
	width: 100%;
	max-width: none;
}
@media screen and (max-width: 767px){
	#banner_area{
		flex-wrap: wrap;
		justify-content: center;
		padding-top: 80px;
	}
	#banner_area a {
		max-width: 300px;
	}
	#banner_area a:nth-of-type(1){
		margin: 0 10px 20px;
	}
	#banner_area a:nth-of-type(2){
		margin: 0 10px 20px;
	}
	#banner_area a:nth-of-type(3){
		margin: 0 10px 20px;
	}
	#banner_area a:nth-of-type(4){
		margin: 0 10px 20px;
	}
	#banner_area a img {
		margin: 0;
	}
}



#ft_logo_wrap {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin: 0 auto;
	width: 100%;
	height: 80px;
	background: none;
}
#ft_logo{
	box-sizing: content-box;
	overflow: hidden;
	margin: 0 auto;
	margin-left: calc(50vw - 50%);
	padding-left: calc(50vw - 640px);
	border-radius: 0 30px 0 0;
	width: 1280px;
	background: #EFF7F7;
}
#ft_logo .move_top div {
	top: 20px;
}
#ft_logo .move_top:before {
	display: none;
}
footer{
	background-image: url(../img/dr01/home/ft_dot.png) ,linear-gradient(90deg,#5FB2B7,#259BA1);
	background-repeat: no-repeat;
	background-position: top right;
}
footer .cr_wrap{
	margin: 0 auto;
	width: 100%;
	max-width: 1280px;
}
footer small{
	display: block;
	margin: 0;
	padding: 20px 0;
	color: #fff;
	font-size: 12px;
}
@media screen and (max-width: 767px){
	#ft_logo_wrap {
		height: 60px;
	}
	#ft_logo .move_top {
		width: 60px;
		height: 60px;
	}
	#ft_logo .move_top div {
		position: absolute;
		top: 14px;
		z-index: 9998;
		border: 12px solid rgba(0,0,0,0);
		border-bottom: 12px solid #fff;
	}
	#ft_logo .move_top div:before {
		position: absolute;
		top: -9px;
		z-index: 9999;
		border: 12px solid rgba(0,0,0,0);
		border-bottom: 12px solid #5FB2B7;
	}
	#ft_logo img {
		margin: 0 0 0 20px;
		height: 40px;
	}
	.ft_info{
		order: 0;
	}
	#ft_cnt_wrap{
		padding: 20px 0 0;
	}
	.ft_info h3 {
		padding: 20px 0;
		font-size: 18px;
	}
	.ft_sns_wrap{
		margin: 30px 0;
	}
	.ft_list {
		margin: 0 0 10px;
	}
	.ft_list ul{
		padding: 0 5vw;
	}
	.ft_list ul li{
		text-align: center;
	}
	footer{
		background-size: 25vw,auto;
	}
	footer small{
		display: block;
		margin: 0;
		padding: 20px 0;
		color: #fff;
		font-size: 10px;
		text-align: center;
	}
}

.pcnone{
	display: none;
}
.spnone{
	display: block;
}
@media screen and (max-width: 767px){
	.pcnone{
		display: block;
	}
	.spnone{
		display: none;
	}
}

/* .fixed_docsbot{
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 99999;
	width: 100%;
	height: 450px;
} */