@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@700&family=Noto+Serif+JP:wght@400;700&display=swap");

/* 簡易リセットCSS */
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-family: 'Kaisei Opti', serif !important;
  font-weight: 700;
}

tbody,
td,
tfoot,
th,
thead,
tr {
  border: none;
}

.particle-network-animation {
  display: none;
}

input:focus {
  outline: none;
}

html {
  font-size: 3.2vw;
}

html::-webkit-scrollbar {
  display: none;
  /* 针对Webkit浏览器 */
}

li,
ul {
  margin: 0;
  padding: 0;
  list-style: none inside;
}


body {
  position: relative;
  width: 100%;
  color: var(--color_text);
  font-size: 3.2vw;
  font-family: 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', 'MS P Gothic',
    'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Verdana', 'Arial',
    'Helvetica', 'sans-serif';
  line-height: 1.6;
  word-wrap: break-word;
  overflow-wrap: break-word;
  background-color: var(--color_bg);
  -webkit-text-size-adjust: 100%;
  z-index: -10;
  /* background:#fff; */
  background: url(../img/sp/bg2.jpg) no-repeat center center;
  background-size: cover;
  background-attachment: fixed;
}

.section_title {
  display: block;
  width: 90% !important;
  margin: 0 auto .64vw auto;
}

.vertical-slider__wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
  align-content: center;
  align-items: center;
  overflow: hidden;
  flex-direction: column;
  flex-wrap: nowrap;
}

.swiper-container {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  /* display: flex; */
  transition-property: transform;
  box-sizing: content-box;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  align-items: center;
  justify-content: center;
}

.hide4 {
  display: none;
}

.hide {
  opacity: 0;
  pointer-events: none;
  transform: scale(1.2);
}

.hide2 {
  display: none;
}

.hide3 {
  opacity: 0;
}


footer {
  bottom: 0;
  width: 100%;
  z-index: 101;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  padding: 0 0 0vw 0;
  background: #fff;
  padding-bottom: 22vw;
  /* padding-bottom: 2.24vw; */
}

footer .company_info {
  padding: 3.2vw;
  position: relative;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  flex-direction: column;
}

footer .company_info img {
  width: 40%;
}

footer .company_info div {
  margin: 0;
}

footer .company_info ul {
  margin-bottom: 0;
  font-size: 2.7vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 2vw 0;
}

footer .company_info ul li {
  color: #0099cb;
  margin: 0 3.2vw 0 0;
}

footer .company_info ul li a {
  text-decoration: none;
}

footer .company_info ul li:first-child {
  border: none;
  padding-left: 0;
  margin: 0 3.2vw 0 0;
}

footer p {
  width: 100%;
  text-align: center;
  font-size: 2.7vw;
  color: #000;
  margin-bottom: 0;
}

header {
  width: 100%;
  height: 10vw;
}

.no_scroll {
  overflow: hidden;
}

#header {
  width: 100%;
  height: 12vw;
  background: linear-gradient(90deg, #302a2a, #544a49, #302a2a);
  background: #000;
  position: fixed;
  top: 0;
  z-index: 100;
}

#header .sns {
  width: auto;
  height: 12vw;
  display: flex;
  align-items: center;
  z-index: 9999;
  position: absolute;
  right: 12.8vw;
}

#header .sns a {
  width: 8vw;
  height: 8vw;
  border-radius: 1.6vw;
  margin: 0 .1vw;
  box-sizing: border-box;
}

#header .sns a.x {
  background: #000;
  padding: .8vw;
  border: .2vw solid #fff;
}

#header .sns a.youtobe {
  background: #ff0000;
}

#header .menu_pc {
  display: none;
}

header #header #menu_wrap {
  visibility: hidden;
  -webkit-transition: all .2s;
  transition: all .2s;
  /* サブリンク */
}

header #header #menu_wrap .menu {
  width: 100%;
  position: fixed;
  top: 12vw;
  height: calc(100% - .16vw);
  background: rgb(26 0 0 / 96%);
}

header #header #menu_wrap .menu li {
  text-align: center;
  font-size: 4.8vw;
  line-height: 12.8vw;
  border-bottom: .2vw solid #ffffffa6;
}

header #header #menu_wrap .menu li a {
  color: #FFF;
  display: block;
  width: 100%;
  height: auto;
  text-decoration: none;
  margin: 3.2vw 0;
  font-weight: 400;
}

header #header #menu_wrap .menu .menu_title {
  color: #fff;
  background-color: #420000b8;
  font-weight: 600;
}

header #header #menu_wrap .menu .menu_top a {
  height: 12.8vw;
}

header #header #menu_wrap .menu .menu_rewards a {
  height: 12.8vw;
}

header #header #menu_wrap .menu .menu_chara a {
  height: 12.8vw;
}

header #header #menu_wrap .menu .menu_feature a {
  height: 12.8vw;
}

header #header #menu_wrap .menu .menu_world a {
  height: 12.8vw;
}

header #header #menu_wrap .menu .menu_spec a {
  height: 12.8vw;
}


