@charset "utf-8";

#mv {
	width: 100%;
	height: 100vh;
	background: url(../../img/top/top_mainimg.jpg) no-repeat center;
	background-size: cover;
	position: relative;
}
#video {
	display: none;
}

#innerMv {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 100%;
	height: 3.2rem;
}
#innerMv h1 {
	margin-top: -45px;
	margin-bottom: 45px;
	font-size: 5.5rem;
	font-weight: bold;
	color: #ffffff;
	line-height: 1.0;
	text-align: center;
}
#innerMv p {
	font-size: 2.4rem;
	color: #ffffff;
	line-height: 1.0;
	text-align: center;
}

/* banner */
#bnrArea {
	width: 90%;
	margin: 0 auto;
	padding: 60px 0 90px;
}

.bnrSlide img {
	width: 100%;
}

.bnrSlide a {
	display: block;
}

.bx-wrapper {
	position: relative;
	margin: 0 auto;
	padding: 0;
	*zoom: 1;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
}

.bx-wrapper img {
	max-width: 100%;
	display: block;
}

.bxslider {
	margin: 0;
	padding: 0;
}

ul.bxslider {
	list-style: none;
}

.bx-viewport {
	/*fix other elements on the page moving (on Chrome)*/
	-webkit-transform: translatez(0);
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
	position: absolute;
	bottom: -30px;
	width: 100%;
}

/* PAGER */
.bx-wrapper .bx-pager {
	text-align: center;
}

.bx-wrapper .bx-pager.bx-default-pager a {
	background: #004ea1;
	text-indent: -9999px;
	display: block;
	width: 12px;
	height: 12px;
	margin: 0 5px;
	outline: 0;
	border: 1px solid #004ea1;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active,
.bx-wrapper .bx-pager.bx-default-pager a:focus {
	background: #ffffff;
}

.bx-wrapper .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
	display: inline-block;
	*zoom: 1;
	*display: inline;
}

.bx-wrapper .bx-pager-item {
	font-size: 0;
	line-height: 0;
}

/* DIRECTION CONTROLS (NEXT / PREV) */
.bx-wrapper .bx-prev {
	left: -25px;
	background: url('../../img/common/prev.png') no-repeat 0 0;
	background-size: 10px auto;
}

.bx-wrapper .bx-prev:hover,
.bx-wrapper .bx-prev:focus {
	background-position: 0 0;
}

.bx-wrapper .bx-next {
	right: -25px;
	background: url('../../img/common/next.png') no-repeat 0 0;
	background-size: 10px auto;
}

.bx-wrapper .bx-controls-direction a {
	position: absolute;
	top: 50%;
	margin-top: -10px;
	outline: 0;
	width: 10px;
	height: 20px;
	text-indent: -9999px;
	z-index: 9999;
}

.bx-wrapper .bx-controls-direction a.disabled {
	display: none;
}


