@charset "utf-8";

/*========================================================================================================================


  ◇◆◇ レイアウト ◇◆◇
  
  1.  header
  2.  nav
  3.  contents
  4.  footer
  99. parts  
  
  
========================================================================================================================*/

body { background-color:#f5f5f5; }


/*----------------------------------------------------------------------------------------------------

  1.  header
  
----------------------------------------------------------------------------------------------------*/

#hd {
  width:100%;
  height:500px;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover;
}


/*-----------------------------------------------------------------------------------
  ページ見出し
-----------------------------------------------------------------------------------*/

#pgHd {
  width:1100px;
  height:405px;
  margin-left:auto;
  margin-right:auto;
  display:table;
}

#pgHd h2 {
  display:table-cell;
  vertical-align:middle;
  height:100%;
  text-align:center;
  font-size:200%;
  font-weight:200;
  color:#fff;
  letter-spacing:0.075em;
}

#pgHd h2:before {
  display:block;
}


/*----------------------------------------------------------------------------------------------------

  2.  nav
  
----------------------------------------------------------------------------------------------------*/

#glNav {
  width:100%;
  min-width:1160px;
  color:#fff;
}

#glNav a,
#glNav a:visited,
#glNav a:hover { color:#fff; text-decoration:none; }

#glNav nav {
  max-width:1100px;
  margin-left:auto;
  margin-right:auto;
  text-align:left;
  position:relative;
  padding-top:30px;
}

#glNav_title a {
  display:block;
  width:260px;
  height:65px;
  background:url(../image/hd_title.png) no-repeat left center;
}

#glNav ul {
  list-style:none;
  width:840px;
  height:100%;
  position:absolute;
  right:0;
  bottom:0;
  text-align:right;
}

#glNav li {
  height:100%;
  display:inline-block;
}

#glNav li a {
  height:100%;
  display:block;
  position:relative;
  padding:68px 1.25em 0 1.25em;
  box-sizing:border-box;
}

#glNav li:last-child a { padding-right:0; }

#glNav li a span {
  -webkit-transition:opacity ease 0.3s;
  -moz-transition:opacity ease 0.3s;
  -ms-transition:opacity ease 0.3s;
  -o-transition:opacity ease 0.3s;
  transition:opacity ease 0.3s;
}

#glNav li a:hover span {
  filter:alpha(opacity=50);
  opacity:0.5;
  -moz-opacity:0.5;
}

.cssanimations #glNav li a:after {
  content:"";
  width:1px;
  height:60px;
  background-color:#fff;
  background-color:rgba(255,255,255,0.7);
  position:absolute;
  left:50%;
  top:-100%;
  -webkit-transition:top ease 0.5s;
  -moz-transition:top ease 0.5s;
  -ms-transition:top ease 0.5s;
  -o-transition:top ease 0.5s;
  transition:top ease 0.5s;
}

.cssanimations #glNav li a:hover:after { top:0; }


/*----------------------------------------------------------------------------------------------------

  3.  contents
  
----------------------------------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------------
  パンくず
-----------------------------------------------------------------------------------*/

#pan {
  background-color:#1e1e1e;
  padding:0.5em 0 0.65em 0;
  color:#fff;
}

#pan ul {
  max-width:1100px;
  margin-left:auto;
  margin-right:auto;
  text-align:left;
  font-size:81.3%;
  list-style:none;
}

#pan li {
  display:inline-block;
  position:relative;
  padding-left:1.25em;
  padding-left:1.25rem;
}

#pan li:before {
  content:"";
  display:inline-block;
  width:0.4em;
  height:0.4em;
  position:absolute;
  top:50%;
  left:0.15em;
  margin-top:-0.2em;
  border-right:1px solid #fff;
  border-bottom:1px solid #fff;
  border-right:1px solid rgba(255,255,255,0.7);
  border-bottom:1px solid rgba(255,255,255,0.7);
  -webkit-transform:rotate(-45deg);
  transform:rotate(-45deg);
}

#pan li:first-child { padding-left:0; }
#pan li:first-child:before { display:none; }

#pan a,
#pan a:visited,
#pan a:hover   { color:#fff; text-decoration:none; }