header #header #menu_wrap .sublink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

header #header #menu_wrap .sublink li {
  width: 1.28vw;
  margin: .26vw;
}

header #header #menu_wrap .sublink li a img {
  display: block;
  width: 100%;
}

header #header #menu_wrap .sublink li a img:hover {
  opacity: 0.6;
}

header #header .open {
  visibility: visible !important;
}

header #header .menu_open {
  /*.menu_lineMiddle {}*/
  /* 特に指定は無いので書かなくてもOK */
}

header #header .menu_open .menu_button {
  position: absolute;
  right: 2vw;
  top: 2vw;
  width: 8vw;
  height: 8vw;
  background-color: #000000;
  border-radius: 2vw;
  border: none;
}

header #header .menu_open .menu_button:focus {
  outline: none;
}

header #header .menu_open span {
  display: block;
  width: 80%;
  margin: auto;
  height: 1vw;
  background-color: #fff;
  border-radius: .6vw;
  position: absolute;
  left: 0;
  right: 0;
  top: calc((100% - 1vw)/2);
  -webkit-transition: .2s;
  transition: .2s;
}

header #header .menu_open .menu_lineTop {
  -webkit-transform: translateY(-2vw);
  transform: translateY(-2vw);
}

header #header .menu_open .menu_lineBottom {
  -webkit-transform: translateY(2vw);
  transform: translateY(2vw);
}

header #header .menu--isOpen .menu_lineTop {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

header #header .menu--isOpen .menu_lineMiddle {
  opacity: 0;
}

header #header .menu--isOpen .menu_lineBottom {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.top_icon {
  display: flex;
  position: absolute;
  top: 50%;
  transform: translate(4%, -50%);
  align-items: center;
}

.top_icon img {
  width: 8vw;
  height: 8vw;
}

.top_icon p {
  margin: 0;
  font-size: 2.8vw;
  color: #ffffff;
  line-height: 1.5;
  margin-left: 1.6vw;
}

.swiper-pagination {
  display: none;
}

header .sp_header {
  width: 100%;
  display: block;
  padding-top: .96vw;
}

#top {
  width: 100%;
  height: 134.4vw;
  clear: both;
  position: relative;
}

.download_btn{
  /* display:none; */
  position: fixed;
  bottom: 0;
  z-index: 999;
  width: 100%;
  height: 20.8vw;
  display: flex;
  background: #000;
  padding: 1.6vw;
  align-items: center;
  border-top: .2vw solid #fff;
}
.download_btn a {
  /* width: 90%; */
  max-height: 16vw;
  display: block;
  /* overflow: hidden; */
  position: relative;
  margin: 0 1.6vw;
}
.download_btn a img{
  width:100%;
  max-height: 16vw;
}

.sp_header {
  width: 100%
}

#news_area {
  width: 100%;
  height: 100%;
  /* background: url(../img/sp/news/news_bg.jpg) no-repeat center top; */
  /* background-size: cover; */
  padding: 4vw 0;
}

#news_area h1,
#chara h1,
#feature h1,
#world h1,
#spec h1 {
  width: 80%;
  display: block;
  margin: 0 auto 3vw;
  z-index: 10;
  position: sticky;
}

#news_area h1 img,
#chara h1 img,
#feature h1 img,
#world h1 img,
#spec h1 img {
  width: 100%;
}

#news_area {
  position: relative;
  z-index: 3;
  width: 100%;
  /* position: relative; */
  margin: 0 auto;
  padding: 13.2vw 2.4vw;
}

#news_area #banner {
  background: transparent;
  width: 100%;
  max-width: 148vw;
  height: auto;
  margin: 0vw auto;
  overflow: hidden;
}

#news_area #banner img {
  display: block;
  width: 100%;
  font-size: 2vw;
}

#news_area #banner .banner-pagination {
  width: 100%;
  text-align: center;
  height: 3.2vw;
  margin: 3.2vw 0;
}

#news_area #banner .banner-pagination .swiper-pagination-clickable,
#news_area #banner .banner-pagination .swiper-pagination-bullet {
  width: 3.2vw !important;
  height: 3.2vw !important;
  background-color: #ffffff !important;
  display: inline-block;
  line-height: 0;
  /* border: .4vw solid #fff; */
  border-radius: 16vw;
  margin: 0 1vw;
  opacity: 1;
}

#news_area #banner .banner-pagination .swiper-pagination-bullet-active {
  background: linear-gradient(90deg, #770001, #f40001);
}

#news_area .leftbanner2{
  width: 100%;
  /* width: 148vw; */
  display:flex;
  /* margin: 3.2vw auto; */
  justify-content: space-between;
}

#news_area .leftbanner2 li a{
  width: 97%;
  /* height:15.4vw; */
  display: block;
}

#news_area .leftbanner2 li a img{
  width:100%;
}

#news_area #news_wrapper {
  margin: 0 auto;
  display: flex;
  width: 100%;
  max-width: 240vw;
  background-size: 100%;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  align-content: center;
}


