@charset "UTF-8";
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  overflow-y: scroll;
}
html.noscroll {
  height: 100%;
}
body {
  margin: 0;
}
body.ov {
  overflow: hidden;
}
main {
  display: block;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

:root {
  --base-font-color: #222;
  --header-link-color: #333;
  --corporate-color: #0071be;
  --corporate-color-btn-hover: #02558d;
  --button-blueline-white-hover: #eaf7ff;
  --button-red-color: #d7373d;
  --bluder-category-color: #0c9e4d;
  --accent-color: #919191;
  --gray-color: #aaa;
  --lighter-gray-color: #dedede;
  --lighter-gray-color-2: #bebebe;
  --meta-font-color: #757575;
  --drawer-line-color: #ddd;
  --bg-gray-color: #f5f5f5;
  --white-color: #fff;
  --basic-box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.1);
  --gnav-box-shadow: 1px 1px 0px rgba(0, 0, 0, 0.1);
  --font-family-number: "Roboto", sans-serif;
  scrollbar-width: thin;
}

* {
  margin: 0;
  padding: 0;
  min-inline-size: 0;
  box-sizing: border-box;
}
*::before,
*::after {
  box-sizing: inherit;
}

html,
body {
  max-width: 100vw;
}

html {
  font-size: 62.5%;
  color-scheme: light !important;
  scroll-behavior: smooth;
}

body {
  position: relative;
  width: 100%;
  /* font-family: 'YakuHanJP', -apple-system, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif; */
  font-family: YakuHanJP, -apple-system, "Hiragino Sans",
    "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.05rem;
  /* letter-spacing: 0; */
  color: var(--base-font-color);
  overflow-wrap: break-word;
  -webkit-text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-kerning: normal;
  font-kerning: normal;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
@media screen and (min-width: 768px) {
  body {
    min-width: 960px;
    font-family: YakuHanJP, "Noto Sans JP", -apple-system, "Hiragino Sans",
      "Hiragino Kaku Gothic ProN", sans-serif;
  }
}

@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  src: local("Noto Sans CJK JP Regular"),
    url("https://i.gimg.jp/pts/font/NotoSans_DemiLight.woff2") format("woff2"),
    url("https://i.gimg.jp/pts/font/NotoSans_demilight.woff") format("woff"),
    url("https://i.gimg.jp/pts/font/NotoSans_demilight.otf") format("opentype");
  font-display: swap;
}

@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
  src: local("Noto Sans CJK JP Bold"),
    url("https://i.gimg.jp/pts/font/NotoSans_Bold.woff2") format("woff2"),
    url("https://i.gimg.jp/pts/font/NotoSans_bold.woff") format("woff"),
    url("https://i.gimg.jp/pts/font/NotoSans_bold.otf") format("opentype");
  font-display: swap;
}

@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: normal;
  src: url("https://i.gimg.jp/pts/font/YakuHanJP-Regular.woff2") format("woff2"),
    url("https://i.gimg.jp/pts/font/YakuHanJP-Regular.woff") format("woff");
  font-display: swap;
}

@font-face {
  font-family: "YakuHanJP";
  font-style: normal;
  font-weight: bold;
  src: url("https://i.gimg.jp/pts/font/YakuHanJP-Bold.woff2") format("woff2"),
    url("https://i.gimg.jp/pts/font/YakuHanJP-Bold.woff") format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;
  src: url("https://i.gimg.jp/pts/font/roboto-latin-400-normal.woff2")
      format("woff2"),
    url("https://i.gimg.jp/pts/font/roboto-latin-400-normal.woff")
      format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  src: url("https://i.gimg.jp/pts/font/roboto-latin-700-normal.woff2")
      format("woff2"),
    url("https://i.gimg.jp/pts/font/roboto-latin-700-normal.woff")
      format("woff");
  font-display: swap;
}

img {
  max-width: 100%;
  height: auto;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}

a {
  cursor: pointer;
  /* -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none; */
  color: inherit;
  text-decoration: none;
}

ul,
ol {
  list-style: none;
}
html.xxxlarge {
  font-size: 117.1875%;
}

html.xxlarge {
  font-size: 101.5625%;
}

html.xlarge {
  font-size: 85.9375%;
}

html.large {
  font-size: 74.21875%;
}

html.small {
  font-size: 54.6875%;
}

html.xsmall {
  font-size: 46.875%;
}

.roboto {
  font-family: "Roboto", sans-serif;
  font-style: normal;
}

.main_container {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  width: 100%;
  padding-inline: 16px;
  /* -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1; */
}
.main_container--tour {
  margin-top: 16px;
}
.main_container--article {
  padding-top: 16px;
}

.main_column {
  display: contents;
}
.main_column + .top_bruder {
  margin-top: 48px;
}

.main_contents {
  display: contents;
}

.main_sidebar {
  display: contents;
}

/* androidでのスクロールbar非表示対応 */
@media screen and (max-width: 768px) {
  ::-webkit-scrollbar {
    display: none;
  }
}

/**** PC ヘッダー ****/
.pc_header {
  position: relative;
  z-index: 2;
}
.pc_header::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  width: 100%;
  height: 1px;
  background-color: #dededf;
  z-index: -1;
}

.pc_header__upper {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
  width: min(100%, 1320px);
  margin-inline: auto;
  padding-top: 8px;
  padding-inline: 20px;
}
.pc_header__upper .logo {
  height: 39px;
  margin: 0 auto 0 0;
  padding: 0;
}
.pc_header__upper .top_menu {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  gap: 0 11px;
  margin-left: auto;
}
.pc_header__upper .top_menu__item {
  position: relative;
  z-index: 11;
}
.pc_header__upper .top_menu__item > a,
.pc_header__upper .top_menu__item > span {
  display: block;
  padding-inline: 3px;
  font-size: 1.4rem;
  color: var(--header-link-color);
  cursor: pointer;
  -webkit-transition: color 0.3s ease-in-out;
  transition: color 0.3s ease-in-out;
}
.pc_header__upper .top_menu__item.has-child {
  margin-right: 16px;
}
.pc_header__upper .top_menu__item.has-child::after {
  content: "";
  position: absolute;
  inset: 0 -12px 3px auto;
  width: 7px;
  height: 7px;
  margin-block: auto;
  border-bottom: 1px solid var(--header-link-color);
  border-right: 1px solid var(--header-link-color);
  background-color: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: border-color 0.3s ease-in-out;
  transition: border-color 0.3s ease-in-out;
}
.pc_header__upper .top_menu__item.has-child:has(span:hover)::after {
  border-color: var(--corporate-color);
}
.pc_header__upper .top_menu__item.has-child > a,
.pc_header__upper .top_menu__item.has-child > span {
  letter-spacing: 0.01em;
}
.pc_header__upper .top_menu__item.has-child.is-active > a,
.pc_header__upper .top_menu__item.has-child.is-active > span {
  font-weight: 700;
  letter-spacing: 0;
  color: var(--corporate-color);
}
.pc_header__upper .top_menu__item.has-child.is-active::after {
  border-color: var(--corporate-color);
}
.pc_header__upper .top_menu_child {
  display: none;
  position: absolute;
  inset: 100% auto auto 50%;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  box-shadow: var(--basic-box-shadow);
  z-index: 1;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}
