/* top */
.top{
  margin-bottom: 6rem;
}
.top .col1{
  width: 31.2rem;
}
.top .col2{
  width: 65.4rem;
}
.top .box{
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 100%;
  border: 1rem solid #e6f6ff;
}
.top .box img{
  width: 33rem;
}
.top .box .update{
  position: absolute;
  top: 1rem;
  left: 1rem;
  font-size: 1.2rem;
}
@media (max-width: 767px){
  .top .col1{
    width: calc(50% - 1.5rem);
  }
  .top .box{
    padding: 8rem 0;
  }
  .top .box img{
    width: min(100%, 50rem);
  }
  .top .box .update{
    font-size: 2.4rem;
  }
}

/* worries */
.worries{
  margin-bottom: 6rem;
  font-size: 1.6rem;
  line-height: 1.8;
  text-align: center;
}
.worries .txt{
  padding-bottom: 6rem;
}
.worries .txt span{
  background: #000;
  color: #fff;
}
.worries li{
  background: #c2e9ff;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 31.2rem;
  padding: 6.6rem 0;
}
.worries li::before,
.worries li::after{
  content: '';
  background: url(../img/double_quarto.svg) no-repeat center / cover;
  position: absolute;
  width: 2.7rem;
  height: 1.9rem;
}
.worries li::before{
  top: 2rem;
  left: 2rem;
}
.worries li::after{
  bottom: 2rem;
  right: 2rem;
  transform: rotate(180deg);
}
@media (max-width: 767px){
  .worries{
    font-size: 3.2rem;
  }
}

/* introduction */
.intro{
  margin-bottom: 9rem;
}
.intro .message{
  position: relative;
  padding-bottom: 4rem;
  font-size: 1.4rem;
  line-height: 2.4;
  text-align: center;
}
.intro .message img{
  position: absolute;
}
.intro .message img.img01{
  bottom: 2rem;
  left: 8rem;
  width: 13rem;
}
.intro .message img.img02{
  bottom: -2rem;
  right: 8rem;
  width: 12.3rem;
}
.intro .intro_list .intro_ttl{
  padding-bottom: 4rem;
  font-size: 2rem;
  text-align: center;
}
.intro .intro_list .intro_ttl strong{
  color: #00b2ff;
  font-size: 6rem;
}
.intro .intro_list .row{
  padding-bottom: 4rem;
}
.intro .intro_list li{
  position: relative;
  width: 22.6rem;
}
.intro .intro_list li p{
  display: inline;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 1.6rem;
  text-align: center;
  white-space: nowrap;
}
.intro .intro_list li p span{
  background: #000;
  color: #fff;
  display: inline-block;
  margin-bottom: .2rem;
  padding: .2rem .4rem;
}
@media (max-width: 767px){
  .intro .message{
    font-size: 2.8rem;
  }
  .intro .intro_list .intro_ttl{
    font-size: 4rem;
  }
  .intro .intro_list .intro_ttl strong{
    font-size: 12rem;
  }
  .intro .intro_list li p{
    font-size: 3.2rem;
  }
  .intro .intro_list li{
    width: calc(50% - 1.5rem);
  }
  .intro .message img.img01{
    display: block;
    position: initial;
    margin: 3rem auto 0;
  }
}

/* page_list */
.page_list{
  margin-bottom: 9rem;
}
.page_list .box{
  background: #fff;
  width: 48.3rem;
  padding: 1rem;
  font-size: 1.4rem;
  line-height: 1.8;
  border: 1rem solid #e6f6ff;
}
.page_list .box .ttl{
  font-weight: bold;
}
.page_list .img{
  width: 48.3rem;
}
@media (max-width: 767px){
  .page_list .row{
    flex-direction: column-reverse;
  }
  .page_list .box{
    font-size: 2.8rem;
  }
}

/* list */
.list{
  margin-bottom: 8rem;
}
.list .h1{
  background: #fff;
  padding: 2rem 3rem;
  font-size: 2.4rem;
  border: 1rem solid #e6f6ff;
}
.list .inner{
  padding: 6rem 0;
}
.list .inner > * + *{
  margin-top: 4rem;
}
.list dt{
  margin-bottom: 4rem;
  font-size: 1.6rem;
  text-align: center;
  text-decoration: underline;
  line-height: 2;
}
.list dd{
  font-size: 1.4rem;
  line-height: 2;
}
.list .table tbody,
.list .table td{
  border-color: #c2e9ff;
}
.list .table th{
  background: #c2e9ff;
}
@media (max-width: 767px){
  .list .h1{
    padding-left: 5rem;
    font-size: 3.6rem;
    line-height: 1.4;
    text-indent: -3rem;
  }
  .list dt{
    font-size: 3.2rem;
  }
  .list dd{
    font-size: 2.8rem;
  }
  .list .outline .outline_ttl{
    font-size: 4rem;
  }
  .list .outline tbody{
    font-size: 2.8rem;
  }
}

/* operation */
.operations{
  background: #fff;
  margin-bottom: 6rem;
  padding: 4rem;
}
.operations .h1{
  font-size: 2.4rem;
  padding-bottom: 9rem;
}
.operations .operation + .operation{
  margin-top: 6rem;
}
.operations .h2{
  padding-bottom: 2rem;
  font-size: 2rem;
}
.operations .table tbody,
.operations .table td{
  border-color: #e7e7e7;
}
.operations .table th{
  background: #e7e7e7;
}
.operations .scroll{
  max-height: 27rem;
  overflow: scroll;
}
.operations .scroll dl{
  line-height: 1.8;
}
.operations .scroll dl + dl{
  padding-top: 2rem;
}
.operations .scroll dt{
  font-size: 1.4rem;
  font-weight: bold;
}
.operations .scroll dd{
  font-size: 1.2rem;
}
@media (max-width: 767px){
  .operations .h1{
    font-size: 4.8rem;
  }
  .operations .h2{
    font-size: 4rem;
  }
  .operations .scroll dt{
    font-size: 2.8rem;
  }
  .operations .scroll dd{
    font-size: 2.4rem;
  }
}
