/* CSS Document */
.sec_ttl {
		font-size: 2.3rem;
		font-weight: bold;
		letter-spacing: 0.2em;
		text-align: center;
}

.sec_ttl_en {
		font-size: 1.4rem;
		font-weight: 500;
		letter-spacing: 0.1em;
		text-align: center;
}

#mv {
		position: relative;
		height: 100vh;
}
#mv .mv_img {
		width: 100%;
}
#mv .mv-slider {
		width: 100%;
		height: 100%;
		z-index: 0;
}
#mv .mv-slider img {
		width: 100%;
		height: 100%;
		-o-object-fit: cover;
		   object-fit: cover;
}
#mv .swiper-pagination-bullets {
		left: 50%;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
		bottom: 190px;
}
@media screen and (max-width: 768px) {
		#mv .swiper-pagination-bullets {
				bottom: calc( 85px + 6vw );
		}
}
#mv .swiper-pagination-bullet {
		margin: 0 8px;
		opacity: 0.6;
		background-color: #ffffff;
		cursor: pointer;
}
#mv .swiper-pagination-bullet.swiper-pagination-bullet-active {
		opacity: 1;
}
#mv > .wrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: calc( 100% - 150px);
		z-index: 1;
}
#mv .mv_bar {
		z-index: 1;
		position: absolute;
		bottom: 0;
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		width: 100%;
		background-image: url("../images/index/mv_bar_bg@2x.png");
		background-repeat: no-repeat;
		background-size: auto;
		background-position: center center;
		height: 150px;
}
#mv .mv_bar .wrap {
		height: 100%;
}
#mv .mv_bar ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		height: 100%;
}
#mv .mv_bar ul li + li {
		margin-left: 300px;
}
#mv .mv_bar ul li a {
		font-size: 2.7rem;
		font-weight: 500;
		color: #fff;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		letter-spacing: 0.2em;
}
#mv .mv_bar ul li:nth-of-type(1) a::before, #mv .mv_bar ul li:nth-of-type(2) a::after {
		content: "";
		background-size: contain;
		background-repeat: no-repeat;
		height: 61px;
		display: inline-block;
}
#mv .mv_bar ul li:nth-of-type(1) a::before {
		background-image: url("../images/index/icn01@2x.png");
		width: 56px;
		margin-right: 30px;
}
#mv .mv_bar ul li:nth-of-type(2) a::after {
		background-image: url("../images/index/icn02@2x.png");
		width: 37px;
		margin-left: 27px;
}
#mv .mv_sns {
		position: absolute;
		right: 65px;
		bottom: 38px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
}
#mv .mv_sns-ttl {
		color: #fff;
		font-size: 1.4rem;
		letter-spacing: 0.1em;
}
#mv .mv_sns-list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
}
#mv .mv_sns-list-item {
		margin-left: 30px;
}
#mv .mv_sns-list-item:last-of-type img{
		width: auto;
	height: 2.8rem;
}

/*---------------------- news -------------------*/
#news {
		background-color: #fff;
		padding: 65px 0 80px;
}
#news .sec_ttl {
		letter-spacing: 0;
}
#news .news_list {
		width: 900px;
		max-width: 100%;
		margin: auto auto auto;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		border-bottom: 1px solid #b2b2b2;
		padding-bottom: 8px;
		padding-top: 9px;
}
#news .news_list:first-of-type {
		margin-top: 30px;
}
#news .news_list dt {
		width: 200px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
}
#news .news_list dd {
		width: calc( 100% - 200px);
		padding-left: 20px;
}
#news .news_list dd a {
		font-size: 1.4rem;
		color: #000;
		display: block;
		position: relative;
}
#news .news_list dd a::after {
		content: "";
		width: 10px;
		height: 10px;
		display: block;
		border: 0px solid #12348a;
		border-width: 1px 1px 0 0;
		-webkit-transform: rotate(45deg) translateY(-50%);
		transform: rotate(45deg) translateY(-50%);
		top: 50%;
		right: 20px;
		position: absolute;
}
#news .news_list dt .date {
		font-size: 1.4rem;
		font-weight: 500;
		color: #12348a;
}
#news .news_list dt .cate {
		font-size: 1.3rem;
		font-weight: 500;
		width: 106px;
		background-color: #12348a;
		color: #ffffff;
		text-align: center;
		padding: 0;
}
#news .news_link {
		width: 258px;
		height: 60px;
		max-width: 100%;
		margin: 45px auto auto;
}
#news .news_link-link {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		background-color: #0B308E;
		border-radius: 5px;
		background-image: url("../images/index/news_arr@2x.png");
		background-repeat: no-repeat;
		background-position: center right 20px;
		background-size: 9px;
		color: #fff;
		font-size: 1.6rem;
		font-weight: 500;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		width: 100%;
		height: 100%;
}

