:root {
  /* Colors -- Use in vars.css only */
  --black: #000000;
  --light-basic: #e6e6e6;
  --smoke-basic: #999999;
  --smoke-strong: #767676;
  --default-key-color: #ddaa00;
  --default-key-color-gradated-on-heading: #b2ba00;
  --white: #ffffff;
  --dark-basic: #212121;
  --dark-weak: #333333;
  --white-8: rgba(255, 255, 255, 0.08);
  --black-8: rgba(0, 0, 0, 0.08);
  --purple: #e9d2fd;
  --pale-weak: #f5f5f5;

  /* Background */
  --bg-regular: var(--black);
  --bg-white: var(--white);
  --bg-smoke-basic: var(--smoke-basic);
  --bg-dark-weak: var(--dark-weak);
  --bg-placeholder: var(--bg-dark-weak);
  --bg-link-hover--on-dark-bg: var(--white-8);
  --bg-link-hover--on-light-bg: var(--black-8);
  --bg-text-highlight: var(--purple);
  --bg-pale-weak: var(--pale-weak);
  --bg-dark-basic: var(--dark-basic);

  /* Font family */
  --font-family-sans-serif:
    'CopyRight', 'Emoji', 'Hiragino Sans', 'BIZ UDPGothic Alphabet', 'BIZ UDGothic', Meiryo,
    sans-serif;

  /* Font Size */
  --font-size-12px: 12px;
  --font-size-14px: 14px;
  --font-size-16px: 16px;
  --font-size-18px: 18px;
  --font-size-20px: 20px;
  --font-size-22px: 22px;
  --font-size-24px: 24px;
  --font-size-28px: 28px;
  --font-size-36px: 36px;
  --font-size-40px: 40px;

  /* Font Style */
  --font-style-bold: bold;

  /* Font colors */
  --font-color-regular: var(--light-basic);
  --font-color-smoke-basic: var(--smoke-basic);
  --font-color-smoke-strong: var(--smoke-strong);
  --font-color-white: var(--white);
  --font-color-dark-basic: var(--dark-basic);
  --font-color-black: var(--black);

  /* Space */
  --space: 4px;

  /* Module Size */
  --content-module-max-width: 680px;
  --content-module-padding-horizontal: calc(var(--space) * 4);
  --content-module-container-max-width: calc(
    var(--content-module-max-width) + var(--content-module-padding-horizontal) * 2
  );

  /* Header Size */
  --header-logo-height: 60px;
  --header-vertical-padding: var(--space);
  --header-height: calc(var(--header-logo-height) + 2 * var(--header-vertical-padding));

  /* Animation */
  --fading-duration: 0.1s;
  --fading-easing: linear;

  /* Padding */
  --padding-inline-link: 3px;

  /* Border Radius */
  --radius: 4px;
}
html{-webkit-text-size-adjust:100%;box-sizing:border-box;tab-size:4;word-break:normal}
*,:after,:before{background-repeat:no-repeat;box-sizing:inherit}
:after,:before{text-decoration:inherit;vertical-align:inherit}
*{margin:0;padding:0}
hr{color:inherit;height:0;overflow:visible}
details,main{display:block}
summary{display:list-item}
small{font-size:80%}
[hidden]{display:none}
abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}
a{background-color:transparent}
a:active,a:hover{outline-width:0}
code,kbd,pre,samp{font-family:monospace,monospace}
pre{font-size:1em}
b,strong{font-weight:bolder}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sub{bottom:-.25em}
sup{top:-.5em}
table{border-color:inherit;text-indent:0}
iframe{border-style:none}
input{border-radius: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}
textarea{overflow:auto;resize:vertical}
button,input,optgroup,select,textarea{font:inherit}
optgroup{font-weight:700}
button{overflow:visible}
button,select{text-transform:none}
[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer}
[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}
[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:1px dotted ButtonText}
[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}
button,input,select,textarea{background-color:transparent;border-style:none}
a:focus,button:focus,input:focus,select:focus,textarea:focus{outline-width:0}
select{-moz-appearance:none;-webkit-appearance:none}
select::-ms-expand{display:none}
select::-ms-value{color:currentColor}
legend{border:0;color:inherit;display:table;max-width:100%;white-space:normal}
::-webkit-file-upload-button{-webkit-appearance:button;color:inherit;font:inherit}
[disabled]{cursor:default}
img{border-style:none}
progress{vertical-align:baseline}
[aria-busy=true]{cursor:progress}
[aria-controls]{cursor:pointer}
[aria-disabled=true]{cursor:default}
input,
button,
select,
textarea {
  color: inherit;
  font: inherit;
}
a:focus,
a:active,
a:hover,
button:focus,
input:focus,
select:focus,
textarea:focus {
  outline-width: initial;
}
/**
 * 絵文字のコードポイントのみに絵文字フォントが当たるように unicode-range 指定で定義する
 * See https://github.com/abema/abema-web/issues/9042
 */
