/* main */
.post-main .visual-swiper {
	height:100vh;
	max-height:640px;
}
.post-main .visual-swiper .swiper {
	height:100%;
}
.post-main .visual-swiper .fixed-visual {
	padding-top: 100px;
	background:url('../img/main/post_main_visual.png') no-repeat bottom left 51%;
	background-size:cover;
}
.post-main .visual-swiper .swiper-slide:before {
	position:absolute;
	top:50%;
	left:0px;
	right:0px;
	bottom:0px;
	z-index:10;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 100%);
	content:"";
}
.post-main .visual-swiper .fixed-visual:before {
	display: none;
	position:absolute;
	top:0px;
	left:0px;
	right:0px;
	bottom:0px;
	z-index:10;
	background: rgba(0, 0, 0, 0.35);
	content:"";
}
.post-main .visual-swiper .fixed-visual .text-box {
	position:absolute;
	top:50%;
	left:50%;
	right:0px;
	z-index:12;
	width:100%;
	max-width: 1000px;
	transform:translateY(-50%) translateX(-50%);
	text-align:center;
}
.post-main .visual-swiper .fixed-visual .text-box h3 {
	color:white;
	font-size:40px;
	line-height:45px;
	letter-spacing:-1px;
	text-align:center;
}
.post-main .visual-swiper .fixed-visual .text-box p {
	margin-top:20px;
	color:white;
	font-size:13px;
	letter-spacing:-0.3px;
	text-align:center;
}
.post-main .visual-swiper .fixed-visual .text-box a {
	display:inline-block;
	width:160px;
	height:48px;
	margin-top:30px;
	background:#4e81ff;
	border:1px solid #4e81ff;
	border-radius:24px;
	color:white;
	font-size:14px;
	font-weight:bold;
	line-height:46px;
	text-align:center;
}
.post-main .visual-swiper .fixed-visual .icon {
	width: 100%;
	height: 244px;
	margin-top: 25px;
	background: url("../img/main/post_main_visual_icon.svg") no-repeat center center;
	background-size: 270px auto;
}
.post-main .visual-swiper .swiper-slide > img {
	width: 100%;
	height: 100%;
	object-fit:cover;
	object-position: center center;
}
.post-main .visual-swiper .swiper-slide > .pc_img {
	display: none;
}
.post-main .visual-swiper .pagination {
	position: absolute;
	bottom: 20px;
	z-index: 1;
	display: flex;
	justify-content: center;
	gap: 0px 8px;
}
.post-main .visual-swiper .pagination .bullet {
	position:relative;
	padding: 8px 11px;
	background: transparent;
	border: 1px solid #fff;
	border-radius: 4px;
	color: #fff;
	font-size:12px;
	font-weight: 700;
	line-height: 17px;
	letter-spacing: -0.24px;
	text-align:center;
	opacity: 0.5;
	transition: opacity 0.3s ease-in-out;
}
.post-main .visual-swiper .pagination .bullet span {
	position:relative;
	z-index:2;
}
.post-main .visual-swiper .pagination .bullet.on {
	opacity: 1;
}
.post-main .visual-swiper .pagination .bullet.on:before {
	position: absolute;
	left:0px;
	top:0px;
	bottom: 0px;
	z-index:1;
	background: rgba(255, 255, 255, 0.20);
	animation: visual_progress 3s both linear;
	content:"";
}

.post-main .visual-swiper:hover .pagination .bullet.on:before {
	animation-play-state: paused;
}

.post-main .section {
	text-align:center;
}
.post-main .section .inner-wrap {
	max-width:1200px;
	height:100%;
	margin:0 auto;
}

.post-main .section.number {
	padding: 80px 0px;
	background:url('../img/main/mo_number_bg.png') no-repeat center center;
	background-size:cover;
}
.post-main .section.number .inner-wrap {
	display: flex;
	flex-direction: column;
	gap: 16px 40px;
	max-width: 1200px;
}
.post-main .section.number dl {
	text-align: center;
}
.post-main .section.number dl dt {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 40px;
	font-weight: 700;
	line-height: 76px;
	letter-spacing: -4.6px;
}
.post-main .section.number dl dt:after {
	width: 24px;
	height: 24px;
	margin-left: 10px;
	background:url('../img/main/add.svg') no-repeat center center;
	background-size:cover;
	content:"";
}
.post-main .section.number dl dd {
	position: relative;
	margin-top: 16px;
	padding-top: 17px;
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	line-height: 23px;
	letter-spacing: -1.5px;
}
.post-main .section.number dl dd:before {
	position: absolute;
	top: 0px;
	left: 50%;
	z-index: 1;
	width: 80px;
	height: 1px;
	margin-left: -40px;
	background: rgba(255, 255, 255, 0.5);
	content: "";
}

