@charset "UTF-8";
/*
Theme Name: Leprosy レスポンシブ
Description: Leprosy.jp オリジナルテンプレート
Author: sai company
Version: 1.0
*/

/* common */

html {
  color: #000;
  background: #fff;
/*
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
*/
}

body,
div,
dl, dt, dd,
ul, ol, li,
h1, h2, h3, h4, h5, h6,
form, input, textarea,
p,
blockquote,
th, td {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

th, td {
  vertical-align: top;
  text-align: left;
}

img {
  border: 0;
  vertical-align: bottom;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}

ul li {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before,
q:after {
  content: '';
}

input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

input,
textarea,
select {
  *font-size: 100%;
}

html, body {
  width: 100%;
  height: 100%;
  background: #1f242f;
}

body {
	font-family: "游ゴシック", YuGothic, "Hiragino Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Meryo, "メイリオ", Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
  line-height: 1;
  font-size: 62.5%;
  color: #4e4e4e;
  position: relative;
  color: #555;
  -webkit-text-size-adjust: 100% !important;
}

a {
  cursor: pointer;
  color: #34508e;
  text-decoration: underline;
	word-break: break-all;
}

img {
  vertical-align: top;
}

.cf:before,
.cf:after {
  content: " ";
  display: table;
}

.cf:after {
  clear: both;
}

.cf {
  *zoom: 1;
}

.indent {
  padding-left: 1em;
  text-indent: -1em;
}

section {
	background-color: #fff;
}

strong {
	font-weight: bold;
}

.m5 {margin:5px;}
.m10 {margin:10px;}
.m15 {margin:15px;}
.m20 {margin:20px;}
.m25 {margin:25px;}
.m30 {margin:30px;}
.m35 {margin:35px;}
.m40 {margin:40px;}
.m45 {margin:45px;}
.m50 {margin:50px;}
.m55 {margin:55px;}
.m60 {margin:60px;}

.mt5 {margin-top:5px;}
.mt10 {margin-top:10px;}
.mt15 {margin-top:15px;}
.mt20 {margin-top:20px;}
.mt25 {margin-top:25px;}
.mt30 {margin-top:30px;}
.mt35 {margin-top:35px;}
.mt40 {margin-top:40px;}
.mt45 {margin-top:45px;}
.mt50 {margin-top:50px;}
.mt55 {margin-top:55px;}
.mt60 {margin-top:60px;}
.mt70 {margin-top:70px;}

.mr5 {margin-right:5px;}
.mr10 {margin-right:10px;}
.mr15 {margin-right:15px;}
.mr20 {margin-right:20px;}
.mr25 {margin-right:25px;}
.mr30 {margin-right:30px;}
.mr35 {margin-right:35px;}
.mr40 {margin-right:40px;}
.mr45 {margin-right:45px;}
.mr50 {margin-right:50px;}
.mr55 {margin-right:55px;}
.mr60 {margin-right:60px;}

.mb5 {margin-bottom:5px;}
.mb10 {margin-bottom:10px;}
.mb15 {margin-bottom:15px;}
.mb20 {margin-bottom:20px;}
.mb25 {margin-bottom:25px;}
.mb30 {margin-bottom:30px;}
.mb35 {margin-bottom:35px;}
.mb40 {margin-bottom:40px;}
.mb45 {margin-bottom:45px;}
.mb50 {margin-bottom:50px;}
.mb55 {margin-bottom:55px;}
.mb60 {margin-bottom:60px;}
.mb70 {margin-bottom:70px;}

.ml5 {margin-left:5px;}
.ml10 {margin-left:10px;}
.ml15 {margin-left:15px;}
.ml20 {margin-left:20px;}
.ml25 {margin-left:25px;}
.ml30 {margin-left:30px;}
.ml35 {margin-left:35px;}
.ml40 {margin-left:40px;}
.ml45 {margin-left:45px;}
.ml50 {margin-left:50px;}
.ml55 {margin-left:55px;}
.ml60 {margin-left:60px;}

.p5 {padding:5px;}
.p10 {padding:10px;}
.p15 {padding:15px;}
.p20 {padding:20px;}
.p25 {padding:25px;}
.p30 {padding:30px;}
.p35 {padding:35px;}
.p40 {padding:40px;}
.p45 {padding:45px;}
.p50 {padding:50px;}
.p55 {padding:55px;}
.p60 {padding:60px;}

.pt5 {padding-top:5px;}
.pt10 {padding-top:10px;}
.pt15 {padding-top:15px;}
.pt20 {padding-top:20px;}
.pt25 {padding-top:25px;}
.pt30 {padding-top:30px;}
.pt35 {padding-top:35px;}
.pt40 {padding-top:40px;}
.pt45 {padding-top:45px;}
.pt50 {padding-top:50px;}
.pt55 {padding-top:55px;}
.pt60 {padding-top:60px;}

.pr5 {padding-right:5px;}
.pr10 {padding-right:10px;}
.pr15 {padding-right:15px;}
.pr20 {padding-right:20px;}
.pr25 {padding-right:25px;}
.pr30 {padding-right:30px;}
.pr35 {padding-right:35px;}
.pr40 {padding-right:40px;}
.pr45 {padding-right:45px;}
.pr50 {padding-right:50px;}
.pr55 {padding-right:55px;}
.pr60 {padding-right:60px;}

.pb5 {padding-bottom:5px;}
.pb10 {padding-bottom:10px;}
.pb15 {padding-bottom:15px;}
.pb20 {padding-bottom:20px;}
.pb25 {padding-bottom:25px;}
.pb30 {padding-bottom:30px;}
.pb35 {padding-bottom:35px;}
.pb40 {padding-bottom:40px;}
.pb45 {padding-bottom:45px;}
.pb50 {padding-bottom:50px;}
.pb55 {padding-bottom:55px;}
.pb60 {padding-bottom:60px;}

.pl5 {padding-left:5px;}
.pl10 {padding-left:10px;}
.pl15 {padding-left:15px;}
.pl20 {padding-left:20px;}
.pl25 {padding-left:25px;}
.pl30 {padding-left:30px;}
.pl35 {padding-left:35px;}
.pl40 {padding-left:40px;}
.pl45 {padding-left:45px;}
.pl50 {padding-left:50px;}
.pl55 {padding-left:55px;}
.pl60 {padding-left:60px;}

.mgt-50{ margin-top: -50px; }
.mgb10 { margin-bottom: 10px }

/* WEB fonts */

.optima-M { 
	font-family: 'OptimaLTPro-Medium';
	font-weight: normal;
	font-style: normal;
}
.optima-DB { 
	font-family: 'OptimaLTPro-DemiBold';
	font-weight: normal;
	font-style: normal;
}
.a1min {
	font-family: 'A1明朝', 'A1 Mincho';
	font-feature-settings: 'palt' 1;
}
.din-L {
	font-family: 'din-condensed-web', sans-serif;
	font-weight: 300;
	font-style: normal;
}
.din-R {
	font-family: 'din-condensed-web', sans-serif;
	font-weight: 400;
	font-style: normal;
}

.btn a {
  background: #0cb4c8;
  color: #fff;
  text-decoration: none;
  display: inline-block;
	vertical-align: top;
  text-align: center;
  font-size: 1.4em;
  line-height: 48px;
  height: 48px;
  width: 240px;
}
.btn a:before {
	content: '';
	display: inline-block;
	vertical-align: top;
}
.btn a[target="_blank"]:after {
	content: '';
	width: 11px;
	height: 11px;
	display: inline-block;
	vertical-align: middle;
	margin-left: 4px;
	background-image: url('img/blank.png');
	background-repeat: no-repeat;
	background-size: 11px 11px;
	background-position: right center;
}
.ie8 .btn a[target="_blank"]:after {
	background-image: url('img/blank_ie8.png');
}
.btn.dead {
  background: #a7a7a7;
  color: #fff;
  text-decoration: none;
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  font-size: 1.4em;
  line-height: 20px;
  padding: 14px 0;
  width: 250px;
}

img.switch {
	visibility: hidden;
}

@media screen and (min-width: 601px) {

	a:hover {
	  text-decoration: none;
	}
	
	.fade:hover {
		transition: 0.5s;
		opacity: 0.7;
	}

	html, body {
	  min-width: 960px;
	}
	
	.inr {
	  width: 960px;
	  margin: 0 auto;
	}
	
	br.pc {	display: block; }
	br.sp {	display: none; }

	.btn a:before {
		width: 16px;
		height: 48px;
		background-image: url('img/icn_wht_lrg.png');
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 16px 16px;
		margin-right: 10px;
	}
	.ie8 .btn a:before {
		background-image: url('img/icn_wht_lrg_ie8.png');		
	}
	.btn a[target="_blank"]:after {
		margin-bottom: 4px;
	}
	#more.btn a:before {
		background-image: url('img/icn_wht_lrg_down.png');
	}
	.ie8 #more.btn a:before {
		background-image: url('img/icn_wht_lrg_down_ie8.png');		
	}
	.btn a:hover {
	  background: #0b90a0;
	}

	header,
	footer,
	section {
	  width: 100%;
	  min-width: 960px;
	}
	
}
@media screen and (max-width: 600px) {

	br.pc {	display: none; }
	br.sp {	display: block; }

	.btn a {
	  background: #0cb4c8;
	  color: #fff;
	  text-decoration: none;
	  display: inline-block;
		vertical-align: top;
	  text-align: center;
	  font-size: 1.4em;
	  line-height: 48px;
	  height: 48px;
	  width: 240px;
	}
	.btn a:before {
		content: '';
		display: inline-block;
		vertical-align: top;
		width: 12px;
		height: 48px;
		background-image: url('img_sp/icn_link-arw_wh.png');
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 12px 12px;
		margin-right: 6px;
	}
	.btn a[target="_blank"]:after {
		margin-bottom: 4px;
	}
	#more.btn a:before {
		background-image: url('img_sp/icn_link-arw_wh_down.png');
	}

}