/*--------------------- consept ---------------*/
#consept {
		background-color: #EFEFEF;
		background-image: url("../images/index/consept_bg.png");
		background-repeat: no-repeat;
		background-position: center top 15px;
		padding: 100px 0 145px;
}
#consept .consept_ttl {
		margin-bottom: 35px;
}
#consept .consept_txt {
		font-size: 1.4rem;
		line-height: 1.75;
		text-align: center;
}
#consept .consept_link {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		margin-top: 65px;
}
#consept .consept_link li {
		width: 248px;
		height: 60px;
		max-width: 100%;
}
#consept .consept_link li + li {
		margin-left: 32px;
}
#consept .consept_link li a {
		display: block;
		width: 100%;
		height: 100%;
		border-radius: 6px;
		background-color: #0B308E;
		color: #fff;
		font-size: 1.6rem;
		font-weight: 500;
		background-image: url("../images/index/arr01@2x.png");
		background-size: 10px;
		background-repeat: no-repeat;
		background-position: center right 20px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
}

/*---------------------- business ------------------*/
#business {
		padding: 90px 0 95px;
}
#business .business_txt {
		font-size: 1.4rem;
		line-height: 1.75;
		text-align: center;
		margin-top: 18px;
}
#business .business_link {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		margin: 40px 0 0;
}
#business .business_link li {
		width: 215px;
		height: 215px;
}
#business .business_link li a {
		display: block;
		width: 100%;
		height: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		color: #fff;
		font-size: 1.6rem;
		line-height: 1.4;
		text-align: center;
		position: relative;
		border-radius: 50%;
}
#business .business_link li a .txt {
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		width: 100%;
}
#business .business_link li a .bg {
		background-image: url("../images/index/business_circle@2x.png");
		background-size: contain;
		display: block;
		width: 100%;
		height: 100%;
		-webkit-transition: 0.5s;
		transition: 0.5s;
}
#business .business_link li a:hover .bg {
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
}

/*------------------ service ---------------------*/
#service {
		background-color: #EFEFEF;
		padding: 63px 0 94px;
}
#service .sec_ttl, #service .sec_ttl_en {
		color: #0B318F;
}
#service .service_list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		margin-top: 40px;
}
#service .service_list li {
		width: 310px;
		max-width: 100%;
}
#service .service_list li a {
		display: block;
		color: #0B318F;
		text-align: center;
}
#service .service_list li a .service_img {
		background-size: cover;
		background-repeat: no-repeat;
		height: 235px;
		color: #fff;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
}
#service .service_list li:nth-of-type(1) a .service_img {
		background-image: url("../images/index/service01@2x.png");
}
#service .service_list li:nth-of-type(2) a .service_img {
		background-image: url("../images/index/service02@2x.png");
}
#service .service_list li:nth-of-type(3) a .service_img {
		background-image: url("../images/index/service03@2x.png");
}
#service .service_list li a .service_ttl {
		font-size: 2rem;
		letter-spacing: 0.1em;
		position: relative;
		padding: 0 0 10px;
		margin-bottom: 10px;
}
#service .service_list li a .service_ttl::after {
		content: "";
		width: 50px;
		height: 1px;
		background-color: #fff;
		position: absolute;
		bottom: 0;
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		display: block;
}
#service .service_list li a .service_ttl_en {
		font-size: 1.4rem;
		letter-spacing: 0.1em;
}
#service .service_list li a .service_txt {
		background-color: #fff;
		height: 105px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		line-height: 1.53;
		font-size: 1.4rem;
		font-weight: 500;
}

