@charset "utf-8";
/*
Theme Name:テンプレート__01
Version: 1.1
Author:エイジェック広報部
Author URI:https://www.agekke.co.jp/
*/
/*============================
トップページ
============================*/
/* ----- メインビジュアル -----*/
.bl_top_mv {
	position: relative;
}

.bl_top_mv_slider.mo {
	display: none;
}

.bl_top_mv_cont {
	display: grid;
	grid-template-columns: 15% 1fr
}

.bl_top_mv_main {
	color: #0075c4;
	position: absolute;
	top: 33%;
	right: -252px;
}

.bl_top_mv_ttl {
	position: absolute;
	top: 33%;
	left: -142px;
	z-index: 1;
}

.bl_top_mv .ttl {
	font-size: 5rem;
	font-weight: 700;
    white-space: nowrap;
	letter-spacing: .15em;
}

.bl_top_mv .cc {
	font-size: 1.25rem;
	letter-spacing: .1em;
	font-weight: 600;
}

.bl_top_mv_ttl {
	color: #fff;
}

.bl_top_mv_img {
	position: relative;
	z-index: 0;
}

.bl_top_mv_txt {
	overflow: hidden;
	position: relative;
	z-index: 1;
}

@media screen and (max-width: 1279px){
	.bl_top_mv .cc {
    	font-size: 1rem;
	}
	
	.bl_top_mv .ttl {
    	font-size: 3rem;
    	letter-spacing: .1em;
	}
	
	.bl_top_mv_cont {
    	grid-template-columns: 17% 1fr;
	}
	
	.bl_top_mv_ttl {
    	left: -77px;
	}
	
	.bl_top_mv_main {
    	right: -240px;
	}
}

@media screen and (max-width: 767px){	
	.bl_top_mv_slider.pc {
		display: none;
	}
	
	.bl_top_mv_slider.mo {
		display: block;
	}
	
	.bl_top_mv_ttl {
    	left: -50px;
	}
	
	.bl_top_mv_main {
    	right: -268px;
	}
}

@media screen and (max-width: 320px){
	.bl_top_mv .cc {
    	font-size: .875rem;
	}
	
	.bl_top_mv .ttl {
        font-size: 2.5rem;
	}
		
	.bl_top_mv_ttl {
    	left: -43px;
	}
	
	.bl_top_mv_main {
    	right: -236px;
	}
}
/* ----- お知らせ -----*/
.bl_news {
	position: relative;
	background: #fff;
	max-width: 1260px;
	margin-top: -100px;
	z-index: 1;
}

.bl_news .el_lv2Heading {
	margin: 0;
}

.bl_news_wrap {
	padding: 30px 30px 30px 180px;
}

.bl_news_cont {
	display: grid;
	grid-template-columns: 240px 1fr;
}

.bl_news_post {
	margin-top: -10px;
}

.bl_news_item {
    border-bottom: 1px solid #DEDDDD;
    padding: 10px 0;
    display: grid;
    grid-template-columns: 120px 1fr;
}

.bl_news_item .date {
	font-family: "Akshar", sans-serif;
	letter-spacing: .1em;
}

.bl_news .el_more {
	margin: 20px 0 0;
}

@media screen and (max-width: 1400px) {
	.bl_news_wrap {
		padding: 30px 30px 30px 100px;
	}
}

@media screen and (max-width: 1280px) {
	.bl_news {
    	max-width: 1080px;
	}
}

@media screen and (max-width: 1100px) {
	.bl_news {
    	max-width: 960px;
	}
	
	.bl_news_wrap {
		padding: 30px;
	}
}

@media screen and (max-width: 1023px) {
	.bl_news {
    	margin-top: 0;
	}
	
	.bl_news_wrap {
		padding: 50px 30px 0 30px;
	}
	
	.bl_news_cont {
    	grid-template-columns: 200px 1fr;
	}
}

