/* Common */
.heading {
	overflow: hidden;
	display: flex;
	margin-bottom:50px;
}

.sec-title {
	font-size:3.8rem;
	font-weight:700;
}

.link {
	display: flex;
	align-items: center;
	position: relative;
	padding-right:40px;
	font-size:2rem;
	font-weight:700;
	color:#255341;
}

.link i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top:50%;
	right:0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width:27px;
	height:27px;
	background-color: #255341;
	border-radius:50%;
}

.link i::before {
	content: "";
	display: inline-block;
	width: 13px;
	height:13px;
	background: url('/child/img/main/sec02_link.png');
	-webkit-transition:all .3s ease;
	transition:all .3s ease;
}


@media screen and (min-width:1201px) {
	.link:hover i::before {
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
	}
}
@media screen and (max-width:1200px) {
	.sec-title {
		font-size:3rem;
	}

	.link {
		font-size:1.8rem;
	}
}
@media screen and (max-width:1024px) {
	.heading {
		margin-bottom:38px;
	}

	.link {
		padding-right:30px;
	}

	.link i {
		width:23px;
		height:23px;
	}

	.link i::before {
		width:11px;
		height:11px;
		background-size:auto 11px;
	}
}
@media screen and (max-width:768px) {
	.sec-title {
		font-size:2.4rem;
	}

	.link {
		font-size:1.7rem;
	}
}
@media screen and (max-width:576px) {
	.heading {
		margin-bottom:24px;
	}

	.sec-title {
		font-size:2rem;
	}

	.link {
		font-size:1.6rem;
	}

	.link i {
		width:21px;
		height:21px;
	}

}


/* Visual */
.sec01 .visual {
	position: relative;
	width:100%;
	height:800px;
	overflow: hidden;
}

.sec01 .context {
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: absolute;
	top:0;
	left:50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	max-width:1310px;
	width: 100%;
	height:100%;
	margin:0 auto;
	padding:0px 15px;
}

.sec01 .title {
	font-size:6.4rem;
	font-weight:700;
	color:#fff;
	margin-bottom:50px;
	opacity:0;
  -webkit-transform: translateY(100%);
	transform: translateY(100%);
  /* -webkit-transition: all .8s ease .3s;
	transition: all .8s ease .3s; */
}

.sec01 .text {
	font-size:2.8rem;
	line-height:1.6;
	color:#fff;
	opacity:0;
  -webkit-transform: translateY(100%);
	transform: translateY(100%);
  /* -webkit-transition: all .8s ease .5s;
	transition: all .8s ease .5s; */
}

