@charset "UTF-8";
:root {
  --YuGothic: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  --TsukuA: "fot-tsukuardgothic-std", sans-serif;
}

.vol33 {
  font-family: var(--YuGothic);
    font-size: 1rem;
    line-height: 1.7;
    letter-spacing: 1px;
}

.vol33.main .color {
    color: #2D447D;
}

/* mv */
section[key=mv] {
  background-color: #EFFAFF;
  padding-bottom: 40px;
}
section[key=mv] .mv_image {
	max-width: 100%;
	margin-left: initial;
	padding-top: 5px;
}

section[key=mv] .top-mainVisual__item__num {
  border-color: #DF2834;
}

section[key=mv] .top-mainVisual__item__label {
  font-family: var(--TsukuA);
  background: #FFF;
  color: #DF2834;
}

section[key=mv] .top-mainVisual__item__label::before {
  background: url(../img/special/vol28/labelDeco.png) no-repeat center center/cover;
	bottom: -18px;
}

section[key=mv].top-mainVisual__item__category {
  font-family: var(--TsukuA);
}

section[key=mv] .container .top-articles__item__tags {
  bottom: -32px;
  padding-left: 20px;
}

section[key=mv] .container .top-articles__item__tags a {
  color: #000;
}

@media screen and (max-width: 768px) {
  section[key=mv] .container {
    padding: 70px 0 0 0;
  }
}
@media screen and (min-width: 768px) {
  section[key=mv] {
    padding-bottom: 26px;
  }
	section[key=mv] .mv_image {
		max-width: 89%;
		margin-left: auto;
		padding-top: 15px;
	}
  section[key=mv] .container {
    padding: 70px 0 0 0;
  }
  section[key=mv] .container .top-articles__item__tags {
    bottom: -4px;
  }
  section[key=mv] .container .top-articles__item__tags a {
    margin-right: 24px;
  }
}

