@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
/* 決まりごと
---------------------------------------------------------- */
.pc {
  display: block !important;
}
.sp {
  display: none !important;
}
/* html
---------------------------------------------------------- */
html {
  scroll-behavior: smooth;
}
a:hover img {
  opacity: 0.7;
}
body {
  overflow-x: hidden;
  margin: 0;
}
/* コンテンツ
---------------------------------------------------------- */
/* 背景 */
.bg_plarailair_ana {
  position: relative;
  width: 100vw;
  min-height: 100vh;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  overflow: hidden;
  background: linear-gradient(to bottom, #4db8ff 0%, #89d2ff 30%, #c5eaff 65%, #e5f5ff 100%);
}
/* ベース */
.bg_white_radius {
  position: relative;
  z-index: 1;
  width: 960px;
  margin: 0 auto 3em;
  padding: 0 0 1em;
  border-radius: 30px;
  background-color: #fff;
}
/* コンテンツ枠 */
.New_Table900 {
  position: relative;
  z-index: 2;
  width: 960px;
  margin: 0 auto 2em;
}
.New_Table900_nomar {
  position: relative;
  z-index: 2;
  width: 960px;
  margin: 0 auto;
}
/* ベース */
.New_Table860 {
  position: relative;
  z-index: 2;
  width: 860px;
  margin: 0 auto 2em;
}
.New_Table860_nomar {
  position: relative;
  z-index: 2;
  width: 860px;
  margin: 0 auto;
}
/* 取説ボタン
---------------------------------------------------------- */
.btn_torisetsu {
  width: 70%;
  height: auto;
  margin: 4em auto 5em;
}
/* ポイントボタン
---------------------------------------------------------- */
.imgmap_area {
  position: relative;
}
.imgmap_area > img {
  display: block;
  width: 100%;
  height: auto;
}
.number_btn {
  position: absolute;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  box-sizing: border-box;
  border-radius: 50%;
  border: 5px solid #fff;
  box-shadow:
    inset 0 -5px 5px rgba(0, 0, 0, 0.25), inset 0 3px 4px rgba(255, 255, 255, 0.35), 0 2px 3px rgba(0, 0, 0, 0.25);
  color: #fff !important;
  font-family: Arial, sans-serif;
  font-size: 1.7rem;
  font-weight: 900;
  line-height: 1;
  text-decoration: none;
  transition: transform 0.2s ease;
}
.number_btn:hover {
  transform: scale(1.08);
}
.number_btn::before {
  content: "";
  position: absolute;
  inset: 3px;
  border-radius: 50%;
  box-shadow:
    inset 0 0 0 2px rgba(0, 0, 0, 0.25);
  pointer-events: none;
}
.number_btn_01 {
  top: 58%;
  left: 58%;
  background: linear-gradient(to bottom, #ff7a00, #ff4b00);
  outline: 6px solid #e95b00;
}
.number_btn_02 {
  top: 52%;
  left: 5%;
  background: linear-gradient(to bottom, #ff4b4b, #d60000);
  outline: 6px solid #b80000;
}
.number_btn_03 {
  top: 28%;
  left: 50%;
  background: linear-gradient(to bottom, #69d84f, #279b23);
  outline: 6px solid #1f7f1c;
}
.number_btn_04 {
  top: 40%;
  left: 42%;
  background: linear-gradient(to bottom, #a86bea, #6a2fb8);
  outline: 6px solid #57259a;
}
.number_btn_05 {
  top: 55%;
  left: 90%;
  background: linear-gradient(to bottom, #ffd83d, #e0a800);
  outline: 6px solid #bd8c00;
}
/* 動画
---------------------------------------------------------- */
.youtube_video {
  width: 100%;
  aspect-ratio: 16 / 9;
  margin: 1.5em auto;
}
.youtube_video iframe {
  width: 100%;
  height: 100%;
}
/* タイトル＆画像
---------------------------------------------------------- */
.tit_category {
  width: 100%;
  height: auto;
  margin: 5em auto 1.5em;
}
.tit_sub_category {
  width: 100%;
  height: auto;
  margin: 1em auto;
}
.tit_sub_category_nomar {
  width: 90%;
  height: auto;
  margin: 0 auto;
}
.img_category {
  width: 90%;
  height: auto;
  margin: 1em auto 5em;
}
.img_category_mar02 {
  width: 90%;
  height: auto;
  margin: 1em auto 2.5em;
}
.img_category_nomar {
  width: 90%;
  height: auto;
  margin: 0 auto 5em;
}
/* パーツ_グリッド
---------------------------------------------------------- */
.parts_grid {
  width: 90%;
  margin: 3em auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: 20px;
}
/* 購入ボタン
---------------------------------------------------------- */
/* 購入ボタン_大 */
.kakaku {
  width: 70%;
  height: auto;
  margin: 3em auto 5em;
}
/* background
---------------------------------------------------------- */
/* 雲共通 */
.cloud {
  position: absolute;
  left: -300px;
  width: 260px;
  height: 120px;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 220 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M45 78 C25 78 15 66 15 52 C15 37 27 26 43 26 C48 12 60 5 75 5 C93 5 106 16 109 32 C116 26 125 23 135 23 C153 23 166 35 168 51 C187 52 200 62 200 76 C200 90 188 96 170 96 H45 C27 96 15 90 15 78 Z' fill='%23fff' fill-opacity='.75'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  animation: cloudMove 10s linear infinite;
}
/* 雲ごとに高さ・サイズ・速度を変える */
.cloud01 {
  top: 2%;
  width: 520px;
  height: 220px;
  opacity: 0.7;
  filter: blur(0.5px);
  animation: cloudMove 12s linear infinite;
  animation-delay: -3s;
  background-image: url("../images/cloud_01.svg");
}
.cloud02 {
  top: 18%;
  width: 380px;
  height: 180px;
  opacity: 0.5;
  filter: blur(1px);
  animation: cloudMove 20s linear infinite;
  animation-delay: -11s;
  background-image: url("../images/cloud_02.svg");
}
.cloud03 {
  top: 30%;
  width: 650px;
  height: 260px;
  opacity: 0.4;
  filter: blur(0.7px);
  animation: cloudMove 18s linear infinite;
  animation-delay: -6s;
  background-image: url("../images/cloud_03.svg");
}
.cloud04 {
  top: 9%;
  width: 280px;
  height: 140px;
  opacity: 0.35;
  filter: blur(0.7px);
  background-image: url("../images/cloud_02.svg");
  animation: cloudMove 30s linear infinite;
  animation-delay: -21s;
}
.cloud05 {
  top: 16%;
  width: 460px;
  height: 200px;
  opacity: 0.55;
  filter: blur(0.7px);
  background-image: url("../images/cloud_01.svg");
  animation: cloudMove 34s linear infinite;
  animation-delay: -15s;
}
.cloud06 {
  top: 25%;
  width: 340px;
  height: 160px;
  opacity: 0.3;
  filter: blur(0.7px);
  background-image: url("../images/cloud_03.svg");
  animation: cloudMove 40s linear infinite;
  animation-delay: -32s;
}
.cloud07 {
  top: 4%;
  width: 420px;
  height: 180px;
  opacity: 0.45;
  filter: blur(0.6px);
  background-image: url("../images/cloud_02.svg");
  animation: cloudMove 24s linear infinite;
  animation-delay: -17s;
}
.cloud08 {
  top: 11%;
  width: 560px;
  height: 220px;
  opacity: 0.35;
  filter: blur(1px);
  background-image: url("../images/cloud_03.svg");
  animation: cloudMove 36s linear infinite;
  animation-delay: -27s;
}
.cloud09 {
  top: 22%;
  width: 300px;
  height: 140px;
  opacity: 0.5;
  filter: blur(0.5px);
  background-image: url("../images/cloud_01.svg");
  animation: cloudMove 28s linear infinite;
  animation-delay: -9s;
}
@keyframes cloudMove {
  from {
    transform: translateX(-700px);
  }
  to {
    transform: translateX(calc(100vw + 900px));
  }
}
/* ANA機体_アニメ
---------------------------------------------------------- */
.float_img {
  animation: fluffy 2.5s ease-in-out infinite;
}
@keyframes fluffy {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-12px);
  }
  100% {
    transform: translateY(0);
  }
}
/* copyright
---------------------------------------------------------- */
.txt_copy {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 1rem;
  text-align: center;
  color: darkblue;
}