/*--------------------- social -------------------------*/
#social {
		padding: 120px 0 110px;
		background-color: #ededed;
}
#social .sec_ttl {
		letter-spacing: 0.05em;
		line-height: 1;
}
#social .sec_ttl_en {
		letter-spacing: 0;
		margin-top: 4px;
		margin-bottom: 15px;
}
#social .sec_ttl, #social .sec_ttl_en {
		text-align: left;
		padding-left: 10px;
}
#social .flex {
		width: 960px;
		max-width: 100%;
		margin: auto auto auto;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
}
#social .flex.social02 {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
		margin: 75px 0;
}
#social .flex.social02 .box:nth-of-type(1) {
		margin-right: 0;
		margin-left: -275px;
		width: 660px;
}
#social .flex.social02 .social-secttl-out {
		padding-left: 235px;
}
#social .flex.social02 .left_box {
		padding-left: 235px;
		background-image: url("../images/index/social01-rev@2x.png");
		background-position: center left;
}
#social .flex .box:nth-of-type(1) {
		width: 620px;
		max-width: 100%;
		margin-right: -235px;
		position: relative;
		z-index: 1;
		padding-top: 15px;
}
#social .flex .left_box {
		background-image: url("../images/index/social01@2x.png");
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center right;
		height: 345px;
		position: relative;
		z-index: 1;
		color: #fff;
		padding: 50px 0 0 65px;
}
#social .flex .box:nth-of-type(1) .social_ttl {
		font-size: 2.1rem;
		font-weight: 500;
}
#social .flex .box:nth-of-type(1) .social_txt {
		font-size: 1.4rem;
		margin-top: 10px;
}
#social .flex .box:nth-of-type(2) {
		width: 575px;
		height: 456px;
		max-width: 100%;
}
#social .flex .box:nth-of-type(2) img {
		margin: 0;
}
#social .social_link {
		margin-top: 30px;
}
#social .social_link li {
		width: 292px;
		height: 48px;
		max-width: 100%;
		text-align: center;
}
#social .social_link li + li {
		margin-top: 20px;
}
#social .social_link li a {
		display: block;
		border-radius: 5px;
		font-size: 1.6rem;
		font-weight: 500;
		letter-spacing: 0.05em;
		color: #0B318F;
		background-color: #fff;
		width: 100%;
		height: 100%;
		background-image: url("../images/index/social_arr@2x.png");
		background-size: 8px;
		background-repeat: no-repeat;
		background-position: center right 26px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		letter-spacing: 0.05em;
		text-align: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
}
#social .flex .box .sp {
		display: none;
}

/*---------------- recruit -------------------*/
#recruit {
		padding: 80px 0 90px;
}
#recruit .wrap {
		width: 1000px;
}

/*--------------------- contact --------------------*/
#contact {
		padding: 43px 0 65px;
}
#contact .sec_ttl {
		letter-spacing: 0;
}
#contact .contact_txt01 {
		font-size: 1.4rem;
		text-align: center;
		margin-top: 10px;
		margin-bottom: 22px;
}
#contact .contact_txt02 {
		font-size: 1.6rem;
		text-align: center;
		font-weight: bold;
		letter-spacing: 0.1em;
		margin: 35px 0 22px;
}
#contact .contact_list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
}
#contact .contact_list li {
		width: 258px;
		height: 48px;
		max-width: 100%;
}
#contact .contact_list li + li {
		margin-left: 23px;
}
#contact .contact_list li a {
		width: 100%;
		height: 100%;
		border-radius: 5px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		color: #fff;
		font-size: 1.6rem;
		font-weight: 500;
		background-color: #6C9BD2;
}