#pan a:hover {
  filter:alpha(opacity=50);
  opacity:0.5;
  -moz-opacity:0.5;
}


/*----------------------------------------------------------------------------------------------------

  4.  footer
  
----------------------------------------------------------------------------------------------------*/

#ft {
  background:url(../image/ft_bg.jpg) no-repeat center bottom;
  background-size:cover;
  color:#fff;
  padding-top:80px;
  padding-bottom:70px;
}

#ft a,
#ft a:visited,
#ft a:hover { color:#fff; text-decoration:none; }

#ft a:hover {
  filter:alpha(opacity=50);
  opacity:0.5;
  -moz-opacity:0.5;
}

#ft_title {
  line-height:1.4;
  font-size:200%;
  font-weight:400;
}

#ft_title span { font-size:50%; font-weight:200; }

.ft_ad address { margin-top:1.5em; margin-bottom:1.5em; }

.ft_tel { line-height:1; }

.ft_tel .l-tel__no:before {
  background-image:url(../image/icon/tel_s.png);
}

.ft_tel .taiou {
  line-height:1.2;
  display:inline-block;
  border:1px solid #fff;
  border:1px solid rgba(255,255,255,0.7);
  padding:0.25em 0.5em 0.5em 0.5em;
  margin-left:1em;
  vertical-align:super;
}


/*-----------------------------------------------------------------------------------
  nav
-----------------------------------------------------------------------------------*/

#ft_nav {
  list-style:none;
  display:inline-block;
  padding-top:50px;
  font-size:93.8%;
}

#ft_nav li {
  display:inline-block;
  position:relative;
  padding-left:0.5em;
  padding-right:1.25em;
}

#ft_nav li:before {
  content:"";
  display:inline-block;
  width:1em;
  height:1em;
  border-right:1px solid #fff;
  border-right:1px solid rgba(255,255,255,0.7);
  -ms-transform:rotate(45deg);
  -webkit-transform:rotate(45deg);
  transform:rotate(45deg);
  position:absolute;
  right:0;
  top:50%;
  margin-top:-0.75em;
}

#ft_nav li:last-child:before { display:none; }


/*-----------------------------------------------------------------------------------
  pagetop
-----------------------------------------------------------------------------------*/

.page-top {
  z-index:90;
  position:fixed;
  right:0;
  bottom:0;
  display:inline-block;
  display:none;
}
    
.page-top a {
  text-indent:100%;
  white-space:nowrap;
  overflow:hidden;
  text-decoration:none;
  color:#fff;
  display:block;
  background-color:#fff;
  text-align:center;
  width:50px;
  height:50px;
  position:relative;
  -webkit-transition:background ease 0.3s;
  -moz-transition:background ease 0.3s;
  -ms-transition:background ease 0.3s;
  -o-transition:background ease 0.3s;
  transition:background ease 0.3s;
}

