@charset "UTF-8";
@-ms-viewport {
    width: device-width;
}

ul,ol,dl {
    list-style: none;
}

/* 上部ナビゲーション */
/* 上段ナビ全体設定 foundation 上書き修正 */

nav.tab-bar {
     height: 90px;
}
nav.tab-bar h1.title {
     display: block;
     float: left;
     line-height: 1.2;
     text-align: left;
     padding-top: 3px;
}
nav.tab-bar h1.title.jn-title {
     line-height: 45px;
     text-align: left;
     padding-top: 3px;
}
nav.tab-bar h1.title.en-title {
     line-height: 1.2;
     text-align: left;
     padding-top: 5px;
}
h1.title a {
     color: #fff;
}
nav.tab-bar .header-title h3 {
     display: none;
}
/* ２列目 */
.g-second {
    height: 45px;
    position: absolute;
    padding-top: 45px;
    top: 45px;
    left: 0px;
    overflow: hidden;
}

/* ハンバーガーメニューとグローバルナビ*/
/* １行目右ボタン左ボタン foundation 上書き修正 */
section.right-small {
    background-color: #f29510;
    border-left: solid 1px #999;
    box-shadow: -1px 0 0 #666;
}
section.left-small {
    background-color: #6bbaeb;
    border-right: solid 1px #005bbb;
    box-shadow: 1px 0 0 #193061;
}
a.menu-icon.page-menu {
    text-indent: 0rem;
    font-size: 12px;
    line-height: 1;
    padding: 0.5rem 0.2rem 0.2rem;
    text-align: center;
    color: #fff;
    font-weight: bold;
    text-shadow: 0px 1px 0px #222;
}
a.menu-icon.en-menu {
    text-indent: 0rem;
    font-size: 12px;
    line-height: 1;
    padding: 0.2rem 0.1rem 0.2rem;
    text-align: center;
    color: #222;
    font-weight: bold;
    text-shadow: 0px 1px 0px #f2f2f2;
}
a.menu-icon.en-menu h6 {  
    margin: 0;
    padding: 0;
    font-size: 18px;
    line-height: 1.2;
    color: #222;
}
a.menu-icon.page-menu h5 {  
    margin: 0;
    padding: 0rem;
    font-size: 14px;
    line-height: 1.2;
    color: #fff;
}

/* 右色変えオフキャンバスナビゲーション  へ.change1のクラスを付加*/
/* English Menu 全体設定 foundation 上書き修正 */
.change1 {
    background: #f2f2f2;
}
.change1 ul.off-canvas-list li a,.change1 ul.off-canvas-list li .no-link {
    color: #222222;
    border-bottom: solid 1px #f29519;
}
.change1 ul.off-canvas-list li label {
    padding: 0.3rem 0.9375rem;
    color: #fff;
    background: #f29519;
    border-top: none;
    border-bottom: none;
    margin: 0;
    text-shadow: 0px 1px 0px #222;
}
.change1 ul.off-canvas-list li label a {
    color: #fff;
    border-bottom: none;
}
.change2 ul.off-canvas-list li label {
    padding: 0.3rem 0.9375rem;
    color: #fff;
    background: #6bbaeb;
    border-top: none;
    border-bottom: none;
    margin: 0;
    text-shadow: 0px 1px 0px #222;
}
.change2 ul.off-canvas-list li label a {
    color: #fff;
    border-bottom: none;
}

/* ２行目ラベル仕様ハンバーガーグローバル開閉ナビ */
.g_check {/* チェックボックスを隠す */
  display: none;
}
.g_wrap {
	position :absolute;
	top :45px;
	right :0;
	width :100%;
	padding :10px;
	background :blue;
}
 
 
/* ▽▽メニューボタン▽▽ */
input[type="checkbox"] + label.g_btn {
	position: relative;
    margin-right: 0.5rem;
	width: 30px;
	height: 30px;
	cursor: pointer;
	display: block;
	float: right;
    margin-top: 53px;
    margin-bottom: 7px;
	z-index: 2;
}
.g_btn::before {
	-webkit-box-shadow: #fff 0 12px 0;
	box-shadow: #fff 0 12px 0;
}
.g_btn::after {
	bottom: 0;
}
.g_btn::before,
.g_btn::after {
	width: 30px;
	height: 6px;
	background: #fff;
	display: block;
	content: '';
	position: absolute;
	-webkit-transition: -webkit-box-shadow 0.2s linear, -webkit-transform 0.2s 0.2s;
	transition: box-shadow 0.2s linear, transform 0.2s 0.2s;
}
/* △△メニューボタン△△ */
 
