@charset "UTF-8";
body, div,
dl, dt, dd, ul, ol, li,
h1, h2, h3, h4, h5, h6,
pre, form, fieldset, input, textarea,
p, blockquote, th, td, figure {
  margin: 0;
  padding: 0; }

img {
  border: 0;
  vertical-align: bottom; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal; }

ul {
  list-style: none; }

caption, th {
  text-align: left; }

@font-face {
  font-family: 'noto sans';
  src: url("../fonts/NotoSansCJKjp-Regular.woff") format("truetype");
  font-display: swap; }
/* html
------------------------------------------------- */
html {
  overflow-y: scroll;
  height: 100%;
  scroll-behavior: smooth; }

/* body
------------------------------------------------- */
body {
  width: 100%;
  height: 100%;
  color: #000;
  font-size: 16px;
  font-family: 'noto sans';
  line-height: 1.6;
  _display: inline;
  _zoom: 1; }
  body .pc {
    display: block; }
  body .sp {
    display: none; }

@media (min-device-width: 641px) and (max-device-width: 1024px) {
  body {
    min-width: 1024px; } }
@media (max-width: 640px) {
  body {
    min-width: 320px;
    max-width: 640px;
    font-size: 14px; }
    body img {
      width: 100%;
      height: auto; }
    body .pc {
      display: none; }
    body .sp {
      display: block; } }
.wrap {
  overflow: hidden; }

/* wrapper
------------------------------------------------- */
#wrapper {
  width: 100%;
  height: 100%;
  min-height: 100%;
  margin: 0 auto;
  padding: 0;
  text-align: left;
  position: relative; }

/* header
------------------------------------------------- */
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999; }
  .header__inner {
    background: #fff;
    max-width: 1920px;
    width: 100%;
    margin: 0 auto;
    position: relative; }
    .header__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center;
      padding: 0 20px; }
      .header__inner--block h1 {
        width: 496px;
        margin: 20px 0; }
        .header__inner--block h1 img {
          width: 100%;
          height: auto;
          vertical-align: top; }
      .header__inner--block .right {
        width: 300px; }
        .header__inner--block .right .gnav nav ul {
          display: flex;
          flex-wrap: wrap;
          justify-content: flex-end;
          align-items: center; }
          .header__inner--block .right .gnav nav ul li:first-child {
            width: 135px;
            margin-right: 15px; }
            .header__inner--block .right .gnav nav ul li:first-child a {
              display: block;
              background: #006cb8;
              padding: 10px 0;
              text-align: center;
              color: #fff;
              font-weight: bold;
              -webkit-transition: 0.3s ease-in-out;
              -moz-transition: 0.3s ease-in-out;
              -o-transition: 0.3s ease-in-out;
              transition: 0.3s ease-in-out; }
              .header__inner--block .right .gnav nav ul li:first-child a:hover {
                background: #268bd2;
                text-decoration: none;
                -moz-transition: .5s;
                -webkit-transition: .5s;
                -o-transition: .5s;
                -ms-transition: .5s;
                transition: .5s; }
          .header__inner--block .right .gnav nav ul li:last-child {
            width: 135px; }
            .header__inner--block .right .gnav nav ul li:last-child a {
              display: block;
              border: 1px solid #006cb8;
              background: #e6e6e6;
              padding: 10px 0;
              text-align: center;
              color: #006cb8;
              font-weight: bold;
              -webkit-transition: 0.3s ease-in-out;
              -moz-transition: 0.3s ease-in-out;
              -o-transition: 0.3s ease-in-out;
              transition: 0.3s ease-in-out; }
              .header__inner--block .right .gnav nav ul li:last-child a:hover {
                background: #f7f7f7;
                text-decoration: none;
                -moz-transition: .5s;
                -webkit-transition: .5s;
                -o-transition: .5s;
                -ms-transition: .5s;
                transition: .5s; }

@media (max-width: 640px) {
  .header__inner {
    width: 100%;
    padding: 0; }
    .header__inner--block {
      padding: 0 3%; }
      .header__inner--block h1 {
        width: 70%;
        margin: 3.5% 0 0; }
      .header__inner--block .right {
        display: none; }
      .header__inner--block .spmenu {
        width: 15%;
        float: right; }
        .header__inner--block .spmenu #panel-btn #panel-btn-icon {
          display: block;
          background: url("../img/common/btn_menu_sp.png") no-repeat center center;
          background-size: cover;
          width: 100%;
          height: 100%;
          padding: 33.7% 0;
          position: relative;
          text-indent: -9999px;
          transition: 0.3s; }
          .header__inner--block .spmenu #panel-btn #panel-btn-icon.close {
            background: url("../img/common/btn_menu_close_sp.png") no-repeat center center;
            background-size: cover;
            transition: 0.3s; }
  .header .menu-box {
    display: block;
    position: fixed;
    background: #006cb8;
    width: 100%;
    top: 8%;
    left: 0;
    bottom: 0;
    z-index: 9998;
    overflow-y: scroll; }
    .header .menu-box:after {
      content: ""; }
    .header .menu-box .menu-box-inner {
      overflow: scroll;
      width: 80%;
      padding: 10% 10%; }
      .header .menu-box .menu-box-inner ul.menu-box-nav {
        margin-bottom: 10%; }
        .header .menu-box .menu-box-inner ul.menu-box-nav li a {
          display: block;
          padding: 4% 0;
          text-align: center;
          color: #fff !important;
          font-size: 16px;
          line-height: 1.3;
          position: relative; }
          .header .menu-box .menu-box-inner ul.menu-box-nav li a:hover {
            text-decoration: none; }
      .header .menu-box .menu-box-inner ul.menu-box-contact {
        width: 80%;
        margin: 0 auto; }
        .header .menu-box .menu-box-inner ul.menu-box-contact li:first-child {
          width: 100%;
          margin-bottom: 8%; }
          .header .menu-box .menu-box-inner ul.menu-box-contact li:first-child a {
            display: block;
            background: #fff;
            padding: 5% 0;
            text-align: center;
            color: #006cb8;
            font-size: 16px;
            font-weight: bold; }
            .header .menu-box .menu-box-inner ul.menu-box-contact li:first-child a:hover {
              text-decoration: none; }
        .header .menu-box .menu-box-inner ul.menu-box-contact li:last-child {
          width: 100%; }
          .header .menu-box .menu-box-inner ul.menu-box-contact li:last-child a {
            display: block;
            background: #999;
            padding: 5% 0;
            text-align: center;
            color: #fff;
            font-size: 16px;
            font-weight: bold; }
            .header .menu-box .menu-box-inner ul.menu-box-contact li:last-child a:hover {
              text-decoration: none; } }
/* article
------------------------------------------------- */
.mv {
  max-width: 1920px;
  margin: 95px auto 0; }
  .mv__inner {
    position: relative; }
    .mv__inner figure img {
      width: 100%;
      height: auto; }
    .mv__inner figure + div {
      position: absolute;
      top: 34%;
      left: 0;
      width: 100%;
      text-align: center; }
      .mv__inner figure + div h2 {
        margin-bottom: 30px;
        color: #fff;
        font-size: min(3vw, 50px);
        font-weight: bold;
        line-height: 1.3; }
        .mv__inner figure + div h2 span {
          color: #ffff00;
          font-size: min(4vw, 70px); }
      .mv__inner figure + div .txt {
        color: #fff;
        font-size: min(2vw, 30px);
        font-weight: bold; }

@media (max-width: 640px) {
  .mv {
    width: 100%;
    margin: 14.8% auto 0; }
    .mv__inner figure + div {
      top: 33%; }
      .mv__inner figure + div h2 {
        margin-bottom: 3%;
        font-size: 16px;
        line-height: 1.4; }
        .mv__inner figure + div h2 span {
          font-size: 24px; }
      .mv__inner figure + div .txt {
        font-size: 14px; } }
.mvlow {
  max-width: 1920px;
  margin: 95px auto 0; }
  .mvlow__inner {
    position: relative; }
    .mvlow__inner figure img {
      width: 100%;
      height: auto; }
    .mvlow__inner figure + div {
      position: absolute;
      top: 38%;
      left: 0;
      width: 100%;
      text-align: center; }
      .mvlow__inner figure + div h2 {
        margin-bottom: 10px;
        color: #fff;
        font-size: min(2.6vw, 42px);
        font-weight: bold;
        letter-spacing: 0.1em;
        line-height: 1.3; }
      .mvlow__inner figure + div .en {
        color: #fff;
        font-size: min(1.2vw, 18px);
        font-weight: bold;
        letter-spacing: 0.1em; }

