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

* common.css

*********************************************************************
*/
/* =========================================================
body
========================================================= */
body {
  font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, sans-serif;
  line-height: 2;
  min-width: 320px;
  background: #fff;
  font-size: 16px;
  font-size: 1.6rem; }

@media only screen and (min-width: 769px) {
  body {
    min-width: 1130px;
    font-size: 16px;
    font-size: 1.6rem; } }

@media only screen and (max-width: 768px) {
  body {
    width: 100%;
      overflow-x: hidden;
    font-size: 15px;
    font-size: 1.5rem; } }

/* =========================================================
layout
========================================================= */
#Wrapper {
  position: relative;
  overflow: hidden;
  width: 100%; }

.inner {
  position: relative;
  margin: 0 auto; }

img {
  max-width: 100%;
  height: auto; }

@media only screen and (min-width: 769px) {
  .inner {
    max-width: 1100px; } }

@media only screen and (max-width: 768px) {
  .inner {
    padding: 0 2.6666666667vw; } }

/* =========================================================
Pop
========================================================= */
#Overlay {
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8); }

/* =========================================================
#GHead
========================================================= */
#GHead {
  line-height: 1;
  position: absolute;
  z-index: 1;
  top: 0; }
  #GHead img {
    vertical-align: top; }
  #GHead .logo {
    display: none;
    background-color: #fff; }
    #GHead .logo a {
      display: block; }
      #GHead .logo a:hover {
        opacity: 0.75; }

@media only screen and (min-width: 769px) {
  #GHead {
    right: 0; }
    #GHead .logo {
      width: 200px; }
      #GHead .logo a {
        padding: 25px 18px; } }

@media only screen and (max-width: 768px) {
  #GHead {
    left: 0; }
    #GHead .logo {
      width: 40vw; }
      #GHead .logo a {
        padding: 2.1333333333vw 2.6666666667vw; } }

/* =========================================================
#GFoot
========================================================= */
#GFoot {
  line-height: 1;
  position: relative; }
  #GFoot img {
    vertical-align: top; }
  #GFoot .logo a {
    display: block; }
    #GFoot .logo a:hover {
      opacity: 0.75; }
  #GFoot .coLink a {
    display: block;
    text-decoration: none;
    border: 1px solid #ddd; }
    #GFoot .coLink a:hover {
      opacity: 0.75; }
  #GFoot .coLink img {
    vertical-align: middle; }

@media only screen and (min-width: 769px) {
  #GFoot {
    display: flex;
    padding: 20px 20px;
    align-items: center; }
    #GFoot .logo {
      width: 210px; }
    #GFoot .coLink {
      padding-left: 30px;
      font-size: 13px;
      font-size: 1.3rem; }
      #GFoot .coLink a {
        padding: 8px 10px;
        border-radius: 5px; }
      #GFoot .coLink img {
        width: 12px;
        margin-right: 10px; }
    #GFoot .copyright {
      position: absolute;
      top: 50%;
      right: 20px;
      transform: translateY(-50%);
      font-size: 10px;
      font-size: 1rem; } }

@media only screen and (max-width: 768px) {
  #GFoot {
    padding: 5.3333333333vw 2.6666666667vw; }
    #GFoot .logo {
      float: left;
      width: 46.6666666667vw; }
    #GFoot .coLink {
      float: right;
      margin-top: 1.3333333333vw;
      font-size: 13px;
      font-size: 3.4666666667vw; }
      #GFoot .coLink a {
        padding: 2.1333333333vw 2.1333333333vw;
        border-radius: 0.8vw; }
      #GFoot .coLink img {
        width: 3.7333333333vw;
        margin-right: 2.6666666667vw; }
    #GFoot .copyright {
      clear: both;
      padding-top: 5.3333333333vw;
      text-align: center;
      font-size: 10px;
      font-size: 2.6666666667vw; } }


      .txt-l{
        text-align: left!important;
      }