/* bg 100% */
.bg100 {
  background-repeat: no-repeat;
}
@media screen and (min-width: 1300px) {
  .bg100 {
		background-size: cover;
  }
}
@media screen and (max-width: 600px) {
  .bg100 {
		background-size: cover;
  }
}

/* header */

header .bar1 {
	width: 100%;
  background: #333b4d;
  color: #fff;
}
header .bar2 {
	width: 100%;
  background-color: #1f242f;
}
header .bar2 .ttl img {
	width: 100%;
	height: auto;
}
header .main_nav > li > ul > li a[target="_blank"]:after {
	content: '';
	width: 11px;
	height: 11px;
	display: inline-block;
	vertical-align: middle;
	margin-left: 4px;
	background-image: url('img/blank_bl.png');
	background-repeat: no-repeat;
	background-size: 11px 11px;
	background-position: right center;
}
.ie8 header .main_nav > li > ul > li a[target="_blank"]:after {
	background-image: url('img/blank_bl_ie8.png');
}
header .sub_nav a,
header .other a {
	display: block;
	text-decoration: none;
}
header .sub_nav .en a,
header .other .en a {
	font-family: 'din-condensed-web', sans-serif;
	font-weight: 400;
	font-style: normal;
	text-align: center;
	border-radius: 2px;
}
header .other .ga a {
	display: block;
	background-color: #0cb4c8;
	border-radius: 5px;
	text-align: center;
	overflow: hidden;
}
header.fixed .bar2 {
  width: 100%;
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2000;
}
header.fixed:after {
  content: '';
  display: block;
  width: 100%;
  background: #1f242f;
}
@media screen and (min-width: 601px) {

	header {
	  height: 96px;
	}
	header .bar1 {
	  position: relative;
	  z-index: 100;
	  height: 32px;
	}
	header .bar1 .copy {
	  float: left;
	  font-size: 11px;
	  margin-top: 11px;
	  width: 500px;
	}
	header .bar1 nav {
	  float: right;
	  width: 152px;
	  margin-top: 7px;
	}
	header .sub_nav {
	  text-align: right;
	  letter-spacing: -.40em;
	}
	header .sub_nav li {
	  letter-spacing: normal;
	  display: inline-block;
	  vertical-align: middle;
	  margin-left: 16px;
	}
	header .sub_nav a:hover {
		transition: 0.5s;
		opacity: 0.7;
	}
	header .sub_nav .fb a,
	header .sub_nav .fl a {
		text-indent: 9999px;
		overflow: hidden;
		background-repeat: no-repeat;
		background-position: left center;
		line-height: 18px;
	}
	header .sub_nav .fb a {
	  background-image: url('img/hd_fb.png');
	  background-size: 14px 14px;
	  width: 14px;
	  height: 18px;
	}
	header .sub_nav .fl a {
	  background-image: url('img/hd_fl.png');
	  background-size: 38px 11px;
	  width: 38px;
	  height: 18px;
	}
	.ie8 header .sub_nav .fb a {
	  background-image: url('img/hd_fb_ie8.png');
	}
	.ie8 header .sub_nav .fl a {
	  background-image: url('img/hd_fl_ie8.png');
	}
	header .sub_nav .en a {
	  background-color: #fff;
		color: #333b4d;
	  width: 52px;
	  height: 16px;
		line-height: 18px;
		font-size: 1.4em;
		padding: 1px 0;
		overflow: hidden;
	}
	header .bar2 {
	  position: relative;
	  height: 64px;
	}
	header.fixed .bar2 {
		background-color: transparent;
	  background-image: url('img/hd_bg.png');
	  background-repeat: repeat;
	}
	body header .bar2 nav,
	body header.fixed .bar2 nav {
		top: auto !important;
	  height: auto !important;
	}
	header .bar2 .ttl {
	  float: left;
	  width: 124px;
	  margin-top: 20px;
	}
	header .bar2 .ttl a {
	  display: block;
	}
	header .menu {
		display: none;
	}
	header .bar2 nav {
	  float: right;
	  width: 767px;
	}
	header .main_nav {
		float: left;
	  text-align: left;
	  height: 64px;
	}
	header .main_nav > li {
	  float: left;
	  height: 64px;
	  position: relative;
	}
	header .main_nav > li > a {
	  display: block;
	  height: 38px;
	  padding: 26px 15px 0;
	  color: #fff;
	  font-size: 12px;
	  text-decoration: none;
	}
	header .main_nav > li > a:hover {
			background: #0cb4c8;
			color: #fff;
	}
	header .main_nav > li > a.dead {
	  opacity: 0.2;
	  filter: alpha(opacity=20);
	  -ms-filter: "alpha(opacity=20)";
	  cursor: default !important;
	}
	header .main_nav > li > ul {
	  display: none;
	  position: absolute;
	  z-index: 200;
	  top: 64px;
	  left: 0;
	  width: 290px;
	  font-size: 1.2em;
	}
	header .main_nav > li > ul.on {
		display: block;
	}
	header .main_nav > li > ul > li {
	  padding: 0;
	  background: #d8d8d8;
	}
	header .main_nav > li > ul > li a {
	  display: block;
	  color: #333b4d;
	  padding: 18px 0 18px 36px;
	  background-image: url('img/icn_link-arw.png');
	  background-repeat: no-repeat;
	  background-position: 16px 21px;;
	  background-size: 12px 12px;
	  border-bottom: 1px solid #b8b8c8;
	  line-height: 1.4;
	}
	.ie8 header .main_nav > li > ul > li a {
	  background-image: url('img/icn_link-arw_ie8.png');
	}
	header .main_nav > li > ul > li a:hover {
		text-decoration: none;
	}
	header .main_nav > li > ul > li.last a {
	  border-bottom: none;
	}
	header .other {
	  float: right;
	  margin-top: 17px;
	}
	header .other .ga a {
		width: 116px;
		padding: 6px 0 4px;
		height: 20px;
	}
	header .other .ga a:hover {
		transition: 0.5s;
		opacity: 0.7;
	}
	header .other .ga img {
		width: 94px;
		height: 20px;
	}
	header .close {
		display: none;
	}
	header.fixed:after {
	  height: 64px;
	}
}
@media screen and (max-width: 600px) {

	header{
		position: relative;
	}
	header .bar1 .copy {
		color: #fff;
		font-size: 9px;
		padding: 10px 5% 8px;
	}
	header .bar1 nav {
		display: none;
	}
	header .bar2 {
		height: 50px;
		position: relative;
		z-index: 1000;
	}
	header.fixed .bar2 {
	  background-color: #1f242f;
	}
	header .bar2 .ttl {
	  width: 90px;
		position: relative;
		float: left;
		margin: 15px 5% 0;
	}
	header .menu {
		float: right;
		margin: 15px 5% 0;
	}
	header .menu a {
		width: 27px;
		height: 19px;
		display: block;
		position: relative;
		z-index: 1001;
	}
	header .menu a:before,
	header .menu a:after {
		content: '';
	}
	header .menu a:before,
	header .menu a:after,
	header .menu a span {
		width: 27px;
		height: 3px;
		background-color: #fff;
		display: block;
		position: absolute;
		left: 0;
	}
	header .menu a:before { top: 0; }
	header .menu a span { top: 8px; }
	header .menu a:after { top: 16px; }

	header.on .menu a span {
		display: none;
	}
	header.on .menu a:before {
		-webkit-transform: rotate(-45deg);
		transform:rotate(-45deg);
		top: 50%;
	}
	header.on .menu a:after {
		-webkit-transform: rotate(45deg);
		transform:rotate(45deg);
		top: 50%;
	}
	header .bar2 nav {
		position: fixed;
		left: 0;
		width: 100%;
		z-index: 1000;
		background: #d8d8d8;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		display: none;
	}
	header .bar2 .nav_inr {
		width: 100%;
		height: 100%;
		overflow-y: auto;
		position: relative;
		z-index: 1000;
		display: none;
	}
	header.on .bar2 nav,
	header.on .bar2 .nav_inr {
		display: block;
	}
	header .main_nav li {
		background: #d8d8d8;
		border-bottom: 1px solid #bcbcbc;
	}
	header .main_nav li.last {
		border: none;
	}
	header .main_nav li a {
		display: block;
		padding: 23px 25px 23px 44px;
		background: url('img_sp/icn_link-arw.png') no-repeat 25px center;
		background-size: 12px;
		font-size: 16px;
		font-weight: bold;
		text-decoration: none;
		color: #333b4d;
		position: relative;
		z-index: 1000;
	}
	header .main_nav > li > ul {
		border-top: 1px solid #bcbcbc;
	}
	header .main_nav > li > ul > li {
		background: #cccccc;
	}
	header .main_nav > li > ul > li a {
		font-size: 12px;
		background: none;
		padding: 16px 25px 15px 44px;
	}
	header .main_nav > li > ul > li a[target="_blank"]:after {
		margin-bottom: 2px;
	}
	header .other {
		width: 100%;
	}
	header .other ul {
		padding: 15px 5% 0;
		background: #d8d8d8;
		border-bottom: 1px solid #bcbcbc;
	}
	header .other li {
		display: inline-block;
		vertical-align: middle;
		margin-right: 5%;
		margin-bottom: 15px;
	}
	header .other li:last-child {
		margin-right: 0;
	}
	header .other .ga a {
		width: 116px;
		padding: 6px 0 4px;
		height: 20px;
	}
	header .other .ga img {
		width: 94px;
		height: 20px;
	}
	header .other .fb a,
	header .other .fl a {
		text-indent: -9999px;
		overflow: hidden;
	}
	header .other .fb a {
		width: 25px;
		height: 25px;
		background: url('img_sp/btn_facebook_hd.png');
		background-size: contain;
	}
	header .other .fl a {
		width: 50px;
		height: 15px;
		background: url('img_sp/btn_flickr_hd.png');
		background-size: contain;
	}
	header .other .en a {
	  background-color: #333b4d;
		color: #fff;
	  width: 60px;
	  height: 25px;
		line-height: 25px;
		font-size: 1.5em;
	}
	header .close {
		background: #1f242f;
		width: 90%;
		padding: 0 5%;
		height: 40px;
		line-height: 40px;
		color: #fff;
		text-decoration: none;
		font-size: 1.6em;
		font-weight: bold;
		position: relative;
		display: block;
		text-indent: 25px;
	}
	header .close:before,
	header .close:after {
		content: '';
		display: inline-block;
		vertical-align: middle;
		background: #fff;
		width: 19px;
		height: 2px;
		position: absolute;
	}
	header .close:before {
		transform:rotate(-45deg);
		top: 50%;
		left: 5%;
	}
	header .close:after {
		transform:rotate(45deg);
		top: 50%;
		left: 5%;
	}
	header.fixed:after {
	  height: 50px;
	}

}