/* intro */
.intro {
  margin-top: 70px;
}
.intro_text {
  margin-top: 80px;
  font-family: var(--YuGothic);
  font-size: 28px;
  font-weight: 700;
  font-feature-settings: "palt";
  line-height: 1.78;
}
.intro_text span {
  color: #DF2834;
}
.intro_subttl {
    text-align: center;
    font-size: 2rem;
    line-height: 2;
    margin-bottom: 80px;
}
.intro_subttl span {
    border-bottom: 8px solid #FFEC00;
}
.intro_reference {
    width: 75%;
    margin: 0 auto;
}
.intro_box {
    margin: 50px 0;
}
@media screen and (max-width: 1000px) {
  .intro_text {
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  .intro_text {
    font-size: 18px;
  }
  .intro_subttl {
    font-size: 1.2rem;
    margin-bottom: 50px;
  }
  .main .text {
    line-height: 2;
    font-size: 17px;
  }
  .item-tit.vol33 {
    font-size: 15px;
  }
}

/* spacialTopics */
section[key=spacialTopics] .head {
  margin-bottom: 30px;
}
section[key=spacialTopics] .headline span {
	color: #FA663A;
}
section[key=spacialTopics] .headline .h2 img {
    max-width: 500px;
    display: block;
    margin: 20px auto;
}
section[key=spacialTopics] .headline .h2.second img {
    max-width: 900px;
}
section[key=spacialTopics] .body .Topics-wrap {
    display: flex;
    margin-bottom: 50px;
}
section[key=spacialTopics] .body .item-title {
	font-size: 50px;
	line-height: 1.2;
	letter-spacing: -.05em;
	font-family: fot-tsukuardgothic-std, sans-serif;
}
section[key=spacialTopics] .body .item-important {
    text-align: center;
    font-size: 1.7rem;
    line-height: 2.5;
    margin: 35px 0 15px 0;
    background-color: #FFEC00;
}
section[key=spacialTopics] .body .item-ttl {
    text-align: center;
    font-size: 2rem;
    line-height: 2.5;
    margin: 0 0 35px 0;
    color: #016ECB;
    border-bottom: 8px solid #FFEC00;
}
section[key=spacialTopics] .body .item-title h3 {
    font-size: 44px;
    font-weight: 400;
    border-radius: 10px;
    padding: 0 auto;
    text-align: center;
    margin: 100px 0 40px 0;
    font-family: fot-tsukuardgothic-std, sans-serif;
}
section[key=spacialTopics] .body .item-title h3.blue {
    color: #2D447D;
    border: #2D447D 2px solid;
    border-radius: 10px;
    background-color: rgba(45, 68, 125, .1) 
}
section[key=spacialTopics] .body .item-title h3.yellow {
    color: #A58226;
    border: #A58226 2px solid;
    border-radius: 10px;
    background-color: rgba(165, 130, 38, .1) 
}
section[key=spacialTopics] .body .item-tit {
    margin: 20px 0;
    line-height: 2;
    text-align: center;
    color: #fff;
    background-color: #A58226;
    border-radius: 40px;
    font-size: 22px;
}
section[key=spacialTopics] .body .item-title ul {
    width: 70%;
    margin: 50px auto 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
}
section[key=spacialTopics] .body .item-img {
  margin: 0 0 100px 0;
}
section[key=spacialTopics] .body .item {
  margin: 100px 0 0 0;
}
section[key=spacialTopics] .body .item > div{
  width: 60%;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
	section[key=spacialTopics] .body .item-title {
		font-size: 32px;
		gap: 18px;
	}
  section[key=spacialTopics] .body .item-important {
    font-size: 1.2rem;
    line-height: 1.5;
    padding: 10px 0;
  }
  section[key=spacialTopics] .body .item-ttl {
    text-align: left;
    font-size: 1.5rem;
    padding: 0 0 0 3%;
  }
  section[key=spacialTopics] .body .item {
    margin: 50px 0 0 0;
  }
  section[key=spacialTopics] .body .Topics-wrap p {
      font-size: 15px;
      line-height: 1.5;
  }
  section[key=spacialTopics] .body .item-title .item > p {
      margin: 0 0 50px 0;
  }
}
@media screen and (max-width: 560px) {
	section[key=spacialTopics] .body .item-title {
		font-size: 21px;
		gap: 13px;
	}
    .main .h2 {
        font-size: 18px !important;
    }
    section[key=spacialTopics] .body .item {
        width: 100%;
    }
    section[key=spacialTopics] .body .item-title h3 {
        font-size: 22px;
        margin: 50px 0 20px 0;
    }
    section[key=spacialTopics] .body .item-title ul {
        width: 100%;
        margin: 20px 0 0;
        gap: 10px;
    }
}


/* interview */
section[key=interview] {
	padding: 90px 20px 0;
}
section[key=interview] .container {
	border-top: 3px dotted #FA663A;
	padding-top: 120px;
	padding-left: 0;
	padding-right: 0;
}
section[key=interview] .interview_box {
    position: relative;
	background-color: rgba(45, 68, 125, .1);
    border-radius: 10px;
    padding: 40px 40px 150px;
}
section[key=interview] .interview_box h3 {
	font-size: 44px;
    font-weight: 400;
    border-radius: 10px;
    padding: 0 auto;
    text-align: center;
    margin: 0 0 40px 0;
    font-family: fot-tsukuardgothic-std, sans-serif;
    color: #fff;
    border-radius: 10px;
    background-color: #2D447D; 
}
section[key=interview] .interview_box h4 {
    width: 100px;
	font-size: 15px;
    border-radius: 10px;
    padding: 0 auto;
    text-align: center;
    margin: 80px 0 0 50px;
    color: #2D447D;
    border: 1px #2D447D solid;
    border-radius: 6px;
    background-color: #fff; 
}
section[key=interview] .img_wrap {
  width: 70%;
  margin: 0 auto;
}
section[key=interview] .img_subtext {
  padding: 12px 0;
}
section[key=interview] .doctor {
	margin-top: 100px;
}


.vol33 section[key=interview] .belief {
	background-color: rgba(165, 130, 38, .15) !important;
}
.vol33 section[key=interview] .text_wrap {
	margin-bottom: 60px;
}
.vol33 section[key=interview] .h4.color {
	margin-bottom: 20px;
	color: #DF2834;
}
.vol33 section[key=interview] .items-text {
	line-height: 1.9;
	letter-spacing: .01em;
}
.vol33 section[key=interview] .favorite {
	margin-top: -64px !important;
	grid-gap: 8px !important;
}
.vol33 section[key=interview] .favorite .body {
	letter-spacing: -.05em;
	font-size: 15px;
	font-weight: 500;
}
.vol33 section[key=interview] .profile {
	padding: 0 !important;
	margin-top: 20px !important;
}
.vol33 .page-bottom-img {
	margin-top: 120px;
	padding: 0 20px;
}

@media screen and (max-width: 960px) {
	.vol33 section[key=interview] .favorite {
		margin-top: -164px !important;
	}
}
@media screen and (max-width: 767px) {
  .vol33 section[key=interview] .belief {
    margin-bottom: 30px;
  }
	section[key=interview] {
		padding: 50px 20px 0;
	}
	section[key=interview] .container {
		border-top: 3px dotted #FA663A;
		padding-top: 90px;
	}
	section[key=interview] .container .h2 {
		font-size: 18px;
	}
	.vol33 section[key=interview] .favorite {
		margin-top: 0px !important;
		padding: 10px 0 !important;
	}
    section[key=interview] .interview_box {
        padding: 40px 30px 150px;
    }
    section[key=interview] .interview_box h4 {
        width: 100px;
        margin: 50px 50px 30px 30px;
    }
    section[key=interview] .interview_box h3 {
        font-size: 22px;
    }
    section[key=interview] .interview_box p {
        font-size: 15px;
        line-height: 2;
    }
    section[key=interview] .img_wrap {
        width: 100%;
    }
    section[key=interview] .img_subtext {
      font-size: .8em;
    }
}