.pc_header__upper .top_menu_child__column {
  display: -webkit-box;
  display: flex;
  gap: 0 16px;
  height: auto;
  padding: 18px 20px;
  background-color: var(--white-color);
  box-shadow: var(--basic-box-shadow);
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.pc_header__upper .top_menu_child_list__item a {
  font-size: 1.4rem;
  line-height: 2.3;
  cursor: pointer;
  -webkit-transition: color 0.3s ease-in-out;
  transition: color 0.3s ease-in-out;
  display: block;
}
.pc_header__upper .login_panel {
  margin-left: 16px;
}
.pc_header__upper .login_panel .login {
  position: relative;
  /*width: 82px;*/
  height: 48px;
}
.pc_header__upper .login_panel .login:has(.user-data) {
  /*width: 160px;*/
}
.pc_header__upper .login_panel .button--login {
  display: none;
  color: var(--white-color);
  border-color: var(--button-red-color);
  background-color: var(--button-red-color);
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
body.login-status_logout .pc_header__upper .login_panel .button--login {
  display: flex;
}
.pc_header__upper .login_panel .button--member {
  display: -webkit-box;
  display: flex;
  gap: 0 8px;
  padding-inline: 14px 20px;
  color: var(--base-font-color);
  border-color: var(--corporate-color);
}
.pc_header__upper .login_panel .button--member .login_info {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  -webkit-box-align: start;
  align-items: flex-start;
  gap: 5px 0;
  font-size: 1.1rem;
}
.pc_header__upper .help_link {
  margin-left: 9px;
}

.pc_header__bottom {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
  width: min(100%, 1320px);
  margin-inline: auto;
  margin-top: 4px;
  padding-inline: 20px;
}

.header__search form {
  position: relative;
}
.header__search form input[type="text"] {
  position: relative;
  width: 264px;
  height: 32px;
  padding: 5px 32px 7px 12px;
  font-size: 1.2rem;
  border: solid 1px var(--gray-color);
  border-radius: 4px;
  background-color: var(--white-color);
  z-index: 0;
}
.header__search form button {
  position: absolute;
  inset: 0 12px 0 auto;
  width: 17px;
  height: 17px;
  margin-block: auto;
  background-color: transparent;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  z-index: 1;
}
@media screen and (max-width: 986px) {
  .header__search {
    display: none;
  }
}

/**** SP ヘッダー ****/
.sp_header {
  border-bottom: 1px solid #dededf;
}

.sp_header__upper {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  width: min(100%, 1320px);
  margin-inline: auto;
  /* padding-top: 3px; */
  padding-inline: 16px;
  contain: paint;
}
.sp_header__upper .logo {
  height: 39px;
  margin: 0 auto 0 0;
  padding: 0;
}
.sp_header__upper .login_panel {
  margin-left: auto;
}

.sp_header__upper .login_panel .login,
.sp_header__upper .login_panel .logged_in {
  display: none;
}
body.login-status_logout .sp_header__upper .login_panel .login {
  display: block;
}
body.login-status_login .sp_header__upper .login_panel .logged_in {
  display: block;
}

.sp_header__upper .login_panel .login a {
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1;
  vertical-align: 3px;
}
.sp_header__upper .login_panel .logged_in .sp_user_data {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  gap: 2px 0;
  padding-bottom: 3px;
  align-items: flex-end;
}
.sp_header__upper .login_panel .logged_in .sp_user_data__name {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: baseline;
  align-items: baseline;
  gap: 0 2px;
  font-size: 1.3rem;
  line-height: 1;
}
.sp_header__upper .login_panel .logged_in .sp_user_data__name a {
  display: inline-block;
  max-width: 94px;
  color: var(--corporate-color);
  white-space: nowrap;
  /* overflow: hidden; */
  text-overflow: ellipsis;
  font-weight: bold;
}
.sp_header__upper .login_panel .logged_in .sp_user_data__point {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: baseline;
  align-items: baseline;
  gap: 0 2px;
  font-size: 1.3rem;
}
.sp_header__upper .login_panel .logged_in .sp_user_data__point small {
  font-size: 80%;
}
.sp_header__upper .top_menu {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  gap: 0 12px;
  margin-left: auto;
}
.sp_header__upper .top_menu__item {
  position: relative;
}
.sp_header__upper .top_menu__item a {
  font-size: 1.4rem;
}
.sp_header__upper .top_menu__item.has-child {
  margin-right: 16px;
}
.sp_header__upper .top_menu__item.has-child::after {
  content: "";
  position: absolute;
  inset: 0 -12px 0 auto;
  width: 7px;
  height: 7px;
  margin-block: auto;
  border-bottom: 1px solid var(--base-font-color);
  border-right: 1px solid var(--base-font-color);
  background-color: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.sp_header__upper .top_menu_child {
  display: none;
}
.sp_header__upper .help_link {
  margin-left: 9px;
}

.sp_header__bottom {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
  width: min(100%, 1320px);
  margin-left: auto;
  margin-top: 15px;
}

/**** PCグローバルナビ ****/
.gnav {
  height: 100%;
  margin-right: auto;
}
.gnav .gnav_list {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
}
.gnav .gnav_list__item {
  position: relative;
  height: 57px;
  padding-inline: 5px;
}
.gnav .gnav_list__item:first-child {
  -webkit-padding-start: 0;
  padding-inline-start: 0;
}
.gnav .gnav_list__item > a,
.gnav .gnav_list__item > span {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  position: relative;
  height: 100%;
  padding-inline: 3px;
  font-size: 1.4rem;
  cursor: pointer;
  -webkit-transition: color 0.3s ease-in-out;
  transition: color 0.3s ease-in-out;
}
.gnav .gnav_list__item:first-child > a,
.gnav .gnav_list__item:first-child > span {
  -webkit-padding-start: 0;
  padding-inline-start: 0;
}
.gnav .gnav_list__item.has-child > a,
.gnav .gnav_list__item.has-child > span {
  padding-right: 18px;
}
.gnav .gnav_list__item.has-child > a::after,
.gnav .gnav_list__item.has-child > span::after {
  content: "";
  position: absolute;
  inset: 0 4px 4px auto;
  width: 7px;
  height: 7px;
  margin-block: auto;
  border-bottom: 1px solid var(--base-font-color);
  border-right: 1px solid var(--base-font-color);
  background-color: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: border-color 0.3s ease-in-out;
  transition: border-color 0.3s ease-in-out;
}
.gnav .gnav_list__item.has-child.is-active > a,
.gnav .gnav_list__item.has-child.is-active > span,
.gnav .gnav_list__item.has-child.is-default > a,
.gnav .gnav_list__item.has-child.is-default > span {
  font-weight: 700;
  color: var(--corporate-color);
}
.gnav .gnav_list__item.has-child.is-active > a::before,
.gnav .gnav_list__item.has-child.is-active > span::before,
.gnav .gnav_list__item.has-child.is-default > a::before,
.gnav .gnav_list__item.has-child.is-default > span::before {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  width: 100%;
  height: 4px;
  background-color: var(--corporate-color);
}
.gnav .gnav_list__item.has-child.is-active > a::after,
.gnav .gnav_list__item.has-child.is-active > span::after,
.gnav .gnav_list__item.has-child.is-default > a::after,
.gnav .gnav_list__item.has-child.is-default > span::after {
  border-color: var(--corporate-color);
}
.gnav .gnav_list__item:has(span:hover)::after {
  border-color: var(--corporate-color);
}
.gnav .gnav_child {
  display: none;
  position: absolute;
  inset: 100% auto auto 5px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  height: auto;
  padding: 18px 20px;
  border: 1px solid #dedede;
  border-radius: 0 0 4px 4px;
  background-color: var(--white-color);
  box-shadow: var(--basic-box-shadow);
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  /*cursor: pointer;*/
}
.gnav .gnav_child__column {
  display: -webkit-box;
  display: flex;
  gap: 0 16px;
  margin-top: 8px;
}
.gnav .gnav_list__item:first-child .gnav_child {
  inset: 100% auto auto 0;
}
.gnav .gnav_list__item:first-child .gnav_child__column {
  margin-top: 0;
}
.gnav .primary_link {
  position: relative;
  font-size: 1.4rem;
  font-weight: 700;
  -webkit-transition: color 0.3s ease-in-out;
  transition: color 0.3s ease-in-out;
}
.gnav .primary_link::after {
  content: "";
  position: absolute;
  inset: 0 -16px 0 auto;
  width: 7px;
  height: 7px;
  margin-block: auto;
  border-top: 1px solid var(--base-font-color);
  border-right: 1px solid var(--base-font-color);
  background-color: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: border-color 0.3s ease-in-out;
  transition: border-color 0.3s ease-in-out;
}
.gnav .gnav_child_list__item a {
  font-size: 1.4rem;
  line-height: 2.3;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  display: block;
}

/**** SPスクロールナビ ****/
.scroll_nav {
  overflow-x: scroll;
}
.scroll_nav .scroll_nav_list {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  gap: 0 12px;
  height: 100%;
  padding-bottom: 0px;
  padding-inline: 14px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.scroll_nav .scroll_nav_list__item {
  position: relative;
}
.scroll_nav .scroll_nav_list__item a {
  display: block;
  position: relative;
  padding-bottom: 12px;
  padding-inline: 2px;
  font-size: 1.4rem;
  font-weight: 700;
}
.scroll_nav .scroll_nav_list__item.is-default > a {
  color: var(--corporate-color);
}
.scroll_nav .scroll_nav_list__item.is-default > a::before {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  width: 100%;
  height: 4px;
  background-color: var(--corporate-color);
}

/**** フッター ****/
/* PC サービス */
.pc_section_service {
  margin-top: 64px;
  padding: 60px 0 44px;
  position: relative;
  background-color: #f4f4f4;
}
.pc_section_service__contents {
  display: -webkit-box;
  display: flex;
  width: min(100%, 1320px);
  margin-inline: auto;
  padding-inline: 20px;
}
.pc_section_service__title {
  width: 105px;
  font-size: 1.8rem;
  line-height: 1;
  font-weight: 700;
}
.pc_section_service .pc_section_service_nav {
  -webkit-box-flex: 1;
  flex: 1;
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
}
.pc_section_service .pc_section_service_nav__item {
  border-right: solid 1px #ccc;
  font-size: 1.4rem;
  line-height: 1.1;
  letter-spacing: 0;
  margin-bottom: 16px;
}
.pc_section_service .pc_section_service_nav__item--no-border {
  border-right: none;
}
.pc_section_service .pc_section_service_nav__item:last-child {
  border-right: none;
}
.pc_section_service .pc_section_service_nav__link {
  margin-inline: 16px;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}

/* SP サービス */
.sp_section_service {
  position: relative;
  margin-top: 64px;
  padding: 0 4% 44px;
}
.sp_section_service__heading {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
}
.sp_section_service .lnav__02 {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  margin-top: 24px;
  border-top: solid 1px #ccc;
  border-left: solid 1px #ccc;
}
.sp_section_service .lnav-list__01 {
  -webkit-box-flex: 0;
  flex: 0 0 50%;
  max-width: 50%;
  border-bottom: solid 1px #ccc;
  border-right: solid 1px #ccc;
}
.sp_section_service .lnav-anchor__01 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  min-height: 44px;
  font-size: 1.4rem;
  font-weight: 700;
  text-align: center;
}

/* PC フッター */
.footer-main {
  padding: 56px 0 60px;
  background-color: #0071be;
  color: #fff;
}
.footer-main a {
  color: #fff;
}
.footer-main__contents {
  display: -webkit-box;
  display: flex;
  width: min(100%, 1320px);
  margin-inline: auto;
  padding-inline: 20px;
}
.footer-main__logo-sns {
  position: relative;
  width: 200px;
  min-height: 90px;
}
.footer-main__sns {
  position: absolute;
  bottom: 0;
  left: 0;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
}
.footer-main__sns a {
  position: relative;
  padding: 1px 14px 0 0;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
}
.footer-main__sns a::after {
  content: "";
  position: absolute;
  inset: 2px -8px 0 auto;
  width: 8px;
  height: 8px;
  margin-block: auto;
  border-top: solid 2px var(--white-color);
  border-right: solid 2px var(--white-color);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.footer-main__sns-item {
  line-height: 1;
  margin-left: 16px;
  width: 32px;
  text-align: center;
}
.footer-main__sns-item a:hover {
  opacity: 0.7;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.footer-main__sns-item:first-child {
  margin-left: 0;
}
.footer-main__nav {
  -webkit-box-flex: 1;
  flex: 1;
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-pack: end;
  justify-content: flex-end;
}
.footer-main__nav-section {
  margin-left: 48px;
}
.footer-main__nav-section:first-child {
  margin-left: 0;
}
.footer-main__nav-title {
  font-size: 1.5rem;
  line-height: 1.1;
  font-weight: 700;
}
.footer-main__nav-list {
  font-size: 1.2rem;
  line-height: 1.1;
  margin-top: 16px;
}
.footer-main__nav-item {
  margin-top: 8px;
}
.footer-main__nav-item:first-child {
  margin-top: 0;
}
.footer-main__nav-link {
  display: block;
}

.footer-bottom {
  padding: 24px 0;
}
.footer-bottom__contents {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
  width: min(100%, 1320px);
  margin-inline: auto;
  padding-inline: 20px;
}
.footer-bottom__copyright {
  -webkit-box-flex: 1;
  flex: 1;
  font-size: 1.2rem;
  line-height: 1.1;
  letter-spacing: 0;
  display: block;
}

/* SP フッター */
.footer-wrap {
  background-color: #f4f4f4;
  padding-bottom: 0;
}
.footer-wrap .footer-nav {
  padding: 0 4%;
  background-color: #f4f4f4;
  border-top: 2px solid #e4e4e4;
}
.footer-wrap .footer-nav-anchor {
  display: block;
  padding: 15px 4%;
  font-size: 12px;
  font-size: 1.2rem;
}
.footer-wrap .footer-nav-list {
  border-bottom: 1px solid #e4e4e4;
}

.footer-wrap a.footer-nav-anchor:link,
.footer-wrap a.footer-nav-anchor:visited {
  color: var(--base-font-color);
}

.footer-wrap .footer-logo {
  text-align: center;
  margin-top: 20px;
  margin-bottom: 30px;
}

.footer-wrap .footer-logo img {
  width: 133px;
}

.footer-wrap .footer-copy {
  font-size: 10px;
  font-size: 1rem;
  background-color: #f4f4f4;
  padding: 20px 4%;
  text-align: center;
  line-height: 1.2;
}

/**** ドロワーメニュー ****/
.drawer_background_layer {
  display: none;
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  z-index: 1100;
  opacity: 0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.is-drawer-open .drawer_background_layer {
  display: block;
  opacity: 0.7;
}

.drawer {
  position: fixed;
  top: 0;
  right: -120%;
  width: 86.6%;
  height: 100%;
  color: var(--base-font-color);
  background-color: var(--white-color);
  visibility: hidden;
  opacity: 0;
  overflow-y: scroll;
  overflow-x: hidden;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  z-index: 1101;
}
.drawer .drawer-head {
  position: -webkit-sticky;
  position: sticky;
  inset: 0 auto auto 0;
  padding-bottom: 25px;
  border-bottom: 1px solid var(--drawer-line-color);
  background-color: var(--white-color);
  z-index: 2;
}
.drawer .drawer-head__hamburger {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
  justify-content: flex-end;
  height: 56px;
  padding-inline: 4%;
}
.drawer .drawer-head__search {
  padding-inline: 4%;
}
.drawer .drawer-head__search form {
  position: relative;
  width: 100%;
}
.drawer .drawer-head__search form input[type="text"] {
  position: relative;
  width: 100%;
  height: 44px;
  padding: 6px 32px 6px 12px;
  font-size: 1.2rem;
  border: solid 1px #bebebe;
  border-radius: 2px;
  background-color: var(--bg-gray-color);
  z-index: 0;
}
.drawer .drawer-head__search form button {
  position: absolute;
  inset: 0 12px 0 auto;
  width: 17px;
  height: 17px;
  margin-block: auto;
  background-color: transparent;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  z-index: 1;
  cursor: pointer;
}
.drawer__inner {
  width: 100%;
}
.drawer__title {
  padding-block: 14px;
  padding-inline: 7.692%;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  color: var(--white-color);
  background-color: var(--corporate-color);
}
.drawer .drawer_list a,
.drawer .drawer_list span {
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.drawer .drawer_list__item {
  position: relative;
  width: 100%;
  border-bottom: 1px solid var(--drawer-line-color);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.drawer .drawer_list__item.header-gnav-login {
  display: none;
}
body.login-status_logout .drawer .drawer_list__item.header-gnav-login {
  display: block;
}
.drawer .drawer_list__item > a,
.drawer .drawer_list__item > span {
  display: grid;
  padding-block: 20px;
  padding-inline: 7.692%;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  -webkit-transition: none;
  transition: none;
  cursor: pointer;
}
.drawer .drawer_list__item.has-child > a,
.drawer .drawer_list__item.has-child > span {
  grid-template: ". icon"/1fr 1em;
  -webkit-column-gap: 1em;
  -moz-column-gap: 1em;
  column-gap: 1em;
  -webkit-box-align: center;
  align-items: center;
}
.drawer .drawer_list__item.has-child > a::before,
.drawer .drawer_list__item.has-child > a::after,
.drawer .drawer_list__item.has-child > span::before,
.drawer .drawer_list__item.has-child > span::after {
  content: "";
  grid-area: icon;
  -webkit-border-after: 2px solid;
  border-block-end: 2px solid;
  border-color: var(--corporate-color);
  cursor: pointer;
}
.drawer .drawer_list__item.has-child > a::after,
.drawer .drawer_list__item.has-child > span::after {
  rotate: 90deg;
}
.drawer .drawer_list__item.has-child.is-open > a::after,
.drawer .drawer_list__item.has-child.is-open > span::after {
  opacity: 0;
}
.drawer .drawer_list__item.has-child.is-open .drawer_child_list {
  border-top: 1px solid var(--drawer-line-color);
}
.drawer .drawer_list__item.header-gnav-logout {
  display: none;
  /*display: -webkit-box;*/
  /*display: flex;*/
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
  width: 100%;
  height: 94px;
  padding-block: 16px;
  padding-inline: 7.692%;
}
body.login-status_login .drawer .drawer_list__item.header-gnav-logout {
  display: -webkit-box;
  display: flex;
}
.drawer .drawer_list__item .user-data-content__name {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  gap: 0 5px;
}
.drawer .drawer_list__item .user-data-content__name #header-gnav-username a {
  display: inline-block;
  max-width: 110px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.333;
  text-decoration: underline;
  text-underline-offset: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.drawer .drawer_list__item .user-data-content__name .san {
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  vertical-align: -2px;
}
.drawer .drawer_list__item .user-data-content__meta {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
  gap: 4px 8px;
  margin-top: 8px;
}
.drawer .drawer_list__item .user-data-content__meta .point {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
}
.drawer .drawer_list__item .user-data-content__meta .point #header-gnav-point {
  margin-left: 5px;
  font-size: 13px;
  pointer-events: none;
}
.drawer .drawer_list__item .user-data-content__meta .point .pt {
  font-size: 12px;
}
.drawer .drawer_list__item .user-data-content__meta .grade {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  gap: 0 5px;
}
.drawer
  .drawer_list__item
  .user-data-content__meta
  .grade
  #header-gnav-grade
  a {
  display: block;
  padding-bottom: 2px;
  font-size: 13px;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.drawer .drawer_list__item .logout-link {
  display: grid;
  place-items: center;
  width: 103px;
  height: 30px;
  padding: 0 !important;
  border: 1px solid var(--base-font-color);
  border-radius: 2px;
  font-size: 14px;
  font-weight: 700;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.drawer .drawer_list .drawer_child_list__item {
  display: grid;
  position: relative;
  width: 100%;
  border-bottom: 1px solid var(--drawer-line-color);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.drawer .drawer_list .drawer_child_list__item:last-child {
  border-bottom: none;
}
.drawer .drawer_list .drawer_child_list__item > a,
.drawer .drawer_list .drawer_child_list__item > span {
  display: block;
  padding-block: 16px;
  padding-inline: calc(14px + 7.692%) 7.692%;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1;
  -webkit-transition: none;
  transition: none;
  cursor: pointer;
}
.drawer .drawer_list .drawer_child_list__item.has-child > a,
.drawer .drawer_list .drawer_child_list__item.has-child > span {
  grid-template: ". icon"/1fr 1em;
  -webkit-column-gap: 1em;
  -moz-column-gap: 1em;
  column-gap: 1em;
  -webkit-box-align: center;
  align-items: center;
}
.drawer .drawer_list .drawer_child_list__item.has-child > a::before,
.drawer .drawer_list .drawer_child_list__item.has-child > a::after,
.drawer .drawer_list .drawer_child_list__item.has-child > span::before,
.drawer .drawer_list .drawer_child_list__item.has-child > span::after {
  content: "";
  grid-area: icon;
  -webkit-border-after: 2px solid;
  border-block-end: 2px solid;
  border-color: var(--corporate-color);
  cursor: pointer;
}
.drawer .drawer_list .drawer_child_list__item.has-child > a::after,
.drawer .drawer_list .drawer_child_list__item.has-child > span::after {
  rotate: 90deg;
}
.drawer .drawer_list .drawer_child_list__item.has-child.is-open > a::after,
.drawer .drawer_list .drawer_child_list__item.has-child.is-open > span::after {
  opacity: 0;
}
.drawer
  .drawer_list
  .drawer_child_list__item.has-child.is-open
  .drawer_grand_child_list {
  border-top: 1px solid var(--drawer-line-color);
}
.drawer .drawer_list .drawer_grand_child_list__item {
  display: grid;
  position: relative;
  width: 100%;
  border-bottom: 1px solid var(--drawer-line-color);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.drawer .drawer_list .drawer_grand_child_list__item:last-child {
  border-bottom: none;
}
.drawer .drawer_list .drawer_grand_child_list__item > a,
.drawer .drawer_list .drawer_grand_child_list__item > span {
  display: block;
  padding-block: 16px;
  padding-inline: calc(28px + 7.692%) 7.692%;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1;
  -webkit-transition: none;
  transition: none;
  cursor: pointer;
}

/* メニューオープン時
/* -------------- */
.is-drawer-open {
  position: fixed;
  width: 100%;
  height: 100%;
}
.is-drawer-open .drawer {
  right: 0;
  visibility: visible;
  opacity: 1;
}

/**** ハンバーガーメニュー ****/
.hamburger {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  gap: 7px 0;
  position: relative;
  right: -20px;
  width: 60px;
  margin-left: -20px;
  padding: 20px;
  cursor: pointer;
}
.hamburger .hamburger__bar {
  width: 22px;
  height: 2px;
  border-radius: 2px;
  background-color: var(--base-font-color);
  -webkit-transition: none;
  transition: none;
}

/* メニューオープン時
/* --------------*/
.is-drawer-open .hamburger {
  gap: 0;
  margin-block: 7px;
}

.is-drawer-open .hamburger__bar:nth-child(1),
.is-drawer-open .hamburger__bar:nth-child(3) {
  position: absolute;
  inset: 0;
  margin: auto;
}

.is-drawer-open .hamburger__bar:nth-child(1) {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.is-drawer-open .hamburger__bar:nth-child(2) {
  opacity: 0;
}

.is-drawer-open .hamburger__bar:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/* 新着ニュース 関連リンク*/
.top_news_list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  margin-top: 20px;
}
.top_news_list__item a {
  display: -webkit-box;
  display: flex;
  gap: 0 12px;
}
.top_news_list__item a .img {
  -webkit-box-flex: 0;
  flex: 0 0 35.398%;
  max-width: 35.398%;
  position: relative;
  border-radius: 2px;
  aspect-ratio: 3/2;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.top_news_list__item a .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.top_news_list__item a .meta {
  margin-top: 4px;
}
.top_news_list__item a .title {
  margin-top: calc((1em - 1lh) / 2);
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.3;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.top_news_list__item a .category {
  font-size: 1.2rem;
  color: var(--base-font-color);
}

/* ★ */
.top_news_list__item a .meta_bottom {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-align: baseline;
  align-items: baseline;
  margin-top: 2px;
  font-size: 1.2rem;
  color: var(--meta-font-color);
}
.top_news_list__item a .meta_bottom .datetime {
  font-family: "Roboto", sans-serif;
  font-style: normal;
  min-width: 2.5em;
  word-wrap: normal;
  position: relative;
  margin-right: 1.2em;
}
.top_news_list__item a .meta_bottom .datetime::after {
  content: "";
  position: absolute;
  inset: -1px -7px 0 auto;
  width: 1px;
  height: 10px;
  margin-block: auto;
  background-color: var(--meta-font-color);
}

.top_news_list__item a .meta_bottom:has(.tag:empty) .datetime::after {
  display: none;
}

.top_news_list__item a .meta_bottom:has(.pr) .datetime {
  margin-bottom: 2px;
}
.top_news_list__item a .meta_bottom .tag {
  position: relative;
}
.top_news_list__item a .meta_bottom .pr {
  min-width: 2.4em;
  word-wrap: normal;
  text-align: center;
}
.top_news_list__item a .meta_bottom:has(.pr) .tag {
  margin-right: 8px;
  margin-bottom: 4px;
}

.serial_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px 16px;
  margin-top: 20px;
}
.serial_list__item a {
  display: block;
}
.serial_list__item a .img {
  position: relative;
  border-radius: 2px;
  aspect-ratio: 3/2;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.serial_list__item a .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.serial_list__item a .category {
  margin-top: 8px;
  font-size: 1.2rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--base-font-color);
}
.serial_list__item a .title + .category {
  margin-top: 4px;
}
.serial_list__item a .title {
  margin-top: 2px;
  font-size: 1.6rem;
  line-height: 1.3;
  font-weight: 700;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.serial_list__item a .img + .title {
  margin-top: 12px;
}
.serial_list__item a .date {
  margin-top: 4px;
  font-family: "Roboto", sans-serif;
  font-style: normal;
  font-size: 1.2rem;
  color: var(--meta-font-color);
}
.serial_list__item a .title + .date {
  margin-top: 4px;
}

.feature_list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  margin-top: 20px;
}
.feature_list__item a {
  display: flex;
  gap: 0 12px;
}
.feature_list__item a .text_box {
  position: relative;
}
.feature_list__item a .text_box:has(.js-absolute) {
  padding-bottom: 20px;
}
.feature_list__item a .img {
  /* position: relative;
  border-radius: 2px;
  aspect-ratio: 3/2;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out; */
  -webkit-box-flex: 0;
  flex: 0 0 35.398%;
  max-width: 35.398%;
  position: relative;
  border-radius: 2px;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.feature_list__item a .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.feature_list__item a .title {
  margin-top: calc((1em - 1lh) / 2);
  font-size: 1.7rem;
  line-height: 1.3;
  font-weight: 700;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.feature_list__item a .pr.js-absolute {
  position: absolute;
  inset: auto auto 0 0;
  margin: 0;
}

.recommend_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px 16px;
  margin-top: 20px;
}
.recommend_list__item a {
  display: block;
}
.recommend_list__item a .img {
  position: relative;
  border-radius: 2px;
  aspect-ratio: 3/2;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.recommend_list__item a .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.recommend_list__item a .title {
  margin-top: 10px;
  font-size: 1.6rem;
  font-weight: 700;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}

.articles_list_01 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  margin-top: 20px;
}
.articles_list_01__item a {
  display: -webkit-box;
  display: flex;
  gap: 0 12px;
}
.articles_list_01__item a .img {
  -webkit-box-flex: 0;
  flex: 0 0 35.398%;
  max-width: 35.398%;
  position: relative;
  border-radius: 2px;
  aspect-ratio: 3/2;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.articles_list_01__item a .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

/* ★ */
.articles_list_01__item a .meta {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-align: baseline;
  align-items: baseline;
  margin-top: 4px;
}
.articles_list_01__item a .meta .date {
  font-family: "Roboto", sans-serif;
  font-style: normal;
  font-size: 1.2rem;
  color: var(--meta-font-color);
  margin-right: 1.2rem;
  position: relative;
}
.articles_list_01__item a .meta:has(.tag) .date::after {
  content: "";
  position: absolute;
  inset: -1px -7px 0 auto;
  width: 1px;
  height: 10px;
  margin-block: auto;
  background-color: var(--meta-font-color);
}
.articles_list_01__item a .meta .tag {
  position: relative;
  font-size: 1.2rem;
  color: var(--meta-font-color);
}

.articles_list_01__item a .meta:has(.pr) .tag {
  margin-right: 8px;
  margin-bottom: 0.5em;
}
.articles_list_01__item a .meta .pr {
  margin: 0;
}
.articles_list_01__item a .title {
  margin-top: calc((1em - 1lh) / 2);
  font-size: 1.7rem;
  line-height: 1.3;
  font-weight: 700;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.articles_list_01__item a .category {
  font-size: 1.2rem;
  color: var(--base-font-color);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.articles_list_01__item a .title + .category {
    margin-top: 4px;
}
.articles_list_02 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px 16px;
  margin-top: 24px;
}
.articles_list_02__item a {
  display: block;
}
.articles_list_02__item a .img {
  position: relative;
  width: 100%;
  border-radius: 2px;
  aspect-ratio: 3/2;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.articles_list_02__item a .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.articles_list_02__item a .title {
  margin-top: calc((1em - 1lh) / 2);
  padding-top: 12px;
  font-size: 1.6rem;
  font-weight: 700;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}

/* パンくず */
.breadcrumb {
  margin-top: 48px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--lighter-gray-color-2);
  overflow-x: scroll;
}
.breadcrumb + .pc_section_service {
  margin-top: 64px;
}
.breadcrumb__inner {
  padding-inline: 16px;
  overflow-x: scroll;
}
.breadcrumb .breadcrumb_list {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  padding-bottom: 3px;
}
.breadcrumb .breadcrumb_list__item {
  position: relative;
}
.breadcrumb .breadcrumb_list__item a {
  display: inline-block;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.breadcrumb .breadcrumb_list__item span {
  font-size: 1.2rem;
}
.breadcrumb .breadcrumb_list__item:not(:first-child) {
  margin-left: 20px;
}
.breadcrumb .breadcrumb_list__item:not(:first-child)::before {
  content: "＞";
  position: absolute;
  inset: 0 auto 0 -16px;
  height: 10px;
  margin-block: auto;
  font-size: 1rem;
}

/* 記事ページネーション */
.pagination {
  margin-top: 50px;
}
.pagination + .pagination {
  margin-top: 30px;
}
.pagination .pagination_list {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  gap: 0 11px;
}
.pagination .pagination_list__item a {
  display: grid;
  place-items: center;
  position: relative;
  width: 38px;
  height: 38px;
  border: 1px solid var(--corporate-color);
  border-radius: 4px;
  font-family: "Roboto", sans-serif;
  font-style: normal;
  font-size: 1.8rem;
  line-height: 1;
  color: var(--corporate-color);
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.pagination .pagination_list__item a.is-small {
  font-size: 1.4rem;
  letter-spacing: -0.02em;
}
.pagination .pagination_list__item.is-current a {
  color: var(--white-color);
  background-color: var(--corporate-color);
}
.pagination .pagination_list__item--prev a,
.pagination .pagination_list__item--next a {
  width: 28px !important;
  border-color: var(--gray-color);
  pointer-events: none;
}
.pagination .pagination_list__item--prev a {
  width: 40px;
}
.pagination .pagination_list__item--prev a::before {
  content: "";
  position: absolute;
  inset: 0 0 0 3px;
  width: 10px;
  height: 10px;
  margin: auto;
  border-top: 2px solid var(--gray-color);
  border-left: 2px solid var(--gray-color);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.pagination .pagination_list__item--next a {
  width: 40px;
}
.pagination .pagination_list__item--next a::before {
  content: "";
  position: absolute;
  inset: 0 3px 0 0;
  width: 10px;
  height: 10px;
  margin: auto;
  border-top: 2px solid var(--gray-color);
  border-right: 2px solid var(--gray-color);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.pagination .pagination_list__item--space {
  position: relative;
  width: 6px;
}
.pagination .pagination_list__item--space::before {
  content: "";
  position: absolute;
  inset: 0 0 0 auto;
  width: 2px;
  height: 2px;
  margin-block: auto;
  border-radius: 2px;
  background-color: var(--meta-font-color);
}
.pagination .pagination_list__item--space::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 2px;
  height: 2px;
  margin-block: auto;
  border-radius: 2px;
  background-color: var(--meta-font-color);
}
.pagination
  .pagination_list:not(:has(.pagination_list__item--first.is-current))
  .pagination_list__item--prev
  a {
  border-color: var(--corporate-color);
  background-color: var(--white-color);
  pointer-events: unset;
}
.pagination
  .pagination_list:not(:has(.pagination_list__item--first.is-current))
  .pagination_list__item--prev
  a::before {
  border-color: var(--corporate-color);
}
.pagination
  .pagination_list:not(:has(.pagination_list__item--last.is-current))
  .pagination_list__item--next
  a {
  border-color: var(--corporate-color);
  background-color: var(--white-color);
  pointer-events: unset;
}
.pagination
  .pagination_list:not(:has(.pagination_list__item--last.is-current))
  .pagination_list__item--next
  a::before {
  border-color: var(--corporate-color);
}
.pagination .current {
  color: var(--corporate-color);
  border-color: var(--corporate-color);
}

/**** タイトル ****/
.section_title {
  font-size: 2rem;
}
.section_title .section_title_link {
  position: relative;
  color: inherit;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.section_title .section_title_link::after {
  content: "";
  position: absolute;
  inset: 3px -20px 0 auto;
  width: 10px;
  height: 10px;
  margin-block: auto;
  border-top: 2px solid var(--base-font-color);
  border-right: 2px solid var(--base-font-color);
  background-color: transparent;
  -webkit-transition: width 0.25s ease-in-out;
  transition: width 0.25s ease-in-out;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.side_title {
  font-size: 2rem;
}
.side_title--large {
  font-size: 2rem;
}

.tour_page_title {
  margin: 12px 0 0;
  font-size: 1.6rem;
  font-weight: 700;
}

/**** ボタン ****/
/* ヘッダーボタン */
.button {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 48px;
  background: #fff;
  border: solid 1px var(--corporate-color);
  border-radius: 4px;
  box-shadow: var(--basic-box-shadow);
  padding: 0 14px;
  font-size: 1.3rem;
  line-height: 1.1;
  color: var(--corporate-color);
  background-color: var(--white-color);
  text-align: center;
  -webkit-transition: color 0.25s ease-in-out,
    background-color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out, background-color 0.25s ease-in-out;
}

/* リンクボタン */
.link_button a,
.side_link_button a {
  display: grid;
  place-items: center;
  width: min(100%, 412px);
  height: 44px;
  margin-inline: auto;
  border: solid 1px var(--gray-color);
  border-radius: 4px;
  font-size: 1.4rem;
  font-weight: 700;
  background-color: var(--white-color);
  box-shadow: var(--basic-box-shadow);
  -webkit-transition: color 0.25s ease-in-out,
    background-color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out, background-color 0.25s ease-in-out;
}

.side_link_button a {
  height: 44px;
  font-size: 1.4rem;
}

/** タブ **/
.tab,
.side_tab {
  display: -webkit-box;
  display: flex;
  width: 100%;
  border-bottom: solid 1px var(--lighter-gray-color);
}
.tab li.tab_item,
.side_tab li.tab_item {
  height: 42px;
}
.tab li.tab_item a,
.tab li.tab_item span,
.side_tab li.tab_item a,
.side_tab li.tab_item span {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  position: relative;
  width: 100%;
  height: 100%;
  font-size: 1.5rem;
  color: var(--base-font-color);
  cursor: pointer;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.tab li.tab_item.current a,
.tab li.tab_item.current span,
.side_tab li.tab_item.current a,
.side_tab li.tab_item.current span {
  color: var(--corporate-color);
  font-weight: 700;
}
.tab li.tab_item.current a::after,
.tab li.tab_item.current span::after,
.side_tab li.tab_item.current a::after,
.side_tab li.tab_item.current span::after {
  content: "";
  position: absolute;
  inset: auto 0 -1px;
  width: 100%;
  height: 3px;
  background-color: var(--corporate-color);
}

.side_tab li.tab_item a,
.side_tab li.tab_item span {
  font-size: 1.5rem !important;
}

[data-tab-content] {
  display: none;
}
[data-tab-content].current {
  display: block;
}

/**** ページ上部 リーダーズボード ****/
/* pc_live_score */
.pc_live_score {
  display: -webkit-box;
  display: flex;
  position: relative;
  height: 54px;
  border: 1px solid var(--lighter-gray-color);
  border-radius: 27px;
  overflow: hidden;
}
.pc_live_score__title {
  flex-shrink: 0;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-block-size: 0;
}
.pc_live_score__title a {
  display: grid;
  grid-template-columns: 54px 1fr;
  -webkit-box-align: center;
  align-items: center;
  position: relative;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.pc_live_score__title .badge {
  display: grid;
  place-content: center;
  width: 48px;
  height: 48px;
  margin: 2px;
  border-radius: 50%;
  font-size: 1.1rem;
  line-height: 1.1;
  text-align: center;
  color: var(--white-color);
  background-color: #081e68;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.pc_live_score__title .tour_title {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  position: relative;
  width: 125px;
  height: 52px;
  padding-inline: 6px 26px;
  border-right: 1px solid var(--lighter-gray-color);
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.25;
}
.pc_live_score__title .tour_title span {
  max-height: 46px;
  color: var(--base-font-color);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
@media screen and (min-width: 768px) {
  .pc_live_score__title a:hover {
    text-underline-offset: unset;
    text-decoration: underline;
  }
  .pc_live_score__title .tour_title span:hover {
    /* text-decoration: underline; */
  }
}
.pc_live_score__title .tour_title::after {
  content: "";
  position: absolute;
  inset: 0 15px 0 auto;
  width: 7px;
  height: 7px;
  margin-block: auto;
  border-bottom: 1px solid var(--base-font-color);
  border-right: 1px solid var(--base-font-color);
  background-color: transparent;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: border-color 0.25s ease-in-out;
  transition: border-color 0.25s ease-in-out;
}
.pc_live_score__result {
  -webkit-box-flex: 1;
  flex-grow: 1;
  position: relative;
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.pc_live_score__result::-webkit-scrollbar {
  display: none;
}
.pc_live_score .pc_live_score_list {
  display: -webkit-box;
  display: flex;
  gap: 0 1px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  height: 52px;
  padding-right: 68px;
}
.pc_live_score .pc_live_score_list * {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.pc_live_score .pc_live_score_list__item {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  height: 100%;
  padding-inline: 11px;
  border-right: 1px solid var(--lighter-gray-color);
}
.pc_live_score .pc_live_score_list__item:last-child {
  border-right: none;
}
.pc_live_score .pc_live_score_list__item .num {
  font-family: var(--font-family-number);
  font-size: 1.4rem;
  /* font-weight: 900; */
  font-weight: 700;
  color: #0b4873;
}
.pc_live_score .pc_live_score_list__item .num::first-letter {
  font-size: 1.8rem;
}
.pc_live_score .pc_live_score_list__item .img {
  flex-shrink: 0;
  width: 38px;
  margin-left: 6px;
  border-radius: 50%;
  aspect-ratio: 1/1;
}
.pc_live_score .pc_live_score_list__item .text {
  flex-shrink: 0;
  margin-left: 4px;
}
.pc_live_score .pc_live_score_list__item .text .score {
  font-size: 1.4rem;
  font-weight: 700;
  color: #0b4873;
}
.pc_live_score .pc_live_score_list__item .text .name {
  margin-top: 0px;
  font-size: 1.2rem;
  white-space: nowrap;
}
.pc_live_score .pc_live_score_arrows {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  gap: 0 2px;
  position: absolute;
  inset: 0 0 0 auto;
  width: 68px;
  height: 100%;
  border-left: 1px solid var(--lighter-gray-color);
  background-color: var(--white-color);
  z-index: 2;
}
.pc_live_score .pc_live_score_arrows .arrow_prev,
.pc_live_score .pc_live_score_arrows .arrow_next {
  position: relative;
  width: 9px;
  height: 9px;
  margin: 4px;
  background-color: transparent;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  cursor: pointer;
  z-index: 0;
}
.pc_live_score .pc_live_score_arrows .arrow_prev::before,
.pc_live_score .pc_live_score_arrows .arrow_next::before {
  content: "";
  position: absolute;
  inset: -4px;
  z-index: 1;
}
.pc_live_score .pc_live_score_arrows .arrow_prev {
  border-top: 1px solid var(--lighter-gray-color);
  border-left: 1px solid var(--lighter-gray-color);
}
.pc_live_score .pc_live_score_arrows .arrow_prev.is-active {
  border-top: 1px solid #0b4873;
  border-left: 1px solid #0b4873;
}
.pc_live_score .pc_live_score_arrows .arrow_next {
  border-bottom: 1px solid var(--lighter-gray-color);
  border-right: 1px solid var(--lighter-gray-color);
}
.pc_live_score .pc_live_score_arrows .arrow_next.is-active {
  border-bottom: 1px solid #0b4873;
  border-right: 1px solid #0b4873;
}

/* sp_live_score */
.sp_live_score {
  display: -webkit-box;
  display: flex;
  margin-top: 16px;
  margin-inline: -16px;
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
}
.sp_live_score__contents a {
  display: block;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  height: 72px;
}
.sp_live_score__inner {
  display: -webkit-box;
  display: flex;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  height: 100%;
  margin-inline: 10px;
  border: 1px solid var(--lighter-gray-color);
  border-radius: 36px;
}
.sp_live_score__title {
  flex-shrink: 0;
  display: grid;
  grid-template-columns: 70px 1fr;
  -webkit-box-align: center;
  align-items: center;
  position: relative;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.sp_live_score__title .badge {
  display: grid;
  place-content: center;
  width: 62px;
  height: 62px;
  margin: 4px;
  border-radius: 50%;
  font-size: 1.1rem;
  line-height: 1.1;
  text-align: center;
  color: var(--white-color);
  background-color: #081e68;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.sp_live_score__title .tour_title {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  position: relative;
  height: 70px;
  width: 96px;
  padding-inline: 6px 26px;
  border-right: 1px solid var(--lighter-gray-color);
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.sp_live_score__title .tour_title span {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  max-height: 62px;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.25;
  color: var(--base-font-color);
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.sp_live_score__title .tour_title::after {
  content: "";
  position: absolute;
  inset: 0 15px 0 auto;
  width: 7px;
  height: 7px;
  margin-block: auto;
  border-bottom: 1px solid var(--base-font-color);
  border-right: 1px solid var(--base-font-color);
  background-color: transparent;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: border-color 0.25s ease-in-out;
  transition: border-color 0.25s ease-in-out;
}
.sp_live_score__result {
  position: relative;
}
.sp_live_score .sp_live_score_list {
  display: -webkit-box;
  display: flex;
  gap: 0 1px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  height: 70px;
  padding-right: 24px;
}
.sp_live_score .sp_live_score_list__item {
  margin-left: 28px;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  -webkit-box-pack: center;
  justify-content: center;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  height: 100%;
  gap: 4px;
  padding-top: 2px;
}
.sp_live_score .sp_live_score_list__item:first-child {
  margin-left: 24px;
}
.sp_live_score .sp_live_score_list__item .img-wrap {
  position: relative;
  width: 56px;
  height: 40px;
}
.sp_live_score .sp_live_score_list__item .img {
  flex-shrink: 0;
  width: 40px;
  border-radius: 50%;
  aspect-ratio: 1/1;
}
.sp_live_score .sp_live_score_list__item .score {
  display: grid;
  place-content: center;
  position: absolute;
  inset: 0 0 auto 36px;
  width: 24px;
  height: 24px;
  border: 1px solid var(--white-color);
  border-radius: 50%;
  font-size: 1rem;
  font-weight: 700;
  color: var(--white-color);
  background-color: #081e68;
}
.sp_live_score .sp_live_score_list__item .text {
  flex-shrink: 0;
  font-size: 1rem;
  position: relative;
  text-align: center;
}
.sp_live_score .sp_live_score_list__item .text .num {
  font-family: var(--font-family-number);
  font-size: 1.4rem;
  /* font-weight: 900; */
  font-weight: 700;
  color: #081e68;
  position: absolute;
  top: -45px;
  left: -15px;
  text-shadow: 2px 1px #ffffff;
  font-size: 1rem;
}
.sp_live_score .sp_live_score_list__item .text .num::first-letter {
  font-size: 1.4rem;
}
.sp_live_score .sp_live_score_list__item .text .name {
  font-size: 1rem;
  position: relative;
  left: -7px;
}

.tour_page_title ~ .sp_live_score {
  margin-top: 12px;
}

/**** ユーザーデータ ****/
.user-data {
  display: none;
  /*position: absolute;*/
  position: relative;
  inset: 0 0 auto;
  font-size: 14px;
  width: 160px;
  height: auto;
  min-height: 48px;
  margin: 0;
  padding: 0;
  background-color: #fff;
  border: solid 1px var(--corporate-color);
  border-radius: 4px;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
  z-index: 10;
}
body.login-status_login .user-data {
  display: block;
}
.user-data a {
  display: block;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.user-data__item {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  width: 100%;
  height: 46px;
  margin-left: 0;
  line-height: 1;
  cursor: pointer;
}
.user-data__item dt {
  padding-right: 6px;
}
.user-data__item dd {
  padding-top: 2px;
}
.user-data__item #user-data-name {
  display: inline-block;
  max-width: 94px;
  font-size: 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.user-data__item .san {
  font-size: 10px;
  display: inline;
  padding-left: 0.2em;
}
.user-data__item .item--point {
  font-size: 13px;
  line-height: 1.8;
}
.user-data__sub-menu {
  display: none;
  padding-bottom: 4px;
}
.user-data__sub-menu #user-data-grade-text {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  height: 24px;
  line-height: 27px;
  margin: 4px 10px 0;
  background: #f4f4f4;
  border-radius: 4px;
  text-align: center;
}
.user-data__sub-menu .sub-menu--handy a {
  padding: 8px 10px;
  text-align: center;
  /*word-break: break-all;*/
  word-break: keep-all;
}
.user-data__sub-menu a {
  display: block;
}
.user-data__sub-menu .sub-menu--contents-list {
  line-height: 1.4;
}
.user-data__sub-menu .sub-menu--contents-list::before,
.user-data__sub-menu .sub-menu--contents-list::after {
  content: "";
  display: block;
  width: auto;
  height: 1px;
  margin-left: 10px;
  margin-right: 10px;
  background: #dededf;
}
.user-data__sub-menu .sub-menu--contents-list::before {
  margin-top: 0;
  margin-bottom: 4px;
}
.user-data__sub-menu .sub-menu--contents-list::after {
  margin-top: 12px;
  margin-bottom: 10px;
}
.user-data__sub-menu .sub-menu--contents-list a {
  padding: 8px 10px;
}
.user-data__sub-menu .sub-menu--contents-list dl {
  margin: 0;
}
.user-data__sub-menu .sub-menu--contents-list dl:first-of-type {
  margin-bottom: 8px;
}
.user-data__sub-menu .sub-menu--contents-list dt {
  font-weight: 700;
  padding: 0 10px;
  margin-bottom: 4px;
}
.user-data__sub-menu .sub-menu--contents-list dd a {
  padding: 0px 10px;
}
.user-data__sub-menu .sub-menu--logout a {
  padding: 0 10px 8px;
  text-align: left;
}

.user-data__item .user-data__item .user-data__item .item--point {
  padding-top: 4px;
}

.user-data__item .item--point .user-data__item .item--point .pt {
  font-size: 10px;
  padding-left: 0.2em;
}

/**** パーツ ****/
/* PR */
.pr {
  display: inline-block;
  margin-left: 6px;
  padding: 2px 3px 1px;
  border: 1px solid var(--meta-font-color);
  border-radius: 2px;
  font-family: var(--font-family-number);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
  color: var(--meta-font-color);
  vertical-align: middle;
  margin-bottom: 2px;
}

/* ページトップ */
.pagetop {
  display: none;
  position: fixed;
  bottom: 0px;
  right: 0;
  padding: 16px;
  z-index: 1050;
  -webkit-transition-property: display, opacity;
  transition-property: display, opacity;
  transition-behavior: allow-discrete;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
@starting-style {
  .pagetop {
    opacity: 0;
  }
}
.pagetop.js-absolute {
  position: absolute;
}
.pagetop.is-hidden {
  opacity: 0;
  visibility: hidden;
}
.pagetop__link {
  display: block;
  position: relative;
  width: 50px;
  height: 50px;
}
.pagetop__link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: rgba(102, 102, 102, 0.8);
}
.pagetop__link::after {
  content: "";
  position: absolute;
  top: 20px;
  left: 18px;
  width: 14px;
  height: 14px;
  border-top: 4px solid #fff;
  border-right: 4px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.pagetop__link svg {
  display: none;
}

/**** リンクコピー ****/
.js-copy-link {
  position: relative;
}
.js-copy-link.js-copy-complete {
  pointer-events: none;
}
.js-copy-link.js-copy-complete::before {
  content: "URLをコピーしました";
  position: absolute;
  inset: 30px 0 auto auto;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: auto;
  padding: 3px 8px 4px;
  border: 1px solid var(--lighter-gray-color);
  border-radius: 4px;
  font-size: 1.3rem;
  font-weight: 700;
  background-color: var(--white-color);
  color: var(--meta-font-color);
  box-shadow: var(--basic-box-shadow);
  opacity: 0;
  -webkit-animation: copy_complete 0.8s linear 0.1s 1;
  animation: copy_complete 0.8s linear 0.1s 1;
}

@-webkit-keyframes copy_complete {
  20% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes copy_complete {
  20% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/**** 広告 ****/
/* SP広告 */
.sp_banner {
  margin-top: 48px;
  /* margin-bottom: 48px; */
}
.sp_banner a {
  max-width: 300px;
}
.sp_banner * {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.sp_banner__text {
  display: block;
  margin-bottom: 14px;
  font-size: 1.2rem;
  line-height: 1;
  text-align: center;
  color: var(--meta-font-color);
}
.sp_banner--top {
  margin-block: 0 48px;
}
.sp_banner + p {
  margin-top: 32px !important;
}

/* PC広告 */
.top_banner * {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.top_banner img {
  width: auto;
}
.top_banner + * {
  margin-top: 48px;
}
.top_banner--01 {
  margin-block: 48px;
}
.top_banner--01 img {
  width: 728px;
  max-width: 100%;
}
.top_banner--02 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  gap: 0 48px;
  margin-block: 48px;
}
/* TODO 當間確認*/
.top_banner--02 a {
  display: block;
  width: fit-content;
}
.top_banner--03 {
  margin-block: 48px;
}
.top_banner--03 a {
  display: block;
  width: fit-content;
  margin: 0 auto;
}
/* TODO 當間確認 end*/
.top_banner--04 {
  margin-block: 48px;
}

.top_banner_wide {
  margin-block: 48px;
}
.top_banner_wide * {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}

.side_banner {
  margin-block: 48px;
}
.side_banner * {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.side_banner + * {
  margin-top: 48px;
}
.side_banner--top {
  margin-block: 0 48px;
}

/* tour_article広告 */
.article_banner a {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.article_banner--01 {
  margin-top: 48px;
}
.article_banner--02 {
  margin-top: 48px;
  margin-bottom: 48px;
}
.article_banner--03 {
  margin-top: 48px;
}
.article_banner--04 {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  gap: 0 48px;
  margin-top: 48px;
}
.article_banner--04 a {
  width: min(100%, 300px);
  margin: 0;
}

/**** トップページ パーツ ****/
/* 緊急告知 */
.top_alert {
  width: 92%;
  margin-top: 16px;
  margin-inline: auto;
}
.top_alert__contents {
  width: 100%;
  border: 1px solid #dfdfdf;
  border-radius: 4px;
}
.top_alert .top_alert_item {
  min-height: 46px;
  padding-block: 12px;
  padding-inline: 15px;
}
.top_alert .top_alert_link {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  position: relative;
  width: 100%;
  /* height: 100%; */
  padding-left: 25px;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--base-font-color);
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.top_alert .top_alert_link::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 15px;
  height: 15px;
  margin-block: auto;
  background: url(/layout/common/images/icon_alert.svg) no-repeat center center;
  background-size: 15px 15px;
  vertical-align: middle;
}

/* タグ */
.tags {
  margin-block: 12px;
  margin-inline: -16px;
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
}
.tags .tags_list {
  display: -webkit-box;
  display: flex;
  gap: 0 14px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 100%;
  padding-block: 10px 12px;
  padding-inline: 16px;
  background-color: var(--bg-gray-color);
}
.tags .tags_list li a {
  font-size: 1.3rem;
  line-height: 1;
  color: var(--base-font-color);
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}

/**** トップページ ****/
/* メインコンテンツ */
.top_main_articles--tour {
  margin-top: 24px;
}
.top_main_articles{
  margin-top: ;
}
@media screen and (max-width: 768px) {
  .top_main_articles--tour {
    margin-top: 0px;
  }
}
.top_main_articles .top_main_list {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  gap: 20px;
}
.top_main_articles .top_main_list__item a {
  display: -webkit-box;
  display: flex;
  gap: 0 12px;
}
.top_main_articles .top_main_list__item a .img {
  -webkit-box-flex: 0;
  flex: 0 0 35.398%;
  max-width: 35.398%;
  position: relative;
  border-radius: 2px;
  aspect-ratio: 3/2;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.top_main_articles .top_main_list__item a .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
.top_main_articles .top_main_list__item a .meta {
  margin-top: 4px;
}
.top_main_articles .top_main_list__item a .title {
  margin-top: calc((1em - 1lh) / 2);
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.3;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.top_main_articles .top_main_list__item a .category {
  font-size: 1.2rem;
  color: var(--base-font-color);
}

/* ★ */
.top_main_articles .top_main_list__item a .meta_bottom {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-align: baseline;
  align-items: baseline;
  margin-top: 2px;
  font-size: 1.2rem;
  color: var(--meta-font-color);
}
.top_main_articles .top_main_list__item a .meta_bottom .datetime {
  font-family: "Roboto", sans-serif;
  font-style: normal;
  min-width: 2.5em;
  margin-right: 1.2em;
  position: relative;
}
.top_main_articles .top_main_list__item a .meta_bottom .datetime:empty {
  display: none;
}
.top_main_articles .top_main_list__item a .meta_bottom:has(.pr) .datetime {
  margin-bottom: 2px;
}
.top_main_articles .top_main_list__item a .meta_bottom .datetime::after {
  content: "";
  position: absolute;
  inset: -1px -7px 0 auto;
  width: 1px;
  height: 10px;
  margin-block: auto;
  background-color: var(--meta-font-color);
}
.top_main_articles .top_main_list__item a .meta_bottom:has(.tag:empty) .datetime::after {
  display: none;
}

.top_main_articles .top_main_list__item a .meta_bottom .tag {
  position: relative;
}
.top_main_articles .top_main_list__item a .meta_bottom:has(.pr) .tag {
  margin-right: 8px;
  margin-bottom: 4px;
}
.top_main_articles .top_main_list__item a .meta_bottom .pr {
  margin-left: 0px;
  word-wrap: normal;
  text-align: center;
}
.top_main_articles .top_main_list__item a .meta_bottom .tag .pr {
  margin-left: 6px;
}
.top_main_articles .top_main_list__item:first-child {
  margin-inline: -16px;
  margin-bottom: 8px;
}
.top_main_articles .top_main_list__item:first-child a {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  gap: 16px 0;
}
.top_main_articles .top_main_list__item:first-child a .img:first-child {
  border-radius: 0px;
}
.top_main_articles .top_main_list__item:first-child a .img {
  width: 100%;
  max-width: 100%;
  border-radius: 2px;
  overflow: hidden;
}
.top_main_articles .top_main_list__item:first-child a .img img {
  -webkit-transition: -webkit-transform 0.25s ease-in-out;
  transition: -webkit-transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
}
.top_main_articles .top_main_list__item:first-child a .text_box {
  padding-inline: 16px;
}
.top_main_articles .top_main_list__item:first-child a .title {
  font-size: 2rem;
}
.top_main_articles .top_main_list__item:first-child a .meta {
  margin-top: 8px;
}
.top_main_articles .top_main_list__item:first-child a .meta_bottom {
  margin-top: 2px;
}
.top_main_articles .top_main_list__item:first-child a .text {
  margin-top: 4px;
  font-size: 1.4rem;
  font-size: 1.6rem;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.top_main_articles .top_main_list__item:not(:first-child) a .text {
  display: none;
}

/* 新着ニュース */
.top_news {
  margin-top: 48px;
}
.top_news .link_button {
  margin-top: 28px;
}

/* フォトギャラリー */
.top_photo_gallery {
  margin-top: 48px;
}
.top_photo_gallery .top_photo_gallery_tab {
  margin-top: 12px;
}
.top_photo_gallery .top_photo_gallery_tab .tab_item {
  -webkit-box-flex: 0;
  flex: 0 0 20%;
  max-width: 20%;
}
.top_photo_gallery .top_photo_gallery_panel {
  display: none;
}
.top_photo_gallery .top_photo_gallery_panel.current {
  display: block;
}
.top_photo_gallery .top_photo_gallery_list {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  margin-top: 16px;
}
.top_photo_gallery .top_photo_gallery_list .gallery-row {
  display: -webkit-box;
  display: flex;
  width: 100%;
}
.top_photo_gallery .top_photo_gallery_list a {
  display: block;
  -webkit-box-flex: 1;
  flex-grow: 1;
  position: relative;
  height: 100px;
  max-width: 200px;
  overflow: hidden;
  margin: 2px;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.top_photo_gallery .top_photo_gallery_list img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
.top_photo_gallery .link_button {
  margin-top: 28px;
}

/* おすすめギア */
.top_recommend_gear {
  margin-top: 48px;
}
.top_recommend_gear .recommend_gear_wrap {
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
  margin-inline: -16px;
}
.top_recommend_gear .recommend_gear_list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
  width: 664px;
  margin-top: 24px;
  padding-inline: 16px;
  padding-bottom: 6px;
}
.top_recommend_gear #piano_recommend_gear div.cx-flex-module {
  padding: 0 16px;
}
.top_recommend_gear #piano_recommend_gear a.cx-item,
.top_recommend_gear .recommend_gear_list__item a {
  display: flex;
  flex-direction: column;
}
.top_recommend_gear #piano_recommend_gear a.cx-item:hover {
  text-decoration: underline;
}
.top_recommend_gear #piano_recommend_gear a.cx-item div.cximg,
.top_recommend_gear .recommend_gear_list__item a .img {
  position: relative;
  border-radius: 2px;
  aspect-ratio: 1/1;
  overflow: hidden;
  z-index: 0;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
  background: #efefef;
}
.top_recommend_gear #piano_recommend_gear a.cx-item div.cximg::after,
.top_recommend_gear .recommend_gear_list__item a .img::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: -webkit-radial-gradient(#fff 30%, #f4f4f4 65%);
  background: radial-gradient(#fff 30%, #f4f4f4 65%);
  z-index: 1;
}
.top_recommend_gear #piano_recommend_gear a.cx-item div.cximg img,
.top_recommend_gear .recommend_gear_list__item a .img img {
  position: absolute;
  inset: 0;
  width: 90%;
  -o-object-fit: cover;
  object-fit: cover;
  mix-blend-mode: multiply;
  z-index: 2;
  margin: 5%;
  background: unset;
}
.top_recommend_gear .recommend_gear_list__item a .title {
  margin-top: 4px;
  font-size: 1.3rem;
  /* font-weight: 700; */
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
  order: 2;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.top_recommend_gear #piano_recommend_gear a.cx-item h3,
.top_recommend_gear .recommend_gear_list__item a .text {
  margin-top: 12px;
  font-size: 1.3rem;
  font-weight: 700;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
  order: 1;
}
.top_recommend_gear #piano_recommend_gear a.cx-item h3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.top_recommend_gear .link_button {
  margin-top: 28px;
}

/* 連載コーナー */
.top_serial {
  margin-top: 48px;
}

/* おすすめ動画 */
.top_movie {
  margin-top: 48px;
}
.top_movie .movie_list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  margin-top: 20px;
}
.top_movie .movie_list__item .mv {
  position: relative;
  aspect-ratio: 16/9;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
  border-radius: 2px;
}
.top_movie .movie_list__item iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.top_movie .movie_list__item .title {
  margin-top: 12px;
  font-size: 1.7rem;
  line-height: 1.3;
  font-weight: 700;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.top_movie .movie_list__item .title {
  -webkit-line-clamp: 2;
}
.top_movie .movie_list__item .mv:not(:has(iFrame)):before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml,%3Csvg enable-background='new 0 0 512 512' id='Layer_1' version='1.1' viewBox='0 0 512 512' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%3E%3Cpath d='M255.7,446.3c-53.3,0.3-106.6-0.4-159.8-3.3c-17.3-1-34.6-2.5-50.3-11c-10.5-5.7-18.6-13.6-23.7-24.8 C13.3,388.6,10.6,369,9,349c-3.4-41.3-3.6-82.6-1.8-123.8c0.9-21.9,1.6-44,6.8-65.5c2-8.4,4.9-16.6,8.8-24.4 c9.2-18.3,25.2-27.4,44.5-31.2c16.2-3.2,32.8-3.1,49.3-3.8c55.9-2.3,111.9-3.5,167.9-2.9c43.1,0.5,86.3,1.6,129.4,3.8 c13.3,0.7,26.7,0.9,39.4,5.6c17.2,6.4,30,17.2,36.9,34.7c6.7,16.8,9.3,34.2,10.7,52.1c3.9,48.6,4,97.2,0.8,145.8 c-1.1,16.4-2.2,32.8-6.5,48.9c-9.7,37-32.8,51.5-66.7,53.8c-36.2,2.4-72.5,3.7-108.8,4.2C298.4,446.5,277,446.3,255.7,446.3z M203.2,344c48.4-26.5,96.2-52.7,144.8-79.3c-48.7-26.7-96.5-52.8-144.8-79.3C203.2,238.7,203.2,291,203.2,344z' fill='%23DD2C28'/%3E%3Cpath d='M203.2,344c0-53,0-105.3,0-158.5c48.3,26.4,96.1,52.6,144.8,79.3C299.4,291.4,251.6,317.5,203.2,344z' fill='%23FEFDFD'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 20%;
  background-position: center;
  cursor: pointer;
}
.top_movie .movie_list__item .mv:not(:has(iFrame)):hover:before {
  opacity: 0.7;
}
.top_movie .movie_list__item .mv img {
  margin-top: -9%;
  cursor: pointer;
}

/* BRUDER */
.top_bruder {
  margin-top: 48px;
  padding-block: 40px;
  background-color: var(--bg-gray-color);
  box-shadow: 0 0 0 100vmax var(--bg-gray-color);
  -webkit-clip-path: inset(0 -100vmax);
  clip-path: inset(0 -100vmax);
}
.top_bruder__title {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  width: 180px;
  margin: 0 auto;
}
.top_bruder .bruder_list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  margin-top: 24px;
}
.top_bruder .bruder_list__item a {
  /* display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 0 12px; */
  display: flex;
  gap: 0 12px;
}
.top_bruder .bruder_list__item a .img {
  /* position: relative;
  border-radius: 2px;
  aspect-ratio: 3/2;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out; */
  -webkit-box-flex: 0;
  flex: 0 0 35.398%;
  max-width: 35.398%;
  position: relative;
  border-radius: 2px;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.top_bruder .bruder_list__item a .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.top_bruder .bruder_list__item a .text_box {
  position: relative;
}
.top_bruder .bruder_list__item a .text_box .pr {
  margin: 0;
}
.top_bruder .bruder_list__item a .text_box:has(.js-absolute) {
  padding-bottom: 20px;
}
.top_bruder .bruder_list__item a .category {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 1px 5px 2px;
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--white-color);
  background-color: var(--bluder-category-color);
}
.top_bruder .bruder_list__item a .title {
  position: relative;
  margin-top: 4px;
  font-size: 1.7rem;
  line-height: 1.3;
  font-weight: 700;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.top_bruder .bruder_list__item a .pr.js-absolute {
  position: absolute;
  inset: auto auto 0 0;
  margin: 0;
}
.top_bruder .link_button {
  margin-top: 28px;
}

/* 特集記事 */
.top_feature {
  margin-top: 48px;
}
.top_feature .link_button {
  margin-top: 28px;
}
/* こちらもおすすめ */
.recommend_articles {
  margin-top: 48px;
}

/**** ツアートップ ****/
/* 新着ニュース */
.tour_articles {
  margin-top: 48px;
}
.tour_articles .tour_articles_tab {
  margin-top: 12px;
}
.tour_articles .tour_articles_tab .tab_item {
  -webkit-box-flex: 0;
  flex: 0 0 20%;
  max-width: 20%;
}
.tour_articles .link_button {
  margin-top: 28px;
}

/* 世界ランキング */
.tour_world_ranking {
  margin-top: 48px;
}
.tour_world_ranking .tour_world_ranking_tab {
  margin-top: 8px;
}
.tour_world_ranking .tour_world_ranking_tab .tab_item {
  -webkit-box-flex: 0;
  flex: 0 0 50%;
  max-width: 50%;
}
.tour_world_ranking .world_ranking_title {
  font-size: 1.8rem;
  font-weight: 700;
}
.tour_world_ranking .world_ranking_list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  margin-top: 18px;
}
.tour_world_ranking .world_ranking_list__item {
  border-bottom: solid 1px var(--lighter-gray-color);
}
.tour_world_ranking .world_ranking_list__item:not(:last-child) {
  border-right: none;
}
.tour_world_ranking .world_ranking_list__item:first-child {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
.tour_world_ranking .world_ranking_list__item:last-child {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;

  border-bottom: none;
}
.tour_world_ranking .world_ranking_list__item a {
  display: -webkit-box;
  display: flex;
  position: relative;
  width: 100%;
  height: 100%;
  padding: 12px 0;

  align-items: center;
}
.tour_world_ranking .world_ranking_list__item:first-child a {
  padding: 0 0 12px;
}
.tour_world_ranking .world_ranking_list__item .num {
  font-family: "Roboto", sans-serif;
  font-style: normal;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
}
.tour_world_ranking .world_ranking_list__item .img {
  position: relative;
  width: 50px;
  height: 50px;
  margin-left: 10px;
  border-radius: 50%;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.tour_world_ranking .world_ranking_list__item .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
.tour_world_ranking .world_ranking_list__item .flag {
  /* position: absolute;
  inset: auto auto 16px 88px; */

  order: 1;
  flex: 1;
  text-align: right;
}
.tour_world_ranking .world_ranking_list__item .name {
  margin-left: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
  margin-top: 4px;
}
.tour_world_ranking .world_ranking_link {
  margin-top: 16px;
  text-align: right;
}
.tour_world_ranking .world_ranking_link a {
  position: relative;
  padding-right: 16px;
  font-weight: 700;
  color: var(--base-font-color);
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.tour_world_ranking .world_ranking_link a::after {
  content: "";
  position: absolute;
  inset: 2px 2px 0 auto;
  width: 7px;
  height: 7px;
  margin-block: auto;
  border-bottom: 2px solid var(--base-font-color);
  border-right: 2px solid var(--base-font-color);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.tour_world_ranking .link_button {
  margin-top: 12px;
}

/* 連載コーナー */
.tour_serial {
  margin-top: 48px;
}
.tour_serial .serial_list_column {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  margin-top: 48px;
}

/**** サイドコンテンツ ****/
/* サイドバー記事リスト */
.side_articles_list {
  display: block;
  margin-top: 20px;
}
.side_articles_list__item + .side_articles_list__item {
  margin-top: 20px;
}
.side_articles_list__item a {
  display: -webkit-box;
  display: flex;
  gap: 0 12px;
}
.side_articles_list__item a .img {
  -webkit-box-flex: 0;
  flex: 0 0 114px;
  max-width: 114px;
  flex: 0 0 35.398%;
  max-width: 35.398%;
  position: relative;
  border-radius: 2px;
  aspect-ratio: 3/2;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.side_articles_list__item a .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.side_articles_list__item a .text_box {
  -webkit-box-flex: 1;
  flex-grow: 1;
}
.side_articles_list__item a .title {
  margin-top: calc((1em - 1lh) / 2);
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.side_articles_list__item a .category {
  margin-top: 4px;
  font-size: 1.2rem;
  color: var(--base-font-color);
}
.side_articles_list__item a .meta {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: baseline;
  align-items: baseline;
  gap: 0 18px;
  margin-top: 4px;
  font-size: 1.2rem;
  color: var(--meta-font-color);
}
.side_articles_list__item a .meta .date {
  font-family: "Roboto", sans-serif;
  font-style: normal;
}
.side_articles_list__item a .meta .tag {
  position: relative;
}
.side_articles_list__item a .meta .tag::before {
  content: "";
  position: absolute;
  inset: 1px auto 0 -9px;
  width: 1px;
  height: 12px;
  margin-block: auto;
  background-color: var(--meta-font-color);
}

/* アクセスランキング */
.side_banner ~ .side_ranking {
  margin-top: 48px;
}

.side_leaders_board ~ .side_ranking {
  margin-top: 48px;
}

.side_leaders_board ~ .side_ranking,
.side_match_result_01 ~ .side_ranking,
.side_match_result_02 ~ .side_ranking {
  margin-top: 48px;
}

.side_ranking {
  margin-top: 48px;
}
@media screen and (min-width: 768px) {
  .side_ranking:first-child {
    margin-top: 0;
  }
}
.side_ranking .side_ranking_tab {
  margin-top: 12px;
}
.side_ranking .side_ranking_tab .tab_item {
  -webkit-box-flex: 0;
  flex: 0 0 25%;
  max-width: 25%;
}
.side_ranking .side_ranking_panel {
  display: none;
}
.side_ranking .side_ranking_panel.current {
  display: block;
}
.side_ranking .side_ranking_list {
  display: block;
  margin-top: 20px;
}
.side_ranking .side_ranking_list__item + .side_ranking_list__item {
  margin-top: 20px;
}
.side_ranking .side_ranking_list__item a {
  display: grid;
  grid-template-columns: 20px 33.333% 1fr;
  grid-template-rows: 1fr;
  align-content: center;
}
.side_ranking .side_ranking_list__item a .num {
  font-family: var(--font-family-number);
  font-size: 1.8rem;
  font-weight: 700;
}
.side_ranking .side_ranking_list__item a .img {
  position: relative;
  border-radius: 2px;
  aspect-ratio: 3/2;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.side_ranking .side_ranking_list__item a .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.side_ranking .side_ranking_list__item a .text_box {
  padding-left: 12px;
}
.side_ranking .side_ranking_list__item a .title {
  margin-top: calc((1em - 1lh) / 2);
  font-size: 1.7rem;
  line-height: 1.3;
  font-weight: 700;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}

/* ★ */
.side_ranking .side_ranking_list__item a .meta {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-align: baseline;
  align-items: baseline;
  margin-top: 4px;
  font-size: 1.2rem;
  color: var(--meta-font-color);
}
.side_ranking .side_ranking_list__item a .meta .date {
  font-family: "Roboto", sans-serif;
  font-style: normal;
  margin-right: 1.2em;
  position: relative;
}
.side_ranking .side_ranking_list__item a .meta .date::after {
  content: "";
  position: absolute;
  inset: -1px -7px 0 auto;
  width: 1px;
  height: 10px;
  margin-block: auto;
  background-color: var(--meta-font-color);
}
.side_ranking .side_ranking_list__item a .meta:has(.pr) .tag {
  position: relative;
  margin-right: 6px;
  margin-bottom: 4px;
}
.side_ranking .side_ranking_list__item a .meta .pr {
  margin-left: 0px;
}
.side_ranking .side_link_button {
  margin-top: 28px;
}

/* トーナメント開催情報 */
.side_tournament {
  margin-top: 48px;
}
.side_tournament .side_tournament_tab {
  margin-top: 12px;
}
.side_tournament .side_tournament_tab .tab_item {
  -webkit-box-flex: 0;
  flex: 0 0 33.333%;
  max-width: 33.333%;
}
.side_tournament .side_tournament_panel {
  margin-top: 4px;
}
.side_tournament .tournament_list {
  display: none;
}
.side_tournament .tournament_list__item {
  padding-block: 20px;
  border-bottom: 1px solid var(--lighter-gray-color);
}
.side_tournament .tournament_list__item > a .meta {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: baseline;
  align-items: baseline;
  gap: 0 7px;
}
.side_tournament .tournament_list__item > a .category {
  font-size: 1.4rem;
  font-weight: 700;
}
.side_tournament .tournament_list__item > a .term {
  font-family: "Roboto", sans-serif;
  font-style: normal;
  font-size: 1.4rem;
  color: var(--meta-font-color);
}
.side_tournament .tournament_list__item > a .title {
  margin-top: 4px;
  font-size: 1.8rem;
  font-weight: 700;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.side_tournament .tournament_list__item .buttons {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}
.side_tournament .tournament_list__item .buttons a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 40px;
  background: #fff;
  border: solid 1px var(--gray-color);
  border-radius: 4px;
  box-shadow: var(--basic-box-shadow);
  padding: 0 14px;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.1;
  color: var(--base-font-color);
  background-color: var(--white-color);
  text-align: center;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.side_tournament .tournament_list.current {
  display: block;
}

/* スペシャルコンテンツ */
.side_special {
  margin-top: 48px;
}
.side_special .special_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px 16px;
  margin-top: 20px;
}
.side_special .special_list__item a {
  display: block;
}
.side_special .special_list__item a .img {
  position: relative;
  width: 100%;
  border-radius: 2px;
  aspect-ratio: 3/2;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.side_special .special_list__item a .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.side_special .special_list__item a .text_box {
  padding-top: 12px;
}
.side_special .special_list__item a .title {
  margin-top: calc((1em - 1lh) / 2);
  font-size: 1.6rem;
  line-height: 1.3;
  font-weight: 700;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}

/* サイドリーダーズボード */
.side_board_title {
  font-size: 1.8rem;
}

.side_board_meta {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: baseline;
  align-items: baseline;
  gap: 0 18px;
  margin-top: 10px;
  font-size: 1.2rem;
  color: var(--meta-font-color);
}
.side_board_meta .tag {
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--meta-font-color);
}
.side_board_meta .term {
  position: relative;
  font-family: "Roboto", sans-serif;
  font-style: normal;
  font-size: 1.6rem;
}
.side_board_meta .term::before {
  content: "";
  position: absolute;
  inset: 1px auto 0 -9px;
  width: 1px;
  height: 14px;
  margin-block: auto;
  background-color: var(--meta-font-color);
}

.side_banner ~ .side_leaders_board {
  margin-top: 48px;
}

.side_leaders_board:first-child {
  margin-top: 0;
}
.side_leaders_board__badge {
  margin-top: 8px;
}
.side_leaders_board__badge a {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  gap: 0 6px;
  padding: 3px 8px;
  border-radius: 4px;
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--white-color);
  background-color: #c64543;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.side_leaders_board__badge svg {
  height: 14px;
}

.leaders_table_wrap {
  position: relative;
  margin-top: 16px;
  border-radius: 4px;
  overflow: hidden;
  cursor: pointer;
  z-index: 0;
}
.leaders_table_wrap::before {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--lighter-gray-color);
  border-radius: 4px;
  overflow: hidden;
  z-index: -1;
}

.leaders_table {
  border-collapse: collapse;
  width: 100%;
}
.leaders_table th,
.leaders_table td {
  padding: 13px 6px;
  border: none;
}
.leaders_table th {
  padding: 13px 6px;
  font-size: 1.4rem;
  font-weight: 700;
  text-align: left;
  color: var(--white-color);
}
.leaders_table th:first-child {
  width: 14%;
}
.leaders_table th:nth-child(2) {
  width: 52%;
}
.leaders_table th:nth-child(3) {
  width: 20%;
}
.leaders_table th:nth-child(4) {
  width: 14%;
}
.leaders_table td {
  font-size: 1.4rem;
}
.leaders_table td:not(:nth-child(2)) {
  text-align: center;
}
.leaders_table td:first-child,
.leaders_table td:last-child {
  font-family: "Roboto", sans-serif;
  font-style: normal;
  font-weight: 700;
  color: #0b4873;
}
.leaders_table td:nth-child(2) {
  font-weight: 700;
}
.side_leaders_board .leaders_table tbody:first-child tr {
  background-color: #081e48;
}
.leaders_table tbody tr:not(:first-child) td {
  border-top: 1px solid var(--lighter-gray-color);
}

.side_board_tags {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}
.side_board_tags li {
  display: grid;
  place-items: center;
  height: 30px;
  padding-inline: 14px;
  border: 1px solid #bebebe;
  border-radius: 15px;
  font-size: 1.4rem;
  -webkit-transition: color 0.25s ease-in-out,
    background-color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out, background-color 0.25s ease-in-out;
}

.side_match_result_badge {
  margin-top: 8px;
}
.side_match_result_badge a {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  gap: 0 6px;
  padding: 2px 12px 3px;
  border-radius: 4px;
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--white-color);
  background-color: #707070;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}

.side_match_result_01,
.side_match_result_02 {
  margin-top: 52px;
}

.side_match_result_table_wrap {
  position: relative;
  margin-top: 16px;
  border-radius: 4px;
  overflow: hidden;
}
.side_match_result_table_wrap::before {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--lighter-gray-color);
  border-radius: 4px;
  overflow: hidden;
  z-index: -1;
}

.side_match_result_table {
  table-layout: fixed;
  border-collapse: collapse;
  width: 100%;
}
.side_match_result_table th,
.side_match_result_table td {
  padding: 13px 6px;
  border: none;
  text-align: center;
}
.side_match_result_table th {
  padding: 13px 6px;
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--white-color);
  background-color: #081e48;
}
.side_match_result_table tbody:has(tr th.team) {
  border-bottom: 1px solid #fff;
}
/* .side_match_result_02 .side_match_result_table th {
  background-color: #081e48;
} */
/* .side_match_result_02 .side_match_result_table tr:has(.team){
  background-color: #081e48;
  border: 1px solid #081e48;
} */

/* .side_match_result_02 .side_match_result_table tbody:has(tr th.team)+ tbody tr:first-child{
  background-color: var(--bg-gray-color);
  border-right: 1px solid var(--lighter-gray-color);
  border-left: 1px solid var(--lighter-gray-color);
  border-bottom: 1px solid var(--lighter-gray-color);
} */
/* .side_match_result_02 .side_match_result_table tbody:has(tr th.team) + tbody tr:first-child th {
  color: var(--base-font-color);
} */

.side_match_result_table th:first-child {
  width: 33.333%;
}
.side_match_result_table th:nth-child(2) {
  width: 33.333%;
}
.side_match_result_table th:nth-child(3) {
  width: 33.333%;
}
.side_match_result_table td {
  position: relative;
  font-size: 1.4rem;
}
.side_match_result_table td:first-child,
.side_match_result_table td:last-child {
  font-weight: 700;
}
.side_match_result_table td:nth-child(2) {
  font-family: "Roboto", sans-serif;
  font-style: normal;
  font-weight: 700;
  color: #0b4873;
}
.side_match_result_table td .top {
  display: block;
  text-align: center;
}
.side_match_result_table td .bottom {
  display: block;
  text-align: center;
}
.side_match_result_table td .left_arrow {
  position: absolute;
  inset: 0 auto 0 18px;
  width: 10px;
  height: 10px;
  margin-block: auto;
  border-top: 2px solid var(--base-font-color);
  border-left: 2px solid var(--base-font-color);
  background-color: transparent;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.side_match_result_table td .right_arrow {
  position: absolute;
  inset: 0 18px 0 auto;
  width: 10px;
  height: 10px;
  margin-block: auto;
  border-top: 2px solid var(--base-font-color);
  border-right: 2px solid var(--base-font-color);
  background-color: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.side_match_result_table td.text-normal {
  font-weight: 400;
}
.side_match_result_01 .side_match_result_table tbody:first-child tr {
  background-color: #081e48;
}
.side_match_result_table tbody tr:not(:first-child) td {
  border-top: 1px solid var(--lighter-gray-color);
}
.side_match_result_table tbody tr:has(.left_arrow) td:last-child {
  font-weight: 400;
}
.side_match_result_table tbody tr:has(.right_arrow) td:first-child {
  font-weight: 400;
}

/* ツアーニュース */
.side_news {
  margin-top: 48px;
}
.side_news:first-child {
  margin-top: 0;
}
.side_news .side_link_button {
  margin-top: 28px;
}

/* 記事外枠 */

/* 記事トップ */
.article_top .article_title {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.4;
}
.article_top .article_meta {
  position: relative;
  margin-top: 8px;
  z-index: 0;
}
.article_top .article_meta_column {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto;
  z-index: 2;
}
.article_top .article_meta_column__right {
  display: contents;
}
.article_top .article_meta_column__right .article_category {
  grid-column: 1/3;
  font-size: 1.4rem;
}
.article_top .article_meta_column__right .article_datetime {
  padding-top: 8px;
  font-family: "Roboto", sans-serif;
  font-style: normal;
  font-size: 1.4rem;
  color: var(--meta-font-color);
}
.article_top .sns_list {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  align-items: center;
  gap: 0 16px;
  padding-top: 2px;
}
.article_top .sns_list a {
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.article_top .article_meta_tags_wrap {
  position: relative;
  margin-top: 10px;
  margin-inline: -16px;
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
  z-index: 1;
}
.article_top .article_meta_tags {
  display: -webkit-box;
  display: flex;
  gap: 14px;
  padding-inline: 16px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.article_top .article_meta_tags__item a {
  font-size: 1.4rem;
  color: var(--corporate-color);
}

/* 記事メイン画像 */
.article_main_img,
.tour_article_img {
  margin-top: 16px;
}
.article_main_img a,
.tour_article_img a {
  display: block;
}
.article_main_img .image,
.tour_article_img .image {
  border-radius: 2px;
  overflow: hidden;
}
.article_main_img .image img,
.tour_article_img .image img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
.article_main_img .caption,
.tour_article_img .caption {
  display: block;
  margin-top: 7px;
  font-size: 1.4rem;
  color: var(--meta-font-color);
}

/* 記事本文 */
.article_body {
  margin-top: 16px;
  font-size: 1.7rem;
}
.article_body h2 {
  margin-top: 50px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
}
.article_body h2:first-child {
  margin-top: 0;
}
.article_body h3 {
  margin-top: 24px;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.4;
}
.article_body h3:first-child {
  margin-top: 0;
}
.article_body h4 {
  margin-top: 18px;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.4;
}
.article_body h4:first-child {
  margin-top: 0;
}
.article_body p {
  margin-top: 18px;
  font-size: 1.7rem;
  line-height: 1.7;
  letter-spacing: 0.05rem;
}
.article_body p:first-child {
  margin-top: 0;
}
.article_body a {
  color: var(--corporate-color);
}
.article_body ul {
  margin-top: 18px;
  list-style-type: none;
}
.article_body ul > li {
  position: relative;
  padding-left: 16px;
  font-size: 1.7rem;
  line-height: 1.3;
}
.article_body ul > li::before {
  content: "";
  position: absolute;
  /*inset: 0 auto 0 0;*/
  top: 0.5em;
  left: 0;
  width: 5px;
  height: 5px;
  margin-block: auto;
  border-radius: 50%;
  background-color: var(--base-font-color);
}
.article_body blockquote {
  position: relative;
  margin-top: 1.75rem;
  padding: 32px 0;
}
.article_body blockquote .quote-top {
  position: absolute;
  inset: 5px auto auto 0;
}
.article_body blockquote .quote-bottom {
  position: absolute;
  inset: auto 0 5px auto;
}
.article_body blockquote p {
  font-style: italic;
  color: #666;
}

/* 記事目次 */
.toclist {
  width: 100%;
  margin-top: 22px;
  border: 1px solid var(--lighter-gray-color-2);
  border-radius: 0.2em;
  font-size: 15px;
  line-height: 1.5;
  background-color: #fcfcfc;
  letter-spacing: 0;
}
.toclist li {
  margin-block: 0;
  padding-block: 12px;
  border-bottom: 1px dotted #ccc;
}
.toclist li::before {
  content: none !important;
}
.toclist li:last-child {
  border-bottom: none;
}
.toclist input {
  display: none;
}
.toclist label {
  display: block;
  position: relative;
  width: 100%;
  margin-inline: auto;
  padding: 16px 18px;
  font-size: 1.4rem;
  font-weight: 700;
  cursor: pointer;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
.toclist label::after {
  content: "";
  position: absolute;
  inset: -5px 25px 0 auto;
  width: 10px;
  height: 10px;
  margin-block: auto;
  border-bottom: 2px solid var(--base-font-color);
  border-right: 2px solid var(--base-font-color);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.toclist input:checked ~ label::after {
  content: "";
  inset: 5px 25px 0 auto;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
.toclist a {
  font-size: 1.4rem;
  color: var(--base-font-color);
  font-weight: 700;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.toclist .toclist-box {
  width: calc(100% - 36px);
  height: 0;
  margin: 0 auto;
  -webkit-transition: 0.25s ease-in-out;
  transition: 0.25s ease-in-out;
  overflow: hidden;
}
.toclist .toclist-box > li ul {
  margin: 0.6em 1em 0;
}
.toclist .toclist-box > li ul li {
  position: relative;
  margin-block: 4px;
  padding-block: 0;
  border-bottom: none;
}
.toclist .toclist-box > li ul li a {
  position: relative;
  padding-left: 16px;
  font-size: 1.4rem;
  font-weight: normal;
}
.toclist .toclist-box > li ul li a::before {
  content: "";
  position: absolute;
  inset: 2px auto 0 0;
  width: 6px;
  height: 6px;
  margin-block: auto;
  border-top: 1px solid var(--base-font-color);
  border-right: 1px solid var(--base-font-color);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.toclist input:checked ~ .toclist-box {
  height: auto;
  margin-top: 8px !important;
}

/* 記事内SNS */
.sns-outer {
  width: 95%;
  margin-top: 12px;
  margin-inline: auto;
}
.sns-outer iframe {
  max-width: 100%;
  margin-top: 18px;
}
.sns-outer iframe[src*="instagram.com"] {
  border: 1px solid #dadada;
  border-radius: 10px;
  overflow: hidden;
}

/* 記事内動画 */
.youtube {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  margin: 16px auto 0;
  overflow: hidden;
}

.youtubeVertical {
  position: relative;
  width: 90%;
  aspect-ratio: 9/16;
  margin: 16px auto 0;
  text-align: center;
}

.youtube iframe,
.youtubeVertical iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.videoContainer {
  position: relative;
  text-align: center;
  width: 100%;
  margin: 1em auto;
  aspect-ratio: 16/9;
}
.videoContainer video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

/* 汎用表 */
.scrollTable {
  position: relative;
  margin-top: 16px;
  margin-inline: -16px;
  padding-bottom: 10px;
  padding-inline: 16px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  z-index: 0;
}
.scrollTable table {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 100%;
  border: 1px solid #dfdfdf;
  border-collapse: collapse;
}
.scrollTable table th,
.scrollTable table td {
  padding: 12px;
  border-bottom: 1px solid #dfdfdf;
  font-size: 1.4rem;
  line-height: 1.6;
  text-align: left;
  white-space: nowrap;
}
.scrollTable table th:not(:last-of-type),
.scrollTable table td:not(:last-of-type) {
  border-right: 1px solid #dfdfdf;
}
.scrollTable table th {
  background-color: #f8f8f8;
  font-weight: 700;
}
.scrollTable table.border tr:nth-child(2n) td {
  background-color: #f8f8f8;
}

/* 記事内画像 */
.article_img {
  margin-top: 20px;
}
.article_img .image {
  border-radius: 2px;
  overflow: hidden;
}
.article_img .image img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
.article_img .caption {
  display: block;
  margin-top: 7px;
  font-size: 1.4rem;
  color: var(--meta-font-color);
}
.article_img:hover .caption {
  color: var(--meta-font-color);
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  .article_img.img_vertical {
    width: 600px;
    margin: 20px auto auto;
    text-align: center;
  }
  .article_img.img_vertical img {
    max-width: 600px;
    width: auto;
    max-height: 640px;
    height: auto;
  }
}
/* 記事クレジット */
.article_credit {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  align-items: center;
  gap: 0 12px;
  margin-top: 24px;
}
.article_credit__text {
  font-size: 1.4rem;
}

/* 記事画像リンク */
.article_gallery_link {
  margin-top: 24px;
  text-align: right;
}
.article_gallery_link a {
  position: relative;
  padding-right: 14px;
  font-size: 1.4rem;
  font-weight: 700;
}
.article_gallery_link a::after {
  content: "";
  position: absolute;
  inset: 0 0 0 auto;
  width: 8px;
  height: 8px;
  margin-block: auto;
  border-top: 2px solid var(--base-font-color);
  border-right: 2px solid var(--base-font-color);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* 記事下部PR BOX （背景青） */
.article_bottom_pr {
  margin-top: 32px;
}
.article_bottom_pr a {
  display: block;
  padding: 12px 18px;
  background-color: #eaf7ff;
  border-radius: 4px;
}
.article_bottom_pr__text {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.6;
}

/* 記事次のページ */
.next_page {
  margin-top: 32px;
}
.next_page a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: baseline;
  align-items: baseline;
  padding-block: 20px;
  border: 1px solid var(--lighter-gray-color-2);
  border-radius: 4px;
  box-shadow: var(--basic-box-shadow);
  position: relative;
}

.next_page a::after {
  content: "";
  position: absolute;
  inset: 0 18px 0 auto;
  width: 9px;
  height: 9px;
  margin-block: auto;
  border-top: 2px solid var(--base-font-color);
  border-right: 2px solid var(--base-font-color);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.next_page a .next_page_title {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
  padding-inline: 18px;
  font-size: 1.2rem;
  white-space: nowrap;
}
.next_page a .next_page_text {
  position: relative;
  padding-right: 42px;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5;
  padding-bottom: 1px;
}
/* .next_page a .next_page_text::after {
  content: "";
  position: absolute;
  inset: 0 18px 0 auto;
  width: 9px;
  height: 9px;
  margin-block: auto;
  border-top: 2px solid var(--base-font-color);
  border-right: 2px solid var(--base-font-color);
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
} */

/* 記事下部SNS */
.article_bottom_sns {
  margin-top: 48px;
}
.article_bottom_sns .sns_list {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  gap: 0 16px;
}
.article_bottom_sns .sns_list a {
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}

/* 関連キーワード */
.related_keywards {
  margin-top: 36px;
}
.related_keywards:not(:has(li)) {
  display: none;
}
.related_keywards .related_keywards_list {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 20px;
  margin-top: 20px;
}
.related_keywards .related_keywards_list li a {
  display: grid;
  place-items: center;
  font-size: 1.6rem;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}

/**** 大会記事ページ ****/
/* メニュー */
.tour_article_heading {
  padding-top: 8px;
}
.tour_article_heading__inner {
  width: min(100%, 1320px);
  margin-inline: auto;
  padding-inline: 20px;
}
.tour_article_heading__title {
  padding-block: 8px;
  line-height: 1.3;
}
.tour_article_heading__title a {
  font-size: 1.6rem;
  font-weight: 700;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.tour_article_heading .tour_heading_menu {
  margin-top: 10px;
  margin-inline: -16px;
  padding-bottom: 10px;
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
}
.tour_article_heading .tour_heading_menu .menu_list {
  display: -webkit-box;
  display: flex;
  gap: 8px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  padding-inline: 16px;
}
.tour_article_heading .tour_heading_menu .menu_list__item a {
  display: grid;
  place-items: center;
  height: 30px;
  padding-inline: 14px;
  border: 1px solid #bebebe;
  border-radius: 15px;
  font-size: 1.4rem;
  -webkit-transition: color 0.25s ease-in-out,
    background-color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out, background-color 0.25s ease-in-out;
}

/* 記事内リンク */
.section_link {
  margin-top: 25px;
}
.section_link a {
  display: block;
  padding: 14px 16px;
  border: 1px solid var(--lighter-gray-color-2);
  border-radius: 4px;
  color: currentColor;
}
.section_link a:has(.image) {
  display: grid;
  grid-template-columns: 114px 1fr;
  gap: 0 16px;
}
.section_link .image {
  position: relative;
  border-radius: 2px;
  aspect-ratio: 3/2;
  overflow: hidden;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.section_link .image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
.section_link .body {
  position: relative;
  padding-right: 22px;
}
.section_link .body::after {
  content: "";
  position: absolute;
  inset: 0 0 0 auto;
  width: 8px;
  height: 8px;
  margin-block: auto;
  border-top: 2px solid var(--base-font-color);
  border-right: 2px solid var(--base-font-color);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.section_link .body h2 {
  font-size: 1.4rem;
  font-weight: 700;
  overflow: hidden;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
.section_link .body .text {
  margin-top: 6px;
  margin-bottom: calc((1em - 1lh) / 2);
  font-size: 1.2rem;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}

/* 記事内スライダー */
.article_slider {
  margin-top: 30px;
}

/* 関連リンク */
.related_link {
  margin-top: 48px;
}
.related_link .link_button {
  margin-top: 28px;
}

/* 関連ギア情報 */
.related_gear {
  margin-top: 48px;
}
.related_gear .related_gear_list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  margin-top: 20px;
}
.related_gear .related_gear_list__item {
  padding: 16px;
  border: 1px solid var(--lighter-gray-color);
  border-radius: 4px;
}
.related_gear .related_gear_list__item a {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 10px 16px;
}
.related_gear .related_gear_list__item .img {
  position: relative;
  border-radius: 2px;
  aspect-ratio: 1/1;
  overflow: hidden;
  z-index: 0;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
  border-radius: 2px;
}
.related_gear .related_gear_list__item .img::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: -webkit-radial-gradient(#fff 30%, #f4f4f4 65%);
  background: radial-gradient(#fff 30%, #f4f4f4 65%);
  z-index: 1;
}
.related_gear .related_gear_list__item .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  mix-blend-mode: multiply;
  z-index: 2;
  padding: 12px;
}
.related_gear .related_gear_list__item .title {
  font-size: 1.6rem;
  line-height: 1.3;
  font-weight: 700;
  margin-top: calc((1em - 1lh) / 2);
}
.related_gear .related_gear_list__item .text {
  margin-top: 4px;
  font-size: 1.4rem;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.related_gear .related_gear_list__item .meta {
  grid-column: 1/3;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: baseline;
  align-items: baseline;
  gap: 0 18px;
  font-size: 1.4rem;
}
.related_gear .related_gear_list__item .meta .date {
  font-family: "Roboto", sans-serif;
  font-style: normal;
}
.related_gear .related_gear_list__item .meta .price {
  position: relative;
  font-family: "Roboto", sans-serif;
  font-style: normal;
}
.related_gear .related_gear_list__item .meta .price::before {
  content: "";
  position: absolute;
  inset: 1px auto 0 -9px;
  width: 1px;
  height: 14px;
  margin-block: auto;
}
.related_gear .related_gear_list__item .btns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 10px;
  margin-top: 10px;
}
.related_gear .related_gear_list__item .btns a {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  width: 100%;
  height: 44px;
  margin-inline: auto;
  border: solid 1px var(--corporate-color);
  border-radius: 4px;
  font-size: 1.3rem;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
  box-shadow: var(--basic-box-shadow);
  -webkit-transition: background-color 0.25s ease-in-out;
  transition: background-color 0.25s ease-in-out;
}
.related_gear .related_gear_list__item .btns a:first-child {
  color: var(--corporate-color);
  background-color: var(--white-color);
}
.related_gear .related_gear_list__item .btns a:nth-child(2) {
  color: var(--white-color);
  background-color: var(--corporate-color);
}
.related_gear .related_gear_more_list_wrap {
  display: none;
  padding-top: 0px;
  height: 0px;
  opacity: 0;
  -webkit-transition-property: display, opacity, height, padding-top;
  transition-property: display, opacity, height, padding-top;
  transition-behavior: allow-discrete;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
@starting-style {
  .related_gear .related_gear_more_list_wrap {
    height: 0px;
    opacity: 0;
  }
}
.related_gear .related_gear_more_list_wrap.is-open {
  display: block;
  padding-top: 24px;
  height: auto;
  opacity: 1;
}
.related_gear .related_gear_more_list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}
.related_gear .related_gear_more {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  position: relative;
  width: min(100%, 200px);
  height: 42px;
  margin-top: 24px;
  margin-inline: auto;
  border: solid 1px var(--gray-color);
  border-radius: 4px;
  font-size: 1.4rem;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
  box-shadow: var(--basic-box-shadow);
  -webkit-transition: color 0.25s ease-in-out,
    background-color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out, background-color 0.25s ease-in-out;
  cursor: pointer;
}
.related_gear .related_gear_more::after {
  content: "";
  position: absolute;
  inset: 0 16px 4px auto;
  width: 10px;
  height: 10px;
  margin-block: auto;
  border-bottom: 1px solid var(--base-font-color);
  border-right: 1px solid var(--base-font-color);
  background-color: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: inset 0.25s ease-in-out,
    -webkit-transform 0.25s ease-in-out;
  transition: inset 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out, inset 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out, inset 0.25s ease-in-out,
    -webkit-transform 0.25s ease-in-out;
}
.related_gear .related_gear_more.is-open::after {
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  inset: 4px 16px 0 auto;
}

/* プロフィール */
.article_profile {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px 16px;
  margin-top: 48px;
}
.article_profile:has(.img) {
  grid-template-columns: 56px 1fr;
}
.article_profile .img {
  position: relative;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  overflow: hidden;
}
.article_profile .img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.article_profile .text_box {
  display: contents;
}
.article_profile .title {
  align-self: center;
  font-size: 1.6rem;
  font-weight: 700;
}
.article_profile .text {
  grid-column: 1/3;
  font-size: 1.4rem;
  line-height: 1.7;
}
.article_profile .text a {
  color: var(--corporate-color);
}

/**
 * Swiper 11.1.14
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2024 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: September 12, 2024
 */
/* FONT_START */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal;
}
/* FONT_END */
:root {
  --swiper-theme-color: #007aff;
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-timing-function: var(
    --swiper-wrapper-transition-timing-function,
    initial
  );
  transition-timing-function: var(
    --swiper-wrapper-transition-timing-function,
    initial
  );
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  -webkit-box-align: start;
  align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform;
}

.swiper-backface-hidden .swiper-slide {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  -webkit-perspective: 1200px;
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.swiper-3d {
  -webkit-perspective: 1200px;
  perspective: 1200px;
}

.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  -webkit-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  -webkit-scroll-snap-type: y mandatory;
  scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  -webkit-scroll-snap-type: none;
  scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  -webkit-box-ordinal-group: 10000;
  order: 9999;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}

.swiper-css-mode.swiper-centered.swiper-horizontal
  > .swiper-wrapper
  > .swiper-slide:first-child {
  -webkit-margin-start: var(--swiper-centered-offset-before);
  margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-css-mode.swiper-centered.swiper-vertical
  > .swiper-wrapper
  > .swiper-slide:first-child {
  -webkit-margin-before: var(--swiper-centered-offset-before);
  margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: -webkit-linear-gradient(
    right,
    rgba(0, 0, 0, 0.5),
    rgba(0, 0, 0, 0)
  );
  background-image: linear-gradient(
    to left,
    rgba(0, 0, 0, 0.5),
    rgba(0, 0, 0, 0)
  );
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: -webkit-linear-gradient(
    left,
    rgba(0, 0, 0, 0.5),
    rgba(0, 0, 0, 0)
  );
  background-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0.5),
    rgba(0, 0, 0, 0)
  );
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: -webkit-linear-gradient(
    bottom,
    rgba(0, 0, 0, 0.5),
    rgba(0, 0, 0, 0)
  );
  background-image: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.5),
    rgba(0, 0, 0, 0)
  );
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-linear-gradient(
    top,
    rgba(0, 0, 0, 0.5),
    rgba(0, 0, 0, 0)
  );
  background-image: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0.5),
    rgba(0, 0, 0, 0)
  );
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  -webkit-animation: swiper-preloader-spin 1s infinite linear;
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@-webkit-keyframes swiper-preloader-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes swiper-preloader-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
/* swiper追加スタイル */
.swiper {
  margin-inline: -8px;
}

.swiper-bottom {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  margin-top: 12px;
  padding-bottom: 8px;
}

.swiper-button-prev {
  position: relative;
  padding: 10px;
  cursor: pointer;
}
.swiper-button-prev::before {
  content: "";
  position: absolute;
  inset: 0 0 0 auto;
  width: 10px;
  height: 10px;
  margin: auto;
  border-top: 2px solid var(--corporate-color);
  border-left: 2px solid var(--corporate-color);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.swiper-button-next {
  position: relative;
  padding: 10px;
  cursor: pointer;
}
.swiper-button-next::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 10px;
  height: 10px;
  margin: auto;
  border-top: 2px solid var(--corporate-color);
  border-right: 2px solid var(--corporate-color);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.swiper-pagination {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  gap: 0 12px;
  margin-inline: 14px;
}
.swiper-pagination .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #dededf;
  cursor: pointer;
}
.swiper-pagination .swiper-pagination-bullet-active {
  background-color: var(--corporate-color);
}

.swiper-slide {
  padding-inline: 8px;
}
.swiper-slide figure {
  margin: 0;
  padding: 0;
}
.swiper-slide figure img {
  width: 100%;
  height: auto;
  border-radius: 2px;
}
.swiper-slide figure figcaption {
  display: block;
  margin-top: 7px;
  font-size: 1.4rem;
  color: var(--meta-font-color);
}
.swiper-slide a {
  display: block;
}
@media screen and (min-width: 768px) {
  .main_container {
    display: block;
    position: relative;
    width: min(100%, 1320px);
    margin-top: 20px;
    margin-inline: auto;
    padding-inline: 20px;
    z-index: 1;
  }
  .main_container--tour {
    margin-top: 28px;
  }
  .main_container--article {
    margin-top: 28px;
    padding-top: 0;
  }
  .main_column {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    flex-direction: row;
    gap: 0 42px;
  }
  .main_contents {
    display: block;
    -webkit-box-flex: 1;
    flex-grow: 1;
    width: auto;
  }
  .main_sidebar {
    display: block;
    -webkit-box-flex: 0;
    flex: 0 0 302px;
    width: auto;
    max-width: 302px;
  }
  .drawer {
    width: min(300px, 86.6%);
  }
  .top_news_list {
    grid-template-columns: repeat(2, 1fr);
    grid-auto-flow: row;
    grid-auto-columns: 106px;
    margin-top: 28px;
    gap: 28px;
  }
  .top_news_list__item a .img {
    -webkit-box-flex: 0;
    flex: 0 0 35.398%;
    max-width: 35.398%;
  }
  .top_news_list__item a .meta {
    margin-top: 4px;
  }
  .top_news_list__item a .title {
    font-size: 1.8rem;
  }
  .top_news_list__item a .category {
    font-size: 1.4rem;
  }
  .top_news_list__item a .meta_bottom {
    margin-top: 2px;
    font-size: 1.4rem;
  }
  .top_news_list__item a .meta_bottom .tag::before {
    height: 14px;
  }
  .serial_list {
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
    margin-top: 28px;
  }
  .serial_list--half {
    grid-template-columns: repeat(2, 1fr);
  }
  .serial_list__item a .category {
    font-size: 1.4rem;
  }
  .serial_list__item a .title {
    font-size: 1.8rem;
  }
  .serial_list__item a .date {
    margin-top: 6px;
    font-size: 1.4rem;
  }
  .feature_list {
    grid-template-columns: repeat(5, 1fr);
    gap: 32px;
    margin-top: 28px;
  }
  .feature_list__item a {
    grid-template-columns: 1fr;
    gap: 0;
    display: grid;
  }
  .feature_list__item a .img {
    max-width: 100%;
  }
  .feature_list__item a .text_box:has(.js-absolute) {
    padding-bottom: 24px;
  }
  .feature_list__item a .title {
    margin-top: 12px;
  }
  .feature_list__item a .pr.js-absolute {
    inset: auto auto 0 0;
  }
  .recommend_list {
    grid-template-columns: repeat(5, 1fr);
    gap: 32px;
    margin-top: 28px;
  }
  .recommend_list__item a {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
  }
  .recommend_list__item a .title {
    margin-top: 12px;
  }
  .articles_list_01 {
    grid-template-columns: repeat(2, 1fr);
    grid-auto-flow: row;
    grid-auto-columns: 106px;
    margin-top: 28px;
  }
  .articles_list_01__item a .img {
    -webkit-box-flex: 0;
    flex: 0 0 35.398%;
    max-width: 35.398%;
  }
  .articles_list_01__item a .meta {
    margin-top: 4px;
  }
  .articles_list_01__item a .meta .date {
    font-size: 1.4rem;
  }
  .articles_list_01__item a .meta .tag {
    font-size: 1.4rem;
  }
  .articles_list_01__item a .meta .tag::before {
    height: 14px;
  }
  .articles_list_01__item a .title {
    font-size: 1.8rem;
  }
  .articles_list_01__item a .category {
    font-size: 1.4rem;
  }
  .articles_list_01__item a .meta_bottom {
    margin-top: 12px;
    font-size: 1.4rem;
  }
  .articles_list_01__item a .meta_bottom .datetime {
    font-size: 1.6rem;
  }
  .articles_list_01__item a .meta_bottom .tag {
    font-size: 1.4rem;
  }
  .articles_list_01__item a .meta_bottom .tag::before {
    height: 14px;
  }
  .articles_list_02 {
    grid-template-columns: repeat(5, 1fr);
    gap: 32px;
    margin-top: 32px;
  }
  .breadcrumb {
    margin-top: 58px;
    padding-bottom: 0;
    border-bottom: none;
    overflow-x: auto;
  }
  .breadcrumb__inner {
    width: min(100%, 1320px);
    margin-inline: auto;
    padding-inline: 20px;
    overflow-x: auto;
  }
  .breadcrumb .breadcrumb_list {
    display: block;
    width: 100%;
    padding-bottom: 0;
  }
  .breadcrumb .breadcrumb_list__item {
    display: inline;
  }
  .breadcrumb .breadcrumb_list__item span {
    font-size: 1.4rem;
  }
  .breadcrumb .breadcrumb_list__item:not(:first-child) {
    margin-left: 40px;
  }
  .breadcrumb .breadcrumb_list__item:not(:first-child)::before {
    inset: 6px auto auto -24px;
    margin-block: 0;
  }
  .pagination .pagination_list {
    gap: 0 16px;
  }
  .pagination .pagination_list__item a {
    width: 44px;
    height: 44px;
    font-weight: 700;
  }
  .pagination .pagination_list__item--prev a,
  .pagination .pagination_list__item--next a {
    width: 33px !important;
  }
  .pagination .pagination_list__item--space {
    width: 10px;
  }
  .section_title {
    font-size: 2.4rem;
  }
  .side_title {
    font-size: 2rem;
  }
  .tour_page_title {
    margin: 0 0 16px;
  }
  .link_button a,
  .side_link_button a {
    height: 56px;
    font-size: 1.8rem;
  }
  .side_link_button a {
    font-size: 1.6rem;
  }
  .tab li.tab_item a,
  .tab li.tab_item span,
  .side_tab li.tab_item a,
  .side_tab li.tab_item span {
    font-size: 1.8rem;
  }
  .tab li.tab_item.current a::after,
  .tab li.tab_item.current span::after,
  .side_tab li.tab_item.current a::after,
  .side_tab li.tab_item.current span::after {
    /* inset: auto 0 -1px; */
  }
  .pr {
    margin-left: 8px;
    padding: 2px 4px;
    font-size: 1.2rem;
  }
  .pagetop {
    bottom: 20px;
    right: 50%;
    margin-right: calc(20px - 50%);
    padding: 0;
  }
  .pagetop__link {
    width: 44px;
    height: 44px;
    border-radius: 4px;
    background-color: var(--corporate-color);
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.08);
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
  .pagetop__link::before {
    content: none;
  }
  .pagetop__link::after {
    content: none;
  }
  .pagetop__link svg {
    display: block;
    width: 20px;
    height: 14px;
    position: absolute;
    inset: 0;
    margin: auto;
  }
  .js-copy-link.js-copy-complete::before {
    inset: 30px 0 auto;
  }
  .top_alert {
    width: min(100%, 1320px);
    padding-inline: 20px;
  }
  .tags {
    margin-block: 26px;
    margin-inline: 0;
    overflow-x: auto;
  }
  .tags::-webkit-scrollbar {
    background: #f4f4f4;
    height: 6px;
    border-radius: 16px;
  }
  .tags::-webkit-scrollbar-thumb {
    background-color: #cccccc;
    border-radius: 16px;
  }
  .tags::-webkit-scrollbar-thumb:hover {
    background: #aaaaaa;
  }
  .tags .tags_list {
    gap: 0 16px;
    padding-block: 0;
    padding-inline: 0;
    background-color: transparent;
    padding-bottom: 8px;
  }
  .tags .tags_list li a {
    font-size: 1.4rem;
    line-height: 1.4;
  }
  .top_main_articles .top_main_list {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
    gap: 28px;
  }

  .top_main_articles .top_main_list__item:first-child a .img:first-child {
    border-radius: 2px;
  }
  .top_main_articles .top_main_list__item a .title {
    font-size: 1.8rem;
  }
  .top_main_articles .top_main_list__item a .category {
    font-size: 1.4rem;
  }
  .top_main_articles .top_main_list__item a .meta {
    margin-top: 6px;
  }
  .top_main_articles .top_main_list__item:first-child a .meta_bottom {
    margin-top: 4px;
  }
  .top_main_articles .top_main_list__item a .meta_bottom {
    margin-top: 4px;
    font-size: 1.4rem;
  }
  .top_main_articles .top_main_list__item:first-child {
    grid-column: 1/3;
    margin-inline: 0;
  }
  .top_main_articles .top_main_list__item:first-child a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    flex-direction: row;
    gap: 0 20px;
  }
  .top_main_articles .top_main_list__item:first-child a .img {
    -webkit-box-flex: 0;
    flex: 0 0 41.026%;
    max-width: 41.026%;
  }
  .top_main_articles .top_main_list__item:first-child a .text_box {
    padding-inline: 0;
  }
  .top_main_articles .top_main_list__item:first-child a .title {
    font-size: 2.4rem;
  }
  .top_main_articles .top_main_list__item:first-child a .text {
    margin-top: 4px;
    font-size: 1.6rem;
  }
  .top_news .link_button {
    margin-top: 32px;
  }
  .top_photo_gallery .top_photo_gallery_tab {
    margin-top: 20px;
  }
  .top_photo_gallery .top_photo_gallery_list {
    margin-top: 20px;
  }
  .top_photo_gallery .top_photo_gallery_list a {
    height: 200px;
    max-width: 400px;
  }
  .top_photo_gallery .link_button {
    margin-top: 32px;
  }
  .top_recommend_gear .recommend_gear_wrap {
    display: contents;
    margin-inline: 0;
  }
  .top_recommend_gear #piano_recommend_gear,
  .top_recommend_gear .recommend_gear_list {
    gap: 32px;
    width: auto;
    margin-top: 32px;
    padding-inline: 0;
    padding-bottom: 0;
  }
  .top_recommend_gear #piano_recommend_gear div.cx-flex-module {
    margin-right: 0;
    padding: 0;
  }
  .top_recommend_gear .recommend_gear_list__item a .title {
    font-size: 1.6rem;
  }
  .top_recommend_gear #piano_recommend_gear a.cx-item h3,
  .top_recommend_gear .recommend_gear_list__item a .text {
    font-size: 1.6rem;
  }
  .top_recommend_gear .link_button {
    margin-top: 32px;
  }
  .top_movie .movie_list {
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
    margin-top: 28px;
  }
  .top_movie .movie_list__item a .title {
    -webkit-line-clamp: 2;
  }
  .top_bruder {
    padding-block: 56px;
  }
  .top_bruder .bruder_list {
    grid-template-columns: repeat(5, 1fr);
    gap: 32px;
    margin-top: 32px;
  }
  .top_bruder .bruder_list__item a {
    grid-template-columns: 1fr;
    gap: 0;
    display: grid;
  }
  .top_bruder .bruder_list__item a .img {
    max-width: 100%;
  }
  .top_bruder .bruder_list__item a .text_box:has(.js-absolute) {
    padding-bottom: 24px;
  }
  .top_bruder .bruder_list__item a .category {
    margin-top: 12px;
    padding: 2px 5px 3px;
    font-size: 1.3rem;
  }
  .top_bruder .bruder_list__item a .title {
    margin-top: 6px;
  }
  .top_bruder .bruder_list__item a .pr.js-absolute {
    inset: auto auto 0 0;
  }
  .top_bruder .link_button {
    margin-top: 32px;
  }
  .top_feature .link_button {
    margin-top: 32px;
  }
  .tour_articles .link_button {
    margin-top: 32px;
  }
  .tour_world_ranking {
    margin-top: 0;
  }
  .tour_world_ranking .tour_world_ranking_tab {
    display: none;
  }
  .tour_world_ranking .world_ranking_panels {
    margin-top: 24px;
  }
  .tour_world_ranking .world_ranking_panels [data-tab-content] {
    display: unset !important;
  }
  .tour_world_ranking .world_ranking_list {
    grid-template-columns: repeat(5, 1fr);
  }
  .tour_world_ranking .world_ranking_list__item {
    border: 1px solid var(--drawer-line-color);
  }
  .tour_world_ranking .world_ranking_list__item:last-child {
    border-bottom: 1px solid var(--drawer-line-color);
  }
  .tour_world_ranking .world_ranking_list__item a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center;
    padding: 15px 22px 12px;
  }
  .tour_world_ranking .world_ranking_list__item:first-child a {
    padding: 15px 22px 12px;
  }
  .tour_world_ranking .world_ranking_list__item .num {
    position: absolute;
    inset: 15px auto auto 15px;
  }
  .tour_world_ranking .world_ranking_list__item .img {
    width: 60px;
    height: 60px;
    margin-left: 0;
  }
  .tour_world_ranking .world_ranking_list__item .flag {
    inset: 57px auto auto 62%;
    position: absolute;
    order: unset;
  }
  .tour_world_ranking .world_ranking_list__item .name {
    width: 100%;
    margin-top: 5px;
    margin-left: 0;
    padding-bottom: 3px;
    text-align: center;
  }
  .tour_serial .serial_list_column {
    grid-template-columns: repeat(2, 1fr);
  }
  .side_articles_list__item a {
    gap: 0 10px;
  }
  .side_articles_list__item a .img {
    -webkit-box-flex: 0;
    flex: 0 0 96px;
    max-width: 96px;
  }
  .side_articles_list__item a .meta .tag::before {
    height: 14px;
  }
  .side_ranking .side_ranking_list__item a {
    grid-template-columns: 20px 84px 1fr;
  }
  .side_ranking .side_ranking_list__item a .num {
    font-size: 1.6rem;
  }
  .side_ranking .side_ranking_list__item a .meta .tag::before {
    height: 14px;
  }
  .side_ranking .side_link_button {
    margin-top: 28px;
  }
  .side_tournament .side_tournament_panel {
    margin-top: 0;
  }
  .side_tournament .tournament_list__item > a .title {
    margin-top: 6px;
  }
  .side_tournament .tournament_list__item .buttons {
    margin-top: 12px;
  }
  .side_special .special_list {
    display: block;
  }
  .side_special .special_list__item + .special_list__item {
    margin-top: 20px;
  }
  .side_special .special_list__item a {
    display: -webkit-box;
    display: flex;
    gap: 0 10px;
  }
  .side_special .special_list__item a .img {
    -webkit-box-flex: 0;
    flex: 0 0 96px;
    max-width: 96px;
  }
  .side_special .special_list__item a .text_box {
    -webkit-box-flex: 1;
    flex-grow: 1;
    padding-top: 0;
  }
  .side_board_meta {
    font-size: 1.4rem;
  }
  .side_leaders_board .leaders_table tbody:first-child tr {
  }
  .side_match_result_01 .side_match_result_table tbody:first-child tr {
  }
  .article_content {
    width: min(100%, 720px);
    margin-inline: auto;
  }
  .article_top .article_title {
    font-size: 2.8rem;
  }
  .article_top .article_meta {
    margin-top: 16px;
  }
  .article_top .article_meta_column {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
  }
  .article_top .article_meta_column__right {
    display: block;
  }
  .article_top .article_meta_column__right .article_datetime {
    margin-top: 8px;
    padding-top: 0;
    font-size: 1.6rem;
  }
  .article_top .article_meta_column .sns_list {
    padding-top: 0;
  }
  .article_top .article_meta_tags_wrap {
    margin-top: 7px;
    margin-inline: 0;
    overflow-x: auto;
  }
  .article_top .article_meta_tags {
    padding-inline: 0;
  }
  .article_main_img,
  .tour_article_img {
    margin-top: 20px;
  }
  .article_main_img .caption,
  .tour_article_img .caption {
    margin-top: 10px;
  }
  .article_body {
    margin-top: 32px;
  }
  .article_body h2 {
    font-size: 2.4rem;
  }
  .article_body h3 {
    font-size: 2.2rem;
  }
  .article_body h4 {
    font-size: 2rem;
  }
  .article_body p {
    line-height: 1.9;
    font-size: 1.8rem;
    margin-top: 24px;
  }
  /* .article_main_img.has-caption + .article_body,
  .tour_article_img.has-caption + .article_body {
    margin-top: 48px;
  } */
  .toclist {
    margin-top: 50px;
  }
  .toclist label {
    padding: 24px 18px;
    font-size: 1.6rem;
  }
  .toclist a {
    font-size: 1.6rem;
  }
  .toclist .toclist-box > li ul li a {
    font-size: 1.6rem;
  }
  .sns-outer {
    width: 500px;
  }
  .youtube {
    width: 90%;
  }
  .youtubeVertical {
    width: 45%;
  }
  .videoContainer {
    width: 600px;
  }
  .scrollTable {
    margin-inline: 0;
    padding-bottom: 0;
    padding-inline: 0;
  }
  .article_img .caption {
    margin-top: 10px;
  }
  .article_credit {
    margin-top: 50px;
  }
  .article_gallery_link a {
    padding-right: 14px;
    padding-bottom: 3px;
    font-size: 1.8rem;
  }
  .article_bottom_pr {
    margin-top: 50px;
  }
  .article_bottom_pr__text {
    font-size: 1.6rem;
  }
  .next_page {
    margin-top: 48px;
  }
  .next_page a .next_page_title {
    font-size: 1.4rem;
  }
  .next_page a .next_page_text {
    font-size: 1.6rem;
  }
  .related_keywards {
    margin-top: 48px;
  }
  .related_keywards .related_keywards_list {
    margin-top: 24px;
  }
  .tour_article_heading {
    padding-top: 16px;
  }
  .tour_article_heading .tour_heading_menu {
    margin-top: 12px;
    margin-inline: 0;
    padding-bottom: 0;
    overflow-x: auto;
  }
  .tour_article_heading .tour_heading_menu .menu_list {
    padding-inline: 0;
  }
  .section_link a {
    padding: 16px;
  }
  .section_link a:has(.image) {
    grid-template-columns: 120px 1fr;
  }
  .section_link .body {
    padding-right: 36px;
  }
  .section_link .body h2 {
    font-size: 1.6rem;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .section_link .body .text {
    margin-top: 8px;
    font-size: 1.6rem;
  }
  .related_gear .related_gear_list {
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  }
  .related_gear .related_gear_list__item .btns a {
    height: 40px;
  }
  .related_gear .related_gear_more_list {
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  }
  .related_gear .related_gear_more {
    font-size: 1.6rem;
  }
  .article_profile:has(.img) {
    grid-template-columns: 120px 1fr;
    gap: 24px;
  }
  .article_profile .img {
    width: 120px;
    height: 120px;
  }
  .article_profile .text_box {
    display: block;
  }
  .article_profile .title {
    margin-top: calc((1em - 1lh) / 2);
  }
  .article_profile .text {
    grid-column: 1/2;
    margin-top: 14px;
  }
  .swiper-slide figure figcaption {
    margin-top: 10px;
  }

  .related_link .link_button {
    margin-top: 32px;
  }
}

@media screen and (min-width: 768px) {
  /* @media (any-hover: hover){ */
  a:hover {
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
  }
  a:hover * {
    text-decoration-thickness: 1px !important;
    text-underline-offset: 2px !important;
  }
  .pc_header__upper .top_menu__item > a:hover,
  .pc_header__upper .top_menu__item > span:hover {
    font-weight: 700;
    color: var(--corporate-color);
  }
  .pc_header__upper .top_menu__item.has-child > a:hover,
  .pc_header__upper .top_menu__item.has-child > span:hover {
    font-weight: 700;
    letter-spacing: 0;
    color: var(--corporate-color);
  }
  .pc_header__upper .top_menu_child_list__item a:hover {
    color: var(--corporate-color);
  }
  .pc_header__upper .login_panel .button--login:hover {
    opacity: 0.7;
  }
  .gnav .gnav_list__item > a:hover,
  .gnav .gnav_list__item > span:hover {
    font-weight: 700;
    color: var(--corporate-color);
  }
  .gnav .gnav_list__item > a:hover::before,
  .gnav .gnav_list__item > span:hover::before {
    content: "";
    position: absolute;
    inset: auto 0 -1px 0;
    width: 100%;
    height: 4px;
    background-color: var(--corporate-color);
  }
  .gnav .primary_link:hover {
    color: var(--corporate-color);
  }
  .gnav .primary_link:hover::after {
    border-color: var(--corporate-color);
  }
  .gnav .gnav_child_list__item a:hover {
    color: var(--corporate-color);
  }
  .pc_section_service .pc_section_service_nav__link:hover {
    color: var(--corporate-color);
    text-decoration: underline;
  }
  .footer-main__sns a:hover {
    text-decoration: underline;
  }
  .footer-main__nav-link:hover {
    text-decoration: underline;
  }
  .drawer .drawer_list a:hover {
    color: var(--corporate-color);
    text-decoration: underline;
  }
  .drawer .drawer_list__item a.logout-link {
    color: var(--base-font-color);
  }
  .drawer .drawer_list__item a.logout-link:hover {
    background: var(--bg-gray-color);
    text-decoration: none;
  }
  .top_news_list__item a:hover .img {
    opacity: 0.7;
  }
  .top_news_list__item a:hover .title {
    text-decoration: underline;
  }
  .serial_list__item a:hover .img {
    opacity: 0.7;
  }
  .serial_list__item a:hover .title {
    text-decoration: underline;
  }
  .feature_list__item a:hover .img {
    opacity: 0.7;
  }
  .feature_list__item a:hover .title {
    text-decoration: underline;
  }
  .recommend_list__item a:hover .img {
    opacity: 0.7;
  }
  .recommend_list__item a:hover .title {
    text-decoration: underline;
  }
  .articles_list_01__item a:hover .img {
    opacity: 0.7;
  }
  .articles_list_01__item a:hover .title {
    text-decoration: underline;
  }
  .articles_list_02__item a:hover .img {
    opacity: 0.7;
  }
  .articles_list_02__item a:hover .title {
    text-decoration: underline;
  }
  .breadcrumb .breadcrumb_list__item a:hover {
    color: var(--corporate-color);
    text-decoration: underline;
  }
  .pagination .pagination_list__item a:hover {
    background-color: var(--button-blueline-white-hover);
    color: var(--corporate-color);
  }
  .pagination .pagination_list__item.is-current a:hover {
    color: var(--white-color);
    background-color: var(--corporate-color);
  }
  .pagination
    .pagination_list:not(:has(.pagination_list__item--first.is-current))
    .pagination_list__item--prev
    a:hover {
    background-color: var(--button-blueline-white-hover);
  }
  /* .pagination .pagination_list:not(:has(.pagination_list__item--first.is-current)) .pagination_list__item--prev a:hover::before {
    border-color: var(--white-color);
  } */
  .pagination
    .pagination_list:not(:has(.pagination_list__item--last.is-current))
    .pagination_list__item--next
    a:hover {
    background-color: var(--button-blueline-white-hover);
  }
  /* .pagination .pagination_list:not(:has(.pagination_list__item--last.is-current)) .pagination_list__item--next a:hover::before {
    border-color: var(--white-color);
  } */
  .section_title .section_title_link:hover {
    color: var(--corporate-color);
    text-decoration: underline;
  }
  .section_title .section_title_link:hover::after {
    border-color: var(--corporate-color);
  }
  .button:hover {
    color: var(--white-color);
    background-color: var(--corporate-color);
  }
  .link_button a:hover,
  .side_link_button a:hover {
    background: var(--bg-gray-color);
  }
  .tab li.tab_item a:hover,
  .tab li.tab_item span:hover,
  .side_tab li.tab_item a:hover,
  .side_tab li.tab_item span:hover {
    color: var(--corporate-color);
    font-weight: 700;
  }
  .tab li.tab_item a:hover::after,
  .tab li.tab_item span:hover::after,
  .side_tab li.tab_item a:hover::after,
  .side_tab li.tab_item span:hover::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    width: 100%;
    height: 3px;
    background-color: var(--corporate-color);
  }
  .sp_live_score__title:hover .badge {
    opacity: 0.7;
  }
  .sp_live_score__title:hover .tour_title {
    color: var(--corporate-color);
    text-decoration: underline;
  }
  .sp_live_score__title:hover .tour_title::after {
    border-color: var(--corporate-color);
  }
  .user-data a:hover {
    color: var(--corporate-color);
    text-decoration: underline;
  }
  .pagetop__link:hover {
    opacity: 0.7;
  }
  .top_alert .top_alert_link:hover {
    color: #d7373d;
    text-decoration: none;
  }
  .tags .tags_list li a:hover {
    color: var(--corporate-color);
    text-decoration: underline;
  }
  .top_main_articles .top_main_list__item a:hover .img {
    opacity: 0.7;
  }
  .top_main_articles .top_main_list__item a:hover .title {
    text-decoration: underline;
  }
  .top_main_articles .top_main_list__item:first-child a:hover .img {
    opacity: 1;
  }
  .top_main_articles .top_main_list__item:first-child a:hover .img img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }
  .top_main_articles .top_main_list__item:first-child a:hover .title {
    text-decoration: underline;
  }
  .top_photo_gallery .top_photo_gallery_list a:hover {
    opacity: 0.7;
  }
  .top_recommend_gear .recommend_gear_list__item a:hover .img {
    opacity: 0.7;
  }
  .top_recommend_gear .recommend_gear_list__item a:hover .title,
  .top_recommend_gear .recommend_gear_list__item a:hover .text {
    color: var(--corporate-color);
    text-decoration: underline;
  }
  .top_movie .movie_list__item a:hover .img {
    opacity: 0.7;
  }
  .top_movie .movie_list__item a:hover .title {
    text-decoration: underline;
  }
  .top_bruder .bruder_list__item a:hover .img {
    opacity: 0.7;
  }
  .top_bruder .bruder_list__item a:hover .title {
    text-decoration: underline;
  }
  .tour_world_ranking .world_ranking_list__item a:hover .img {
    opacity: 0.7;
  }
  .tour_world_ranking .world_ranking_list__item a:hover .name {
    color: var(--corporate-color);
    text-decoration: underline;
  }
  .tour_world_ranking .world_ranking_link a:hover {
    color: var(--corporate-color);
    text-decoration: underline;
  }
  .tour_world_ranking .world_ranking_link a:hover::after {
    border-color: var(--corporate-color);
  }
  .side_articles_list__item a:hover .img {
    opacity: 0.7;
  }
  .side_articles_list__item a:hover .title {
    text-decoration: underline;
  }
  .side_ranking .side_ranking_list__item a:hover .img {
    opacity: 0.7;
  }
  .side_ranking .side_ranking_list__item a:hover .title {
    text-decoration: underline;
  }
  .side_tournament .tournament_list__item > a:hover .title {
    text-decoration: underline;
  }
  .side_tournament .tournament_list__item .buttons a:hover {
    /* color: var(--accent-color); */
    background: var(--bg-gray-color);
  }
  .side_special .special_list__item a:hover .img {
    opacity: 0.7;
  }
  .side_special .special_list__item a:hover .title {
    text-decoration: underline;
  }
  .side_leaders_board__header a:hover h2 {
    text-decoration: underline;
  }
  .side_leaders_board__badge a:hover {
    opacity: 0.7;
  }
  .side_board_tags li:hover {
    color: var(--white-color);
    background-color: var(--corporate-color);
    border-color: var(--corporate-color);
  }
  .side_match_result_badge a:hover {
    opacity: 0.7;
  }
  .side_match_result_01__header a:hover h2,
  .side_match_result_02__header a:hover h2 {
    text-decoration: underline;
  }
  .article_top .sns_list a:hover {
    opacity: 0.7;
  }
  .article_top .article_meta_tags__item a:hover {
    text-decoration: underline;
  }
  .article_main_img a:hover .caption,
  .tour_article_img a:hover .caption {
    text-decoration: underline;
  }
  .article_body a:hover {
    text-decoration: underline;
  }
  .toclist a:hover {
    text-decoration: underline;
  }
  .scrollTable table th a:hover,
  .scrollTable table td a:hover {
    text-decoration: underline;
  }
  .article_gallery_link a:hover {
    text-decoration: underline;
  }
  .article_bottom_pr a:hover {
    text-decoration: underline;
  }
  .next_page a:hover .next_page_text {
    text-decoration: underline;
  }
  .next_page a:hover {
    background: var(--bg-gray-color);
  }
  .article_bottom_sns .sns_list a:hover {
    opacity: 0.7;
  }
  .related_keywards .related_keywards_list li a:hover {
    color: var(--corporate-color);
    text-decoration: underline;
  }
  .tour_article_heading__title a:hover {
    color: var(--corporate-color);
    text-decoration: underline;
  }
  .tour_article_heading .tour_heading_menu .menu_list__item a:hover {
    border-color: var(--corporate-color);
    color: var(--white-color);
    background-color: var(--corporate-color);
  }
  .section_link a:hover {
    text-decoration: none;
    background: var(--bg-gray-color);
  }
  .section_link a:hover h2 {
    text-decoration: underline;
  }
  .related_gear .related_gear_list__item a:hover .img {
    opacity: 0.7;
  }
  .related_gear .related_gear_list__item a:hover .title,
  .related_gear .related_gear_list__item a:hover .text {
    text-decoration: underline;
  }
  .related_gear .related_gear_list__item .btns a:first-child:hover {
    background-color: var(--button-blueline-white-hover);
  }
  .related_gear .related_gear_list__item .btns a:nth-child(2):hover {
    background-color: var(--corporate-color-btn-hover);
    border-color: var(--corporate-color-btn-hover);
  }
  .related_gear .related_gear_more:hover {
    background: var(--bg-gray-color);
  }
  .article_profile .text a:hover {
    text-decoration: underline;
  }
  .swiper-slide a:hover figcaption {
    text-decoration: underline;
  }
}
@media (min-width: 768px) {
  [data-visible="sp"] {
    display: none !important;
  }
}
@media (max-width: 767.98px) {
  [data-visible="pc"] {
    display: none !important;
  }
}
@media (width < 768px) {
  .main_container--index .tags {
    -webkit-box-ordinal-group: 2;
    order: 1;
  }
  .main_container--index .top_main_articles {
    -webkit-box-ordinal-group: 3;
    order: 2;
  }
  .main_container--index .sp_banner--01 {
    -webkit-box-ordinal-group: 4;
    order: 3;
  }
  .main_container--index .top_news {
    -webkit-box-ordinal-group: 5;
    order: 4;
  }
  .main_container--index .sp_banner--02 {
    -webkit-box-ordinal-group: 6;
    order: 5;
  }
  .main_container--index .top_photo_gallery {
    -webkit-box-ordinal-group: 7;
    order: 6;
  }
  .main_container--index .sp_banner--03 {
    -webkit-box-ordinal-group: 8;
    order: 7;
  }
  .main_container--index .side_ranking {
    -webkit-box-ordinal-group: 9;
    order: 8;
  }
  .main_container--index .side_tournament {
    -webkit-box-ordinal-group: 10;
    order: 9;
  }
  .main_container--index .top_recommend_gear {
    -webkit-box-ordinal-group: 11;
    order: 10;
  }
  .main_container--index .side_special {
    -webkit-box-ordinal-group: 12;
    order: 11;
  }
  .main_container--index .sp_banner--04 {
    -webkit-box-ordinal-group: 13;
    order: 12;
  }
  .main_container--index .top_serial {
    -webkit-box-ordinal-group: 14;
    order: 13;
  }
  .main_container--index .sp_banner--05 {
    -webkit-box-ordinal-group: 15;
    order: 14;
  }
  .main_container--index .top_movie {
    -webkit-box-ordinal-group: 16;
    order: 15;
  }
  .main_container--index .sp_banner--06 {
    -webkit-box-ordinal-group: 17;
    order: 16;
  }
  .main_container--index .top_bruder {
    -webkit-box-ordinal-group: 18;
    order: 17;
  }
  .main_container--index .top_feature {
    -webkit-box-ordinal-group: 19;
    order: 18;
  }

  .main_container--tour .article_content {
    -webkit-box-ordinal-group: 1;
    order: 0;
  }
  .main_container--tour .related_keywards {
    -webkit-box-ordinal-group: 2;
    order: 1;
  }
  .main_container--tour .related_link--01 {
    -webkit-box-ordinal-group: 3;
    order: 2;
  }
  .main_container--tour .related_link--02 {
    -webkit-box-ordinal-group: 6;
    order: 5;
  }
  .main_container--tour .side_leaders_board {
    -webkit-box-ordinal-group: 4;
    order: 3;
  }
  .main_container--tour .side_match_result_01 {
    -webkit-box-ordinal-group: 4;
    order: 3;
  }
  .main_container--tour .side_match_result_02 {
    -webkit-box-ordinal-group: 4;
    order: 3;
  }
  .main_container--tour .sp_banner--03 {
    -webkit-box-ordinal-group: 5;
    order: 4;
  }
  .main_container--tour .sp_banner--04 {
    -webkit-box-ordinal-group: 7;
    order: 6;
  }
  .main_container--tour .side_ranking {
    -webkit-box-ordinal-group: 8;
    order: 7;
  }
  .main_container--tour .sp_banner--05 {
    -webkit-box-ordinal-group: 9;
    order: 8;
  }
  .main_container--tour .side_news {
    -webkit-box-ordinal-group: 10;
    order: 9;
  }
  .main_container--tour .side_special {
    -webkit-box-ordinal-group: 11;
    order: 10;
  }
  .main_container--tour .sp_banner--07 {
    -webkit-box-ordinal-group: 12;
    order: 11;
  }
  .main_container--tour .top_feature {
    -webkit-box-ordinal-group: 13;
    order: 12;
  }
  .main_container--tour .recommend_articles {
    -webkit-box-ordinal-group: 14;
    order: 13;
  }

  .main_container--article .article_content {
    -webkit-box-ordinal-group: 1;
    order: 0;
  }
  .main_container--article .related_keywards {
    -webkit-box-ordinal-group: 2;
    order: 1;
  }
  .main_container--article .related_link--01 {
    -webkit-box-ordinal-group: 3;
    order: 2;
  }
  .main_container--article .related_link--02 {
    -webkit-box-ordinal-group: 6;
    order: 5;
  }
  .main_container--article .side_leaders_board {
    -webkit-box-ordinal-group: 4;
    order: 3;
  }
  .main_container--article .side_match_result_01 {
    -webkit-box-ordinal-group: 4;
    order: 3;
  }
  .main_container--article .side_match_result_02 {
    -webkit-box-ordinal-group: 4;
    order: 3;
  }
  .main_container--article .sp_banner--03 {
    -webkit-box-ordinal-group: 5;
    order: 4;
  }
  .main_container--article .sp_banner--04 {
    -webkit-box-ordinal-group: 7;
    order: 6;
  }
  .main_container--article .side_ranking {
    -webkit-box-ordinal-group: 8;
    order: 7;
  }
  .main_container--article .sp_banner--05 {
    -webkit-box-ordinal-group: 9;
    order: 8;
  }
  .main_container--article .side_news {
    -webkit-box-ordinal-group: 10;
    order: 9;
  }
  .main_container--article .side_special {
    -webkit-box-ordinal-group: 11;
    order: 10;
  }
  .main_container--article .sp_banner--07 {
    -webkit-box-ordinal-group: 12;
    order: 11;
  }
  .main_container--article .top_feature {
    -webkit-box-ordinal-group: 13;
    order: 12;
  }
  .main_container--article .recommend_articles {
    -webkit-box-ordinal-group: 14;
    order: 13;
  }

  .main_container--tour_index .tour_page_title {
    -webkit-box-ordinal-group: 1;
    order: 0;
  }
  .main_container--tour_index .sp_live_score {
    -webkit-box-ordinal-group: 2;
    order: 1;
  }
  .main_container--tour_index .tags {
    -webkit-box-ordinal-group: 3;
    order: 2;
  }
  .main_container--tour_index .top_main_articles {
    -webkit-box-ordinal-group: 4;
    order: 3;
  }
  .main_container--tour_index .sp_banner--01 {
    -webkit-box-ordinal-group: 5;
    order: 4;
  }
  .main_container--tour_index .tour_articles {
    -webkit-box-ordinal-group: 6;
    order: 5;
  }
  .main_container--tour_index .sp_banner--02 {
    -webkit-box-ordinal-group: 7;
    order: 6;
  }
  .main_container--tour_index .top_photo_gallery {
    -webkit-box-ordinal-group: 8;
    order: 7;
  }
  .main_container--tour_index .side_tournament {
    -webkit-box-ordinal-group: 9;
    order: 8;
  }
  .main_container--tour_index .sp_banner--03 {
    -webkit-box-ordinal-group: 10;
    order: 9;
  }
  .main_container--tour_index .side_ranking {
    -webkit-box-ordinal-group: 11;
    order: 10;
  }
  .main_container--tour_index .sp_banner--04 {
    -webkit-box-ordinal-group: 12;
    order: 11;
  }
  .main_container--tour_index .side_special {
    -webkit-box-ordinal-group: 13;
    order: 12;
  }
  .main_container--tour_index .sp_banner--05 {
    -webkit-box-ordinal-group: 14;
    order: 13;
  }
  .main_container--tour_index .tour_world_ranking {
    -webkit-box-ordinal-group: 15;
    order: 14;
  }
  .main_container--tour_index .sp_banner--06 {
    -webkit-box-ordinal-group: 16;
    order: 15;
  }
  .main_container--tour_index .tour_serial {
    -webkit-box-ordinal-group: 17;
    order: 16;
  }
  .main_container--tour_index .sp_banner--07 {
    -webkit-box-ordinal-group: 18;
    order: 17;
  }
  .main_container--tour_index .top_feature {
    -webkit-box-ordinal-group: 19;
    order: 18;
  }
  .main_container--tour_index .recommend_articles {
    -webkit-box-ordinal-group: 20;
    order: 19;
  }

  .article_top .sns_list img {
    width: 25px;
  }
  .article_top .sns_list svg {
    width: 25px;
    height: 13px;
    margin-bottom: 2px;
  }
  .article_bottom_sns .sns_list img {
    width: 32px;
  }
  .article_bottom_sns .sns_list svg {
    width: 32px;
    height: 16px;
    margin-bottom: 2px;
  }
  .section_link .body h2 {
    margin-top: calc((1em - 1lh) / 2);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
}
@media screen and (any-hover: hover) and (min-width: 768px) {
  .tab li.tab_item a:hover::after,
  .tab li.tab_item span:hover::after,
  .side_tab li.tab_item a:hover::after,
  .side_tab li.tab_item span:hover::after {
    inset: auto 0 -1px;
  }
}
@media (min-width: 1263px) {
  .pagetop {
    margin-right: -624px;
  }
}

.tour_article_heading {
  margin-bottom: 12px;
}
.tour_article_heading__inner {
  padding-inline: unset;
}
.tour_article_heading__title {
  padding-block: unset;
}
@media screen and (min-width: 768px) {
  .tour_article_heading {
    margin-bottom: 24px;
    padding-top: 0px;
  }
  .tour_article_heading .tour_heading_menu .menu_list {
    flex-wrap: wrap;
    width: unset;
  }
}

/* Piano ログイン */
div#pianoj_wall {
  position: relative;
}
div#pianoj_wall::before {
  content: "";
  width: 100%;
  height: 60px;
  background: linear-gradient(
    181deg,
    rgba(255, 255, 255, 0) 1.37%,
    #fff 44.22%
  );
  position: absolute;
  top: -60px;
}