#news_area #news {
  position: relative;
  /* background: #ffffffc7; */
  width: 100%;
  /* min-height: 60.8vw; */
  margin: 0 auto;
  overflow: hidden;
}

#news_area #news .news_body {
  position: relative;
  z-index: 2;
}

#news_area #news .news_body .notice_tabs_list {
  display: flex;
  align-items: center;
  justify-content: space-between;
  /* padding: 0vw 1vw; */
  height: 7vw;
  margin: 0;
  /* background: linear-gradient(to top, #6ac4e3, #01347f); */
}

#news_area #news .notice_tabs_list ul {
  padding: 0vw 0vw;
  display: flex;
  justify-content: space-between;
  width: 100%;
}

#news_area #news .notice_tabs_list ul li {
  display: flex;
  background: url(../img/tab.png) no-repeat center center;
  background-size:100%;
  color: #3a3231;
  width: 15.36vw;
  height: 5.12vw;
  /* width: auto; */
  /* padding: 1.28vw 0vw; */
  font-size: 2.88vw;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 64vw) {
  #news_area #news .notice_tabs_list ul li {
    font-size: 2vw;
  }
}

#news_area #news .notice_tabs_list ul li.active {
  background: url(../img/tab_on.png) no-repeat center center;
  background-size:100%;
  color: #db0008;
}

#news_area #news .notice_tabs_list ul li:nth-of-type(5) {
  margin-right: 0;
}

#news_area #news .tabs {
  flex: 1;
  width: 100%;
  padding: 1.6vw 2.4vw;
  margin: 0 auto;
  overflow: hidden;
  background: #fff;
}

#news_area #news .tabs>ul>li {
  position: relative;
  display: none;
  overflow: hidden;
  width: 100%;
  padding: 0 0;
}

#news_area #news .tabs>ul>li ul {
  margin-bottom: 1vw;
  height: auto;
  overflow: hidden;
}

#news_area #news .tabs>ul>li ul li {
  display: flex;
  flex-direction: row;
  border-bottom: .2vw solid #000;
  align-items: center;
  padding: 1vw 0;
}

#news_area #news .tabs>ul>li ul li:nth-child(n+7) {
  display: none;
}

.icon {
  display: inline-block;
  background-size: cover;
  width: 14.4vw;
  height: 3.6vw;
  margin: 0 1.6vw 0 0;
  aspect-ratio: 4/1;
  transform-origin: 0 50%;
}

.ic_type22 {
  background: #fff url(../img/label_event.png) no-repeat center center/cover;
}

.ic_type21 {
  background: #fff url(../img/label_notice.png) no-repeat center center/cover;
}

.ic_type23 {
  background: #fff url(../img/label_update.png) no-repeat center center/cover;
}

.ic_type24 {
  background: #fff url(../img/label_maintenance.png) no-repeat center center/cover;
}

.ic_type26,.ic_type218 {
  background: #fff url(../img/label_tips.png) no-repeat center center/cover;
}

#news_area #news .tabs>ul>li ul li .t1 {
  width: 70%;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 2.4vw;
}

#news_area #news .tabs>ul>li ul li .t3 {
  color: #000000;
  font-size: 2.8vw;
  white-space: nowrap;
  font-weight: 600;
}

#news_area #news .tabs>ul>li ul li a {
  color: #000000;
  text-decoration: none;
  width: 100%;
  max-width: 54.4vw;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 600;
  display: block;
  font-size: 3.2vw;
}

#news_area #news .morebtn {
  width: 100%;
  text-align: right;
  margin: 1.6vw 0 0 0;
}

#news_area #news .morebtn a {
  display: inline-block;
  padding: .6vw 2.2vw;
  background-color: #7f0101;
  color: #fff;
  /* border-radius: 20vw; */
  text-decoration-line: none;
  font-size: 2.2vw;
}

#chara {
  width: 100%;
  height: 100%;
  padding: 14.4vw 0;
  background: url(../img/sp/chara/chara_bg.jpg) no-repeat;
  background-size: cover;
}
#chara   .swiper-container {
  position: relative;
  width: 90%;
  height: 100%;
  z-index: 1;
  transition-property: transform;
  box-sizing: content-box;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  align-items: center;
  justify-content: center;
}

#chara .chara_text {
  margin: 0 auto;
  width: 100%;
  display: block;
  border: 1vw solid #fff;
}

#chara .chara_title {
  display: none;
}

#chara .chara_pagination {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 3.2vw auto 0;
  z-index: 10;
  /* position: sticky; */
  /* left: 50%; */
  /* transform: translate(-50%, 3.2vw); */
  align-items: center;
}

#chara .chara_pagination .swiper-pagination-bullet-active {filter: grayscale(0%);}

#chara .chara_pagination span {
  width: 17.6vw;
  height: 17.6vw;
  margin: .8vw 1.6vw!important;
  opacity: 1;
  font-size: 0;
  background-size: 100% !important;
  filter: grayscale(100%);
}

#chara .chara_pagination span:nth-child(1) {
  background: url(../img/pc/chara/c1.png) no-repeat center;
}