/* footer */

footer {
  position: relative;
}
footer img {
	width: 100%;
	height: auto;
}
footer .footer2 {
  background: #1f242f;
}
footer .sub_nav a {
	display: block;
	text-decoration: none;
}
footer .sub_nav .en a {
  background-color: #fff;
	font-family: 'din-condensed-web', sans-serif;
	font-weight: 400;
	font-style: normal;
	color: #333b4d;
	text-align: center;
	border-radius: 2px;
}
footer .footer2 .lft {
  color: #bfbfbf;
}
footer .footer2 .en {
	font-family: 'OptimaLTPro-Medium';
	font-weight: normal;
	font-style: normal;
}
footer .footer2 .ja {
	font-family: 'A1明朝', 'A1 Mincho';
	font-feature-settings: 'palt' 1;
	letter-spacing: 0.1em;
}
footer .ga a {
	display: block;
	background-color: #0cb4c8;
	border-radius: 5px;
	text-align: center;
	overflow: hidden;
}
footer .copyright {
	font-family: 'din-condensed-web', sans-serif;
	font-weight: 300;
	font-style: normal;
	color: #fff;
}
footer .copyright span {
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Meryo, "メイリオ", Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	display: inline-block;
	vertical-align: middle;
}
#pagetop {
  position: fixed;
  display: none;
  z-index: 100;
  width: 50px;
  height: 50px;
}
#pagetop a {
  width: 46px;
  height: 46px;
  border-radius: 5px;
  background: #333b4d;
  border: 2px solid #1e2430;
  display: block;
}

