@charset "shift_jis";

/* common */
@media ( max-width: 640px ) {
  #colorbox, #cboxOverlay, #cboxWrapper {
    z-index: 19999;
  }

  #container {
    margin: 0;
    width: auto;
  }

  body {
    min-width: inherit;
  }

  #header #headerMain {
    width: auto;
  }

  #header #headerMain .headNav {
    /*display: none;*/
  }

  #headerMain .logo {
    margin: 12px 0 0 10px;
    width: 73px;
  }

  #headerMain .logo img {
    width: 100%;
  }

  #headerMain .headR {
    float: right;
  }

  #headerMain .headR li a {
    min-height: 39px;
    padding-top: 20px;
    text-decoration: none;
    width: 59px;
  }

  #headerMain .headR li a span {
    display: none;
  }

  #headerMain .headR li a .fs1 {
    display: block;
    height: 20px;
  }

  #headerMain .headR li {
    width: 59px;
    border-left: 1px solid #CCC;
  }

  #headerMain .headR .on {
    filter: alpha(opacity=100) !important;
    opacity: 1 !important;
  }

  #headerMain .headR .on a .fs1 {
    filter: alpha(opacity=30) !important;
    opacity: .3 !important;
  }

  #headerMain .headR .on .drop {
    border-bottom: 1px solid #CCC;
  }

  #header .dropBox {
    /*top: 60px;*/
  }

  #headerMain #navArea {
    background: none;
    width: auto;
    float: right;
  }

  #header .dropNav {
    width: 100%;
    padding: 13px 0 0;
  }

  #header .dropNav li a .fs1 {
    display: none;
  }

  #header .dropNav li a .spIcon {
    display: block;
    height: 80px;
    line-height: 1;
    margin: -17px 0 0;
  }

  #header .dropNav .subNav01 a .spIcon {
    margin-bottom: -20px;
  }

  #header .dropNav .subNav02 a .spIcon {
    margin: -15px 0 -20px;
  }

  #header .dropNav ul {
    padding: 0 10px 13px;
  }

  #header .dropNav li {
    padding-bottom: 35px;
  }

  #header .dropNav li,#header .dropNav .subNav01,#header .dropNav .subNav02 {
    margin-right: 0;
    width: 50%;
    text-align: center;
  }

  #header .dropNav li p,#header .dropNav li ul {
    display: none;
  }

  #header .dropNav li p,#header .dropNav .subNav01 p,#header .dropNav .subNav02 p {
    width: auto;
  }

  #header .dropNav li:nth-child(2),#header .dropNav .subNav01,#header .dropNav .subNav02 {
    padding-bottom: 40px;
  }

  #header .dropNav li:nth-child(2) p a span:last-child,#header .dropNav .subNav01 p a span:last-child,#header .dropNav .subNav02 p a span:last-child {
    margin-top: 5px;
  }

  #header .dropNav li .kitLink,#header .dropNav li .batLink,#header .dropNav li .watLink01,#header .dropNav li .dreLink {
    display: block;
  }

  #header .dropNav li .batLink {
    padding-top: 2px;
  }

  #header .dropNav li .kitLink a span,#header .dropNav li .batLink a span,#header .dropNav li .dreLink a span,#header .dropNav li .watLink01 a span {
    font-size: 120%;
    letter-spacing: 1px;
  }

  #header .dropNav .menu {
    float: none;
    text-align: center;
    padding: 0;
    width: 100%;
  }

  #header .dropNav .menu li {
    display: inline-block;
    float: none;
    padding: 0 0 27px;
    width: 30%;
  }

  #header .dropNav .menu li span {
    font-weight: 400;
  }

  #header .dropNav .menu li a .fs1 {
    display: none;
  }

  #header .dropNav .menu li .spIcon {
    display: block;
    height: 42px;
    margin: 0;
  }

  #header .dropNav .menu .home01 {
    display: none;
  }

  #header .dropNav .menu .home02 {
    display: inline-block;
  }

  #header .dropNav .menu .home02 .spIcon {
    height: 47px;
  }

  #header .searchBox {
    top: 60px;
    overflow: hidden;
  }

  #header .searchBox .search {
    float: right;
    margin: 0 27px 0 0;
    padding: 22px 0 0;
    width: 266px;
  }

  #header .searchBox .search .fSearch01 {
    border-radius: 0;
  }

  #contents {
    margin-bottom: 100px;
    width: 100%;
  }

  #footerTop {
    overflow: hidden;
    padding: 0 20px;
  }

  #footerTop .footerTopInner {
    width: 100%;
  }

  #footerTop .fb {
    display: none;
  }

  #footerTop .spFb {
    display: block;
    margin-top: 3px;
  }

  #footer {
    padding-bottom: 30px;
  }

  #footer .footerLink {
    width: auto;
    /*margin-bottom: 0;*/
    padding: 38px 10px 5px 20px;
  }

  #footer .footerLink li a {
    font-size: 95%;
  }

  #footer .footerLink .linkBox {
    display: none;
  }

  #footer .footerLink .linkBox li {
    font-size: 11px;
    letter-spacing: 1px;
    padding-bottom: 8px;
  }

  #footer .footerBox .fBox ul li {
    vertical-align: top;
  }

  #footer .footerBox .fBox ul li a {
    background: none !important;
  }

  #footer .footerBox .fBox ul li img {
    vertical-align: top;
  }

  #footer .footerLink .subLink {
    display: block;
    float: none;
    overflow: hidden;
    width: 100%;
  }

  #footer .footerLink .subLink ul {
    float: left;
    width: 50%;
  }

  #footer .footerLink .subLink .linkList {
    float: right;
    width: 50%;
  }

  #footer .footerBox {
    border-top: none;
  }

  #footer .footerBox .fBox {
    width: 100%;
  }

  #footer .footerBox .fBox p {
    border-top: 1px solid #666;
    float: none;
    padding: 40px 20px 0;
    width: auto;
  }

  #footer .footerBox .fBox p span {
    display: block;
    font-size: 90%;
    margin: 10px 0 0;
  }

  #footer .footerBox .fBox ul {
    float: none;
    margin-bottom: 25px;
    text-align: center;
    width: 100%;
  }

  #footer .footerBox .fBox ul li {
    display: inline-block;
    float: none;
    padding: 0 13px;
    text-align: left;
  }

  #footer .footerBox .fBox ul li a {
    border-color: #999;
    border-radius: 32px;
    padding: 9px 0 0 13px;
    width: 41px;
    height: 45px;
  }

  #footer .footerBox .fBox ul li a:hover {
    border-color: #999;
  }

  #footer .footerBox .fBox ul li a img {
    display: none;
  }

  #footer .footerBox .fBox ul li a .ipdImg {
    display: block;
  }

  #contents .topInner .photoBox br.hide {
    display: inline;
  }
}

