/* main */
.board-main .visual {
	height:100vh;
	max-height:640px;
	background:url('../img/main/visual.jpg') no-repeat center right 30%;
	background-size:cover;
}
.board-main .visual:before {
	position:absolute;
	top:0px;
	left:0px;
	right:0px;
	bottom:0px;
	z-index:10;
	background:rgba(0, 0, 0, 0.35);
	content:"";
}
.board-main .visual .inner-wrap { 
	max-width:1000px;
	height:100%;
	margin:0 auto;
}
.board-main .visual .text-box {
	position:absolute;
	top:50%;
	left:0px;
	right:0px;
	z-index:12;
	transform:translateY(-50%);
	text-align:center;
}
.board-main .visual .text-box h3 {
	color:white;
	font-size:40px;
	line-height:45px;
	letter-spacing:-1px;
	text-align:center;
}
.board-main .visual .text-box p {
	margin-top:20px;
	color:white;
	font-size:13px;
	letter-spacing:-0.3px;
	text-align:center;
}
.board-main .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;
}

.board-main .visual .scroll-btn {
	position:absolute;
	bottom:16px;
	left:50%;
	z-index:11;
	transform:translateX(-50%);
}
.board-main .visual .scroll-btn img {
	width:auto;
	height:35px;
}

.board-main .visual-swiper {
	height:100vh;
	max-height:640px;
}
.board-main .visual-swiper .swiper {
	height:100%;
}
.board-main .visual-swiper .fixed-visual {
	background:url('../img/main/visual.jpg') no-repeat center right 30%;
	background-size:cover;
}
.board-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:"";
}
.board-main .visual-swiper .fixed-visual:before {
	position:absolute;
	top:0px;
	left:0px;
	right:0px;
	bottom:0px;
	z-index:10;
	background: rgba(0, 0, 0, 0.35);
	content:"";
}
.board-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;
}
.board-main .visual-swiper .fixed-visual .text-box h3 {
	color:white;
	font-size:40px;
	line-height:45px;
	letter-spacing:-1px;
	text-align:center;
}
.board-main .visual-swiper .fixed-visual .text-box p {
	margin-top:20px;
	color:white;
	font-size:13px;
	letter-spacing:-0.3px;
	text-align:center;
}
.board-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;
}
.board-main .visual-swiper .swiper-slide > img {
	width: 100%;
	height: 100%;
	object-fit:cover;
	object-position: center center;
}
.board-main .visual-swiper .swiper-slide > .pc_img {
	display: none;
}
.board-main .visual-swiper .pagination {
	position: absolute;
	bottom: 20px;
	z-index: 1;
	display: flex;
	justify-content: center;
	gap: 0px 8px;
}
.board-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;
}
.board-main .visual-swiper .pagination .bullet span {
	position:relative;
	z-index:2;
}
.board-main .visual-swiper .pagination .bullet.on {
	opacity: 1;
}
.board-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:"";
}

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

.board-main .section {
	text-align:center;
}
.board-main .section .inner-wrap {
	max-width:1000px;
	height:100%;
	margin:0 auto;
}
.board-main .section.process .inner-wrap,
.board-main .section.etc .inner-wrap,
.board-main .section.faq .inner-wrap,
.board-main .section.contact .inner-wrap {
	max-width: 1200px;
}
.board-main .section .text-box {	
	text-align:center;
}
.board-main .section .text-box h3 {	
	position:relative;
	z-index:2;
	color:#231815;
	font-size:30px;
	font-weight:300;
	line-height:38px;
	letter-spacing:-0.75px;
}
.board-main .section .text-box h3 strong {	
	font-weight:normal;
}
.board-main .section .text-box p {	
	position:relative;
	z-index:2;
	margin-top:20px;
	color:black;
	font-size:14px;
	line-height:18px;
	letter-spacing:-0.3px;
}
.board-main .section .text-box p strong {	
	font-weight:800;
}