@media screen and (min-width: 601px) {
	footer nav {
	  width: 960px;
	  overflow: hidden;
	}
	footer .main_nav {
		width: 960px;
	}
	footer .main_nav li {
	  float: left;
	  width: 114px;
	  margin: 0 27px 0 0;
	}
	footer .main_nav > li {
		position: relative;
	}
	footer .main_nav > li:before {
		content: '';
		width: 100%;
		height: 1px;
		background: #fff;
		display: block;
		position: absolute;
		top: 34px;
		left: 0;
	}
	footer .main_nav .nav6 {
		margin: 0;
	}
	footer .main_nav li a {
	  display: block;
	  font-size: 12px;
	  font-weight: bold;
	  color: #fff;
	  padding: 0 0 0 17px;
	  text-decoration: none;
	  background-image: url('img/ft_subnav_icn.png');
	  background-repeat: no-repeat;
	  background-position: left center;
	  background-size: 12px 12px;
	  line-height: 20px;
	}
	footer .main_nav li > a:hover {
		transition: 0.5s;
		opacity: 0.7;
	}
	.ie8 footer .main_nav li a {
	  background-image: url('img/ft_subnav_icn_ie8.png');
	}
	footer .main_nav li > ul {
		margin-top: 36px;
	}
	footer .main_nav li > ul > li a {
		border: none;
		font-size: 11px;
		font-weight: normal;
		line-height: 16px;
		padding: 0 0 14px 0;
		text-decoration: underline;
		background: none;
	}
	footer .main_nav li > ul > li a:hover {
		text-decoration: none;
		opacity: 1;
	}
	.ie8 footer .main_nav li > ul > li a {
		background: none;
	}
	footer .main_nav li > ul > li a[target="_blank"]:after {
		content: '';
		width: 11px;
		height: 11px;
		display: inline-block;
		vertical-align: middle;
		margin-left: 4px;
		background-image: url('img/blank.png');
		background-repeat: no-repeat;
		background-size: 11px 11px;
		background-position: right center;
		margin-bottom: 2px;
	}
	footer .footer1 {
	  background: #333b4d url('img/common_shadow.png') no-repeat center top;
	  background-size: 100% 6px;
	  padding: 67px 0 65px;
	}
	footer .footer1 .inr {
	  position: relative;
	}
	
	footer .bottom {
		padding: 50px 0 0 0;
	}
	footer .bnrs {
	  float: left;
	  width: 600px;
	}
	footer .bnrs div {
		float: left;
		margin: 0 20px 0 0;
	}
	footer .bnrs img {
	  vertical-align: top;
	}
	
	footer .sub_nav {
		float: right;
	  height: 25px;
	  margin-top: 4px;
	  text-align: right;
	}
	footer .sub_nav li {
	  margin-left: 18px;
	  float: left;
	}
	footer .sub_nav a:hover {
		transition: 0.5s;
		opacity: 0.7;
	}
	footer .sub_nav .fb a,
	footer .sub_nav .fl a {
	  text-align: left;
	  text-indent: -9999px;
	  overflow: hidden;
	  display: block;
	  background-repeat: no-repeat;
	  background-position: left center;
	  height: 23px;
	}
	footer .sub_nav .en a {
	  width: 53px;
	  height: 20px;
		line-height: 20px;
		font-size: 1.4em;
		padding: 2px 0 1px;
	}
	footer .fb {
	  width: 23px;
	}
	footer .fb a {
	  background-image: url('img/ft_fb.png');
	  background-size: 23px 23px;
	}
	.ie8 footer .fb a {
	  background-image: url('img/ft_fb_ie8.png');		
	}
	footer .fl {
	  width: 45px;
	}
	footer .fl a {
	  background-image: url('img/ft_fl.png');
	  background-size: 45px 14px;
	}
	.ie8 footer .fl a {
	  background-image: url('img/ft_fl_ie8.png');		
	}
	footer .ga {
		margin-top: -4px;
	}
	footer .ga a {
		width: 116px;
		padding: 6px 0 4px;
		height: 20px;
	}
	footer .sub_nav .ga a img {
		width: 94px;
		height: 20px;
	}
	
	footer .footer2 {
	  padding: 58px 0 58px;
	}
	footer .footer2 .lft {
	  float: left;
	  width: 607px;
	}
	footer .footer2 .lft .en {
		font-size: 2.05em;
		line-height: 1.3;
	}
	footer .footer2 .lft .en .name{
		font-size: 0.82em;
	}
	footer .footer2 .lft .ja {
		margin-top: 10px;
		font-size: 1.5em;
		line-height: 1.4;
	}
	footer .footer2 .lft .ja .name {
		font-size: 0.8em;
	}
	footer .footer2 .ctr {
	  float: left;
	  width: 250px;
	}
	footer .footer2 .ctr .logo {
		width: 140px;
	}
	footer .footer2 .ctr .copyright {
		margin-top: 40px;
		font-size: 1.4em;
	}
	footer .footer2 .ctr .copyright span {
		font-size: 1.2em;
		margin-bottom: 2px;
	}
	footer .footer2 .rgt {
	  float: right;
	  width: 100px;
	}
	#pagetop {
		bottom: 20px;
		right: 20px;
/*
  	left: 50%;
	  margin-left: 425px;
*/
	}
	#pagetop a:hover {
		background: #1e2430;
	}
}
@media screen and (max-width: 600px) {
	footer .footer1 {
	  background: #333b4d;
		text-align: left;
	}
	footer .footer1 .inr {
	  position: relative;
	}
	footer nav {
	  overflow: hidden;
	}
	footer .main_nav {
	  border-top: 1px solid #1f242f;
	  border-bottom: 1px solid #1f242f;
	  margin: 0 -1px;
	}
	footer .main_nav > li > ul {
		display: none;
	}
	footer .main_nav li {
	  width: 50%;
	  float: left;
	}
	footer .main_nav .nav0 {
		display: none;
	}
	footer .main_nav li a {
	  display: block;
	  font-size: 12px;
	  color: #fff;
	  border: 1px solid #1f242f;
	  height: 37px;
	  line-height: 37px;
	  text-decoration: none;
		text-align: center;
	}
	
	footer .bottom {
		padding: 25px 0;
	}
	
	footer .sub_nav {
		margin: 0 auto 15px;
		text-align: center;
	}
	footer .sub_nav li {
	  display: inline-block;
	  vertical-align: middle;
	  padding-right: 3.2%;
	}
	footer .sub_nav li:last-child {
		padding-right: 0;
	}
	footer .sub_nav li a {
	  text-decoration: none;
		display: block;
	}
	footer .ga a {
		width: 116px;
		padding: 6px 0 4px;
		height: 20px;
	}
	footer .ga img {
		width: 94px;
		height: 20px;
	}
	footer .fb a,
	footer .fl a {
	  overflow: hidden;
	  display: block;
	  background-repeat: no-repeat;
	  text-indent: -9999px;
	  background-size: contain;
	}
	footer .fb a {
	  background-image: url('img_sp/btn_facebook.png');
	  width: 25px;
	  height: 25px;
	}
	footer .fl a {
	  background-image: url('img_sp/btn_flickr.png');
	  width: 50px;
	  height: 15px;
	}
	footer .sub_nav .en a {
	  width: 60px;
	  height: 25px;
		line-height: 25px;
		font-size: 1.5em;
	}
	
	footer .footer1 .bnrs {
		display: table;
		width: 93.2%;
		margin: 0 auto;
	}
	footer .footer1 .bnrs > div {
		display: table-cell;
		padding: 0 1.6%;
	}
	footer .footer1 .bnrs img {
		width: 100%;
		height: auto;
	}
	
	footer .footer2 .inr {
		padding: 35px 5% 30px;
	}
	footer .footer2 .lft {
		margin-bottom: 30px;
	}
	footer .footer2 .lft .en {
		font-size: 1.3em;
		line-height: 1.3;
	}
	footer .footer2 .lft .en .name{
		font-size: 0.82em;
	}
	footer .footer2 .lft .ja {
		margin-top: 10px;
		font-size: 1em;
		line-height: 1.4;
	}
	footer .footer2 .lft .ja .name {
		font-size: 0.8em;
	}
	footer .footer2 .ctr {
		float: left;
	}
	footer .footer2 .ctr .logo {
		width: 100px;
	}
	footer .copyright {
		margin-top: 10px;
		font-size: 1.1em;
		color: #fff;
	}
	footer .copyright span {
		font-size: 1.4em;
		margin-bottom: 1px;
	}
	footer .footer2 .rgt {
		float: right;
	}
	footer .footer2 .rgt .logo {
		width: 55px;
	}
	#pagetop {
  	right: 10px;
  	bottom: 10px;
	}
}

