@charset "UTF-8";

/* ----------------------------------------------- CSS Information
 Style Info:     レイアウト
 Notes:          
--------------------------------------------------------------- */

/*
 * メイン
 * -------------------
*/

.pc-only{
display: block;
}

.sm-only{
display:none;
}


.main {
  position: relative;
  overflow: hidden;
  background: #fff;
}

.breadcrumbs {
    font-size: 1vw;
}

/*
 * ヘッダー
 * -------------------
*/

.header {
  position: relative;
    z-index: 1000;
    width: 100%;
    height: auto;
    margin: 0 auto 0;
    background: rgba(255, 255, 255, 1);


}

.header__logo {
width:89.5833%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: block;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  height: auto;
  margin: 0 auto;
  padding: 0 5.2083% 0;
}

.header__logoLink {
width: 8.8372%;
  display: inline-block;
  float: left;
}
.header__logoLink img{
width:100%;
}


.h-menu{
width:12.8488%;
float: left;
border-bottom: 1px solid #d4d4d4;
}
.h-menu img{
width:100%;
}

.h-menu#m01{

background-image:url("../img/shared/menu01.png");
background-size: cover;
background-repeat: no-repeat;
}

.h-menu#m02{

background-image:url("../img/shared/menu02.png");
background-size: cover;
background-repeat: no-repeat;
}

.h-menu#m03{


background-image:url("../img/shared/menu03.png");
background-size: cover;
background-repeat: no-repeat;
}

.h-menu#m04{

background-image:url("../img/shared/menu04.png");
background-size: cover;
background-repeat: no-repeat;
}

.h-menu#m05{

background-image:url("../img/shared/menu05.png");
background-size: cover;
background-repeat: no-repeat;
}

.h-menu#m06{

background-image:url("../img/shared/menu06.png");
background-size: cover;
background-repeat: no-repeat;
}

.h-menu p{
font-size:1.1vw;
color: #154f82;
line-height: 100%;
    padding-top: 32%;
text-align: center;
}

.h-menu a{
text-decoration: none;
}

 .h-menu a:hover p{
opacity:0.6;
text-decoration: none;
}

.h-serch{
width:14%;
float: right;
text-align: center;
margin: 1% 0;
}

/* グローバルナビ */

.globalNav{
width:5.2083%;
position: fixed;
z-index: 2000;
  outline: none;
  top: 0;
    left:0;
    background-color: #ffffff;
}

.globalNav__btn {

  width: 50%;
  height: 70px;
  margin: 0 25% 50%;
  border: none;
  background: transparent;
  -webkit-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}

.globalNav__btn:focus {
  outline: none;
}

.globalNav__btn > .__icon {
  display: block;
  position: absolute;
  top: 15%;
  left: 50%;
  width: 50%;
  height: 2px;
  opacity: 1;
  overflow: hidden;
  background: #3c3c3c;
  -webkit-transition: all .2s ease-out;
  -o-transition: all .2s ease-out;
  transition: all .2s ease-out;
}

.globalNav__btn > .__icon:nth-child(1) {
  -webkit-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
}

.globalNav__btn > .__icon:nth-child(2) {
  -webkit-transform: translateY(-15px) translateX(-50%);
  -ms-transform: translateY(-15px) translateX(-50%);
  transform: translateY(-15px) translateX(-50%);
}

.globalNav__btn > .__icon:nth-child(3) {
  -webkit-transform: translateY(12px) translateX(-50%);
  -ms-transform: translateY(12px) translateX(-50%);
  transform: translateY(12px) translateX(-50%);
}

.globalNav__btn.is-active > .__icon:nth-child(1) {
  -webkit-transform: translateY(0) translateX(-50%) rotate(45deg);
  -ms-transform: translateY(0) translateX(-50%) rotate(45deg);
  transform: translateY(0) translateX(-50%) rotate(45deg);
}

.globalNav__btn.is-active > .__icon:nth-child(2) {
  -webkit-transform: translateY(0) translateX(-50%) rotate(-45deg);
  -ms-transform: translateY(0) translateX(-50%) rotate(-45deg);
  transform: translateY(0) translateX(-50%) rotate(-45deg);
}