.post-main .section.about {
	padding: 80px 20px;
	background: #fafafa;
}
.post-main .section.about .text-box {
}
.post-main .section.about .text-box h6 {
	position: relative;
	padding-top: 70px;
	color: #000;
	font-size: 30px;
	font-weight:300;
	line-height:148%;
}
.post-main .section.about .text-box h6 strong {
	font-weight:normal;
}
.post-main .section.about .text-box h6:before {
	position: absolute;
	top: 0px;
	left: 50%;
	z-index: 1;
	width: 50px;
	height: 50px;
	margin-left: -25px;
	background: url("../img/main/post_main_about_icon.svg") no-repeat center center;
	background-size: auto 100%;
	content: "";
}
.post-main .section.about .text-box p {
	margin-top: 20px;
	color: #000;
	font-size: 14px;
	font-weight:300;
	line-height:148%;
	letter-spacing: -0.42px;
}
.post-main .section.about .text-box p .dt {
	display: none;
}
.post-main .section.about .text-box p .m {
}
.post-main .section.about .img {
	margin-top: 60px;
	padding: 0px 40px;
}
.post-main .section.about .img img {
	width: 100%;
	max-width: 634px;
	height: auto;
}

.post-main .section.one-stop {
	padding: 80px 20px 40px;
}
.post-main .section.one-stop .text-box {
}
.post-main .section.one-stop .text-box h6 {
	position: relative;
	padding-top: 70px;
	color: #000;
	font-size: 30px;
	font-weight:300;
	line-height:148%;
}
.post-main .section.one-stop .text-box h6 strong {
	font-weight:normal;
}
.post-main .section.one-stop .text-box h6:before {
	position: absolute;
	top: 0px;
	left: 50%;
	z-index: 1;
	width: 50px;
	height: 50px;
	margin-left: -25px;
	background: url("../img/main/post_main_onestop_icon.svg") no-repeat center center;
	background-size: auto 100%;
	content: "";
}
.post-main .section.one-stop .text-box p {
	position: relative;
	width: 300px;
	padding-left: 21px;
	margin-top: 40px;
	margin-left: auto;
	margin-right: auto;
	color: #696969;
	font-size: 16px;
	font-weight:400;
	line-height:148%;
	text-align:left;
}
.post-main .section.one-stop .text-box p + p {
	margin-top: 5px;
}
.post-main .section.one-stop .text-box p:before {
	position: absolute;
	top: 50%;
	left: 0px;
	z-index: 1;
	width: 16px;
	height: 16px;
	margin-top: -8px;
	background:url("../img/main/post_main_onestop_check.svg") no-repeat center center;
	background-size: auto 16px;
	content: "";
}
.post-main .section.one-stop .img {
	margin-top: 40px;
	padding: 0px 40px;
}
.post-main .section.one-stop .img img {
	width: 100%;
	max-width: 394px;
	height: auto; 
}
.post-main .section.one-stop dl {
	margin-top: 40px;
}
.post-main .section.one-stop dl dt {
	color: #000;
	font-size: 16px;
	font-weight:700;
	line-height:148%;
}
.post-main .section.one-stop dl dd {
	margin-top: 20px;
	padding: 20px;
	background:#f3f3f3;
	border-radius: 10px;
}
.post-main .section.one-stop dl dd h6 {
	color: #000;
	font-size: 14px;
	font-weight:700;
	line-height:148%;
}
.post-main .section.one-stop dl dd .red {
	color: #EE2722;
	font-size: 14px;
	font-weight:400;
	line-height:148%;
}
.post-main .section.one-stop dl dd .box {
	margin-top: 10px;
	padding: 16px;
	background:#fff;
	border-radius: 5px;
	color: #666;
	font-size: 14px;
	font-weight:400;
	line-height:148%;
	text-align:left;
}
.post-main .section.one-stop dl dd .box span {
	font-family: "Malgun Gothic";
}
.post-main .section.one-stop dl dd .default {
	margin-top: 10px;
	color: #000;
	font-size: 14px;
	font-weight:400;
	line-height:148%;
	text-align:left;
}

.post-main .section.why {
	padding: 80px 20px;
	background:#fafafa;
}
.post-main .section.why h6 {
	position: relative;
	color: #000;
	font-size: 30px;
	font-weight:300;
	line-height:148%;
}
.post-main .section.why h6 strong {
	font-weight:normal;
}
.post-main .section.why .item-box {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin-top: 40px;
}
.post-main .section.why .item-box dl {
	width: 100%;
	padding: 24px 20px;
	border-radius: 20px;
	text-align:left;
}
.post-main .section.why .item-box dl:nth-child(2n + 1) {
	background:#fff;
	color: #017EFF;
}
.post-main .section.why .item-box dl:nth-child(2n) {
	background:#017EFF;
	color: #fff;
}
.post-main .section.why .item-box dt {
	font-size: 18px;
	font-weight:800;
	line-height:148%;
}
.post-main .section.why .item-box dd {
	margin-top: 20px;
	font-size: 14px;
	font-weight:400;
	line-height:148%;
}