@font-face {
  font-family: 'Emoji';
  src:
    local('Segoe UI Emoji'), local('Segoe UI Symbol'), local('Apple Color Emoji'),
    local('Noto Color Emoji'), local('Noto Emoji');
  unicode-range:
    U+200d, U+203c, U+2049, U+20e3, U+2122, U+2139, U+2194-2199, U+21a9-21aa, U+2328, U+23cf,
    U+23ed-23ef, U+23f1-23f2, U+23f8-23fa, U+24c2, U+25aa-25ab, U+25b6, U+25c0, U+25fb-25fc,
    U+2600-2604, U+260e, U+2611, U+2618, U+261d, U+2620, U+2622-2623, U+2626, U+262a, U+262e-262f,
    U+2638-263a, U+2640, U+2642, U+265f-2660, U+2663, U+2665-2666, U+2668, U+267b, U+267e, U+2692,
    U+2694-2697, U+2699, U+269b-269c, U+26a0, U+26a7, U+26b0-26b1, U+26c8, U+26cf, U+26d1, U+26d3,
    U+26e9, U+26f0-26f1, U+26f4, U+26f7-26f9, U+2702, U+2708-2709, U+270c-270d, U+270f, U+2712,
    U+2714, U+2716, U+271d, U+2721, U+2733-2734, U+2744, U+2747, U+2763-2764, U+27a1, U+2934-2935,
    U+2b05-2b07, U+3030, U+303d, U+3297, U+3299, U+fe0f, U+1f170-1f171, U+1f17e-1f17f, U+1f202,
    U+1f237, U+1f308, U+1f321, U+1f324-1f32c, U+1f336, U+1f37d, U+1f396-1f397, U+1f399-1f39b,
    U+1f39e-1f39f, U+1f3cb-1f3ce, U+1f3d4-1f3df, U+1f3f3, U+1f3f5, U+1f3f7, U+1f43f, U+1f441,
    U+1f4fd, U+1f549-1f54a, U+1f56f-1f570, U+1f573-1f579, U+1f587, U+1f58a-1f58d, U+1f590, U+1f5a5,
    U+1f5a8, U+1f5b1-1f5b2, U+1f5bc, U+1f5c2-1f5c4, U+1f5d1-1f5d3, U+1f5dc-1f5de, U+1f5e1, U+1f5e3,
    U+1f5e8, U+1f5ef, U+1f5f3, U+1f5fa, U+1f6cb, U+1f6cd-1f6cf, U+1f6e0-1f6e5, U+1f6e9, U+1f6f0,
    U+1f6f3;
}
/**
 * コピーライトマークがヒラギノで小さくなってしまうので、英数字用フォントに切り替える
 */
@font-face {
  font-family: 'CopyRight';
  src: local('helvetica'), local('arial');
  unicode-range: U+00A9;
}
/**
 * Windows 環境で英字のみプロポーショナルフォントに切り替える
 */
