 @charset "utf-8";

/*  tech_main.css　customize
----------------------------------------------------------
---------------------------------------------------------- */
/*  Heading
---------------------------------------------------------- */
div#body h1 {
	margin-right: 100px;
	padding-top: 35px;
	font-size: 2.25rem;
}
div#main h2 {
	text-align: center;
}
div#main.tech_body h2 {
	padding-top: 40px;
}
div#main.tech_body h2.mark {
	position: relative;
	text-align: left;
	background: none;
	padding: 50px 100px 0 140px;
	font-size: 1.75rem;
}
div#main.tech_body h2.mark::before{
	position: absolute;
	top: 59px;
	left: 100px;
	content: '';
	width: 26px;
	height: 26px;
	background: #618fcb;
}
div#main.tech_body h3.label{
	/* font-size: 1.3125rem; */
	position: relative;
	font-size: 1.4375rem;
	line-height: 1.2;
	margin: 30px 100px;
	padding: 12px 20px 10px 15px;
	width: 920px;
	/* border: none; */
	border-left: solid 5px #0B5AA5;
	border-radius: 3px;
	background: #efefef;
}
div#main.tech_body h3.label .subtxt{
	font-weight: normal;
	font-size: 0.82rem;
	letter-spacing: 0.01em;
}
div#main.tech_body h3.label .icon_target{
	position: absolute;
	top: 23px;
	right: 20px;
	padding: 8px 33px 8px 12px;
	font-size: 0.875rem;
	letter-spacing: 0.01em;
	background: #0B5AA5;
	border-radius: 5px;
	color: #fff;
}
div#main.tech_body h3.label.line1 .icon_target{
	top: 9px;
}
/* 　向け */
div#main.tech_body h3.label .icon_target::after {
	position: absolute;
	content: "向け";
	top: 1px;
	right: 0;
	padding: 10px;
	color: #FFF;
	font-size: 0.625rem;
}
div#main h4.mark {
	position: relative;
	padding-left: 25px;
}
div#main h4.mark::before{
	position: absolute;
	top: 6px;
	left: 0px;
	content: '';
	width: 17px;
	height: 17px;
	background: #0B5AA5;
}
div#main h5.num {
	font-size: 1.09375rem;
	font-weight: bold;
	/* border-bottom: dotted 1px #0B5AA5; */
	margin-bottom: 2px;
	color: #0B5AA5;
	text-indent: -1.5em;
	padding-left: 1.5em;
}
div#main p.caption {
	margin-bottom: 30px;
	font-size: 0.875rem;
}

/*link_anchor*/
div#main div.link_anchor {
	margin: 50px 0;
	padding: 0;
	border: none;
	background:#ededed;
}
div#main div.link_anchor div.section{
	padding-top: 25px;
	padding-bottom: 25px;
	background: none;
}
div#main div.link_anchor div.section h4{
	text-align: center;
	font-size: 1.4375rem;
	margin-bottom: 25px;
}
div#main div.link_anchor ul{
	margin-bottom: 25px;
}
div#main div.link_anchor ul li{
	float: left;
	position: relative;
	width: 306px;
	height: 80px;
	margin-right: 21px;
	padding: 0;
	/* font-size: 1rem; */
	/* font-size: 0.96875rem; */
	font-size: 0.9375rem;
	line-height: 1.5;
	font-weight: bold;
	background: #fff;
}
div#main div.link_anchor ul li:last-child{
	margin-right: 0;
}
div#main div.link_anchor ul li a {
	white-space: normal;
	text-decoration: none;
	color: #1d3994;
}
.scale-box {
	width: 80px; /*ボックスの幅*/
	height: 80px; /*ボックスの高さ*/
	overflow: hidden; /*画像拡大時にはみ出た部分を隠す*/
}
.scale-box img.scale-img {
	width: 80px; /*画像の幅*/
	height: 80px; /*画像の高さ*/
	transition-duration: .5s; /*変化の時間*/
}
.scale-box img.scale-img:hover {
	transform: scale(1.2,1.2); /*画像の拡大*/
	cursor: pointer; /*カーソルをポインターにする*/
}
.link_anchor .arrow{
	position: absolute;
	top: 9px;
	left: 90px;
	width: 180px;
	padding-left: 19px;
	/* display: inline-block; */
	vertical-align: middle;
	line-height: 1.45;
}
.link_anchor .arrow:hover{
	text-decoration: underline;
	cursor: pointer;
}
.link_anchor .arrow::before,
.link_anchor .arrow::after{
    position: absolute;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.link_anchor .arrow::before{
	top: 3px;
    left: 0px;
    box-sizing: border-box;
    width: 13px;
    height: 13px;
    background: #E6002D;
}
.link_anchor .arrow::after{
	top: 5px;
    left: 4px;
    width: 4px;
    height: 4px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}


/*  page_title
---------------------------------------------------------- */
#page_title {
}
#page_title h1{
	position: static;
	text-align: center;
}

