@charset "utf-8";
:root {
  /* CSS Custom Properties without Colors
	// --------------------------------------------*/
  --main-width: 100vw;
  --base-fs: 0.266vw;
  --root-fs: min(4vw, 15px);
  --g: min(10vw, 180px);
  --m: 15px;
  --mb: 4.375vw;
  --mi: 2.5vw;
  --header-height: 60px;
  --wrap-padding-min: calc(var(--m) * 2);
  --out-wrap-margin: calc((100vw - var(--main-width)) / 2);
}
body:has(.header-nav.active) {
  height: 100vmax;
  overflow: clip;
}
br[pc] {
  display: none;
}
br[sp],
br[pc][sp] {
  display: inline;
}
main.content {
  padding-top: var(--header-height);
}
main.content img,
main.content iframe,
main.content video {
  width: 100%;
}
section.hero {
  --billboard-width: 90%;
}
section.hero::before {
  width: 30vw;
  height: calc(100% + var(--header-height) + calc(var(--m) * 6));
  top: calc(-1 * var(--header-height));
}
section.hero .tagline {
  --fs: calc(var(--base-fs) * 30);
  font-size: var(--fs);
  display: flex;
  align-items: center;
  max-width: unset;
  width: 60%;
  height: calc(var(--fs) * var(--lh) * 2);
  padding: calc(var(--m) * 3) 0 calc(var(--m) * 3) calc(var(--m) * 2);
  top: auto;
  right: auto;
  transform: none;
  position: relative;
}
section.hero .billboard {
  aspect-ratio: 6 / 5;
  margin: 0 auto calc(var(--m) * 6) 0;
}
section.general .subline {
  font-size: calc(var(--base-fs) * 15);
  margin-bottom: var(--m);
}
section.general .subline::before {
  --size: 30px;
  transform: translate(0.8em, -60%);
}
section.general .headline {
  font-size: calc(var(--base-fs) * 24);
  margin-bottom: calc(var(--m) * 3);
}
section.general .lead {
  margin-bottom: calc(var(--m) * 3);
}
section.case:not(:last-of-type) {
  margin-bottom: calc(var(--m) * 6);
}
section.case .case-headline {
  font-size: calc(var(--base-fs) * 18);
  margin-bottom: calc(var(--m) * 2);
}
section.case .container {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
}
section.case .block {
  width: 100%;
}
section.case .label {
  font-size: calc(var(--base-fs) * 15);
}
section.case .title {
  font-size: calc(var(--base-fs) * 21);
  font-weight: 600;
  margin: calc(var(--m) * 1.5) 0 calc(var(--m) * 1.25);
}
section.form {
  padding: calc(var(--m) * 3) 0 calc(var(--m) * 6);
}
section.form .headline {
  font-size: calc(var(--base-fs) * 21);
  margin-bottom: calc(var(--m) * 2);
}
section.form :is(.mw_wp_form, .form-container) {
  width: 100%;
  min-width: unset;
}
section.form :is(.mw_wp_form, .form-container) form {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  --row-gap: calc(var(--m) * 1.5);
  --column-gap: var(--m);
  gap: var(--row-gap) var(--column-gap);
}
section.form .group {
  flex-direction: column;
}
section.form .block {
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
}
section.form .block.agreement .input {
  margin-top: var(--m);
}
section.form .title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-height: unset;
  padding: 0;
  background: transparent;
  color: var(--black);
  font-size: calc(var(--base-fs) * 15);
  text-align: left;
  justify-content: flex-start;
}
section.form .group .block .title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
section.form .input {
  width: 100%;
}
section.form .notice {
  padding-left: 0;
}
section.form .block.btns {
  margin-top: calc(var(--m) * 3);
  flex-direction: column;
  gap: calc(var(--m) * 2);
}
section.form .back {
  --arrow-width: 21px;
  width: 100%;
  position: static;
  transform: none;
  order: 2;
}
section.form .back::after {
  right: var(--m);
}
section.form .back input {
  width: 100%;
  box-sizing: border-box;
  min-width: unset;
}
section.form .back :is(input, button) {
  width: 100%;
  min-width: unset;
  padding: calc(var(--m) * 2) calc(var(--m) * 4) calc(var(--m) * 2) calc(var(--m) * 2);
}
section.form .submit {
  order: 1;
  --arrow-width: 21px;
  width: 100%;
}
section.form .submit::after {
  right: var(--m);
}
section.form .submit input {
  width: 100%;
  box-sizing: border-box;
  min-width: unset;
}
section.form .submit :is(input, button) {
  width: 100%;
  min-width: unset;
  padding: calc(var(--m) * 2) calc(var(--m) * 4) calc(var(--m) * 2) calc(var(--m) * 2);
}
section.form .mwform-checkbox-field.horizontal-item {
  display: block;
  margin-bottom: var(--m);
}
section.form .mwform-checkbox-field.horizontal-item + .horizontal-item {
  margin-left: 0;
}
section.form .error {
  padding: 0 var(--m);
  font-size: calc(var(--base-fs) * 16.5);
  top: 0;
  left: auto;
  right: var(--m);
}
section.form .error::before {
  display: none;
}
.btn {
  min-width: unset;
}
.btn-fixed {
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  padding: 5px var(--m);
}
.btn-fixed::before {
  background: rgba(31, 31, 31, 0.5);
}
.btn-fixed.nav-whitepaper {
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.btn-fixed.nav-whitepaper img {
  width: min(92vw, 345px);
  aspect-ratio: 345 / 52;
}
section.cta-short,
section.cta-large {
  padding: calc(var(--m) * 3) calc(var(--m) * 2);
}
section.cta-short a[class*="nav-"],
section.cta-large a[class*="nav-"] {
  --arrow-width: 27px;
  --arrow-height: 8px;
  font-size: calc(var(--base-fs) * 18);
  width: 100%;
  padding: calc(var(--m) * 1.5) calc(var(--m) * 3) calc(var(--m) * 1.5) calc(var(--m) * 7);
}
section.cta-short {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  --gap: calc(var(--m) * 1.5);
}
section.cta-short::before {
  width: 20vw;
}
section.cta-short .title {
  text-align: center;
  margin-bottom: calc(var(--m) * 1.5);
}
section.cta-large .title {
  font-size: calc(var(--base-fs) * 24);
  margin-bottom: calc(var(--m) * 2);
}
section.cta-large .container {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  gap: calc(var(--m) * 1.5);
}
.article #ez-toc-container {
  padding: var(--m) calc(var(--m) * 2);
}
.article #ez-toc-container .ez-toc-title {
  display: block;
  padding-bottom: var(--m);
  border-bottom: 1px solid var(--gray);
  font-size: calc(var(--base-fs) * 18);
  text-align: center;
}
.article #ez-toc-container nav {
  margin-top: calc(var(--m) * 0.5);
}
.article #ez-toc-container ul.ez-toc-list li {
  --fs: calc(var(--base-fs) * 15);
}
.article #ez-toc-container ul.ez-toc-list li:not(:last-child) {
  margin-bottom: calc(var(--m) * 0.5);
}
.article #ez-toc-container ul.ez-toc-list ul li {
  --fs: calc(var(--base-fs) * 15);
}
.article #ez-toc-container ul.ez-toc-list ul a {
  --link: var(--gray);
}
/* ==================================================================
	Header
================================================================== */
.header {
  width: 100%;
  height: var(--header-height);
  background: var(--white);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 200;
}
.header .logo {
  padding: 0 0 0 var(--m);
}
.header .logo img {
  height: 35px;
  max-width: unset;
}
.header .switch {
  --color: var(--black);
  --bg: var(--white);
  --hover: var(--gray-light);
  --hover-bg: #e5e5e5;
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  width: var(--header-height);
  height: 100%;
  background: var(--bg);
  transition: 0.4s 0s ease;
}
.header .switch::before,
.header .switch::after {
  display: block;
  width: 70%;
  height: 0;
  background: transparent;
  border-top: 1px solid var(--color);
  transform-origin: center;
  transition: 0.5s 0s ease;
}
.header .switch::before {
  transform: translate(0, -5px);
}
.header .switch::after {
  transform: translate(0, 5px);
}
.header .switch.active {
  --color: var(--hover);
  background: var(--hover-bg);
}
.header .switch.active::before {
  transform: rotate(45deg) translate(0, 50%);
}
.header .switch.active::after {
  transform: rotate(-45deg) translate(0, -50%);
}
.header .header-nav {
  width: 100%;
  height: calc(100vmax - var(--header-height));
  box-sizing: border-box;
  padding: calc(var(--m) * 0.5) 0 calc(var(--m) * 8);
  background: rgba(255, 255, 255, 0.9);
  overflow-y: auto;
  overflow-x: hidden;
  position: absolute;
  top: var(--header-height);
  left: 0;
  z-index: 100;
  flex-direction: column;
  justify-content: flex-start;
  --gap: 0;
}
.header .header-nav:not(.active) {
  display: none;
}
.header .header-nav > a[class*="nav-"] {
  --link: var(--black);
  font-size: calc(var(--base-fs) * 18);
  white-space: nowrap;
  width: calc(100% - calc(var(--m) * 2));
  box-sizing: border-box;
  padding: calc(var(--m) * 1.5) 0;
  border-bottom: 1px solid var(--gray-light);
  display: flex;
  justify-content: space-between;
}
.header .header-nav .subline {
  font-family: -apple-system, blinkMacSystemFont, /* Macの欧文はSan Francisco (OS X 10.11以降) */ 'Helvetica Neue', /* Macの欧文 (OS X 10.10以前) */ 'Segoe UI', /* Windowsの欧文 */ YuGothicM, /* Windows8.1以上は游ゴシック */ YuGothic, /* Macの游ゴシック */ Meiryo, /* 游ゴシックが入っていないWindows */ sans-serif;
  /* Windows */
  color: var(--subline-color, var(--black));
  font-size: calc(var(--base-fs) * 12);
  letter-spacing: 0.1ex;
  display: block;
  margin-left: var(--m);
  position: relative;
}
@font-face {
  font-family: YuGothicM;
  font-weight: normal;
  src: local('YuGothic-Medium'), /* Windowsでは游ゴシックが細くかすれてしまうので、Mediumを明示的に指定 */ local('Yu Gothic Medium'), /* Chrome用 */ local('YuGothic-Regular');
  /* Windows8.1ではMediumがないのでRegularを指定 */
}
@font-face {
  font-family: YuGothicM;
  font-weight: bold;
  src: local('YoGothic-Bold'), /* Boldはそのまま */ local('Yu Gothic');
  /* Chrome用 */
}
.header .header-nav .subline::first-letter {
  color: var(--subline-head, var(--subline-color, var(--white)));
  margin-right: 0.3ex;
}
.header .header-nav .subline::before {
  --size: min(5.33vw, 20px);
  display: block;
  width: var(--size);
  height: var(--size);
  background: var(--subline-bg, var(--fog));
  position: absolute;
  top: 45%;
  right: 100%;
  z-index: -1;
  transform: translate(0.8em, -60%);
}
.header .header-nav a.nav-about {
  --subline-bg: var(--red);
}
.header .header-nav a.nav-strength {
  --subline-bg: var(--orange);
}
.header .header-nav a.nav-flow {
  --subline-bg: var(--sky);
}
.header .header-nav a.nav-solution {
  --subline-bg: var(--pink);
}
.header .header-nav a.nav-partners {
  --subline-bg: var(--purple);
}
.header .header-nav a.nav-partners {
  --subline-bg: var(--purple);
}
.header .header-nav a.nav-whitepaper {
  --subline-bg: var(--blue);
}
.header .header-nav a.nav-case {
  --subline-bg: var(--lime);
}
.header .header-nav a.nav-journal {
  --subline-bg: linear-gradient(to right, var(--gradient-night));
  border-bottom: 0;
}
.header .header-nav a.nav-partnership,
.header .header-nav a.nav-contact {
  margin-top: calc(var(--m) * 1);
  width: calc(100% - calc(var(--m) * 2));
  padding: var(--m) calc(var(--m) * 2);
  border-bottom: 0;
}
.header .header-nav a.nav-contact {
  --link: var(--white);
}
/* ==================================================================
	Footer
================================================================== */
.footer {
  display: block;
}
.footer-cta,
.footer-body {
  width: 100%;
  padding: calc(var(--m) * 2);
}
.footer-cta {
  gap: var(--m);
}
.footer-cta a.nav-page-top {
  width: 40%;
  padding: var(--m);
  font-size: calc(var(--base-fs) * 18);
  top: 1px;
  transform: translate(0, -100%);
}
.footer-cta a.nav-page-top::before {
  --size: 4.26vw;
  transform: translate(0, 50%) rotate(45deg);
}
.footer-cta a.nav-partnership,
.footer-cta a.nav-contact {
  --arrow-width: 24px;
  font-size: calc(var(--base-fs) * 18);
  width: 100%;
}
.footer-cta a.nav-partnership::before,
.footer-cta a.nav-contact::before {
  border: 4px solid transparent;
  border-left: 8px solid var(--color);
  right: calc(calc(var(--m) * 3) - 16px);
}
.footer-nav {
  display: block;
  padding-bottom: calc(var(--m) * 2);
  margin-bottom: calc(var(--m) * 3);
  --gap: calc(var(--m) * 0.5);
}
.footer-nav .group {
  align-items: center;
  gap: var(--gap);
}
.footer-nav .group:not(:first-of-type) {
  margin-top: var(--gap);
}
.footer-nav a {
  padding: var(--gap) 0;
  font-size: calc(var(--base-fs) * 15);
}
.footer-profile .logos,
.footer-profile .links {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  gap: var(--m);
}
.footer-profile .logos > *,
.footer-profile .links > * {
  height: auto;
}
.footer-profile .logo-white {
  width: 50%;
}
.footer-profile .parent {
  text-align: center;
  font-size: calc(var(--base-fs) * 10);
}
.footer-profile .logo-logitech {
  width: 36vw;
  min-width: 120px;
}
.footer-profile .nav-external {
  width: 90%;
  margin-top: calc(var(--m) * 2);
  margin-right: auto;
  margin-left: auto;
}
.footer-profile .banner-logitech {
  height: auto;
}
.footer-profile .copyright {
  margin-top: calc(var(--m) * 4);
  text-align: center;
}
/* ==================================================================
	フロント
================================================================== */
#home-billboard {
  --billboard-width: 90vw;
  --heading-top: 50%;
}
#home-billboard::before {
  height: calc(100% + var(--header-height) + var(--m) * 11);
  top: calc(-1 * (var(--header-height) + calc(var(--m) * 5)));
  z-index: 0;
}
#home-billboard::after {
  display: block;
  width: var(--billboard-width);
  height: calc(var(--billboard-width) * 7 / 6);
  background: rgba(31, 31, 31, 0.3);
  mix-blend-mode: multiply;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 3;
}
#home-billboard .tagline {
  --fs: calc(var(--base-fs) * 45);
  height: auto;
  padding: 0;
  z-index: 4;
  transform: translate(0, -50%);
}
#home-billboard .subline {
  font-size: calc(var(--base-fs) * 18);
  white-space: nowrap;
  padding: calc(var(--m) * 0.75) var(--m);
  left: 0;
  z-index: 4;
}
#home-billboard video.billboard,
#home-billboard video.pre {
  aspect-ratio: 6 / 7;
}
#home-billboard video.billboard {
  margin: calc(var(--m) * 5) 0 calc(var(--m) * 6) auto;
}
#home-about {
  padding-top: calc(var(--m) * 5);
}
#home-about .headline {
  letter-spacing: 0;
}
#home-about .container {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  --gap: calc(var(--m) * 3);
}
#home-about a.nav-about {
  margin-top: calc(var(--m) * 2);
  width: 100%;
}
#home-about .movie {
  width: 100%;
}
#home-about .movie::after {
  top: var(--m);
  left: var(--m);
}
#home-about .diagram {
  margin-top: calc(var(--m) * 6);
  padding: calc(var(--m) * 2);
}
#home-about .diagram .image {
  width: 100%;
}
#home-about a.nav-partnership,
#about-diagram a.nav-partnership {
  width: calc(100% - calc(var(--m) * 4));
  margin: calc(var(--m) * 3) auto;
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
}
#home-about a.nav-partnership .heading,
#about-diagram a.nav-partnership .heading {
  width: 100%;
  box-sizing: border-box;
  justify-content: flex-start;
  gap: calc(var(--m) * 1.5);
}
#home-about a.nav-partnership .icon,
#about-diagram a.nav-partnership .icon {
  height: 14.5vw;
  width: auto;
}
#home-about a.nav-partnership p,
#about-diagram a.nav-partnership p {
  font-size: calc(var(--base-fs) * 15);
  padding: var(--m) calc(var(--m) * 1.5);
}
#home-case {
  padding-top: calc(var(--m) * 6);
}
#home-case::before {
  width: 40vw;
}
#home-case .headline {
  margin-bottom: calc(var(--m) * 3);
}
/* ==================================================================
	ロジパレとは
================================================================== */
#about-statement {
  padding-top: calc(var(--m) * 6);
  padding-bottom: calc(var(--m) * 3);
}
#about-statement .lead {
  line-height: var(--lh);
  margin-bottom: calc(var(--m) * 3);
}
#about-statement img.statement-copy {
  position: relative;
  top: auto;
  right: auto;
  width: 80%;
  aspect-ratio: 500 / 401;
  margin-right: auto;
  margin-left: auto;
}
#about-core {
  padding-top: calc(var(--m) * 6);
  padding-bottom: calc(var(--m) * 3);
}
#about-core::before {
  -webkit-clip-path: inset(0px 75% 0px 0px);
          clip-path: inset(0px 75% 0px 0px);
}
#about-core .wrap {
  --wrap-width: var(--main-width);
}
#about-core .headline {
  width: auto;
  padding-right: 0;
  margin-left: 0;
  margin-bottom: calc(var(--m) * 3);
  font-size: calc(var(--base-fs) * 21);
  text-align: center;
}
#about-core .container {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  --gap: calc(var(--m) * 3);
}
#about-core .lead {
  width: 100%;
  box-sizing: border-box;
  padding-right: var(--wrap-padding-min);
  padding-left: var(--wrap-padding-min);
}
#about-core .image {
  width: 100%;
}
#about-diagram {
  padding-top: calc(var(--m) * 4);
  padding-bottom: 0;
}
#about-diagram .title {
  font-size: calc(var(--base-fs) * 27);
  margin-bottom: calc(var(--m) * 2);
}
#about-diagram p {
  text-align: left;
}
#about-diagram a.nav-partnership {
  width: 100%;
}
/* ==================================================================
	ロジパレの強み
================================================================== */
#strength-intro .container {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  --gap: calc(var(--m) * 4);
}
#strength-intro .block {
  width: 100%;
}
#strength-intro .block .title {
  font-size: calc(var(--base-fs) * 21);
  margin: calc(var(--m) * 1.5) 0 var(--m);
}
#strength-intro .block .image {
  --square-gap: -5vw;
}
#strength-intro .block .image::before {
  --size: 32vw;
}
#strength-scale {
  padding-top: calc(var(--m) * 3);
  padding-bottom: calc(var(--m) * 4);
}
#strength-scale .heading {
  position: relative;
}
#strength-scale .headline {
  width: 100%;
  margin-bottom: calc(var(--m) * 2);
}
/* ==================================================================
	ご利用の流れ
================================================================== */
#flow-intro {
  padding-top: calc(var(--m) * 3);
  padding-bottom: calc(var(--m) * 3);
}
#flow-intro .lead {
  margin-bottom: calc(var(--m) * 3);
}
#flow-intro .note {
  text-align: left;
}
#flow-chart {
  padding-top: calc(var(--m) * 3);
  padding-bottom: calc(var(--m) * 3);
}
/* ==================================================================
	ソリューション
================================================================== */
#solution-index .container {
  flex-direction: column;
  align-items: center;
  gap: calc(var(--m) * 2);
}
#solution-index .container a {
  width: 80%;
}
#solution-list {
  padding-top: 0;
}
#solution-list .block {
  border-bottom: 1px solid var(--gray-light);
  flex-direction: column;
  gap: calc(var(--m) * 3);
}
#solution-list .block:nth-child(even) {
  flex-direction: column;
}
#solution-list .image {
  width: 100%;
}
#solution-list .label {
  width: 50%;
  translate: -50% 20%;
}
#solution-list .title {
  padding-bottom: calc(var(--m) * 2);
  font-size: calc(var(--base-fs) * 21);
}
#solution-list .nav-link {
  --fs: calc(var(--base-fs) * 15);
  width: 100%;
}
/* ==================================================================
	パートナー企業募集
================================================================== */
#partnership-intro .headline {
  margin-bottom: calc(var(--m) * 2);
}
#partnership-intro .lead {
  width: 100%;
  margin-bottom: calc(var(--m) * 3);
}
#partnership-intro .image01 {
  width: 100%;
  aspect-ratio: 5 / 3;
  position: relative;
  z-index: 1;
}
#partnership-intro .about-partnership {
  padding: calc(var(--m) * 2);
  margin-bottom: calc(var(--m) * 6);
}
#partnership-intro .about-partnership .logo-standard {
  float: none;
  display: block;
  width: 60%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: calc(var(--m) * 2);
}
#partnership-intro .about-partnership .title {
  float: none;
  font-size: calc(var(--base-fs) * 24);
  text-align: center;
}
#partnership-intro .container {
  margin-bottom: calc(var(--m) * 6);
}
#partnership-intro .block {
  display: block;
}
#partnership-intro .block .image {
  width: 100%;
}
#partnership-intro .block .dear {
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 0;
  transform: translate(0, -50%);
  font-size: calc(var(--base-fs) * 18);
}
#partnership-intro .block .title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-right: auto;
  margin-left: auto;
  font-size: calc(var(--base-fs) * 21);
}
#partnership-intro .notice {
  margin-top: calc(var(--m) * 2);
  padding: calc(var(--m) * 2);
}
#partnership-intro .notice .notice-label {
  width: 100%;
  padding: calc(var(--m) * 0.5) 0;
  text-align: center;
}
#partnership-intro .notice .notice-title {
  font-size: calc(var(--base-fs) * 18);
  margin: calc(var(--m) * 1.5) 0 var(--m);
}
/* ==================================================================
	活用事例
================================================================== */
#case-list {
  padding-top: calc(var(--m) * 3);
  padding-bottom: calc(var(--m) * 3);
}
#case-list::before {
  width: 40vw;
}
#case-list .headline {
  margin-bottom: calc(var(--m) * 3);
}
/* ==================================================================
	アーカイブ
================================================================== */
#archive-list {
  padding-top: calc(var(--m) * 3);
  padding-bottom: calc(var(--m) * 6);
}
#archive-list::before {
  width: 35vw;
  height: 100%;
}
#archive-list .container {
  gap: calc(var(--m) * 6);
}
#archive-list .block::before {
  bottom: -5vw;
  left: -5vw;
}
#archive-list .block .title {
  font-size: calc(var(--base-fs) * 21);
}
#archive-list .block.movie .title {
  padding: calc(var(--m) * 1) 0 0 var(--m);
  margin-bottom: var(--m);
}
#archive-list .block.download {
  display: block;
}
#archive-list .block.download .image {
  width: 100%;
}
#archive-list .block.download .text {
  padding-top: 0;
}
#archive-list .block.download .title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: calc(var(--m) * 1.5) auto var(--m);
}
#archive-list .block.download a[class*="nav-"] {
  margin-right: auto;
  margin-left: auto;
}
/* ==================================================================
	お役立ち情報
================================================================== */
#whitepaper-overview .container > * {
  flex: 0 0 100%;
}
#whitepaper-overview .container .caption {
  box-sizing: border-box;
  padding: var(--m) calc(var(--m) * 2);
  font-size: calc(var(--base-fs) * 18);
}
#whitepaper-download-request .subline {
  font-size: calc(var(--base-fs) * 16.5);
  letter-spacing: 0;
}
/* ==================================================================
	Page
================================================================== */
#page-billboard .tagline {
  --fs: calc(var(--base-fs) * 30);
}
#page-articles {
  padding-bottom: calc(var(--m) * 6);
}
#page-articles figure + h2,
#page-articles img + h2,
#page-articles a + h2,
#page-articles p + h2,
#page-articles ul + h2,
#page-articles ol + h2,
#page-articles div + h2,
#page-articles figure + h3,
#page-articles img + h3,
#page-articles a + h3,
#page-articles p + h3,
#page-articles ul + h3,
#page-articles ol + h3,
#page-articles div + h3,
#page-articles figure + h4,
#page-articles img + h4,
#page-articles a + h4,
#page-articles p + h4,
#page-articles ul + h4,
#page-articles ol + h4,
#page-articles div + h4,
#page-articles figure + h5,
#page-articles img + h5,
#page-articles a + h5,
#page-articles p + h5,
#page-articles ul + h5,
#page-articles ol + h5,
#page-articles div + h5,
#page-articles figure + h6,
#page-articles img + h6,
#page-articles a + h6,
#page-articles p + h6,
#page-articles ul + h6,
#page-articles ol + h6,
#page-articles div + h6 {
  margin-top: calc(var(--m) * 5);
}
#page-articles figure + ul,
#page-articles img + ul,
#page-articles a + ul,
#page-articles p + ul,
#page-articles ul + ul,
#page-articles ol + ul,
#page-articles div + ul,
#page-articles figure + ol,
#page-articles img + ol,
#page-articles a + ol,
#page-articles p + ol,
#page-articles ul + ol,
#page-articles ol + ol,
#page-articles div + ol {
  margin-block: calc(var(--m) * 3);
}
#page-articles h2 + figure.wp-block-image,
#page-articles h3 + figure.wp-block-image,
#page-articles h4 + figure.wp-block-image,
#page-articles h5 + figure.wp-block-image,
#page-articles h6 + figure.wp-block-image {
  margin-top: calc(-1 * var(--m) * 1);
}
#page-articles h2:not(.headline, .subline, .title) {
  font-size: calc(var(--base-fs) * 24);
  margin-bottom: calc(var(--m) * 2);
}
#page-articles h3:not(.headline, .subline, .title) {
  padding-bottom: var(--m);
  font-size: calc(var(--base-fs) * 21);
  margin-bottom: calc(var(--m) * 2);
}
#page-articles h4:not(.headline, .subline, .title),
#page-articles h5:not(.headline, .subline, .title),
#page-articles h6:not(.headline, .subline, .title) {
  font-size: calc(var(--base-fs) * 18);
}
#page-articles p + figure,
#page-articles p + img {
  margin-top: calc(var(--m) * 3);
  margin-bottom: calc(var(--m) * 3);
}
#page-articles .wrap {
  padding-right: var(--wrap-padding-min);
}
/* ==================================================================
	Single
================================================================== */
#interviews-billboard .tagline {
  --fs: calc(var(--base-fs) * 27);
}
#interviews-article::after {
  height: calc(100% - 80vw);
}
#interviews-article .wrap {
  padding-bottom: calc(var(--m) * 5);
}
#interviews-article h1.headline {
  max-width: unset;
  font-size: calc(var(--base-fs) * 24);
  margin-bottom: calc(var(--m) * 2);
}
#interviews-article .eyecatch {
  width: 100%;
  position: relative;
  top: auto;
  left: auto;
  margin-bottom: calc(var(--m) * 2);
}
#interviews-article .container figure + h2,
#interviews-article .container img + h2,
#interviews-article .container a + h2,
#interviews-article .container p + h2,
#interviews-article .container ul + h2,
#interviews-article .container ol + h2,
#interviews-article .container div + h2,
#interviews-article .container figure + h3,
#interviews-article .container img + h3,
#interviews-article .container a + h3,
#interviews-article .container p + h3,
#interviews-article .container ul + h3,
#interviews-article .container ol + h3,
#interviews-article .container div + h3,
#interviews-article .container figure + h4,
#interviews-article .container img + h4,
#interviews-article .container a + h4,
#interviews-article .container p + h4,
#interviews-article .container ul + h4,
#interviews-article .container ol + h4,
#interviews-article .container div + h4,
#interviews-article .container figure + h5,
#interviews-article .container img + h5,
#interviews-article .container a + h5,
#interviews-article .container p + h5,
#interviews-article .container ul + h5,
#interviews-article .container ol + h5,
#interviews-article .container div + h5,
#interviews-article .container figure + h6,
#interviews-article .container img + h6,
#interviews-article .container a + h6,
#interviews-article .container p + h6,
#interviews-article .container ul + h6,
#interviews-article .container ol + h6,
#interviews-article .container div + h6 {
  margin-top: calc(var(--m) * 5);
}
#interviews-article .container figure + ul,
#interviews-article .container img + ul,
#interviews-article .container a + ul,
#interviews-article .container p + ul,
#interviews-article .container ul + ul,
#interviews-article .container ol + ul,
#interviews-article .container div + ul,
#interviews-article .container figure + ol,
#interviews-article .container img + ol,
#interviews-article .container a + ol,
#interviews-article .container p + ol,
#interviews-article .container ul + ol,
#interviews-article .container ol + ol,
#interviews-article .container div + ol {
  margin-block: calc(var(--m) * 3);
}
#interviews-article .container h2 + figure.wp-block-image,
#interviews-article .container h3 + figure.wp-block-image,
#interviews-article .container h4 + figure.wp-block-image,
#interviews-article .container h5 + figure.wp-block-image,
#interviews-article .container h6 + figure.wp-block-image {
  margin-top: calc(-1 * var(--m) * 1);
}
#interviews-article .container h2:not(.headline, .subline, .title) {
  font-size: calc(var(--base-fs) * 24);
  margin-bottom: calc(var(--m) * 2);
}
#interviews-article .container h3:not(.headline, .subline, .title) {
  padding-bottom: var(--m);
  font-size: calc(var(--base-fs) * 21);
  margin-bottom: calc(var(--m) * 2);
}
#interviews-article .container h4:not(.headline, .subline, .title),
#interviews-article .container h5:not(.headline, .subline, .title),
#interviews-article .container h6:not(.headline, .subline, .title) {
  font-size: calc(var(--base-fs) * 18);
}
#interviews-article .container p + figure,
#interviews-article .container p + img {
  margin-top: calc(var(--m) * 3);
  margin-bottom: calc(var(--m) * 3);
}
#interviews-article .container p:first-child {
  margin-bottom: calc(var(--m) * 3);
}
#interviews-article .container h2:not([class]) {
  text-align: center;
  padding: calc(var(--m) * 1.5) calc(var(--m) * 0.5);
  background: var(--white);
}
#interviews-article .container figure img {
  width: auto;
  max-width: 100%;
}
#interviews-article .container figure::before {
  --square-gap: -5vw;
  --size: min(32vw, 120px);
}
#partner-info {
  padding-top: calc(var(--m) * 5);
}
#partner-info .headline {
  margin-bottom: calc(var(--m) * 5);
  font-size: calc(var(--base-fs) * 16.5);
}
#partner-info .container {
  flex-direction: column;
  gap: calc(var(--m) * 3);
  --wrap-width: var(--main-width);
  width: 100%;
  max-width: var(--wrap-width);
  box-sizing: border-box;
  padding-right: var(--wrap-padding-min);
  padding-left: var(--wrap-padding-min);
  margin-right: auto;
  margin-left: auto;
}
#partner-info .image {
  width: 100%;
  order: 2;
}
#partner-info .text {
  order: 1;
}
#partner-info .text .name {
  font-size: calc(var(--base-fs) * 21);
  margin-bottom: calc(var(--m) * 2);
}
#partner-info .text .lead {
  margin-bottom: 0;
}
#download-request-thanks section.general,
#download-limited section.general,
.download-limited section.general {
  min-height: unset;
}
#download-request-thanks section.general .notice,
#download-limited section.general .notice,
.download-limited section.general .notice {
  padding: calc(var(--m) * 2) calc(var(--m) * 1.5);
}
#download-request-thanks section.general .notice .title,
#download-limited section.general .notice .title,
.download-limited section.general .notice .title {
  font-size: calc(var(--base-fs) * 21);
}
#download-request-thanks section.general a.download,
#download-limited section.general a.download,
.download-limited section.general a.download {
  width: 100%;
  padding-inline: calc(var(--m) * 2);
  font-size: calc(var(--base-fs) * 18);
}
/* ==================================================================
	404ページ
================================================================== */
#error404-intro {
  padding-bottom: calc(var(--m) * 6);
}