.post-main .section.how {
	padding: 80px 20px;
	background:#fff;
}
.post-main .section.how h6 {
	position: relative;
	padding-top: 70px;
	color: #000;
	font-size: 30px;
	font-weight:300;
	line-height:148%;
}
.post-main .section.how h6 strong {
	font-weight:normal;
}
.post-main .section.how h6:before {
	position: absolute;
	top: 0px;
	left: 50%;
	z-index: 1;
	width: 50px;
	height: 50px;
	margin-left: -25px;
	background: url("../img/main/post_main_how_icon.svg") no-repeat center center;
	background-size: auto 100%;
	content: "";
}
.post-main .section.how p.red {
	margin-top: 5px;
	color: #EE2722;
	font-size: 14px;
	font-weight:400;
	line-height:148%;
}
.post-main .section.how .item-box {
	margin-top: 40px;
}
.post-main .section.how .item-box dl {
}
.post-main .section.how .item-box dl + dl {
	margin-top: 40px;
}
.post-main .section.how .item-box dl dt {
	position: relative;
	height: 280px;
	font-size: 0px;
}
.post-main .section.how .item-box dl:nth-child(1) dt {
	background: url("../img/main/post_main_how_m_img01.png") no-repeat top center;
	background-size:160px auto;
}
.post-main .section.how .item-box dl:nth-child(2) dt {
	background: url("../img/main/post_main_how_m_img02.png") no-repeat top center;
	background-size:160px auto;
}
.post-main .section.how .item-box dl:nth-child(3) dt {
	background: url("../img/main/post_main_how_m_img03.png") no-repeat top center;
	background-size:160px auto;
}
.post-main .section.how .item-box dl:nth-child(4) dt {
	background: url("../img/main/post_main_how_m_img04.png") no-repeat top center;
	background-size:160px auto;
}
.post-main .section.how .item-box dl dt:after {
	position: absolute;
	bottom: 20px;
	left: 50%;
	z-index: 1;
	width: 200px;
	height: 19px;
	margin-left: -100px;
  background: radial-gradient(
    50% 50% at 50% 50%,
    rgba(0, 0, 0, 0.2) 0%,
    rgba(255, 255, 255, 0) 88.94%
  );
	filter: blur(5px);
	content: "";
}
.post-main .section.how .item-box dl dd {
}
.post-main .section.how .item-box dl dd h5 {
	position: relative;
	display: inline-flex;
	justify-content: center;
	align-items: center;
}
.post-main .section.how .item-box dl dd h5 span {
	padding: 5px 10px;
	background:#017EFF;
	border-radius: 5px;
	color: #fff;
	font-size: 16px;
	font-weight:700;
	line-height:148%;
}
.post-main .section.how .item-box dl dd h5 .question-btn {
	position: absolute;
	top: 50%;
	right: -23px;
	z-index: 1;
	width: 18px;
	height: 18px;
	margin-top: -9px;
	background: transparent;
	border: none;
}
.post-main .section.how .item-box dl dd h5 .question-btn img {
	width: 100%;
	height: auto;
}
.post-main .section.how .item-box dl dd p {
	margin-top: 5px;
	color: #999;
	font-size: 20px;
	font-weight:700;
	line-height:148%;
}
.post-main .section.how .item-box dl dd p strong {
	color: #000;
}
.post-main .section.how .item-box dl dd p span {
	font-size: 16px;
} 

.post-main .section.process {
	padding: 80px 20px;
	background:#fafafa;
}
.post-main .section.process h6 {
	position: relative;
	color: #000;
	font-size: 30px;
	font-weight:300;
	line-height:148%;
}
.post-main .section.process h6 strong {
	font-weight: normal;
}
.post-main .section.process ul {
	margin-top: 40px;
}
.post-main .section.process ul li {
}
.post-main .section.process ul li + li {
	margin-top: 20px;
}
.post-main .section.process ul li dl {
}
.post-main .section.process ul li dl dt {
	width: 100%;
	padding-top: 65px;
	margin-bottom: 20px;
	color: #000;
	font-size: 16px;
	font-weight:800;
	line-height:148%;
	text-align:center;
}
.post-main .section.process ul li:nth-child(1) dl dt {
	background: url("../img/main/post_main_proc_icon01.svg") no-repeat top center;
	background-size: 60px auto;
}
.post-main .section.process ul li:nth-child(2) dl dt {
	background: url("../img/main/post_main_proc_icon02.svg") no-repeat top center;
	background-size: 60px auto;
}
.post-main .section.process ul li:nth-child(3) dl dt {
	background: url("../img/main/post_main_proc_icon03.svg") no-repeat top center;
	background-size: 60px auto;
}
.post-main .section.process ul li:nth-child(4) dl dt {
	background: url("../img/main/post_main_proc_icon04.svg") no-repeat top center;
	background-size: 60px auto;
}
.post-main .section.process ul li:nth-child(5) dl dt {
	background: url("../img/main/post_main_proc_icon05.svg") no-repeat top center;
	background-size: 60px auto;
}
.post-main .section.process ul li dl dd {
	position: relative;
	padding: 10px;
	padding-left: 35px;
	background: #fff;
	border-radius: 5px;
	color: #000;
	font-size: 14px;
	font-weight: 700;
	line-height:148%;
	text-align:left;
}
.post-main .section.process ul li dl dd:before {
	position: absolute;
	left: 10px;
	top: 50%;
	z-index: 1;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: url("../img/main/board_main_check.svg") no-repeat center center;
	content: "";
}
.post-main .section.process ul li dl dd + dd {
	margin-top: 10px;
}
.post-main .section.process ul li dl dd .gray {
	color: #ccc;
}
.post-main .section.process ul li dl dd .deep-gray {
	color: #666;
}
.post-main .section.process .desc-wrap {
	margin-top: 20px;
}
.post-main .section.process .desc-wrap p {
	color: #000;
	font-size: 14px;
	line-height: 148%;
	text-align:left;
}
.post-main .section.process .desc-wrap p + p {
	margin-top: 10px;
}
.post-main .section.process .desc-wrap p .gray {
	color: #666;
}
.post-main .section.process .schedule-box {
	margin-top: 40px;
}
.post-main .section.process .schedule-box h6 {
	margin-bottom: 10px;
	color: #000;
	font-size: 14px;
	font-weight:700;
	line-height:148%;
}
.post-main .section.process .schedule-box .content {
}
.post-main .section.process .schedule-box .content img {
	width: 100%;
	height: auto;
}