/*-- for 2nd template --*/

#main.p_ttl {
  width: 100%;
  background-repeat: no-repeat;
  color: #f5f5f6;
  overflow: hidden;
}
#main.p_ttl .inr:before {
	content: '';
	width: 1px;
	display: inline-block;
	vertical-align: middle;
	margin-left: -5px;
}
#main.p_ttl .ttl {
	display: inline-block;
	vertical-align: middle;
}
#main.p_ttl .en {
	font-family: 'OptimaLTPro-Medium';
	font-weight: normal;
	font-style: normal;
}
#main.p_ttl h1 {
	font-family: 'A1明朝', 'A1 Mincho';
	font-feature-settings: 'palt' 1;
	text-shadow: 0 0 3px #666;
	letter-spacing: 0.05em;
}
#main.p_ttl .catch {
	font-family: 'A1明朝', 'A1 Mincho';
	font-feature-settings: 'palt' 1;
	text-shadow: 0 0 3px #666;
	letter-spacing: 0.1em;
}
.breadcrumb {
  font-size: 1em;
}
.breadcrumb a {
  color: #0cb4c8;
}
.breadcrumb br {
  display: none;
}
.p_lead {
	color: #333b4d;
}
#infscr-loading img {
	width: 30px;
	height: 30px;
}

