@charset "UTF-8";

/* ==========================================================
 html5 elements
========================================================== */
article, aside, figure, figcaption, footer, header, nav, section
{ display: block;}
/* ==========================================================
 reseting
========================================================== */
body {
  line-height: 1.6;
  color: #252525;
  font-size: 14px;
  -webkit-text-size-adjust: 100%;
}
@media screen and (max-width: 768px) {
body {
  min-width: 2px;
}
}
body, input, textarea, select, button {
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  /* 明朝フォント
  font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;*/
}
body, div, pre, p, blockquote, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, th, td, button, figure, figcaption
{ margin: 0; padding: 0;}
input, textarea
{ margin: 0; font-size: 100%;}
input, textarea, select
{ /*-webkit-appearance: none;*/}
textarea
{ resize: none;}
button
{ border: none; overflow: visible; background: none; vertical-align: top;  font-size: 100%; color: inherit; cursor: pointer; -webkit-appearance: none;}
label
{ cursor: pointer;}
table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}
fieldset, img
{ border: 0;}
img
{ height: auto; vertical-align: top;}
address, caption, code, em, th
{ font-style: normal; font-weight: normal;}
ol, ul
{ list-style: none;}
caption, th
{ text-align: left;}
h1, h2, h3, h4, h5, h6, strong, em
{ font-size: 100%; font-weight: normal;}
a, input
{/* outline: none; -webkit-tap-highlight-color:rgba(0,0,0,0);*/}
sup, sub
{ font-size: 63%;}
sup
{ vertical-align: top;}
sub
{ vertical-align: baseline;}
*
{ box-sizing: border-box; -webkit-box-sizing: border-box;}
/* ==========================================================
 base Link
========================================================== */
a {
  color: #f00;
  text-decoration: none;
}
a:visited {}
a:hover,
a:active,
a:focus { text-decoration: underline;}
/* ==========================================================
 clearfix
========================================================== */
.clearfix:before, .clearfix:after,
.contents:before, .contents:after
{
  content: "";
  display: table;
}
.clearfix:after,
.contents:after
{
  clear: both;
}
/* For IE 6/7
---------------------------------------------------------- */
.clearfix,
.contents
{
  *zoom: 1;
}
/* ==========================================================
 layout
========================================================== */
html { overflow-y: scroll;}
body { text-align: center;}
/* ==========================================================
 wrapper
========================================================== */
.wrapper {
  width: 100%;
}
/* ==========================================================
 header
========================================================== */
.header {
  width: 100%;
  position:fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  height: 80px;
  background-color: #fff;
}
  .header-in {
    width: 760px;
    margin: 0 auto;
    text-align: left;
    overflow:hidden;
  }
  .header-logo {
    margin: 10px 0 0;
    float:left;
    width: 178px;
  }
  .header-slogan {
    float:left;
    margin: 32px 0 0 60px;
    width: 285px;
  }
  .header-menu {
    float:left;
    margin: 29px 0 0 135px;
    width: 102px;
  }