.board-main .section .text-box .link-group {	
	margin-top:30px;
	font-size:0px;
}
.board-main .section .text-box .link-group a {	
	display:inline-block;
	width:150px;
	height:30px;
	margin:0px 8px;
	background:white;
	border:1px solid #4e81ff;
	border-radius:20px;
	color:#4e81ff;
	font-size:12px;
	font-weight:bold;
	line-height:28px;
	text-align:center;
}
.board-main .section .text-box p.link-desc {	
}

.board-main .section .img-box {
}
.board-main .section .img-box img {
	width:80%;
	max-width:280px;
	height:auto;
}

.board-main .section.number {
	padding: 80px 0px;
	background:url('../img/main/mo_number_bg.png') no-repeat center center;
	background-size:cover;
}
.board-main .section.number .inner-wrap {
	display: flex;
	flex-direction: column;
	gap: 16px 40px;
	max-width: 1200px;
}
.board-main .section.number dl {
	text-align: center;
}
.board-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;
}
.board-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:"";
}
.board-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;
}
.board-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: "";
}

.board-main .section.phone {
	padding-top:80px;
	background:white;
}
.board-main .section.phone .img-box {
	margin-top:40px;
}

.board-main .section.category {
	padding-top:120px;
	padding-bottom:40px;
	background:#efefef;
}
.board-main .section.category .text-box:after {
	position:absolute;
	top:-61px;
	left:50%;
	z-index:5;
	width:42px;
	height:51px;
	margin-left:-21px;
	background:url('../img/main/avatar_icon.svg') no-repeat center center;
	background-size:cover;
	content:"";
}
.board-main .section.category .img-box {
	margin-top:60px;
}

.board-main .section.location {
	padding-top:120px;
	padding-bottom:60px;
	background:#fafafa;
}
.board-main .section.location .text-box:before {
	position:absolute;
	top:-24px;
	left:50%;
	z-index:1;
	width:290px;
	height:210px;
	margin-left:-145px;
	background:url('../img/main/location_bg.png') no-repeat center center;
	background-size:cover;
	content:"";
}
.board-main .section.location .text-box:after {
	position:absolute;
	top:-60px;
	left:50%;
	z-index:5;
	width:45px;
	height:50px;
	margin-left:-22.5px;
	background:url('../img/main/location_icon.svg') no-repeat center center;
	background-size:cover;
	content:"";
}
.board-main .section.location .img-box {
	margin-top:60px;
}

.board-main .section.process {
	padding: 40px 20px 0px;
	background:#fafafa;
}
.board-main .section.process .section-title {
	position: relative;
	padding-top: 140px;
	color: #000;
	font-size: 30px;
	font-weight: 300;
	line-height:148%;
	text-align:center;
}
.board-main .section.process .section-title strong {
	font-weight: normal;
}
.board-main .section.process .section-title:before {
	position: absolute;
	top: 0px;
	left: 50%;
	z-index: 1;
	width: 1px;
	height: 100px;
	background: #ccc;
	content: "";
}
.board-main .section.process ul {
	margin-top: 40px;
}
.board-main .section.process ul li {
}
.board-main .section.process ul li + li {
	margin-top: 20px;
}
.board-main .section.process ul li dl {
}
.board-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;
}
.board-main .section.process ul li:nth-child(1) dl dt {
	background: url("../img/main/board_main_proc_icon01.svg") no-repeat top center;
	background-size: 60px auto;
}
.board-main .section.process ul li:nth-child(2) dl dt {
	background: url("../img/main/board_main_proc_icon02.svg") no-repeat top center;
	background-size: 60px auto;
}
.board-main .section.process ul li:nth-child(3) dl dt {
	background: url("../img/main/board_main_proc_icon03.svg") no-repeat top center;
	background-size: 60px auto;
}
.board-main .section.process ul li:nth-child(4) dl dt {
	background: url("../img/main/board_main_proc_icon04.svg") no-repeat top center;
	background-size: 60px auto;
}
.board-main .section.process ul li:nth-child(5) dl dt {
	background: url("../img/main/board_main_proc_icon05.svg") no-repeat top center;
	background-size: 60px auto;
}
.board-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;
}
.board-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: "";
}
.board-main .section.process ul li dl dd + dd {
	margin-top: 10px;
}
.board-main .section.process ul li dl dd .gray {
	color: #ccc;
}
.board-main .section.process ul li dl dd .deep-gray {
	color: #666;
}
.board-main .section.process .desc-wrap {
	margin-top: 20px;
}
.board-main .section.process .desc-wrap p {
	color: #000;
	font-size: 14px;
	line-height: 148%;
	text-align:left;
}
.board-main .section.process .desc-wrap p + p {
	margin-top: 10px;
}