@media screen and (max-width: 767px) {
	.bl_news_cont {
		display: block;
	}
	
	.bl_news_wrap {
        padding: 30px 15px 0;
    }
	
	.bl_news .el_lv2Heading {
    	margin: 0 0 30px;
	}
}
/* ----- エイジェック琉球について -----*/
.bl_about {
	position: relative;
	z-index: 0;
	padding: 100px 0 70px;
}

.bl_about_cont {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 60px;
	margin: 0 0 50px;
}

.bl_about_cont__right img {
	display: none;
}

.bl_about_cont__right h3 {
	margin: 0 0 20px;
	font-size: 1.125rem;
    font-weight: 700;
    color: #0075c4;
}

.bl_about_cont__right p {
	line-height: 1.8;
}

.bl_about_cont__right p:first-of-type {
	margin: 0 0 16px;
}

.bl_about .el_more {
	margin: 20px 0 0;
}
@media screen and (max-width: 1279px) {
	.bl_about {
		padding: 70px 0 80px;
	}
	
	.bl_about_cont {
    	grid-template-columns: 40% 1fr;
    	gap: 40px;
    	margin: 0;
	}
}

@media screen and (max-width: 1023px) {

}

@media screen and (max-width: 767px) {
	.bl_about {
		padding: 60px 0 70px;
	}
	
	.bl_about_cont,
	.bl_about_cont__right img {
		display: block;
	}
	
	.bl_about_cont__right img {
		margin: 0 0 22px;
	}
	.bl_about_cont__left {
		display: none;
	}
	
	.bl_about .el_lv2Heading.el_lv2Heading__left {
    	text-align: center;
	}
}

