@charset "utf-8";

/*p-index_body*/

/*index_style
===========================================================*/

/*p-tech_index*/
.p-tech_index{
	position: relative;
	border-bottom: #C0C5CC 1px solid;
	box-shadow: 0px 4px 8px -2px rgba(0,0,0,0.12);
}
.p-tech_index .p-thumb_link__img::after{
	content: "";
	display: block;
	position: absolute; 
	width: 14px; height: 8px;
	right: 18px;
	top: calc((100% - 140px)/2 + 140px);
	margin-top: -5px;
	background: url("/tech/image_v4/arrow_down_tech_bn.svg") no-repeat 50% 50%;
	background-size: 100% auto;
	transition: all 0.4s;
}
.p-open_contents.is-open .p-thumb_link__img::after{
	transform: rotateX(-180deg);
	margin-top: -7px;
}

/*portal_link*/
.p-tech_index .p-thumb_link__img.p-portal_link::after{
	width: 8px; height: 14px;
	right: 18px;
	margin-top: -9px;
	background-image: url("/tech/image_v4/arrow_link_tech_bn.svg");
}
/*customize*/
.p-tech_index .p-thumb_link__txt {
	padding-top: 0.125rem;
	padding-bottom: 0.4375rem;
	min-height: 4rem;
}
.p-tech_index .c-bn_btn h3{
	line-height: 1.2;
}

/*p-tech_bn col*/
.p-tech_bn .col{
	margin-right: 40px;
}
.p-tech_bn .col:nth-of-type(4n){
	margin-right: 0px;
}
.sp .p-tech_bn .col{
	margin-right: 0;
}

/*p-tech_contents*/
.p-tech_contents_area{
	margin: 1.5rem 0;
	position: relative;
}
.p-tech_contents__wrap{
	background-color: #3C4248;
	overflow: hidden;
	height: 0px;
	opacity: 0;
	transition: height 0.5s, opacity 0.3s;
}
.p-tech_contents{
	padding: 1.375rem 0 1.25rem;
	font-family: "Helvetica Neue",Arial,"YuGothic","Yu Gothic","Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
}
h3.p-tech_contents__sub_ctg{
	color: #C0C5CC;
	padding-bottom: 0.375rem;
	border-bottom: #82888E 1px solid;
	margin-bottom: 0.875rem;
	line-height: 1.5;
}

.p-tech_contents__link.link{
	padding: 0.125rem 0;
}
.p-tech_contents__link.link li{
	background-image: url("/common/image/arrow_white.png");
	background-position: 0 0.5em;
	line-height: 1.5;
	margin: 0 0 0.625rem;
}
.p-tech_contents__link li a{
	color: #fff;
}
.p-tech_contents__link li a.c-blank::after{
	content: "";
	display: inline-block;
	width: 12px; height: 12px;
	background: url("/common/image/icon_blank_w.png") no-repeat 50% 50%;
	margin: 0 0 0 3px;
}

.p-tech_contents__close{
	display: none;
}
.p-tech_contents__link.link li.p-tech_link__portal{
	font-size: 1.1875rem;
	font-weight: 500;
	border: #82888E 2px solid;
	padding: 0;
	background-image: none;
	box-shadow: 3px 4px 12px -2px rgba(0,0,0,0.5);
}
.p-tech_contents__link.link li.p-tech_link__portal a{
	display: block;
	padding: 0.8125rem 0.9375rem 0.8125rem 1.875rem;
	background: #3C4248 url("/common/image/arrow_white.png") no-repeat 0.75rem 1.375rem;
	transition: background-color 0.3s;
}
.p-tech_contents__link.link li.p-tech_link__portal a:hover{
	background-color: #262f38;
}


/*p-open_contents*/
.c-bn_btn.p-open_contents.is-open{
	background-color: #3C4248;
}
.c-bn_btn.p-open_contents::after{
	content: "";
	display: block;
	box-sizing: content-box;
	width: 0px;
	position: absolute;
	border-style: solid;
	border-color: transparent transparent #3C4248 transparent;
	border-width: 0px 16px 24px 16px;
	top:100%;
	left: 50%;
	margin-left: -16px;
	opacity: 0;
	transition: opacity 0.3s;
}
.c-bn_btn.p-open_contents.is-open::after{
	opacity: 1;
}
.c-bn_btn.p-open_contents.is-open a{
	color: #fff;
}