.board-main .section.etc {
	padding: 40px 20px 80px;
	background: #fafafa;
}

.board-main .section.etc .note-box {
}
.board-main .section.etc .note-box h6 {
	margin-bottom: 10px;
	color: #000;
	font-size: 14px;
	font-weight:700;
	line-height:148%;
}
.board-main .section.etc .note-box ul {
}
.board-main .section.etc .note-box ul li {
}
.board-main .section.etc .note-box ul li + li {
	margin-top: 30px;
}
.board-main .section.etc .note-box ul li dl {
}
.board-main .section.etc .note-box ul li dt {
	margin-bottom: 20px;
}
.board-main .section.etc .note-box ul li dt p {
	margin-bottom: 10px;
	color: #000;
	font-size: 16px;
	line-height:148%;
}
.board-main .section.etc .note-box ul li dt p strong {
	font-weight:700;
}
.board-main .section.etc .note-box ul li dt p .blue {
	color: #017EFF;
}
.board-main .section.etc .note-box ul li dt .thumb {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 296px;
	background: #eee;
}
.board-main .section.etc .note-box ul li dt .thumb img {
	width: 180px;
	height: auto;
}
.board-main .section.etc .note-box ul li dt .thumb .sticker {
	position: absolute;
	bottom: 34px;
	right: 50%;
	z-index: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 80px;
	height: 80px;
	margin-right: -105px;
	background: #FAB20B;
	border-radius: 50%;
	color: #fff;
	font-size: 20px;
	font-weight:800;
	box-shadow: 5px 8.7px 20px 0 rgba(0, 0, 0, 0.20);
}
.board-main .section.etc .note-box ul li dt .thumb .sticker:after {
	width: 16px;
	height: 16px;
	margin-left: 5px;
	content: "";
}
.board-main .section.etc .note-box ul li dt .thumb .sticker.down:after {
	background: url("../img/main/board_main_note_down.svg") no-repeat center center;
}
.board-main .section.etc .note-box ul li dt .thumb .sticker.up {
	background: #017EFF;
}
.board-main .section.etc .note-box ul li dt .thumb .sticker.up:after {
	background: url("../img/main/board_main_note_up.svg") no-repeat center center;
}
.board-main .section.etc .note-box ul li 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;
}
.board-main .section.etc .note-box ul li 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: "";
}
.board-main .section.etc .note-box ul li dd + dd {
	margin-top: 10px;
}
.board-main .section.etc .note-box ul li dd .deep-gray {
	color: #666;
}

.board-main .section.etc .reference-box {
	margin-top: 50px;
}
.board-main .section.etc .reference-box h6 {
	margin-bottom: 20px;
	color: #000;
	font-size: 14px;
	font-weight:700;
	line-height:148%;
}
.board-main .section.etc .reference-box dl {
}
.board-main .section.etc .reference-box dl dt {
	margin-bottom: 20px;
}
.board-main .section.etc .reference-box dl dt .thumb {
}
.board-main .section.etc .reference-box dl dt .thumb img {
	width: 100%;
	height: auto;
}
.board-main .section.etc .reference-box 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;
}
.board-main .section.etc .reference-box 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: "";
}
.board-main .section.etc .reference-box dl dd + dd {
	margin-top: 10px;
}
.board-main .section.etc .reference-box dl dd span {
	font-weight:400;
}
.board-main .section.etc .reference-box dl dd .blue {
	color: #017EFF;
}
.board-main .section.etc .reference-box dl dd .deep-gray  {
	color: #666;
}