@media screen and (min-width: 1300px) {
  #main.p_ttl {
		background-size: cover;
  }
}

@media screen and (min-width: 601px) {
	
	#main.p_ttl,
	#main.p_ttl .inr:before {
	  height: 274px;
	}
	#main.p_ttl .en {
		font-size: 1.6em;
		margin-bottom: 10px;
	}
	#main.p_ttl h1 {
		font-size: 5em;
	}
	#main.p_ttl .catch {
		margin-top: 10px;
		font-size: 2em;
	}
	.breadcrumb {
	  width: 960px;
	  margin: 0 auto;
	  line-height: 40px;
	  max-height: 999999px;
	}
	.p_lead {
		font-family: 'A1明朝', 'A1 Mincho';
		font-feature-settings: 'palt' 1;
		letter-spacing: 0.05em;
	  font-size: 1.8em;
	  line-height: 1.67;
	}
	
	#s_1 {
	  background-image: url('img/common_shadow.png');
	  background-repeat: no-repeat;
	  background-position: center top;
	  background-size: 100% 6px;
	}

}

@media screen and (max-width: 600px) {

  #main.p_ttl {
		background-size: cover;
  }
	#main.p_ttl,
	#main.p_ttl .inr:before {
	  height: 137px;
	}
	#main.p_ttl .inr {
		padding: 0 5%;
	}
	#main.p_ttl .ttl {
		width: 100%;
	}
	#main.p_ttl .en {
		font-size: 1em;
		margin-bottom: 10px;
	}
	#main.p_ttl h1 {
		font-size: 2.4em;
	}
	#main.p_ttl .catch {
		margin-top: 8px;
		font-size: 1.1em;
	}
	.breadcrumb {
		background: #f5f5f6;
	  max-height: 999999px;
	  padding: 8px 5%;
	  line-height: 1.4;
	}
	.p_lead {
		font-weight: bold;
	  font-size: 1.2em;
	  line-height: 1.67;
	}
	.p_lead br {
		display: none;
	}

	#s_1 {
		background: #fff;
	}

}





