/* Scss Document */
img {
  width: auto;
  height: auto;
  max-width: 100%; }

#pageWrap {
  width: 100%; }

* {
  font-family: "Yu Gothic","Noto Sans JP",Verdana, Geneva, "sans-serif"; }
.mv img {
	width: 100%;
	height: auto;
}
.pageTit {
  background: #e3e3e3;
  padding: 20px 0;
  margin: 0;
  text-align: center;
  font-size: 20px; }
  .pageTit img {
    height: 49px;
    margin-bottom: -10px; }
  @media screen and (max-width: 1024px) {
    .pageTit {
      font-size: 16px; }
      .pageTit img {
        height: 30px; } }

@media screen and (min-width: 1025px) {
  .viewSp {
    display: none; } }
@media screen and (max-width: 1024px) {
  .viewPc {
    display: none; } }
#gHeader {
  width: 100%;
  box-sizing: border-box;
  background: url(../img/common/bg_line01.png) repeat-x 100% 100% #fff;
  padding: 9px calc((100% - 1620px) / 2) 0;
  position: fixed;
  z-index: 9000; }
  #gHeader:after {
    content: '';
    display: block;
    clear: both; }
  #gHeader .logo {
    width: 224px;
    float: left;
    margin-right: 65px; }
  #gHeader #gNav {
    float: left;
    width: calc(1620px - 300px); }
    #gHeader #gNav .navList {
      padding-top: 35px;
      display: flex;
      justify-content: space-between;
      background: #fff;
      width: 1000px;
      float: left; }
      #gHeader #gNav .navList li a {
        display: block;
        padding: 3px 0 10px;
        position: relative;
        text-align: center;
        background: #fff; }
        #gHeader #gNav .navList li a:after {
          content: '';
          display: block;
          position: 0 100%;
          height: 2px;
          width: 100%;
          background: #CE0E2D;
          transition: all 0.3s;
          transform-origin: 50% 100%;
          transform: scaleX(0); }
        #gHeader #gNav .navList li a img {
          max-width: none;
          height: 16px; }
        #gHeader #gNav .navList li a:hover:after {
          transform: scaleX(1); }
    #gHeader #gNav .ec {
      padding-top: 20px;
      background: #fff;
      width: 155px;
      float: right; }
  @media screen and (max-width: 1620px) {
    #gHeader {
      padding: 10px 20px 0; }
      #gHeader .logo {
        width: 15vw;
        max-width: 224px;
        float: left;
        margin-right: 40px; }
      #gHeader #gNav {
        float: left;
        width: calc(85vw - 100px); }
        #gHeader #gNav .navList {
          padding-top: 35px;
          display: flex;
          justify-content: space-between;
          background: #fff;
          width: 60vw;
          float: left; }
          #gHeader #gNav .navList li a {
            display: block;
            padding: 3px 0 10px;
            position: relative;
            text-align: center;
            background: #fff; }
            #gHeader #gNav .navList li a:after {
              content: '';
              display: block;
              position: 0 100%;
              height: 2px;
              width: 100%;
              background: #CE0E2D;
              transition: all 0.3s;
              transform-origin: 50% 100%;
              transform: scaleX(0); }
            #gHeader #gNav .navList li a img {
              max-width: none;
              height: 12px; }
            #gHeader #gNav .navList li a:hover:after {
              transform: scaleX(1); }
             }
  @media screen and (max-width: 1024px) {
    #gHeader {
      padding: 5px 10px 0;
      height: 60px; }
      #gHeader .logo {
        width: 125px;
        margin: 5px 0 0; }
      #gHeader #nav-btn {
        float: right;
        width: 40px;
        height: 40px;
        margin-top: 5px;
        padding: 5px;
        box-sizing: border-box; }
        #gHeader #nav-btn div {
          width: 100%;
          height: 4px;
          margin: 4px 0;
          background: #CE0E2D; }
        #gHeader #nav-btn.on {
          background: #002169; }
          #gHeader #nav-btn.on div {
            background: #fff; }
          #gHeader #nav-btn.on div:first-child,
          #gHeader #nav-btn.on div:last-child {
            background: #002169; }
      #gHeader #gNav {
        display: none;
        float: none;
        width: 100%;
        position: fixed;
        top: 60px;
        left: 0;
        box-sizing: border-box; }
        #gHeader #gNav.on {
          display: block; }
        #gHeader #gNav .navList {
          padding-top: 0;
          display: block;
          background: #fff;
          width: 100%; }
          #gHeader #gNav .navList li {
            border-bottom: solid 1px #ececec; }
            #gHeader #gNav .navList li a {
              display: block;
              padding: 12px 0 5px;
              position: relative;
              text-align: center;
              background: #fff; }
              #gHeader #gNav .navList li a:after {
                content: '';
                display: none; }
              #gHeader #gNav .navList li a img {
                max-width: none;
                height: 16px; }
        #gHeader #gNav .snsList {
          padding: 10px;
          box-sizing: border-box;
          width: 100%;
          display: flex;
          justify-content: center;
          background: #fff;
          float: none; }
          
            #gHeader #gNav .ec {
                
              padding: 20px;
              background: #fff;
              width: 100%;
              float: none;
              clear: both;
              text-align: center;
              box-sizing: border-box; }
             }