/*#contact .contact_list li:last-of-type a{
	background-color: #000;
}*/
/*--------------------- entry -------------------------*/
#entry {
		height: 513px;
		background-image: url("../images/index/entry_bg_pc.jpg");
		background-size: cover;
		background-position: center top;
}
#entry .wrap {
		padding: 113px 0 95px;
}
#entry .entry_ttl {
		text-align: center;
}
#entry .entry_ttl img.sp {
		display: none;
}
#entry .entry_txt {
		color: #fff;
		font-size: 2.1rem;
		line-height: 1.7;
		text-align: center;
		margin-top: 37px;
}
#entry .entry_btn {
		width: 248px;
		height: 60px;
		margin: 45px auto 0;
}
#entry .entry_btn a {
		display: block;
		width: 100%;
		height: 100%;
		border-radius: 6px;
		background-color: #fff;
		color: #09318f;
		font-size: 1.8rem;
		font-weight: 500;
		background-image: url(../images/index/arr02@2x.png);
		background-size: 10px;
		background-repeat: no-repeat;
		background-position: center right 20px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
}
#entry .entry_end_ttl {
		color: #fff;
		font-size: 2.4rem;
		font-weight: bold;
		line-height: 1;
		text-align: center;
		margin-top: 65px;
}
#entry .entry_end_ttl:before, #entry .entry_end_ttl:after {
		content: "";
		display: inline-block;
		width: 216px;
		height: 1px;
		border-bottom: 1px solid #fff;
		-webkit-transform: translateY(-7px);
		transform: translateY(-7px);
}
#entry .entry_end_ttl:before {
		margin-right: 25px;
}
#entry .entry_end_ttl:after {
		margin-left: 25px;
}
#entry .entry_end_txt {
		color: #fff;
		font-size: 1.8rem;
		line-height: 1.7;
		text-align: center;
		margin-top: 25px;
}