/* NF Bar */

#NFBar { box-sizing: border-box; opacity: 0; transition:opacity 0.5s ease; z-index: 999999; position: fixed; bottom: 0; left: 0; width: 100%; font: inherit; }
#NFBar.is-open{ opacity: 1; }
#NFBar * { box-sizing: inherit; margin: 0; padding: 0; border: 0; font-size: 100%; line-height: 1.0; }
#NFBar *:before, #NFBar *:after { content: none; }
#NFBar ul { list-style: none; }
#NFBar img { vertical-align: bottom; }

#NFBar.nf--single .nf-bar { position: relative; }
#NFBar.nf--single .nf-bar__logo { z-index: 2; position: absolute; right: 12px; bottom: 0; width: 72px; box-shadow: 0 0 2px 0 rgba(0,0,0,0.50); }
#NFBar.nf--single .nf-bar__tagline { padding: 14px; background-color: #00892f; }
#NFBar.nf--single .nf-logo {}
#NFBar.nf--single .nf-tagline { font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,serif; font-size: 14px; line-height: 16px; color: #fff; }

#NFBar.nf--multi .nf-bar { padding: 0 3.2vw; border-bottom: #00892f solid 44px; }
#NFBar.nf--multi .nf-bar__logo { margin: 0 auto -44px auto; background-color: #fff; box-shadow: 0 0 2px 0 rgba(0,0,0,0.50); }
#NFBar.nf--multi .nf-logogroup {
	display: flex; flex-direction: row; justify-content: center; align-items: center;
	width: 300px; min-height: 56px; margin-left: auto; margin-right: auto; }