div#main .tm {
	margin-bottom: 1.2em !important;
}
div#main .tm_2 {
	margin-bottom: 2.4em !important;
}

div#main p.caption {
	/* text-align: center; */
}

/*  page_bottom
---------------------------------------------------------- */
.page_bottom{
	border-left: #b5c1d0 solid 1px;
	border-right: #b5c1d0 solid 1px;
	border-radius: 0 0 5px 5px;
	margin-bottom: 25px;
}
.page_bottom .bnav_pager{
	position: relative;
	border-top: 1px solid #ccc;
	width: 960px;
	margin: 20px auto 0;
	padding-top: 22px;
	height: 66px;
}

/*前後ボタン*/
.bnav_pager ul li{
	position:absolute;
	width: 110px;
	/* font-size: 0.85em; */
}
.bnav_pager ul li.prev{	left: 362px;}
.bnav_pager ul li.next{	left: 488px;}

.bnav_pager ul li a,
.bnav_pager ul li.no_link{
	display: block;
	color:#343634;
	text-decoration:none;
	text-align: center;
	line-height: 3;
	border:#2c4066 1px solid;
	border-radius:4px;
	background-color:#fff;
	font-size: 0.875rem;
}
.bnav_pager ul li.prev a{
	padding-left: 5px;
}
.bnav_pager ul li.next a{
	padding-right: 5px;
}

.bnav_pager ul li a:hover{
	background-color: #d2d9e8;
}