@font-face {
  font-family: 'BIZ UDPGothic Alphabet';
  font-weight: 400;
  src: local('BIZ UDPGothic');
  unicode-range: U+00-7f;
}
@font-face {
  font-family: 'BIZ UDPGothic Alphabet';
  font-weight: 700;
  src: local('BIZ UDPGothic Bold');
  unicode-range: U+00-7f;
}
:root {
  scroll-behavior: smooth;
}
body {
  color: #e6e6e6;
  font-family: 'CopyRight', 'Emoji', 'Hiragino Sans', 'BIZ UDPGothic Alphabet', 'BIZ UDGothic', Meiryo,
    sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  word-break: break-all;
}
@supports (overflow-wrap: anywhere) {
  body {
    overflow-wrap: anywhere;
    word-break: normal;
  }
}
html {
  /* stylelint-disable-next-line plugin/browser-compat */
  scroll-padding-top: calc(60px + 2 * 4px);
}
/* https://github.com/twbs/bootstrap/blob/1df098361cac04217d6a464c80e890c4335ecb5c/scss/mixins/_visually-hidden.scss#L8-L18 */
[data-visually-hidden='true'] {
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  /* stylelint-disable-next-line scale-unlimited/declaration-strict-value */
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}
@media screen and (max-width: 712px) {
  html {
    /* stylelint-disable-next-line plugin/browser-compat */
    scroll-padding-top: 0;
  }
}
:root {
  --com-Modules-Divider-height: 1px;
  --com-Modules-Divider-opacity: 0.5;
}
.com-Modules-Divider {
  padding: calc(4px * 9) 0 calc(4px * 5) 0;
  width: 100%;
}
.com-Modules-Divider::before {
  background: #999999;
  content: '';
  display: block;
  height: 1px;
  opacity: 0.5;
  width: 100%;
}
.com-modules-Copyright {
  padding: calc(4px * 8) 0;
}
.com-modules-Copyright__listitem {
  color: #999999;
  font-size: 14px;
  line-height: 1.3;
  list-style: none;
}
.com-modules-Copyright__listitem + .com-modules-Copyright__listitem {
  margin-top: 4px;
}
.com-modules-HeadingH1 {
  font-size: 40px;
  font-weight: bold;
  line-height: 1.5;
  padding-top: calc(4px * 6);
}
.com-modules-HeadingH1--light {
  color: #212121;
}
.com-modules-HeadingH1--dark {
  color: #e6e6e6;
}
.com-modules-HeadingH1::after {
  /* stylelint-disable-next-line declaration-block-no-duplicate-properties */
  background: #ddaa00;
  /* stylelint-disable-next-line declaration-block-no-duplicate-properties */
  background: var(--key-color);
  content: '';
  display: block;
  height: calc(4px * 2);
  margin-top: calc(4px * 4);
  width: 100px;
}
@media screen and (max-width: 712px) {
  .com-modules-HeadingH1 {
    font-size: 28px;
    padding-top: calc(4px * 2);
  }

  .com-modules-HeadingH1::after {
    margin-top: calc(4px * 2);
    width: 80px;
  }
}
.com-modules-Heading {
  font-weight: bold;
  line-height: 1.5;
}
.com-modules-Heading:target .com-modules-Heading-text {
  background-color: #e9d2fd;
  color: #000000;
}
.com-modules-Heading--h2 {
  /* stylelint-disable-next-line declaration-block-no-duplicate-properties */
  background: linear-gradient(
    90deg,
    #ddaa00,
    #b2ba00
  );
  /* stylelint-disable-next-line declaration-block-no-duplicate-properties */
  background: linear-gradient(
    90deg,
    var(--key-color),
    var(--key-color-gradated-on-heading25) 25%,
    var(--key-color-gradated-on-heading50) 50%,
    var(--key-color-gradated-on-heading75) 75%,
    var(--key-color-gradated-on-heading)
  );
  /* stylelint-disable-next-line plugin/browser-compat */
  -webkit-background-clip: text;
  /* background-clip が iOS 13 以前対応していない lint が出るが 13 以前は webkit prefix を対応している */
  /* stylelint-disable-next-line plugin/browser-compat */
  background-clip: text;
  font-size: 36px;
  padding: calc(4px * 8) 0 calc(4px * 2) 0;
  -webkit-text-fill-color: transparent;
}
.com-modules-Heading:target.com-modules-Heading--h2 {
  background: transparent;
  background-clip: inherit;
  -webkit-text-fill-color: inherit;
}
.com-modules-Heading--h3 {
  font-size: 28px;
  padding-top: calc(4px * 4);
}
.com-modules-Heading--h3--light {
  color: #212121;
}
.com-modules-Heading--h3--dark {
  color: #e6e6e6;
}
.com-modules-Heading--h4 {
  font-size: 22px;
}
.com-modules-Heading--h4--light {
  color: #767676;
}
.com-modules-Heading--h4--dark {
  color: #999999;
}
@media screen and (max-width: 712px) {
  .com-modules-Heading--h2 {
    font-size: 24px;
    padding: calc(4px * 4) 0 0;
  }

  .com-modules-Heading--h3 {
    font-size: 20px;
    padding-top: calc(4px * 3);
  }

  .com-modules-Heading--h4 {
    font-size: 18px;
  }
}
.com-modules-Body {
  font-size: 18px;
  line-height: 1.7;
}
.com-modules-Body--light {
  color: #212121;
}
.com-modules-Body--dark {
  color: #ffffff;
}
.com-modules-Body a {
  border-radius: 4px;
  /* stylelint-disable-next-line declaration-block-no-duplicate-properties */
  color: #ddaa00;
  /* stylelint-disable-next-line declaration-block-no-duplicate-properties */
  color: var(--key-color);
  display: inline-block;
  margin: calc(3px * -1);
  padding: 3px;
  transition: background-color 0.1s linear;
}
.com-modules-Body--light a:hover,
.com-modules-Body--light a:focus {
  background-color: rgba(0, 0, 0, 0.08);
}
.com-modules-Body--dark a:hover,
.com-modules-Body--dark a:focus {
  background-color: rgba(255, 255, 255, 0.08);
}
/* stylelint-disable-next-line plugin/browser-compat */
.com-modules-Body a:focus:not(:focus-visible):not(:hover) {
  background: transparent;
}
@media screen and (max-width: 712px) {
  .com-modules-Body {
    font-size: 16px;
  }
}
.com-modules-Header__container {
  background: #000000;
  display: block;
  width: 100%;
}
.com-modules-Header__nav-list {
  align-items: center;
  display: flex;
  flex-direction: row;
  padding: 4px calc(4px * 3);
}
.com-modules-Header__list-item {
  list-style: none;
}
.com-modules-Header__service-logo-container {
  flex-grow: 1;
  flex-shrink: 0;
}
.com-modules-Header__service-logo-link {
  align-items: center;
  border-radius: 4px;
  display: flex;
  height: 60px;
  justify-content: center;
  overflow: hidden;
  position: relative;
  width: 116px;
}
.com-modules-Header__service-logo-link::after {
  background-color: rgba(255, 255, 255, 0.08);
  bottom: 0;
  content: '';
  display: inline-block;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  /* stylelint-disable-next-line plugin/browser-compat */
  transition: opacity 0.1s linear;
}
.com-modules-Header__service-logo-link:hover::after,
.com-modules-Header__service-logo-link:focus::after {
  opacity: 1;
}
/* stylelint-disable-next-line plugin/browser-compat */
.com-modules-Header__service-logo-link:focus:not(:focus-visible):not(:hover)::after {
  opacity: 0;
}
.com-modules-Header__service-logo {
  fill: #ffffff;
  height: 32px;
  width: 112px;
}
.com-modules-Header__sns-icon-container {
  flex-grow: 0;
  flex-shrink: 0;
}
.com-modules-Header__sns-icon-container + .com-modules-Header__sns-icon-container {
  margin-left: calc(4px * 3);
}
.com-modules-Header__sns-icon-link {
  align-items: center;
  color: #ffffff;
  display: flex;
  height: 40px;
  justify-content: center;
  position: relative;
  width: 40px;
}
.com-modules-Header__sns-icon-link::after {
  background-color: rgba(255, 255, 255, 0.08);
  bottom: 0;
  content: '';
  display: inline-block;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  /* stylelint-disable-next-line plugin/browser-compat */
  transition: opacity 0.1s linear;
}
.com-modules-Header__sns-icon-link:hover::after,
.com-modules-Header__sns-icon-link:focus::after {
  opacity: 1;
}
/* stylelint-disable-next-line plugin/browser-compat */
.com-modules-Header__sns-icon-link:focus:not(:focus-visible):not(:hover)::after {
  opacity: 0;
}
.com-modules-Header__sns-icon-logo {
  display: inline-block;
  height: 28px;
  width: 28px;
}
@media screen and (max-width: 712px) {
  .com-modules-Header__nav-list {
    padding: 4px calc(4px * 2);
  }

  .com-modules-Header__service-logo-link {
    height: 40px;
    justify-content: center;
    width: 85px;
  }

  .com-modules-Header__service-logo {
    height: 22px;
    width: 77px;
  }

  .com-modules-Header__sns-icon-link {
    height: 32px;
    width: 32px;
  }

  .com-modules-Header__sns-icon-container + .com-modules-Header__sns-icon-container {
    margin-left: calc(4px * 2);
  }

  .com-modules-Header__sns-icon-logo {
    height: 22.4px;
    width: 22.4px;
  }
}
.com-modules-Footer {
  align-items: center;
  background: #000000;
  display: flex;
  flex-direction: column;
  padding: calc(4px * 20) 0;
}
.com-modules-Footer__container {
  align-items: center;
  display: flex;
  flex-direction: column;
  max-width: 680px;
  width: 100%;
}
.com-modules-Footer__service-logo-link {
  display: block;
  margin-bottom: calc(4px * 10);
  position: relative;
}
.com-modules-Footer__service-logo-link::after {
  background-color: rgba(255, 255, 255, 0.08);
  bottom: 0;
  content: '';
  display: block;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  /* stylelint-disable-next-line plugin/browser-compat */
  transition: opacity 0.1s linear;
}
.com-modules-Footer__service-logo-link:hover::after,
.com-modules-Footer__service-logo-link:focus::after {
  opacity: 1;
}
/* stylelint-disable-next-line plugin/browser-compat */
.com-modules-Footer__service-logo-link:focus:not(:focus-visible):not(:hover)::after {
  opacity: 0;
}
.com-modules-Footer__service-logo {
  display: block;
  height: 96px;
  width: 240px;
}
.com-modules-Footer__store-link-list {
  display: flex;
  justify-content: center;
  margin-bottom: calc(4px * 10);
}
.com-modules-Footer__store-link-listitem {
  flex-grow: 0;
  flex-shrink: 0;
  list-style: none;
}
.com-modules-Footer__store-link-listitem + .com-modules-Footer__store-link-listitem {
  margin-left: calc(4px * 4);
}
.com-modules-Footer__store-link {
  border-radius: 4px;
  display: block;
  overflow: hidden;
  position: relative;
}
.com-modules-Footer__store-link::after {
  background-color: rgba(255, 255, 255, 0.08);
  bottom: 0;
  content: '';
  display: block;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  /* stylelint-disable-next-line plugin/browser-compat */
  transition: opacity 0.1s linear;
}
.com-modules-Footer__store-link:hover::after,
.com-modules-Footer__store-link:focus::after {
  opacity: 1;
}
.com-modules-Footer__store-img {
  display: block;
}
.com-modules-Footer__guideline-link-list {
  margin-bottom: calc(4px * 10);
  padding: 0 calc(4px * 4);
  width: 100%;
}
.com-modules-Footer__guideline-link-listitem {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  list-style: none;
}
.com-modules-Footer__guideline-link-listitem + .com-modules-Footer__guideline-link-listitem {
  margin-top: calc(4px * 4);
}
.com-modules-Footer__guideline-link {
  border-radius: 4px;
  color: #e6e6e6;
  display: inline-block;
  margin: calc(3px * -1);
  padding: 3px;
  text-decoration: none;
  transition: background-color 0.1s linear;
}
.com-modules-Footer__guideline-link:hover,
.com-modules-Footer__guideline-link:focus {
  background-color: rgba(255, 255, 255, 0.08);
}
/* stylelint-disable-next-line plugin/browser-compat */
.com-modules-Footer__guideline-link:not(:focus-visible):not(:hover) {
  background: transparent;
}
.com-modules-Footer__copyright {
  color: #999999;
  font-size: 16px;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 712px) {
  .com-modules-Footer {
    padding: calc(4px * 15) 0;
  }

  .com-modules-Footer__service-logo-link,
  .com-modules-Footer__store-link-list,
  .com-modules-Footer__guideline-link-list {
    margin-bottom: calc(4px * 6);
  }

  .com-modules-Footer__service-logo {
    height: 64px;
    width: 160px;
  }

  .com-modules-Footer__guideline-link-listitem {
    font-size: 14px;
  }

  .com-modules-Footer__copyright {
    font-size: 12px;
  }
}
.com-modules-Cover {
  background: #333333;
  position: relative;
  width: 100%;
}
.com-modules-Cover__placeholder {
  width: 100%;
}
.com-modules-Cover__placeholder--mobile {
  display: none;
}
.com-modules-Cover__img {
  bottom: 0;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}