.globalNav__btn.is-active > .__icon:nth-child(3) {
  opacity: 0;
}

.globalNav__container {
  display: none;
  position: fixed;
  top: 70px;
  left: 0;
}

.globalNav__list {
  padding: 15px 25px;
  background: rgba(255, 255, 255, 0.9);
}

.globalNav__item > a {
  display: block;
  position: relative;
  padding: 5px 0;
  color: #3c3c3c;
  font-size: 1.7rem;
  font-weight: bold;
  text-decoration: none;
}

.globalNav__item > a:before {
  display: block;
  position: absolute;
  top: 50%;
  left: -15px;
  opacity: 0;
  width: 0;
  height: 1px;
  background: #3c3c3c;
  -webkit-transition: all .2s ease-out;
  -o-transition: all .2s ease-out;
  transition: all .2s ease-out;
  content: '';
}

.globalNav__item.is-disabled a {
  /* リンク無効 */
  pointer-events: none;
  color: #999;
}

.i-navi{
width:42%;
margin: 0 auto;
padding: 10% 0;
}

.i-navicon{
width:100%;
margin-bottom:70%;
}
.i-navicon img{
width:100%;
}


/*
 * フッター
 * -------------------
*/

.footer {
  position: relative;
  background: #fff;
}

.footer__upper {
  padding: 90px 0 25px;
}

.footer__pageTop {
  display: block;
  position: relative;
  top: 0;
  width: 31px;
  height: 0;
  overflow: hidden;
  margin: 0 auto;
  padding-top: 31px;
  border: 1px solid #3c3c3c;
  border-width: 1px 1px 0 0;
  -webkit-transition: all .2s ease-out;
  -o-transition: all .2s ease-out;
  transition: all .2s ease-out;
  -webkit-transform: rotate(-45deg) scale(1);
  -ms-transform: rotate(-45deg) scale(1);
  transform: rotate(-45deg) scale(1);
}

.footer__pageTop:hover {
  top: -10px;
  -webkit-transform: rotate(-45deg) scale(0.8);
  -ms-transform: rotate(-45deg) scale(0.8);
  transform: rotate(-45deg) scale(0.8);
}

.footer__navList {
  list-style: none;
  max-width: 950px;
  margin: 0 auto 50px;
  padding: 0;
  text-align: center;
}

.footer__navItem > .__link {
  display: block;
  height: 106.66667px;
}

.footer__navItem > .__link img {
  width: auto;
  max-height: 100%;
}

.footer__lower {
  padding: 30px 15px;
    background: #d4d4d4;
    font-size: 1.5rem;
    text-align: left;
    position: relative;
}

.f-kabe{
position: absolute;
width:17.3958%;
right: 0;
top:20%;
}
.f-kabe img{
width:100%;
}

.foot-box{
margin-left:8.333%;
}

.footer__logo {
  font-size: 2vw;
}
.footer__logo img{
width:6%;
}

.f-name{
  font-size: 1.5vw;
}

.footer__address {
  margin-bottom: 0;
  line-height: 170%;
  font-size: 1.2vw;
}

.f-navi{
font-size:1.2vw;
line-height: 170%;
margin: 3% 0;
}

.f-navi a{
color:#000000;
text-decoration: none;
}

.f-navi a:hover{
opacity: 0.6;
}

.country-selector {
    z-index: 9999;
    text-align: left;
    position: relative;
    display: inline-block;
    width: auto;
    font-size: 1vw;
}


/*****　サイドメニュー　　******/
.side-menu-box .widget
h3 {
    display: block;
    font-size: 1.3vw;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
    line-height: 170%;
    border-bottom: 1px solid #000000;
    text-align: center;
}

.side-menu-box .widget .box-content{
margin-bottom: 30%;
}

.side-menu-box .widget .box-content ul{
list-style: none;
padding: 0;
}

.side-menu-box .widget .box-content li{
text-align: left;
font-size: 1vw;
line-height: 170%;
}