#chara .chara_pagination span:nth-child(2) {
  background: url(../img/pc/chara/c2.png) no-repeat center;
}

#chara .chara_pagination span:nth-child(3) {
  background: url(../img/pc/chara/c3.png) no-repeat center;
}

#chara .chara_pagination span:nth-child(4) {
  background: url(../img/pc/chara/c4.png) no-repeat center;
}

#chara .chara_pagination span:nth-child(5) {
  background: url(../img/pc/chara/c5.png) no-repeat center;
}

#chara .chara_pagination span:nth-child(6) {
  background: url(../img/pc/chara/c6.png) no-repeat center;
}

#chara .chara_pagination span:nth-child(7) {
  background: url(../img/pc/chara/c7.png) no-repeat center;
}
#chara .chara_pagination span:nth-child(8) {
  background: url(../img/pc/chara/c8.png) no-repeat center;
}

#feature {
  width: 100%;
  height: 100%;
  padding: 14.4vw 0;
  background: url(../img/sp/rewards/rewards_bg.jpg) no-repeat;
  background-size: cover;
}

#feature .feature-slider .swiper-slide {
  width: 100%;
  margin: 0 auto;
  opacity: 1;
  overflow: hidden;
  transition: 0.7s;
  transform: scale(0.9);
  display: flex;
  justify-content: center;
  border: 1vw solid #fff;
}

#feature  .swiper-container {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  transition-property: transform;
  box-sizing: content-box;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  align-items: center;
  justify-content: center;
}


#feature .feature-slider .swiper-slide:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #000000b0;
  background-size: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

#feature .feature-slider .swiper-slide img {
  width: 100%;
}

#feature .feature-slider .swiper-slide-active {
  opacity: 1;
  z-index: 1;
  transform: scale(1);
}

#feature .feature-slider .swiper-slide-active:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #00000000;
  background-size: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

#feature .feature_pagination {
  width: 100%;
  text-align: center;
  line-height: 0;
  display: flex;
  flex-direction: row;
  justify-content: center;
  margin-top: 3.2vw;
}

#feature .feature_pagination .swiper-pagination-bullet {
  width: 3vw;
  height: 3vw;
  display: inline-block;
  border-radius: 100%;
  opacity: 1;
  background: #ffffff;
}

#feature .feature_pagination .swiper-pagination-bullet-active {
  opacity: 1;
  background: #ff2e2f;
  width: 6vw;
  height: 3vw;
  border-radius: 2vw;
}

#feature .feature_pagination span {
  margin: 0 1.6vw;
}

#feature .feature_pagination span:focus {
  outline: -webkit-focus-ring-color auto 0vw;
}

#world {
  width: 100%;
  height: 100%;
  position: relative;
  padding: 14.4vw 0;
  background: url(../img/sp/world/world_bg.jpg) no-repeat center center;
  background-size: cover;
}

#world .world_text {
  width: 85%;
  display: block;
  margin: .64vw auto;
  margin-left: 3.2vw;
}

#world .world_text img {
  width: 100%;
}

#spec {
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #302a2a, #544a49, #302a2a);
  padding: 10vw 0 0vw;
  color: #e3e3e3;
}

#spec .spec_inner {
  width: 100%;
  margin: 0vw auto 2vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: space-evenly;
  -ms-flex-pack: space-evenly;
  justify-content: space-between;
  flex-direction: column;
  align-items: center;
}

#spec .spec_inner img {
  display: block;
  width: 45vw;
  margin: 0 0 6vw 0;
  border-radius: 4vw;
  border: .8vw solid #fff;
}

#spec .spec_inner .spec_table {
  width: 95%;
  font-size: 3.2vw;
  border-collapse: separate;
  border-spacing: .61vw;
  text-shadow: 0 0 1vw rgba(0, 0, 0, 0.4);
  height: 6.4vw;
}

#spec .spec_inner .spec_table th {
  border: 0;
  padding: 0.5em;
  text-align: center;
  margin-right: .6vw;
  vertical-align: middle;
  background-color: rgb(0 0 0 / 45%);
}

#spec .spec_inner .spec_table td {
  vertical-align: middle;
  padding: 0.5em 1em;
  background-color: rgb(0 0 0 / 45%);
  border: 0;
}

#spec .spec_inner .spec_table td span {
  font-size: 70%;
}

#spec .notice {
  line-height: 2;
  font-size: 2.8vw;
  display: block;
  margin: 8vw auto 41.6vw;
  width: 90%;
  padding: 1em;
  background-color: rgb(0 0 0 / 45%);
}

#spec .notice span {
  display: block;
  width: 100%;
  text-align: center;
  font-weight: 600;
  font-size: 3.2vw;
}

#spec .caution {
  width: 90%;
  margin: 0 auto;
  padding: .32vw;
  border: .06vw solid #8b785e;
  border-radius: .48vw;
  background-color: rgba(0, 0, 0, 0.7);
}

#spec .caution p {
  font-size: .51vw;
  margin-bottom: .32vw;
  color: #ffdb8b;
  text-align: center;
}

