@charset "utf-8";
/*
	PC,SPで共通に使いまわすclass
*/
@font-face {
  font-family: 'icomoon';
  src:  url('/fonts/icomoon.eot?jd2qqs');
  src:  url('/fonts/icomoon.eot?jd2qqs#iefix') format('embedded-opentype'),
    url('/fonts/icomoon.ttf?jd2qqs') format('truetype'),
    url('/fonts/icomoon.woff?jd2qqs') format('woff'),
    url('/fonts/icomoon.svg?jd2qqs#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-home:before {
  content: "\e900";
}
.icon-spinner:before {
  content: "\e984";
}
.icon-search:before {
  content: "\e986";
}
.icon-warning:before {
  content: "\ea07";
}
.icon-arrow-up2:before {
  content: "\ea3a";
}
.icon-arrow-right2:before {
  content: "\ea3c";
}
.icon-arrow-down2:before {
  content: "\ea3e";
}
.icon-arrow-left2:before {
  content: "\ea40";
}
.icon-circle-up:before {
  content: "\ea41";
}
.icon-circle-right:before {
  content: "\ea42";
}
.icon-circle-down:before {
  content: "\ea43";
}
.icon-circle-left:before {
  content: "\ea44";
}
.icon-facebook:before {
  content: "\ea90";
}
.icon-instagram:before {
  content: "\ea92";
}
.icon-app-fd:before {
  content: "\e901";
}
.icon-arrow_down:before {
  content: "\e90b";
}
.icon-arrow_left:before {
  content: "\e90c";
}
.icon-arrow_right:before {
  content: "\e90d";
}
.icon-arrow_up:before {
  content: "\e90e";
}
.icon-cancel:before {
  content: "\e90f";
}
.icon-plus:before {
  content: "\e910";
}
.icon-minus:before {
  content: "\e911";
}
.icon-blank:before {
  content: "\e912";
}
.icon-login:before {
  content: "\e913";
}
.icon-pdf:before {
  content: "\e914";
}
.icon-tel:before {
  content: "\e915";
}
.icon-youtube:before {
  content: "\e916";
}
.icon-fax:before {
  content: "\e917";
}
.icon-arrpw_left_double:before {
  content: "\e918";
}
.icon-arrow_right_double:before {
  content: "\e919";
}

body{
	line-height: 1.7;
	font-size: 16px;
	color: #333;
}

.mb10 {margin-bottom: 8px !important;}
.mb20 {margin-bottom: 16px !important;}
.mb30 {margin-bottom: 24px !important;}
.mb40 {margin-bottom: 32px !important;}
.mb50 {margin-bottom: 40px !important;}
.mb60 {margin-bottom: 48px !important;}
.mt10 {margin-top: 8px !important;}
.mt20 {margin-top: 16px !important;}
.mt30 {margin-top: 24px !important;}
.mt40 {margin-top: 32px !important;}
.mt50 {margin-top: 40px !important;}
.mt60 {margin-top: 48px !important;}

input,button,textarea,select{
	margin: 0;
	padding: 0;
	background: none;
	border: solid 1px #eee;
	border-radius: 0;
	outline: none;
/*
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
*/
}

.row{max-width: 1028px;}



a {
  color: #e91371;
  text-decoration: none;
}
a:hover {color: #e91371; text-decoration: none;}

a:hover img {
opacity: .5;
-webkit-opacity: .5;
-moz-opacity: .5;
filter: alpha(opacity=50);	/* IE lt 8 */
-ms-filter: "alpha(opacity=50)"; /* IE 8 */
}
a img {
-webkit-transition: opacity 1s ease-out;
-moz-transition: opacity 1s ease-out;
-ms-transition: opacity 1s ease-out;
transition: opacity 1s ease-out;
}

hr {border: solid  #EEE;border-width: 1px 0 0 0;}

.left {float: left;}
.right {float: right;}
sup{
	font-size: 10px;
	vertical-align: top;
	position: relative;
	top: -0.3em;
}
.sup_{
	font-size: 10px;
	vertical-align: top;
	position: relative;
	top: 0.3em;
	color: #333 !important;
}
.clearfix:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0.1px;
  font-size: 0.1em;
  line-height: 0;
  clear: both;
}
.small{font-size: 12px;}
.sml{font-size: 12px !important;}

hr{margin: 60px 0;}

#loader-bg {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: rgba(255,255,255,0.8);
  z-index: 1;
}
#loader {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 200px;
  margin-top: -100px;
  margin-left: -100px;
  text-align: center;
  color: #fff;
  z-index: 2;
}