@media (max-width: 640px) {
  .mvlow {
    width: 100%;
    margin: 15.2% auto 0; }
    .mvlow__inner figure + div {
      top: 37%; }
      .mvlow__inner figure + div h2 {
        margin-bottom: 1%;
        font-size: 20px;
        line-height: 1.4; }
        .mvlow__inner figure + div h2 span {
          font-size: 28px; }
      .mvlow__inner figure + div .en {
        font-size: 12px; } }
.bread {
  max-width: 1200px;
  margin: 0 auto;
  padding: 25px 20px 70px; }
  .bread__inner {
    display: inline-block; }
    .bread__inner ul {
      overflow: hidden; }
      .bread__inner ul li {
        float: left;
        font-size: 14px;
        letter-spacing: 0.1em; }
        .bread__inner ul li a {
          font-size: 14px;
          text-decoration: none; }
          .bread__inner ul li a:hover {
            text-decoration: underline; }
        .bread__inner ul li a::after {
          display: inline-block;
          content: '>';
          margin: 0 15px; }

@media (max-width: 640px) {
  .bread {
    max-width: 90%;
    padding: 4% 0 10%; }
    .bread__inner ul li {
      font-size: 12px; }
      .bread__inner ul li a {
        font-size: 12px; }
      .bread__inner ul li a::after {
        margin: 0 10px; } }
* html #pageTop {
  position: absolute; }

#pageTop {
  position: fixed;
  width: 60px;
  height: 60px;
  right: 2%;
  bottom: 2%;
  z-index: 900; }

@media (max-width: 640px) {
  * html #pageTopSp {
    position: absolute; }

  #pageTop {
    position: fixed;
    width: 10%;
    height: auto;
    right: 3%;
    bottom: 2%;
    z-index: 9997; } }
/* footer
------------------------------------------------- */
.footer {
  background: #ededed;
  max-width: 1920px;
  margin: 0 auto;
  padding: 45px 0 20px; }
  .footer__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px; }
    .footer__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      .footer__inner--block h1 {
        width: 280px;
        padding-top: 5px; }
        .footer__inner--block h1 img {
          width: 100%;
          height: auto;
          vertical-align: top; }
      .footer__inner--block .fnav {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        align-items: center;
        width: 300px;
        margin-bottom: 30px; }
        .footer__inner--block .fnav li:first-child {
          width: 120px;
          margin-right: 15px; }
          .footer__inner--block .fnav li:first-child a {
            display: block;
            background: #006cb8;
            padding: 10px 0;
            text-align: center;
            color: #fff;
            font-size: 14px;
            font-weight: bold;
            -webkit-transition: 0.3s ease-in-out;
            -moz-transition: 0.3s ease-in-out;
            -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out; }
            .footer__inner--block .fnav li:first-child a:hover {
              background: #268bd2;
              text-decoration: none;
              -moz-transition: .5s;
              -webkit-transition: .5s;
              -o-transition: .5s;
              -ms-transition: .5s;
              transition: .5s; }
        .footer__inner--block .fnav li:last-child {
          width: 120px; }
          .footer__inner--block .fnav li:last-child a {
            display: block;
            background: #fff;
            padding: 10px 0;
            text-align: center;
            color: #006cb8;
            font-size: 14px;
            font-weight: bold;
            -webkit-transition: 0.3s ease-in-out;
            -moz-transition: 0.3s ease-in-out;
            -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out; }
            .footer__inner--block .fnav li:last-child a:hover {
              background: #f0f0f0;
              text-decoration: none;
              -moz-transition: .5s;
              -webkit-transition: .5s;
              -o-transition: .5s;
              -ms-transition: .5s;
              transition: .5s; }
      .footer__inner--block .fbtn {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        align-items: center;
        width: 100%;
        margin-bottom: 80px; }
        .footer__inner--block .fbtn li:first-child {
          margin-right: 35px; }
        .footer__inner--block .fbtn li a {
          display: block;
          font-size: 14px;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          .footer__inner--block .fbtn li a:hover {
            color: #006cb8;
            text-decoration: none;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; }
    .footer__inner .copy {
      text-align: center;
      font-size: 13px; }

@media (max-width: 640px) {
  .footer {
    padding: 6% 0 6%; }
    .footer__inner {
      max-width: 90%;
      padding: 0; }
      .footer__inner--block {
        display: block; }
        .footer__inner--block h1 {
          width: 80%;
          margin: 0 auto 6%;
          padding-top: 0; }
          .footer__inner--block h1 img {
            vertical-align: middle; }
        .footer__inner--block .fnav {
          justify-content: space-between;
          width: 90%;
          margin: 0 auto 6%; }
          .footer__inner--block .fnav li:first-child {
            width: 48%;
            margin-right: 0; }
            .footer__inner--block .fnav li:first-child a {
              font-size: 14px; }
              .footer__inner--block .fnav li:first-child a:hover {
                background: #006cb8; }
          .footer__inner--block .fnav li:last-child {
            width: 48%; }
            .footer__inner--block .fnav li:last-child a {
              font-size: 14px; }
              .footer__inner--block .fnav li:last-child a:hover {
                background: #fff; }
        .footer__inner--block .fbtn {
          justify-content: space-between;
          width: 80%;
          margin: 0 auto 10%; }
          .footer__inner--block .fbtn li {
            width: 100%;
            text-align: center; }
            .footer__inner--block .fbtn li:first-child {
              margin: 0 0 5%; }
            .footer__inner--block .fbtn li a {
              font-size: 14px; }
              .footer__inner--block .fbtn li a:hover {
                color: #000; }
      .footer__inner .copy {
        font-size: 11px; } }
/* link
------------------------------------------------- */
a:link,
a:visited {
  color: #000;
  text-decoration: none; }

a:hover,
a:active {
  color: #000;
  text-decoration: underline; }

/* alpha
------------------------------------------------- */
a.alpha img {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out; }

a.alpha:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -moz-transition: .5s;
  -webkit-transition: .5s;
  -o-transition: .5s;
  -ms-transition: .5s;
  transition: .5s; }

/* clearfix
------------------------------------------------- */
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

/* *******************************************
     トップ
******************************************* */
#top .sec01 {
  max-width: 1920px;
  margin: 100px auto; }
  #top .sec01__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px; }
    #top .sec01__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #top .sec01__inner--block > li {
        border-radius: 10px;
        filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, 0.2));
        background: #fff;
        width: 42%;
        padding: 30px 2%;
        text-align: center; }
        #top .sec01__inner--block > li h3 {
          margin-bottom: 15px;
          font-size: min(2.2vw, 30px); }
        #top .sec01__inner--block > li .txt01 {
          margin-bottom: 20px; }
      #top .sec01__inner--block > li:first-child {
        border: 3px solid #006cb8; }
        #top .sec01__inner--block > li:first-child h3 {
          color: #006cb8; }
        #top .sec01__inner--block > li:first-child ul {
          width: 65%;
          margin: 0 auto; }
          #top .sec01__inner--block > li:first-child ul li:first-child {
            margin-bottom: 10px; }
            #top .sec01__inner--block > li:first-child ul li:first-child a {
              display: block;
              background: #006cb8;
              padding: 15px 0;
              text-align: center;
              color: #fff;
              font-size: min(1.6vw, 20px);
              font-weight: bold;
              letter-spacing: 0.1em;
              -webkit-transition: 0.3s ease-in-out;
              -moz-transition: 0.3s ease-in-out;
              -o-transition: 0.3s ease-in-out;
              transition: 0.3s ease-in-out; }
              #top .sec01__inner--block > li:first-child ul li:first-child a:hover {
                background: #268bd2;
                text-decoration: none;
                -moz-transition: .5s;
                -webkit-transition: .5s;
                -o-transition: .5s;
                -ms-transition: .5s;
                transition: .5s; }
          #top .sec01__inner--block > li:first-child ul li:last-child {
            margin-bottom: 15px; }
            #top .sec01__inner--block > li:first-child ul li:last-child a {
              display: block;
              border: 1px solid #006cb8;
              background: #e6e6e6;
              padding: 15px 0;
              text-align: center;
              color: #006cb8;
              font-size: min(1.6vw, 20px);
              font-weight: bold;
              letter-spacing: 0.1em;
              -webkit-transition: 0.3s ease-in-out;
              -moz-transition: 0.3s ease-in-out;
              -o-transition: 0.3s ease-in-out;
              transition: 0.3s ease-in-out; }
              #top .sec01__inner--block > li:first-child ul li:last-child a:hover {
                background: #f7f7f7;
                text-decoration: none;
                -moz-transition: .5s;
                -webkit-transition: .5s;
                -o-transition: .5s;
                -ms-transition: .5s;
                transition: .5s; }
        #top .sec01__inner--block > li:first-child .caution {
          position: absolute;
          bottom: -35px;
          left: 0;
          font-size: 14px; }
      #top .sec01__inner--block > li:last-child {
        border: 3px solid #eb6100; }
        #top .sec01__inner--block > li:last-child h3 {
          color: #eb6100; }
        #top .sec01__inner--block > li:last-child ul {
          width: 65%;
          margin: 0 auto; }
          #top .sec01__inner--block > li:last-child ul li:first-child {
            width: 100%;
            margin-bottom: 10px; }
            #top .sec01__inner--block > li:last-child ul li:first-child .modal-2__open-label {
              /* labelタグ自体はブロック表示のみ */
              display: block;
              width: 100%; }
              #top .sec01__inner--block > li:last-child ul li:first-child .modal-2__open-label a {
                /* aタグにボタンスタイルを適用 */
                display: block;
                border: none;
                background: #eb6100;
                width: 100%;
                padding: 15px 0;
                text-align: center;
                color: #fff;
                font-size: min(1.6vw, 20px);
                font-weight: bold;
                text-decoration: none;
                -webkit-transition: 0.3s ease-in-out;
                -moz-transition: 0.3s ease-in-out;
                -o-transition: 0.3s ease-in-out;
                transition: 0.3s ease-in-out; }
                #top .sec01__inner--block > li:last-child ul li:first-child .modal-2__open-label a:hover {
                  background: #f38538;
                  text-decoration: none;
                  -moz-transition: .5s;
                  -webkit-transition: .5s;
                  -o-transition: .5s;
                  -ms-transition: .5s;
                  transition: .5s; }
          #top .sec01__inner--block > li:last-child ul li:last-child {
            width: 100%;
            margin-bottom: 15px; }
            #top .sec01__inner--block > li:last-child ul li:last-child .modal-3__open-label {
              /* labelタグ自体はブロック表示のみ */
              display: block;
              width: 100%; }
              #top .sec01__inner--block > li:last-child ul li:last-child .modal-3__open-label a {
                /* aタグにボタンスタイルを適用 */
                display: block;
                border: 1px solid #eb6100;
                background: #fbebe0;
                width: 100%;
                padding: 15px 0;
                text-align: center;
                color: #eb6100;
                font-size: min(1.6vw, 20px);
                font-weight: bold;
                text-decoration: none;
                -webkit-transition: 0.3s ease-in-out;
                -moz-transition: 0.3s ease-in-out;
                -o-transition: 0.3s ease-in-out;
                transition: 0.3s ease-in-out; }
                #top .sec01__inner--block > li:last-child ul li:last-child .modal-3__open-label a:hover {
                  background: #fffaf7;
                  text-decoration: none;
                  -moz-transition: .5s;
                  -webkit-transition: .5s;
                  -o-transition: .5s;
                  -ms-transition: .5s;
                  transition: .5s; }