/**************検索窓***********************************/

.gsc-control-cse {
    padding: 3% !important;
}

table.gsc-search-box td.gsc-input {
    padding-right: 0 !important;
    width: 80% !important;
}

.gsc-input-box {
    border: 1px solid #000000 !important;
    background: #fff;
}

.gsc-search-button {
    margin-left: 0 !important;
}

table.gsc-search-box td.gsc-search-button {
    margin-left: 0 !important;
}

.gsc-search-button-v2 {
    font-size: 0;
    padding: 7px 6px !important;
    width: auto;
    vertical-align: middle;
    border: 1px solid #000 !important;
    border-radius: 0 !important;
    border-color: #000 !important;
    background-color: #d4d4d4 !important;
  /*  background-image: linear-gradient(top, #4d90fe, #4787ed);*/
}


/* ========================================================================================================================================================================================
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　ipad
=========================================================================================================================================================================================== */
@media only screen and (max-width: 1024px) {
.h-menu p {
    font-size: 1.2vw;
    color: #154f82;
    line-height: 100%;
    padding-top: 32%;
    text-align: center;
}

.breadcrumbs {
    font-size: 1.2vw;
}

.footer__address {
    margin-bottom: 0;
    line-height: 170%;
    font-size: 1.4vw;
}

.f-navi {
    font-size: 1.4vw;
    line-height: 170%;
    margin: 3% 0;
}

.side-menu-box .widget h3 {
    display: block;
    font-size: 1.5vw;
    }
    
.side-menu-box .widget .box-content li {
    text-align: left;
    font-size: 1.4vw;
    line-height: 170%;
}    


}

/**********************************************************************************************************************************

スマホ

***********************************************************************************************************************************/

@media (max-width: 699px) {

.pc-only{
display:none;
}

.sm-only{
display: block;
}


  .header__logoImg {
    height: 28px;
  }
  
  
  .globalNav {
    width: 20%;
    position: fixed;
    z-index: 4000;
    background: none;
}

  .globalNav__btn:not(.is-active):hover .__icon:nth-child(2) {
    -webkit-transform: translateY(-15px) translateX(-50%);
    -ms-transform: translateY(-15px) translateX(-50%);
    transform: translateY(-15px) translateX(-50%);
  }

  .globalNav__btn:not(.is-active):hover .__icon:nth-child(3) {
    -webkit-transform: translateY(12px) translateX(-50%);
    -ms-transform: translateY(12px) translateX(-50%);
    transform: translateY(12px) translateX(-50%);
  }

  .globalNav__item > a:hover {
    color: #000;
  }

  .globalNav__item > a:hover:before {
    opacity: 1;
    width: 10px;
  }

  .globalNav__item.is-disabled a {
    color: #3c3c3c;
  }

  .globalNav__item.is-disabled a:hover {
    color: #000;
  }

  .globalNav__item.is-disabled a:hover:before {
    opacity: 0;
    width: 0;
  }

  .footer__upper {
    padding: 170px 0 50px;
  }

  .footer__navList {
    margin-bottom: 120px;
  }

  .footer__navItem > .__link {
    height: 160px;
  }

  .footer__navItem > .__link:hover {
    opacity: .5;
  }
  
.sm-headerlogo{
width:80%;
margin:0 0 0 20%;
background-color: #ffffff;
line-height: 140%;
font-size: 18px;
color: #000000;
    height: auto;
    padding: 10px 0;
}
  
.s-headlogo{
font-size: 14px;
}

.foot-box {
    margin-left: 0;
}

.footer__logo {
    font-size: 18px;
}

.f-name {
    font-size: 16px;
}
.footer__logo img {
    width: 15%;
}

.footer__address {
    margin-bottom: 0;
    line-height: 170%;
    font-size: 14px;
}

.f-navi {
    font-size: 14px;
    line-height: 170%;
    margin: 3% 0;
}

.side-menu-box .widget h3 {
    font-size: 16px;
    }
    
    .side-menu-box .widget .box-content li {
    text-align: left;
    font-size: 14px;
    line-height: 170%;
}
  
  
}