.bnav_pager ul li.prev a::before,
.bnav_pager ul li.prev a::after,
.bnav_pager ul li.next a::before,
.bnav_pager ul li.next a::after,
.bnav_pager ul li.no_link::before,
.bnav_pager ul li.no_link::after{
	position: absolute;
	content: "";
	vertical-align: middle;
}
.bnav_pager ul li.prev a::before,
.bnav_pager ul li.prev.no_link::before{
	left: 9px;
	top: 20px;
	width: 11px;
	height: 2px;
	background: #1C418D;
}
.bnav_pager ul li.prev a::after,
.bnav_pager ul li.prev.no_link::after{
	left: 9px;
	top: 16px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #1C418D;
	border-right: 2px solid #1C418D;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}

.bnav_pager ul li.next a::before,
.bnav_pager ul li.next.no_link::before{
	left: 90px;
	top: 20px;
	width: 11px;
	height: 2px;
	background: #1C418D;
}
.bnav_pager ul li.next a::after,
.bnav_pager ul li.next.no_link::after{
	left: 90px;
	top: 16px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #1C418D;
	border-right: 2px solid #1C418D;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.bnav_pager ul li.no_link{
	opacity: 0.5;
	background-color:#ededed;
}

/*お問い合わせ*/
.page_bottom .contact_area{
	background: #929FB2;
	height: 57px;
	padding-top: 37px;
	border-radius: 0 0 5px 5px;
}
.page_bottom .contact_area .btn_contact{
	float: none;
	margin-left: 500px;
}
.page_bottom .contact_area .btn_contact a{
	display: inline;
	padding: 12px 30px;
	text-align:center;
	font-size: 1rem;
	width: auto;
	margin: 0;
	border:#2c4066 2px solid;
	background: #fff;
}
.page_bottom .contact_area .btn_contact a:hover{
	background: #1C418D;
	border:#2c4066 2px solid;
	color: #fff;
}
/* ----------------------------------------------------------
tech_main.css　customize ここまで
---------------------------------------------------------- */


/*  tech_title
---------------------------------------------------------- */
.tech_title{
	margin: 50px 0 0;
	padding-bottom: 5px;
	background:#2C4066;
	border-radius: 3px;
}

.tech_title h2{
	margin:0 !important;
	padding:8px 18px 0 !important;
	color:#FFFFFF !important;
	border:none !important;
	font-size:192% !important;
}

.link_anchor .icon{
	margin-left: 5px;
	vertical-align: -0.15em;
}


/*  carousel_menu
---------------------------------------------------------- */
div.carousel_menu {
	margin: 0;
	clear:both;
	background:#ededed url(/tech/image_v2/tech_common/bg_anchor_menu.png) repeat-x left top;
	border-bottom:#A8B6C8 1px solid;
	position:relative;
	padding: 10px 89px 10px;
	width: 980px;
	height: 90px;
}

div.carousel_menu ul{
	width: 965px;
	float: left;
}

div.carousel_menu ul li{
	float:left;
	width: 182px;
	margin-right: 11px;
	background-color:#FFFFFF;
}
.carousel_view {
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.carousel_inner {
	margin-left: 13px;
}

.carousel_menu .carousel_btn li{
	position:absolute;
	top: 0px;
	width: 89px;
	height: 110px;
	background:url(/tech/image_v2/tech_common/bg_carousel_btn.png) no-repeat left top;
}
.carousel_menu .carousel_btn li.prev{
	left:0px;
}
.carousel_menu .carousel_btn li.next{
	left: 1069px;
}
.carousel_menu .carousel_btn li img{
	cursor:pointer;
	display:none;
}

.carousel_btm{
	margin-top:40px;
}

#page_title {
	/* border-bottom: none;*/ /* carousel_menuない場合は非表示に*/
}

/*  contents
---------------------------------------------------------- */
.lead{
	font-size: 1.25rem;
	font-weight: bold;
	margin: 30px 0 20px;
}

.table dl {
	width: 960px;
	border-bottom: #ccc 1px solid;
	background-color: #e4e4e4;
}
.table dl dt, .table dl dd {
	box-sizing: border-box;
}
.table dl dt {
	float: left;
	width: 240px;
	padding: 0.5em 0 0.5em 2%;
	border-top: #ccc 1px solid;
	font-weight: bold;
}
.table dl dd {
	width: 720px;
	margin: 0 0 0 240px;
	padding: 0.5em 1em 0.5em 2%;
	border-top: #ccc 1px solid;
	background-color: #fff;
}

/*---------------------------------------------------------- */
/*  個別custumize
---------------------------------------------------------- */
/* #introduction */
#introduction h2.first{
	margin-bottom: 40px !important;
}
#introduction .section.col3.variety .col{
	width: 300px;
}
#introduction .section.col3.variety .col.l{
	margin-right: 30px;
}
#introduction h3.seismic_struct{
	border-top: solid 7px #8c6239;
	padding-top: 5px;
}
#introduction h3.str_ctrl{
	border-top: solid 7px #007ac3;
	padding-top: 5px;
}
#introduction h3.base_iso{
	border-top: solid 7px #009683;
	padding-top: 5px;
}
#introduction .seismic_struct{
	color: #8c6239;
}
#introduction .str_ctrl{
	color: #007ac3;
}
#introduction .base_iso{
	color: #009683;
}

#introduction .yure{
	text-align: center;
	border:solid 1px #ccc;
	box-sizing:border-box;
}
#introduction .yure.length{
	padding-top: 15px;
	padding-bottom: 15px;
}
#introduction .yure img{
	width: 160px;
	height: 210px;
}
#introduction video{
	border:solid 1px #ccc;
	box-sizing:border-box;
}

/* #str_ctrl */
#str_ctrl #video3,
#str_ctrl #video4{
	width: 720px;
	height: 406px;
}

/* #history */
.chronology{
	margin-top: 25px;
}


/*  menu ancherlink 調整
---------------------------------------------------------- */
#history div#main h4.mark{
	margin-top: -50px;
	padding-top: 50px;
}
#history div#main h4.mark::before{
	top: 56px;
}
#str_ctrl div#main.tech_body .h3_label,
#base_iso div#main.tech_body .h3_label{
	margin-top: -13px;
	padding-top: 13px;
}

#history div#main.tech_body div.section.pt10{
	padding-top: 10px;
}

/*********************************************************
		=Clearfix
---------------------------------------------------------- */
*:after {
	display:block;
	clear:both;} /* この記述は固定です */
  
  .clearfix:after,
  h4.mark:after {content:"";}
  /* End_clearfix */


@media print {
	div.carousel_menu {
		display:none;
	}
}