#loader i{
	color:#00a73c ;
}


.zero{
	font-size: 24px;
	color: #00a73c;
	font-family: "a-otf-ud-shin-go-pr6n",sans-serif;
	line-height: 120%;
}

.u_ib {
	display: inline-block;
}

/* --------------------------------------------------
  Header
--------------------------------------------------*/
  .header {
	width: 100%;
	z-index: 3;
	padding:0;
	background-color: rgba(1,46,79,0.9);
	position: relative;
			display: flex;
			align-items: center;
	}
  .header .logo {
    text-align: left;
    color: #fff; 
    padding-left: 24px ;
    }
  .header .logo img{
  	height: 48px;
	width: auto;
	}
  .header .header__heading {
    width: 100%;
    z-index: 3; }
	.header .header__heading ul{
	display: flex;
	justify-content: flex-end;
		margin-right: 110px;
	}
  .header .header__heading li{
	font-family:'游明朝','Yu Mincho','YuMincho','Hiragino Mincho ProN','HGS明朝E','メイリオ','Meiryo',serif;
	font-weight: bold;
	font-size: 16px;
	padding: 0 5px;
	}
 .header .header__heading li.contact-btn a{
	 text-align: center;
	 border: solid 1px #023256;
	 background: #fff;
	 line-height: 40px;
	 padding: 0;
	 color: #023256;
	 width: 170px;
	 border-radius: 20px;
	 margin-top: 25px;
	 position: relative;
}
 .header .header__heading li.contact-btn a img{
	 width: 20px;
	 height: auto;
	 position: absolute;
	 right: 10px;
	 top:18px;
	 transition: all 300ms 0s ease;
}
.header .header__heading li.contact-btn a:hover img{
	right: 5px;
	top:18px;
}

.header .header__heading li span{ font-size: 14px;}
.header .header__heading li a{
	color: #fff;
	padding:34px 8px;
	display: block;
	}
