@charset "UTF-8";
/* SASS Library Version 0.4.2 + ArexandrosCrew
 * @gurasa (http://sakusaku.me/)
 */
/* Color Definition
 * @gurasa (http://sakusaku.me/)
 */
/* Semantic Color
 */
/* Reset CSS
 * @gurasa (http://sakusaku.me/)
 */








body, div, p, h1, h2, h3, h4, h5, h6, span, ul, li, ol, img, table, tr, td, hr, a, address, nav, header, footer, section, article {
  margin: 0;
  padding: 0; }

body, p, h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  line-height: 100%; }

img {
  border: none;
  vertical-align: baseline; }

img[src=""] {
  background-color: lightgray;
  width: 40px;
  height: 40px; }

ul, li {
  list-style: none; }

.clearfix:after {
  content: "";
  clear: both;
  display: block; }

html {
  font-size: 62.5%; }

body {
	color:#666;
	font-size:12px;
	font-family:'メイリオ','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
  line-height: 1.71429em;
  font-size: 1.4em;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  word-break: break-all;
  word-wrap: break-word; }

input, textarea {
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, Meiryo, "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans?serif; }

button, input, textarea {
  -webkit-font-smoothing: inherit; }

input[type="file"], input[type="submit"], input[type="reset"], button {
  cursor: pointer; }

/* PC styles
 */

.sp_only {
  display: none !important; }

img {
  max-width: 100%;
  pointer-events: none;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none; }

button {
  -webkit-appearance: none;
  appearance: none;
  -webkit-tap-highlight-color: transparent;
  outline: none;
  border: none;
  background: none;
  padding: 0;
  margin: 0; }

body {
 /*background: #EC3485;*/
  background: #ffffff url(../images/home/bg_main.jpg);
}

#wrapper {
  min-width: 1000px;
	border-top: 5px solid #1b1b1b;
 }
.inner {
  width: 950px;
  margin: 0 auto; }
  .inner:after {
    content: "";
    clear: both;
    display: block; }

.middle {
  /*background: #2e3437;*/
  padding: 50px 0; 
/*background-color: #F0F0F0;*/}

  .middle > .inner {
    overflow: hidden; }

.page_title {
  /*background: #009944;*/
  /*background-color: #ff2d50;*/
  background-color: #e80cd9;
  padding: 0 20px;
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, Meiryo, "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans?serif;
  font-size: 2.4rem;
  line-height: 50px;
  color: #fff;
  font-weight: normal;
  margin-bottom: 20px; }

.container {
  position: relative;
  margin-right: -20px; }
  .container.thin {
    padding-right: 300px; }

