@charset "UTF-8";
/* CSS Document */



@import url('https://fonts.googleapis.com/css?family=M+PLUS+1p:500,700,800|Noto+Sans+JP:400,700,900');

.fw_mplus{font-family: 'M PLUS 1p', sans-serif;}

.fw_minsf{font-family: "Times New Roman","ヒラギノ明朝 ProN W3","HiraMinProN-W3","HG明朝E","ＭＳ Ｐ明朝","MS PMincho",serif;}

* {
    margin: 0;
    padding: 0;
} 
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    vertical-align: baseline;
}
strong {
font-weight: bold;
}
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
    line-height: 1;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}

*, *::before, *::after {
	box-sizing: border-box;
}

.clearfix:before, .clearfix:after{content:""; display:table;}
.clearfix:after{clear:both;}
.clearfix{zoom:1;}

/*base*/
html {
	/*font-size: 62.5%;*/
	font-size: 10px;
	position: relative;
	text-align: center;
}
body {
	background: #ffffff;
	text-align: center;
	color: #333333;
	font-size: 1.6rem;
	font-family:'Noto Sans JP',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", Verdana,"Avenir Next", sans-serif;
	line-height: 180%;
	-webkit-text-size-adjust: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-weight: normal;
	position:relative;
min-width:1240px;
}

a {
	color: #333;
	text-decoration: none;
	-webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all  0.2s ease;
}

img {
	box-shadow: #fff 0 0 0;
	vertical-align:middle;
	max-width:100%;
}
a:hover {
	color: #2b95dd;
}
a img{
	-webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all  0.2s ease;}

.left{
	float: left;
	position:relative;
}
.right{
	float: right;
	position:relative;
}

.sp {
	display: none;
}

.container{
width:1200px;
	margin: 0 auto;
	text-align: left;
	position:relative;
}

#header{
width:100%;
position:absolute;
z-index:99;
min-width:1200px;
}
header h1{
float:left;
padding:25px 0 0 50px;
}
header h1 img{
}
header ul{
text-align:right;
}
header li{
display:inline-block;
vertical-align:top;
margin-left:35px;
font-size:1.6rem;
font-weight:bold;
color:#fff;
padding-top:35px;
position:relative;
}
header li a{
color:#fff;
}
header li .telicon{
width:20px;
}
header li.mailbtn{
padding-top:0;
}
header li.mailbtn a{
display:block;
width:100px;
height:95px;
background-color:#000;
text-align:center;
padding-top:30px;
}
header li.fw_mplus{
font-size:2rem;
}

header .inner{ cursor:pointer;
}
header .caption {
    position:absolute;
    top:75px;
	display: none;
	z-index:999;
	background-color:#2b95dd;
	width:310px;
	text-align:left;
}
header .caption a{
display:block;
padding:15px 0 15px 15px;
color:#fff;
}
header .caption a:hover{
background-color:#000;
}
header .caption a.linkbd{
border-bottom:1px dashed rgba(255,255,255,0.5)}

#header2{
background-color:#fff;
min-width:1200px;
width:100%;
position:fixed;
z-index:99;
}
header #header2 h1{
background-color:#ffe400;
padding:22px 40px 0 40px;
height:95px;
}
header #header2 h1 img{
width:240px
}

header #header2 li,header #header2 li a{
color:#000;
}
header #header2 .caption a{
color:#fff;
}
header #header2 .caption a:hover{
background-color:#000;
}


footer{
background-image:url(../img/footer_img.jpg);
background-repeat:no-repeat;
background-position:50% 0;
background-size:130% auto;
padding-top:310px;
}
#footer{
background-color:rgba(0,0,0,0.85);
padding:90px 0 10px 0;
color:#fff;
}
#copyright{
background-color:#535353;
color:#c7c7c7;
font-size:1.3rem;
padding:30px 0;
}
#footer .left ul{
padding-bottom:70px;
}
#footer .left li{
display:inline-block;
margin-right:45px;
vertical-align:middle;
font-size:1.5rem;
line-height:1.6;
}
#footer .left li:last-child{
margin-right:0;
}
#footer .left .title{
font-size:2.4rem;
font-weight:900;
line-height:1;
}
#footer .left .title span{
color:#2b95dd;
}
#footer .left .read{
padding:25px 0 30px 0;
}
#footer .left .tel{
font-size:1.4rem;
}
#footer .left .tel span{
font-size:2.8rem;
line-height:0.6;
}
#footer .left .mail{}
#footer .left .mail a{
display:block;
background-color:#d2d2d2;
padding:20px 25px;
width:360px;
font-weight:700;
background-image:url(../img/arrow_b.png);
background-repeat:no-repeat;
background-position:55% 50%;
    border-radius: 4px; 
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
}
#footer .left .mail a:hover{
background-color:#fff;
background-position:80% 50%;}
#footer .left .comname{
font-size:1.8rem;
font-weight:700;
padding-bottom:25px;
}
#footer .left .access{}
#footer .left .accessbtn{}
#footer .left .accessbtn a{
display:block;
border:1px solid #fff;
color:#fff;
padding:10px 10px 10px 0;
width:216px;
text-align:center;
font-size:1.8rem;
vertical-align:middle;
}
#footer .left .accessbtn a:hover{
background-color:#2b95dd;
}
#footer .right{}
#footer .right ul{
display:inline-block;
vertical-align:top;
width:190px;
margin-right:60px;
}
#footer .right ul:last-child{
margin-right:0;
}
#footer .right li{
border-bottom:1px solid #535353;
font-size:1.5rem;
}
#footer .right a{
display:block;
padding:12px 0;
color:#b3b3b3;
}
#footer .right a:hover{color:#2b95dd;}



/* Underline From Center */
.hrunderline {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden;
  padding:0 0 10px 0;
}
.hrunderline:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #fff;
  height: 4px;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hrunderline:hover:before, .hrunderline:focus:before, .hrunderline:active:before {
  left: 0;
  right: 0;
}

#header2 .hrunderline:before {
  background: #000;
  }


/* Radial Out */
.hvradialout {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  width:217px;
  padding:25px 0;
  text-align:center;
}

.hvradialout:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #2b95dd;
  border-radius: 100%;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvradialout:hover, .hvradialout:focus, .hvradialout:active {
  color: white;
}
.hvradialout:hover:before, .hvradialout:focus:before, .hvradialout:active:before {
  -webkit-transform: scale(2);
  transform: scale(2);
}

.block-revealer__element {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    pointer-events: none;
    opacity: 0;
}