#pickupMenu {
	width: 100%;
}
#pickupmenu {
	width: 100%;
}
#pickList {
	width: 100%;
}
.pickItem {
	float: left;
	width: 50%;
	margin: 0;
	padding: 0;
	position: static;
}
.pick-up {
	width: 100%;
	height: 220px;
	position: relative;
}
.pick_img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.pick_img img.pickimg {
  	position: absolute;
    left: -100%;
    right: -100%;
    margin: auto;
    width: auto;
    height: 100%;
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.pick_img:hover img.pickimg {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}
.pickOverlay {
	display: block;
	width: 100%;
	height: 100%;
	padding: 20px;
	background-color: rgba( 32, 59, 95, 0.75 );
	position: absolute;
	top: 0;
	left: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.pickOverlay:hover {
	background-color: rgba( 32, 59, 95, 0.3 );
}
.pickOverlay::after {
	position: absolute;
	top: 20px;
	right: 20px;
	bottom: 20px;
	left: 20px;
	content: "";
	display: block;
	border: 3px solid #3891f0;
	opacity: 0;
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
}
.pickOverlay:hover::after {
	opacity: 1;
	-webkit-transform: scale(1);
	transform: scale(1);
}
.pickupmenu_tl {
	position: absolute;
	top: 30px;
	left: 0;
	width: 100%;
	padding: 40px 0 0;
	background: url(../../img/common/icon01.png) no-repeat center top;
	background-size: 15px;
	text-align: center;
}
.pickupmenu_tl h2 {
	margin-bottom: 10px;
	color: #ffffff;
	font-size: 2.4rem;
	font-weight: 900;
	line-height: 1.0;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.pickupmeni_subttl {
	margin-bottom: 30px;
	font-size: 1.5rem;
	color: #ffffff;
	line-height: 1.0;
}
.pickupmeni_subttl img {
	height: 12px;
	width: auto;
	position: static;
}
.pick_txt {
	display: inline-block;
	padding: 10px 15px;
	background-color: rgba( 56, 145, 240, 0.7 );
	color: #ffffff;
	font-size: 1.4rem;	
}


/* service */
#topService {
	width: 100%;
	padding: 60px 0;
	background: url(../../img/top/top_service_bg.jpg) no-repeat center 0;
	background-size: cover;
}
#topMainService {
	width: 92.5%;
	margin: 0 auto;
}
.topmain_service {
	width: 100%;
	margin: 0 0 30px;
	background: #ffffff;
	box-shadow:0px 0px 30px 0px rgba(0,0,0,0.15);
	-moz-box-shadow:0px 0px 30px 0px rgba(0,0,0,0.15);
	-webkit-box-shadow:0px 0px 30px 0px rgba(0,0,0,0.15);
}
.topmain_img {
	float: right;
	width: 42%;
	overflow: hidden;
}
.topmain_img img {
	/*min-width: 100%;
	min-height: 100%;*/
	max-width: 100%;
	height: auto;
}
.topmain_col {
	float: left;
	width: 58%;
	padding: 30px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.topmain_col h3,
.topsub_col h3 {
	margin-bottom: 25px;
	font-size: 1.8rem;
	font-weight: bold;
	color: #003986;
}
.topsub_col h3 {
	font-size: 1.6rem;
}
.topmain_col p,
.topsub_col p {
	margin-bottom: 20px;
}
.topmain_col dl,
.topsub_col dl {
	width: 100%;
}
.topmain_col dl dt {
	margin-bottom: 5px;
}
.topmain_col dl dt span,
.topsub_col dl dt span {
	display: inline-block;
	padding: 5px;
	background: #004ea0;
	color: #ffffff;
}
.topmain_col dl dd,
.topsub_col dl dd {
	font-size: 1.3rem;
}


#topSubService {
	width: 92.5%;
	margin: 0 auto;
}
.topsub_service {
	width: 100%;
	margin: 0 auto 40px;
	background: #ffffff;
	box-shadow:0px 0px 30px 0px rgba(0,0,0,0.15);
	-moz-box-shadow:0px 0px 30px 0px rgba(0,0,0,0.15);
	-webkit-box-shadow:0px 0px 30px 0px rgba(0,0,0,0.15);
}
.topsub_img {
	float: right;
	width: 30%;
	text-align: center;
	overflow: hidden;
	position: relative;
}
.topsub_img img {
	position: absolute;
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	left: 50%;
	top: 50%;
	-webkit-transform: translate3d(-50%, -50%, 0);
		  transform: translate3d(-50%, -50%, 0);
}
.topsub_col {
	float: left;
	width: 70%;
	padding: 30px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.topsub_col dl dt {
	display: inline-block;
	margin-right: 10px;
}
.topsub_col dl dd {
	display: inline-block;
}

.topserviceBtn {
	width: 100%;
	margin: -90px auto 50px;
	text-align: right;
}
.topserviceBtn a {
	display: inline-block;
	width: 200px;
	padding: 15px 0;
	background: url(../../img/common/arr_blue.png) no-repeat 96% center;
	background-size: 6px auto;
	border: 1px solid #004ea1;
	font-size: 1.4rem;
	font-weight: 900;
	color: #004ea1;
	text-align: center;
	line-height: 1.0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.topserviceBtn a:hover {
	background: url(../../img/common/arr_whit.png) no-repeat 98% center #004ea1;
	background-size: 6px auto;
	color: #ffffff;
}


/* NEWS */
#topNews {
	width: 92.5%;
	margin: 0 auto;
	padding: 60px 0;
}
.newsBtn {
	width: 100%;
	margin: -80px 0 20px;
	text-align: right;
}
.newsBtn a {
	display: inline-block;
	padding: 10px 20px;
	background: url(../../img/common/arr_blue.png) no-repeat 92% center #e8e8e8;
	background-size: 5px auto;
	color: #004ea1;
}
#topnewsList {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 2%;
}
#topnewsList li {
	width: 32%;
	margin-bottom: 30px;
}
#topnewsList li a {
	width: 100%;
	line-height: 1.0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