#spec .caution ul li {
  line-height: .64vw;
  font-size: .45vw;
  font-weight: 100;
  color: #f6e3b9;
}

#foot_link {
  position: fixed;
  bottom: 0;
  z-index: 999;
  width: 100%;
  height: 32vw;
  display: flex;
  background: linear-gradient(to top, #f3e5cf 0%, #fdfaf5 100%);
  background: #000000c2;
  padding: 2.56vw 1.6vw;
  align-items: center;
  display: none !important;
}

#foot_link .foot_title {
  display:none;
}

#foot_link .email form {
  display: flex;
  border-radius: 1.6vw;
  border: .4vw solid #1c242a;
  overflow: hidden;
}


#foot_link .p-gamestart__mailform {
  background: #fff;
  color: #000;
  text-align: left;
  height: 9.6vw;
  padding: 0 3.2vw;
  outline: none;
  font-size: 3.84vw;
  width: 100%;
  border: none;
}

#foot_link .p-gamestart__mailbtn {
  display: inline-block;
  background: linear-gradient(to top, #6e0101 0%, #d80001 100%);
  color: #ffffff;
  padding: 0 6.4vw;
  height: 9.6vw;
  font-weight: 600;
  white-space: nowrap;
  font-size: 4vw;
  border: none;
}

#foot_link .stores {
  width: 100%;
  height: 12.8vw;
  display: flex;
  justify-content: space-around;
  flex-direction: row;
  margin-top: 1.6vw;
}

#foot_link .stores a {
  width: auto;
  height: 12.8vw;
  display: flex;
}

#foot_link .stores a img {
  width: 100%;
}

#spec .spec_voice{width:100%;padding: 4vw 0;}
#spec .spec_voice img{
  width:100%;
}


/*----------------------------------------------------------------------
          2nd page
----------------------------------------------------------------------*/
#individual {
  background-image: url(../img/sp/bg2.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center top;
  background-attachment: fixed;
}

#individual header {
  background-image: none;
  height: auto;
  aspect-ratio: auto;
}

#individual header #header .m_logo img {
  height: 8vw;
  margin: 1vw 0 0 2vw;
}

#individual header #banner {
  background-color: #fff;
  padding: 2vw;
  width: 96%;
  margin: 8vw auto 1vw auto;
  -webkit-filter: drop-shadow(.6vw .6vw .6vw rgba(0, 0, 0, 0.3));
  filter: drop-shadow(.6vw .6vw .6vw rgba(0, 0, 0, 0.3));
}

#individual header #banner img {
  width: 100%;
}

#individual main {
  margin: 0;
}

#individual main .logo {
  width: 50%;
  margin: 9.6vw auto 2vw;
  display: block;
}

#individual main .logo img {
  width: 100%;
}

#individual main #news_list {
  width: 94%;
  margin: 0 auto;
  padding: 0vw 0 4vw;
}

#individual main #news_list #genre {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 4vw auto;
}

#individual main #news_list #genre li {
  background: linear-gradient(#f3e5cf, #fdfaf5);
  -webkit-filter: drop-shadow(.6vw .6vw .6vw rgba(0, 0, 0, 0.5));
  filter: drop-shadow(.6vw .6vw .6vw rgba(0, 0, 0, 0.5));
  font-weight: bold;
  text-align: center;
  /* width: 19vw; */
  border-radius: .4vw;
  padding: 1.6vw 3.2vw;
  margin: 2.4vw;
  font-size: 4vw;
}

#individual main #news_list #genre li a {
  color: #3a3231;
  text-decoration: none;
}


#individual main #news_list #news_body li {
  /* border-radius: 2vw; */
  font-size: 3vw;
  /* border: 1.2vw solid #751c88; */
  width: 100%;
  /* border-style: double; */
  background: #ffffff;
  -webkit-filter: drop-shadow(.6vw .6vw .6vw rgba(0, 0, 0, 0.3));
  filter: drop-shadow(.6vw .6vw .6vw rgba(0, 0, 0, 0.3));
  padding: 1.6vw;
  margin-bottom: 4vw;
}

#individual main #news_list #news_body li a {
  display: -webkit-box;
  display: -ms-flexbox;
  text-decoration: none;
  color: #000000;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#individual main #news_list .page_nav {
  width: 40vw;
  margin: auto;
  display: flex;
  height: 20vw;
  justify-content: space-around;
  align-items: center;
}

#individual main #news_list .page_nav li a {
  text-decoration: none;
  color: #fff;
  display: block;
  padding: .4vw 1.6vw;
  border: .2vw solid #fff;
}

#individual main #news_list .page_nav li a:hover {
  color: #554c48;
  border: .2vw solid #554c48;
}

#individual main #news_list #news_body li a .min_banner img {
  width: 50vw;
  margin-right: 4vw;
}

#individual main #news_list #news_body li a .icon {
  -ms-flex-preferred-size: 20vw;
  flex-basis: 20vw;
  width: 20vw;
  height: 11.8vw;
  background-size: contain;
  text-indent: -1000%;
  overflow: hidden;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin: 0;
}

