@charset "utf-8";
@import url(reset.css);

body{
	min-width: 1070px;
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif!important;
}
@media print, screen and (max-width: 640px) {
	body{ min-width: inherit}
}
a{
	transition: .3s all ease;
	text-decoration: none;
}
a:hover{
	opacity: 0.7;
}
header{
	position: fixed;
	top:0;
	left: 0;
	width: 100%;
	z-index: 9999;
}
.header__logo{
	display: block;
	width: 204px;
	height: 57px;
	background-image: url(../img/logo_wh.png);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: cover;
	transition: .3s all ease;
	text-indent: -99999px;
	overflow: hidden;
}
header.is-scroll .header__logo,
header.is-open .header__logo{
	background-image: url(../img/logo.png);
	background-position: left top;
	background-repeat: no-repeat;
}
@media print, screen and (max-width: 640px) {
	.header__logo{
		width: 132.5px;
		height: 37px;
	}
}

.header__wrap{
	position: relative;
	height: 100px;
	width: 100%;
	z-index: 1;
	transition: .3s all ease;
}
header.is-scroll .header__wrap,
header.is-open .header__wrap{
	background: #fff;
}
.header__inner{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 100px;
	max-width: 1070px;
	margin: 0 auto;
}
@media print, screen and (max-width: 640px) {
	.header__wrap,
	.header__inner{
		height: 60px;
	}
	.header__inner{
		width: 90%;
	}
}
.header__btn-area{
	display: flex;
}
.header__btn-en{
	display: block;
	width: 44px;
	height: 44px;
	border: 1px solid #fff;
	box-sizing: border-box;
	border-radius: 50%;
	background-image: url(../img/btn_en.png);
	background-repeat: no-repeat;
	background-position: center center;
	margin-right: 20px;
	transition: .3s all ease;
}
header.is-scroll .header__btn-en,
header.is-open .header__btn-en{
	background-image: url(../img/btn_en_b.png);
	background-color: #e4effc;
	border: 1px solid #e4effc;
}
@media print, screen and (max-width: 640px) {
	.header__btn-en{
		width: 35px;
		height: 35px;
		background-size: 13px 8px; 
	}
}

.header__btn-menu{
	display: block;
	position: relative;
	width: 42px;
	height: 42px;
	background-image: url(../img/btn_menu.png);
	background-repeat: no-repeat;
	background-position: center bottom;
}
@media print, screen and (max-width: 640px) {
	.header__btn-menu{
		width: 33px;
		height: 33px;
	}
}
header.is-scroll .header__btn-menu{
	background-image: url(../img/btn_menu_b.png);
}
header.is-open .header__btn-menu{
	background-image: url(../img/btn_close.png);
}
@media print, screen and (max-width: 640px) {
	.header__btn-menu{ background-size: 30px 6px; }
	header.is-open .header__btn-menu{ background-size: 30px 9px; }
}
.header__btn-menu span,
.header__btn-menu:before,
.header__btn-menu:after{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	height: 1px;
	background: #fff;
	transition: .3s all ease;
}
.header__btn-menu:before{top: 10px}
.header__btn-menu:after{top: 20px}
@media print, screen and (max-width: 640px) {
	.header__btn-menu:before{top: 7px}
	.header__btn-menu:after{top: 14px}
}

header.is-scroll .header__btn-menu span,
header.is-scroll .header__btn-menu:before,
header.is-scroll .header__btn-menu:after{
	background: #1955ac;
}
header .header__menu .top__nav{
	display: none;
}
@media print, screen and (max-width: 640px) {
	header .header__menu .top__nav{
		display: block;
		visibility: visible;
		opacity: 1;
		transform: translateY(-132px);
		z-index: 0;
	}
	header.is-scroll .header__menu .top__nav{
		visibility: visible;
		opacity: 1;
		transform: translateY(0);
	}
}

header.is-open .header__btn-menu span,
header.is-open .header__btn-menu:before,
header.is-open .header__btn-menu:after{
	background: #1955ac;
}
header.is-open .header__btn-menu span{ opacity: 0; }
header.is-open .header__btn-menu:before{top: 10px; transform: translateX(-50%) rotate(-45deg);  }
header.is-open .header__btn-menu:after{top: 10px; transform: translateX(-50%) rotate(45deg); }

.header__menu{
	display: block;
	position: absolute;
	z-index: 0;
	background: #1955ac;
	width: 100%;
	visibility: hidden;
	opacity: 0;
	transform: translateY(-100px);
	transition: .3s all ease;
}
@media print, screen and (max-width: 640px) {
	.header__menu{
		transform: translateY(-220px);
	}
}
header.is-open .header__menu{
	visibility: visible;
	opacity: 1;
	transform: translateY(0);
}
header.is-scroll .header__menu{
	opacity: 1;
}
@media print, screen and (max-width: 640px) {
	header.is-scroll .header__menu{
		opacity: 0;
	}
	header.is-scroll.is-open .header__menu{
		opacity: 1;
	}
}
.header__menu ul.header__menu-list{
	position: relative;
	width: 100%;
	max-width: 1070px;
	margin: 0 auto;
	display: flex;
	z-index: 10;
}
.header__menu ul.header__menu-list li{
	position: relative;
	width: calc(100% / 3);
	box-sizing: border-box;
}
.header__menu ul.header__menu-list li a{
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-size: 18px;
	letter-spacing: 0.1em;
	color: #fff;
	height: 85px;
}
@media print, screen and (max-width: 640px) {
	.header__menu ul.header__menu-list{
		display: block;
	}
	.header__menu ul.header__menu-list li{
		width: 100%;
	}
	.header__menu ul.header__menu-list li a{
		background: #1955ac;
		height: 55px;
		border-bottom: 1px solid #4c6fb8;
	}
	.header__menu ul.header__menu-list li:nth-child(3) a,
	.header__menu ul.header__menu-list li:nth-child(4) a{
		border-bottom: none;
	}
}
.header__menu ul.header__menu-list li:before{
	content: "";
	display: block;
	position: absolute;
	height: 55px;
	width: 2px;
	background: #4c6fb8;
	top: 15px;
	left: 0;
}
.header__menu ul.header__menu-list li:last-child a{
	background: #0e2c61;
}
.header__menu ul.header__menu-list li:last-child:before{
	display: none;
}
.pc{ display: block;}
.sp{ display: none;}