/*------------------------------- sp ----------------------------*/
@media screen and (max-width: 768px) {
		.sec_ttl {
				font-size: 2rem;
		}

		.sec_ttl_en {
				font-size: 1.1rem;
		}

		#mv {
				height: calc( 100vh - 70px);
		}
		#mv > .wrap {
				height: calc( 100% - 85px);
				padding: 0;
		}
		#mv .mv_txt {
				width: 100%;
				max-width: 100%;
				margin: auto;
		}
		#mv .mv_txt img {
				width: 274px;
				max-width: 73.2%;
				display: block;
				margin: auto;
		}
		#mv .mv_sns {
				display: none;
		}
		#mv .mv_bar {
				height: 85px;
				padding: 15px 0 15px;
				bottom: 0;
		}
		#mv .mv_bar .wrap {
				height: auto;
		}
		#mv .mv_bar ul {
				height: auto;
				width: 100%;
		}
		#mv .mv_bar ul li {
				text-align: center;
				width: 45%;
		}
		#mv .mv_bar ul li + li {
				margin: 0 0 0 10%;
		}
		#mv .mv_bar ul li a {
				display: inline-block;
				text-align: center;
				font-size: 1.2rem;
				letter-spacing: 0.05em;
		}
		#mv .mv_bar ul li:nth-of-type(1) a::before {
				content: "";
				background-size: contain;
				background-repeat: no-repeat;
				height: 30px;
				display: block;
		}
		#mv .mv_bar ul li:nth-of-type(2) a::before {
				content: "";
				background-size: contain;
				background-repeat: no-repeat;
				height: 30px;
				display: block;
		}
		#mv .mv_bar ul li:nth-of-type(2) a::after {
				content: none;
		}
		#mv .mv_bar ul li:nth-of-type(1) a::before {
				width: 28px;
				margin: auto auto 0.5em;
				background-position: center top;
		}
		#mv .mv_bar ul li:nth-of-type(2) a::before {
				background-image: url("../images/index/icn02@2x.png");
				width: 28px;
				margin: auto;
				background-position: center top;
		}

		#news {
				padding: 15vw 0;
		}
		#news .news_list {
				display: block;
		}
		#news .news_list dt {
				width: 100%;
				margin-bottom: 0;
				padding: 10px 10px 5px;
				-webkit-box-pack: start;
				-ms-flex-pack: start;
				justify-content: flex-start;
		}
		#news .news_list dt .cate {
				margin-left: 0.7em;
		}
		#news .news_list dd {
				width: 100%;
				padding: 0 10px 10px;
		}
		#news .news_link {
				width: 325px;
				max-width: 86vw;
				height: 45px;
		}

		#consept {
				background-image: url(../images/index/consept_bg.png);
				background-repeat: no-repeat;
				background-size: 150%;
				background-position: center top 15px;
				padding: 15vw 0 15vw;
		}
		#consept .consept_ttl {
				margin-bottom: 15px;
		}
		#consept .consept_link {
				display: block;
				margin-top: 30px;
		}
		#consept .consept_link li {
				width: 325px;
				max-width: 86vw;
				height: 45px;
				margin: auto;
		}
		#consept .consept_link li + li {
				margin: 10px auto auto;
		}
		#consept .consept_txt {
				text-align: left;
		}

		#business {
				padding: 15vw 0;
		}
		#business .business_link {
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
				-webkit-box-pack: center;
				-ms-flex-pack: center;
				justify-content: center;
		}
		#business .business_link li {
				width: 41.3vw;
				height: 41.3vw;
				max-width: 310px;
				max-height: 310px;
				margin: 2vw;
		}
		#business .business_link li + li {
				/*margin: 15px auto auto;*/
				/*margin: 0.5vw;*/
		}
		#business .business_txt {
				text-align: left;
		}

		#service {
				padding: 15vw 0;
		}
		#service .service_list {
				display: block;
		}
		#service .service_list li {
				margin: auto;
				width: 100%;
		}
		#service .service_list li a .service_img {
				height: 48vw;
				background-position: center center;
		}
		#service .service_list li a .service_ttl {
				font-size: 1.8rem;
		}
		#service .service_list li:nth-of-type(1) a .service_img {
				background-image: url("../images/index/service01_sp@2x.png");
		}
		#service .service_list li:nth-of-type(2) a .service_img {
				background-image: url("../images/index/service02_sp@2x.png");
		}
		#service .service_list li:nth-of-type(3) a .service_img {
				background-image: url("../images/index/service03_sp@2x.png");
		}
		#service .service_list li + li {
				margin: 15px auto auto;
		}

		#social {
				padding: 15vw 0 0;
		}
		#social .flex {
				display: block;
		}
		#social .flex.social02 {
				margin: 30px 0;
				display: block;
		}
		#social .flex.social02 .social-secttl-out {
				padding: 0;
		}
		#social .flex.social02 .left_box {
				padding: 25px 15px 38px;
		}
		#social .flex.social02 .box:nth-of-type(1) {
				margin: auto;
				width: 100%;
		}
		#social .flex .box:nth-of-type(1) {
				margin: auto;
				width: 100%;
		}
		#social .flex.social02 .box:nth-of-type(2), #social .flex .box:nth-of-type(2) {
				margin: auto;
				height: auto;
				width: 100%;
		}
		#social .flex.social02 .box:nth-of-type(1) .social_ttl, #social .flex .box:nth-of-type(1) .social_ttl {
				font-size: 1.8rem;
				line-height: 1.5;
		}
		#social .flex .left_box {
				padding: 25px 15px 38px;
				background-image: none;
				background-color: #1E356C;
				height: auto;
				width: 100%;
		}
		#social .flex .box .pc {
				display: none;
		}
		#social .flex .box .sp {
				display: block;
		}
		#social .social_link li {
				width: 100%;
				height: 45px;
		}
		#social .social_link li a {
				font-size: 1.5rem;
		}
		#social .sec_ttl, #social .sec_ttl_en {
				padding: 0;
		}

		#recruit {
				padding: 15vw 0;
		}
		#recruit .wrap {
				width: 100%;
		}

		#contact {
				padding: 15vw 0;
		}
		#contact .contact_list {
				display: block;
		}
		#contact .contact_txt02 {
				margin: 15px 0 10px;
		}
		#contact .contact_list li {
				margin: auto;
		}
		#contact .contact_list li + li {
				margin: 10px auto auto;
		}

		#entry {
				height: 112.8vw;
				background-image: url("../images/index/entry_bg_sp.jpg");
				background-size: cover;
				background-position: center top;
		}
		#entry .wrap {
				padding: 33.5vw 0 30vw;
				height: 100%;
		}
		#entry .entry_ttl img.sp {
				display: block;
				width: 84.4vw;
		}
		#entry .entry_ttl img.pc {
				display: none;
		}
		#entry .entry_txt {
				font-size: 1.2rem;
				margin-top: 6vw;
		}
		#entry .entry_btn {
				width: 187px;
				height: 45px;
				margin: 3.8vw auto 0;
		}
		#entry .entry_btn a {
				font-size: 1.6rem;
				background-size: 8px;
				background-position: center right 15px;
		}
		#entry .entry_end_ttl {
				font-size: 1.6rem;
				margin-top: 8vw;
		}
		#entry .entry_end_ttl:before, #entry .entry_end_ttl:after {
				width: 27vw;
				-webkit-transform: translateY(-5px);
				transform: translateY(-5px);
		}
		#entry .entry_end_ttl:before {
				margin-right: 2.5vw;
		}
		#entry .entry_end_ttl:after {
				margin-left: 2.5vw;
		}
		#entry .entry_end_txt {
				font-size: 1.2rem;
				line-height: 1.6;
				margin-top: 4vw;
		}
}
@media (orientation: landscape) and (max-width: 768px) {
		#mv {
				height: 150vh;
		}
}
#support {
		background-image: url("../images/index/index_support_bg.jpg");
		background-size: cover;
}