/* page contents */
@media (max-width: 640px) {

  #header {
    margin-bottom: 34px;
  }

  #pagePath {
    display: none;
  }

  .contents {
    width: 100%!important;
  }

  #contents .pageLink {
    text-align: center;
    margin: 15px auto;
  }
  #contents .pageLink li {
    font-size: 14px;
    letter-spacing: 0px;
    margin:0 13px;
  }

  #contents .mainBox {
    margin: 0 auto 127px;
    width: 100%;
  }
  #contents .mainVisual {
    position: relative;
    display: flex;
    flex-direction: column-reverse;
    width: 100%;
    margin-bottom: 40px;
  }

#contents .mainVisual .photo {
  float: none;
}

#contents .mainVisual ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0;
  gap: 4px;
  float: none;
  width: 100%;
}
#contents .mainVisual li {
  background-color: #FFF;
  float: none;
  min-height: inherit !important;
  margin: 0;
  width: calc(50% - 2px);
  zoom: 1;
}
#contents .mainVisual li a {
    padding: 20px 0 10px !important;
}

  #contents .topP {
    margin: 0 auto 60px;
    width: 100%;
    padding: 0 30px;
    box-sizing: border-box;
  }
  #contents .photoList .photoBox {
    width: 100%;
  }

  #contents .photoList {
    margin: 0 auto;
    width: 100%;
    padding: 0 30px;
    box-sizing: border-box;
  }

  #contents .photoList li[class*="heightLine"] {
    height: inherit!important;
  }
  #contents .photoList li {
    float: none;
    padding: 0;
    width: 100%;
  }
  #contents .photoList li,
  #contents .photoList .photoBox {
    padding-bottom: 20px;
  }

  #contents .photoList .stoPhoto {
    padding: 0;
    width: 100%;
    margin-bottom: 40px;
  }

  #contents .photoList .stoList {
    margin-right: 0;
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 40px;
  }

  #contents .photoList .stoList li {
    float: none;
    padding: 0;
    max-width: 156px;
    width: 50%;
    margin-bottom: 20px;
  }

  #contents .photoList .stoPhotolist {
    margin-right: 0;
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 40px;
  }

  #contents .photoList .stoPhotolist li {
    float: none;
    padding: 0 5px 0 0;
    width: 50%;
    box-sizing: border-box;
  }
  #contents .photoList .stoPhotolist li:nth-child(1),
  #contents .photoList .stoPhotolist li:nth-child(2) {
    padding: 0 5px 10px 0;
  }
  #contents .photoList .stoPhotolist li:nth-child(2n) {
    padding: 0 0 0 5px;
  }

  #contents .photoList li img.sp_none {
    display: none;
  }

  #contents h4 {
    margin: 0 0 20px;
    padding: 0 30px;
  }

  #contents .photoList .photo {
    margin-right: 0;
    width: 100%;
  }

  #contents .textList {
    padding: 13px 30px 60px;
  }

  #contents h3 {
    padding-left:30px;
    padding-right:30px;
  }

  #contents .stoagePhoto img {
    display: block;
    margin-bottom: 15px;
  }

  #contents .stoagePhoto p {
    float: none;
    width: 100%;
    padding: 0 30px;
    margin-bottom: 15px;
    box-sizing: border-box;
  }

  #contents .stoagePhoto .text {
    float: none;
    width: 100%;
  }

  #contents .links {
    margin-bottom: 60px;
  }

  #contents .series ul {
    padding-left: 0;
    width: 100%;
  }

  #contents .series ul li {
    font-size: 13px;
    float: none;
    padding-right: 0;
    text-align: center;
  margin: 0 auto 20px;
  }
  #contents .imgBox .photo {
    float: none;
  }

  #contents .imgBox .textBox .pLead {
    margin-right: 0;
    letter-spacing: 3px;
    position: relative;
    zoom: 1;
  }

  #contents .imgBox .textBox, #contents .imgBox .textUl {
    float: none;
    margin-top: 0;
    width: 100%;
    padding: 20px 30px 0;
    box-sizing: border-box;
  }

  #contents .photoList .photoBox .photoText {
    padding-bottom: 84px;
  }

  #contents .comUl {
    padding-bottom: 60px;
    margin: 0 0 60px 0;
    width: 100%;
  }
  #contents .comUl li {
    float: none;
    padding: 0 0 23px 0;
    width: 318px;
    margin: 0 auto;
  }

  #contents .btmLink {
    margin: 0 auto;
    padding: 14px 0 0;
    width: 100%;
  }
  #contents .btmLink li {
    margin:0 auto 60px;
    float: none;
  }
}