.post-main .section.portfolio {
	padding: 80px 0px;
	background: #fff;
}
.post-main .section.portfolio h3 {
	height: 40px;
	margin-bottom: 10px;
	background: url("../img/main/board_main_port_logo.svg") no-repeat center center;
	background-size: auto 40px;
	font-size :0px;
}
.post-main .section.portfolio h6 {
	color: #000;
	font-size: 30px;
	font-weight: 300;
	line-height:148%;
}
.post-main .section.portfolio h6 strong {
	font-weight: normal;
}
.post-main .section.portfolio .swiper {
	padding-left: 60px;
}
.post-main .section.portfolio .swiper-wrapper {
	transition-timing-function: linear;
}
.post-main .section.portfolio .swiper-slide {
	position: relative;
	width: 28%;
	min-width: 200px;
	max-width: 260px;
	margin: 20px 0px;
	margin-right: 20px;
	border-radius: 10px;
	box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.20);
	overflow: hidden;
	aspect-ratio: 210 / 297;
}
.post-main .section.portfolio .swiper-slide img {
	width:100%;
	height:100%;
	object-fit: cover;
}

@keyframes portfolioAnimate {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}
.post-main .section.portfolio .animate .swiper-wrapper {
	animation: portfolioAnimate linear 3s infinite;
	white-space:nowrap;
}
.post-main .section.portfolio .animate .swiper-wrapper:hover {
	animation-play-state: paused;
}
.post-main .section.portfolio .animate .swiper-wrapper .swiper-slide {
	width: 24.6625vw;
}

.post-main .section.portfolio .prev {
	position: absolute;
	top: 50%;
	left: 10px;
	z-index:2;
	width: 36px;
	height: 42px;
	background:url('../img/main/mo_prev.png') no-repeat center center;
	border-radius:5px;
	box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.25);
	transform: translateY(-50%);
	cursor:pointer;
}
.post-main .section.portfolio .next {
	position: absolute;
	top: 50%;
	right: 10px;
	z-index:2;
	width: 36px;
	height: 42px;
	background:url('../img/main/mo_next.png') no-repeat center center;
	border-radius:5px;
	box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.25);
	transform: translateY(-50%);
	cursor:pointer;
}
.post-main .section.portfolio .go-btn {
	display: flex;
	justify-content: center;
	align-items :center;
	width: 160px;
	height: 48px;
	margin: 40px auto 0px;
	background: #017EFF;
	border-radius: 24px;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: -0.28px;
	text-align: center;
}

.post-main .section.faq {
	padding: 40px 20px 80px;
	background:#efefef;
}
.post-main .section.faq h6 {
	position: relative;
	padding-top: 60px;
	color: #000;
	font-size: 30px;
	font-weight: 300;
	line-height: 148%;
	letter-spacing: -1px;
}
.post-main .section.faq h6:before {
	position: absolute;
	top: 0px;
	left: 50%;
	z-index: 1;
	width: 40px;
	height: 40px;
	margin-left: -20px;
	background: url("../img/main/board_main_faq_icon.svg") no-repeat center center;
	background-size: 40px 40px;
	border-radius: 50%;
	box-shadow: 5px 8.7px 20px 0 rgba(0, 0, 0, 0.20);
	content: "";
}
.post-main .section.faq .content-box {
	margin-top: 30px;
}
.post-main .section.faq .content-box ul {
}
.post-main .section.faq .content-box ul li {
	background:#fff;
	border-radius: 12px;
}
.post-main .section.faq .content-box ul li + li {
	margin-top: 8px;
}
.post-main .section.faq .content-box ul li dl {
}
.post-main .section.faq .content-box ul li dt {
}
.post-main .section.faq .content-box ul li dt .toggle-btn {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 14px 16px;
	background:transparent;
	border: none;
	color: #000;
	font-size: 14px;
	font-weight:700;
	line-height:20px;
	letter-spacing: -0.08px;
}
.post-main .section.faq .content-box ul li dt .toggle-btn:after {
	width: 20px;
	height: 20px;
	background: url("../img/main/board_main_faq_arrow.svg") no-repeat center center;
	background-size: 20px 20px;
	content: "";
}
.post-main .section.faq .content-box ul li .on dt .toggle-btn:after {
	transform: rotate(180deg);
}
.post-main .section.faq .content-box ul li dd {
	display: none;
	width: calc(100% - 32px);
	margin: 0 auto;
	padding-top: 14px;
	padding-bottom: 24px;
	border-top: 1px solid #ccc;
}
.post-main .section.faq .content-box ul li dd p {
	color: #000;
	font-size: 14px;
	line-height: 120%;
	letter-spacing: -0.08px;
	text-align:left;
}
.post-main .section.faq .content-box ul li dd p + p {
	margin-top: 5px;
}