.sup_box {
		width: 800px;
		max-width: 100%;
		margin: auto;
		background-color: #fff;
		padding: 65px 0 65px;
}

#support .sec_ttl {
		letter-spacing: 0.1em;
}

.sup_img {
		margin: 30px 0 35px;
}

.sup_txt01 {
		font-size: 2.1rem;
		font-weight: bold;
		text-align: center;
		color: #0b3190;
		margin-bottom: 10px;
}

.sup_txt02 {
		font-size: 1.4rem;
		text-align: center;
		color: #0b3190;
		line-height: 2;
}

.sup_btn {
		width: 248px;
		height: 60px;
		max-width: 100%;
		margin: 40px auto 0;
}
.sup_btn a {
		display: block;
		width: 100%;
		height: 100%;
		border-radius: 6px;
		background-color: #0B308E;
		color: #fff;
		font-size: 1.6rem;
		font-weight: 500;
		background-image: url(../images/index/arr01@2x.png);
		background-size: 10px;
		background-repeat: no-repeat;
		background-position: center right 20px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
}

@media screen and (max-width: 768px) {
		#support .wrap {
				padding: 0;
		}

		.sup_box {
				padding: 35px 0;
		}

		#support .sec_ttl {
				font-size: 1.8rem;
		}

		.sup_img {
				width: 42.7%;
				margin: 25px auto;
		}

		.sup_txt01 {
				font-size: 1.4rem;
				line-height: 1.75;
				margin: 0;
		}

		.sup_img_sp {
				margin: 20px 0 33px;
		}

		.sup_txt02 {
				font-size: 1.1rem;
				line-height: 1.6;
		}

		.sup_btn {
				margin: 20px auto 0;
		}
}
/*------------------------ project --------------------*/
#project {
		padding: 65px 0 90px;
}
#project .project-slider {
		margin-top: 40px;
		padding-bottom: 65px;
		position: relative;
}
#project .project-item {
		width: 615px;
		max-width: 100%;
		padding-right: 50px;
		height: auto;
		word-break: break-all;
}
#project .project-item-inn {
		background-color: #1e356c;
		padding: 25px 45px 95px;
		height: 100%;
		position: relative;
}
#project .project-item-num {
		font-size: 1.8rem;
		font-weight: 500;
		color: #ffffff;
		letter-spacing: 0.05em;
		margin-bottom: 20px;
}
#project .project-item-img {
		margin-right: -100px;
		position: relative;
		margin-bottom: 20px;
}
#project .project-item-img img {
		width: 100%;
}
#project .project-item-ttl {
		font-size: 2.1rem;
		font-weight: bold;
		color: #ffffff;
		letter-spacing: 0.05em;
		margin-bottom: 12px;
}
#project .project-item-txt {
		color: #ffffff;
		font-size: 1.4rem;
		line-height: 2;
		font-weight: 500;
}
#project .project-item-link {
		color: #ffffff;
		font-size: 1.6rem;
		font-weight: 500;
		text-align: right;
		position: absolute;
		right: 45px;
		bottom: 45px;
}
#project .project-item-link-anc {
		padding-right: 1em;
		position: relative;
		color: #ffffff;
}
#project .project-item-link-anc::after {
		content: "";
		width: 7px;
		height: 7px;
		border: 0px solid #ffffff;
		border-width: 1px 1px 0 0;
		position: absolute;
		right: 0;
		top: 50%;
		-webkit-transform: translateY(-50%) rotate(45deg);
		transform: translateY(-50%) rotate(45deg);
}
#project .project-btn {
		width: 320px;
		height: 60px;
		max-width: 100%;
		margin: 45px auto auto;
}
#project .project-btn-link {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		background-color: #0B308E;
		border-radius: 5px;
		background-image: url("../images/index/news_arr@2x.png");
		background-repeat: no-repeat;
		background-position: center right 20px;
		background-size: 9px;
		color: #fff;
		font-size: 1.6rem;
		font-weight: 500;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		width: 100%;
		height: 100%;
}
#project .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
		margin: 0 8px;
}
#project .swiper-pagination-bullet {
		background-color: #12348a;
		opacity: 0.3;
}
#project .swiper-pagination-bullet-active {
		opacity: 1;
}