/*tab*/
.p-tabmenu li{
	width: 460px;
}
.p-tabmenu li:nth-of-type(1){
	box-shadow: -4px 0 4px -4px rgba(0,0,0,0.12);
}
.p-tabmenu li:nth-of-type(2){
	box-shadow: 4px 0 4px -4px rgba(0,0,0,0.22);
}
.p-tabmenu .p-tabmenu__tab{
	font-size: 1.125rem;
	padding: 1.1875rem 0 1.25rem;
}
/*for IE11 Bug*/
@media all and (-ms-high-contrast:none){ /* IE11 */
  *::-ms-backdrop, .p-tabmenu .p-tabmenu__tab {
		padding: 1.25rem 0 1.5rem;
	}
}

.p-tabmenu li .large{
	font-size: 1.625rem;
	display: inline-block;
	margin-right: 0.25rem;
}

/*for Tab Key Focus*/
.p-tabmenu li a,
.p-open_contents a{
	outline: none;
}
.p-tabmenu li a:focus{
	background-color: #C9CED4;
}
.p-open_contents.is-focusin a:before{
	border-width: 2px;
	opacity: 1;
}
/**/

/*tab_body*/
.p-tab_body{
	padding: 2.5rem 0 0rem;
	background-color: #fff;
}

/*heading*/
h2.p-project_heading{
	color: #818C9A;
	font-weight: 300;
}
h2.p-news__heading{
	text-align: center;
	font-size: 1.875rem;
	font-weight: 500;
	line-height: 1;
	padding: 2rem 0.5rem 0 0;
}

/*p-project_area*/
.p-project_area{
	padding-bottom: 1.5rem;
}

/*p-project_portal*/
.p-project_portal{
	height: 100%;
}
.p-project_portal .p-thumb_link.c-vertical .p-thumb_link__img{
	flex: 1 0 auto;
	background-color: #f0f0f0;
	position: relative;
}
.p-project_portal .p-thumb_link.c-vertical .p-thumb_link__txt{
	flex: 0 0 auto;
}
.p-project_portal_photo {
	height: 100%;
	padding-bottom: 75%;
}
.p-project_portal_photo li{
	width:100%;
	height: 100%;
	position: absolute;
	top:0px; left: 0px;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size:cover;
}

.p-index_body .c-bn_btn h3.p-project_portal__title{
	/*font-size: 2.125rem;*/
	font-size: 1.9375rem;
	font-weight: 600;
	border-bottom: #E6002D 1px solid;
	padding:0.375rem 2.5rem 0.875rem;
	line-height: 1;
}

.p-project_portal__en{
	font-size: 0.9375rem;
	padding: 0.5rem 0 0rem;
	letter-spacing: 0.04em;
}

/*for IE11 Bug*/
@media all and (-ms-high-contrast:none){ /* IE11 */
  *::-ms-backdrop, .p-index_body .c-bn_btn h3.p-project_portal__title {
		padding:0.4375rem 2.5rem 0.75rem;
	}
}

/*p-figSlide*/
.p-figSlide{
	position: relative;
}
.p-figSlide li{
	opacity: 0;
	transition: all 1.5s;
}
.p-figSlide li.is-now{
	opacity: 1;
}