@media screen and (max-width: 768px) {
.header { 
  height: 40px;
  z-index: 7;
}
  .header-in {
    width: 100%;
    margin: 0 auto;
    text-align: left;
    overflow:hidden;
  }
  .header-logo {
    margin: 10px 0 0;
    float:left;
    width: 89px;
  }
    .header-logo img {
      width: 100%;
    }
  .header-slogan {
    float:left;
    margin: 19px 0 0 27px;
    width: 143px;
  }
    .header-slogan img {
      width: 100%;
    }
  .header-menu {
    float: right;
    margin: 15px 11px 0 0;
    width: 64px;
  }
    .header-menu img {
      width: 100%;
    }
}
/* ==========================================================
 nav-global
========================================================== */
.nav-global {
  opacity: 0;
  position:fixed;
  z-index: 9;
  top: 80px;
  left: 0;
  right: 0;
  width: 100%;
  visibility: hidden;
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.nav-global.is-open {
  opacity: 1;
  visibility: visible;
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
  .btn-close-menu {
    display: inline-block;
    position:relative;
    right: -5px;
    z-index: 11;
    margin-top: 28px;
    cursor: pointer;
  }
  .nav-global .nav-in {
    margin: 0 auto;
    width: 840px;
    text-align:right;
  }
    .nav-global .nav-in ul {
      margin: 58px 0 0 -30px;
      overflow: hidden;
    }
      .nav-global ul li {
        display:block;
        float:left;
        margin: 0 0 26px 0;
        width: 33.33%;
      }
        .nav-global ul li a {
          display:block;
          margin-left: 30px;
        }
        .nav-global ul li a:hover {
        }
        .nav-global ul li .sub-nav06.sub-01 {
          display:block;
          margin-bottom: 16px;
        }
@media screen and (max-width: 768px) {
.nav-global {
  z-index: 8;
}
.nav-global.is-open {
  top: 0;
  bottom: 0;
  overflow: auto;
}
.sec-nav .nav-global {
  position: static;
  opacity: 1;
  visibility: visible;
  margin-bottom: 32px;
  -webkit-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
  .sec-nav .nav-global .nav-in{
    padding: 0 9px;
  }
  .btn-close-menu {
    right: -6px;
    width: 36px;
    height: 36px;
  }
  .btn-close-menu img {
    width: 100%;
    padding: 10px;
  }
  .nav-global .nav-in {
    padding: 0 16px;
    max-width: 362px;
    width: 100%;
  }
    .nav-global .nav-in ul {
      margin: 15px 0 0 -19px;
    }
      .nav-global ul li {
        margin: 0 0 15px 0;
        width: 50%;
      }
        .nav-global ul li a {
          margin-left: 19px;
        }
          .nav-global ul li a img {
            width: 100%;
          }
        .nav-global ul li a:hover {
        }
        .nav-global ul li .sub-nav06.sub-01 {
          margin-bottom: 8px;
        }
}
/* ==========================================================
 nav-local
========================================================== */
.nav-local {
}
  .nav-local li {
  }
    .nav-local li a {
    }
    .nav-local li a:hover {
    }
/* ==========================================================
 contents
========================================================== */
.tp_bn {
	margin: 22px auto 0;
    max-width: 452px;
}
.contents {
  width: 100%;
  min-width: 800px;
  margin: 80px auto 0;
  text-align: left;
}
@media screen and (max-width: 768px) {
.contents {
  min-width: inherit;
  margin-top: 40px;
}
}
/* ==========================================================
 footer
========================================================== */
.footer {
  width: 100%;
}
  .footer-in {
    width: 760px;
    margin: 0 auto;
    text-align: center;
  }
    .footer-in .bnr-footer-01 {
      margin-bottom: 95px;
    }
  .footer-utility {}
    .ttl-footer-01 { margin-bottom: 37px;}
    .footer-links {
      display:table;
      margin: 0 auto 85px;
      width: 560px;
    }
      .footer-links li {display: table-cell;}
  .ttl-footer-02 {
    margin-bottom: 27px;
  }
  .footer-copyright {
    margin-bottom: 92px;
    font-size: 14px;
    color:#252525;
    line-height: 1;
  }
@media screen and (max-width: 768px) {
.footer {}
  .footer-in {
    width: 100%;
  }
    .footer-in .bnr-footer-01 {
      margin: 0 auto 49px;
      width: 218px;
    }
      .footer-in .bnr-footer-01 img {
        width: 100%;
      }
  .footer-utility {}
    .ttl-footer-01 {
      margin: 0 auto 23px;
      width: 52px;
    }
      .ttl-footer-01 img {
        width: 100%;
      }
    .footer-links {
      table-layout: fixed;
      margin: 0 auto 60px;
      width: 100%;
      overflow:hidden;
    }
      .footer-links li {
        width: 25%;
        float:left;
        display:block;
      }
        .footer-links li a img {
          width: 100%;
        }
  .ttl-footer-02 {
    margin: 0 auto 18px;
    width: 207px;
  }
    .ttl-footer-02 img {
      width: 100%;
    }
  .footer-copyright {
    margin-bottom: 62px;
    font-size: 9px;
  }
}
/* ==========================================================
 grid
========================================================== */
/* grid-cmn
---------------------------------------------------------- */
.grid-cmn {
}
  .grid-cmn > .col {
  }
/* ==========================================================
 area
========================================================== */
/* area-cmn
---------------------------------------------------------- */
.area-cmn {
}
/* ==========================================================
 section
========================================================== */
/* sec-cmn
---------------------------------------------------------- */
.sec-cmn-01 {
  width: 760px;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 768px) {
.sec-cmn-01 { width: auto;}
}

/* sec-cmn-02
---------------------------------------------------------- */
.sec-cmn-02 { padding: 50px 0 69px;}
  .sec-cmn-02 .col-01 {
    float: left;
    width: 361px;
  }
  .sec-cmn-02 .col-02 {
    float: right;
    width: 360px;
  }
    .sec-cmn-02 .ttl-01 { margin-bottom: 15px;}
    .sec-cmn-02 .list-top-01 {}
      .sec-cmn-02 .list-top-01 li:not(:last-child) { margin-bottom: 6px;}
    .sec-cmn-02 .box-twitter-01 {
      position: relative;
      height: 440px;
      overflow-x: auto;
    }
    .sec-cmn-02 .col-02 .ttl-01 { 
      width: 120px;
      margin-top: 19px;
    }
      .sec-cmn-02 .col-02 .ttl-01 img { width: 100%;}

@media screen and (max-width: 768px) {
.sec-cmn-02 { padding: 39px 0 40px;}
  .sec-cmn-02 .col-01 { display: none;}
  .sec-cmn-02 .col-02 {
    float: none;
    width: 70.13333%;
    margin: 0 auto;
  }
    .sec-cmn-02 .box-twitter-01 {
      height: 222px;
      -webkit-overflow-scrolling: touch;
    }
    .sec-cmn-02 .col-02 .ttl-01 { 
      width: 82px;
      margin: 0 auto 5px;
    }
}

/* section last margin */
section:last-of-type {
  margin-bottom: 0;
}
/* ==========================================================
 box
========================================================== */
/* box-cmn
---------------------------------------------------------- */
.box-cmn {
}
/* ==========================================================
 hero
========================================================== */
/* hero-cmn
---------------------------------------------------------- */
.hero-cmn {
}
/* ==========================================================
 module
========================================================== */

/* ==========================================================
 title
========================================================== */
/* ttl-cmn-01
---------------------------------------------------------- */
.ttl-cmn-01 {
}
/* ttl-cmn-02
---------------------------------------------------------- */
.ttl-cmn-02 {
}
/* ttl-cmn-03
---------------------------------------------------------- */
.ttl-cmn-03 {
}
/* ==========================================================
 text
========================================================== */
/* txt-cmn
---------------------------------------------------------- */
.txt-cmn {
}
/* ==========================================================
 list
========================================================== */
/* list-cmn
---------------------------------------------------------- */
.list-cmn {
}
  .list-cmn li {
  }
/* ==========================================================
 table
========================================================== */
/* table-cmn
---------------------------------------------------------- */
.table-cmn {
}
  .table-cmn th,
  .table-cmn td {
  }
  .table-cmn th {
  }
  .table-cmn td {
  }
/* ==========================================================
 button
========================================================== */
/* btn-cmn
---------------------------------------------------------- */
.btn-cmn {
}
/* pagetop
---------------------------------------------------------- */
.btn-cmn-pagetop {
  padding-bottom: 160px;
  text-align: center;
}
@media screen and (max-width: 768px) {
.btn-cmn-pagetop {
  padding-bottom: 80px;
  margin: 0 auto;
  width: 54px;
}
  .btn-cmn-pagetop img {
    width: 100%;
  }
}
/* ==========================================================
 link
========================================================== */
/* link-cmn
---------------------------------------------------------- */
.link-cmn {
}
/* ==========================================================
 icon
========================================================== */
/* ico-cmn
---------------------------------------------------------- */
.ico-cmn {
}
/* ==========================================================
 figure
========================================================== */
/* fig-cmn
---------------------------------------------------------- */
.fig-cmn {
}
/* ==========================================================
 image
========================================================== */
/* img-cmn-adjust
---------------------------------------------------------- */
.img-cmn-adjust {
}
/* ==========================================================
 form
========================================================== */
/* base Form
---------------------------------------------------------- */
/* type="text" */
input[type="text"] {
}
/* type="checkbox" */
input[type="checkbox"] {
}
/* type="radio" */
input[type="radio"] {
}
/* select */
select {
}
/* textarea */
textarea {
}
/* button */
button {
}
/* class Form
---------------------------------------------------------- */
/* form-cmn-input
---------------------------------------------------------- */
.form-cmn-input {
}
/* form-cmn-check
---------------------------------------------------------- */
.form-cmn-check {
}
/* form-cmn-radio
---------------------------------------------------------- */
.form-cmn-radio {
}
/* form-cmn-select
---------------------------------------------------------- */
.form-cmn-select {
}
/* form-cmn-textarea
---------------------------------------------------------- */
.form-cmn-textarea {
}
/* form-cmn-button
---------------------------------------------------------- */
.form-cmn-button {
}
/* ==========================================================
 is
========================================================== */
/* opacity hover
---------------------------------------------------------- */
.is-opacity
{
  -ms-filter: 'alpha( opacity=100)';
  opacity: 1;
}
.is-opacity:hover
{
  -ms-filter: 'alpha( opacity=70)';
  filter: alpha( opacity=70);
  opacity: 0.7;
}
/* css animation 
---------------------------------------------------------- */
.is-animate
{
  -webkit-transition: all 0.2s ease 0s;
  transition: all 0.2s ease 0s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
/* ==========================================================
 style
========================================================== */
.s-fw-n     { font-weight: normal;}
.s-fw-b     { font-weight: bold;}
.s-ta-l     { text-align: left !important;}
.s-ta-c     { text-align: center !important;}
.s-ta-r     { text-align: right !important;}
.s-va-t     { vertical-align: top !important;}
.s-va-m     { vertical-align: middle !important;}
.s-va-b     { vertical-align: bottom !important;}
.s-ov-h     { overflow: hidden;}
.s-clear    { clear: both;}
.s-hide     { display: none;}
.s-txt-hide { text-indent: 100%; white-space: nowrap; overflow: hidden;}
.s-bg-n     { background: none !important;}
.s-mt-00    { margin-top: 0 !important;}
.s-mb-00    { margin-bottom: 0 !important;}
.s-ml-00    { margin-left: 0 !important;}
.s-mr-00    { margin-right: 0 !important;}
/* ==========================================================
 rwd switch
========================================================== */
/* pc
---------------------------------------------------------- */
.only-pc {}
.only-sp,
.no-pc { display: none !important;}
.no-sp {}
/* sp
---------------------------------------------------------- */
@media screen and (max-width: 768px) {
.only-pc,
.no-sp  { display: none !important;}
.only-sp,
.no-pc     { display: block !important;}
img.only-sp,
img.no-pc  { display: inline-block !important;}
}
/* ==========================================================
 tool
========================================================== */
.atode { padding: 10px; border: 2px solid #8c0000; background-color: #ff4d4d; color: #fff; font-size: 30px; text-align: center;}
.box-overlay-wrap {
    position: fixed;
    z-index: 8;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    background-color: rgba(50, 115, 194, 0.8);
    -webkit-transition: all 0.5s ease 0s;
    transition: all 0.5s ease 0s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
@media screen and (max-width: 768px) {
.box-overlay-wrap {
    z-index: 7;
}
}
.no-hover {
  pointer-events: none;
}

/* ==========================================================
 右下固定バナー
========================================================== */
.bn_bottom_01 {
	position: fixed;
	right: 20px;
    cursor: pointer;
	z-index: 1;
	bottom: 160px;

}
.bn_bottom_01 img {
	width: 100%;
}
.bn_bottom_01_sp {
	display: none;
}
.bn_bottom_02 {
	position: fixed;
	bottom: 20px;
	right: 20px;
    cursor: pointer;
	z-index: 1;
	
}
.bn_bottom_02 img {
	width: 100%;
}

@media screen and (max-width: 768px) {
.bn_bottom_01 {
width: 120px;
position: fixed;
right: 10px;
bottom: 90px;
z-index: 1;
cursor: pointer;
}
.bn_bottom_02 {
width: 120px;
position: fixed;
right: 10px;
bottom: 10px;
z-index: 1;
cursor: pointer;
}
	
}