@charset "UTF-8";
@media screen and (max-width: 1024px) {
  p,
  a,
  li,
  dt,
  dd,
  time,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  th,
  td,
  span {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 1400px) {
  .width1400 {
    padding: 0 15px;
  }
}
@media screen and (max-width: 1200px) {
  .width1200 {
    padding: 0 15px;
  }
}
@media screen and (max-width: 1000px) {
  .width1000 {
    padding: 0 15px;
  }
}
@media screen and (max-width: 900px) {
  .width900 {
    padding: 0 15px;
  }
}
@media screen and (max-width: 700px) {
  .width700 {
    padding: 0 15px;
  }
}
@media screen and (max-width: 1024px) {
  section {
    padding: 60px 0;
  }
}
@media screen and (max-width: 820px) {
  .col-25,
  .col-26,
  .col-27,
  .col-28,
  .col-29,
  .col-30,
  .col-31,
  .col-32,
  .col-33,
  .col-34,
  .col-35,
  .col-36,
  .col-37,
  .col-38,
  .col-39,
  .col-40,
  .col-41,
  .col-42,
  .col-43,
  .col-44,
  .col-45,
  .col-46,
  .col-47,
  .col-48,
  .col-49,
  .col-50,
  .col-51,
  .col-52,
  .col-53,
  .col-54,
  .col-55,
  .col-56,
  .col-57,
  .col-58,
  .col-59,
  .col-60,
  .col-61,
  .col-62,
  .col-63,
  .col-64,
  .col-65,
  .col-66,
  .col-67,
  .col-68,
  .col-69,
  .col-70,
  .col-71,
  .col-72,
  .col-73,
  .col-74,
  .col-75 {
    width: 100%;
    margin-bottom: 40px;
  }
  .flex-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .sp-flex-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -ms-flex-wrap: wrap-reverse;
    flex-wrap: wrap-reverse;
  }
  section {
    padding: 60px 0;
  }
  .mt10 {
    margin-top: 5px;
  }
  .mt20 {
    margin-top: 10px;
  }
  .mt30 {
    margin-top: 15px;
  }
  .mt40 {
    margin-top: 20px;
  }
  .mt50 {
    margin-top: 25px;
  }
  .mt60 {
    margin-top: 30px;
  }
  .mt70 {
    margin-top: 35px;
  }
  .mt80 {
    margin-top: 40px;
  }
  .mt90 {
    margin-top: 45px;
  }
  .mt100 {
    margin-top: 50px;
  }
  .mb10 {
    margin-bottom: 5px;
  }
  .mb20 {
    margin-bottom: 10px;
  }
  .mb30 {
    margin-bottom: 15px;
  }
  .mb40 {
    margin-bottom: 20px;
  }
  .mb50 {
    margin-bottom: 25px;
  }
  .mb60 {
    margin-bottom: 30px;
  }
  .mb70 {
    margin-bottom: 35px;
  }
  .mb80 {
    margin-bottom: 40px;
  }
  .mb90 {
    margin-bottom: 45px;
  }
  .mb100 {
    margin-bottom: 50px;
  }
  .pt0 {
    padding-top: 0;
  }
  .pt10 {
    padding-top: 5px;
  }
  .pt20 {
    padding-top: 10px;
  }
  .pt30 {
    padding-top: 15px;
  }
  .pt40 {
    padding-top: 20px;
  }
  .pt50 {
    padding-top: 25px;
  }
  .pt60 {
    padding-top: 30px;
  }
  .pt70 {
    padding-top: 35px;
  }
  .pt80 {
    padding-top: 40px;
  }
  .pt90 {
    padding-top: 45px;
  }
  .pt100 {
    padding-top: 50px;
  }
  .pb0 {
    padding-bottom: 0;
  }
  .pb10 {
    padding-bottom: 5px;
  }
  .pb20 {
    padding-bottom: 10px;
  }
  .pb30 {
    padding-bottom: 15px;
  }
  .pb40 {
    padding-bottom: 20px;
  }
  .pb50 {
    padding-bottom: 25px;
  }
  .pb60 {
    padding-bottom: 30px;
  }
  .pb70 {
    padding-bottom: 35px;
  }
  .pb80 {
    padding-bottom: 40px;
  }
  .pb90 {
    padding-bottom: 45px;
  }
  .pb100 {
    padding-bottom: 50px;
  }
}

@media screen and (max-width: 600px) {
  p,
  a,
  li,
  dt,
  dd,
  th,
  td,
  span {
    font-size: 1.4rem;
  }
  .title01 {
    font-size: 2.2rem;
  }
  .title01::before {
    width: 20px;
    height: 3px;
  }
  .btn-arrow {
    top: 17px;
  }
}
@media screen and (max-width: 600px) {
  .link-over:hover {
    background-color: rgba(255, 255, 255, 0);
  }
  .o-hover img:hover {
    opacity: 1;
  }
}

@media screen and (max-width: 1024px) {
  #page-top {
    position: fixed;
    right: 15px;
    bottom: 62px;
    z-index: 2;
  }
  #page-top img {
    max-height: 40px;
    width: auto;
  }
}
@media screen and (max-width: 1024px) {
  #breadcrumbs {
    padding-right: 0;
    overflow-x: auto;
    word-break: keep-all;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
  #breadcrumbs ul {
    display: block;
    padding-right: 15px;
  }
}
@media screen and (max-width: 600px) {
  #breadcrumbs {
    margin-bottom: 20px;
    padding-right: 0;
  }
  #breadcrumbs ul li a,
  #breadcrumbs ul li {
    font-size: 1.2rem;
  }
  #breadcrumbs ul li {
    padding-left: 3px;
  }
  #breadcrumbs ul li:before {
    font-size: 1.2rem;
    padding-right: 3px;
  }
}

@media screen and (max-width: 1024px) {
  .tab-panel-b .tab-group {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0;
  }
  .tab-panel-b .tab {
    width: 30%;
    font-size: 1.4rem;
  }
  .tab-panel-b .panel-inner {
    padding: 20px 20px 5px;
    border-radius: 20px;
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 1024px) {
  .sub-header {
    height: 35vw;
  }
  .sub-header-txt {
    font-size: 2rem;
  }
}
@media screen and (max-width: 450px) {
  .sub-header {
    height: 50vw;
  }
  .sub-header-txt {
    font-size: 1.8rem;
  }
}

@media screen and (max-width: 820px) {
  .tab-panel-a .tab-group {
    margin-bottom: 20px;
  }
  .tab-panel-a .tab {
    width: 47%;
    margin-bottom: 15px;
  }
}



@media screen and (max-width: 450px) {
  input[type="submit"],
  input[type="button"] {
    width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  .privacy-head {
    font-size: 1.8rem;
  }
  .privacy-head span {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 820px) {
  .privacy-head {
    font-size: 1.8rem;
  }
  .privacy-head span {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 600px) {
  .privacy-head {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 1024px) {
  .search-txt01 {
    font-size: 1.8rem;
  }
  .error-url,
  .error-url span {
    font-size: 1.4rem;
  }
}