#gFooter #pageTop {
  position: fixed;
  margin: 0 40px 40px 0;
  width: 40px; }
  #gFooter #pageTop:hover {
    opacity: 0.7; }
#gFooter #footerNav {
  background: #e3e3e3;
  padding: 30px calc((100% - 1280px) / 2) 20px;
  box-sizing: border-box;
  position: relative; }
  #gFooter #footerNav:after {
    content: '';
    display: block;
    clear: both; }
  #gFooter #footerNav .logo {
    width: 134px;
    float: left;
    margin: 0; }
  #gFooter #footerNav .mainNav {
    width: calc(100% -134px); }
    #gFooter #footerNav .mainNav > ul {
      margin-left: 65px;
      float: left; }
      #gFooter #footerNav .mainNav > ul > li {
        padding: 5px 0; }
        #gFooter #footerNav .mainNav > ul > li a:hover {
          opacity: 0.7; }
        #gFooter #footerNav .mainNav > ul > li img {
          max-width: none;
          height: 14px; }
        #gFooter #footerNav .mainNav > ul > li li a {
          display: block;
          text-decoration: none;
          color: #323232; }
          #gFooter #footerNav .mainNav > ul > li li a:before {
            content: '-';
            color: #CE0E2D;
            display: inline-block;
            padding: 0 3px; }
          #gFooter #footerNav .mainNav > ul > li li a:hover {
            color: #CE0E2D; }
      #gFooter #footerNav .mainNav > ul.main02 ul {
        width: 420px;
        display: flex;
        flex-wrap: wrap; }
        #gFooter #footerNav .mainNav > ul.main02 ul li {
          width: 50%; }
  #gFooter #footerNav .subNav {
    clear: both;
    width: 372px;
    margin-left: 200px;
    padding-top: 40px; }
    #gFooter #footerNav .subNav ul {
      display: flex; }
      #gFooter #footerNav .subNav ul li {
        width: calc(100% / 3);
        box-sizing: border-box;
        border-left: solid 1px #000;
        text-align: center;
        padding: 10px 0; }
        #gFooter #footerNav .subNav ul li:last-child {
          border-right: solid 1px #000; }
        #gFooter #footerNav .subNav ul li a img {
          max-width: none;
          height: 10px; }
        #gFooter #footerNav .subNav ul li a:hover {
          opacity: 0.7; }
  #gFooter #footerNav .copyright {
    float: right;
    font-size: 12px;
    font-weight: bold;
    margin-top: -30px; }
  #gFooter #footerNav .snsNav {
    width: 372px;
    float: right;
    margin: -200px 114px 0 0; }
    #gFooter #footerNav .snsNav h3 {
      margin: 10px 0; }
    #gFooter #footerNav .snsNav ul {
      display: flex;
      justify-content: center; }
      #gFooter #footerNav .snsNav ul li {
        margin: 2px;
        padding-top: 5px; }
      #gFooter #footerNav .snsNav ul li.icon {
        padding-top: 0; }
        #gFooter #footerNav .snsNav ul li.icon img {
          max-width: none;
          width: 38px; }
#gFooter .music {
  width: 300px;
  position: absolute;
  margin-top: -121px; }
  #gFooter .music #player {
    margin-top: -20px; }
  #gFooter .music .txt {
    padding-top: 10px;
    font-size: 12px;
    font-weight: bold;
    color: #323232; }