@media screen and (max-width: 768px) {
		#project {
				padding: 50px 0;
		}
}
@media screen and (max-width: 768px) {
		#project .project-slider {
				margin-top: 20px;
				padding-bottom: 50px;
		}
}
@media screen and (max-width: 768px) {
		#project .project-item {
				width: 86vw;
				padding: 0;
		}
}
@media screen and (max-width: 768px) {
		#project .project-item-inn {
				padding: 20px 5.3vw 110px;
		}
}
@media screen and (max-width: 768px) {
		#project .project-item-num {
				font-size: 1.2rem;
				margin-bottom: 12px;
		}
}
@media screen and (max-width: 768px) {
		#project .project-item-img {
				margin: 0 0 25px;
				height: 50.6vw;
		}
}
@media screen and (max-width: 768px) {
		#project .project-item-img img {
				width: 100%;
				height: 100%;
				-o-object-fit: cover;
				object-fit: cover;
		}
}
@media screen and (max-width: 768px) {
		#project .project-item-ttl {
				font-size: 1.8rem;
				margin-bottom: 23px;
		}
}
@media screen and (max-width: 768px) {
		#project .project-item-txt {
				font-size: 1.3rem;
		}
}
@media print, screen and (min-width: 769px) {
		#project .project-item-link a {
				text-decoration: underline;
		}
}
@media screen and (max-width: 768px) {
		#project .project-item-link {
				width: calc( 100% - 10.6vw );
				height: 45px;
				text-align: left;
				left: 50%;
				right: auto;
				bottom: 40px;
				-webkit-transform: translateX(-50%);
				transform: translateX(-50%);
				font-size: 1.5rem;
		}
}
@media screen and (max-width: 768px) {
		#project .project-item-link-anc {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				border-radius: 5px;
				background-color: #ffffff;
				color: #12348a;
				padding: 0;
				width: 100%;
				height: 100%;
				-webkit-box-pack: center;
				-ms-flex-pack: center;
				justify-content: center;
				-webkit-box-align: center;
				-ms-flex-align: center;
				align-items: center;
		}
}
@media screen and (max-width: 768px) {
		#project .project-item-link-anc::after {
				border-color: #12348a;
				right: 5.3vw;
				width: 10px;
				height: 10px;
		}
}
@media screen and (max-width: 768px) {
		#project .project-btn {
				width: 325px;
				max-width: 86vw;
				height: 45px;
				margin: 15px auto auto;
		}
}
@media screen and (max-width: 768px) {
		#project .project-btn-link {
				font-size: 1.5rem;
		}
}
/*--------------- sns -------------------*/
#sns {
		background-color: #ededed;
		padding: 75px 0 120px;
}
#sns .sns-area {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		margin-top: 40px;
}
#sns .sns-ttl {
		color: #12348a;
		font-weight: bold;
		text-align: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		font-size: 2.4rem;
		letter-spacing: 0.05em;
		margin-bottom: 45px;
}
#sns .sns-ttl img {
		margin: 0 0.5em 0 0;
}
#sns .sns-insta {
		width: 100%;
		margin-bottom: 75px;
}
#sns .sns-insta .slick-next, #sns .sns-insta .slick-prev {
		width: 35px;
		height: 35px;
		right: 50px;
		top: 50%;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		z-index: 1;
		width: 45px;
		height: 69px;
		background-image: url("../images/index/insta-arr-next.svg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center center;
}
#sns .sns-insta .slick-next::before {
		content: "";
		width: 100%;
		height: 100%;
		/*border: 0 solid $white;
		border-width: 3px 3px 0 0;*/
		position: absolute;
		/*transform: rotate(45deg);*/
		top: 0;
		left: 0;
		content: none;
}
#sns .sns-insta .slick-prev {
		left: 50px;
		right: auto;
		background-image: url("../images/index/insta-arr-prev.svg");
}
#sns .sns-insta .slick-prev::before {
		content: "";
		width: 100%;
		height: 100%;
		/*border: 0 solid $white;
		border-width: 3px 3px 0 0;*/
		position: absolute;
		/*transform: rotate(45deg);*/
		top: 0;
		left: 0;
		content: none;
		/*transform: rotate(-135deg);*/
}
#sns .sns-fb, #sns .sns-tw {
		width: 464px;
}
#sns .sns-fb iframe, #sns .sns-tw iframe {
		width: 100% !important;
}
#sns .sns-fb .fb-page, #sns .sns-tw .fb-page {
		width: 100% !important;
}
#sns .sns-fb .fb-page span, #sns .sns-tw .fb-page span {
		width: 100% !important;
}
#sns .sns-fb .facebook_wrap iframe, #sns .sns-tw .facebook_wrap iframe {
		width: 100% !important;
}
#sns .sns-tw .sns-ttl img{
	width: auto;
	height: 2rem;
}