@media screen and (max-width: 712px) {
  .com-modules-Cover__placeholder--desktop {
    display: none;
  }

  .com-modules-Cover__placeholder--mobile {
    display: block;
  }
}
.com-modules-Picture__figure {
  align-items: center;
  display: flex;
  flex-direction: column;
}
.com-modules-Picture__link {
  display: block;
  position: relative;
}
.com-modules-Picture__img {
  display: block;
  height: auto;
  max-width: 100%;
}
.com-modules-Picture__link::after {
  background-color: rgba(255, 255, 255, 0.08);
  bottom: 0;
  content: '';
  display: inline-block;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  /* stylelint-disable-next-line plugin/browser-compat */
  transition: opacity 0.1s linear;
}
.com-modules-Picture__link:hover::after,
.com-modules-Picture__link:focus::after {
  opacity: 1;
}
/* stylelint-disable-next-line plugin/browser-compat */
.com-modules-Picture__link:focus:not(:focus-visible):not(:hover)::after {
  opacity: 0;
}
.com-modules-Picture__figure-caption {
  color: #999999;
  font-size: 14px;
  line-height: 1.5;
  margin-top: calc(4px * 2);
  width: 100%;
}
@media screen and (max-width: 712px) {
  .com-modules-Picture__figure-caption {
    font-size: 12px;
  }
}
.com-modules-CardVerticalThumb {
  position: relative;
}
.com-modules-CardVerticalThumb::after {
  background-color: rgba(255, 255, 255, 0.08);
  border-radius: 4px;
  bottom: 0;
  content: '';
  display: inline-block;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  /* stylelint-disable-next-line plugin/browser-compat */
  transition: opacity 0.1s linear;
}
.com-modules-CardVerticalThumb:hover::after,
.com-modules-CardVerticalThumb:focus::after {
  opacity: 1;
}
/* stylelint-disable-next-line plugin/browser-compat */
.com-modules-CardVerticalThumb:focus:not(:focus-visible):not(:hover)::after {
  opacity: 0;
}
.com-modules-CardVerticalThumb__img {
  display: block;
  height: auto;
  width: 100%;
}
:root {
  --com-modules-CardVertical-desktop-item-margin: calc(var(--space) * 4);
  --com-modules-CardVertical-desktop-thumbnail-width: calc(
    1 / 3 * (100% - var(--com-modules-CardVertical-desktop-item-margin) * 2)
  );
  --com-modules-CardVertical-mobile-item-margin: var(--space);
  --com-modules-CardVertical-mobile-thumbnail-width: calc(
    1 / 3 * (100% - var(--com-modules-CardVertical-mobile-item-margin) * 2)
  );
}
.com-modules-CardVertical {
  display: flex;
  flex-wrap: wrap;
}
.com-modules-CardVertical__listitem {
  list-style: none;
  margin-bottom: calc(4px * 4);
  margin-right: calc(4px * 4);
  width: calc(
    1 / 3 * (100% - calc(4px * 4) * 2)
  );
}
.com-modules-CardVertical__listitem--3x {
  margin-right: 0;
}
@media screen and (max-width: 712px) {
  .com-modules-CardVertical__listitem {
    margin-bottom: 4px;
    margin-right: 4px;
    width: calc(
    1 / 3 * (100% - 4px * 2)
  );
  }

  .com-modules-CardVertical__listitem--3x {
    margin-right: 0;
  }
}
.com-modules-CardHorizontalThumb {
  position: relative;
  width: 100%;
}
.com-modules-CardHorizontalThumb::before {
  content: '';
  display: block;
  padding-top: calc(9 / 16 * 100%);
  width: 100%;
}
.com-modules-CardHorizontalThumb--small {
  margin-right: calc(4px * 4);
  width: 50%;
}
.com-modules-CardHorizontalThumb--is-loaded {
  background: transparent;
}
.com-modules-CardHorizontalThumb-img {
  background: #333333;
  border-radius: 4px;
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.com-modules-CardHorizontal {
  display: flex;
  flex-direction: column;
  padding: calc(4px * 2) 0 calc(4px * 6);
  width: 100%;
}
.com-modules-CardHorizontal--double-column {
  height: 100%;
}
.com-modules-CardHorizontal__upper-container--small-thumbnail {
  display: flex;
  flex-direction: row;
}
.com-modules-CardHorizontal__heading-container--small-thumbnail {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 50%;
}
.com-modules-CardHorizontal__title {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.5;
  margin-top: calc(4px * 3);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.com-modules-CardHorizontal__title--small-thumbnail {
  -webkit-box-orient: vertical;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  margin-top: 0;
  max-height: calc(20px * 1.5 * 2);
  white-space: normal;
}
.com-modules-CardHorizontal__title--light {
  color: #212121;
}
.com-modules-CardHorizontal__title--dark {
  color: #ffffff;
}
.com-modules-CardHorizontal__tags {
  display: flex;
  flex-wrap: wrap;
  /* ネガティブマージンで２行における２つ目のアイテムの下マージンを相殺する */
  margin: calc(4px * 3) 0 calc(-1 * 4px * 2) 0;
}
.com-modules-CardHorizontal__tag {
  align-items: center;
  border-radius: 4px;
  display: flex;
  flex-direction: row;
  flex-grow: 0;
  flex-shrink: 0;
  font-size: 12px;
  font-weight: bold;
  height: 22px;
  margin: 0 calc(4px * 2) calc(4px * 2) 0;
  padding: 0 calc(4px * 2);
}
.com-modules-CardHorizontal__description {
  font-size: 18px;
  line-height: 1.7;
  margin-top: calc(4px * 3);
}
.com-modules-CardHorizontal__description--light {
  color: #212121;
}
.com-modules-CardHorizontal__description--dark {
  color: #ffffff;
}
.com-modules-CardHorizontal__description--double-column {
  flex-grow: 1;
}
.com-modules-CardHorizontal__button {
  margin-top: calc(4px * 3);
}
@media screen and (max-width: 712px) {
  .com-modules-CardHorizontal {
    padding: 0 0 calc(4px * 8) 0;
  }

  .com-modules-CardHorizontal--double-column {
    height: auto;
  }

  .com-modules-CardHorizontal__title {
    font-size: 18px;
  }

  .com-modules-CardHorizontal__title--small-thumbnail {
    font-size: 16px;
  }

  .com-modules-CardHorizontal__tags {
    margin-top: calc(4px * 2);
  }

  .com-modules-CardHorizontal__description {
    font-size: 16px;
    margin-top: calc(4px * 2);
  }

  .com-modules-CardHorizontal__description--double-column {
    flex-grow: 0;
  }
}
.com-modules-BasicButton {
  align-items: center;
  /* stylelint-disable-next-line declaration-block-no-duplicate-properties */
  background: #ddaa00;
  /* stylelint-disable-next-line declaration-block-no-duplicate-properties */
  background: var(--key-color);
  border-radius: calc(4px * 3);
  display: flex;
  flex-direction: row;
  font-size: 20px;
  font-weight: bold;
  height: 60px;
  justify-content: center;
  line-height: 1.5;
  overflow: hidden;
  position: relative;
  text-decoration: none;
  width: 100%;
}
.com-modules-BasicButton--light {
  color: #ffffff;
}
.com-modules-BasicButton--dark {
  color: #000000;
}
.com-modules-BasicButton::after {
  background-color: rgba(255, 255, 255, 0.08);
  bottom: 0;
  content: '';
  display: inline-block;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  /* stylelint-disable-next-line plugin/browser-compat */
  transition: opacity 0.1s linear;
}
.com-modules-BasicButton:hover::after,
.com-modules-BasicButton:focus::after {
  opacity: 1;
}
/* stylelint-disable-next-line plugin/browser-compat */
.com-modules-BasicButton:focus:not(:focus-visible):not(:hover)::after {
  opacity: 0;
}
@media screen and (max-width: 712px) {
  .com-modules-BasicButton {
    border-radius: calc(4px * 2);
    font-size: 16px;
    height: 48px;
  }
}
:root {
  --com-module-YouTubeEmbed-player-ratio: 9 / 16;
}
.com-modules-YouTubeEmbed {
  position: relative;
}
.com-modules-YouTubeEmbed::before {
  content: '';
  display: block;
  padding-top: calc(9 / 16 * 100%);
  width: 100%;
}
.com-modules-YouTubeEmbed__player {
  bottom: 0;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}
.com-modules-CardHorizontal2Column {
  display: flex;
  flex-direction: row;
}
.com-modules-CardHorizontal2Column__card {
  flex-grow: 0;
  flex-shrink: 1;
  list-style: none;
  min-width: 0;
  width: 50%;
}
.com-modules-CardHorizontal2Column__card + .com-modules-CardHorizontal2Column__card {
  margin-left: calc(4px * 4);
}
@media screen and (max-width: 712px) {
  .com-modules-CardHorizontal2Column {
    flex-direction: column;
  }

  .com-modules-CardHorizontal2Column__card {
    width: 100%;
  }

  .com-modules-CardHorizontal2Column__card + .com-modules-CardHorizontal2Column__card {
    margin-left: 0;
    margin-top: calc(4px * 4);
  }
}
.com-modules-TextButton {
  align-items: center;
  padding: 4px 0;
  text-align: center;
  width: 100%;
}
.com-modules-TextButton__link {
  align-items: center;
  border-radius: 4px;
  /* stylelint-disable-next-line declaration-block-no-duplicate-properties */
  color: #ddaa00;
  /* stylelint-disable-next-line declaration-block-no-duplicate-properties */
  color: var(--key-color);
  display: inline-flex;
  flex-direction: row;
  padding: 4px;
  text-decoration: none;
  transition: background-color 0.1s linear;
}
.com-modules-TextButton__link--light:hover,
.com-modules-TextButton__link--light:focus {
  background: rgba(0, 0, 0, 0.08);
}
.com-modules-TextButton__link--dark:hover,
.com-modules-TextButton__link--dark:focus {
  background: rgba(255, 255, 255, 0.08);
}
/* stylelint-disable-next-line plugin/browser-compat */
.com-modules-TextButton__link:not(:focus-visible):not(:hover) {
  background: transparent;
}
.com-modules-TextButton__text {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  margin-right: 4px;
}
.com-modules-TextButton__arrow-forward {
  height: 20px;
  width: 20px;
}
.com-modules-SNSEmbed {
  font-size: 18px;
  line-height: 1.7;
}
.com-modules-SNSEmbed > p {
  margin: calc(4px * 4) 0;
}
.com-modules-SNSEmbed--light {
  color: #212121;
}
.com-modules-SNSEmbed--dark {
  color: #ffffff;
}
.com-modules-TableOfContentsListItem {
  border-bottom: solid 1px rgba(0, 0, 0, 0.08);
  color: #212121;
  display: block;
  font-size: 14px;
  line-height: 1.5;
  padding: calc(4px * 2) 0;
  position: relative;
  text-decoration: none;
}
.com-modules-TableOfContentsListItem::after {
  background-color: rgba(255, 255, 255, 0.08);
  bottom: 0;
  content: '';
  display: inline-block;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  /* stylelint-disable-next-line plugin/browser-compat */
  transition: opacity 0.1s linear;
}
.com-modules-TableOfContentsListItem:hover::after,
.com-modules-TableOfContentsListItem:focus::after {
  opacity: 1;
}
/* stylelint-disable-next-line plugin/browser-compat */
.com-modules-TableOfContentsListItem:focus:not(:focus-visible):not(:hover)::after {
  opacity: 0;
}
.com-modules-TableOfContentsListItem--dark {
  border-bottom: solid 1px rgba(255, 255, 255, 0.08);
  color: #e6e6e6;
}
.com-modules-TableOfContentsListItem--h3 {
  margin-left: calc(4px * 4);
}
.com-modules-TableOfContentsListItem--h4 {
  margin-left: calc(4px * 8);
}
.com-modules-TableOfContents {
  background: #f5f5f5;
  border-radius: 4px;
  position: relative;
}
.com-modules-TableOfContents--dark {
  background: #212121;
}
.com-modules-TableOfContents--with-height-limit {
  max-height: 272px;
  overflow: hidden;
}
.com-modules-TableOfContents__inner {
  padding: calc(4px * 4);
}
.com-modules-TableOfContents__title {
  color: #999999;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: calc(4px * 2);
}
.com-modules-TableOfContents__table-list-item {
  list-style: none;
}
.com-modules-TableOfContents__more-read {
  align-items: center;
  background: linear-gradient(
    to top,
    #f5f5f5 0,
    #f5f5f5 48px,
    transparent 100%
  );
  bottom: 0;
  color: #999999;
  display: block;
  font-weight: bold;
  height: 64px;
  left: 0;
  position: absolute;
  right: 0;
  text-align: center;
}
.com-modules-TableOfContents__more-read::after {
  background-color: rgba(255, 255, 255, 0.08);
  bottom: 0;
  content: '';
  display: inline-block;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  /* stylelint-disable-next-line plugin/browser-compat */
  transition: opacity 0.1s linear;
}
.com-modules-TableOfContents__more-read:hover::after,
.com-modules-TableOfContents__more-read:focus::after {
  opacity: 1;
}
/* stylelint-disable-next-line plugin/browser-compat */
.com-modules-TableOfContents__more-read:focus:not(:focus-visible):not(:hover)::after {
  opacity: 0;
}
.com-modules-TableOfContents__more-read--dark {
  background: linear-gradient(
    to top,
    #212121 0,
    #212121 48px,
    transparent 100%
  );
}
/* This class will be set via react-transition-group */
/* stylelint-disable-next-line plugin/no-unused-selectors */
.com-modules-BackToTopButton--enter,
.com-modules-BackToTopButton--exit-active {
  opacity: 0;
}
/* This class will be set via react-transition-group */
/* stylelint-disable-next-line plugin/no-unused-selectors */
.com-modules-BackToTopButton--enter-active,
.com-modules-BackToTopButton--enter-done,
.com-modules-BackToTopButton--exit {
  opacity: 1;
}
/* This class will be set via react-transition-group */
/* stylelint-disable-next-line plugin/no-unused-selectors */
.com-modules-BackToTopButton--exit-done {
  display: none;
}
.com-modules-BackToTopButton__button {
  background: #999999;
  border-radius: 4px;
  padding: calc(4px * 2);
}
.com-modules-BackToTopButton__button-icon {
  color: #ffffff;
  height: 32px;
  width: 32px;
}
.com-modules-PlayguideButton__submit {
  /* stylelint-disable-next-line declaration-block-no-duplicate-properties */
  background: #ddaa00;
  /* stylelint-disable-next-line declaration-block-no-duplicate-properties */
  background: var(--key-color);
  border-radius: calc(4px * 3);
  font-size: 20px;
  font-weight: bold;
  height: 60px;
  line-height: 1.5;
  overflow: hidden;
  position: relative;
  text-align: center;
  width: 100%;
}
.com-modules-PlayguideButton__submit--light {
  color: #ffffff;
}
.com-modules-PlayguideButton__submit--dark {
  color: #000000;
}
.com-modules-PlayguideButton__submit::after {
  background-color: rgba(255, 255, 255, 0.08);
  bottom: 0;
  content: '';
  display: inline-block;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  /* stylelint-disable-next-line plugin/browser-compat */
  transition: opacity 0.1s linear;
}
.com-modules-PlayguideButton__submit:hover::after,
.com-modules-PlayguideButton__submit:focus::after {
  opacity: 1;
}
/* stylelint-disable-next-line plugin/browser-compat */
.com-modules-PlayguideButton__submit:focus:not(:focus-visible):not(:hover)::after {
  opacity: 0;
}
@media screen and (max-width: 712px) {
  .com-modules-PlayguideButton__submit {
    border-radius: calc(4px * 2);
    font-size: 16px;
    height: 48px;
  }
}
.com-elements-CMSImage {
  background: #333333;
}
.com-elements-CMSImage--rounded {
  border-radius: 4px;
}
.com-elements-CMSImage--rounded.com-elements-CMSImage--loaded {
  background: transparent;
}
:root {
  --com-pages-LandingPageContainerView-header-z-index: 1;
}
.com-pages-LandingPageContainerView__main {
  align-items: center;
  display: flex;
  flex-direction: column;
}
.com-pages-LandingPageContainerView--light {
  background: #ffffff;
}
.com-pages-LandingPageContainerView--dark {
  background: #000000;
}
.com-pages-LandingPageContainerView__header {
  left: 0;
  position: sticky;
  right: 0;
  top: 0;
  z-index: 1;
}
.com-pages-LandingPageContainerView__contents-wrapper {
  max-width: calc(
    680px + calc(4px * 4) * 2
  );
  padding: calc(4px * 6) calc(4px * 4);
  width: 100%;
}
.com-page-LandingPageContainerView__content-module
  + .com-page-LandingPageContainerView__content-module {
  margin-top: calc(4px * 4);
}
.com-page-LandingPageContainerView__headingH1-module--visually-hidden
  + .com-page-LandingPageContainerView__content-module {
  margin: 0;
}
.com-page-LandingPageContainerView__content-module:empty {
  display: none;
}
.com-page-LandingPageContainerView__back-to-top-button {
  bottom: calc(4px * 6);
  position: fixed;
  right: calc(4px * 6);
}
@media screen and (max-width: 712px) {
  .com-pages-LandingPageContainerView__header {
    position: static;
  }
}