@media print, screen and (max-width: 640px) {
	.pc{ display: none;}
	.sp{ display: block;}
}

@media print, screen and (max-width: 640px) {
	.breadcrumb{display: none}	
}
.breadcrumb ul{
	text-align: right;
	width: 1070px;
	margin: 10px auto 0;
	display: flex;
	justify-content: flex-end;
	font-size: 13px;
}
.breadcrumb ul li a{
	color: #666666;
	margin-right: 5px;
	display: flex;
	align-items: center;
}
.breadcrumb ul li a:after{
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3px 0 3px 6px;
	margin-left: 6px;
	border-color: transparent transparent transparent #0e5ec8;
}
/* ---------------------------------------- */
#contact {
	line-height: 1.6;
  color: #fff;
  background-color: #226FBF;
  padding: 50px 0; }
  @media screen and (max-width: 599px) {
    #contact {
      padding: 30px 0; } }
  #contact a {
    color: #fff; }
  @media screen and (max-width: 599px) {
    #contact .image img {
      height: 50px;
      width: auto; } }
  @media screen and (min-width: 600px) {
    #contact .col-sm-4,
    #contact .col-sm-6 {
      border-right: solid 2px #4E8BCB; } }
  #contact .col-sm-4:last-child,
  #contact .col-sm-6:last-child {
    border-right: none; }
    @media screen and (max-width: 599px) {
      #contact .col-sm-4:last-child .pd,
      #contact .col-sm-6:last-child .pd {
        border-bottom: none;
        margin-bottom: 0;
        padding-bottom: 0; } }
  @media screen and (max-width: 599px) {
    #contact .pd {
      border-bottom: solid 2px #4E8BCB;
      margin-bottom: 20px;
      padding-bottom: 20px; } }
  @media screen and (min-width: 600px) {
    #contact .pd {
      padding: 0 15px; } }
.center {
    text-align: center;
}
/* ---------------------------------------- */
#site-footer {
    background-color: #000000;
    color: #ffffff;
}
#site-footer .copyright {
    font-family: "Roboto Condensed",sans-serif;
    letter-spacing: .08em;
    text-align: center;
}
#site-footer .copyright .pc{
	display: inline-block;
}
@media only screen and (min-width: 768px){
	#site-footer .copyright {
	    padding: 30px 0;
	    font-size: 10px;
	}
}
@media only screen and (max-width: 767px){
	#site-footer .copyright .pc{
		display: none;
	}
	#site-footer .copyright {
	    padding: 8vw 0;
	    font-size: 10px;
	}
}

/* ---------------------------------------- */
#pagetop {
	position: fixed;
	z-index: 999;
	width: 40px;
	height: 40px;
	right: 30px;
	cursor: pointer;
	bottom: -50px;
	transition: .3s all ease;
}
#pagetop a:hover {
	opacity: 1 !important;
}
#pagetop.is-show{
	bottom: 70px;
}
@media screen and (max-width: 640px) {
	#pagetop.is-show{
		bottom: 30px;
		right: 30px;
	}
}
/* ---------------------------------------- */
#fixedbtn {
	position: fixed;
	z-index: 9999;
	width: 50px;
	height: 300px;
	top: 50%;
	right: 0;
	margin-top: -150px;
	background-color: #fff;
	border-top: solid 1px #649AD2;
	border-left: solid 1px #649AD2;
	border-bottom: solid 1px #649AD2;
}
@media screen and (max-width: 991px) {
	#fixedbtn { display: none; }
}
  #fixedbtn div a {
/*     display: block; */
    width: 50px;
    height: 150px;
    background-repeat: no-repeat;
    background-position: center center;
    background-color: #226FBF;
/*     text-indent: -999em; */

	display: flex;
	justify-content: center;
	align-items: center;
	writing-mode: vertical-rl;
	color: #fff;
	letter-spacing: 0.1em;
	text-decoration: none;
}

#fixedbtn.jp div.contact a {
/* 	background-image: url(../img/txt_contact.svg); */
	border-bottom: solid 1px #649AD2;
}

#fixedbtn.jp div.catalog a {
/* 	background-image: url(../img/txt_catalog.svg); */
	border-bottom: solid 1px #649AD2;
}

#fixedbtn.en {
  height: 150px;
  margin-top: -75px; }
  #fixedbtn.en div.contact a {
    background-image: url(../../en/asset/img/txt_contact.svg);
    border-bottom: solid 1px #649AD2; }
  #fixedbtn.en div.catalog {
    display: none;
}