@charset 'UTF-8';
/*===========================================
reset.css
!!!!! Do not edit !!!!!
===========================================*/

v\:line, v\:rect, v\:fill, v\:image, v\:stroke{ behavior: url(#default#VML); }

/*--------------------------------------------
  HTML5 Reset ::style.css
  -------------------------
  We have learned much from/been inspired by/taken code where offered from:
  Eric Meyer:http://ericmeyer.com
  HTML5 Doctor:http://html5doctor.com
  and the HTML5 Boilerplate:http://html5boilerplate.com
---------------------------------------------*/

/* Let's default this puppy out
--------------------------------*/
html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p,
blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd,
q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video{
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}
article, aside, figure, footer, header, hgroup, nav, section{display:block;}

/* Responsive images and other embedded objects
   Note:keeping IMG here will cause problems if you're using foreground images as sprites.
   If this default setting for images is causing issues, you might want to replace it with a .responsive class instead. */
img,
object,
embed{max-width:100%;}

html{overflow-y:scroll;}
ul{list-style:none;}
blockquote, q{quotes:none;}
blockquote:before,
blockquote:after,
q:before,
q:after{content:''; content:none;}
a{margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent;}
del{text-decoration:line-through;}
abbr[title], dfn[title]{border-bottom:1px dotted #000; cursor:help;}
table{border-collapse:collapse; border-spacing:0;}
th{font-weight:bold; vertical-align:top;}
td{font-weight:normal; vertical-align:top;}
hr{display:block; height:1px; border:0; border-top:1px solid #ccc; margin:1em 0; padding:0;}
input, select{vertical-align:top;}
pre{
  white-space:pre; /* CSS2 */
  white-space:pre-wrap; /* CSS 2.1 */
  white-space:pre-line; /* CSS 3 (and 2.1 as well, actually) */
  word-wrap:break-word; /* IE */
}
input[type="radio"]{vertical-align:middle;}
input[type="checkbox"]{vertical-align:middle; *vertical-align:baseline;}
input[type="button"],
input[type="submit"]{-webkit-appearance:none; -webkit-border-radius:0;}

select, input, textarea{font:99% sans-serif;}
table{font-size:inherit; font:100%;}
a:hover, a:active{outline:none;}
small{font-size:85%;}
strong, th{font-weight:bold;}
td, td img{vertical-align:top;} 
sub, sup{font-size:75%; line-height:0; position:relative;}
sup{top:-0.5em;}
sub{bottom:-0.25em;}
pre, code, kbd, samp{font-family:monospace, sans-serif;}
.clickable,
label, 
input[type=button], 
input[type=submit], 
button{cursor:pointer;font-size:90%;}
button, input, select, textarea{margin:0;}
button{width:auto; overflow:visible;}
h1,h2,h3,h4,h5,h6{font-weight:normal;}
img{vertical-align:bottom;}
em{font-style:normal;}


/*-------------------------------------------
Base Setting
-------------------------------------------*/
html{font-size:62.5%;}
body,select,input,textarea,pre{
	font:1.6rem Helvetica, Arial, Tahoma, sans-serif;
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','Meiryo','メイリオ',Helvetica,Verdana,'ＭＳ Ｐゴシック',sans-serif;
	/*font-family:Helvetica,Arial,sans-serif;*/
	line-height:1.6;
	color:#333;
	-webkit-text-size-adjust:none;
}
a{
	color:#014099;
	text-decoration:none;
	-webkit-tap-highlight-color:rgba(0,0,255,0.2)!important;
}
a:link{-webkit-tap-highlight-color:#014099;}
a:hover{text-decoration:underline;}
a:visited{color:#004eb6; text-decoration:none;}
caption{margin-bottom:5px; text-align:left;}
ins{background-color:#fcd700; color:#000; text-decoration:none;}
mark{background-color:#fcd700; color:#000; font-style:italic; font-weight:bold;}
select{height:1.8em;}
input{padding:0 2px;}
textarea{padding:2px;resize:vertical;width:98%;}

@media screen and (max-width:767px){
	a:hover{opacity:1!important;}
}


/*-------------------------------------------
wrapper
-------------------------------------------*/
#wrapper {
	margin:0 auto;
	text-align:left;
}

body#directOpen #wrapper,
body#contactBody #wrapper{width:1080px;}

@media screen and (max-width:767px){
	/*body,select,input,textarea,pre{font-size:13px;}*/
	body#directOpen #wrapper,
	body#contactBody #wrapper{width:100%; min-width:320px; background-color:#fff;}
	body#directOpen #content,
	body#contactBody #content{width:100%; padding:30px 0;}
}


/*-------------------------------------------
header
-------------------------------------------*/
header{
	margin-bottom:20px;
	padding:20px 0;
	border-bottom:#eaeaea 1px solid;
	display:none;
	font-size:13px;
}
header p{float:left;}
header .siteLogo{padding:14px 0 0 25px;}
header .siteLogo img{vertical-align: top;}
header .offleft{float:right; margin:10px 0 0;}
header .offleft a:hover{opacity:0.7;}
header .groupLogo img{width:192px;}

body#directOpen header,
body#contactBody header{display:block;}

@media screen and (max-width:767px){
  header{height:50px; padding:0 0 0 12.5px; box-sizing: border-box;}

  header .groupLogo{float:left; padding-top:15px;}
  header .groupLogo img{width: 73px;}
  header .siteLogo{float:left; margin:0; padding:20px 0 0 8px;}
  header .siteLogo img{width:50px; height:11px;}
  header .offleft{margin:15px 10px 0 0; width:16px; height:19px;}
}

/*-------------------------------------------
content
-------------------------------------------*/
#contents{
	height:auto;
	margin:0 auto;
	padding-right:10px;
	/*padding:30px 10px;*/
}
body#directOpen #contents{width:650px; padding:0 0 30px;}
body#contactBody #contents{width:900px; padding:0 0 30px;}

@media screen and (max-width:767px){
	body#directOpen #contents,
	body#contactBody #contents{padding:0 10px 20px; width:auto;}
	#content h1{font-size:1.8em;}
}


/*---------------------------------------
opacity
----------------------------------------*/
.offleft img:hover,
.btnIndex img:hover{
	filter: alpha(opacity=70);
	-moz-opacity:0.7;
	opacity:0.70;
	cursor:pointer;
}


/* ------------------------------------------
footer
--------------------------------------------- */
footer{display:none; padding:77px 0 20px; clear:both; font-size:1.2rem; text-align: center;}
footer #copyright{width:auto; margin:0 auto; font-family: Helvetica, Arial,sans-serif;}
footer #groupLogo{margin:30px auto 15px;}
footer #groupLogo img{width:194px;}
body#directOpen footer,
body#contactBody footer{display:block;}

/* pagetop
---------------------------*/
.pagetop{
  position: fixed;
  bottom: 50px;
  right: 50px;
}
.pagetop > a {
  display: block;
  position: relative;
  width: 50px;
  height: 50px;
  background-color: #999;
}
.pagetop > a:hover{background-color: #aaa;}
.pagetop > a::before {
  content: '';
  display: inline-block;
  position: absolute;
  top: 40%;
  left: 50%;
  width: 8px;
  height: 8px;
  margin-left: -6px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

  @media screen and (max-width:767px){
    footer{padding:20px 0 10px; text-align: left;}
    footer #footerInner p#copyright{color:#999;}
    footer #copyright{width:auto; font-size:71%; margin:0 0 0 20px;}
    footer #groupLogo {margin: 20px 0 0; padding: 10px 20px; border-top: #e5e5e5 1px solid; }
    footer #groupLogo img{width:175px;}
    .pagetop {bottom: 20px; right: 0; }
  }


/*-------------------------------------------
clearfix
-------------------------------------------*/
.clearfix:after,
header:after,
footer:after{content:''; display:block; clear:both; height:0; overflow:hidden;}

.clearfix,
header,
footer{zoom:1;}