.main_visual#main_visual_mo{
	display:none;
}
.main_visual .swiper-slide{
	height:100vh;
	position:relative;
	min-height:960px;
}
.main_visual .swiper-slide > .txt_box{
	position:absolute;
	left:0;
	width:100%;
	top:50%;
	transform:translateY(-51%);
	text-align:center;
	color:#fff;
	padding-top:90px;
}
.main_visual .swiper-slide > .txt_box h3{
	font-size:5.8rem;
	font-weight:600;
}
.main_visual .swiper-slide > .txt_box p.desc{
	font-size:2.2rem;
	font-weight:100;
	position:relative;
	padding-top:4rem;
	margin-top:4rem;
	margin-bottom:2rem;
}
.main_visual .swiper-slide > .txt_box p.inq{
	margin-top:5rem;
}
.main_visual .swiper-slide > .txt_box p.inq a{
	border:2px solid #fff;
	display:flex;
	align-items: center;
	justify-content: center;
	color:#fff;
	width:24rem;
	height:6rem;
	margin:0 auto;
	font-size:1.8rem;
	border-radius:5rem;
}
.main_visual .swiper-slide > .txt_box p.inq a:hover{
	color:#000;
	background:#fff;
}
.main_visual .swiper-pagination{
	bottom:2.5rem !important;
}
.main_visual .swiper-pagination .swiper-pagination-bullet{
	opacity:1 !important;
	background:rgba(255,255,255,.5) !important;
	width:4px !important;
	height:4px !important;
	position:relative;
	margin:0 10px !important;
}
.main_visual .swiper-pagination .swiper-pagination-bullet-active{
	background:rgba(255,255,255,.9) !important;
}
.main_visual .swiper-pagination .swiper-pagination-bullet-active::after{
	width:300%;
	height:300%;
	content:"";
	position:absolute;
	left:50%;
	top:50%;
	transform: translate(-50%,-50%);
	border:1px solid #fff;
	border-radius:100%;
}

@media (max-width:991.98px) {
	.main_visual .swiper-slide{
		min-height:unset;
	}
	.main_visual .swiper-slide > .txt_box {padding: 0 15px;}
	.main_visual .swiper-slide > .txt_box h3 {font-size: 5rem;}
}
@media (max-width:767.98px) {
	.main_visual .swiper-slide > .txt_box h3 {font-size: 4rem;}
	.main_visual .swiper-slide > .txt_box p.desc {font-size: 2rem;}
	.main_visual .swiper-slide > .txt_box p.inq{margin-top: 4rem;}
	.main_visual .swiper-slide > .txt_box p.inq a {width: 20rem;}
}
@media (max-width:575.98px) {
	.main_visual .swiper-slide > .txt_box h3 {font-size: 3.5rem;}
	.main_visual .swiper-slide > .txt_box p.desc { margin-bottom: 1rem;}
	.main_visual .swiper-slide > .txt_box p.inq{margin-top: 3rem;}
}


#main_container {overflow: hidden;}
#main_container .main_title{
	font-size:5.8rem;
	font-weight:800;
}
#main_container .main_title small{
	display:block;
	font-size:2rem;
}

#main_container .more > a{
	display:flex;
	align-items: center;
	justify-content: space-between;
	padding:0 1.5rem 0 1.8rem;
	font-size:1.8rem;
	border:1px solid #ddd;
	border-radius:5rem;
	height:6rem;
	width:24rem;
	font-weight:500;
	color:#222;
	transition:all .3s;
}
#main_container .more > a:hover{
	background:#1776a0;
	border:1px solid #1776a0;
	color:#fff;
	box-shadow: 5px 5px 10px rgba(0,0,0,.1);
}
#main_container .desc{
	font-size:1.8rem;
}
@media (max-width:991.98px) {
	#main_container .main_title{font-size: 5rem;}
}
@media (max-width:767.98px) {
	#main_container .main_title{font-size: 4rem;}
	#main_container .more > a{width: 20rem; height: 5.5rem;}
}
@media (max-width:575.98px) {
	#main_container .main_title{font-size: 3.5rem;}
}



/*sec01*/
#main_container > .sec01{
	padding:12rem 15px;
}
#main_container > .sec01::before{
	background:url(../_img/main/main_sec01_bg.jpg) no-repeat center bottom / auto 80%
}
#main_container > .sec01 .rows{
	display:flex;
	justify-content: space-between;
}
#main_container > .sec01 .rows > div:nth-child(1){
	width: 36.42%;
}
#main_container > .sec01 .rows > div:nth-child(2){
	padding-top:2rem;
	width: 54.28%;
}
#main_container > .sec01 .main_title small{
	color:#1776a0;
}
@media (max-width:991.98px) {
	#main_container > .sec01 .rows{display: block;}
	#main_container > .sec01 .rows > div{width: 100% !important;}
}
@media (max-width:767.98px) {
	#main_container > .sec01{
		padding:10rem 15px;
	}
}
@media (max-width:575.98px) {
	#main_container > .sec01{
		padding:8rem 15px;
	}
}



