html {
  scroll-behavior: smooth;
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  font-size: 4px;
  box-sizing: border-box;
  line-height: 1.5;
}

body {
background-image: url("../images_g/bg.png");
    background-size: cover;
/**    background-repeat: no-repeat;**/
    background-position: center center;
    image-orientation: from-image;
    max-width: 500px;
    margin: auto;
/**    text-align:center;**/
}

.wrap {
  max-width: 920px;
  margin: 0 auto;
  padding: 0;
  width: calc(100% - 2.4rem);
}

.header {
  overflow: hidden;
  position: relative;
/**  background-color: #333333;**/
  margin: 0px -5px 0px -5px;
  color: white;
  font-size: 2.4rem;
  letter-spacing: 0.3rem;
  font-weight: 700;
  line-height: 1.5;
  padding: 0 2rem;

  display: flex;
  align-items: center;
  justify-content: space-between;
}

.header .header-title {
  display: flex;
  align-items: center;
  gap: 2rem;
}

.header .header-title .logo {
  min-width: 7rem;
  min-height: 7rem;
  width: 35px;
  margin: 0px -5px 0px 0px;
  padding: 0px 0px 3px 0px;
}

header .header-title .title {
  font-size: 14px;
}

.header .total-score .score {
  color: red;
  font-size: 3rem;
}

.header .total-score .score-star {
  color: #ffa64d;
  letter-spacing: 1.5rem;
}

.content {
  padding: 0 5rem;
}

.section-first {
  margin: 0px;
  padding: 1rem;
  font-size: 4rem;
}

.section-first .intro-title {
  display: grid;
  grid-template-columns: auto auto auto auto;
  gap: 1rem;
}

.section-first .intro-title .intro-tag {
  color: white;
  background-color: #55a9ff;
  font-size: 12px;
  font-weight: 700;
  padding: 0rem;
  text-align: center;
  border-radius: 0.5rem;
}

.section-first .intro-banner {
  margin: 2rem 0;
}

.section-first .intro-banner img {
  width: 100%;
  object-fit: cover;
  border-radius: 15px 15px 0px 0px;
}

.section-first .intro {
  font-weight: 700;
  text-align: left;
  /* color: white; */
}

.section-two {
    font-size: 2rem;
    color: white;
    background-color: #333333;
    padding: 5px 5px 5px 5px;
    border-radius: 15px;
    margin: 10px 5px 10px 5px;
}

.section-two .point {
  color: white;
  font-size: 4rem;
  font-weight: 900;
  text-align: center;
}

.section-two .point-list {
  background-color: white;
  padding: 3rem;
  margin: -23px 4px -15px 4px;
}

.section-two ul {
  list-style-position: inside;
}

.section-two ul li {
  color: #331100;
  font-weight: 700;
  padding: 0;
  margin: 0;
  vertical-align: middle;
  padding-bottom: 3rem;
/**  border-bottom: 0.3rem solid #f2f2f2;**/
  border-bottom-width: 100%;
  font-size: 3rem;
}

.section-two ul li::marker {
  padding: 0;
  font-size: 4rem;
}

.section-three {
  margin-top: 3rem;
  font-size: 3rem;
  font-weight: 700;
}

.section-three .review-title {
  text-align: left;
  font-weight: 900;
  padding-left: 3rem;
  font-size: 4rem;
}

.section-three .review-info {
  padding: 3rem;
  border-radius: 0.5rem;
  border: 0.5rem solid #f2f2f2;
}

.section-three .person-image {
  float: left;
}

.section-four {
  margin-top: 3rem;
  font-size: 3rem;
  color: black;
  text-align: center;
  letter-spacing: 0.5rem;
  font-weight: 900;
  padding-bottom: 0rem;
}

.section-four .button {
  text-decoration: none;
  color: white;
  background-color: #fff;
  margin: 15px 0px 5px 4px;
  padding: 0px 0px 20px 0px;
  font-size: 4rem;
  font-weight: 900;
  max-width: 97.5%;
  width: 100%;
  border-radius: 0px 0px 15px 15px;
}

.section-four .button .link-button {
  color: white;
  text-decoration: none;
  font-size: 4rem;
}

.section-four .intro-two {
  color: red;
}

.info_box {
    font-size: 12px;
    line-height: 1.5;
    margin: 0px 0px 0px 0px;
    font-weight: bold;
    text-align: center;
}


.header-img{width:100%;margin-bottom:5px;}

.video{width:100%;margin-bottom:5px;}

.btn{
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  line-height: 70px;
  letter-spacing: 3px;
  width: 250px;
  height: 70px;
  background: #02b100;
  margin: auto;
  cursor: pointer;
  border-radius: 15px;
  box-shadow: 5px 5px 0 0 #2f5d08
}

/*アニメーション*/
.animation{
  animation: dokundokun 1300ms ease infinite;
}

@keyframes dokundokun {
  0%  { transform: scale(1); }
  15% { transform: scale(1.2); }
  30% { transform: scale(1); }
  45% { transform: scale(1.2); }
  70% { transform: scale(1); }
}

ul{
  padding-left:0;
}

li{
  list-style:none;
}

.box28 {
    position: relative;
    margin: 0px 0px 0px 0px;
    padding: 25px 10px 7px;
    border: solid 2px #333333;
    border-radius: 15px;
}
.box28 .box-title {
    position: absolute;
    display: inline-block;
    top: -2px;
    left: -2px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 14px;
    background: #333333;
    color: #ffffff;
    font-weight: bold;
    border-radius: 15px 0px 15px 0px;
}
.box28 p {
    margin: 0; 
    padding: 0;
}



.rank-box{
  position: relative;
}
.rank-center {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 0px 0px 0px 3px;
  color: #000;
  font-size: 14px;
  transform: translate(-50%, -50%);
}