/* ----- 事業内容 -----*/
.bl_service {
	position: relative;
    background-image: url(images/bg_service.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;	
}

.bl_service .el_lv2Heading {
	position: absolute;
	top: -23px;
	left: 50%;
	transform: translateX(-50%);
}
.bl_service_cont {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
	margin: 80px 0 0;
}

.bl_service_item {
	background: #fff;
	padding: 35px 30px 30px;
	position: relative;
}

.bl_service_num {
    font-family: "Akshar", sans-serif;
    font-size: 3.125rem;
    color: #0075c4;
    font-weight: 500;
    line-height: .8;
}

.bl_service_cont .bl_service_num {
	position: absolute;
    top: 35px;
    left: 30px;
}

.bl_service_cont .bl_service_img {
	text-align: center;
}

.bl_service_ttl {
	text-align: center;
	font-size: 1.125rem;
	color: #0075c4;
	font-weight: 600;
}

.bl_service_cont .bl_service_ttl {
	margin: 22px 0 18px;
}

.bl_service .el_more {
    margin: 10px auto 0;
}

.bl_service_cont_under {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 40px;
	margin: 40px 0 0;
}

.bl_service_cont_under ul {
	display: flex;
}

.bl_service_cont_under ul li:nth-child(1) {
	width: calc(62% - 20px);
	margin-right: 40px;
}

.bl_service_cont_under ul li:nth-child(2) {
	width: calc(38% - 20px);
}

.bl_service_ttlBox .bl_service_num,
.bl_service_ttlBox .bl_service_ttl {
	display: inline-block;
	vertical-align: middle;
}

.bl_service_ttlBox .bl_service_num {
	font-size: 2.5rem;
}

.bl_service_ttlBox {
	margin: 0 0 18px;
}

.bl_service_ttlBox .bl_service_ttl {
	margin: 0 0 5px 12px;
}

@media screen and (max-width: 1279px) {
	.bl_service .el_lv2Heading {
    	top: -19px;
	}
	
	.bl_service_cont {
    	gap: 20px;
    	margin: 40px 0 0;
	}
	
	.bl_service_cont_under {
    	gap: 20px;
    	margin: 20px 0 0;
	}
	
	.bl_service_item {
    	padding: 25px 20px 20px;
	}
	
	.bl_service_cont .bl_service_num {
    	top: 25px;
    	left: 20px;
	}
	
	.bl_service_num {
    	font-size: 2.5rem;
	}
	
	.bl_service_ttlBox .bl_service_num {
    	font-size: 2rem;
	}
	
	.bl_service_ttlBox .bl_service_ttl {
    	margin: 0 0 5px 4px;
	}
	
	.bl_service_cont_under ul li:nth-child(1) {
    	width: 73%;
    	margin-right: 20px;
	}
	
	.bl_service_cont_under ul li:nth-child(2) {
    	width: calc(35% - 20px);
	}
}

@media screen and (max-width: 1023px) {
	.bl_service_cont_under ul {
		flex-direction: column-reverse;
		flex-wrap: wrap;
	}

	.bl_service_cont_under ul li:nth-child(1),
	.bl_service_cont_under ul li:nth-child(2) {
		width: 100%;
	
	}
	
	.bl_service_cont_under .bl_service_img {
		max-width: 150px;
		margin: 0 auto 22px;
	}
	
	.bl_service_ttlBox .bl_service_num {	
		position: absolute;
		top: 25px;
        left: 20px;
    	font-size: 2.5rem;
	}
	
	.bl_service_ttlBox {
    	margin: 0;
		text-align: center;
	}
	
	.bl_service_ttlBox .bl_service_ttl {
        margin: 0 0 18px;
    }
}

@media screen and (max-width: 767px) {
	.bl_service_cont,
	.bl_service_cont_under {
		display: block;
	}
	
	.bl_service_item {
		margin: 0 0 20px;
		padding: 35px 30px 30px;
	}
	
	.bl_service_cont_under .bl_service_item:last-of-type {
		margin: 0;
	}
	
	 .bl_service_num,
	.bl_service_ttlBox .bl_service_num {
        font-size: 3.125rem;
    }
	
	.bl_service_ttl {
    	font-size: 1.25rem;
	}
	
	.bl_service_cont_under .bl_service_img {
		max-width: 210px;
	}
}

/* ----- 実績紹介 -----*/
.bl_works_wrap {
	width: 90%;
	margin-left: 10%;
	background: #f6f6f6;
	padding: 60px 0 35px 40px;
	overflow: hidden;
}

.bl_works_box__left {
	float: left;
	width: 270px;
	text-align: center;
}

.bl_works_box__right {
	float: right;
	width: calc(100% - 270px);
}

.works_slider {
	margin-right: -200px;
}

.bl_works li.slick-slide {
	margin: 0 12px;
	background: #fff;
}

.bl_works_box {
	padding: 15px 15px 20px;
}

.bl_works_ctgr {
	margin: 13px 0 0;
}

.bl_works_ctgr .ctgr {
	display: inline-block;
	line-height: 1;
	font-size: .75rem;
	padding: 3px 6px 3px 6px;
	background: #f6f6f6;
	margin-top: 6px;
}

.bl_works_ctgr .ctgr:not(:first-of-type) {
	margin-left: 6px;
}

.bl_works .el_more {
    margin: 40px 0 0;
	text-align: center;
}

.bl_works_ttl {
	color: #0075c4;
	font-weight: 500;
	margin: 2px 0 10px;
}

.bl_works_desc {
	font-size: .9375rem;
}

.slide-dots,
.slide-dots {
	position: relative;
	z-index: 3;
	bottom: -30px !important;
	text-align: center !important;
}

.slide-dots li,
.slide-dots li {
	width: 30px !important;
    display: inline-block;
  }

.slide-dots li button,
.slide-dots li button {
    padding: 0 !important;
    color: transparent !important;
    outline: none !important;
    width: 9px !important;
    border: unset !important;
    height: 9px !important;
    display: block !important;
    background: #0075c445 !important;
    cursor: pointer !important;
	border-radius: 20px;
  }

.slide-dots li.slick-active button,
.slide-dots li.slick-active button {
   background: #0075c4 !important;
 }

.slide-dots li button:before,
.slide-dots li button:before {
	content: none !important;
}

.bl_works .el_more.hp_mo {
	display: none;
}

.bl_works_thumbnail figure {
	overflow: hidden;
}

.bl_works_thumbnail figure img {
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transition: .8s ease-in-out;
  transition: .8s ease-in-out;
}

.works_slider li:hover .bl_works_thumbnail figure img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

.works_slider li:hover .bl_works_ttl {
	color: #00a1e9;
}

@media screen and (max-width: 1023px) {
	.bl_works_wrap {
    	width: calc(100% - 60px);
    	margin-left: 60px;
		padding: 60px 0 35px 0;
	}
	
	.slide-dots, .slide-dots {
    position: relative;
    	bottom: -22px !important;
	}
}

@media screen and (max-width: 767px) {
	.bl_works_wrap {
        	width: 100%;
        	margin-left: 0;
	}
	
	.works_slider {
    	margin-right: 0;
	}
	
	.bl_works_box__left,
	.bl_works_box__right {
    	float: none;
    	width: 100%;
	}
	.bl_works li.slick-slide {
    	padding: 0 15px;
	}
	
	.bl_works .el_more.hp_pc {
		display: none;
	}
	
	.bl_works .el_more.hp_mo {
		display: block;
		margin: 70px 15px 0;
    	text-align: right;
	}
}


/* ----- お問い合わせ -----*/
.bl_topContact_cont {
	max-width: 900px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 60px;
	color: #0075c4;
}

.bl_topContact_desc{
	text-align: center;
	margin: 0 0 40px;
}

.bl_topContact_box {
	text-align: center;
	border: 1px solid #0075c4;
}

.bl_topContact_box p {
	padding: 30px 12px;
}

.bl_topContact_box .num {
    font-size: 2rem;
    font-weight: bold;
}

.bl_topContact_box .txt {
    font-size: 1.375rem;
    font-weight: bold;
}

.bl_topContact_box span {
	display: inline-block;
	vertical-align: middle;
}

.bl_topContact_box.tel .icon{
	width: 30px;
	margin: 4px 15px 0 0;
}

.bl_topContact_box.mail .icon{
	width: 32px;
	margin: 0 15px 0 0;
}

.bl_topContact_box.mail p {
	margin: 8px 0 0;
}

.bl_topContact_box.mail:hover {
	background: #00a1e9;
}

.bl_topContact_box.mail:hover p {
	color: #fff;
}

@media screen and (max-width: 1023px) {
	.bl_topContact_cont {
    	gap: 20px;
	}
}

@media screen and (max-width: 767px) {
	.bl_topContact_cont {
		display: block;
	}
	
	.bl_topContact_desc {
    	text-align: left;
    	margin: 0 0 30px;
	}
	
	.bl_topContact_box.tel {
		margin: 0 0 20px;
	}
	
	.bl_topContact_box.tel .icon {
    	width: 25px;
	}
	
	.bl_topContact_box .num {
    	font-size: 1.5rem;
	}
}

/* ----- 琉球アスティーダ バナー -----*/
.bl_banner {
	padding: 60px 0;
	background: #f8f8f8;
}

.bl_banner_cont {
    position: relative;
    background-image: url(images/bg_bnr.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
}

.bl_banner_box {
	padding: 40px;
}

.bl_banner_box ul li {
	display: inline-block;
	vertical-align: top;
}

.bl_banner_box ul li:first-child {
	width: 110px;
}

.bl_banner_box ul li:last-child {
	width: calc(100% - 110px);
	padding-left: 20px;
}

.bl_banner_desc {
	color: #0075c4;
	margin: 10px 0 20px;
	font-weight: bold;
	font-size: 1.0625rem;
}

.bl_banner .el_more {
	text-align: left;
}

@media screen and (max-width: 1023px) {
	.bl_banner_box {
    	padding: 30px;
	}
	
	.bl_banner_box ul li:first-child {
    	width: 90px;
	}
	
	.bl_banner_box ul li:last-child {
    	width: calc(100% - 90px);
	}
}

@media screen and (max-width: 767px) {
	.bl_banner {
    	padding: 40px 0;
	}
	
	.bl_banner_cont {
    	background-image: url(images/bg_bnr-mo.jpg);
	}
	
	.bl_banner_box {
	    padding: 30px 20px 120px;
	}
	
	.bl_banner .el_more {
		text-align: right;
	}
}

