@charset "utf-8";
/* CSS Document */

body{
    font-size: 1.6rem;
}

a{
    color: #26C5FF;
}

a:hover{
    color: #35FF7E;
    transition: 0.5s;
}


main > section:nth-child(2n+1) {
    background: #ffffff;
}

main > section:nth-child(2n) {
    background: #eee;
}

header{
    padding: 60px 60px;
    background-color: #c00;
}

header h1{
    text-align: center;
    font-size: 36px;
    color: #fff;
    font-weight: 900;
}

h2 {
  padding: 1rem 2rem;
  color: #fff;
  border-radius: 10px;
  background-image: -webkit-gradient(linear, left top, right top, from(#f83600), to(#f9d423));
  background-image: -webkit-linear-gradient(left, #f83600 0%, #f9d423 100%);
  background-image: linear-gradient(to right, #f83600 0%, #f9d423 100%);
    display: inline-block;
    margin-bottom: 28px;
    font-size: 36px;
}

.h2 {
  padding: 1rem 4rem;
  color: #fff;
  border-radius: 2px;
  background-image: -webkit-gradient(linear, left top, right top, from(#e6a100), to(#b59500));
  background-image: -webkit-linear-gradient(left, #e6a100 0%, #b59500 100%);
  background-image: linear-gradient(to right, #e6a100 0%, #b59500 100%);
  display: inline-block;
  margin-bottom: 28px;
  font-size: 24px;
}

h3 {
  position: relative;
  padding: 1rem .5rem;
    font-size: 32px;
    margin-bottom: 30px;
}

h3:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 6px;
  content: '';
  border-radius: 3px;
  background-image: -webkit-gradient(linear, right top, left top, from(#2af598), to(#009efd));
  background-image: -webkit-linear-gradient(right, #2af598 0%, #009efd 100%);
  background-image: linear-gradient(to left, #2af598 0%, #009efd 100%);
}

h4 {
  position: relative;
  overflow: hidden;
  padding: 1.5rem 2rem 1.5rem 130px;
  border: 2px solid #000;
    font-size: 26px;
    margin-bottom: 20px;
}

h4:before {
  position: absolute;
  top: -150%;
  left: -100px;
  width: 200px;
  height: 300%;
  content: '';
  -webkit-transform: rotate(25deg);
  transform: rotate(25deg);
  background: #000;
}

h4 span {
  font-size: 40px;
  font-size: 4rem;
  position: absolute;
  z-index: 1;
  top: 0px;
  left: 0;
  display: block;
  padding-top: 3px;
  padding-left: 16px;
  color: #fff;
}

.content-wrap {
  padding: 80px 0px;
    font-size: 18px;
}

.pg-index{
    padding: 10px;
}

.pg-index ul li p{
    background-color: #AA0002;
    color: #fff;
    padding: 10px;
    font-size: 22px;
    margin-bottom: 10px;
}


.pg-index ul li p a{
    color: inherit;
}

.pg-index ul li ul li{
    padding-left: 20px;
    font-size: 16px;
    position: relative;
}

.pg-index ul li ul li::after,
.pg-index ul li ul li::before{
    content: '';
  position: absolute;
}

.pg-index ul li ul li::after{
    left: -0.2em;
  top: 3px;
  width: 20px;
  height: 20px;
  background-color: #3ac8ff;
  border-radius: 50%;
}
.pg-index ul li ul li::before{
    z-index: 2;
  left: 3px;
  top: 11px;
  width: 4px;
  height: 4px;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

a.btn{
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
    margin-bottom: 20px;
}

a.btn-radius-solid {
  border: 1px solid #ccc;
  background: #f1e767;
  background: -webkit-gradient(linear, left top, left bottom, from(#fdfbfb), to(#ebedee));
  background: -webkit-linear-gradient(top, #fdfbfb 0%, #ebedee 100%);
  background: linear-gradient(to bottom, #fdfbfb 0%, #ebedee 100%);
  -webkit-box-shadow: inset 1px 1px 1px #fff;
  box-shadow: inset 1px 1px 1px #fff;
}

a.btn-radius-solid:hover {
  background: -webkit-gradient(linear, left bottom, left top, from(#fdfbfb), to(#ebedee));
  background: -webkit-linear-gradient(bottom, #fdfbfb 0%, #ebedee 100%);
  background: linear-gradient(to top, #fdfbfb 0%, #ebedee 100%);
}

.yougo-wrap{
    background-color: #FEFFF2;
    padding: 20px;
    border:2px dashed #ccc;
    border-radius: 4px;
}

.yougo-wrap p{
    margin-bottom: 14px;
}

.yougo-h1{
    font-size: 18px;
    margin-bottom: 10px;
    font-weight: 900;
}

.acc{
    overflow: auto;
}

.acc::-webkit-scrollbar{
 height: 5px;
}

.acc::-webkit-scrollbar-track{
 background: #F1F1F1;
}

.acc::-webkit-scrollbar-thumb {
 background: #BCBCBC;
}

.acc > table {
  border-collapse: collapse;
  margin: 0 auto;
  padding: 0;
  width: 1200px;
    box-shadow: 0 0 15px -6px #00000073;
}
.acc > table tr {
  background-color: #fff;
}
.acc >table tbody tr:hover{
  background-color: #fffae9;
}
.acc > table th,
.acc > table td {
  padding: .35em 1em;
  border-bottom: 1px solid #eee;

}
.acc > table thead th {
    font-size: .85em;
    padding: 1em;
}
.acc > table thead tr{
  background-color: #FFC107;
  color:#fff;
}
.acc > table tbody th {
  text-align: left;
  font-size: 1.6rem;
}

.konpou_img{
  text-align: right;
  color: #000;
  font-weight: bold;
}

.movie {
    width: 80%;
    aspect-ratio: 16/9;
}

.sitemap ul li a{
    color: inherit;
}

.col-3 {
    padding: 0 5px;
}

.col-3_2{
    width: 25%;
    padding: 5px;
}

.col-9 {
    padding: 0 5px;
}

.point{
    position: relative;
    border: 1px solid #333333;
    background-color: #fffecf;
    padding: 8px;
    border: 3px solid #000;
    font-size: 16px;
}

.point:before {
  font-size: 15px;
  font-size: 1.5rem;
  position: absolute;
  top: -24px;
  left: -3px;
  height: 24px;
  padding: 0 1em;
  content: 'ここがポイント！';
  color: #fff;
  background: #000;
}

.tooltip {
    }
    .tooltip span[data-descr] {
      position: relative;
      text-decoration: none;
      color: #C10000;
      cursor: help;
    }
    .tooltip span[data-descr]:focus::after {
      content: attr(data-descr);
      position: absolute;
      left: 0;
      top: 24px;
      min-width :260px;
      font-size:12px;
      z-index:1;
      background-color:#FFF7C8;
      padding: 7px;
        color: #050505;
    }

@media screen and (max-width: 1300px) {
    .content-wrap{
        padding: 80px 20px;
    }
}
@media screen and (max-width: 949px) {
  .movie {
    width: 90%;
    }
}

@media screen and (max-width: 768px) {
    body {
      font-size: 1.4rem;
    }
    header {
      padding: 30px 20px;
    }
    header h1 {
      font-size: 18px;
    }
    .content-wrap {
      padding: 40px 12px;
    }
    .top-cap{
        font-size: 14px;
    }
    h2 {
      padding: 1rem 2rem;
      margin-bottom: 14px;
      font-size: 18px;
    }
    h3 {
      font-size: 16px;
    }
    h4 span {
      font-size: 2rem;
    }
    h4 {
        padding: 1.2rem 1.2rem 1.2rem 74px;
      font-size: 16px;
    }
    h4::before {
     width: 160px;
    }
    .col-3 {
      width: 100%;
    }

    .col-9 {
      width: 100%;
    }
    .mb-30 {
      margin-bottom: 18px;
    }
    a.btn {
      font-size: 1.2rem;
    }
}

@media screen and (max-width: 600px){
    table{width: 100%;}
    .content-wrap {
      padding: 20px 12px;
        font-size: 16px;
    }
    .movie {
        width: 100%;
    }
}