.board-main .section.etc .schedule-box {
	margin-top: 40px;
}
.board-main .section.etc .schedule-box h6 {
	margin-bottom: 10px;
	color: #000;
	font-size: 14px;
	font-weight:700;
	line-height:148%;
}
.board-main .section.etc .schedule-box .content {
}
.board-main .section.etc .schedule-box .content img {
	width: 100%;
	height: auto;
}

.board-main .section.portfolio {
	padding: 80px 0px;
	background: #fff;
}
.board-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;
}
.board-main .section.portfolio h6 {
	color: #000;
	font-size: 30px;
	font-weight: 300;
	line-height:148%;
}
.board-main .section.portfolio h6 strong {
	font-weight: normal;
}
.board-main .section.portfolio .swiper {
	padding-left: 60px;
}
.board-main .section.portfolio .swiper-wrapper {
	transition-timing-function: linear;
}
.board-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;
}
.board-main .section.portfolio .swiper-slide img {
	width:100%;
	height:100%;
	object-fit: cover;
}

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

.board-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;
}
.board-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;
}
.board-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;
}

.board-main .section.faq {
	padding: 40px 20px 80px;
	background:#efefef;
}
.board-main .section.faq h6 {
	position: relative;
	padding-top: 60px;
	color: #000;
	font-size: 30px;
	font-weight: 300;
	line-height: 148%;
	letter-spacing: -1px;
}
.board-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: "";
}
.board-main .section.faq .content-box {
	margin-top: 30px;
}
.board-main .section.faq .content-box ul {
}
.board-main .section.faq .content-box ul li {
	background:#fff;
	border-radius: 12px;
}
.board-main .section.faq .content-box ul li + li {
	margin-top: 8px;
}
.board-main .section.faq .content-box ul li dl {
}
.board-main .section.faq .content-box ul li dt {
}
.board-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;
}
.board-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: "";
}
.board-main .section.faq .content-box ul li .on dt .toggle-btn:after {
	transform: rotate(180deg);
}
.board-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;
}
.board-main .section.faq .content-box ul li dd p {
	color: #000;
	font-size: 14px;
	line-height: 120%;
	letter-spacing: -0.08px;
	text-align:left;
}
.board-main .section.faq .content-box ul li dd p + p {
	margin-top: 5px;
}

.board-main .section.contact {
	padding: 80px 20px;
	background: url("../img/main/contact_bg.png") no-repeat center center;
	background-size: cover;
}
.board-main .section.contact .left-box {
	margin-bottom: 40px;
}
.board-main .section.contact .left-box h6 {
	color: #fff;
	font-size: 18px;
	font-weight:800;
	line-height:148%;
}
.board-main .section.contact .left-box p {
	margin-top: 10px;
	color: #fff;
	font-size: 14px;
	line-height:148%;
}
.board-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;
}
.board-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%;
}
.board-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: "";
}
.board-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);
}
.board-main .section.contact .form-box form {
}
.board-main .section.contact .form-box h5 {
	color: #017EFF;
	font-size: 18px;
	font-weight: 800;
	line-height:148%;
	text-align:center;
}
.board-main .section.contact .form-box .input-row-group {
	margin-top: 20px;
}
.board-main .section.contact .form-box .input-row-group .input-row {
}
.board-main .section.contact .form-box .input-row-group .input-row + .input-row {
	margin-top: 10px;
}
.board-main .section.contact .form-box .input-row-group .input-row > label,
.board-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;
}
.board-main .section.contact .form-box .input-row-group .input-row > label span,
.board-main .section.contact .form-box .input-row-group .input-row > .text-label span {
	color: #FF4E4E;
}
.board-main .section.contact .form-box .input-row-group .input-row .input-box {
	width: 100%;
}
.board-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;
}
.board-main .section.contact .form-box .input-row-group .input-row .input-box input::placeholder {
	color: #999;
}
.board-main .section.contact .form-box .input-row-group .input-row .check-item-group {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0px 20px;
}
.board-main .section.contact .form-box .input-row-group .input-row .check-item-group .check-item {
}
.board-main .section.contact .form-box .input-row-group .input-row .check-item-group .check-item input {
	display: none;
}
.board-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;
}
.board-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: "";
}
.board-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;
}
.board-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;
}
.board-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) {

.board-main .visual {
	max-height:840px;
}
.board-main .visual .text-box h3 {
	font-size:60px;
	line-height:70px;
	letter-spacing:-2px;
}
.board-main .visual .text-box p {
	margin-top:40px;
	font-size:20px;
	letter-spacing:-0.6px;
}
.board-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;
}

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

