@charset "utf-8";

abbr,
address,
article,
aside,
audio,
b,
blockquote,
body,
canvas,
caption,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
p,
pre,
q,
samp,
section,
small,
span,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
ul,
var,
video {
  font-size: 10px;
}

.breadcrumbs-list li,
.breadcrumbs-list a,
.breadcrumbs-list span {
  font-size: 1.2rem;
}

#footer .bottom .inner .copy,
#footer .bottom .inner .copy small {
  font-size: 1.1rem;
}

#footer .bottom .inner .logo a {
  font-size: 1.3rem;
}

/* ============================================================================================================================
#temp-33-interview-list
============================================================================================================================ */

#temp-33-interview-list #interview-keyvisual {
  min-height: 630px;
}

#temp-33-interview-list #interview-keyvisual {
  padding: 0;
  height: auto;
  min-height: auto;
}

#temp-33-interview-list #interview-keyvisual.keyvisual-video {
  font-size: 0;
}

#temp-33-interview-list #interview-keyvisual.keyvisual-video video {
  position: static;
  top: auto;
  left: auto;
  transform: none;
  width: 100%;
}

#temp-33-interview-list #interview-keyvisual.keyvisual-images #keyvisual-swiper {
  position: relative;
}

#temp-33-interview-list #interview-keyvisual.keyvisual-images #keyvisual-swiper:before {
  display: none;
}

#temp-33-interview-list #interview-keyvisual .text {
  bottom: 50px;
  z-index: 10;
}

#temp-33-interview-list #interview-keyvisual .text .title {
  font-size: 4rem;
  font-weight: 700;
  line-height: 6.0rem;
  font-family: Meiryo, メイリオ, sans-serif;
}

#temp-33-interview-list #interview-keyvisual .text .summary {
  font-size: 2rem;
  font-family: Meiryo, メイリオ, sans-serif;
  line-height: 3.6rem;
}

/* ============================================================================================================================
#special-contents
============================================================================================================================ */

#special-contents {
  font-family: Meiryo, メイリオ, sans-serif;
  font-size: 1.4rem;
  line-height: 2;
  padding: 0 0 70px;
}

#special-contents h2 {
  margin: 0 0 30px;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 4.2rem;
}

#special-contents p,
#special-contents a {
  font-size: 1.4rem;
}

#special-contents .row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 1020px;
  margin: 0 auto;
}

#special-contents .row .col {
  width: 490px;
}

#special-contents .row .col.text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#special-contents .row .col h2 {
  margin: 0 0 38px;
  font-size: 2.4rem;
}

#special-contents .row .col.text .detail {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#special-contents .button {
  width: 264px;
  margin: 0 auto;
}

#special-contents .button.link {
  width: 186px;
}

#special-contents .button a {
  position: relative;
  display: block;
  padding: 22px 0;
  line-height: 1;
  color: #fff;
  text-align: center;
  background: #302807;
}

#special-contents .button.link a {
  padding: 18px 0;
  font-size: 1.2rem;
}

#special-contents .button.link a:before {
  content: '▶';
  position: absolute;
  left: 16px;
  top: 50%;
  font-size: 1.8rem;
  transform: translateY(-50%);
}

#special-contents .button.right {
  margin: 0 0 0 auto;
}

#special-contents .intro {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: center;
  gap: 40px;
  margin: 0 auto;
  padding: 70px 0 110px;
  width: 1020px;
}

#special-contents .intro.stack {
  display: flex;
  flex-wrap: wrap;
  gap: 54px;
}

#special-contents .intro .image {
  width: 100%;
}

#special-contents .intro .text {
  font-size: 1.8rem;
  text-align: left;
}

#special-contents .template {
  padding: 90px 0;
}

#special-contents .template .text {
  width: 100%;
}

#special-contents .template .detail,
#special-contents .template .detail p {
  font-size: 1.6rem;
  line-height: 3.4rem;
  font-weight: 400;
}

#special-contents .template .image {
  margin: 0 auto 40px;
}

#special-contents .template .detail {
  margin: 0 0 38px;
}

#special-contents .index-wrap {
  margin: 0 auto;
  padding: 80px 0;
  width: 1020px;
}
 
#special-contents .index-wrap h2 {
  text-align: center;
}

#special-contents .index,
#special-contents .index li {
  display: block;
}

#special-contents .index li + li {
  margin-top: 50px;
}

#special-contents .index li a {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

#special-contents .index li a .thumb {
  width: 134px;
}

#special-contents .index li a .text {
  width: 850px;
  font-size: 1.8rem;
}

#special-contents .border-box {
  margin: 0 auto;
  padding: 50px 0;
  font-size: 1rem;
  border: 1px solid #707070;
  width: 100%;
}

#special-contents .border-box + .border-box {
  margin: 70px auto 0;
}

#special-contents .border-box p {
  font-size: 1rem;
}

#special-contents .border-box .item {
  margin: 0 auto;
  width: 86%;
}

#special-contents .border-box .item + .item {
  margin-top: 0;
  padding-top: 40px;
}

#special-contents .border-box .item .title {
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 3.9rem;
  margin: 0 0 10px;
}

#special-contents .border-box .item .detail {
  font-size: 1.4rem;
  line-height: 2.8rem;
  font-weight: 400;
}

#special-contents .credit {
  width: 820px;
  margin: 60px auto 0;
  font-size: 1rem;
}