.header .header__heading li.icon a {
	padding: 34px 4px;
}
.header .header__heading li a i{font-size: 22px;}
.header .header__heading li a:hover{
	color: #02b7c2;
	cursor: pointer;
}
	.drawer-menu{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	}
	.drawer-menu li.large{width:100%; font-size: 18px;}
	.drawer-menu li.sns{width: 25%; text-align: center;}
	.drawer-menu li.small{width: 50%; color: #666;}
	.drawer-menu li a{
	display: block;
	position: relative;
	cursor: pointer;
	color: #fff;
	padding: 30px 50px;
	border-bottom: solid 1px #111;
	}
	.drawer-menu li:hover {
		background: #333;
	}
	.drawer-menu li a:hover{
	display: block;
	text-decoration: none;
	cursor: pointer;
	color: #eee;
	border-bottom: solid 1px #111;
	}
	.drawer-menu li.large a {
		position: relative;
	}
	.drawer-menu li.large a::before{
	content: "\e90d";
	font-family: 'icomoon';
	color: #fff;
	position: absolute;
	left: 2.4%;
	bottom: 50%;
	transform: translateY(50%);
	font-size: 0.6em;
	}
	.drawer-menu li.sns a i{ 
	font-size: 1.4rem;
	position: inherit;
	text-align: center;
	border: solid 1px #fff;
	width: 1.8em;
	line-height: 1.8em;
	border-radius: 1em;
	padding: 0.45em;
	}
	.drawer-menu li.large a i{ 
	font-size: 20px;
	position: absolute;
	left: 20px;
	top:32px;
	}
	.drawer-menu li.small a i{ 
	font-size: 20px;
	position: absolute;
	left: 20px;
	top:32px;
	}
	.drawer-menu li.logo{width: 100%; text-align: center;}
	.drawer-menu li.logo a img{
	height: 70px;
	width: auto;
	}

@media screen and (max-width: 1200px) {
 /* 768px以下用（タブレット） */
 .header{
	padding:16px 0 5px;
	}
 .header .logo{
    text-align: left;
    color: #fff; 
    padding-left: 16px ;
}
 .header .logo img{
  	height: 35px;
	width: auto;
	}
	.header .header__heading ul{
	display: none;
	}
	.drawer-menu{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	}
	.drawer-menu li.large{width:100%; font-size: 16px;}
	.drawer-menu li.sns{width: 25%;}
	.drawer-menu li.small{width: 50%; color: #666; line-height: 120%;}
	.drawer-menu li a{
	padding: 16px;
	display: block;
	position: relative;
	cursor: pointer;
	color: #fff;
	padding: 16px 24px;
	border-bottom: solid 1px #111;
	}
.drawer-menu li.large a::before{
	left: 8px;
	}

	.drawer-menu li.sns a i{ 
	font-size: 20px;
	position: inherit;
	text-align: center;
	border: solid 1px #fff;
	width: 40px;
	line-height: 40px;
	border-radius: 20px;
	}
	.drawer-menu li.large a i{ 
	font-size: 20px;
	position: absolute;
	left: 12px;
	top:18px;
	}
	.drawer-menu li.small a i{ 
	font-size: 20px;
	position: absolute;
	left: 12px;
	top:14px;
	}
	.drawer-menu li.logo{width: 100%; text-align: center;}
	.drawer-menu li.logo a img{
	height: 40px;
	width: auto;
	}
}

/* --------------------------------------------------
  contents
--------------------------------------------------*/
.contents-area{
	padding: 80px 0;
}
.bg_1 {
	background: #f5f3f7;
}
.inner_l{
	max-width: 1200px;
	margin: 0 auto;
}
.inner_s{
	max-width:1030px;
	margin: 0 auto;
}
.glay{background: #edf0f1;}
.contents-area h2{
	font-family: "acumin-pro";
	font-size: 42px;
	text-align: left;
	color: #2156a6;
	margin-bottom: 40px;
	line-height: 120%;
}
.contents-area h2 span{
	font-family: "a-otf-ud-shin-go-pr6n";
	display: block;
	font-size: 22px;
	font-weight: normal;
	color: #666;
}
.contents-area h3{
	font-size: 22px;
	text-align: left;
	color: #333;
	margin-bottom: 16px;
	letter-spacing: 0px;
}
.contents-area h4{
	font-size: 18px;
	text-align: left;
	color: #333;
	margin-bottom: 16px;
	letter-spacing: 0px;
}
@media only screen and (max-width: 1028px) {
	.contents-area{
		padding: 32px 16px;
	}
	.contents-area h2{
		font-family: "acumin-pro";
		font-size: 28px;
		text-align: left;
		color: #2156a6;
		margin-bottom: 16px;
	}
	.contents-area h2 span{
		font-family: "a-otf-ud-shin-go-pr6n";
		display: block;
		margin-top: 8px;
		font-size: 16px;
		font-weight: normal;
		color: #666;
	}
	.contents-area h3{
		font-size: 18px;
		text-align: left;
		color: #333;
		margin-bottom: 16px;
		letter-spacing: 0px;
	}
}
/* --------------------------------------------------
  title-area
--------------------------------------------------
.title-area{
	height: 240px;
}
.title-area h1{
	font-size: 42px;
	color: #fff;
	max-width: 830px;
	margin: 35px auto;
	letter-spacing: 4px;
}
.title-area h1 span{
	font-size: 28px;
	color: #fff;
	font-family: "acumin-pro";
	display: block;
	margin-top: 16px;
	letter-spacing: 2px;
}
/* ------------------------
  crumb
-----------------------*/
.crumb{
	max-width: 1200px;
	margin: 0 auto;
	padding: 16px 0;
	display: flex;
}
.crumb li{
	color: #666;
	font-size: 14px;
	padding-left: 16px;
}
.crumb li:first-child{padding: 0;}
.crumb li a{
	color: #666;
	font-size: 14px;
	padding-right: 16px;
}
.crumb li i{
	color: #02b7c2;
	font-size: 0.7em;
}
.about_title_area .crumb li, .products_title_area .crumb li, .other_title_area .crumb li{
	color: #fff;
}
.about_title_area .crumb li a, .products_title_area .crumb li a, .other_title_area .crumb li a{
	color: #fff;
}
@media only screen and (max-width: 1028px) {
	 .crumb{
		display: none;
	}

}
/* --------------------------------------------------
  pagetop
--------------------------------------------------*/
#pageTop {
  position: fixed;
  bottom: 100px;
  right: 16px;
  z-index: 80;
}
#pageTop a {
  font-size: 34px;
  display: block;
  z-index: 999;
  border-radius: 30px;
  width: 36px;
  height: 36px;
  background-color: #fff;
  border: solid 2px #00a73c;
  color: #00a73c;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
}
#pageTop a:hover {
  text-decoration: none;
  background-color: #00a73c;
  border: solid 2px #00a73c;
  color: #fff;
}
@media only screen and (max-width: 768px) {
	#pageTop {
	  position: fixed;
	  bottom: 70px;
	  right: 8px;
	}
}
/* --------------------------------------------------
  Footer
--------------------------------------------------*/
#footer{
	background:#000;
	padding: 70px 0 20px;
}
#footer .foot_list{
	max-width:1200px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto 40px;
}
#footer .foot_list a{
	color: #fff;
}
#footer .foot_list dl{
	width: 27%;
}
#footer .foot_list dl dt{
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 8px;
}
#footer .foot_list dl dd{
	font-size: 14px;
}
#footer .foot_list ul{
	width: 19%;
}
#footer .foot_list ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#footer .foot_list ul .btn{
	width: 100%;
}
#footer .foot_list ul .btn a{
	 text-align: center;
	 border: solid 1px #fff;
	 font-family:'游明朝','Yu Mincho','YuMincho','Hiragino Mincho ProN','HGS明朝E','メイリオ','Meiryo',serif;
	 background: #000;
	 line-height: 40px;
	 padding: 0;
	 color: #fff;
	 width: 100%;
	 font-size: 14px;
	 border-radius: 20px;
	 position: relative;
	 display: block;
}
#footer .foot_list ul a img{
	 width: 26px;
	 height: auto;
	 position: absolute;
	 right: 10px;
	 top:18px;
	 transition: all 300ms 0s ease;
}
#footer .foot_list ul a:hover img{
	right: 5px;
	top:18px;
}
#footer .foot_list ul li.sns{
	text-align: center;
	width: 25%;
	align-items:center;
}
#footer .foot_list ul li.sns a i{ 
		font-size: 1.3rem;
		color: #fff;
		position: inherit;
		text-align: center;
		border: solid 1px #fff;
	width: 1.8em;
	line-height: 1.8em;
	border-radius: 1em;
	padding: 0.45em;
}