.page-top a:hover { background-color:#464678; }

.page-top a span {
  display:inline-block;
  width:1px;
  height:18px;
  background-color:#3c3c3c;
  position:absolute;
  left:50%;
  top:18px;
  margin-left:1px;
  -webkit-transition:background ease 0.3s;
  -moz-transition:background ease 0.3s;
  -ms-transition:background ease 0.3s;
  -o-transition:background ease 0.3s;
  transition:background ease 0.3s;
}

.page-top a span:after {
  z-index:2;
  content:"";
  display:inline-block;
  width:6px;
  height:1px;
  border-top:1px solid #3c3c3c;
  -ms-transform:rotate(-45deg);
  -webkit-transform:rotate(-45deg);
  transform:rotate(-45deg);
  position:absolute;
  left:50%;
  top:2px;
  margin-left:-5px;
  -webkit-transition:border ease 0.3s;
  -moz-transition:border ease 0.3s;
  -ms-transition:border ease 0.3s;
  -o-transition:border ease 0.3s;
  transition:border ease 0.3s;
}

.page-top a:hover span { background-color:#fff; background-color:rgba(255,255,255,0.7); }
.page-top a:hover span:after { border-color:#fff; border-color:rgba(255,255,255,0.7); }

.lte-ie8 .page-top { display:none; }


/*-----------------------------------------------------------------------------------
  copy
-----------------------------------------------------------------------------------*/

.copyright {
  font-family:Verdana, Geneva, sans-serif;
  background-color:#141414;
  color:#a0a0a0;
  font-size:62.5%;
  box-sizing:border-box;
  padding:1em;
  letter-spacing:0;
}

.copyright small {
  padding-left:0.5em;
}


/*----------------------------------------------------------------------------------------------------

  99. parts
  
----------------------------------------------------------------------------------------------------*/

/*-----------------------------------------------------------------------------------
  photo zoom
-----------------------------------------------------------------------------------*/

.photo-zoom { display:block; overflow:hidden;}
.photo-zoom,
.photo-zoom img {
  transform:translate3d(0,0,0);
  transition:transform 0.6s ease, opacity 0.3s ease;
  width:100%;
  height:auto;
}
.photo-zoomArea:hover .photo-zoom {
  filter:alpha(opacity=60);
  opacity:0.6;
  -moz-opacity:0.6;
}
.cssanimations .photo-zoomArea:hover .photo-zoom img { transform:scale(1.06); }


/*-----------------------------------------------------------------------------------
  tel
-----------------------------------------------------------------------------------*/

.l-tel {
  line-height:1;
}

.l-tel__no {
  display:inline-block;
  font-weight:400;
  font-size:200%;
}

.l-tel__no:before {
  content:"";
  display:inline-block;
  width:23px;
  height:28px;
  background-image:url(../image/icon/tel-black_s.png);
  background-repeat:no-repeat;
  background-position:left center;
  margin-right:10px;
  margin-bottom:-2px;
}


/*-----------------------------------------------------------------------------------
  ボタン
-----------------------------------------------------------------------------------*/

.preload .l-btn,
.preload .l-btn * {
  -webkit-transition:none !important;
  -moz-transition:none !important;
  -ms-transition:none !important;
  -o-transition:none !important;
  transition:none !important;
  animation:none !important;
}

.l-btn {
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  display:inline-block;
  box-sizing:border-box;
  border:none;
  margin:0;
  outline:none;
  text-align:center;
  text-decoration:none;
  font-size:inherit;
  cursor:pointer;
  line-height:1.4;
  position:relative;
}

.l-btn button,
.l-btn input {
  background:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  display:inline-block;
  box-sizing:border-box;
  border:none;
  margin:0;
  outline:none;
  text-align:center;
  text-decoration:none;
  font-size:inherit;
}

.l-btn a,
.l-btn button,
.l-btn input {
  display:block;
  position:relative;
  padding:0.75em 1.5em;
  box-sizing:border-box;
  -webkit-transition:background ease 0.2s, border ease 0.2s, color ease 0.1s;
  -moz-transition:background ease 0.2s, border ease 0.2s, color ease 0.1s;
  -ms-transition:background ease 0.2s, border ease 0.2s, color ease 0.1s;
  -o-transition:background ease 0.2s, border ease 0.2s, color ease 0.1s;
  transition:background ease 0.2s, border ease 0.2s, color ease 0.1s;
}

.l-btnS a,
.l-btnS button,
.l-btnS input { padding:0.5em 1em; font-size:87.5%; }

.l-btnM a,
.l-btnM button,
.l-btnM input { padding:0.75em 2em; font-size:112.5%; }
 
.l-btnL a,
.l-btnL button,
.l-btnL input { padding:0.75em 2em; font-size:125%; }

.l-btn a,
.l-btn a:visited,
.l-btn a:hover { color:inherit; text-decoration:none; }

.l-btn__txt {
  position:relative;
  z-index:2;
}

.l-btn:before {
  background-color:#464678;
  content:"";
  width:0;
  height:100%;
  position:absolute;
  left:0;
  top:0;
  z-index:1;
  -webkit-transition:width ease 0.3s;
  -moz-transition:width ease 0.3s;
  -ms-transition:width ease 0.3s;
  -o-transition:width ease 0.3s;
  transition:width ease 0.3s;
}

.l-btn:hover:before {
  width:100%;
}

.l-btn.prev:before { left:inherit; right:0; }


/* 右矢印
=====================================================================================*/

.l-btn__next {
  display:inline-block;
  position:relative;
}

.l-btn__next:before {
  z-index:2;
  content:"";
  display:inline-block;
  width:24px;
  height:1px;
  border-top-width:1px;
  border-top-style:solid;
  position:absolute;
  right:-12px;
  top:50%;
  -webkit-transition:width ease 0.3s;
  -moz-transition:width ease 0.3s;
  -ms-transition:width ease 0.3s;
  -o-transition:width ease 0.3s;
  transition:width ease 0.3s;
  transition-delay:0.2s;
}

.l-btn__next:after {
  z-index:2;
  content:"";
  display:inline-block;
  width:5px;
  height:1px;
  border-top-width:1px;
  border-top-style:solid;
  -ms-transform:rotate(45deg);
  -webkit-transform:rotate(45deg);
  transform:rotate(45deg);
  position:absolute;
  right:-12px;
  top:50%;
  margin-top:-1.5px;
  margin-left:-0.5px;
  -webkit-transition:width ease 0.3s, margin-top ease 0.3s;
  -moz-transition:width ease 0.3s, margin-top ease 0.3s;
  -ms-transition:width ease 0.3s, margin-top ease 0.3s;
  -o-transition:width ease 0.3s, margin-top ease 0.3s;
  transition:width ease 0.3s, margin-top ease 0.3s;
  transition-delay:0.2s;
}

.lte-ie8 .l-btn__next:before,
.lte-ie8 .l-btn__next:after { display:none; }


.l-btn:hover .l-btn__next:before,
.l-btn:hover .l-btn__next:after { width:0; }
.l-btn:hover .l-btn__next:after { margin-top:0; }


/* 左矢印
=====================================================================================*/

.l-btn__prev {
  display:inline-block;
  position:relative;
}

.l-btn__prev:before {
  z-index:2;
  content:"";
  display:inline-block;
  width:24px;
  height:1px;
  border-top-width:1px;
  border-top-style:solid;
  position:absolute;
  left:-12px;
  top:50%;
  -webkit-transition:width ease 0.3s;
  -moz-transition:width ease 0.3s;
  -ms-transition:width ease 0.3s;
  -o-transition:width ease 0.3s;
  transition:width ease 0.3s;
  transition-delay:0.2s;
}

.l-btn__prev:after {
  z-index:2;
  content:"";
  display:inline-block;
  width:5px;
  height:1px;
  border-top-width:1px;
  border-top-style:solid;
  -ms-transform:rotate(-45deg);
  -webkit-transform:rotate(-45deg);
  transform:rotate(-45deg);
  position:absolute;
  left:-12px;
  top:50%;
  margin-top:-1.5px;
  margin-right:-0.5px;
  -webkit-transition:width ease 0.3s, margin-top ease 0.3s;
  -moz-transition:width ease 0.3s, margin-top ease 0.3s;
  -ms-transition:width ease 0.3s, margin-top ease 0.3s;
  -o-transition:width ease 0.3s, margin-top ease 0.3s;
  transition:width ease 0.3s, margin-top ease 0.3s;
  transition-delay:0.2s;
}

.lte-ie8 .l-btn__prev:before,
.lte-ie8 .l-btn__prev:after { display:none; }


.l-btn:hover .l-btn__prev:before,
.l-btn:hover .l-btn__prev:after { width:0; }
.l-btn:hover .l-btn__prev:after { margin-top:0; }


/* カラー
=====================================================================================*/

.l-btn--bLine a,
.l-btn--bLine button,
.l-btn--bLine input { border:1px solid #3c3c3c; }
.l-btn--bLine,
.l-btn--bLine:visited { color:inherit; }
.l-btn--bLine:hover,
.l-btn--bLine:hover a { color:#fff !important; }

.l-btn--bLine .l-btn__next:before,
.l-btn--bLine .l-btn__next:after,
.l-btn--bLine .l-btn__prev:before,
.l-btn--bLine .l-btn__prev:after { border-top-color:#3c3c3c; }


.l-btn--wLine a,
.l-btn--wLine button,
.l-btn--wLine input { border:1px solid #fff; border:1px solid rgba(255,255,255,0.7); }
.l-btn--wLine,
.l-btn--wLine:visited,
.l-btn--wLine:hover,
.l-btn--wLine:hover a { color:#fff; }

.l-btn--wLine .l-btn__next:before,
.l-btn--wLine .l-btn__next:after,
.l-btn--wLine .l-btn__prev:before,
.l-btn--wLine .l-btn__prev:after { border-top-color:#fff; border-top-color:rgba(255,255,255,0.7); }


/*-----------------------------------------------------------------------------------

  ファイルアイコン
  
-----------------------------------------------------------------------------------*/

.ic-file {
  content:"";
  display:inline-block;
  width:34px;
  height:30px;
  margin-right:15px;
  margin-top:-0.5em;
  vertical-align:middle;
  background-position:center center;
  background-repeat:no-repeat;
  background-image:url(../image/icon/file.png);
}


/*-----------------------------------------------------------------------------------

  ブログパターン
  
-----------------------------------------------------------------------------------*/

.glog {
  padding-bottom:40px;
  text-align:left;
}

.glog:after {
  content:"";
  display:block;
  height:0;
  clear:both;
}

.glog ul,
.glog ol {
  list-style:inherit;
  margin-left:1.25em;
  margin-left:1.25rem;
}
.glog ol {
  list-style:decimal;
}

.glog-txt {
  box-sizing:border-box;
  word-break:break-all;
}

.glog-image-left .glog-txt {
  float:right;
}

.glog-image-right .glog-txt {
  float:left;
}

.glog-image-left .glog-img,
.glog-image-right .glog-img {
  display:inline-block;
  margin-bottom:10px;
  box-sizing:border-box;
}

.glog-image-left .glog-img {
  float:left;
  margin-right:30px;
}

.glog-image-right .glog-img {
  float:right;
  margin-left:30px;
}

.glog-image-center .glog-img {
  display:block;
  text-align:center;
  margin-bottom:25px;
}

.glog-img_cp {
  display:block;
  font-size:75%;
  line-height:1.5;
  color:#9f9f9f;
}

.glog .datafile {
  margin-bottom:1em;
  margin-bottom:1rem;
  display:inline-block;
}


/*-----------------------------------------------------------------------------------
  pagination
-----------------------------------------------------------------------------------*/

.glog-pagination {
  text-align:center;
  padding-top:40px;
}

.glog-pagination ul {
  display:inline-block;
  list-style:none;
  margin-left:-3px;
}

.glog-pagination li {
  float:left;
  display:inline-block;
  margin:3px;
  font-size:87.5%;
}

.glog-pagination li:after {
  content:"";
  display:block;
  height:0;
  clear:both;
}

.glog-pagination li a { display:block; }

.glog-pagination li a,
.glog-pagination li a:visited { color:inherit; text-decoration:none; }
.glog-pagination li span:hover,
.glog-pagination li span:hover a,
.glog-pagination li a:hover { color:#fff; }

.glog-pagination li span {
  line-height:1;
  width:2em;
  height:2em;
  padding-top:0.4em;
  display:block;
  color:inherit;
  background-color:#dcdcdc;
  box-sizing:border-box;
  -webkit-transition:background ease 0.3s, border ease 0.3s;
  -moz-transition:background ease 0.3s, border ease 0.3s;
  -ms-transition:background ease 0.3s, border ease 0.3s;
  -o-transition:background ease 0.3s, border ease 0.3s;
  transition:background ease 0.3s, border ease 0.3s;
}

.glog-pagination li span.active:hover,
.glog-pagination li span.active { color:#fff; background-color:#464678; }
.glog-pagination li span:hover { color:#464678; background-color:#fff; }


/*-----------------------------------------------------------------------------------
  非公開
-----------------------------------------------------------------------------------*/

.hnone-box {
  width:1100px;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
  box-sizing:border-box;
  padding:1em;
  color:#95384f;
  border-top:1px solid #95384f;
  border-bottom:1px solid #95384f;
  margin-bottom:60px;
}

.hnone-box b {
  font-size:146.2%;
}