@media screen and (max-width: 1620px) {
  #gFooter #pageTop {
    position: fixed;
    right: 40px;
    bottom: 40px;
    width: 40px; }
    #gFooter #pageTop:hover {
      opacity: 0.7; }
  #gFooter #footerNav {
    background: #e3e3e3;
    padding: 20px;
    box-sizing: border-box;
    position: relative; }
    #gFooter #footerNav:after {
      content: '';
      display: block;
      clear: both; }
    #gFooter #footerNav .logo {
      width: 10vw;
      max-width: 134px;
      float: left;
      margin: 0 20px 0 0;
      position: relative; }
    #gFooter #footerNav .mainNav > ul {
      margin-left: 60px;
      float: left; }
      #gFooter #footerNav .mainNav > ul > li {
        padding: 5px 0; }
        #gFooter #footerNav .mainNav > ul > li a:hover {
          opacity: 0.7; }
        #gFooter #footerNav .mainNav > ul > li img {
          max-width: none;
          height: 14px; }
        #gFooter #footerNav .mainNav > ul > li li a {
          display: block;
          text-decoration: none;
          color: #323232; }
          #gFooter #footerNav .mainNav > ul > li li a:before {
            content: '-';
            color: #CE0E2D;
            display: inline-block;
            padding: 0 3px; }
          #gFooter #footerNav .mainNav > ul > li li a:hover {
            color: #CE0E2D; }
      #gFooter #footerNav .mainNav > ul.main02 {
        width: calc((100% - 35vw -40px) * 2 / 4); }
      #gFooter #footerNav .mainNav > ul.main03 {
        width: calc((100% - 10vw -40px)  / 4); }
    #gFooter #footerNav .subNav {
      clear: both;
      width: 372px;
      margin-left: calc(10vw + 20px);
      padding-top: 10px; }
      #gFooter #footerNav .subNav ul {
        display: flex; }
        #gFooter #footerNav .subNav ul li {
          width: calc(100% / 3);
          box-sizing: border-box;
          border-left: solid 1px #000;
          text-align: center;
          padding: 10px 0; }
          #gFooter #footerNav .subNav ul li:last-child {
            border-right: solid 1px #000; }
          #gFooter #footerNav .subNav ul li a img {
            max-width: none;
            height: 10px; }
          #gFooter #footerNav .subNav ul li a:hover {
            opacity: 0.7; }
    #gFooter #footerNav .copyright {
      float: right;
      font-size: 12px;
      font-weight: bold;
      margin-top: 100px; }
    #gFooter #footerNav .snsNav {
      width: calc((90vw - 40px) * 2 / 6);
      position: absolute;
      bottom: 100px;
      right: 20px;
      margin: 0; }
      #gFooter #footerNav .snsNav h3 {
        margin: 10px 0; }
      #gFooter #footerNav .snsNav ul {
        display: flex;
        justify-content: center; }
        #gFooter #footerNav .snsNav ul li {
          margin: 2px;
          padding-top: 5px; }
        #gFooter #footerNav .snsNav ul li.icon {
          padding-top: 0; }
          #gFooter #footerNav .snsNav ul li.icon img {
            max-width: none;
            width: 38px; }
  #gFooter .music {
    width: calc(10vw + ((90vw - 40px) / 6));
    float: left;
    clear: both;
    position: relative;
    margin-top: 30px;
    margin-left: calc(10vw + 20px); }
    #gFooter .music #player {
      margin-top: -20px; }
    #gFooter .music .txt {
      padding-top: 10px;
      font-size: 12px;
      font-weight: bold;
      color: #DADADA; } }