@media screen and (max-width: 768px) {
		#sns {
				padding: 50px 0;
		}
}
@media screen and (max-width: 768px) {
		#sns .sns-area {
				display: block;
				margin-top: 30px;
		}
}
@media screen and (max-width: 768px) {
		#sns .sns-ttl {
				font-size: 2rem;
				margin-bottom: 15px;
		}
}
@media screen and (max-width: 768px) {
		#sns .sns-insta {
				width: 108%;
				margin: 0 -4% 45px;
		}
}
@media print, screen and (min-width: 769px) {
		#sns .sns-insta .insta-slide {
				padding: 0 14px;
		}
		#sns .sns-insta .insta-slide div {
				line-height: 1;
				height: 100%;
		}
		#sns .sns-insta .insta-slide .insta-item {
				width: 237px;
				height: 237px;
				line-height: 1;
				padding: 2px;
		}
		#sns .sns-insta .insta-slide .insta-item a {
				display: block;
				width: 100%;
				height: 100%;
		}
		#sns .sns-insta .insta-slide .insta-item img {
				height: 100%;
				-o-object-fit: cover;
				object-fit: cover;
				width: 100%;
		}
}
@media screen and (max-width: 768px) {
		#sns .sns-insta .slick-track {
				/*display: flex;*/
		}
		#sns .sns-insta .slick-slide {
				height: auto !important;
		}
		#sns .sns-insta .slick-slide a {
				display: block;
				width: 100%;
				height: 100%;
		}
		#sns .sns-insta .slick-slide span {
				display: block;
				width: 100%;
				height: 100%;
				padding: 0 1px;
		}
		#sns .sns-insta .slick-slide > div {
				height: 100%;
				position: relative;
		}
		#sns .sns-insta .slick-slide > div::before {
				content: "";
				width: 100%;
				height: auto;
				padding-top: 100%;
				display: block;
		}
		#sns .sns-insta .slick-slide > div .insta-item {
				position: absolute;
				width: 100%;
				height: 100%;
				top: 0;
				left: 0;
		}
		#sns .sns-insta .slick-slide > div .insta-item img {
				width: 100%;
				height: 100%;
				-o-object-fit: cover;
				object-fit: cover;
		}
}
@media screen and (max-width: 768px) {
		#sns .sns-fb, #sns .sns-tw {
				width: 100%;
		}
}
@media screen and (max-width: 768px) {
		#sns .sns-fb {
				margin-bottom: 45px;
		}
}
/*# sourceMappingURL=index.css.map */