ul.g_menu_wrap {
	width :100%;
    padding: 0 1rem;
	height :0;
	background-color: rgba(0,91,187,0.8);
    float: left;
    margin: 0;
    overflow: hidden;
    text-align: left;
    box-shadow:0px 1px 2px #222;
}
ul.g_menu_wrap li {
    display: inline-block;
    padding: 0.5rem 0.5rem 0.5rem 0rem;
}
ul.g_menu_wrap li a {
    color: #fff;
}
ul.g_menu_wrap li::before {
    content: "|";
    color: #fff;
    display: inline-block;
    padding-right: 0.7rem;
}
ul.g_menu_wrap li:first-child::before {
    content: " ";
    padding: 0.5rem 0rem;
}
 
/* ▽▽開閉時のアニメーション▽▽ */

.g_check:checked ~ .g_btn::before {
	-webkit-box-shadow: transparent 0 0 0;
	box-shadow: transparent 0 0 0;
	-webkit-transform: rotate(45deg) translate3d(6px, 11px, 0);
	transform: rotate(45deg) translate3d(6px, 11px, 0);
}
.g_check:checked ~ .g_btn::after {
	-webkit-transform: rotate(-45deg) translate3d(6px, -11px, 0);
	transform: rotate(-45deg) translate3d(6px, -11px, 0);
}
.g_check:checked ~ .g_menu_wrap {
	height: auto;
    border-top: solid 1px #fff;
}
 
/* △△開閉時のアニメーション△△ */
/* 研究所一覧表記 */
.g-text {
    display: block;
    position: absolute;
    right: 45px;
    top: 0px;
}
.g-text p {
    color: #fff;
    text-align: right;
    margin-top: 11px;
    margin-bottom: 0;
}
.g-search {
    display: block;
    position: absolute;
    left: 5px;
    top: 0px;
}
input[type="text"].g-input {
    margin: 9px 5px 0rem 0px;
    padding: 0.25rem;
    height: 1.8rem;
    width: 200px;
}
.no-link {
    display: block;
    padding: 0.66667rem;
    color: rgba(255,255,255,0.7);
    border-bottom: 1px solid #262626;
}
.side-nav li.against a:not(.button) {
    color: #f29519;
}
ul.off-canvas-list li.against a {
    color: #f29519;
}
.quick-trans {
   position: fixed;
   bottom:10px;
   left: 10px;
   width: 50px;
   height: 50px;
z-index:1000;
}
.quick-trans a {
   display: block;
   width: 50px;
   height: 50px;
   border: solid 1px rgba(242,149,25,1);
   border-radius: 25px;
   background-color:rgba(242,149,25,0.6);
   color: #fff;
   text-align: center;
   font-weight: bold;
   text-shadow: 0px 1px 0px #222;
   box-shadow: 1px 1px 3px #666;
   line-height: 50px;
   font-size: 1.5rem;
}
.quick-trans a:hover {
   background-color:rgba(242,149,25,1);
   color: #fff;
}
.quick-only {
   position: fixed;
   bottom:10px;
   left: 10px;
   width: 50px;
   height: 50px;
z-index:1000;
  border: solid 1px rgba(0,91,187,1);
   border-radius: 25px;
   background-color:rgba(0,91,187,0.6);
   color: #fff;
   text-align: center;
   font-weight: bold;
   text-shadow: 0px 1px 0px #222;
   box-shadow: 1px 1px 3px #666;
   line-height: 1.2;
   padding-top: 3px;
   font-size: 1rem;
}
/*上へ*/
.pagetop {
     position: fixed;
   bottom:10px;
   right: 10px;
   width: 50px;
   height: 50px;
   z-index:1000;
   display: none;
}
.pagetop a {
   display: block;
   width: 50px;
   height: 50px;
   border: solid 1px rgba(0,91,187,1);
   border-radius: 25px;
   background-color:rgba(0,91,187,0.6);
   color: #fff;
   text-align: center;
   font-weight: bold;
   box-shadow: 1px 1px 3px #666;
   padding-top:0px;
   font-size: 2.5rem;
   font-weight: bold;
   text-shadow: 0px 0px 2px #222,0px 0px 2px #222,0px 0px 2px #222,0px 0px 2px #222;
}
.pagetop a:hover {
   color: #fff;
   background-color:rgba(0,91,187,1);
}
.pagetop a:visited,.pagetop a:active {
   color: #fff;
}