@media screen and (max-width: 1024px) {
  #gFooter #pageTop {
    position: relative !important;
    margin: 0;
    width: 100vw;
    text-align: center;
    background: #000;
    bottom: auto !important; }
    #gFooter #pageTop a {
      display: block;
      height: 100%;
      width: 100%;
      background: #dadada; }
      #gFooter #pageTop a:hover {
        opacity: 0.7; }
    #gFooter #pageTop img {
      width: 40px; }
    #gFooter #pageTop:hover {
      opacity: 1; }
  #gFooter #footerNav {
    background: #e3e3e3;
    padding: 20px;
    width: 100vw;
    box-sizing: border-box;
    position: relative; }
    #gFooter #footerNav:after {
      content: '';
      display: block;
      clear: both; }
    #gFooter #footerNav .logo {
      width: 20vw;
      max-width: 260px;
      float: none;
      margin: 0 auto 10px;
      position: relative; }
    #gFooter #footerNav .mainNav > ul {
      width: 100%;
      margin-left: 0;
      float: none; }
      #gFooter #footerNav .mainNav > ul > li {
        padding: 0;
        border-bottom: solid 1px #323232; }
        #gFooter #footerNav .mainNav > ul > li a {
          padding: 10px 0 7px;
          display: block; }
        #gFooter #footerNav .mainNav > ul > li a:hover {
          opacity: 0.7; }
        #gFooter #footerNav .mainNav > ul > li img {
          max-width: none;
          height: 14px; }
        #gFooter #footerNav .mainNav > ul > li li a {
          display: block;
          text-decoration: none;
          color: #323232;
          padding: 0; }
          #gFooter #footerNav .mainNav > ul > li li a:before {
            content: '-';
            color: #CE0E2D;
            display: inline-block;
            padding: 5px 3px; }
          #gFooter #footerNav .mainNav > ul > li li a:hover {
            color: #CE0E2D; }
      #gFooter #footerNav .mainNav > ul.main02 {
        width: 100%; }
        #gFooter #footerNav .mainNav > ul.main02 ul {
          width: 100%; }
      #gFooter #footerNav .mainNav > ul.main03 {
        width: 100%; }
    #gFooter #footerNav .subNav {
      clear: both;
      width: 100%;
      margin: 0; }
      #gFooter #footerNav .subNav ul {
        display: block; }
        #gFooter #footerNav .subNav ul li {
          width: 100%;
          border-bottom: solid 1px #323232;
          border-left: 0;
          padding: 0; }
          #gFooter #footerNav .subNav ul li:last-child {
            border-right: 0; }
          #gFooter #footerNav .subNav ul li a {
            padding: 10px 0 7px;
            display: block;
            text-align: left; }
            #gFooter #footerNav .subNav ul li a img {
              max-width: none;
              height: 14px; }
            #gFooter #footerNav .subNav ul li a:hover {
              opacity: 0.7; }
    #gFooter #footerNav .copyright {
      float: none;
      font-size: 12px;
      font-weight: bold;
      margin-top: 10px; }
    #gFooter #footerNav .snsNav {
      width: 100%;
      position: relative;
      bottom: inherit;
      right: inherit;
      margin: 10px 0; }
      #gFooter #footerNav .snsNav h3 {
        display: none; }
      #gFooter #footerNav .snsNav ul {
        display: flex;
        justify-content: center; }
        #gFooter #footerNav .snsNav ul li {
          margin: 2px;
          padding-top: 5px; }
        #gFooter #footerNav .snsNav ul li.icon {
          padding-top: 0; }
          #gFooter #footerNav .snsNav ul li.icon img {
            max-width: none;
            width: 38px; }
  #gFooter .music {
    width: 100%;
    float: none;
    clear: both;
    position: relative;
    margin-top: 10px;
    margin-left: 0; }
    #gFooter .music #player {
      margin-top: -20px; }
    #gFooter .music .txt {
      padding-top: 10px;
      font-size: 12px;
      font-weight: bold;
      color: #323232; } }

#contentsWrap {
  padding-top: 122px;
  padding-bottom: 120px; }
  @media screen and (max-width: 1470px) {
    #contentsWrap {
      padding-top: calc(14.5vw * 0.23 + 1.8em + 40px); } }
  @media screen and (max-width: 1024px) {
    #contentsWrap {
      padding-top: 60px;
      padding-bottom: 40px; } }

.articleBox {
  width: 100%;
  box-sizing: border-box;
  padding: 20px;
  max-width: 1000px;
  margin: 0 auto; }
  .articleBox p {
    font-size: 16px;
    line-height: 2; }
  .articleBox li {
    padding: 20px 0; }
  .articleBox li:first-child .day {
    font-weight: bold;
    font-size: 14px;
    text-align: left; }
  .articleBox li:first-child .txt {
    margin: 10px 0;
    text-align: left;
    font-size: 16px; }
  .articleBox li:first-child .media-img {
    margin: 10px auto; }
  .articleBox li:first-child .news-article {
    text-align: center; }
  .articleBox li:nth-child(n+2) {
    overflow: hidden; }
    .articleBox li:nth-child(n+2) .detail {
      float: right;
      width: calc(100% - 120px); }
      .articleBox li:nth-child(n+2) .detail .day {
        font-size: 12px;
        text-align: left; }
      .articleBox li:nth-child(n+2) .detail .txt {
        font-size: 14px;
        margin: 10px 0;
        text-align: left; }
    .articleBox li:nth-child(n+2) .media-img {
      width: 100px;
      float: left; }
#footerEc {
  position: fixed;
  bottom:0;
  left: 0;
  width: 100%;
  padding: 10px;
  box-sizing: border-box;
  background: #e3e3e3;
}