.board-main .visual-swiper {
	max-height:840px;
}
.board-main .visual-swiper .fixed-visual .text-box h3 {
	font-size:60px;
	line-height:70px;
	letter-spacing:-2px;
}
.board-main .visual-swiper .fixed-visual .text-box p {
	margin-top:40px;
	font-size:20px;
	letter-spacing:-0.6px;
}
.board-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;
}

.board-main .section .text-box h3 {
	font-size:60px;
	line-height:76px;
	letter-spacing:-1.5px;
}
.board-main .section .text-box p {
	margin-top:40px;
	font-size:24px;
	line-height:36px;
	letter-spacing:-0.6px;
}

.board-main .section .text-box .link-group {	
	margin-top:40px;
}
.board-main .section .text-box .link-group a {	
	width:240px;
	height:60px;
	border-width:2px;
	border-radius:30px;
	font-size:20px;
	line-height:56px;
	letter-spacing:-0.5px;
}
.board-main .section .text-box p.link-desc {	
	margin-top:20px;
	font-size:18px;
}

.board-main .section .img-box img {
	max-width:420px;
}

.board-main .section.phone {
	padding-top:100px;
}
.board-main .section.phone .img-box {
	margin-top:80px;
}

.board-main .section.category {
	padding-top:200px;
}
.board-main .section.category .text-box:after {
	top:-112px;
	width:82px;
	height:102px;
	margin-left:-41px;
}
.board-main .section.category .img-box {
	margin-top:80px;
}

.board-main .section.location {
	padding-top:160px;
}
.board-main .section.location .text-box:after {
	top:-110px;
	width:90px;
	height:100px;
	margin-left:-45px;
}
.board-main .section.location .text-box:before {
	top:-48px;
	width:580px;
	height:420px;
	margin-left:-290px;
}
.board-main .section.location .img-box {
	margin-top:80px;
}

}

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

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

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

.board-main .visual-swiper {
	max-height:980px;
}
.board-main .visual-swiper .fixed-visual {
	background-position:center center;
}
.board-main .visual-swiper .fixed-visual:before {
	display:none;
}
.board-main .visual-swiper .fixed-visual .text-box {
	text-align:left;
}
.board-main .visual-swiper .fixed-visual .text-box h3 {
	font-size:80px;
	line-height:90px;
	text-align:left;
}
.board-main .visual-swiper .fixed-visual .text-box p {
	font-size:26px;
	text-align:left;
}
.board-main .visual-swiper .swiper-slide > .pc_img {
	display: block;
}
.board-main .visual-swiper .swiper-slide > .mo_img {
	display: none;
}

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

.board-main .section .text-box {
	position:absolute;
	text-align:left;
}
.board-main .section .img-box {
	position:absolute;
}
.board-main .section .img-box img {
	max-width:none;
}


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

.board-main .section.phone {
	height:744px;
	padding:0px;
}
.board-main .section.phone .text-box {
	top:240px;
	left:50%;
	width:55%;
}
.board-main .section.phone .img-box {
	bottom:0px;
	left:-16px;
	width:50%;
}
.board-main .section.phone .img-box img {
	width:453px;
}

.board-main .section.category {
	height:976px;
	padding:0px;
}
.board-main .section.category .text-box {
	top:455px;
	left:0px;
	width:50%;
}
.board-main .section.category .text-box:after {
	top:-127px;
	left:0px;
	margin-left:0px;
}
.board-main .section.category .img-box {
	top:218px;
	right:-12px;
	width:50%;
	margin-top:0px;
	text-align:right;
}
.board-main .section.category .img-box img {
	width:497px;
}