.post-main .section.contact {
	padding: 80px 20px;
	background: url("../img/main/contact_bg.png") no-repeat center center;
	background-size: cover;
}
.post-main .section.contact .left-box {
	margin-bottom: 40px;
}
.post-main .section.contact .left-box h6 {
	color: #fff;
	font-size: 18px;
	font-weight:800;
	line-height:148%;
}
.post-main .section.contact .left-box p {
	margin-top: 10px;
	color: #fff;
	font-size: 14px;
	line-height:148%;
}
.post-main .section.contact .left-box h4 {
	margin-top: 10px;
	font-family: 'Gmarket Sans';
	color: #fff;
	font-size: 40px;
	font-weight: 700;
	line-height:148%;
	letter-spacing: 1.6px;
}
.post-main .section.contact .left-box .kakao-btn {
	display:flex;
	justify-content: center;
	align-items: center;
	width: 300px;
	height: 70px;
	margin: 20px auto 0px;
	background:#fae100;
	border-radius: 35px;
	color: #330000;
	font-size: 20px;
	font-weight:700;
	line-height: 148%;
}
.post-main .section.contact .left-box .kakao-btn:before {
	width: 62px;
	height: 62px;
	background: url("../img/common/pc_chat_icon.png") no-repeat center center;
	background-size: 62px 62px;
	content: "";
}
.post-main .section.contact .form-box {
	margin-top: 40px;
	padding: 40px 20px;
	background: rgba(255, 255, 255, 0.90);
	border-radius: 20px;
	box-shadow: 4px 4px 20px 0 rgba(0, 0, 0, 0.20);
}
.post-main .section.contact .form-box form {
}
.post-main .section.contact .form-box h5 {
	color: #017EFF;
	font-size: 18px;
	font-weight: 800;
	line-height:148%;
	text-align:center;
}
.post-main .section.contact .form-box .input-row-group {
	margin-top: 20px;
}
.post-main .section.contact .form-box .input-row-group .input-row {
}
.post-main .section.contact .form-box .input-row-group .input-row + .input-row {
	margin-top: 10px;
}
.post-main .section.contact .form-box .input-row-group .input-row > label,
.post-main .section.contact .form-box .input-row-group .input-row > .text-label {
	display: block;
	margin-bottom: 5px;
	color: #000;
	font-size: 12px;
	font-weight:700;
	line-height:14px;
	text-align:left;
}
.post-main .section.contact .form-box .input-row-group .input-row > label span,
.post-main .section.contact .form-box .input-row-group .input-row > .text-label span {
	color: #FF4E4E;
}
.post-main .section.contact .form-box .input-row-group .input-row .input-box {
	width: 100%;
}
.post-main .section.contact .form-box .input-row-group .input-row .input-box input {
	width: 100%;
	height: 40px;
	padding: 4px 12px;
	background:#fff;
	border: 1px solid #ccc;
	border-radius :10px;
	color: #000;
	font-size: 14px;
	font-weight:700;
	text-align:left;
	box-sizing: border-box;
}
.post-main .section.contact .form-box .input-row-group .input-row .input-box input::placeholder {
	color: #999;
}
.post-main .section.contact .form-box .input-row-group .input-row .check-item-group {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	gap: 5px 20px;
}
.post-main .section.contact .form-box .input-row-group .input-row .check-item-group .check-item {
}
.post-main .section.contact .form-box .input-row-group .input-row .check-item-group .check-item input {
	display: none;
}
.post-main .section.contact .form-box .input-row-group .input-row .check-item-group .check-item input + label {
	display: inline-block;
	padding-left: 26px;
	color: #000;
	font-size: 16px;
	font-weight:700;
	line-height:24px;
	white-space:nowrap;
}
.post-main .section.contact .form-box .input-row-group .input-row .check-item-group .check-item input + label:before {
	position: absolute;
	top: 50%;
	left: 0px;
	z-index: 5;
	width: 16px;
	height: 16px;
	margin-top: -8px;
	background: transparent;
	background-size: 16px 16px;
	border: 1px solid #666;
	border-radius: 4px;
	box-sizing: border-box;
	content: "";
}
.post-main .section.contact .form-box .input-row-group .input-row .check-item-group .check-item input:checked + label:before {
	background: url(../img/common/check_icon.png) no-repeat center center;
	background-size: 16px 16px;
	border: none;
}
.post-main .section.contact .form-box .submit-btn {
	display: block;
	width: 100%;
	max-width: 240px;
	height: 40px;
	margin: 20px auto 0px;
	background:#017EFF;
	border: none;
	border-radius: 20px;
	color: #fff;
	font-size: 16px;
	font-weight:700;
	line-height:40px;
	letter-spacing: -0.32px;
	text-align:center;
}
.post-main .section.contact .form-box .contact-desc {
	margin-top: 20px;
	color: #EE2722;
	font-size: 12px;
	font-weight:400;
	line-height:148%;
	text-align:center;
}