@media (max-width: 640px) {
  #top .sec01 {
    margin: 12% auto; }
    #top .sec01__inner {
      max-width: 90%;
      padding: 0; }
      #top .sec01__inner--block {
        display: block; }
        #top .sec01__inner--block > li {
          width: 94%;
          padding: 5% 3%; }
          #top .sec01__inner--block > li h3 {
            margin-bottom: 3%;
            font-size: 20px; }
          #top .sec01__inner--block > li .txt01 {
            margin-bottom: 4%; }
        #top .sec01__inner--block > li:first-child {
          border: 3px solid #006cb8;
          margin-bottom: 3%; }
          #top .sec01__inner--block > li:first-child ul {
            width: 80%; }
            #top .sec01__inner--block > li:first-child ul li:first-child {
              margin-bottom: 5%; }
              #top .sec01__inner--block > li:first-child ul li:first-child a {
                padding: 4.5% 0;
                font-size: 14px;
                letter-spacing: 0.1em; }
                #top .sec01__inner--block > li:first-child ul li:first-child a:hover {
                  background: #006cb8; }
            #top .sec01__inner--block > li:first-child ul li:last-child {
              margin-bottom: 4%; }
              #top .sec01__inner--block > li:first-child ul li:last-child a {
                padding: 4% 0;
                font-size: 14px;
                letter-spacing: 0.1em; }
                #top .sec01__inner--block > li:first-child ul li:last-child a:hover {
                  background: #e6e6e6; }
        #top .sec01__inner--block .caution {
          margin-bottom: 8%;
          text-align: center;
          font-size: 12px; }
        #top .sec01__inner--block > li:last-child {
          border: 3px solid #eb6100; }
          #top .sec01__inner--block > li:last-child ul {
            width: 80%; }
            #top .sec01__inner--block > li:last-child ul li:first-child {
              margin-bottom: 5%; }
              #top .sec01__inner--block > li:last-child ul li:first-child .modal-2__open-label {
                /* スマホ版：labelタグ自体はブロック表示のみ */
                display: block;
                width: 100%; }
                #top .sec01__inner--block > li:last-child ul li:first-child .modal-2__open-label a {
                  /* スマホ版：aタグにボタンスタイルを適用 */
                  display: block;
                  border: none;
                  background: #eb6100;
                  width: 100%;
                  padding: 4.5% 0;
                  text-align: center;
                  color: #fff;
                  font-size: 14px;
                  font-weight: bold;
                  text-decoration: none;
                  letter-spacing: 0.1em;
                  -webkit-transition: 0.3s ease-in-out;
                  -moz-transition: 0.3s ease-in-out;
                  -o-transition: 0.3s ease-in-out;
                  transition: 0.3s ease-in-out; }
                  #top .sec01__inner--block > li:last-child ul li:first-child .modal-2__open-label a:hover {
                    background: #f38538;
                    text-decoration: none;
                    -moz-transition: .5s;
                    -webkit-transition: .5s;
                    -o-transition: .5s;
                    -ms-transition: .5s;
                    transition: .5s; }
            #top .sec01__inner--block > li:last-child ul li:last-child {
              margin-bottom: 4%; }
              #top .sec01__inner--block > li:last-child ul li:last-child .modal-3__open-label {
                padding: 4% 0;
                font-size: 14px;
                letter-spacing: 0.1em; }
                #top .sec01__inner--block > li:last-child ul li:last-child .modal-3__open-label:hover {
                  background: #fbebe0; } }
.modal-2__wrap {
  display: inline-block;
  width: 100%; }
  .modal-2__wrap input {
    display: none; }

.modal-2__open-label,
.modal-2__close-label {
  color: #000; }

.modal-2__open-label:hover {
  text-decoration: none;
  cursor: pointer;
  color: #006cb8; }

.modal-2 {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  display: none; }

.modal-2__open-input:checked + label + input + .modal-2 {
  display: block;
  animation: modal-2-animation .6s; }

.modal-2__content-wrap {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
  max-width: 650px;
  background-color: #fefefe;
  filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, 0.2));
  z-index: 2;
  border-radius: 5px; }

.modal-2__close-label {
  display: table-cell;
  position: fixed;
  top: -15px;
  right: -2%;
  background: #777;
  border: 2px solid #fff;
  border-radius: 20px;
  width: 36px;
  height: 36px;
  line-height: 1.5;
  text-align: center;
  color: #fff;
  font-size: 1.4em;
  cursor: pointer;
  z-index: 99999; }

.modal-2__content {
  max-height: 50vh;
  overflow-y: auto;
  padding: 30px 45px; }