/*sec02*/
#main_container > .sec02{
	padding:12rem 15px;
	color:#fff;
	text-align:center;
}
#main_container > .sec02::before{
	background:url(../_img/main/main_sec02_bg.jpg) no-repeat center center / cover;
}
#main_container > .sec02 [class^='col-']{
	position:relative;
}
#main_container > .sec02 [class^='col-'] + [class^='col-']::before{
	content:"";
	position:absolute;
	left:0;
	top:50%;
	transform: translateY(-50%);
	height:60%;
	border-left:1px solid rgba(255,255,255,.5);
}
#main_container > .sec02 [class^='col-'] p:nth-child(1) img{
	max-width:4.8rem;
}
#main_container > .sec02 [class^='col-'] p:nth-child(2) {
	font-size:2.2rem;
	margin-top:1rem;
	margin-bottom:.5rem;
}
#main_container > .sec02 [class^='col-'] p:nth-child(3){
	font-size:5.8rem;
	line-height:5.8rem;
}
#main_container > .sec02 [class^='col-'] p:nth-child(3) small{
	font-size:.35em;
	margin-left:1rem;
}
@media (max-width:991.98px) {
	#main_container > .sec02 [class^='col-'] p:nth-child(3) {
    font-size: 4.5rem;
    line-height: 4.5rem;
	}
}
@media (max-width:767.98px) {
	#main_container > .sec02{
		padding:10rem 15px;
	}
	#main_container > .sec02 [class^='col-'] + [class^='col-'] {
    margin-top: 2rem;
		padding-top: 2rem;
	}
	#main_container > .sec02 [class^='col-'] + [class^='col-']::before{
		left:50%;
		top:0;
		transform: translateY(0) translateX(-50%);
		width: 40%;
		height:1px;
		border-left:none;
		border-top:1px solid rgba(255,255,255,.5);
	}
	#main_container > .sec02 [class^='col-'] p:nth-child(2) {
    font-size: 2rem;
	}
	#main_container > .sec02 [class^='col-'] p:nth-child(3) {
    font-size: 4rem;
    line-height: 4rem;
	}
}
@media (max-width:575.98px) {
	#main_container > .sec02{
		padding:8rem 15px;
	}
	#main_container > .sec02 [class^='col-'] p:nth-child(3) {
    font-size: 3.5rem;
    line-height: 3.5rem;
	}
}



/*sec03*/
#main_container > .sec03{
	padding:12rem 15px;
}
#main_container > .sec03 .title_group{
	display:flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom:5rem;
}
#main_container > .sec03 .title_group small{
	color:#1776a0
}
#main_container .gallery_list_container .mySwiper{
	overflow: hidden;
	margin-left: auto;
	width: 150%;
}
#main_container .gallery_list_container .swiper-slide{
	width: 32rem;
}
#main_container .gallery_list_container a.item{
	display:block;
	color:#222;
}
#main_container .gallery_list_container a.item > p.thumb{
	padding-top:100%;
	background-size:cover;
	background-position: center center;
	border-radius:1rem;
}
#main_container .gallery_list_container .swiper-slide-active a.item > p.thumb{
	box-shadow: 1.5rem 1.5rem 2rem rgba(0,0,0,.15);
}
#main_container .gallery_list_container a.item > p.title{
	font-size:2rem;
	margin-top:1.5rem;
}

#main_container .controller{
	position:relative;
	display:flex;
	align-items: center;
	justify-content: space-between;
	gap:0 4rem;
	margin-top:4rem;
}
#main_container .controller .gallery_list-pagination{
	position:relative;
	width:100%;
	background:#dddddd;
	height:2px;
}
#main_container .controller .gallery_list-pagination > span{
	background:#1776a0 !important;
}
#main_container .controller .arrow{
	flex-shrink: 0;
	display:flex;
	gap:5px;
}
#main_container .controller .arrow > div{
	display:flex;
	width:5rem;
	height:5rem;
	justify-content: center;
	align-items: center;
	border:1px solid #1776a0;
	color:#1776a0;
	border-radius:5px;
	font-size:2.6rem;
}
#main_container .controller .arrow > div.swiper-button-disabled{
	border:1px solid #ddd;
	color:#bbbbbb;
}
@media (max-width:991.98px) {
	#main_container > .sec03 .title_group {margin-bottom: 4rem;}
	#main_container .gallery_list_container .swiper-slide {width: 28rem;}
}
@media (max-width:767.98px) {
	#main_container > .sec03{
    padding: 10rem 15px;
	}
	#main_container > .sec03 .title_group {margin-bottom: 3rem;}
	#main_container .gallery_list_container .swiper-slide {width: 24rem;}
	#main_container .gallery_list_container a.item > p.title {font-size: 1.8rem;}
	#main_container .controller {
    gap: 0 3rem;
    margin-top: 3rem;
	}
	#main_container .controller .arrow > div {
    width: 4rem;
    height: 4rem;
    font-size: 2rem;
	}
}
@media (max-width:575.98px) {
	#main_container > .sec03{
    padding: 8rem 15px;
	}
	#main_container .gallery_list_container .mySwiper{width: 100%;}
	#main_container .gallery_list_container .swiper-slide {width: auto;}
}



/*sec04*/
#main_container > .sec04{
	padding:12rem 15px;
	color:#fff;
}
#main_container > .sec04::before{
	background:url(../_img/main/main_sec04_bg.jpg) no-repeat center center / cover;
}
#main_container > .sec04 .main_title{
	font-size:4rem;
	font-weight:600;
}
#main_container > .sec04 .main_title small{
	color:#a9a9a9;
	font-weight:600;
	margin-bottom:2rem;
}
#main_container > .sec04 .more a{
	color:#fff ;
}
@media (max-width:767.98px) {
	#main_container > .sec04{
    padding: 10rem 15px;
	}
	#main_container > .sec04 .main_title{
		line-height: 1.4;
		font-size:3rem;
	}
}
@media (max-width:575.98px) {
	#main_container > .sec04{
    padding: 8rem 15px;
	}
}