/* =====  641以上　タブレット〜PC　min-width 641px, medium screens
========================================== */
@media only screen and (min-width: 40.063em) { 

nav.tab-bar h1.title {
     font-size: 1.2rem;
     line-height: 1.4rem;
     margin-top: 1rem;
     margin-left: -40px;
}
nav.tab-bar h1.title.en-title {
     line-height: 45px;
     text-align: left;
     padding-top: 3px;
}
nav.tab-bar .header-title h3 img {
    max-height: 42px;
}
.g-search {
    right: 0px;
}
label.g-label {
    float: right;
    margin-right: 165px;
}
/* 3カラム　左ページナビゲーション */
/* 左オフキャンバスと同じクラスの書き換え foundation 上書き修正 */
ul.side-nav {
margin: 0rem 0rem 0rem;
padding: 0;
border-top: solid 3px #193061;
}
ul.side-nav > li {
    background-color: #f2f2f2;
    margin: 0;
    position: relative;
}
ul.side-nav > li > ul.submenu li {
    background-color: #fff;
    margin: 0;
    position: relative;
}

.side-nav li a:not(.button) {
    color: #222;
}
.side-nav > li a:not(.button):hover {
    background-color: #6bbaeb;
    color: #fff;
}
.side-nav > li a:hover > ul.submenu li a:not(.button) {
    background-color: #fff;
    color: #222;
}
ul.side-nav > li a,ul.side-nav > li .no-link { 
    display: block;
    line-height: 1.25;
    color: #222;
    padding: 1rem 2rem;
    border-top: solid 1px #fff;
    border-bottom: solid 1px #ccc;
    font-size: 1em;
}
ul.side-nav > li > li a { 
    display: block;
    line-height: 1.25;
    color: #222;
    padding: 1rem 1rem;
    border-top: solid 1px #ededed;
    border-bottom: solid 1px #ccc;
    font-size: 1em;
}
ul.side-nav > li.has-submenu:after {
    content:"▼";
    position: absolute;
    right: 10px;
    top: 15px;
}
ul.side-nav > li.has-submenu > ul.left-submenu {
overflow: hidden;
margin: 0;
background-color: #fff;
}

ul.side-nav > li.has-submenu > ul.left-submenu {  
    display: none;

}

ul.left-submenu li {
    margin: 0;
}



}


/* =====  1025以上　PC　min-width 1025px, large screens
========================================== */
@media only screen and (min-width: 64.063em) {
nav.tab-bar h1.title {
     font-size: 1.4rem;
     line-height: 1.4rem;
     margin-top: 1.4rem;
     margin-left: 10px;
}
nav.tab-bar .header-title h3 {
     display: block;
     height: 42px;
     float: right;
     margin-right: 1rem;
     margin-top: 3px;
}




}

/* =====  1620以上　PC　min-width 1620px, larger screens
========================================== */
@media only screen and (min-width: 1620px) {

.off-canvas-wrap {
    width: 1620px;
    margin: 0 auto;
}
.header-contents {
    width: 1620px;
    margin: 0 auto;
}


}