@keyframes modal-2-animation {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@media only screen and (max-width: 520px) {
  .modal-2__close-label {
    top: -15px;
    right: -4%;
    width: 30px;
    height: 30px; }

  .modal-2__content-wrap {
    width: 80vw; }

  .modal-2__content {
    padding: 20px 20px;
    max-width: 100%; } }
.modal-3__wrap {
  display: inline-block;
  width: 100%; }
  .modal-3__wrap input {
    display: none; }

.modal-3__open-label,
.modal-3__close-label {
  color: #000; }

.modal-3__open-label:hover {
  text-decoration: none;
  cursor: pointer;
  color: #006cb8; }

.modal-3 {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  display: none; }

.modal-3__open-input:checked + label + input + .modal-3 {
  display: block;
  animation: modal-3-animation .6s; }

.modal-3__content-wrap {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
  max-width: 650px;
  background-color: #fefefe;
  filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, 0.2));
  z-index: 2;
  border-radius: 5px; }

.modal-3__close-label {
  display: table-cell;
  position: fixed;
  top: -15px;
  right: -2%;
  background: #777;
  border: 2px solid #fff;
  border-radius: 20px;
  width: 36px;
  height: 36px;
  line-height: 1.5;
  text-align: center;
  color: #fff;
  font-size: 1.4em;
  cursor: pointer;
  z-index: 99999; }

.modal-3__content {
  max-height: 50vh;
  overflow-y: auto;
  padding: 30px 45px; }

@keyframes modal-3-animation {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@media only screen and (max-width: 520px) {
  .modal-3__close-label {
    top: -15px;
    right: -4%;
    width: 30px;
    height: 30px; }

  .modal-3__content-wrap {
    width: 80vw; }

  .modal-3__content {
    padding: 20px 20px;
    max-width: 100%; } }
/* *******************************************
     会員登録
******************************************* */
#regist .regist01 {
  max-width: 1920px;
  margin: 0 auto 120px; }
  #regist .regist01__inner {
    max-width: 850px;
    margin: 0 auto;
    padding: 0 20px; }
    #regist .regist01__inner .read {
      margin-bottom: 20px;
      text-align: center; }
    #regist .regist01__inner .box {
      background: #f3f3f3;
      margin-bottom: 65px;
      padding: 25px 20px;
      text-align: center; }
      #regist .regist01__inner .box.after {
        border: 1px solid #ccc;
        background: #f7f7f7;
        padding: 15px 15px; }
      #regist .regist01__inner .box p {
        line-height: 2.0; }
        #regist .regist01__inner .box p span {
          color: #e60012;
          font-size: 22px;
          font-weight: bold; }
    #regist .regist01__inner dl {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center;
      width: 90%;
      margin: 0 auto 30px; }
      #regist .regist01__inner dl.lst {
        margin: 0 auto 60px; }
      #regist .regist01__inner dl dt {
        width: 28%; }
        #regist .regist01__inner dl dt span {
          position: relative; }
        #regist .regist01__inner dl dt.required span:after {
          content: "※";
          position: absolute;
          top: 0;
          right: -22px;
          color: #e60012; }
      #regist .regist01__inner dl dd {
        width: 70%; }
        #regist .regist01__inner dl dd input[type=text] {
          border: 1px solid #999;
          width: 94%;
          padding: 18px 3%;
          font-size: 16px; }
          #regist .regist01__inner dl dd input[type=text]::placeholder {
            color: #999; }
    #regist .regist01__inner .btn_submit {
      width: 300px;
      margin: 0 auto; }
      #regist .regist01__inner .btn_submit .button {
        display: block;
        border: none;
        box-shadow: 7px 7px 0px 0 #cccccc;
        background: #006cb8;
        width: 100%;
        padding: 20px 0;
        text-align: center;
        color: #fff;
        font-size: 20px;
        font-weight: bold;
        letter-spacing: 0.1em;
        cursor: pointer;
        -moz-transition: .5s;
        -webkit-transition: .5s;
        -o-transition: .5s;
        -ms-transition: .5s;
        transition: .5s; }
        #regist .regist01__inner .btn_submit .button:hover {
          background: #268bd2;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
    #regist .regist01__inner .txt_fin01 {
      padding-bottom: 30px;
      text-align: center;
      line-height: 1.8; }
    #regist .regist01__inner .txt_fin02 {
      padding-bottom: 100px;
      text-align: center;
      line-height: 1.8; }

@media (max-width: 640px) {
  #regist .regist01 {
    margin: 0 auto 15%; }
    #regist .regist01__inner {
      max-width: 90%;
      padding: 0; }
      #regist .regist01__inner .read {
        margin-bottom: 4%; }
      #regist .regist01__inner .box {
        margin-bottom: 10%;
        padding: 5% 3%; }
        #regist .regist01__inner .box p {
          line-height: 1.6; }
          #regist .regist01__inner .box p span {
            font-size: 16px; }
      #regist .regist01__inner dl {
        width: 100%;
        margin: 0 auto 8%; }
        #regist .regist01__inner dl.lst {
          margin: 0 auto 10%; }
        #regist .regist01__inner dl dt {
          width: 100%;
          margin-bottom: 2%; }
          #regist .regist01__inner dl dt.required span:after {
            top: 0;
            right: -20px; }
        #regist .regist01__inner dl dd {
          width: 100%; }
          #regist .regist01__inner dl dd input[type=text] {
            padding: 3% 3%;
            font-size: 14px; }
      #regist .regist01__inner .btn_submit {
        width: 70%; }
        #regist .regist01__inner .btn_submit .button {
          padding: 6% 0;
          font-size: 16px; }
          #regist .regist01__inner .btn_submit .button:hover {
            background: #006cb8; } }