#individual main #news_list #news_body li a .icon .ic_type22 {
  background: url(../img/event.png) no-repeat;
  background-size: 100%;
  display: block;
  width: 100%;
  height: 100%;
}

#individual main #news_list #news_body li a .icon .ic_type21 {
  background: url(../img/info.png) no-repeat;
  background-size: 100%;
  display: block;
  width: 100%;
  height: 100%;
}

#individual main #news_list #news_body li a .icon .ic_type23 {
  background: url(../img/update.png) no-repeat;
  background-size: 100%;
  display: block;
  width: 100%;
  height: 100%;
}

#individual main #news_list #news_body li a .icon .ic_type24 {
  background: url(../img/mainte.png) no-repeat;
  background-size: 100%;
  display: block;
  width: 100%;
  height: 100%;
}

#individual main #news_list #news_body li a .icon .ic_type26 {
  background: url(../img/tips.png) no-repeat;
  background-size: 100%;
  display: block;
  width: 100%;
  height: 100%;
}

#individual main #news_list #news_body li a .date {
  padding: 0vw 0vw 0vw 3vw;
  line-height: 4vw;
}

#individual main #news_list #news_body li a .date span {
  vertical-align: middle;
}

#individual main #news_list .sppagination {
  margin: 6vw auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

#individual main #news_list .sppagination a,
#individual main #news_list .sppagination b {
  margin: 0 1vw 2vw 1vw;
  -webkit-filter: drop-shadow(.6vw .6vw .6vw rgba(0, 0, 0, 0.5));
  filter: drop-shadow(.6vw .6vw .6vw rgba(0, 0, 0, 0.5));
  border-radius: 1vw;
  background-color: #ffffff;
  color: #1c0d0a;
  display: block;
  text-align: center;
  line-height: 8vw;
  width: 8vw;
  height: 8vw;
  border: .2vw solid #182b42;
  font-size: 2.6vw;
}

#individual main #news_list .sppagination a {
  text-decoration: none;
  color: #1c0d0a;
}

/* #individual main #news_list .sppagination a:hover,
#individual main #news_list .sppagination b:hover {
  background-color: #2472ac;
  color: #fff;
} */

#individual main .pagecontent {
  /* margin: 0 0 10vw 0; */
}

#individual main .pagecontent .subtitle {
  margin-bottom: 1vw;
  filter: drop-shadow(.2vw 0vw .2vw #fff) drop-shadow(-0.2vw 0vw .2vw #fff) drop-shadow(0vw .2vw .2vw #fff) drop-shadow(0vw -0.2vw .2vw #fff);
  font-size: 3.2vw;
}

#individual main .pagecontent .spcontain {
  font-size: 3.2vw;
  width: 100%;
  -webkit-filter: drop-shadow(.6vw .6vw .6vw rgba(0, 0, 0, 0.3));
  filter: drop-shadow(.6vw .6vw .6vw rgba(0, 0, 0, 0.3));
  padding: 3vw;
  margin: 3.2vw 0;
  background: rgb(255 255 255 / 90%);
}

#individual main #news_list .pagecontent .spcontain .spcontainer {
  width: 100%;
  margin: 0 auto;
  padding: 2vw 0;
  color: #000;
}

#individual main #news_list .pagecontent .spcontain .spcontainer .faq_block {
  border-radius: .8vw;
  background: linear-gradient(0deg, #f3e5cf, #e8080a, #770001);
}

#individual main #news_list .pagecontent .spcontain .spcontainer .q {
  display: inline-block;
  width: 100%;
  padding: 2vw;
  color: #fff;
}

#individual main #news_list .pagecontent .spcontain .spcontainer .a {
  color: #000000;
  padding: 2vw;
  border-radius: 0vw 0vw 1.2vw 1.2vw;
  display: flex;
  background-color: #f3e5cf;
  border-top: .2vw solid #01347f;
}

#individual main .pagecontent .subtitle .sp_page_right_top {
  color: #000000;
}

#individual main .pagecontent .subtitle .sp_page_right_top .subpagenav a {
  color: #de0613;
  text-decoration: none;
}

#individual main .pagecontent .subtitle .sp_page_right_top .subpagenav a:hover {
  color: #ffb23e;
  text-decoration: none;
}

#individual main .pagecontent .spcontain .spcontainer .page_tit {
  margin-bottom: 4vw;
}

#individual main .pagecontent .spcontain .spcontainer .page_tit h3 {
  color: #3a3231;
  padding: .8vw 2.02vw;
  border-width: 0 0 .2vw 0;
  border-color: #3a3231;
  border-style: solid;
  margin: 0 auto 5vw auto;
  margin-bottom: 0vw;
  font-size: 4.8vw;
}