#topnewsList li a:hover {
	opacity: .6;
}
.news_img {
	width: 100%;
	margin-bottom: 10px;
}
.news_img img {
	aspect-ratio: 16 / 9;
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.news_cnt {
	width: 100%;
}
.topnews_col {
	display: inline-block;
}
.news_cat {
	display: inline-block;
	margin-bottom: 10px;
	padding: 5px;
	background: #004ea1;
	color: #ffffff;
	font-size: 1.3rem;
}
.news_cnt h3 {
	line-height: 1.6;
}



/* banner */
#topBnr {
	width: 100%;
	padding: 60px 0;
	background: #e2ecf8;
}
#topbnr {
	width: 92.5%;
	margin: 0 auto;
}

.topbnrimg {
	float: left;
	width: 18.33%;
	max-width: 220px;
	margin: 0 0.83%;
}
.topbnrimg a {
	display: block;
	width: 100%;
	background: url(../../img/top/windowcn.png) no-repeat 98% 95% #ffffff;
	background-size: 8px auto;
	text-align: center;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.topbnrimg a img {
	max-width: 100%;
	height: auto;
}
.topbnrimg a:hover {
	opacity: .6;
}

/*タブ切り替え全体のスタイル*/
.tabs {
  margin-top: 20px;
  width: 100%;
}
/*タブのスタイル*/
.tab_item {
  cursor: pointer;
  width: calc(96% / 5);
  background: #f1f1f1;
  margin-bottom: 20px;
  color: #333;
  line-height: 50px;
  font-size: 14px;
  text-align: center;
  display: block;
  float: left;
  font-weight: bold;
  transition: all 0.2s ease;
  border-top: #f1f1f1 solid 1px;
  border-left: #f1f1f1 solid 1px;
  border-right: #f1f1f1 solid 1px;
  box-sizing: border-box;
  &:hover {
    opacity: 0.75;
  }
}
.tab_item:not(:last-of-type) {
  margin-right: 1%;
}
.tab_item br.sp {
	display: none;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
  display: none;
  clear: both;
  overflow: hidden;
}

/*選択されているタブのコンテンツのみを表示*/
#tab_1:checked ~ #tab_item1,
#tab_2:checked ~ #tab_item2,
#tab_3:checked ~ #tab_item3,
#tab_4:checked ~ #tab_item4,
#tab_5:checked ~ #tab_item5,
#tab_6:checked ~ #tab_item6 {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
  background: #124E9F;
  color: #fff;
}

/*以下、タブ内に表示するtableのスタイル*/
.tab_content table {
  width:100%;
  text-align: left;
}
.tab_content th {
  min-width: 100px;
  width: 20%;
}
.tab_content tr {
  border-bottom: #f1f1f1 solid 1px;
}