#regist .regist02 {
  max-width: 1920px;
  margin: 0 auto 120px; }
  #regist .regist02__inner {
    max-width: 850px;
    margin: 0 auto;
    padding: 0 20px; }
    #regist .regist02__inner .txt_req {
      margin-bottom: 30px;
      color: #e60012; }
    #regist .regist02__inner .read {
      margin-bottom: 50px;
      text-align: center; }
    #regist .regist02__inner dl {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      border-bottom: 1px solid #ccc;
      padding: 20px 0; }
      #regist .regist02__inner dl.fst {
        border-top: 1px solid #ccc; }
      #regist .regist02__inner dl dt {
        width: 28%;
        padding-top: 6px; }
        #regist .regist02__inner dl dt.sin {
          padding-top: 0; }
        #regist .regist02__inner dl dt span {
          position: relative; }
        #regist .regist02__inner dl dt.required span:after {
          content: "※";
          position: absolute;
          top: 0;
          right: -20px;
          color: #e60012; }
      #regist .regist02__inner dl dd {
        width: 70%; }
        #regist .regist02__inner dl dd input[type=text] {
          border: 1px solid #999;
          padding: 10px 3%;
          font-size: 16px; }
          #regist .regist02__inner dl dd input[type=text].size01 {
            width: 84%; }
          #regist .regist02__inner dl dd input[type=text].size02 {
            width: 12%; }
          #regist .regist02__inner dl dd input[type=text].size03 {
            width: 15%; }
          #regist .regist02__inner dl dd input[type=text].size04 {
            width: 82%; }
          #regist .regist02__inner dl dd input[type=text].size05 {
            width: 50%; }
          #regist .regist02__inner dl dd input[type=text]::placeholder {
            color: #999; }
        #regist .regist02__inner dl dd ul.radio {
          display: flex;
          flex-wrap: wrap; }
          #regist .regist02__inner dl dd ul.radio li {
            margin-right: 30px; }
            #regist .regist02__inner dl dd ul.radio li:last-child {
              margin-bottom: 0; }
            #regist .regist02__inner dl dd ul.radio li input[type=radio] {
              display: none; }
            #regist .regist02__inner dl dd ul.radio li label {
              display: inline-block;
              border-radius: 2px;
              position: relative;
              margin-left: 5px;
              padding: 5px 0 5px 13px;
              text-align: center;
              cursor: pointer;
              line-height: 1; }
              #regist .regist02__inner dl dd ul.radio li label:before {
                content: "";
                position: absolute;
                top: 50%;
                left: -10px;
                border-radius: 50%;
                border: 1px solid #999;
                background: #fff;
                width: 16px;
                height: 16px;
                margin-top: -8px; }
            #regist .regist02__inner dl dd ul.radio li input[type="radio"]:checked + label:after {
              content: "";
              position: absolute;
              top: 50%;
              left: -6px;
              border-radius: 50%;
              background: #006cb8;
              width: 10px;
              height: 10px;
              margin-top: -5px; }
        #regist .regist02__inner dl dd select {
          border: 1px solid #999;
          width: 40%;
          padding: 10px 15px;
          font-size: 16px; }
        #regist .regist02__inner dl dd input[type=button].search {
          margin-left: 20px;
          padding: 8px 20px;
          cursor: pointer; }
        #regist .regist02__inner dl dd .add li {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between;
          margin-bottom: 18px; }
          #regist .regist02__inner dl dd .add li:last-child {
            margin-bottom: 0; }
          #regist .regist02__inner dl dd .add li .ttl_add {
            width: 15%;
            padding-top: 7px;
            text-align: right; }
          #regist .regist02__inner dl dd .add li .in_add {
            width: 82%; }
        #regist .regist02__inner dl dd .affiliation {
          margin-top: 20px; }
          #regist .regist02__inner dl dd .affiliation li {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            margin-bottom: 20px; }
            #regist .regist02__inner dl dd .affiliation li:last-child {
              margin-bottom: 0; }
            #regist .regist02__inner dl dd .affiliation li .question {
              width: 250px; }
            #regist .regist02__inner dl dd .affiliation li .enable {
              margin-left: 20px; }
        #regist .regist02__inner dl dd .sub {
          margin-top: 5px;
          font-size: 12px;
          letter-spacing: 0.1em; }
        #regist .regist02__inner dl dd .hyphen {
          margin: 0 10px; }
        #regist .regist02__inner dl dd .fuki {
          position: relative; }
          #regist .regist02__inner dl dd .fuki .txt {
            margin-top: 8px;
            font-size: 13px;
            cursor: pointer; }
          #regist .regist02__inner dl dd .fuki .txt:hover {
            color: #006cb8; }
          #regist .regist02__inner dl dd .fuki .txt:hover + .fukidashi {
            display: block; }
          #regist .regist02__inner dl dd .fuki .fukidashi {
            display: none;
            position: absolute;
            top: -20px;
            left: 150px;
            border-radius: 5px;
            background: #f3f3f3;
            width: 380px;
            padding: 15px 15px; }
            #regist .regist02__inner dl dd .fuki .fukidashi:after {
              content: "";
              position: absolute;
              top: 45px;
              left: -30px;
              margin-top: -20px;
              border: 8px solid transparent;
              border-right: 22px solid #f3f3f3; }
        #regist .regist02__inner dl dd input[type=checkbox] {
          display: none; }
        #regist .regist02__inner dl dd label {
          display: inline-block;
          cursor: pointer; }
        #regist .regist02__inner dl dd input[type=checkbox] + span {
          padding-left: 30px;
          display: inline-block;
          position: relative; }
        #regist .regist02__inner dl dd input[type=checkbox] + span::after,
        #regist .regist02__inner dl dd input[type=checkbox] + span::before {
          content: '';
          display: block;
          position: absolute;
          border-radius: 3px;
          border: 1px solid #aaa;
          width: 20px;
          height: 20px;
          top: 3px;
          left: 0; }
        #regist .regist02__inner dl dd input[type=checkbox] + span::after {
          opacity: 0;
          width: 6px;
          height: 13px;
          transform: rotate(45deg);
          left: 6px;
          border: none;
          border-right: 4px solid #006cb8;
          border-bottom: 4px solid #006cb8; }
        #regist .regist02__inner dl dd input[type=checkbox]:checked + span::after {
          opacity: 1; }
    #regist .regist02__inner .title {
      background: #f1f9ff;
      padding: 10px 20px;
      margin: 70px 0 20px;
      font-size: 18px; }
    #regist .regist02__inner .same {
      margin-bottom: 30px; }
      #regist .regist02__inner .same input[type=checkbox] {
        display: none; }
      #regist .regist02__inner .same label {
        display: inline-block;
        cursor: pointer; }
      #regist .regist02__inner .same input[type=checkbox] + span {
        padding-left: 30px;
        display: inline-block;
        position: relative; }
      #regist .regist02__inner .same input[type=checkbox] + span::after,
      #regist .regist02__inner .same input[type=checkbox] + span::before {
        content: '';
        display: block;
        position: absolute;
        border-radius: 3px;
        border: 1px solid #aaa;
        width: 20px;
        height: 20px;
        top: 3px;
        left: 0; }
      #regist .regist02__inner .same input[type=checkbox] + span::after {
        opacity: 0;
        width: 6px;
        height: 13px;
        transform: rotate(45deg);
        left: 6px;
        border: none;
        border-right: 4px solid #006cb8;
        border-bottom: 4px solid #006cb8; }
      #regist .regist02__inner .same input[type=checkbox]:checked + span::after {
        opacity: 1; }
    #regist .regist02__inner .price {
      border: 1px solid #999;
      width: 400px;
      margin: 50px auto 10px; }
      #regist .regist02__inner .price ul {
        display: flex;
        flex-wrap: wrap;
        align-items: center; }
        #regist .regist02__inner .price ul li:first-child {
          border-right: 1px solid #999;
          background: #f3f3f3;
          width: 150px;
          padding: 15px 0;
          text-align: center; }
        #regist .regist02__inner .price ul li:last-child {
          width: calc(100% - 152px);
          padding: 15px 0;
          text-align: center; }
    #regist .regist02__inner .sub_caution {
      text-align: center;
      font-size: 14px; }
    #regist .regist02__inner .doui {
      margin: 40px 0 50px;
      text-align: center;
      line-height: 2.0; }
      #regist .regist02__inner .doui a {
        margin-right: 5px;
        color: #0066cc;
        text-decoration: underline;
        cursor: pointer; }
        #regist .regist02__inner .doui a:hover {
          text-decoration: underline; }
      #regist .regist02__inner .doui input[type=checkbox] {
        display: none; }
      #regist .regist02__inner .doui label {
        display: inline-block;
        cursor: pointer; }
      #regist .regist02__inner .doui input[type=checkbox] + span {
        padding-left: 30px;
        display: inline-block;
        position: relative; }
      #regist .regist02__inner .doui input[type=checkbox] + span::after,
      #regist .regist02__inner .doui input[type=checkbox] + span::before {
        content: '';
        display: block;
        position: absolute;
        border-radius: 3px;
        border: 1px solid #aaa;
        width: 20px;
        height: 20px;
        top: 5px;
        left: 0; }
      #regist .regist02__inner .doui input[type=checkbox] + span::after {
        opacity: 0;
        width: 6px;
        height: 13px;
        transform: rotate(45deg);
        left: 6px;
        border: none;
        border-right: 4px solid #006cb8;
        border-bottom: 4px solid #006cb8; }
      #regist .regist02__inner .doui input[type=checkbox]:checked + span::after {
        opacity: 1; }
    #regist .regist02__inner .btn_submit {
      width: 300px;
      margin: 0 auto; }
      #regist .regist02__inner .btn_submit .button {
        display: block;
        border: none;
        box-shadow: 7px 7px 0px 0 #cccccc;
        background: #006cb8;
        width: 100%;
        padding: 20px 0;
        text-align: center;
        color: #fff;
        font-size: 20px;
        font-weight: bold;
        letter-spacing: 0.1em;
        cursor: pointer;
        -moz-transition: .5s;
        -webkit-transition: .5s;
        -o-transition: .5s;
        -ms-transition: .5s;
        transition: .5s; }
        #regist .regist02__inner .btn_submit .button:hover {
          background: #268bd2;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }

@media (max-width: 640px) {
  #regist .regist02 {
    margin: 0 auto 15%; }
    #regist .regist02__inner {
      max-width: 90%;
      padding: 0; }
      #regist .regist02__inner .txt_req {
        margin-bottom: 4%; }
      #regist .regist02__inner .read {
        margin-bottom: 7%; }
      #regist .regist02__inner dl {
        border-bottom: none;
        padding: 0 0 8%; }
        #regist .regist02__inner dl.fst {
          border-top: none; }
        #regist .regist02__inner dl dt {
          background: #f3f3f3;
          width: 100%;
          margin: 0 0 3%;
          padding: 2% 3%; }
          #regist .regist02__inner dl dt.sin {
            padding: 2% 3%; }
        #regist .regist02__inner dl dd {
          width: 100%; }
          #regist .regist02__inner dl dd input[type=text] {
            padding: 2% 3%;
            font-size: 14px; }
            #regist .regist02__inner dl dd input[type=text].size01 {
              width: 94%; }
            #regist .regist02__inner dl dd input[type=text].size02 {
              width: 13%; }
            #regist .regist02__inner dl dd input[type=text].size03 {
              width: 18%; }
            #regist .regist02__inner dl dd input[type=text].size04 {
              width: 94%; }
            #regist .regist02__inner dl dd input[type=text].size05 {
              width: 94%; }
          #regist .regist02__inner dl dd select {
            width: 50%;
            padding: 2% 3%;
            font-size: 14px; }
          #regist .regist02__inner dl dd input[type=button].search {
            margin-left: 5%;
            padding: 5px 10px; }
          #regist .regist02__inner dl dd .add li {
            margin-bottom: 3%; }
            #regist .regist02__inner dl dd .add li .ttl_add {
              width: 100%;
              padding: 0 0 1%;
              text-align: left; }
            #regist .regist02__inner dl dd .add li .in_add {
              width: 100%; }
          #regist .regist02__inner dl dd .affiliation {
            margin-top: 5%; }
            #regist .regist02__inner dl dd .affiliation li {
              margin-bottom: 5%; }
              #regist .regist02__inner dl dd .affiliation li .question {
                width: 100%;
                margin-bottom: 2%; }
              #regist .regist02__inner dl dd .affiliation li .enable {
                margin-left: 20px; }
          #regist .regist02__inner dl dd .sub {
            margin-top: 3%;
            font-size: 11px; }
          #regist .regist02__inner dl dd .fuki .txt {
            margin-top: 3%;
            font-size: 12px; }
          #regist .regist02__inner dl dd .fuki .txt:hover {
            color: #000; }
          #regist .regist02__inner dl dd .fuki .fukidashi {
            display: none;
            position: absolute;
            top: -20px;
            left: 32%;
            border-radius: 5px;
            background: #ccc;
            width: 58%;
            padding: 4% 5%;
            z-index: 100; }
            #regist .regist02__inner dl dd .fuki .fukidashi:after {
              content: "";
              position: absolute;
              top: 45px;
              left: -14px;
              margin-top: -20px;
              border: 6px solid transparent;
              border-right: 11px solid #ccc; }
          #regist .regist02__inner dl dd .hyphen {
            margin: 0 2%; }
      #regist .regist02__inner .title {
        margin: 4% 0 4%;
        padding: 2% 3%;
        font-size: 16px; }
      #regist .regist02__inner .same {
        margin-bottom: 5%; }
      #regist .regist02__inner .price {
        width: 100%;
        margin: 3% auto; }
        #regist .regist02__inner .price ul li:first-child {
          padding: 2% 0; }
        #regist .regist02__inner .price ul li:last-child {
          padding: 2% 0; }
      #regist .regist02__inner .sub_caution {
        font-size: 12px; }
      #regist .regist02__inner .doui {
        margin: 6% 0 12%; }
      #regist .regist02__inner .btn_submit {
        width: 70%; }
        #regist .regist02__inner .btn_submit .button {
          padding: 6% 0;
          font-size: 16px; }
          #regist .regist02__inner .btn_submit .button:hover {
            background: #006cb8; } }
/* *******************************************
     ログイン
******************************************* */
#login .login {
  max-width: 1920px;
  margin: 0 auto 120px; }
  #login .login__inner {
    max-width: 850px;
    margin: 0 auto;
    padding: 0 20px; }
    #login .login__inner .read {
      margin-bottom: 50px;
      text-align: center; }
      #login .login__inner .read a {
        color: #0066cc;
        text-decoration: underline; }
    #login .login__inner dl {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center;
      width: 90%;
      margin: 0 auto 20px; }
      #login .login__inner dl.lst {
        margin: 0 auto 40px; }
      #login .login__inner dl dt {
        width: 28%; }
        #login .login__inner dl dt span {
          position: relative; }
        #login .login__inner dl dt.required span:after {
          content: "※";
          position: absolute;
          top: 0;
          right: -25px;
          color: #e60012; }
      #login .login__inner dl dd {
        width: 70%; }
        #login .login__inner dl dd input[type=text] {
          border: 1px solid #999;
          width: 94%;
          padding: 18px 3%;
          font-size: 16px; }
          #login .login__inner dl dd input[type=text]::placeholder {
            color: #999; }
    #login .login__inner .forget {
      margin-bottom: 30px;
      text-align: center; }
      #login .login__inner .forget a {
        color: #006cb8;
        text-decoration: underline; }
    #login .login__inner .btn_submit {
      width: 300px;
      margin: 0 auto; }
      #login .login__inner .btn_submit .button {
        display: block;
        border: none;
        box-shadow: 7px 7px 0px 0 #cccccc;
        background: #006cb8;
        width: 100%;
        padding: 20px 0;
        text-align: center;
        color: #fff;
        font-size: 20px;
        font-weight: bold;
        letter-spacing: 0.1em;
        cursor: pointer;
        -moz-transition: .5s;
        -webkit-transition: .5s;
        -o-transition: .5s;
        -ms-transition: .5s;
        transition: .5s; }
        #login .login__inner .btn_submit .button:hover {
          background: #268bd2;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }

@media (max-width: 640px) {
  #login .login {
    margin: 0 auto 15%; }
    #login .login__inner {
      max-width: 90%;
      padding: 0; }
      #login .login__inner .read {
        margin-bottom: 10%; }
      #login .login__inner dl {
        width: 100%;
        margin: 0 auto 4%; }
        #login .login__inner dl.lst {
          margin: 0 auto 8%; }
        #login .login__inner dl dt {
          width: 100%;
          margin-bottom: 2%; }
        #login .login__inner dl dd {
          width: 100%; }
          #login .login__inner dl dd input[type=text] {
            padding: 3% 3%;
            font-size: 14px; }
      #login .login__inner .forget {
        margin-bottom: 8%; }
      #login .login__inner .btn_submit {
        width: 70%; }
        #login .login__inner .btn_submit .button {
          padding: 6% 0;
          font-size: 16px; }
          #login .login__inner .btn_submit .button:hover {
            background: #006cb8; } }
/* *******************************************
     マイページ
******************************************* */
#mypage .mypage {
  max-width: 1920px;
  margin: 0 auto 120px; }
  #mypage .mypage__inner {
    max-width: 850px;
    margin: 0 auto;
    padding: 0 20px; }
    #mypage .mypage__inner--title {
      border-bottom: 1px solid #eb6100;
      margin-bottom: 30px;
      padding-bottom: 6px;
      font-size: 20px;
      font-weight: bold; }
      #mypage .mypage__inner--title span {
        position: relative; }
        #mypage .mypage__inner--title span:before {
          content: "";
          position: absolute;
          left: 0;
          bottom: -8px;
          background: #eb6100;
          width: 250px;
          height: 3px; }
    #mypage .mypage__inner--menu {
      margin-bottom: 30px; }
      #mypage .mypage__inner--menu li {
        margin-bottom: 20px; }
        #mypage .mypage__inner--menu li a {
          padding-left: 23px;
          position: relative;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          #mypage .mypage__inner--menu li a:before {
            content: "→";
            position: absolute;
            top: 0;
            left: 0; }
          #mypage .mypage__inner--menu li a:hover {
            color: #006cb8;
            text-decoration: none;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; }
    #mypage .mypage__inner--link a {
      color: #006cb8;
      text-decoration: underline; }

@media (max-width: 640px) {
  #mypage .mypage {
    margin: 0 auto 15%; }
    #mypage .mypage__inner {
      max-width: 90%;
      padding: 0; }
      #mypage .mypage__inner--title {
        margin-bottom: 8%;
        padding-bottom: 6px;
        font-size: 18px; }
        #mypage .mypage__inner--title span:before {
          bottom: -8px;
          width: 200px;
          height: 2px; }
      #mypage .mypage__inner--menu {
        margin-bottom: 8%; }
        #mypage .mypage__inner--menu li {
          margin-bottom: 6%; }
          #mypage .mypage__inner--menu li a:hover {
            color: #000; } }