#individual main .pagecontent .spcontain .spcontainer .page_tit .pages_date {
  display: block;
  text-align: right;
  color: #000000;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital {
  /* margin-bottom: 4.8vw; */
  color: #000000;
  padding: 2%;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital::-webkit-scrollbar {
  width: 1vw;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital::-webkit-scrollbar-track {
  background-color: #f1f1f1;
  border-radius: 1vw;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital::-webkit-scrollbar-thumb {
  background-color: #5e2e24;
  border-radius: 1vw;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital::-webkit-scrollbar-thumb:hover {
  background-color: #d95130;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital ul {
  padding: 0 2vw;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital .spcontact form .cateBox_tb {
  border: #000 .2vw solid;
  margin: 0 auto 4vw auto;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital .spcontact form .cateBox_tb th {
  color: #fff;
  padding: 1.6vw 3vw;
  background: #73694f;
  font-weight: bold;
  border-left: .2vw solid #adadad;
  border-top: .2vw solid #adadad;
  border-bottom: .2vw solid #adadad;
  line-height: 120%;
  text-align: left;
  text-shadow: .2vw .2vw .8vw #000000;
  -webkit-box-shadow: 0vw .2vw .2vw rgba(255, 255, 255, 0.3) inset;
  box-shadow: 0vw .2vw .2vw rgba(255, 255, 255, 0.3) inset;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital .spcontact form .cateBox_tb tr td {
  text-align: left;
  padding: 0;
  padding-left: 1vw;
  border-bottom: .2vw solid #666666;
  border-left: .2vw solid #666666;
}

.input_box {
  width: 84%;
}

.contact_tb {
  margin: 2.8vw 0 !important;
  width: 80% !important;
  text-align: left !important;
}

.cateBox_tb tr td table tr td {
  border: none;
  box-shadow: none;
  text-align: left !important;
}

.textbox {
  width: 84%;
}

.submit_button {
  margin: 0 auto;
  text-align: center;
  display: block;
  width: 20vw;
  color: #3c3a32;
  background: linear-gradient(to top, #9c8d6d 0%, #e9e0bf 100%);
  border-bottom: #80704e .4vw solid;
  border-top: #fffdf6 .4vw solid;
  padding: 2vw;
  text-decoration: none;
  margin-top: 4vw auto;
  border-radius: .8vw;
  border: 0;
}

.ch01 {
  background: url(../img/contact/iconch.jpg) 0 0 no-repeat;
  background-size: 100%;
  display: block;
  width: 10vw;
  height: 3vw;
  margin-right: 2vw;
}

.ch02 {
  background: url(../img/contact/iconch.jpg) 0 -3vw no-repeat;
  background-size: 100%;
  display: block;
  width: 10vw;
  height: 3vw;
  margin-right: 2vw;
}

.ch03 {
  background: url(../img/contact/iconch.jpg) 0 -6vw no-repeat;
  background-size: 100%;
  display: block;
  width: 10vw;
  height: 3vw;
  margin-right: 2vw;
}

.days {
  right: 2vw;
  font-size: 2.4vw;
  position: absolute;
}

.title {
  width: 30vw;
  height: auto;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cateBox_tb {
  border: #000 .2vw solid;
  width: 160vw;
  margin: 0 auto 4vw auto;
}

.cateBox_tb>tbody>tr>th {
  background: #472600;
  color: #fff;
  padding: 1vw 2vw;
  border-bottom: #fff .2vw solid;
  width: 40vw;
  text-align: left !important;
}

.cateBox_tb>tbody>tr>th:last-of-type {
  border-bottom: #000 .2vw solid;
}

.cateBox_tb>tbody>tr>td {
  padding: 1vw 2vw;
  border-bottom: #000 .2vw solid;
  text-align: left !important;
}

.sub_tb td {
  padding: 1vw 2vw 1vw 0;
}

.formbt {
  text-align: center;
}

.formbt .submit,
.formbt .back_button {
  padding: 1vw 2vw;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital h1 {
  font-size: 3.6vw;
  color: #fff3d0;
  margin-bottom: 2vw;
  text-align: left;
  background: url(../img/in_tit_bg.png) no-repeat;
  margin: 4vw auto;
  padding: 2vw 4vw 2vw;
  border-radius: 1vw;
  font-size: 2.8vw;
  border: .2vw #eae1bf solid;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital h3 {
  color: #ffffff;
  padding: .8vw 2.02vw;
  /* border-width: 0 0 .2vw 3vw; */
  /* border-color: #de0613; */
  /* border-style: solid; */
  margin: 0 auto 5vw auto;
  margin-bottom: 0vw;
  font-weight: 600;
  font-size: 4vw;
  background: linear-gradient(90deg, #770001, #ff6b6c);
  border-radius: 1.6vw;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital h4 {
  text-align: left;
  font-weight: bold;
  margin: 4vw auto;
  padding: 2vw 4vw 2vw;
  border-radius: 1vw;
  font-size: 2.8vw;
  color: #ffffff;
  padding: .8vw 2.02vw;
  margin: 0 auto 5vw auto;
  margin: 3.2vw 0;
  font-weight: 600;
  font-size: 4vw;
  background: linear-gradient(90deg, #770001, #ff6b6c);
  border-radius: 1.6vw;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital strong {
  /* color: #01347f; */
}

#individual main .pagecontent .spcontain .spcontainer .page_dital h6 {
  font-size: 3.2vw;
  font-weight: bold;
  color: #ff8f00;
  margin-bottom: 2vw;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital .block {
  overflow: hidden;
  clear: both;
  margin: 0 auto 4vw auto;
  line-height: 1.8em;
  font-size: 2.8vw;
  width: 100%;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital .caution {
  color: red;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital .guide_title {
  color: #ffffff;
  /* padding: 1vw; */
  margin: 2vw auto;
  /* font-size: 2.8vw; */
}

#individual main .pagecontent .spcontain .spcontainer .page_dital .guide_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: space-around;
  -ms-flex-pack: space-around;
  justify-content: left;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital .guide_list li {
  width: 46%;
  text-align: center;
  padding: .6vw .2vw;
  border-radius: .8vw;
  margin: 1% 2%;
  overflow: hidden;
  border: .2vw solid #3a3231;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital .guide_list li a {
  font-size: 2.8vw;
  display: block;
  height: 100%;
  text-decoration: none;
  color: #3a3231;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital p {
  margin-bottom: 2vw !important;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital img {
  max-width: 100%;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital table {
  width: 100%;
  border: .2vw solid #73694f;
  font-size: 2.4vw;
  border-spacing: 0;
  color: #000000;
  margin: 0 0 4.8vw 0;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital table th {
  color: #fff;
  padding: 1vw 2vw;
  background: #73694f;
  font-weight: bold;
  border-left: .2vw solid #ffffff;
  border-top: .2vw solid #ffffff;
  border-bottom: .2vw solid #ffffff;
  line-height: 120%;
  text-align: center;
  text-shadow: .2vw .2vw .8vw #000000;
  -webkit-box-shadow: 0vw .2vw .2vw rgba(255, 255, 255, 0.3) inset;
  box-shadow: 0vw .2vw .2vw rgba(255, 255, 255, 0.3) inset;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital table th:last-child {
  border-right: .2vw solid #fff;
  -webkit-box-shadow: .4vw .4vw .2vw rgba(0, 0, 0, 0.1), 0vw .2vw .2vw rgba(255, 255, 255, 0.3) inset;
  box-shadow: .4vw .4vw .2vw rgba(0, 0, 0, 0.1), 0vw .2vw .2vw rgba(255, 255, 255, 0.3) inset;
}


#individual main .pagecontent .spcontain .spcontainer .page_dital table tr td {
  text-align: center;
  padding: 1.6vw .6vw;
  border-bottom: .2vw solid #73694f;
  border-left: .2vw solid #73694f;
}

#individual main .pagecontent .spcontain .spcontainer .page_dital table tr td:last-child {
  border-right: .2vw solid #666666;
  -webkit-box-shadow: .4vw .4vw .2vw rgba(0, 0, 0, 0.1);
  box-shadow: .4vw .4vw .2vw rgba(0, 0, 0, 0.1);
}

#individual main .pagecontent .spcontain .spcontainer .back_btn a {
  margin: 1.6vw auto 0;
  text-align: center;
  display: block;
  width: 20vw;
  padding: 1vw;
  color: #fff;
  background: linear-gradient(0deg, #770001, #f40001);
  text-decoration: none;
  font-size: 2.8vw;
}

#individual main .back_btn a {
  margin: 3vw auto;
  text-align: center;
  display: block;
  width: 20vw;
  padding: 1vw;
  color: #fff;
  background: linear-gradient(0deg, #770001, #f40001);
  text-decoration: none;
  font-size: 2.8vw;
}

#individual footer {
  margin: 0 0 0 0;
  padding: 0;
}

#individual main #news_list>.back_btn a {
  margin: 0 auto;
  text-align: center;
  display: block;
  width: 28vw;
  background-color: #333;
  color: #fff;
  padding: 2vw;
  text-decoration: none;
  border-radius: .4vw;
  background: linear-gradient(0deg, #770001, #f40001);
  font-size: 2.8vw;
  border-radius: 1vw;
}


.pv{
  position: absolute;
  width: 26vw;
  height: 26vw;
  top: 50%;
  left: 50%;
  margin: -13vw 0 0 -13vw;
  transform: scale(0.8);
}

.pv a{
  position: relative;
  display: block;
  width: 26vw;
  height: 26vw;
  z-index: 5;
}

.pv img{
  vertical-align: top;
}

.pv_bg{
  margin: -26vw 0 0 0;
  animation: rotateAnimation2 10s linear infinite;
}

@keyframes rotateAnimation1 {
  from {
      transform: rotate(0deg);
  }
  to {
      transform: rotate(-360deg);
  }
}


@keyframes rotateAnimation2 {
  from {
      transform: rotate(0deg);
  }
  to {
      transform: rotate(360deg);
  }
}


@media only screen and (min-width:100vw) and (max-width:159.8vw) {
  html {
    font-size: 3.4vw;
  }
}