@media screen and (min-width: 768px) {

.post-main .visual {
	max-height:840px;
}
.post-main .visual .text-box h3 {
	font-size:60px;
	line-height:70px;
	letter-spacing:-2px;
}
.post-main .visual .text-box p {
	margin-top:40px;
	font-size:20px;
	letter-spacing:-0.6px;
}
.post-main .visual .text-box a {
	width:240px;
	height:60px;
	margin-top:60px;
	border-width:2px;
	border-radius:30px;
	font-size:20px;
	line-height:56px;
	letter-spacing:-0.5px;
}

.post-main .visual .scroll-btn {
	bottom:32px;
}
.post-main .visual .scroll-btn img {
	height:50px;
}

.post-main .visual-swiper {
	max-height:840px;
}
.post-main .visual-swiper .fixed-visual .text-box h3 {
	font-size:60px;
	line-height:70px;
	letter-spacing:-2px;
}
.post-main .visual-swiper .fixed-visual .text-box p {
	margin-top:40px;
	font-size:20px;
	letter-spacing:-0.6px;
}
.post-main .visual-swiper .fixed-visual .text-box a {
	width:240px;
	height:60px;
	margin-top:60px;
	border-width:2px;
	border-radius:30px;
	font-size:20px;
	line-height:56px;
	letter-spacing:-0.5px;
}




}