/*p-siterepo*/
.p-siterepo{}
h3.p-siterepo__heading{
	font-size: 1.625rem;
	line-height: 1;
	padding: 1.5rem 0;
	text-align: center;
	border-bottom: #C0C5CC 1px solid;
}
.p-logo_the_site{
	margin: -6px 10px -6px -6px;
}
.p-siterepo__list li{
	display: flex;
	justify-content: space-between;
	padding: 1rem 1.875rem;
	border-bottom: #C0C5CC 1px solid;
}
.p-siterepo__list .thumb{
	flex: 0 0 auto;
	width: 90px;
	margin-right: 20px;
}
.p-siterepo__list .txt{
	flex: 1 0 auto;
	width: calc(100% - 110px);
	line-height: 1.5;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.p-siterepo__list h4{
	font-size: 1rem;
	font-weight: 500;
}
.p-siterepo__list h4 a{
	text-decoration: none;
	color: #212121;
}
.p-siterepo__list .vol{
	font-size: 0.875rem;
	color: #868b91;
	line-height: 1;
}
.p-siterepo .p-goto_index{
	padding: 1.25rem 0 1.5rem;
}

/*p-news_area*/
.p-news_area{
	border-bottom: #C0C5CC 1px solid;
	margin-bottom: 1.25rem;
}

/*p-news_bn__title*/
.p-news_bn__title{
	position: absolute;
	bottom:0px; left: 0px;
	width: 100%;
	background-color: rgba(0,0,0,0.75);
	padding: 0.4375rem 1.125rem 0.4375rem;
	color: #fff;
}
.p-news_bn__title img.link_icon{
	width: auto;
	vertical-align:middle;
	margin-bottom: 0.5em;
}


/*===============sp==================*/

.sp .p-tabmenu .p-tabmenu__tab{
	font-size: 0.9375rem;
}
.sp .p-tabmenu li .large{
	font-size: 1.25rem;
}

/*p-tech_index*/
.sp .p-tech_index .p-thumb_link__txt {
	padding: 0.875rem 1rem 1.125rem;
	min-height: inherit;
}
.sp .p-tech_index .p-thumb_link__img::after{
	top:auto;
	bottom: 1.4375rem;
	margin-top: 0px;
}
.sp .p-open_contents.is-open .p-thumb_link__img::after{
	bottom: 1.625rem;
	margin-top: 0px;
}
.sp .p-tech_index .p-thumb_link__img.p-portal_link::after{
	margin-top: 0px;
	bottom: 1.375rem;
}

/*project_portal__title*/
.sp .p-index_body .c-bn_btn h3.p-project_portal__title{
	font-size: 1.875rem;
}

/*siterepo__heading*/
.sp h3.p-siterepo__heading{
	font-size: 1.5rem;
}

/*news_area*/
.sp h2.p-news__heading{
	font-size: 1.5rem;
}

.sp .swiper-slide{
	display: flex;
	flex-direction: column-reverse;
	justify-content: flex-end;
}
.sp .p-news_bn__title{
	position: static;
	color: #212121;
	font-size: 0.8125rem;
	line-height: 1.5;
	background-color: #fff;
	padding: 0.5rem 0 0;
}
/*swiper*/
.sp .swiper-button-next,
.sp .swiper-button-prev{
	/*display: none;*/
}

@media screen and (max-width: 1200px){
	.sp .swiper-button-next,
	.sp .swiper-button-prev{
		width: 30px;
		height: 36px;
		top: 50%;
		margin-top: -36px;
		background-size: 10px 18px;
		background-image: url("/common/image/bn_arrow/arrow_right_m_wh.svg");
		background-color: rgba(55,93,148,0.9);
	}

	.sp .swiper-button-prev{
		left: -2%;
	}
	.sp .swiper-button-next{
		right: -2%;
	}
	.sp .swiper-button-prev:hover,
	.sp .swiper-button-next:hover{
		background-color: rgba(55,93,148,0.9);
	}
}

/*=p-tech_contents=*/
.sp .p-tech_bn .col{
	margin-left: auto;
	margin-right: auto;
}

.sp .p-tech_contents__close{
	display: block;
	text-align: center;
	padding-bottom: 1.75rem;
}
.sp .p-tech_contents__close a{
	display: inline-block;
	padding: 0.75rem 4rem 0.75rem;
	width: auto;
	text-align: center;
	text-decoration: none;
	line-height: 1;
	font-size: 0.875rem;
	font-weight: 500;
	border-radius: 4px;
	border: #e6e6e6 1px solid;
	position: relative;
	color: #fff;
}

.sp .p-tech_contents__wrap{
	margin: 0 0 1rem;
}
.sp .p-tech_contents__wrap .inner{
	padding: 0 1.5rem;
}

.sp .p-tech_bn .col.p-no_open{
	margin-bottom: 2.875rem;
}

.sp .c-bn_btn.p-open_contents::after{
	border-width: 0px 18px 30px 18px;
	margin-left: -16px;
}
.sp .p-tech_contents .col{
	width: 100% !important;
	margin: 0;
}
.sp .p-tech_contents_area{
	margin: 0;
	display: none;
}
.sp .p-tech_contents__link.link li{
	font-size: 0.9375rem;
	background-position: 0 0.5em;
	margin: 0 0 0.4375rem;
}
.sp .p-tech_contents__sub_ctg{
	margin-top: 1.25rem;
}
/*project_portal_photo*/
.sp .p-project_portal_photo {
	padding-bottom: 100%;
}
.sp .p-project_area{
	padding-left: 3%;
	padding-right: 3%;
}