#mypage .send {
  max-width: 1920px;
  margin: 0 auto 120px; }
  #mypage .send__inner {
    max-width: 850px;
    margin: 0 auto;
    padding: 0 20px; }
    #mypage .send__inner--box {
      background: #f3f3f3;
      margin-bottom: 70px;
      padding: 30px 30px;
      text-align: center; }
      #mypage .send__inner--box .txt {
        margin-bottom: 20px; }
      #mypage .send__inner--box .btn a {
        display: inline-block;
        background: #006cb8;
        padding: 10px 30px;
        color: #fff;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out; }
        #mypage .send__inner--box .btn a:hover {
          background: #268bd2;
          text-decoration: none;
          -moz-transition: .5s;
          -webkit-transition: .5s;
          -o-transition: .5s;
          -ms-transition: .5s;
          transition: .5s; }
    #mypage .send__inner--title {
      margin-bottom: 20px;
      text-align: center;
      font-size: 20px; }
    #mypage .send__inner--list {
      border-top: 1px solid #ccc; }
      #mypage .send__inner--list li {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        border-bottom: 1px solid #ccc;
        padding: 15px 0; }
        #mypage .send__inner--list li .date {
          width: 100px; }
        #mypage .send__inner--list li .ttl {
          width: calc(100% - 320px);
          margin-right: 20px; }
        #mypage .send__inner--list li .edit {
          width: 90px;
          margin-right: 20px; }
          #mypage .send__inner--list li .edit a {
            display: block;
            background: #006cb8;
            padding: 5px 0;
            text-align: center;
            color: #fff;
            -webkit-transition: 0.3s ease-in-out;
            -moz-transition: 0.3s ease-in-out;
            -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out; }
            #mypage .send__inner--list li .edit a:hover {
              background: #268bd2;
              text-decoration: none;
              -moz-transition: .5s;
              -webkit-transition: .5s;
              -o-transition: .5s;
              -ms-transition: .5s;
              transition: .5s; }
        #mypage .send__inner--list li .delete {
          width: 90px; }
          #mypage .send__inner--list li .delete a {
            display: block;
            background: #eb6100;
            padding: 5px 0;
            text-align: center;
            color: #fff;
            -webkit-transition: 0.3s ease-in-out;
            -moz-transition: 0.3s ease-in-out;
            -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out; }
            #mypage .send__inner--list li .delete a:hover {
              background: #f38538;
              text-decoration: none;
              -moz-transition: .5s;
              -webkit-transition: .5s;
              -o-transition: .5s;
              -ms-transition: .5s;
              transition: .5s; }
    #mypage .send__inner--form dl {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      border-bottom: 1px solid #ccc;
      padding: 20px 0; }
      #mypage .send__inner--form dl.fst {
        border-top: 1px solid #ccc; }
      #mypage .send__inner--form dl dt {
        width: 28%;
        padding-top: 6px; }
      #mypage .send__inner--form dl dd {
        width: 70%; }
        #mypage .send__inner--form dl dd input[type=text] {
          border: 1px solid #999;
          width: 84%;
          padding: 10px 3%;
          font-size: 16px; }
          #mypage .send__inner--form dl dd input[type=text]::placeholder {
            color: #999; }
        #mypage .send__inner--form dl dd textarea {
          border: 1px solid #999;
          width: 84%;
          height: 150px;
          padding: 10px 3%;
          font-size: 16px; }
        #mypage .send__inner--form dl dd input[type=file] {
          margin-top: 5px; }
        #mypage .send__inner--form dl dd .txt01 {
          margin-bottom: 20px; }
        #mypage .send__inner--form dl dd .txt02 {
          margin-bottom: 15px;
          padding-left: 10px; }
        #mypage .send__inner--form dl dd .title {
          margin-bottom: 15px;
          padding: 8px 10px; }
          #mypage .send__inner--form dl dd .title.blue {
            background: #f1f9ff; }
          #mypage .send__inner--form dl dd .title.org {
            background: #fff1eb; }
          #mypage .send__inner--form dl dd .title.grn {
            background: #ecffeb; }
          #mypage .send__inner--form dl dd .title span {
            margin-left: 20px;
            font-size: 14px; }
        #mypage .send__inner--form dl dd ul.check {
          margin-bottom: 40px; }
          #mypage .send__inner--form dl dd ul.check li {
            margin-bottom: 8px;
            padding-left: 10px; }
            #mypage .send__inner--form dl dd ul.check li:last-child {
              margin-bottom: 0; }
            #mypage .send__inner--form dl dd ul.check li input[type=checkbox] {
              display: none; }
            #mypage .send__inner--form dl dd ul.check li label {
              display: inline-block;
              cursor: pointer; }
            #mypage .send__inner--form dl dd ul.check li input[type=checkbox] + span {
              padding-left: 30px;
              display: inline-block;
              position: relative; }
            #mypage .send__inner--form dl dd ul.check li input[type=checkbox] + span::after,
            #mypage .send__inner--form dl dd ul.check li input[type=checkbox] + span::before {
              content: '';
              display: block;
              position: absolute;
              border-radius: 3px;
              border: 1px solid #aaa;
              width: 20px;
              height: 20px;
              top: 3px;
              left: 0; }
            #mypage .send__inner--form dl dd ul.check li input[type=checkbox] + span::after {
              opacity: 0;
              width: 6px;
              height: 13px;
              transform: rotate(45deg);
              left: 6px;
              border: none;
              border-right: 4px solid #006cb8;
              border-bottom: 4px solid #006cb8; }
            #mypage .send__inner--form dl dd ul.check li input[type=checkbox]:checked + span::after {
              opacity: 1; }
        #mypage .send__inner--form dl dd .caution01 {
          margin-top: 20px;
          font-size: 12px; }
    #mypage .send__inner--form .btn_submit {
      width: 300px;
      margin: 70px auto 0; }
      #mypage .send__inner--form .btn_submit .button {
        display: block;
        border: none;
        box-shadow: 7px 7px 0px 0 #cccccc;
        background: #006cb8;
        width: 100%;
        padding: 15px 0;
        text-align: center;
        color: #fff;
        font-size: 20px;
        font-weight: bold;
        letter-spacing: 0.1em;
        cursor: pointer;
        -moz-transition: .5s;
        -webkit-transition: .5s;
        -o-transition: .5s;
        -ms-transition: .5s;
        transition: .5s; }
        #mypage .send__inner--form .btn_submit .button:hover {
          background: #268bd2;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
    #mypage .send__inner .txt {
      margin-bottom: 60px;
      text-align: center; }
    #mypage .send__inner .btn_mypage {
      width: 300px;
      margin: 0 auto 25px; }
      #mypage .send__inner .btn_mypage a {
        display: block;
        box-shadow: 7px 7px 0px 0 #cccccc;
        background: #006cb8;
        width: 100%;
        padding: 15px 0;
        text-align: center;
        color: #fff;
        font-size: 20px;
        font-weight: bold;
        letter-spacing: 0.1em;
        -moz-transition: .5s;
        -webkit-transition: .5s;
        -o-transition: .5s;
        -ms-transition: .5s;
        transition: .5s; }
        #mypage .send__inner .btn_mypage a:hover {
          background: #268bd2;
          text-decoration: none;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
    #mypage .send__inner .caution02 {
      text-align: center;
      font-size: 14px; }