.sec01 .background {
	width:100%;
	height:100%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.sec01 .background01 {
	background-image: url('/child/img/main/sec01_visual_01.png');
}

.sec01 .swiper-container {
	height:100%;
}

.sec01 .swiper-wrapper {
	height:100%;
}

.sec01 .swiper-slide {
	height:100%;
	overflow: hidden;
}

.sec01 .swiper-pagination {
	display: flex;
	align-items: center;
	position: absolute;
	bottom:140px;
	left:50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	max-width:1310px;
	width: 100%;
	margin:0 auto;
	padding:0px 15px;
	z-index:10;
}

.sec01 .swiper-pagination-bullet {
	width:9px;
	height:9px;
	margin-right:20px;
	background-color: #55a783;
	opacity: 1;
}

.sec01 .swiper-pagination-bullet-active {
	background-color: #fff;
}

.sec01 .swiper-slide-active .title {
  -webkit-animation: title-up .8s ease .3s forwards;
	animation: title-up .8s ease .3s forwards;
}

.sec01 .swiper-slide-active .text {
  -webkit-animation: text-up .8s ease .5s forwards;
	animation: text-up .8s ease .5s forwards;
}

@-webkit-keyframes title-up {
	0% {
		opacity:0;
		-webkit-transform: translateY(100%);
		transform: translateY(100%);
	}
	100% {
		opacity:1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

@keyframes title-up {
	0% {
		opacity:0;
		-webkit-transform: translateY(100%);
		transform: translateY(100%);
	}
	100% {
		opacity:1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

@-webkit-keyframes text-up {
	0% {
		opacity:0;
		-webkit-transform: translateY(100%);
		transform: translateY(100%);
	}
	100% {
		opacity:1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

@keyframes text-up {
	0% {
		opacity:0;
		-webkit-transform: translateY(100%);
		transform: translateY(100%);
	}
	100% {
		opacity:1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}


@media screen and (max-width:1200px) {
	.sec01 .title {
		font-size:5.2rem;
	}

	.sec01 .text {
		font-size:2.4rem;
	}
}
@media screen and (max-width:1024px) {
	.sec01 .visual {
		height:680px;
	}

	.sec01 .title {
		margin-bottom: 38px;
	}

	.sec01 .swiper-pagination {
		bottom:100px;
	}

	.sec01 .swiper-pagination-bullet {
		margin-right:16px;
	}
}
@media screen and (max-width:768px) {
	.sec01 .visual {
		height:600px;
	}

	.sec01 .context {
		justify-content: center;
		padding-top:0px;
	}

	.sec01 .title {
		font-size: 4rem;
	}

	.sec01 .text {
		font-size:2rem;
	}

	.sec01 .background {
		background-position: right 30% center;
	}

	.sec01 .swiper-pagination {
		top:unset;
		bottom:120px;
	}

	.sec01 .swiper-pagination-bullet {
		margin-right: 12px;
	}
}
@media screen and (max-width:576px) {
	.sec01 .visual {
		height:480px;
	}

	.sec01 .title {
		font-size:2.8rem;
		margin-bottom:28px;
	}

	.sec01 .text {
		font-size:1.6rem;
	}

	.sec01 .swiper-pagination-bullet {
		width:7px;
		height:7px;
		margin-right: 10px;
	}
}


/* Notice */
.sec02 {
	background: url('/child/img/main/sec02_bg.png') no-repeat center / cover;
	padding:100px 0px;
}

.sec02 .heading {
	justify-content: space-between;
	align-content: center;
}

.sec02 .basic-list {
	border-top:4px solid #7d7d7d;
}

.sec02 .basic-list li {
	border-bottom:1px solid #c2c2c2;
}

.sec02 .basic-list a {
	display: block;
	padding:30px 0px;
}

.sec02 .basic-list dl {
	display: flex;
	align-items: center;
}

.sec02 .basic-list dd.data {
	width:140px;
	text-align: center;
}

.sec02 .basic-list dd.data span {
	display: block;
	font-size:1.4rem;
	color:#49a17e;
}

.sec02 .basic-list dd.data b {
	font-size:4.4rem;
	color:#666666;
}

.sec02 .basic-list dd.subject {
	display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
	width:calc(100% - 140px);
	padding:0px 30px;
	font-size:2rem;
}

.sec02 .basic-list .message {
	padding:180px 30px;
	text-align: center;
}

.sec02 .basic-list .message p {
	font-size:2rem;
}

@media screen and (min-width:1201px) {
	.sec02 .link:hover i::before {
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
	}
}
@media screen and (max-width:1200px) {
	.sec02 .link {
		font-size:1.8rem;
	}

	.sec02 .basic-list dd.data b {
		font-size: 3.2rem;
	}

	.sec02 .basic-list dd.subject {
		font-size:1.8rem;
	}
}
@media screen and (max-width:1024px) {
	.sec02 {
		padding:80px 0px;
	}

	.sec02 .link {
		padding-right:30px;
	}

	.sec02 .link i {
		width:23px;
		height:23px;
	}

	.sec02 .link i::before {
		width:11px;
		height:11px;
		background-size:auto 11px;
	}

	.sec02 .basic-list {
		border-width:2px;
	}

	.sec02 .basic-list a {
		padding:24px 0px;
	}

	.sec02 .basic-list dd.data {
		width:100px;
	}

	.sec02 .basic-list dd.data span {
		font-size:1.3rem;
	}

	.sec02 .basic-list dd.subject {
		width: calc(100% - 100px);
		padding:0px 24px;
	}
}
@media screen and (max-width:768px) {
	.sec02 {
		padding:60px 0px;
	}

	.sec02 .link {
		font-size:1.7rem;
	}

	.sec02 .basic-list dd.data {
		width:80px;
	}

	.sec02 .basic-list dd.data b {
		font-size: 2.6rem;
	}

	.sec02 .basic-list dd.subject {
		width: calc(100% - 80px);
		font-size:1.7rem;
	}
}
@media screen and (max-width:576px) {
	.sec02 .link {
		font-size:1.6rem;
	}

	.sec02 .link i {
		width:21px;
		height:21px;
	}

	.sec02 .basic-list a {
		padding: 16px 0px;
	}

	.sec02 .basic-list dd.data {
		width:60px;
	}

	.sec02 .basic-list dd.data span {
		font-size:1.2rem;
	}

	.sec02 .basic-list dd.data b {
		font-size: 2.2rem;
	}

	.sec02 .basic-list dd.subject {
		width: calc(100% - 60px);
		padding:0px 0px 0px 16px;
		font-size:1.6rem;
	}
}


/* Client */
.sec03 {
	padding:100px 0px 140px;
}

.sec03 .heading {
	justify-content: space-between;
	align-content: center;
}

.sec03 .bbs {
	position: relative;
	margin-bottom:80px;
}

.sec03 .bbs .img {
	display: flex;
	justify-content: center;
	align-items: center;
	width:100%;
	height:140px;
	padding:10px;
}

.sec03 .bbs .img img {
	display: block;
	max-height:100%;
}

.sec03 .prev,
.sec03 .next {
	position: absolute;
	top:50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width:55px;
	height:55px;
	background-repeat: no-repeat;
	background-position: center;
	z-index:10;
}

.sec03 .prev {
	left:-110px;
	background-image: url('/child/img/main/sec03_prev.png');
}

.sec03 .next {
	right:-110px;
	background-image: url('/child/img/main/sec03_next.png');
}

.sec03 .swiper-pagination {
	display: none;
	justify-content: center;
	position: relative;
	margin-top:30px;
}

.sec03 .swiper-pagination-bullet {
	margin:0px 4px;
	background-color: #e0efe9;
	opacity:1;
}

.sec03 .swiper-pagination-bullet-active {
	background-color:#1b3f31 ;
}

.sec03 .service {
	display: flex;
	gap:40px;
}

.sec03 .service .box {
	flex:1 1;
	border-radius:20px;
	overflow: hidden;
}

.sec03 .service .box01 {
	background-color:#daf9eb;
}

.sec03 .service .box02 {
	background-color:#def7f8;
}

.sec03 .service a {
	display: block;
	position: relative;
	padding:50px;
}

.sec03 .service .text .t01 {
	display: flex;
	align-items: center;
	font-size:2.4rem;
	font-weight:700;
	margin-bottom:30px;
}

.sec03 .service .text .t01 img {
	display: block;
	margin-left:10px;
}

.sec03 .service .text .t02 {
	font-size:1.8rem;
	line-height:1.5;
}

.sec03 .service .img {
	position: absolute;
	top:50%;
	right:50px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

@media screen and (max-width:1366px) {
	.sec03 .swiper-container {
		overflow: visible;
	}

	.sec03 .swiper-pagination {
		display: flex;
	}
}
@media screen and (max-width:1200px) {
	.sec03 .service .text .t01 {
		font-size:2rem;
	}

	.sec03 .service .text .t02 {
		font-size:1.7rem;
	}
}
@media screen and (max-width:1024px) {
	.sec03 {
		padding:80px 0px 120px;
	}

	.sec03 .bbs {
		margin-bottom:60px;
	}

	.sec03 .swiper-pagination {
		margin-top: 24px;
	}

	.sec03 .service {
		gap:20px;
	}

	.sec03 .service a {
		padding:28px;
	}

	.sec03 .service .text .t01 {
		margin-bottom: 24px;
	}

	.sec03 .service .text .t01 img {
		width:26px;
	}

	.sec03 .service .img {
		right:28px;
	}

	.sec03 .service .img img {
		width:76px;
	}
}
@media screen and (max-width:800px){

}
@media screen and (max-width:768px) {
	.sec03 .bbs .img {
		height:80px;
		padding:6px;
	}

	.sec03 .service {
		flex-wrap: wrap;
		gap:12px;
	}

	.sec03 .service .box {
		flex:1 1 100%;
	}

	.sec03 .service a {
		padding: 28px;
	}

	.sec03 .service .text .t01 {
		font-size:1.8rem;
		margin-bottom:20px;
	}

	.sec03 .service .text .t01 img {
		width:22px;
	}

	.sec03 .service .text .t02 {
		font-size:1.6rem;
	}
}
@media screen and (max-width:576px) {
	.sec03 {
		padding:60px 0px 100px;
	}

	.sec03 .bbs {
		margin-bottom:40px;
	}

	.sec03 .swiper-pagination {
		margin-top:20px;
	}

	.sec03 .swiper-pagination-bullet {
		width:6px;
		height:6px;
	}

	.sec03 .service a {
		padding: 20px;
	}

	.sec03 .service .text .t01 {
		font-size: 1.7rem;
		margin-bottom:12px;
	}

	.sec03 .service .text .t01 img {
		width:18px;
		margin-left:6px;
	}

	.sec03 .service .text .t02 {
		font-size: 1.4rem;
	}

	.sec03 .service .img img {
		width:46px;
	}
}
------------ */

/* Popup */
#popup {
	position: relative;
}

.popup-layer {
	z-index: 10000;
	position: absolute;
	background: #fff;
	box-shadow: 0px 0px 20px 0px rgba(0,0,0,.25);
	animation: popup-fade .65s ease-in-out .35s forwards;
	opacity: 0;
	max-width:800px;
}

@keyframes popup-fade {
	0% { opacity: 0;
		-webkit-transform: translateY(25px);
		-ms-transform: translateY(25px);
		transform: translateY(25px); }
	100% { opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0); }
}
.popup-layer__body {
	background: #fff;
}

.popup-layer__body img {
	display: block;
	margin: 0 auto;
	border: none;
	max-width: 100%;
}

.popup-layer__foot {
	background: #424242;
}

.popup-layer__foot ul {
	display:flex;
	flex-wrap: wrap;
}

.popup-layer__foot li {
	width:50%;
	padding:10px;
}

.popup-layer__foot li:first-child {
	padding-right:0;
}

.popup-layer__foot li:last-child {
	text-align: right;
}

.popup-layer__foot span {
	font-size: 1.5rem;
	color: #fff;
	cursor: pointer;
	transition:all 0.3s ease;
}

.popup-layer__foot label:hover span { opacity: .7; }

/* .popup-layer-foot { background: #424242; }
.popup-layer-foot span { font-size: 15px; color: #fff; }
.popup-layer-foot label:hover span { opacity: .7; }
.popup-layer-foot li:first-child { padding-right: 0; }
.popup-layer-foot li:last-child { text-align: right; } */


@media (max-width: 1024px){
	/* .popup-layer { z-index: 999; } */
	.popup-layer { top: 95px !important; left: 0 !important; margin: 0 5px; }
}
@media (max-width: 768px){

	.popup-layer {
		width:calc(100% - 10px);
	}

	.popup-layer img {
		max-width: none;
		width:100%;
		height: auto !important;
	}
	.popup-layer-foot span { font-size: 14px; }

}
@media (max-width: 375px){
	.popup-layer-foot li { width: 100%; }
	.popup-layer-foot li:last-child { text-align: left; }
}