@media screen and (min-width: 1024px) {

.post-main .visual {
	max-height:980px;
	background-position:center center;
}
.post-main .visual:before {
	display:none;
}
.post-main .visual .text-box {
	text-align:left;
}
.post-main .visual .text-box p {
	font-size:26px;
	text-align:left;
}

.post-main .visual .scroll-btn img {
	height:70px;
}

.post-main .visual-swiper {
	max-height:980px;
}
.post-main .visual-swiper .fixed-visual {
	background-position:center center;
}
.post-main .visual-swiper .fixed-visual:before {
	display:none;
}
.post-main .visual-swiper .fixed-visual .text-box {
	text-align:left;
}
.post-main .visual-swiper .fixed-visual .text-box h3 {
	font-size:80px;
	line-height:90px;
	text-align:left;
}
.post-main .visual-swiper .fixed-visual .text-box p {
	font-size:26px;
	text-align:left;
}
.post-main .visual-swiper .fixed-visual .icon {
	position: absolute;
	top: 50%;
	right: 50%;
	width: 632px;
	height: 400px;
	margin-right: -600px;
	background-size: auto 400px;
	transform: translateY(-50%);
}
.post-main .visual-swiper .swiper-slide > .pc_img {
	display: block;
}
.post-main .visual-swiper .swiper-slide > .mo_img {
	display: none;
}

.post-main .visual-swiper .pagination {
	position: absolute;
	bottom: 40px;
	z-index: 1;
	display: flex;
	justify-content: center;
	gap: 0px 8px;
}
.post-main .visual-swiper .pagination .bullet {
	min-width: 120px;
	font-size:16px;
	line-height: 22px;
}

.post-main .section.number {
	padding: 163px 0px;
	background:url('../img/main/pc_number_bg.png') no-repeat center center;
	background-size:cover;
}
.post-main .section.number .inner-wrap {
	flex-direction: row;
}
.post-main .section.number dl {
	flex: 1;
}
.post-main .section.number dl dt {
	padding: 16px 0px;
	color: #fff;
	font-size: 68px;
	font-weight: 700;
	line-height: 76px;
	letter-spacing: -4.6px;
}
.post-main .section.number dl dt:after {
	width: 48px;
	height: 48px;
	margin-left: 15px;
}
.post-main .section.number dl dd {
	font-size: 30px;
	line-height: 34px;
}
.post-main .section.number dl dd:before {
	width: 150px;
	margin-left: -75px;
}

.post-main .section.about {	
	height: 740px;
	padding: 0px 40px;
} 
.post-main .section.about .text-box {
	position: absolute;
	top: 50%;
	left: 0px;
	z-index: 1;
	margin-top: -177.5px;
	text-align:left;
}
.post-main .section.about .text-box h6 {
	padding-top: 120px;
	font-size: 60px;
}
.post-main .section.about .text-box h6:before {
	width: 100px;
	height: 100px;
	left: 0px;
	margin-left: 0px;
}
.post-main .section.about .text-box p {
	margin-top: 40px;
	font-size: 24px;
	letter-spacing: -0.72px;
}
.post-main .section.about .text-box p .dt {
	display: block;
}
.post-main .section.about .text-box p .m {
	display: none;
}
.post-main .section.about .img {
	position: absolute;
	top: 50%;
	right: 0px;
	margin-top: -218.5px;
	padding: 0px;
}
.post-main .section.about .img img {
	width: 100%;
	max-width: 634px;
	height: auto;
}

.post-main .section.one-stop {
	padding: 120px 40px;
}
.post-main .section.one-stop .text-box {
	text-align:left;
}
.post-main .section.one-stop .text-box h6 {
	padding-top: 120px;
	font-size: 60px;
}
.post-main .section.one-stop .text-box h6:before {
	width: 100px;
	height: 100px;
	left: 0px;
	margin-left: 0px;
}
.post-main .section.one-stop .text-box p {
	width: 700px;
	padding-left: 34px;
	margin-left: 0px;
	margin-right: 0px;
	color: #696969;
	font-size: 30px;
}
.post-main .section.one-stop .text-box p:before {
	width: 24px;
	height: 24px;
	margin-top: -16px;
	background-size: auto 24px;
}
.post-main .section.one-stop .img {
	position: absolute;
	top: 216px;
	right: 0px;
	z-index: 1;
	margin-top: 0px;
	padding: 0px;
}
.post-main .section.one-stop .img img {
	width: 100%;
	max-width: 394px;
	height: auto; 
}
.post-main .section.one-stop dl {
	margin-top: 80px;
}
.post-main .section.one-stop dl dt {
	font-size: 26px;
}
.post-main .section.one-stop dl dd {
	padding: 60px 80px;
}
.post-main .section.one-stop dl dd h6 {
	font-size: 24px;
}
.post-main .section.one-stop dl dd .red {
	font-size: 16px;
}
.post-main .section.one-stop dl dd .box {
	margin-top: 20px;
	padding: 40px;
	font-size: 18px;
}
.post-main .section.one-stop dl dd .default {
	margin-top: 20px;
	font-size: 18px;
}

.post-main .section.why {
	padding: 120px 40px;
	background:#fafafa;
}
.post-main .section.why h6 {
	font-size: 60px;
}
.post-main .section.why .item-box {
	flex-direction: row;
	flex-wrap: wrap;
}
.post-main .section.why .item-box dl {
	flex-shrink: 0;
	width: calc((100% - 20px) / 2);
	height: 320px;
	padding: 40px;
}
.post-main .section.why .item-box dl:nth-child(1),
.post-main .section.why .item-box dl:nth-child(4) {
	background:#fff;
	color: #017EFF;
}
.post-main .section.why .item-box dl:nth-child(2),
.post-main .section.why .item-box dl:nth-child(3) {
	background:#017EFF;
	color: #fff;
}
.post-main .section.why .item-box dt {
	font-size: 26px;
}
.post-main .section.why .item-box dd {
	margin-top: 40px;
	font-size: 18px;
}

.post-main .section.how {
	padding: 120px 40px;
}
.post-main .section.how h6 {
	padding-top: 120px;
	font-size: 60px;
}
.post-main .section.how h6:before {
	width: 100px;
	height: 100px;
	left: 50%;
	margin-left: -50px;
}
.post-main .section.how p.red {
	margin-top: 10px;
	font-size: 30px;
}
.post-main .section.how .item-box {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 0px 10px;
	margin-top: 80px;
}
.post-main .section.how .item-box dl {
	flex: 1;
}
.post-main .section.how .item-box dl + dl {
	margin-top: 0px;
}
.post-main .section.how .item-box dl dt {
	position: relative;
	height: 517px;
	font-size: 0px;
}
.post-main .section.how .item-box dl:nth-child(1) dt {
	background: url("../img/main/post_main_how_img01.png") no-repeat top center;
	background-size:100% auto;
}
.post-main .section.how .item-box dl:nth-child(2) dt {
	background: url("../img/main/post_main_how_img02.png") no-repeat top center;
	background-size:100% auto;
}
.post-main .section.how .item-box dl:nth-child(3) dt {
	background: url("../img/main/post_main_how_img03.png") no-repeat top center;
	background-size:100% auto;
}
.post-main .section.how .item-box dl:nth-child(4) dt {
	background: url("../img/main/post_main_how_img04.png") no-repeat top center;
	background-size:100% auto;
}
.post-main .section.how .item-box dl dt:after {
	position: absolute;
	bottom: 30px;
	left: 50%;
	z-index: 1;
	width: 300px;
	height: 40px;
	margin-left: -150px;
  background: radial-gradient(
    50% 50% at 50% 50%,
    rgba(0, 0, 0, 0.2) 0%,
    rgba(255, 255, 255, 0) 88.94%
  );
	filter: blur(5px);
	content: "";
}
.post-main .section.how .item-box dl dd h5 span {
	padding: 5px 20px;
	font-size: 24px;
}
.post-main .section.how .item-box dl dd h5 .question-btn {
	right: -28px;
}
.post-main .section.how .item-box dl dd p {
	margin-top: 10px;
	font-size: 24px;
}
.post-main .section.how .item-box dl dd p span {
	font-size: 20px;
}

.post-main .section.process {
	padding: 120px 40px;
}
.post-main .section.process h6 {
	font-size: 60px;
}
.post-main .section.process ul {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 0px 20px;
	margin-top: 80px;
}
.post-main .section.process ul li {
	flex: 1;
}
.post-main .section.process ul li + li {
	margin-top: 0px;
}
.post-main .section.process ul li dl dt {
	padding-top: 90px;
	font-size: 26px;
}
.post-main .section.process ul li:nth-child(1) dl dt {
	background-size: 80px auto;
}
.post-main .section.process ul li:nth-child(2) dl dt {
	background-size: 80px auto;
}
.post-main .section.process ul li:nth-child(3) dl dt {
	background-size: 80px auto;
}
.post-main .section.process ul li:nth-child(4) dl dt {
	background-size: 80px auto;
}
.post-main .section.process ul li:nth-child(5) dl dt {
	background-size: 80px auto;
}
.post-main .section.process ul li dl dd {
	font-size: 16px;
}
.post-main .section.process .desc-wrap {
	margin-top: 50px;
}
.post-main .section.process .desc-wrap p {
	font-size: 18px;
	text-align:center;
}
.post-main .section.process .schedule-box {
	width: 100%;
	margin-top: 80px;
}
.post-main .section.process .schedule-box h6 {
	margin-bottom: 20px;
	font-size: 26px;
}

.post-main .section.portfolio {
	padding: 120px 0px;
}
.post-main .section.portfolio h3 {
	height: 80px;
	margin-bottom: 20px;
	background-size: auto 80px;
}
.post-main .section.portfolio h6 {
	font-size: 60px;
}
.post-main .section.portfolio h6 br {
	display: none;
}
.post-main .section.portfolio .swiper {
	padding-left: 100px;
}
.post-main .section.portfolio .swiper-slide {
	width: 260px;
	margin: 80px 0px;
	margin-right: 40px;
}
.post-main .section.portfolio .prev {
	left: 40px;
	width: 80px;
	height: 100px;
	background:url('../img/main/pc_prev.png') no-repeat center center;
	border-radius:10px;
	box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.10);
}
.post-main .section.portfolio .next {
	right: 40px;
	width: 80px;
	height: 100px;
	background:url('../img/main/pc_next.png') no-repeat center center;
	border-radius:10px;
	box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.10);
}
.post-main .section.portfolio .go-btn {
	width: 240px;
	height: 60px;
	margin-top: 0px;
	border-radius: 30px;
	font-size: 20px;
	letter-spacing: -0.4px;
}