#NFBar.nf--multi .nf-logogroup__item { margin: 0 5px; }
#NFBar.nf--multi .nf-logogroup__item:first-child { margin-left: 0; }
#NFBar.nf--multi .nf-logogroup__item:last-child { margin-right: 0; }

/* NF Footer */

#NFFooter { box-sizing: border-box; padding: 40px 3.2vw; font: inherit; background: #fff; }
#NFFooter * { box-sizing: inherit; margin: 0; padding: 0; border: 0; font-size: 100%; line-height: 1.0; }
#NFFooter *:before, #NFFooter *:after { content: none; }
#NFFooter ul { list-style: none; }
#NFFooter img { vertical-align: bottom; }

#NFFooter .nf-description { text-align: center; font-size: 14px; line-height: 1.5; }
#NFFooter .nf-description__inlinelink { text-decoration: underline; }

#NFFooter .nf-bannergroup {
	display: flex; flex-direction: row; justify-content: center; align-items: center;
	margin-top: 15px; }
#NFFooter .nf-bannergroup__item {
	display: inline-flex; justify-content: center; align-items: center;
	width: 200px; height: 64px; margin: 5px; background-color: #fff; text-align: center; }
#NFFooter .nf-bannergroup__item:first-child { margin-left: 0; }
#NFFooter .nf-bannergroup__item:last-child { margin-right: 0; }

#NFFooter .nf-copyright { margin-top: 15px; text-align: center; font-family: Arial, sans-serif; font-size: 12px; line-height: 1.5; }

@media screen and (max-width: 719px) {
	#NFFooter .nf-bannergroup { flex-direction: column; }
	#NFFooter .nf-bannergroup__item { margin-left: 0; margin-right: 0; } /* end */}
@media screen and (max-width: 479px) {
	#NFFooter .nf-description { text-align: left; }
	#NFFooter br { display: none; } /* end */}