.box {
  background: #fff;
  margin: 0 20px 20px 0;
  color: #444; }

article.box {
  padding: 50px; }

.post_date {
  display: block;
  font-size: 1.4rem;
  line-height: 20px;
  margin-bottom: 10px; }

.title {
  font-size: 1.8rem;
  line-height: 1.66667em; }

p {
  margin-top: 24px;
  font-size: 1.4rem;
  line-height: 1.71429em; }
  p:first-child {
    margin-top: 0; }
  p.center {
    text-align: center; }
  p.c_white {
    color: #fff; }

a {
  color: #ff2d50;
  text-decoration: underline; }
  a.hover {
    text-decoration: none; }



.fancybox-wrap .fancybox-inner {
  position: relative; }
  .fancybox-wrap .fancybox-inner:after {
    content: "";
    background-color: transparent;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px; }

.fancybox-close {
  top: inherit;
  bottom: -40px;
  right: 0;
  width: 40px;
  height: 40px;
  background-image: url("../../vendor/fancybox/btn_close@2x.png");
  background-size: 100%; }
  .fancybox-close.hover {
    opacity: 0.7; }

.site_logo a {
  display: block; }
.site_logo img {
  display: block;
  /*width: 147px;*/
  height: 41px; }

.user ul, .sub_nav ul {
  border-right: solid 1px #fff; }
  .user ul:after, .sub_nav ul:after {
    content: "";
    clear: both;
    display: block; }
.user ul li, .sub_nav ul li {
    float: left;
    font-size: 1.0rem;
    line-height: 40px;
	border-left: solid fff 1px;

}
    .user ul li span, .sub_nav ul li span, .user ul li a, .sub_nav ul li a {
      display: block;
      padding: 0 15px; }
    .user ul li a, .sub_
 ul li a {
      text-decoration: none;
      color: #444444; }
      .user ul li a i, .sub_nav ul li a i {
        font-size: 1.5rem;
        margin-right: 3px; }
      .user ul li a.hover, .sub_nav ul li a.hover {
        opacity: 1;
        background: rgba(0, 0, 0, 0.1); }
      .user ul li a.payment, .sub_nav ul li a.payment {
        border: solid 1px #fff;
        background-color: #e62739;
        color: #fff;
        line-height: 38px; }
        .user ul li a.payment.hover, .sub_nav ul li a.payment.hover {
          opacity: 0.7; }
    .user ul li button.payment, .sub_nav ul li button.payment {
      padding: 0 15px;
      border: solid 1px #fff;
      background-color: #e62739;
      color: #fff;
      line-height: 38px; }
      .user ul li button.payment.hover, .sub_nav ul li button.payment.hover {
        opacity: 0.7; }


.global_nav {
	background: url(../images/home/backgra.png);
	height: 65px;
	padding-left: 10px;
	padding-right: 10px;

}

  .global_nav ul:after {
    content: "";
    clear: both;
    display: block; }

  .global_nav ul li {
    float: left; }

.global_nav form ul li {
	padding-bottom: 0px;
	margin-left: 5px;
	margin-top: 0;
	margin-right: 10px;

}

.global_nav form .mt2 {
	margin-top: 2%;

}


.control_bar {
  background-color: #f0f0f0; }
  .control_bar .user, .control_bar .sub_nav {
    float: left; }
  .control_bar .sub_nav {
    float: right; }

.nav_bar {
  /*background-color: #ec3485;*/
  /*box-shadow: 1px 0px 2px rgba(0, 0, 0, 0.25);*/
	background-color: #ffffff;
	background-image: url(../images/home/backgra_bade.jpg);

}
  .nav_bar .site_logo {
    float: left; }
.nav_bar .site_logo a {
	padding: 25px 0px 0px 0px;

}
  .nav_bar .global_nav {
    float: right;
    padding-top: 20px;
  }

    .nav_bar .global_nav ul li a {
      /*color: #212121;*/
      color: #666;
      line-height: 100px; }
      .nav_bar .global_nav ul li a.hover {
        background: rgba(255, 255, 255, 0.3); }

.header_pc_fixed {
  position: fixed;
  top: -45px;
  left: 0;
  z-index: 1000;
  width: 100%;
  min-width: 1180px;
  background-color: #f0f0f0;
  /*border-bottom: solid 5px #fe8980;*/
  /*border-bottom: solid 4px #EC3485;*/
  border-bottom: solid 4px #000000;
  box-shadow: 1px 0px 2px rgba(0, 0, 0, 0.25); }
  .header_pc_fixed .inner {
    border-left: solid 1px #fff; }
  .header_pc_fixed .site_logo {
    float: left; }
    .header_pc_fixed .site_logo a {
      padding: 8px 20px; }

    .header_pc_fixed .site_logo img {
      display: block;
      /*width: 77px;
      height: 24px;*/
      height: 25px; }

  .header_pc_fixed .global_nav {
    float: left; }
    .header_pc_fixed .global_nav ul li a {
      line-height: 40px; }
      .header_pc_fixed .global_nav ul li a.hover {
        background: rgba(0, 0, 0, 0.1); }
  .header_pc_fixed .sub_nav {
    float: right; }

.header_sp {
  display: none; }

.copyright {
  line-height: 30px;
  color: #000000;
  font-style: normal; }

.footer {
  /*background-color: #ec3485;*/
	background-color: #ffffff;
	background-image: url(../images/home/backgra_bade.jpg);

}


  .footer .copyright {
    /*text-align: right;*/
    text-align: center;
    /*color: #212121;*/
	font-size:11px;
     color: #666;
     margin-top: 20px;}

.middle.home {
  padding: 0; }
  .middle.home .bg {
    /*width: 100%;*/
    /*min-height: 598px;*/
    min-height: 600px;
    background: url("../images/home/top_img.jpg") no-repeat center center;
    /*background-size: cover;*/ }
    .middle.home .bg img {
      display: none; }

.middle.report article.box a.fancybox {
  display: block;
  width: 30%;
  height: 30%;
  margin: 24px 0; }
.middle.report article.box a img {
  display: block; }

.middle.photos .container {
  margin-right: 0;
  padding-right: 0; }
  .middle.photos .container ul.thumb {
    margin-bottom: 20px; }
    .middle.photos .container ul.thumb:after {
      content: "";
      clear: both;
      display: block; }
    .middle.photos .container ul.thumb li {
      float: left;
      width: 280px;
      height: 280px;
      position: relative;
      overflow: hidden;
      margin: 20px 20px 0 0; }
      .middle.photos .container ul.thumb li.photo_title {
        /*background: #EC3485;*/
        background: #000000;
        color: #fff;
        padding: 50px 20px;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box; }
      .middle.photos .container ul.thumb li a {
        position: absolute;
        left: 160%;
        /*top: 140%;*/
        top:78%;
        width: 160%;
        line-height: 300px;
        margin: -400px 0 0 -185%;
        text-align: center; }
        .middle.photos .container ul.thumb li a img {
          vertical-align: middle;
          filter: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0'/></filter></svg>#grayscale");
          filter: gray;
          -webkit-filter: grayscale(100%); }
        .middle.photos .container ul.thumb li a.hover img {
          filter: none;
          -webkit-filter: grayscale(0%); }
    .middle.photos .container ul.thumb li:nth-child(4n+4) {
      margin-right: 0; }
.middle.photos .cntrol {
  margin-right: 0; }

.middle.contact .container {
  margin-right: 0;
  padding-right: 0; }

.middle.faq .container .material-icons {
  font-size: 20px;
  margin-right: 5px;
  vertical-align: middle; }
.middle.faq .container article {
  padding: 0; }
.middle.faq .container h3.title {
  /*color: #f0f0f0;
  background: #2B3032;*/
  color: #212121;
  background: #fff;
  padding: 0 50px;
  font-size: 1.8rem;
  line-height: 58px;
  border-bottom: solid 1px #2e3437; }
  .middle.faq .container h3.title i {
    margin-right: 3px; }
.middle.faq .container dl dt {
  position: relative;
  padding: 20px 50px 20px 67px;
  /*background: #373D40;
  color: #f0f0f0;*/
  background: #fff;
  color: #212121;
  border-bottom: solid 1px #2e3437;
  text-indent: -17px;
  cursor: pointer; }
  .middle.faq .container dl dt i {
    width: 14px;
    margin-right: 3px;
    text-indent: 0; }
  .middle.faq .container dl dt.hover {
    opacity: 0.7; }
  .middle.faq .container dl dt:after {
    position: absolute;
    top: 50%;
    right: 50px;
    margin-top: -7px;
    content: "?";
    font-family: "Fontawesome";
    font-size: 1.4rem;
    line-height: 1em;
    width: 14px;
    height: 14px;
    text-indent: 0; }
.middle.faq .container dl dd {
  display: none;
  padding: 20px 50px 20px 67px;
  /*background: #434A4D;
  color: #f0f0f0;*/
  background: #fff;
  color: #212121;
  border-bottom: solid 1px #2e3437;
  text-indent: -17px; }
  .middle.faq .container dl dd i {
    width: 14px;
    margin-right: 3px;
    text-indent: 0; }
  .middle.faq .container dl dd p {
    text-indent: 0;
    margin-left: -17px; }
.middle.faq .container dl.opened dt:after {
  content: "?"; }
.middle.faq .sidebar .material-icons {
  font-size: 16px;
  margin-right: 5px; }
.middle.faq .sidebar ul.caution li {
  font-size: 1.2rem;
  line-height: 1.5em; }
.middle.faq .sidebar ul.caution li:before {
  content: "※"; }

.middle.special .container {
  margin-right: 0;
  padding-right: 0; }
  .middle.special .container ul:after {
    content: "";
    clear: both;
    display: block; }
  .middle.special .container ul li {
    float: left;
    width: 580px;
    height: 435px;
    position: relative;
    margin-bottom: 20px; }
    .middle.special .container ul li a {
      display: block;
      width: 580px;
      height: 435px; }
      .middle.special .container ul li a span {
        position: absolute;
        bottom: 40px;
        left: 230px;
        width: 120px;
        height: 50px;
        border: 1px solid #009944;
        color: #009944;
        text-align: center;
        padding: 12px;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 2.3rem;
        text-decoration: none; }
      .middle.special .container ul li a.hover span {
        background: #009944;
        color: #fff; }
  .middle.special .container ul li:nth-child(odd) {
    margin-right: 20px; }
  .middle.special .container ul li#webmagazine {
    background: url(../../images/special/webmagazine.jpg) no-repeat;
    background-size: contain; }
  .middle.special .container ul li#radio {
    background: url(../../images/special/radio.png) no-repeat;
    background-size: contain; }

.middle.wallpaper .container {
  margin-right: 0;
  padding-right: 0; }
  .middle.wallpaper .container ul:after {
    content: "";
    clear: both;
    display: block; }
  .middle.wallpaper .container ul li {
    float: left;
    width: 580px;
    margin-bottom: 20px; }
    .middle.wallpaper .container ul li a {
      text-decoration: none; }
      .middle.wallpaper .container ul li a img {
        vertical-align: bottom;
        filter: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0'/></filter></svg>#grayscale");
        filter: gray;
        -webkit-filter: grayscale(100%); }
      .middle.wallpaper .container ul li a:hover img {
        filter: none;
        -webkit-filter: grayscale(0%); }
    .middle.wallpaper .container ul li .title {
      /*background: #FE8980;*/
      background: #e80cd9;
      padding: 20px 20px;
      color: #fff; }

.middle.wallpaper .container ul li .title a{
        color: #fff;
      }



  .middle.wallpaper .container ul li:nth-child(odd) {
    margin-right: 20px; }


  .middle.wallpaper .container ul li .title a:hover{
    text-decoration: underline;
  }

  .wallpaper .pc_ml20{
    margin-left: 20px;
  }


  .wallpaper .mt10{
    margin-top: 10px;
  }




.middle.how_to_update .container {
  margin-right: 0;
  padding-right: 0; }

  /*.middle.how_to_update .container .green {
    color: #009944; }*/
  .middle.how_to_update .container .pink{
    color: #FE8980; }

  .middle.how_to_update .container ul li {
    background: #373D40;
    color: #f0f0f0;
    margin-bottom: 20px; }
    .middle.how_to_update .container ul li .title_box {
      padding: 50px; 
      background-color: #fff;
      color: #212121;}



    .middle.how_to_update .container ul li h4 {
      /*background: #2B3032;*/
      background: #fff;
      color: #212121;
      padding: 30px 50px;
      font-weight: lighter; 
      border-top: dotted 2px #212121;}

    .middle.how_to_update .container ul li dl {
      border-top: solid 1px #2e3437;
      display: table; }
      .middle.how_to_update .container ul li dl dt {
        padding: 30px 50px;
        width: 100px;
        display: table-cell;
        font-size: 1.8rem; 
        background-color: #fff;
        color: #212121;}
      .middle.how_to_update .container ul li dl dd {
        /*background: #434A4D;*/
        background-color: #fff;
        color: #212121;
        padding: 30px 50px;
        width: 880px;
        display: table-cell; }
    .middle.how_to_update .container ul li .image {
      margin-top: 24px; }
      .middle.how_to_update .container ul li .image:after {
        content: "";
        clear: both;
        display: block; }
      .middle.how_to_update .container ul li .image img {
        float: left;
        margin-right: 20px; }
.middle.how_to_update .cntrol {
  margin-right: 0; }





.middle.radio .container {
  margin-right: 0;
  padding-right: 0; }
.middle.radio .box {
  margin-right: 0; }
  .middle.radio .box h4 {
    margin: 24px 0;
    color: #009944; }

.middle.ticket .box {
  padding: 0; }
.middle.ticket .tickets li {
  border-bottom: solid 1px #2e3437; }
  .middle.ticket .tickets li:last-child {
    margin-bottom: 0; }
  .middle.ticket .tickets li a {
    position: relative;
    padding: 25px 50px;
    display: block;
    /*color: #fff;*/
    color: #212121;
    text-decoration: none;
    font-weight: bold; }
    .middle.ticket .tickets li a:after {
      position: absolute;
      top: 50%;
      right: 36px;
      margin-top: -7px;
      content: "?";
      font-family: "Fontawesome";
      font-size: 1.4rem;
      line-height: 1em;
      width: 14px;
      height: 14px;
      text-indent: 0; }
    .middle.ticket .tickets li a.hover {
      background-color: #F0F0F0; }
    .middle.ticket .tickets li a .cap {
      font-size: 1.2rem;
      font-weight: normal; }
    .middle.ticket .tickets li a .red {
      color: #e62739; }
    .middle.ticket .tickets li a .green{
      color: #04d668; }
    .middle.ticket .tickets li a .new {
      font-style: normal;
      font-weight: normal;
      font-size: 1.2rem;
      /*color: #F6DF0C;*/
      color: #ff9103;
      margin: 0 5px; }



/*logo in inputボタン*/

.nav_bar form{
  color: #666;
}

.nav_bar input.submit {
    /*background: #3C8DBC none repeat scroll 0% 0%;*/
    padding: 6px 15px;
    color: #FFF;
    font-size: 14px;
    border-radius: 4px;
    /*border: 1px solid #367FA9;*/
    background: #E00000 none repeat scroll 0% 0%;
    border: 1px solid #E00000;
    cursor: pointer;
  }

.nav_bar .size {
  /*width: 280px;*/
  width: 150px;
  height: 20px;
  }

.nav_bar .global_nav form ul li a{
  line-height: 0;
}

.global_nav .pass_forget{
    /*background: #2B9E77 none repeat scroll 0% 0%;*/
    padding: 6px 9px;
    color: #FFF;
    font-size: 14px;
    border-radius: 4px;
    /*border: 1px solid #378837;*/
    background: #00C000 none repeat scroll 0% 0%;
    border: 1px solid #00C000;
    cursor: pointer;

}


.global_nav .pass_forget a{
  text-decoration: none;
  color: #666;
}

.nav_bar .global_nav ul .pass_forget a:hover{
  background: none; 
}


.clear{
  clear: both;
}

/*.nav_bar .global_nav ul li a.hover {
  background: rgba(255, 255, 255, 0.3); }*/

/*PC　style only*/
@media screen and (min-width: 641px) {

    .bg_inner{
      position: relative;
      width: 1024px;
      height: 480px;
      margin: 0 auto;
    }

    /*.home{
      position: relative;
          }*/

    .bnr{
      background-image: url(../images/home/bnr2.png);
      width: 200px;
      height: 250px;
      position: absolute;
      top: 70%;
      left: 8%;
    }

  .bnr img{
    width: 50%;
  }

    .bg .bnr:hover{
     filter:alpha(opacity=50);
        -moz-opacity: 0.5;
        opacity: 0.5;
        cursor: pointer;
  }

    .footer ul{
      overflow: hidden;
      padding-top: 1.5%;
    }

    .footer ul li{
      float: left;
      margin-left: 50px;
    }
    .footer ul li a{
      color: #666;
      text-decoration: none;
      /*1021追加*/
      font-size: 12px;
      font-weight: bold;
    }

    .footer ul li a:hover{
      color: #666;
      text-decoration: underline;
    }


    .footer address a{
      color: #666;
      text-decoration: none;
    }



}






/* SP styles
 */
@media screen and (max-width: 640px) {
  .pc_only {
    display: none !important; }

  .sp_only {
    display: block !important; }

  #wrapper {
    min-width: 100%;
    padding-top: 75px; }

  .inner {
    width: 100%; }

  .middle {
    padding: 25px 0 40px; }
    .middle .inner {
      width: 300px; }

  .page_title {
    padding: 0 15px;
    font-size: 1.8rem;
    line-height: 37px;
    margin-bottom: 15px; }

  .container {
    margin-right: 0; }
    .container.thin {
      padding-right: 0; }

  .box {
    margin: 0 0 15px 0; }

  article.box {
    padding: 25px 10px; }

  .post_date {
    font-size: 1.2rem;
    line-height: 1em; }

  .title {
    font-size: 1.6rem; }

  p {
    font-size: 1.2rem;
    line-height: 1.5em; }


  .cntrol {
    margin: 0px;
    height: 40px; }
    .cntrol .paging {
      width: 100%;
      height: 40px; }
      .cntrol .paging a {
        height: 36px; }
      .cntrol .paging a {
        width: 80px;
        font-size: 2.7rem;
        line-height: 36px; }
      .cntrol .paging .btn_prev {
        float: left;
        /*background: #ff2d50;*/
        background: #e80cd9;

      }
      .cntrol .paging .btn_next {
        float: right;
        /*background: #ff2d50;*/
        background: #e80cd9;
      }

      .cntrol .paging .btn_top {
        float: none;
        /*background: #ff2d50;*/
        background: #e80cd9;
        margin: 0 90px;
        width: 120px;
        font-size: 1.9rem;
        line-height: 36px; }

  .site_logo a {
    width: 122px; }
  .site_logo img {
    height: auto; }

  .user, .sub_nav {
    line-height: 75px; }
    .user ul, .sub_nav ul {
      display: inline-block;
      height: 60px;
      vertical-align: middle;
      border-right: none;
      margin-left: 20px; }
      .user ul li, .sub_nav ul li {
        float: none;
        border-left: none;
        font-size: 1.2rem;
        line-height: 20px; }
        .user ul li span, .sub_nav ul li span {
          padding: 0; }
        .user ul li a.payment, .sub_nav ul li a.payment {
          border: none;
          position: absolute;
          top: 15px;
          right: 70px;
          width: 44px;
          height: 26px;
          border-radius: 50%;
          padding: 9px 0;
          text-align: center;
          font-size: 1.1rem;
          line-height: 13px; }
        .user ul li button.payment, .sub_nav ul li button.payment {
          border: none;
          position: absolute;
          top: 15px;
          right: 70px;
          width: 44px;
          height: 44px;
          border-radius: 50%;
          padding: 0;
          text-align: center;
          font-size: 1.1rem;
          line-height: 13px; }

  .global_nav {
  /*background: rgba(236, 52, 133, 0.8);*/
  background: rgba(200, 200, 180, 0.8); }

    .global_nav ul {
      padding: 11px 0; }
      .global_nav ul li {
        float: none; 
        border-bottom: 1px dotted #fff;}
        .global_nav ul li a {
          font-size: 1.5rem;
          line-height: 2em;
          color: #fff;
          text-align: center; }

  .btn_toggle_menu {
    width: 50px;
    height: 50px; }
    .btn_toggle_menu .bar {
      background-color: #666;
      width: 30px;
      height: 3px;
      transform-origin: center center;
      -webkit-transition: all 0.25s ease-in-out;
      -moz-transition: all 0.25s ease-in-out;
      -o-transition: all 0.25s ease-in-out;
      transition: all 0.25s ease-in-out; }
      .btn_toggle_menu .bar._0 {
        position: absolute;
        top: 16px;
        left: 10px; }
      .btn_toggle_menu .bar._1 {
        position: absolute;
        top: 24px;
        left: 10px; }
      .btn_toggle_menu .bar._2 {
        position: absolute;
        top: 32px;
        left: 10px; }
    .btn_toggle_menu.opened .bar._0 {
      -webkit-transform: translateX(0) translateY(8px) rotate(45deg);
      -moz-transform: translateX(0) translateY(8px) rotate(45deg);
      -o-transform: translateX(0) translateY(8px) rotate(45deg);
      -ms-transform: translateX(0) translateY(8px) rotate(45deg);
      transform: translateX(0) translateY(8px) rotate(45deg); }
    .btn_toggle_menu.opened .bar._1 {
      opacity: 0; }
    .btn_toggle_menu.opened .bar._2 {
      -webkit-transform: translateX(0) translateY(-8px) rotate(-45deg);
      -moz-transform: translateX(0) translateY(-8px) rotate(-45deg);
      -o-transform: translateX(0) translateY(-8px) rotate(-45deg);
      -ms-transform: translateX(0) translateY(-8px) rotate(-45deg);
      transform: translateX(0) translateY(-8px) rotate(-45deg); }

  .header_pc, .header_pc_fixed {
    display: none; }

  .header_sp {
    display: block;
    position: fixed;
    top: 0;
    z-index: 1000;
    width: 100%; }
    .header_sp .header_bar {
      /*background-color: #EC3485;*/
      background-color: #ffffff;
	background-image: url(../images/home/backgra_bade.jpg);
      height: 75px; }

      /*.header_sp .header_bar .site_logo a {
        padding: 20px 20px 13px; }*/

      .header_sp .header_bar .site_logo a {
        padding: 10px 10px 10px; }


      .header_sp .header_bar .site_logo a img{
        /*width: 45%;*/
        width: 100%;
        margin-top: 10px;
      }


      .header_sp .header_bar .btn_toggle_menu {
        position: absolute;
        top: 12px;
        right: 10px;
        z-index: 10; }
    .header_sp .menu {
      position: absolute;
      top: -2000px;
      left: 0px;
      width: 100%;
      z-index: 1; }
      .header_sp .menu .control_bar {
        /*background-color: #EC3485;*/
        background-color: #efebe0;
        height: 75px; }

        .header_sp .menu .control_bar .user ul li span, .header_sp .menu .control_bar .sub_nav ul li span {
          color: #212121; }
      .header_sp .menu .global_nav ul li {
        display: none; }

  .copyright {
    font-size: 1.2rem;
    line-height: 60px; }

  .footer .copyright {
    text-align: center; }

  .middle.home .bg {
    min-height: 325px;
    background: none; }
    .middle.home .bg img {
      display: block; }

  .middle.report article.box a.fancybox {
    width: 100%;
    height: 100%; }
  .middle.report article.box a img {
    width: 100%;
    height: 100%; }

  .middle.photos .container ul.thumb li {
    width: 142px;
    height: 142px;
    margin: 10px 10px 0 0; }
    .middle.photos .container ul.thumb li.photo_title {
      padding: 30px 10px; }
    .middle.photos .container ul.thumb li a {
      left: 100%;
      /*top: 140%;*/
      top:90%;
      width: 170%;
      line-height: 100px;
      margin: -220px 0 0 -135%; }
  .middle.photos .container ul.thumb li:nth-child(even) {
    margin-right: 0; }

  .middle.faq .container h3.title {
    padding: 0 10px;
    font-size: 1.6rem;
    line-height: 40px; }
  .middle.faq .container dl dt {
    padding: 20px 35px 20px 27px; }
    .middle.faq .container dl dt:after {
      position: absolute;
      top: 50%;
      right: 10px; }
  .middle.faq .container dl dd {
    padding: 20px 10px 20px 27px;
    font-size: 1.4rem;
    line-height: 1.28571em; }
    .middle.faq .container dl dd p {
      font-size: 1.4rem;
      line-height: 1.28571em; }

  .middle.special .container ul li {
    width: 300px;
    height: 225px; }
    .middle.special .container ul li a {
      width: 300px;
      height: 225px; }
      .middle.special .container ul li a span {
        font-size: 1.8rem;
        width: 100px;
        height: 40px;
        left: 100px;
        bottom: 15px;
        padding: 8px; }
  .middle.special .container ul li#magazine {
    margin: 0 0 20px; }

  .middle.wallpaper .container ul li {
    width: 300px;
    height: auto; }
    .middle.wallpaper .container ul li .title {
      padding: 25px 10px; }

  .middle.how_to_update .container ul li .title_box, .middle.how_to_update .container ul li h4 {
    padding: 25px 10px; }
.middle.how_to_update .container ul li h4{
  background-color: #fff;
  color: #212121;
  border-top: dotted 1px #212121;
}

  .middle.how_to_update .container ul li dl dt, .middle.how_to_update .container ul li dl dd {
    padding: 25px 10px;
    display: block;
    margin: 0;
    width: auto; }
  .middle.how_to_update .container ul li .image {
    margin-top: 0; }
    .middle.how_to_update .container ul li .image img {
      float: none;
      margin: 15px 0 0;
      width: 100%; }
  .middle.how_to_update .container ul li p {
    font-size: 1.4rem;
    line-height: 1.71429em; }

  .middle.info_change .container ul li h3 {
    padding: 25px 10px; 
        border-top: 1px dotted #212121;}
  .middle.info_change .container ul li dl {
    display: block; }
    .middle.info_change .container ul li dl dt, .middle.info_change .container ul li dl dd {
      padding: 25px 10px;
      display: block;
      margin: 0;
      width: auto; }
  .middle.info_change .container input[type="radio"] {
    margin-right: 0; }
  .middle.info_change .container .size280, .middle.info_change .container .size430 {
    width: 100%;
    margin-bottom: 5px; }
  .middle.info_change .container .space_r, .middle.info_change .container .space_l {
    margin: 0; }
  .middle.info_change .container #form_bottom {
    width: 100%; }
    .middle.info_change .container #form_bottom button[type="submit"], .middle.info_change .container #form_bottom a.btn_back {
      float: none;
      width: 120px;
      margin: 20px auto 0;
      text-align: center; }

  .middle.ticket .tickets li a {
    padding: 15px 30px 15px 15px; }
    .middle.ticket .tickets li a:after {
      position: absolute;
      top: 50%;
      right: 7px; }




    .wallpaper .pc_ml20{
      margin-left: 0px;
    }






/*logo in inputボタン*/

.header_sp form{
  color: #fff;
}

 .header_sp input.submit {
    /*background: #3C8DBC none repeat scroll 0% 0%;*/
    padding: 6px 9px;
    color: #FFF;
    font-size: 14px;
    border-radius: 4px;
    /*border: 1px solid #367FA9;*/
    background: #FF5EC4 none repeat scroll 0% 0%;
    border: 1px solid #E241A7;
    cursor: pointer;
  }
.header_sp .sp_size {
  width: 300px;
  }
.header_sp .global_nav form ul li a{
  line-height: 0;
}
.header_sp .pass_forget{
    /*background: #2B9E77 none repeat scroll 0% 0%;*/
    padding: 6px 9px;
    color: #FFF;
    font-size: 14px;
    border-radius: 4px;
    /*border: 1px solid #378837;*/
    cursor: pointer;
    text-align: center;
    background: #5FD3EE none repeat scroll 0% 0%;
    border: 1px solid #47B5B5;
}
.header_sp .global_nav .pass_forget a{
  text-decoration: none;
  color: #fff;
}
.header_sp .nav_bar .global_nav ul .pass_forget a:hover{
  background: none;
}
.header_sp .global_nav form ul li{
  border-bottom: none;
  margin-bottom: 30px;
}
.header_sp .sp_mt20{
  margin-top: 20px;
}
/*logo in inputボタン終わり*/




    .footer ul{
      padding-top: 4%;
    }

    .footer ul li{
      margin-left: 20px;
      margin-top: 6%;
    }
    .footer ul li a{
      color: #666;
      display: block;
      text-decoration: none;
    }

    .footer ul li a:hover{
      color: #666;
      text-decoration: underline;
    }


    .footer address a{
      color: #fff;
      text-decoration: none;
    }




/*バナー*/
.bnr{
      background-image: url(../images/home/sp_bnr2.png);
      width: 280px;
      height: 160px;
      margin: 0 auto;
      margin-top: 30px;
      margin-bottom: 30px;
    }

    .bg .bnr:hover{
     filter:alpha(opacity=50);
        -moz-opacity: 0.5;
        opacity: 0.5;
        cursor: pointer;
  }
       }
@media screen and (max-width: 320px) {
  .header_sp .sp_size {
      width: 270px;
  } 
}
/*# sourceMappingURL=style.css.map */



/********************　2023/04ハンバーガーボタンの不具合により新しいボタン設置 ********************/
#h-nav,.openbtn{
  display: none;
}
/*-------------------ここからハンバーガーボタン---------------------------*/
@media screen and (max-width: 640px) {
  #h-nav,.openbtn{
    display: block;
  }
  #h-nav {
    /*position:fixed;にし、z-indexの数値を小さくして最背面へ*/
    position: fixed;
    z-index: -1;
    opacity: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(200, 200, 180, 0.8);
    transition: all 0.3s;
  }
  /*アクティブクラスがついたら透過なしにして最前面へ*/
  #h-nav.panelactive {
    opacity: 1;
    z-index: 9980;
  }
  /*ナビゲーション*/
  #h-nav ul {
    display: none;
    z-index: 9981;
  }
  /*========= ボタンのためのCSS ===============*/
  .openbtn {
    position: fixed;
    z-index: 9989; /*ボタンを最前面に*/
    top: 2rem;
    right: 2rem;
    cursor: pointer;
    width: 50px;
    height: 50px;
  }
  /*×に変化*/
  .openbtn span {
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 3px;
    background-color: #212121;
    width: 45%;
  }
  .openbtn span:nth-of-type(1) {
    top: 15px;
  }
  .openbtn span:nth-of-type(2) {
    top: 23px;
  }
  .openbtn span:nth-of-type(3) {
    top: 31px;
  }
  .openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
    background-color: #212121;
  }
  .openbtn.active span:nth-of-type(2) {
    opacity: 0;
  }
  .openbtn.active span:nth-of-type(3) {
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
    background-color: #212121;
  }
  /*ログインフォーム*/
  #h-nav.panelactive ul {
    display: block;
    position: absolute;
    top: 12%;
    left: 10%;
  }
  #h-nav li, #h-nav li a {
    color: #212121;
    display: block;
    padding: 4px 0 4px 0;
    box-sizing: border-box;
  }
  #h-nav li a:hover:after {
    background-color: #fff;
  }
  #h-nav form{
    color: #fff;
  }
  #h-nav .sp_size {
    width: 300px;
  }
  #h-nav form ul li a{
    line-height: 0;
  }
  #h-nav ul .pass_forget a:hover{
    background: none;
  }
  #h-nav form ul li{
    border-bottom: none;
    margin-bottom: 30px;
  }
  #h-nav .sp_mt20{
    margin-top: 20px;
  }
  #h-nav input.submit {
    padding: 6px 9px;
    color: #FFF;
    font-size: 14px;
    border-radius: 4px;
    background: #e62739 none repeat scroll 0% 0%;
    border: 1px solid #fff;
    cursor: pointer;
  }
  #h-nav .pass_forget {
    padding: 20px 9px;
    color: #000;
    background: #5298F0;
    font-size: 14px;
    border-radius: 4px;
    cursor: pointer;
    text-align: center;
    border: 1px solid #666;
  }
  /*ログインフォーム*/
}