@media (max-width: 640px) {
  #mypage .send {
    margin: 0 auto 15%; }
    #mypage .send__inner {
      max-width: 90%;
      padding: 0; }
      #mypage .send__inner--box {
        margin-bottom: 10%;
        padding: 5% 5%; }
        #mypage .send__inner--box .txt {
          margin-bottom: 5%; }
        #mypage .send__inner--box .btn a {
          padding: 10px 20px; }
          #mypage .send__inner--box .btn a:hover {
            background: #006cb8; }
      #mypage .send__inner--title {
        margin-bottom: 2%;
        font-size: 16px; }
      #mypage .send__inner--list li {
        padding: 3% 0; }
        #mypage .send__inner--list li .date {
          width: 100%; }
        #mypage .send__inner--list li .ttl {
          width: calc(100% - 140px);
          margin-right: 10px; }
        #mypage .send__inner--list li .edit {
          width: 60px;
          margin-right: 10px; }
          #mypage .send__inner--list li .edit a {
            padding: 3px 0; }
            #mypage .send__inner--list li .edit a:hover {
              background: #006cb8; }
        #mypage .send__inner--list li .delete {
          width: 60px; }
          #mypage .send__inner--list li .delete a {
            padding: 3px 0; }
            #mypage .send__inner--list li .delete a:hover {
              background: #eb6100; }
      #mypage .send__inner--form dl {
        border-bottom: none;
        padding: 0 0 8%; }
        #mypage .send__inner--form dl.fst {
          border-top: none; }
        #mypage .send__inner--form dl dt {
          background: #f3f3f3;
          width: 100%;
          margin: 0 0 3%;
          padding: 3% 3%; }
        #mypage .send__inner--form dl dd {
          width: 100%; }
          #mypage .send__inner--form dl dd input[type=text] {
            width: 94%;
            padding: 3% 3%;
            font-size: 14px; }
          #mypage .send__inner--form dl dd textarea {
            width: 94%;
            height: 130px;
            padding: 3% 3%;
            font-size: 14px; }
          #mypage .send__inner--form dl dd input[type=file] {
            margin-top: 0; }
          #mypage .send__inner--form dl dd .txt01 {
            margin-bottom: 4%; }
          #mypage .send__inner--form dl dd .txt02 {
            margin-bottom: 3%;
            padding-left: 3%; }
          #mypage .send__inner--form dl dd .title {
            margin-bottom: 3%;
            padding: 2% 3%; }
          #mypage .send__inner--form dl dd ul.check {
            margin-bottom: 6%; }
            #mypage .send__inner--form dl dd ul.check li {
              margin-bottom: 3%;
              padding-left: 3%; }
              #mypage .send__inner--form dl dd ul.check li input[type=checkbox] + span::after,
              #mypage .send__inner--form dl dd ul.check li input[type=checkbox] + span::before {
                top: 0; }
          #mypage .send__inner--form dl dd .caution01 {
            margin-top: 5%;
            font-size: 12px; }
      #mypage .send__inner--form .btn_submit {
        width: 65%;
        margin: 6% auto 0; }
        #mypage .send__inner--form .btn_submit .button {
          padding: 5% 0;
          font-size: 16px; }
          #mypage .send__inner--form .btn_submit .button:hover {
            background: #006cb8; }
      #mypage .send__inner .txt {
        margin-bottom: 10%; }
      #mypage .send__inner .btn_mypage {
        width: 65%;
        margin: 0 auto 5%; }
        #mypage .send__inner .btn_mypage a {
          padding: 5% 0;
          font-size: 16px; }
          #mypage .send__inner .btn_mypage a:hover {
            background: #006cb8; }
      #mypage .send__inner .caution02 {
        font-size: 12px; } }
#mypage .change {
  max-width: 1920px;
  margin: 0 auto 120px; }
  #mypage .change__inner {
    max-width: 850px;
    margin: 0 auto;
    padding: 0 20px; }
    #mypage .change__inner .read {
      margin-bottom: 60px;
      text-align: center; }
    #mypage .change__inner dl {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center;
      width: 90%;
      margin: 0 auto 20px; }
      #mypage .change__inner dl.fst {
        margin: 0 auto 30px; }
      #mypage .change__inner dl.lst {
        margin: 0 auto 40px; }
      #mypage .change__inner dl dt {
        width: 38%; }
        #mypage .change__inner dl dt span {
          position: relative; }
        #mypage .change__inner dl dt.required span:after {
          content: "※";
          position: absolute;
          top: 0;
          right: -25px;
          color: #e60012; }
      #mypage .change__inner dl dd {
        width: 60%; }
        #mypage .change__inner dl dd input[type=text] {
          border: 1px solid #999;
          width: 94%;
          padding: 18px 3%;
          font-size: 16px; }
          #mypage .change__inner dl dd input[type=text]::placeholder {
            color: #999; }
    #mypage .change__inner .btn_submit {
      width: 300px;
      margin: 70px auto 0; }
      #mypage .change__inner .btn_submit .button {
        display: block;
        border: none;
        box-shadow: 7px 7px 0px 0 #cccccc;
        background: #006cb8;
        width: 100%;
        padding: 15px 0;
        text-align: center;
        color: #fff;
        font-size: 20px;
        font-weight: bold;
        letter-spacing: 0.1em;
        cursor: pointer;
        -moz-transition: .5s;
        -webkit-transition: .5s;
        -o-transition: .5s;
        -ms-transition: .5s;
        transition: .5s; }
        #mypage .change__inner .btn_submit .button:hover {
          background: #268bd2;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }

@media (max-width: 640px) {
  #mypage .change {
    margin: 0 auto 15%; }
    #mypage .change__inner {
      max-width: 90%;
      padding: 0; }
      #mypage .change__inner .read {
        margin-bottom: 10%; }
      #mypage .change__inner dl {
        width: 100%;
        margin: 0 auto 4%; }
        #mypage .change__inner dl.fst {
          margin: 0 auto 6%; }
        #mypage .change__inner dl.lst {
          margin: 0 auto 8%; }
        #mypage .change__inner dl dt {
          width: 100%;
          margin-bottom: 2%; }
        #mypage .change__inner dl dd {
          width: 100%; }
          #mypage .change__inner dl dd input[type=text] {
            padding: 3% 3%;
            font-size: 14px; }
      #mypage .change__inner .btn_submit {
        width: 70%;
        margin: 8% auto 0; }
        #mypage .change__inner .btn_submit .button {
          padding: 6% 0;
          font-size: 16px; }
          #mypage .change__inner .btn_submit .button:hover {
            background: #006cb8; } }
/* *******************************************
     プライバシーポリシー
******************************************* */
#privacy .privacy {
  max-width: 1920px;
  margin: 0 auto 120px; }
  #privacy .privacy__inner {
    max-width: 850px;
    margin: 0 auto;
    padding: 0 20px; }
    #privacy .privacy__inner .read {
      margin-bottom: 50px;
      line-height: 2.0; }
    #privacy .privacy__inner dl dt {
      border-bottom: 1px solid #aaa;
      margin-bottom: 10px;
      padding-bottom: 8px;
      font-weight: bold; }
    #privacy .privacy__inner dl dd {
      margin-bottom: 50px;
      line-height: 2.0; }
      #privacy .privacy__inner dl dd ul {
        margin-top: 10px; }
      #privacy .privacy__inner dl dd p {
        margin-top: 15px; }
        #privacy .privacy__inner dl dd p span {
          display: inline-block;
          border: 1px solid #aaa;
          margin-bottom: 5px;
          padding: 3px 10px; }
        #privacy .privacy__inner dl dd p a {
          color: #006cb8; }

@media (max-width: 640px) {
  #privacy .privacy {
    margin: 0 auto 15%; }
    #privacy .privacy__inner {
      max-width: 90%;
      padding: 0; }
      #privacy .privacy__inner .read {
        margin-bottom: 8%; }
      #privacy .privacy__inner dl dt {
        margin-bottom: 3%;
        padding-bottom: 2%; }
      #privacy .privacy__inner dl dd {
        margin-bottom: 8%;
        line-height: 2.0; }
        #privacy .privacy__inner dl dd ul {
          margin-top: 3%; }
        #privacy .privacy__inner dl dd p {
          margin-top: 4%; }
          #privacy .privacy__inner dl dd p span {
            display: inline-block;
            border: 1px solid #aaa;
            margin-bottom: 5px;
            padding: 3px 10px; } }
/* *******************************************
     モーダル
******************************************* */
.modal-1__wrap {
  display: inline-block;
  margin-left: 20px; }
  .modal-1__wrap input {
    display: none; }

.modal-1__open-label,
.modal-1__close-label {
  color: #000; }

.modal-1__open-label:hover {
  text-decoration: none;
  cursor: pointer;
  color: #006cb8; }

.modal-1 {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  display: none; }

.modal-1__open-input:checked + label + input + .modal-1 {
  display: block;
  animation: modal-1-animation .6s; }

.modal-1__content-wrap {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
  max-width: 650px;
  background-color: #fefefe;
  z-index: 2;
  border-radius: 5px; }

.modal-1__close-label {
  display: table-cell;
  position: fixed;
  top: -15px;
  right: -2%;
  background: #777;
  border: 2px solid #fff;
  border-radius: 20px;
  width: 36px;
  height: 36px;
  line-height: 1.5;
  text-align: center;
  color: #fff;
  font-size: 1.4em;
  z-index: 99999; }

.modal-1__content {
  max-height: 50vh;
  overflow-y: auto;
  padding: 39px 45px 40px; }

.modal-1__background {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.45);
  z-index: 1; }

@keyframes modal-1-animation {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@media only screen and (max-width: 520px) {
  .modal-1__open-label {
    max-width: 90%;
    padding: 0 2.1em; }

  .modal-1__close-label {
    top: -15px;
    right: -4%;
    width: 30px;
    height: 30px; }

  .modal-1__content-wrap {
    width: 90vw; }

  .modal-1__content {
    padding: 30px 20px;
    max-width: 100%; } }

/* *******************************************
     エラー
******************************************* */
.pg_err{
  color:#ff0000;
}