.board-main .section.location {
	height:957px;
	padding:0px;
}
.board-main .section.location .text-box {
	top:312px;
	left:0px;
	width:50%;
}
.board-main .section.location .text-box:before {
	left:-32px;
	margin-left:0px;
}
.board-main .section.location .text-box:after {
	top:-140px;
	left:10px;
	margin-left:0px;
}
.board-main .section.location .img-box {
	top:172px;
	right:-12px;
	width:50%;
	margin-top:0px;
	text-align:right;
}
.board-main .section.location .img-box img {
	width:458px;
}

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

.board-main .section.etc {
	padding: 80px 40px 120px;
	background: #fafafa;
}
.board-main .section.etc .inner-wrap {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
}
.board-main .section.etc .note-box {
	flex: 1;
}
.board-main .section.etc .note-box h6 {
	margin-bottom: 20px;
	font-size: 26px;
}
.board-main .section.etc .note-box ul {
	display: flex;
	align-items: flex-start;
	gap: 0px 10px;
}
.board-main .section.etc .note-box ul li {
	flex: 1;
}
.board-main .section.etc .note-box ul li + li {
	margin-top: 0px;
}
.board-main .section.etc .note-box ul li dt {
	margin-bottom: 20px;
}
.board-main .section.etc .note-box ul li dt p {
	font-size: 20px;
}
.board-main .section.etc .note-box ul li dd {
	font-size: 16px;
}

.board-main .section.etc .reference-box {
	flex: 1;
	margin-top: 0px;
	margin-left: 20px;
}
.board-main .section.etc .reference-box h6 {
	margin-bottom: 60px;
	font-size: 26px;
}
.board-main .section.etc .reference-box dl dd {
	font-size: 16px;
}

.board-main .section.etc .schedule-box {
	width: 100%;
}
.board-main .section.etc .schedule-box h6 {
	margin-bottom: 20px;
	font-size: 26px;
}



.board-main .section.portfolio {
	padding: 120px 0px;
}
.board-main .section.portfolio h3 {
	height: 80px;
	margin-bottom: 20px;
	background-size: auto 80px;
}
.board-main .section.portfolio h6 {
	font-size: 60px;
}
.board-main .section.portfolio h6 br {
	display: none;
}
.board-main .section.portfolio .swiper {
	padding-left: 100px;
}
.board-main .section.portfolio .swiper-slide {
	width: 260px;
	margin: 80px 0px;
	margin-right: 40px;
}
.board-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);
}
.board-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);
}
.board-main .section.portfolio .go-btn {
	width: 240px;
	height: 60px;
	margin-top: 0px;
	border-radius: 30px;
	font-size: 20px;
	letter-spacing: -0.4px;
}

.board-main .section.faq {
	padding: 120px 40px;
}
.board-main .section.faq h6 {
	padding-top: 100px;
	font-size: 60px;
}
.board-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: "";
}
.board-main .section.faq .content-box {
	margin-top: 60px;
}
.board-main .section.faq .content-box ul li {
	border-radius: 24px;
}
.board-main .section.faq .content-box ul li + li {
	margin-top: 16px;
}
.board-main .section.faq .content-box ul li dt .toggle-btn {
	padding: 20px 40px;
	font-size: 20px;
	line-height:45px;
}
.board-main .section.faq .content-box ul li dt .toggle-btn:after {
	width: 40px;
	height: 40px;
	background-size: 40px 40px;
}
.board-main .section.faq .content-box ul li dd {
	width: calc(100% - 80px);
	padding-top: 20px;
	padding-bottom: 40px;
}
.board-main .section.faq .content-box ul li dd p {
	color: #000;
	font-size: 20px;
	line-height: 140%;
}

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

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

}

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

.board-main .visual {
	max-height:1123px;
}

.board-main .visual-swiper {
	max-height:1123px;
}

.board-main .section.phone .text-box {
	width:60%;
}

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

}