#footer .inner{
	max-width:1200px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
}
#footer .inner .copyright{
	font-size: 12px;
	color: #fff;
	width: 50%;
	text-align: left;
	padding-top: 30px;
}
#footer .inner .logo{
	text-align: right;
	width: 50%;
	margin-top: 8px;
}
#footer .inner .logo img{
	width: 176px;
	height: auto;
}
#footer .btnArea {
	padding: 24px 16px 10px;
	background: #555;
}
#footer .btnArea ul {
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
#footer .btnArea ul li {
	width: 23%;
}
#footer .btnArea ul li img {
	width: 100%;
	height: auto;
}
#footer .btnArea ul li .bnr_cap{
	text-align: center;
	font-size: 13px;
	line-height: 1.2;
	margin-top: 5px;
	color: #fff;
}
#footer .btnArea ul li .bnr_cap:hover {
	text-decoration: underline;
}

@media screen and (max-width: 1028px) {
	#footer{
		background: #000;
		padding:26px 0;
	}
	#footer .foot_list {
		padding: 0 16px;
	}
	#footer .foot_list dl dt{
		font-size: 14px;
	}
	#footer .foot_list dl dd{
		font-size: 12px;
	}
	#footer .foot_list ul {
		width: 30%;
		margin: 20px auto 0;
	}
	#footer .foot_list ul .btn {
		margin-bottom: 20px;
	}

	#footer .inner{
		flex-direction: column;
		margin: 20px auto 0;
	}
	#footer .inner .logo {
		margin-top: 0;
	}
	#footer .inner .copyright{
		font-size: 12px;
		color: #fff;
		width: 100%;
		text-align: center;
		margin-bottom: 16px;
		padding: 0;
	}
	#footer .inner .logo{
		text-align: center;
		width: 100%;
	}
}

@media screen and (max-width: 767px) {
	#footer .foot_list ul {
		width: 90%;
	}
	#footer .foot_list dl {
		width: 100%;
		margin-bottom: 20px;
	}
	#footer .btnArea ul {
		display: block;
	}
	#footer .btnArea ul li {
		width: 80%;
		margin: 0 auto 10px;
	}
}