@charset "utf-8";/* --------------------------------------------------- *//* XAG P100PRO *//* --------------------------------------------------- */.inblock {  margin-left: auto;  margin-right: auto;  padding-left: 5%;  padding-right: 5%;  width: 90%;}h3.cap {  font-size: 2.1rem;  font-weight: 500;  text-align: center;}h3.cap + h2 {  font-size: 3.6rem;  line-height: 1.5em;  text-align: center;}h3.cap + h2 span { position: relative; }h3.cap + h2 span::before {  content: '';  position: absolute;  bottom: 0.05em;  left: 0;  right: 0;  display: block;  width: 100%;  height: 0.4em;  background-color: #fff000;}h3.cap + h2 em {  position: relative;  z-index: 1;  color: #ca1326;  font-weight: 600;}#p100pro img { width: 100%; height: auto; }@media screen and (max-width: 640px) {  .inblock {    padding-left: 4%;    padding-right: 4%;  }  h3.cap { font-size: 1.8rem; }  h3.cap + h2 {    font-size: 2.8rem;    line-height: 1.5em;    text-align: center;  }}.shading { background-color: #eaeaea; }.yt-short {  position: relative;  margin: 0 auto;  width: 90%;  max-width: 360px;}.yt-short::before {  content: '';  display: block;  width: 100%;  padding-top: 178%;}.yt-short iframe {  position: absolute;  top: 0;  bottom: 0;  left: 0;  right: 0;  width: 100%;  height: 100%;}/* --------------------------------------------------- *//* Title *//* --------------------------------------------------- */#lptitle .mv {  position: relative;  background-image: url('../image/xagp100pro/visual.webp');  background-size: cover;  background-position: 100% 50%;}#lptitle .mv::before {  content: '';  display: block;  width: 100%;  padding-top: 56.25%;}#lptitle .mv h1 {  position: absolute;  top: 8%;  left: 10%;  width: 26.66%;}@media screen and (max-width: 640px) {  #lptitle .mv::before { padding-top: 68.75%; }  #lptitle .mv h1 {    position: absolute;    top: 7%;    left: 6%;    width: 31.25%;  }}/* --------------------------------------------------- *//* intro *//* --------------------------------------------------- */#intro .carry {  margin-left: auto;  margin-right: auto;  width: 100%;  max-width: 800px;}#intro .carry figure.ph {  position: relative;  z-index: 2;}#intro .carry figure.balls {  position: relative;  z-index: 1;  margin: -8% auto 0;  width: 86%;}@media screen and (max-width: 640px) {  #intro .carry figure.balls { width: 92%; }}/* --------------------------------------------------- *//* type *//* --------------------------------------------------- */#type .inblock {  max-width: 960px;}#type .transform {  display: flex;  flex-wrap: wrap;  justify-content: center;  gap: 0 6%;}#type .transform div:first-child {  width: 86%;}#type .transform div:nth-child(2) {  margin: 1.0em 0;  width: 60.00%;}#type .transform div:nth-child(3),#type .transform div:last-child {  width: 47%;}#type .transform p {  margin-top: 0.5em;  font-size: 2.4rem;  font-weight: 500;  text-align: center;}#type .transform h4 {  color: #ca1326;  font-size: 3.2rem;  font-weight: 600;  line-height: 1.1;  text-align: center;}#type .transform h4 span {  display: block;  font-size: 110%;}#type .transform h4 span em { font-size: 160%; }#type .transform h4 span em small { font-size: 70%;  font-weight: inherit; }@media screen and (max-width: 767px) {  #type .transform p {    font-size: 3.5vw;  }  #type .transform h4 {    color: #ca1326;    font-size: 4.5vw;    font-weight: 600;    line-height: 1.1;    text-align: center;  }  #type .transform h4 span {    display: block;    font-size: 110%;  }  #type .transform h4 span em { font-size: 160%; }  #type .transform h4 span em small { font-size: 70%;  font-weight: inherit; }}#type  .tank {  display: flex;  justify-content: space-between;  margin-left: auto;  margin-right: auto;  width: 90%;  max-width: 960px;}#type  .tank  > div { width: 47%; }#type  .tank h5 {  font-size: 1.8rem;  font-weight: 500;  line-height: 1.2;  text-align: center;}#type  .tank h4 {  color: #ca1326;  font-size: 2.4rem;  font-weight: 600;  line-height: 1.5;  text-align: center;}#type  .tank figure {  margin: 0.5em auto 1.0em;  width: 100%;  max-width: 280px;}#type  .tank dl {  display: table;  width: 100%;  border-top: 1px solid #ccc;  font-size: 1.6rem;}#type  .tank dl dt {  padding-top: 0.5em;  width: 128px;  float: left;}#type  .tank dl dd {  padding: 0.5em 0 0.5em 128px;  border-bottom: 1px solid #ccc;}#type  .tank dl dt p { font-weight: 500; }#type  .tank dl p.note {  padding-left: 1.0em;  text-indent: -1.0em;  font-size: 1.2rem;}@media screen and (max-width: 767px) {  #type  .tank { flex-direction: column; gap: 3.0em 0; max-width: 480px; }  #type  .tank  > div { width: 100%; }}@media screen and (max-width: 420px) {  #type  .tank dl p.note { font-size: 1.0rem; }}/* --------------------------------------------------- *//* option *//* --------------------------------------------------- */#option .inblock { max-width: 960px; }#option .features {  display: flex;  flex-wrap: wrap;  gap: 4.0em 0;  margin-left: auto;  margin-right: auto;}#option .features > div {  width: 50%;  box-sizing: border-box;}#option .features > div:nth-child(odd) {  padding-right: 4%;  border-right: 1px solid #ccc;}#option .features > div:nth-child(even) {  padding-left: 4%;}#option .features h4 {  color: #ca1326;  font-size: 2.4rem;  font-weight: 600;  line-height: 1.5;  text-align: center;}#option .features figure {  margin: 0.75em auto;  max-width: 480px;}#option .features p { font-size: 1.6rem; }@media screen and (max-width: 640px) {  #option .features {    flex-direction: column;    gap: 0;  }  #option .features > div {    width: 100%;    box-sizing: border-box;  }  #option .features > div:nth-child(odd) {    padding-right: 0;    padding: 8% 0;    border-right: 0;    border-bottom: 1px solid #ccc;  }  #option .features > div:nth-child(even) {    padding-left: 0;    padding: 8% 0;    border-bottom: 1px solid #ccc;  }  #option .features > div:first-child { padding:  0  0 8%; }   #option .features > div:last-child { padding:  8% 0 0; border-bottom: 0;}   #option .features h4 { font-size: 2.1rem; }}/* --------------------------------------------------- *//* remarks *//* --------------------------------------------------- */#remarks .inblock { max-width: 800px; }#remarks .precautions { padding: 3.0em; }#remarks .precautions h3 {  margin-bottom: 1.0em;  font-size: 1.6rem;  font-weight: 600;  text-align: center;}#remarks .precautions p {  padding-left: 1.0em;  text-indent: -1.0em;}@media screen and (max-width: 767px) {  #remarks .precautions { padding: 6% 5%; }}#remarks .info {  display: flex;  justify-content: space-between;  color: #fff;}#remarks .info > div {  box-sizing: border-box;  padding: 2% 4% 3%;  width: 47.5%;  background-color: #187200;  border-radius: 8px;}#remarks .info h3 {  margin-bottom: 0.3em;  font-size: 1.8rem;  font-weight: 500;  text-align: center;}#remarks .info h4 {  font-size: 2.0rem;  font-weight: 500;  line-height: 1.5;  text-align: center;}#remarks .info h4::after {  content: attr(data-time)'';  display: block;  font-size: 1.4rem;}#remarks .info p {  font-size: 2.8rem;  font-weight: 600;  text-align: center;}@media screen and (max-width: 800px) {  #remarks .info h3 { font-size: 2.2vw; }  #remarks .info h4 { font-size: 2.5vw; }  #remarks .info h4::after { font-size: 66.66%; }  #remarks .info p { font-size: 3.6vw; }}@media screen and (max-width: 767px) {  #remarks .info > div {    padding: 2% 3% 3%;    width: 48.5%;  }}@media screen and (max-width: 540px) {  #remarks .info { flex-direction: column; gap: 1.0em 0; }  #remarks .info > div {    padding: 3% 5% 5%;    width: 100%;  }  #remarks .info h3 { font-size: 4.0vw; }  #remarks .info h4 { font-size: 5.0vw; }  #remarks .info p { font-size: 7.0vw; }}/* --------------------------------------------------- *//* linker *//* --------------------------------------------------- */#linker .inblock  { max-width: 360px; }#linker h3 {  font-size: 2.1rem;  font-weight: 500;  text-align: center;}#linker  .btn {  margin-top: 1.0em;}#linker  .btn a {  position: relative;  display: block;  padding: 4% 18% 3% 5%;  background-color: #b21e23;  border-radius: 8px;  line-height: 1.0;}#linker  .btn a::after {  content: '';  position: absolute;  top: 50%;  right: 7%;  display: block;  width: 8px;  height: 8px;  border-top: 1px solid #fff;  border-right: 1px solid #fff;  transform: rotate(45deg) translateY(-50%);}@media screen and (max-width: 420px) {#linker  .btn a {  padding: 4% 12% 3% 5%;}}