.post-main .section.faq {
	padding: 120px 40px;
}
.post-main .section.faq h6 {
	padding-top: 100px;
	font-size: 60px;
}
.post-main .section.faq h6:before {
	width: 80px;
	height: 80px;
	margin-left: -40px;
	background: url("../img/main/board_main_faq_icon.svg") no-repeat center center;
	background-size: 80px 80px;
	border-radius: 50%;
	content: "";
}
.post-main .section.faq .content-box {
	margin-top: 60px;
}
.post-main .section.faq .content-box ul li {
	border-radius: 24px;
}
.post-main .section.faq .content-box ul li + li {
	margin-top: 16px;
}
.post-main .section.faq .content-box ul li dt .toggle-btn {
	padding: 20px 40px;
	font-size: 20px;
	line-height:45px;
}
.post-main .section.faq .content-box ul li dt .toggle-btn:after {
	width: 40px;
	height: 40px;
	background-size: 40px 40px;
}
.post-main .section.faq .content-box ul li dd {
	width: calc(100% - 80px);
	padding-top: 20px;
	padding-bottom: 40px;
}
.post-main .section.faq .content-box ul li dd p {
	color: #000;
	font-size: 20px;
	line-height: 140%;
}

.post-main .section.contact {
	padding: 120px 40px;
}
.post-main .section.contact .inner-wrap {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 0px 80px;
}
.post-main .section.contact .left-box {
	flex-shrink: 0;
	margin-bottom: 0px;
	text-align:left;
}
.post-main .section.contact .left-box h6 {
	font-size: 24px;
}
.post-main .section.contact .left-box h4 {
	margin-top: 20px;
}

.post-main .section.contact .form-box {
	flex: 1;
	margin-top: 0px;
	padding: 40px;
}
.post-main .section.contact .form-box h5 {
	font-size: 20px;
}
.post-main .section.contact .form-box .input-row-group {
	margin-top: 40px;
}
.post-main .section.contact .form-box .input-row-group .input-row > label,
.post-main .section.contact .form-box .input-row-group .input-row > .text-label {
	font-size: 14px;
	line-height:16px;
}
.post-main .section.contact .form-box .submit-btn {
	height: 60px;
	margin: 40px auto 0px;
	border-radius: 30px;
	font-size: 20px;
	letter-spacing: -0.4px;
}
.post-main .section.contact .form-box .contact-desc {
	margin-top: 40px;
	font-size: 14px;
}

}

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

.post-main .visual {
	max-height:1080px;
}

.post-main .visual-swiper {
	max-height:1080px;
}
.post-main .visual-swiper .fixed-visual .text-box {
	max-width: 1200px;
}
.post-main .visual-swiper .fixed-visual .icon {
	right: 11.88vw;
	width: 732px;
	height: 580px;
	margin-right: 0px;
	background-size: auto 580px;
}

.post-main .section.contact .form-box .input-row-group {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px 40px;
}
.post-main .section.contact .form-box .input-row-group .input-row {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	width: calc((100% - 40px) / 2);
}
.post-main .section.contact .form-box .input-row-group .input-row + .input-row {
	margin-top: 0px;
}
.post-main .section.contact .form-box .input-row-group .input-row.full {
	width: 100%;
}
.post-main .section.contact .form-box .input-row-group .input-row > label,
.post-main .section.contact .form-box .input-row-group .input-row > .text-label {
	flex-shrink: 0;
	width: 100px;
	margin-bottom: 0px;
}
.post-main .section.contact .form-box .input-row-group .input-row .input-box {
	flex: 1;
}

}