@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;500;700&display=swap");
* { margin: 0; padding: 0; box-sizing: border-box; }

html { height: 100%; background: #fff; }

body { height: auto; background-color: #f4f4f0; font-family: noto-sans-cjk-jp,'Inter',sans-serif; -webkit-text-size-adjust: 100%; font-feature-settings: "palt"; font-style: normal; font-weight: 500; font-size: 3.2vw; color: #333; line-height: 1.8; letter-spacing: 0.1em; box-sizing: border-box; position: relative; }
@media (min-width: 1025px) { body { font-size: 15px; line-height: 1.6; } }
@media (max-width: 1024px) and (min-width: 768px) { body { font-size: 15px; line-height: 1.6; } }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote { margin: 0; padding: 0; }

table { border-collapse: collapse; }

fieldset, img { border: 0; }

address, caption, cite, code, dfn, th, var { font-style: normal; font-weight: normal; }

li { list-style: none; }

caption, th { text-align: left; }

h1, h2, h3, h4, h5, h6 { font-family: 'Inter',noto-sans-cjk-jp,sans-serif; font-size: 100%; font-weight: bold; font-feature-settings: normal; line-height: 1.8; }

q:before, q:after { content: ''; }

abbr, acronym { border: 0; font-variant: normal; }

sup { vertical-align: text-top; }

sub { vertical-align: text-bottom; }

input, textarea, select { font-family: inherit; font-size: inherit; font-weight: inherit; font-size: 100%; vertical-align: middle; }

legend { color: #333; }

table { font-size: inherit; }

pre, code, kbd, samp, tt { font-family: monospace; font-size: 108%; line-height: 100%; }

img { width: 100%; height: auto; border: none; border: 0; vertical-align: bottom; }

iflame { width: 100%; height: auto; }

a { color: #333; text-decoration: none; outline: 0; }

a:hover { color: #333; }

a img { vertical-align: top; }

@media (min-width: 1025px) { .pc { display: block !important; }
  .tb { display: none !important; }
  .sp { display: none !important; } }
@media (max-width: 1024px) and (min-width: 768px) { .pc { display: none !important; }
  .tb { display: block !important; }
  .sp { display: none !important; } }
@media (max-width: 767px) { .pc { display: none !important; }
  .tb { display: none !important; }
  .sp { display: block !important; } }
.jp_txt { font-family: noto-sans-cjk-jp, sans-serif; }

.base_wrap { position: relative; }

@media (min-width: 1025px) { .wrap { width: 88.235%; margin: 0 auto; } }

div[class^="title_wrap"] { margin-bottom: 6.4vw; }
div[class^="title_wrap"] h2, div[class^="title_wrap"] h3 { color: #19863b; font-size: 3em; line-height: 1.0; letter-spacing: 0.2em; }
div[class^="title_wrap"] h2 span, div[class^="title_wrap"] h3 span { display: block; margin: 1.6vw 0 3.47vw; font-size: 0.4em; color: #4b9763; letter-spacing: 0.16em; }
div[class^="title_wrap"] p { color: #555; }
@media (min-width: 1025px) { div[class^="title_wrap"] { margin-bottom: 0; }
  div[class^="title_wrap"] h2, div[class^="title_wrap"] h3 { font-size: 3.2em; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; align-items: center; }
  div[class^="title_wrap"] h2 span, div[class^="title_wrap"] h3 span { display: inline-block; margin: 0 0 0 10px; font-size: 0.417em; } }

@media (min-width: 1025px) { div.title_wrap01 { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: space-between; align-items: center; } }
.swiper .swiper-pagination { width: auto; line-height: 0; bottom: 39.74vw; left: unset; right: 2.94%; }
.swiper .swiper-pagination .swiper-pagination-bullet { width: 1.6vw; height: 1.6vw; margin: 0 1.335vw; background-color: #fff; opacity: 0.2; }
.swiper .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active { opacity: 1.0; }
@media (min-width: 1025px) { .swiper .swiper-pagination { bottom: 16px; right: 16%; }
  .swiper .swiper-pagination .swiper-pagination-bullet { width: 12px; height: 12px; margin: 0 10px; opacity: 0.3; } }

.swiper-button-next, .swiper-button-prev::after { color: #19863b; }

#modal { display: none; width: 100%; height: 100vh; background-color: rgba(86, 85, 81, 0.9); position: fixed; top: 0; left: 0; z-index: 1000; }
#modal .modal_wrap { width: 100%; height: 100vh; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: center; align-items: center; }
#modal .modal_content { width: 93.87%; max-width: 400px; position: relative; }
#modal .video_box { width: 100%; padding-top: 56.25%; background: #333; position: relative; }
#modal .video_box iframe { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }
#modal .text { margin-top: 2.67vw; color: #fff; text-align: center; line-height: 1.34; }
#modal .close { width: 30px; height: 30px; position: absolute; top: -42px; right: 0; cursor: pointer; }
#modal .close::before, #modal .close::after { content: ""; width: 40px; height: 1px; background-color: #fff; position: absolute; top: 14px; left: -5px; }
#modal .close::before { transform: rotate(45deg); }
#modal .close::after { transform: rotate(-45deg); }
@media (min-width: 1025px) { #modal .modal_content { width: 70.6%; max-width: 70.6%; }
  #modal .text { margin-top: 24px; font-size: 1.2em; }
  #modal .close { width: 42px; height: 42px; top: -58px; }
  #modal .close::before, #modal .close::after { width: 58px; top: 21px; left: -8px; } }

header { width: 100%; position: fixed; top: 0; left: 0; z-index: 100; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; }
header .navSPbtn { width: 14.93vw; height: 14.93vw; background-color: rgba(255, 255, 255, 0.9); margin-left: auto; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }
header .navSPbtn span { width: 5.34vw; height: 4.54vw; margin: auto; display: block; border-bottom: 1px solid #19863b; position: relative; transition: all 0.3s ease; }
header .navSPbtn span::before, header .navSPbtn span::after { content: ""; width: 100%; height: 1px; background-color: #19863b; position: absolute; left: 0; transition: all 0.3s ease; }
header .navSPbtn span::before { top: 0; }
header .navSPbtn span::after { top: 2.14vw; }
header .navSPbtn.open span { border-bottom: 1px solid rgba(255, 255, 255, 0); }
header .navSPbtn.open span::before, header .navSPbtn.open span::after { width: 6.4vw; top: 2.14vw; left: -0.54vw; }
header .navSPbtn.open span::before { transform: rotate(45deg); }
header .navSPbtn.open span::after { transform: rotate(-45deg); }
header .scrollWrap { display: none; width: calc(100% - 14.93vw); padding: 1.07vw 2.14vw; background: rgba(255, 255, 255, 0.9); }
header .scrollWrap p.logo { width: 12.8vw; }
header nav { display: none; width: 100%; height: 100vh; padding: 4.27vw 4.27%; background-color: #19863b; }
header nav li { border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
header nav li.on { border-bottom: 1px solid #00e046; }
header nav li.on a { color: #00e046; }
header nav a { display: block; padding: 0 1.46%; font-family: 'Inter',noto-sans-cjk-jp,sans-serif; font-size: 1.084em; color: #fff; line-height: 3.65; font-weight: bold; }
header nav span { position: relative; }
header nav span::after { content: ""; width: 2.67vw; height: 2.4vw; background: url(../img/icon_target.svg) no-repeat center center; background-size: contain; position: absolute; top: calc(50% - 2.4vw / 2); right: -4.27vw; }
@media (min-width: 1025px) { header .navSPbtn { display: none; }
  header .scrollWrap { width: auto; padding: 0 0; background: unset; }
  header .scrollWrap p.logo { width: 72px; position: absolute; top: 4px; left: 5.88%; }
  header nav { display: block; width: 100%; height: auto; padding: 26px 5.88% 17px 0; background-color: unset; }
  header nav.scroll { background: rgba(255, 255, 255, 0.9); }
  header nav.scroll li a { color: #555; }
  header nav.scroll li a:hover { color: #19863b; }
  header nav.scroll li.on a { color: #19863b; }
  header nav ul { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: flex-end; }
  header nav li { margin-left: 3.96%; border-bottom: none; }
  header nav li.on { border-bottom: 2px solid #00e046; }
  header nav li.on a { color: #fff; }
  header nav li.sns { display: none; }
  header nav a { padding: 0 0 8px; font-size: 0.94em; line-height: 1; }
  header nav a:hover { color: #00e046; }
  header nav span { position: relative; }
  header nav span::after { content: ""; width: 2.67vw; height: 2.4vw; background: url(../img/icon_target.svg) no-repeat center center; background-size: contain; position: absolute; top: calc(50% - 2.4vw / 2); right: -4.27vw; } }
@media (max-width: 1024px) and (min-width: 768px) { header .navSPbtn { width: 80px; height: 80px; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }
  header .navSPbtn span { width: 32px; height: 28px; margin: auto; }
  header .navSPbtn span::before { top: 0; }
  header .navSPbtn span::after { top: 13px; }
  header .navSPbtn.open span::before, header .navSPbtn.open span::after { width: 40px; top: 15px; left: -4px; }
  header .scrollWrap { display: none; width: calc(100% - 80px); padding: 9px 2em; }
  header .scrollWrap p.logo { width: 60px; } }

#top_mv { position: relative; z-index: 2; }
#top_mv h1 { width: 36.27%; position: absolute; top: 3.2%; left: 4.27%; z-index: 2; }
#top_mv .swiper { width: 100%; height: 106.66vw; }
#top_mv .swiper img { width: auto; height: 100%; }
@media (min-width: 1025px) { #top_mv { z-index: 3; }
  #top_mv h1 { width: 20%; max-width: 272px; top: 24px; left: 5.88%; }
  #top_mv .swiper { width: 88.235%; height: auto; margin: 0 0 0 auto; }
  #top_mv .swiper img { width: 100%; height: auto; } }
@media (max-width: 1024px) and (min-width: 768px) { #top_mv { z-index: 3; }
  #top_mv h1 { width: 20%; max-width: 272px; top: 24px; left: 5.88%; } }

#top_news { width: 100%; /*　  .information表示時に使用
position: absolute;
top: 69vw;
*/ position: relative; z-index: 2; }
#top_news .information { background-color: rgba(255, 255, 255, 0.8); }
#top_news .information h2 { padding: 4.4% 6.4% 0; color: #e8850f; font-family: noto-sans-cjk-jp, sans-serif; font-size: 1.33em; font-weight: 700; line-height: 1.0; }
#top_news .information p { margin-top: 8px; padding: 0 6.4% 3.87%; font-size: 0.917em; line-height: 1.636; }
#top_news .news_box { background-color: #fff; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; align-items: center; justify-content: space-between; position: relative; }
#top_news .news_box::after { content: ""; width: 80%; height: 3.04vw; background-color: #fff; position: absolute; bottom: 0; right: 4%; }
#top_news .news_box h3 { width: 10vw; margin: 3.6% 1.48em 3.6% 1.26em; padding: 6.13vw 1.48em 6.13vw 0; font-family: noto-sans-cjk-jp, sans-serif; font-size: 1.25em; font-weight: 700; line-height: 1.0; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; border-right: 1px solid #ddd; }
#top_news .news_box ol { width: calc(100% - (10vw + 2.74em)); margin-right: 3%; padding: 3.6% 2.07% 3.6% 0; max-height: 37.4vw; overflow-y: auto; }
#top_news .news_box ol li { font-size: 1.08em; }
#top_news .news_box ol li:first-child p.date { margin-top: 0; }
#top_news .news_box ol li p { line-height: 1.23; }
#top_news .news_box ol li p.date { margin: 2.94vw 0 1.6vw 0; font-family: 'Inter', sans-serif; color: #888; font-weight: 500; line-height: 1.0; }
#top_news .news_box ol li a.news_link { padding: 0 0.8vw 0; color: #19863b; border-bottom: 1px solid; position: relative; display: inline-block; }
#top_news .news_box ol li a.news_link::after { content: ""; width: 2.67vw; height: 2.4vw; background: url(../img/icon_target_green.svg) no-repeat center center; background-size: contain; position: absolute; top: calc(50% - 2.13vw / 2); right: -3.47vw; }
@media (min-width: 1025px) { #top_news { width: 58.82%; position: relative; top: 0; left: 5.88%; z-index: 3; }
  #top_news .information h2 { padding: 3.4% 6% 0; font-size: 1.2em; }
  #top_news .information p { margin-top: 14px; padding: 0 6% 2.25%; font-size: 0.94em; line-height: 1.7; }
  #top_news .news_box { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }
  #top_news .news_box::after { content: ""; width: 80%; height: 1.1em; background-color: #fff; position: absolute; bottom: 0; right: 4%; }
  #top_news .news_box h3 { width: calc(100% - 82.8%); margin: 3% 3.6% 3% 3.5%; padding: 25px 3.3% 25px 0; font-size: 1.07em; text-align: left; -ms-writing-mode: unset; writing-mode: unset; }
  #top_news .news_box ol { width: 82.8%; max-height: 115px; overflow-y: auto; margin-right: 0; padding: 3% 3.5% 3% 0; }
  #top_news .news_box ol li { margin-top: 0.8em; font-size: 1.08em; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; /*
a{
	width: 100%;
	@include flex;
	&:hover p:last-child{ text-decoration: none; }
}
*/ }
  #top_news .news_box ol li:first-child { margin-top: 0; }
  #top_news .news_box ol li p { width: calc(100% - 17.25%); padding-left: 4.2%; line-height: 1.23; font-size: 0.93em; }
  #top_news .news_box ol li p.date { width: 17.25%; margin: 0 0 0 0; padding-left: 0; color: #888; font-weight: 500; line-height: 1.23; letter-spacing: 0.075em; }
  #top_news .news_box ol li a.news_link { margin-left: 3px; padding: 0 0 5px; display: inline-block; }
  #top_news .news_box ol li a.news_link::after { width: 13px; height: 12px; top: calc(50% - 15px / 2); right: -18px; }
  #top_news .news_box ol li a.news_link:hover { border-color: #fff; } }
@media (max-width: 1024px) and (min-width: 768px) { #top_news { position: relative; top: 0; left: 0; z-index: 3; }
  #top_news .information h2 { padding: 3.4% 6% 0; font-size: 1.2em; }
  #top_news .information p { margin-top: 14px; padding: 0 6% 2.25%; font-size: 0.94em; line-height: 1.7; }
  #top_news .news_box { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }
  #top_news .news_box h3 { width: calc(100% - 82.8%); margin: 3% 3.6% 3% 3.5%; padding: 25px 3.3% 25px 0; font-size: 1.07em; text-align: left; -ms-writing-mode: unset; writing-mode: unset; }
  #top_news .news_box ol { width: 82.8%; max-height: 125px; margin-right: 1.5%; padding: 3% 2% 3% 0; }
  #top_news .news_box ol li { margin-top: 0.8em; font-size: 1.08em; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }
  #top_news .news_box ol li:first-child { margin-top: 0; }
  #top_news .news_box ol li p { width: calc(100% - 17.25%); padding-left: 4.2%; line-height: 1.23; font-size: 0.93em; }
  #top_news .news_box ol li p.date { width: 17.25%; margin: 0 0 0 0; padding-left: 0; color: #888; font-weight: 500; line-height: 1.23; letter-spacing: 0.075em; }
  #top_news .news_box ol li a.news_link { margin-left: 3px; padding: 0 0 5px; display: inline-block; }
  #top_news .news_box ol li a.news_link::after { width: 13px; height: 12px; top: calc(50% - 15px / 2); right: -18px; }
  #top_news .news_box ol li a.news_link:hover { border-color: #fff; } }

#deco_wrap { position: relative; }
#deco_wrap::before, #deco_wrap::after { content: ""; width: 85.4%; position: absolute; }
#deco_wrap::before { height: 29%; background-color: #dce6df; top: 0; left: 0; z-index: 1; }
#deco_wrap::after { height: 73%; background-color: #e9e6dc; bottom: 28px; right: 0; z-index: 1; }
#deco_wrap section { position: relative; z-index: 2; }
@media (min-width: 1025px) { #deco_wrap { margin-top: 165px; padding: 0 0 0 0; position: relative; }
  #deco_wrap::before, #deco_wrap::after { width: 82.35%; }
  #deco_wrap::before { height: 41.6%; top: -174px; }
  #deco_wrap::after { height: 66%; bottom: 48px; } }
@media (max-width: 1024px) and (min-width: 768px) { #deco_wrap { margin-top: 165px; padding: 0 0 0 0; position: relative; }
  #deco_wrap::before, #deco_wrap::after { width: 82.35%; }
  #deco_wrap::before { height: 41.6%; top: -174px; }
  #deco_wrap::after { height: 66%; bottom: 48px; } }

#top_movie { margin: -4.27vw 0 0 0; padding: 15.47vw 5.2% 10.14vw; /*
@media(max-width: 1320px) and (min-width: 1240px){
	span{ letter-spacing: 0.05em; }
	.title_wrap01 p{ letter-spacing: 0.05em; }
}
@media(max-width: 1239px) and (min-width: 1080px){
	h2{ letter-spacing: 0.15em; }
	span{
		margin: 0 0 0 5px;
		font-size: 1.5vw;
		letter-spacing: 0.05em;
	}
	.title_wrap01 p{
		letter-spacing: 0.05em;
		font-size: 1.21vw;
	}
}
@media(max-width: 1079px) and (min-width: 1025px){
	.title_wrap01{
		flex-wrap: wrap;
		p{ margin-top: 30px; }
	}
}
*/ }
#top_movie p.no_movie { width: 100%; margin: 0; padding: 1.5em 2em; line-height: 1.8; background-color: #fff; }
#top_movie ul.movie_list { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: space-between; }
#top_movie li { width: 47.62%; margin-bottom: 4.27vw; background-color: #fff; position: relative; }
#top_movie li::before { content: ""; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 1; }
#top_movie .movie_box { width: 100%; padding-top: 56.25%; position: relative; }
#top_movie .movie_box iframe { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }
#top_movie p.movie_title { padding: 3.2vw 8.125% 3.47vw 19.375%; line-height: 1.34; letter-spacing: 0.055em; font-weight: bold; position: relative; }
#top_movie p.movie_title::before { content: ""; width: 3.74vw; height: 3.6vw; background: url(../img/icon_movie.svg) no-repeat left top; background-size: contain; position: absolute; top: 3.74vw; left: 3.2vw; }
#top_movie p.movie_title span.name { display: block; }
@media (min-width: 1025px) { #top_movie { width: 77.65%; margin: -171px auto 174px; padding: 86px 0 0; z-index: 3 !important; }
  #top_movie div.title_wrap01 { margin-bottom: 19px; flex-wrap: wrap; }
  #top_movie div.title_wrap01 p { margin-top: 16px; }
  #top_movie ul.movie_list { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: flex-start; }
  #top_movie li { width: 30.3%; margin: 32px 4.545% 0 0; cursor: pointer; }
  #top_movie li:nth-child(3n) { margin-right: 0; }
  #top_movie .movie_box { width: 100%; padding-top: 56.25%; }
  #top_movie p.movie_title { padding: 20px 7.5% 24px 17.5%; font-size: 1.07em; line-height: 1.5; letter-spacing: 0.075em; }
  #top_movie p.movie_title::before { width: 21px; height: 20px; top: 1.4375em; left: 7.4%; }
  #top_movie p.movie_title span.name { display: inline-block; } }
@media (max-width: 1024px) and (min-width: 768px) { #top_movie { width: 77.65%; margin: -171px auto 145px; padding: 86px 0 0; z-index: 2 !important; }
  #top_movie div.title_wrap01 { margin-bottom: 19px; }
  #top_movie ul.movie_list { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: flex-start; }
  #top_movie li { width: 30.3%; margin: 32px 4.545% 0 0; cursor: pointer; }
  #top_movie li:nth-child(3n) { margin-right: 0; }
  #top_movie .movie_box { width: 100%; padding-top: 56.25%; }
  #top_movie p.movie_title { padding: 14px 7.5% 18px 17.5%; font-size: 1.07em; line-height: 1.5; letter-spacing: 0.075em; }
  #top_movie p.movie_title::before { width: 16px; height: 20px; top: 1.26em; left: 6.4%; }
  #top_movie p.movie_title span.name { display: inline-block; } }

#top_people { margin: -14.93vw 0 0 0; padding: 29.86vw 8% 5.34vw; }
#top_people .title_wrap02 p { color: #555; line-height: 1.67; }
#top_people ul.counter li img.num { position: absolute; width: 90px; right: -7px; pointer-events: none; }
#top_people ul.counter li:nth-child(odd) img.num { top: -26px; }
#top_people ul.counter li:nth-child(even) img.num { bottom: 80px; }
#top_people li.p_block { margin: 0 0 10.67vw 0; position: relative; }
#top_people li.p_block a { display: block; }
#top_people .txt_block { margin-top: 2.14vw; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; }
#top_people .txt_block .place { width: 10.16%; padding: 2.94vw 0; color: #555; font-size: 0.84em; text-align: center; line-height: 3.4; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; border-top: 1px solid #19863b; border-bottom: 1px solid #19863b; }
#top_people .txt_block .txt_box { width: calc(100% - (10.16% + 3.34vw)); margin: 0.8vw 0 0 3.34vw; }
#top_people .txt_block .txt_box h3 { line-height: 1.5; }
#top_people .txt_block .txt_box p { margin-top: 1.86vw; font-size: 0.92em; line-height: 1.5; }
@media (min-width: 1025px) { #top_people { width: 81.735%; margin: -64px auto 0; padding: 0 0% 64px; margin: -154px auto 0; padding: 90px 0% 64px; }
  #top_people .title_wrap02 p { margin-top: 32px; line-height: 1.67; }
  #top_people ul.counter { margin-bottom: 130px; /* 記事が偶数個だった場合に使用 */ padding-left: 0.72%; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; flex-direction: row-reverse; justify-content: space-between; align-items: flex-end; }
  #top_people li.p_block { width: 46.4%; margin: 88px 0 0 0; }
  #top_people li.p_block:nth-child(odd) { top: -116px; margin: 170px 0 -82px; }
  #top_people li.p_block:nth-child(2) { top: 52px; }
  #top_people li.p_block:nth-child(4) { top: 38px; }
  #top_people li.p_block:nth-child(6) { top: 38px; }
  #top_people li.p_block:nth-child(8) { top: 38px; }
  #top_people li.p_block:nth-child(10) { top: 38px; }
  #top_people li.p_block a { display: block; }
  #top_people .txt_block { margin-top: 16px; align-items: center; }
  #top_people .txt_block .place { width: 15.625%; padding: 29px 0; font-size: 0.93em; line-height: 1; -ms-writing-mode: lr-tb; writing-mode: horizontal-tb; border-top: 2px solid #19863b; border-bottom: 2px solid #19863b; }
  #top_people .txt_block .txt_box { width: calc(100% - (15.625% + 7%)); margin: 0 0 0 7%; }
  #top_people .txt_block .txt_box h3 { line-height: 1.46; }
  #top_people .txt_block .txt_box p { margin-top: 7px; font-size: 0.93em; line-height: 1.46; } }
@media (max-width: 1024px) and (min-width: 768px) { #top_people { width: 81.735%; margin: -64px auto 0; padding: 0 0% 64px; }
  #top_people .title_wrap02 p { margin-top: 32px; line-height: 1.67; }
  #top_people ul.counter { padding-left: 0.72%; margin-bottom: 3em; /* 記事が偶数個だった場合に使用 */ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; flex-direction: row-reverse; justify-content: space-between; align-items: flex-end; }
  #top_people ul.counter li:nth-child(odd) img.num { top: -26px; }
  #top_people ul.counter li:nth-child(even) img.num { bottom: 115px; }
  #top_people li.p_block { width: 46.4%; margin: 0 0 66px 0; }
  #top_people li.p_block:nth-child(odd) { top: -25px; }
  #top_people li.p_block:nth-child(2) { top: 52px; }
  #top_people li.p_block:nth-child(4) { top: 38px; }
  #top_people li.p_block:nth-child(6) { top: 38px; }
  #top_people li.p_block:nth-child(8) { top: 38px; }
  #top_people li.p_block:nth-child(10) { top: 38px; }
  #top_people li.p_block a { display: block; }
  #top_people .txt_block { margin-top: 16px; align-items: center; }
  #top_people .txt_block .place { line-height: 2.5; border-top: 2px solid #19863b; border-bottom: 2px solid #19863b; }
  #top_people .txt_block .txt_box { width: calc(100% - (10.16% + 7%)); margin: 0 0 0 7%; }
  #top_people .txt_block .txt_box h3 { line-height: 1.46; }
  #top_people .txt_block .txt_box p { margin-top: 7px; font-size: 0.93em; line-height: 1.46; } }
@media (max-width: 767px) { #top_people ul.counter li:nth-child(odd) img.num, #top_people ul.counter li:nth-child(even) img.num { bottom: 19vw; } }

#top_movie + #top_people { padding: 14.93vw 8% 5.34vw; }
@media (min-width: 1025px) { #top_movie + #top_people { margin: -238px auto 0; padding: 174px 0% 64px; } }
@media (max-width: 1024px) and (min-width: 768px) { #top_movie + #top_people { padding: 0 0% 64px; } }

#people header { box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.2); }
#people header .scrollWrap { display: block; background: rgba(255, 255, 255, 0.9); }
#people section.base_wrap { padding-top: 25.63vw; }
#people .title_wrap01 { padding: 0 6.4%; text-align: center; }
#people .title_wrap01 h2 span, #people .title_wrap01 h3 span { font-size: 0.5em; }
#people .headline { margin: 9.6vw 0 9.87vw; position: relative; }
#people .headline .text_box { width: 90.7%; margin: -11.74vw 0 0 0; background-color: #fff; position: relative; }
#people .headline .num { position: absolute; width: 20vw; top: -6.4vw; right: 1.07vw; }
#people .headline div.flex { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; align-items: center; padding: 6.4vw 9% 6.4vw 5%; }
#people .headline .place { margin-right: 12px; padding: 4.54vw 2.93vw; font-size: 0.83em; color: #555; text-align: center; line-height: 1; border-top: 1px solid #19863b; border-bottom: 1px solid #19863b; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }
#people .headline h1 { font-size: 1.34em; line-height: 1.625; }
#people .headline .name { padding: 1.34vw 0 1.6vw; text-align: center; background-color: #e9e6dc; }
#people .headline .name span.organization { display: block; }
#people section.block_wrap { width: 87.2%; margin: 0 auto 12vw; }
#people div[class*="block0"] { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; /*
h2{
	margin-bottom: 3.2vw;
	font-size: 1.67em;
	line-height: 1.5;
}
*/ }
#people div[class*="block0"] h2 { margin-bottom: 3.2vw; font-size: 1.67em; line-height: 1.5; }
#people div[class*="block0"] h2 + p.text_only { margin-top: 0; }
#people div[class*="block0"] .pic_box { margin-top: 6.94vw; }
#people div[class*="block0"] .pic_box p.caption { margin-top: 1.34vw; font-size: 0.84em; color: #777; text-align: center; line-height: 1.4; }
#people div[class*="block0"] ul.pic_box { margin-top: 5.6vw; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: space-between; }
#people div[class*="block0"] ul.pic_box li { width: 49.54%; }
#people div[class*="block0"] p { font-size: 1.084em; line-height: 1.92; }
#people div[class*="block0"] p a { color: #19863b; text-decoration: underline; }
#people div[class*="block0"] + div[class*="block0"] { margin-top: 6.94vw; }
#people div.block03 { margin-top: 7.47vw; }
#people div.block04 .text_box { order: 1; }
#people div.block04 .pic_box { margin-bottom: 5.87vw; order: 2; }
#people div.block05 .text_box { order: 1; }
#people div.block05 .pic_box { order: 3; }
#people div.block05 p.wide { order: 2; }
#people div.block06 .text_box { order: 1; }
#people div.block06 .pic_box { order: 3; }
#people div.block06 p.wide { order: 2; }
#people p.text_only { margin-top: 5.87vw; }
#people dl.interview_data { width: 87.2%; margin: 0 auto 0; padding: 5.33vw 4.9% 7.2vw; background-color: #fff; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; align-items: flex-start; flex-wrap: wrap; font-size: 0.91em; }
#people dl.interview_data dt.green { width: 21.5%; margin-top: 0.8vw; padding: 1.067vw 0 1.067vw 0.54vw; background-color: #19863b; border-radius: 50px; font-family: 'Inter',noto-sans-cjk-jp,sans-serif; color: #fff; text-align: center; font-weight: bold; line-height: 1; letter-spacing: 0.2em; }
#people dl.interview_data dd { width: calc(100% - 21.5%); margin-bottom: 5.87vw; padding-left: 1.34em; font-size: 1.2em; }
#people dl.interview_data dd .bold { margin-top: -0.8vw; display: inline-block; font-size: 1.28em; font-weight: bold; }
#people dl.interview_data dd:last-child { margin-bottom: 0; }
#people dl.interview_data p { line-height: 1.54; }
#people dl.interview_data p span.cgray { font-size: 0.84em; color: #666; font-weight: 300; }
#people .other_articles { margin-top: 10.7vw; padding: 6.4vw 10% 27px; background-color: #e2e0da; position: relative; }
#people .other_articles li { padding: 0 1.6vw 0; }
#people .other_articles .text_wrap { padding-left: 2.34em; position: relative; }
#people .other_articles .num { width: 9.33vw; position: absolute; top: -1.87vw; left: -1.6vw; z-index: 2; }
#people .other_articles .organization { margin: 1.07vw 0 -0.8vw; color: #19863b; font-weight: bold; }
#people .other_articles .industry { font-size: 0.84em; color: #555; }
#people .other_articles .swiper-button-next, #people .other_articles .swiper-button-prev { width: 3.6vw; height: 6.94vw; }
#people .other_articles .swiper-button-next::after, #people .other_articles .swiper-button-prev::after { color: #19863b; font-size: 2.19em; }
#people .other_articles .swiper-button-next { right: 3.6vw; }
#people .other_articles .swiper-button-prev { left: 3.6vw; }
@media (min-width: 1025px) { #people header nav { background: rgba(255, 255, 255, 0.9); }
  #people header nav li.on a { color: #19863b; }
  #people header nav a { color: #555; }
  #people header nav a:hover { color: #19863b; }
  #people section.base_wrap { padding-top: 118px; }
  #people h2 { justify-content: center; }
  #people .title_wrap01 { padding: 0 5.88%; display: block; }
  #people .title_wrap01 p { margin-top: 30px; font-size: 1.07em; }
  #people .headline { width: 88.235%; max-width: 1200px; margin: 45px auto 64px; }
  #people .headline .main_pic { width: 90%; margin-left: auto; display: block; }
  #people .headline .text_box { width: 42.7%; margin: 0 0 0 0; position: absolute; bottom: 0; left: 0; }
  #people .headline .num { width: 107px; top: -40px; right: 4px; }
  #people .headline div.flex { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; align-items: center; padding: 32px 8.4% 32px 8.4%; }
  #people .headline .place { margin-right: 12px; padding: 23px 12.5px; font-size: 15px; border-top: 2px solid #19863b; border-bottom: 2px solid #19863b; }
  #people .headline h1 { font-size: 1.47em; line-height: 1.636; }
  #people .headline .name { padding: 10px 0 11px; font-size: 1.07em; }
  #people section.block_wrap { width: 82.35%; max-width: 1120px; margin: 0 auto 65px; }
  #people div[class*="block0"] h2 { margin-bottom: 18px; font-size: 1.6em; line-height: 1.5; }
  #people div[class*="block0"] h2 + p.text_only { margin-top: 0; }
  #people div[class*="block0"] .pic_box { margin-top: 0; }
  #people div[class*="block0"] .pic_box p.caption { margin-top: 6px; font-size: 0.86em; line-height: 1.4; }
  #people div[class*="block0"] ul.pic_box { margin-top: 0; }
  #people div[class*="block0"] ul.pic_box li { width: 49.68%; }
  #people div[class*="block0"] p { font-size: 1em; line-height: 2; font-weight: 300; }
  #people div[class*="block0"] p a:hover { text-decoration: none; }
  #people div[class*="block0"] + div[class*="block0"] { margin-top: 32px; }
  #people div.block01 { flex-wrap: nowrap; justify-content: space-between; }
  #people div.block01 .text_box { width: 53.57%; order: 2; }
  #people div.block01 .pic_box { width: 42.867%; order: 1; }
  #people div.block02 { flex-wrap: nowrap; justify-content: space-between; }
  #people div.block02 .text_box { width: 53.57%; }
  #people div.block02 .pic_box { width: 42.867%; }
  #people div.block03 { flex-wrap: nowrap; justify-content: space-between; margin-top: 32px; }
  #people div.block03 .text_box { width: 39.73%; }
  #people div.block03 .pic_box { width: 57.14%; }
  #people div.block04 { flex-wrap: nowrap; justify-content: space-between; margin-top: 32px; }
  #people div.block04 .text_box { width: 39.73%; order: 2; }
  #people div.block04 .pic_box { width: 57.14%; margin-bottom: 0; order: 1; }
  #people div.block05 { justify-content: space-between; }
  #people div.block05 .text_box { width: 53.57%; order: 1; }
  #people div.block05 .pic_box { width: 42.867%; order: 2; }
  #people div.block05 p.wide { width: 100%; margin-top: 16px; order: 3; }
  #people div.block06 { justify-content: space-between; }
  #people div.block06 .text_box { width: 53.57%; order: 2; }
  #people div.block06 .pic_box { width: 42.867%; order: 1; }
  #people div.block06 p.wide { width: 100%; margin-top: 16px; order: 3; }
  #people p.text_only { margin-top: 39px; line-height: 2; font-weight: 300; }
  #people dl.interview_data { width: 82.35%; margin: 0 auto 0; padding: 35px 3.57% 43px; font-size: 1em; }
  #people dl.interview_data dt.green { width: 7.7%; margin-top: 0; padding: 5px 0 5px 3px; font-size: 0.94em; }
  #people dl.interview_data dd { width: calc(100% - 7.7%); margin-bottom: 1.47em; padding-left: 1.07em; font-size: 1em; }
  #people dl.interview_data dd .bold { margin-top: -4px; font-size: 1.2em; display: block; }
  #people dl.interview_data p { margin-top: 2px; margin-right: 0.8em; line-height: 2; display: inline-block; }
  #people dl.interview_data p span.cgray { font-size: 0.94em; }
  #people .other_articles { margin-top: 80px; padding: 48px 10% 44px; }
  #people .other_articles li { padding: 0 8px 0; }
  #people .other_articles .text_wrap { padding-left: 3.2em; }
  #people .other_articles .num { width: 60px; top: -18px; left: -9px; }
  #people .other_articles .organization { margin: 14px 0 0; font-size: 0.94em; }
  #people .other_articles .industry { font-size: 0.87em; }
  #people .other_articles .swiper-button-next, #people .other_articles .swiper-button-prev { width: 18px; height: 34px; }
  #people .other_articles .swiper-button-next::after, #people .other_articles .swiper-button-prev::after { font-size: 2.34em; }
  #people .other_articles .swiper-button-next { right: 6.618%; }
  #people .other_articles .swiper-button-prev { left: 6.618%; } }
@media (max-width: 1024px) and (min-width: 768px) { #people section.base_wrap { padding-top: 140px; }
  #people .headline { margin: 0 0 60px; }
  #people .headline .text_box { width: 86%; margin: -54px 0 0 0; }
  #people .headline .num { width: 15%; top: -36px; right: 6px; }
  #people .headline div.flex { padding: 28px 10% 28px 6%; }
  #people .headline .place { margin-right: 12px; padding: 22px 12px; font-size: 0.83em; }
  #people .headline h1 { font-size: 1.34em; line-height: 1.625; }
  #people .headline .name { padding: 1.34vw 0 1.6vw; }
  #people section.block_wrap { margin: 0 auto 60px; }
  #people div[class*="block0"] h2 { margin-bottom: 12px; }
  #people div[class*="block0"] .pic_box { margin-top: 24px; }
  #people div[class*="block0"] .pic_box p.caption { margin-top: 7px; }
  #people div[class*="block0"] ul.pic_box { margin-top: 20px; }
  #people div[class*="block0"] + div[class*="block0"] { margin-top: 28px; }
  #people div.block03 { margin-top: 28px; }
  #people div.block04 .pic_box { margin-bottom: 22px; }
  #people p.text_only { margin-bottom: 22px; }
  #people dl.interview_data { width: 87.2%; margin: 0 auto 0; padding: 24px 4.9% 30px; font-size: 0.91em; }
  #people dl.interview_data dt.green { width: 15.5%; margin-top: 0; padding: 7px 0 7px 4px; }
  #people dl.interview_data dd { width: calc(100% - 15.5%); margin-bottom: 20px; padding-left: 1.6em; font-size: 1.2em; }
  #people dl.interview_data dd .bold { margin-top: -4px; font-size: 1.28em; }
  #people dl.interview_data dd:last-child { margin-bottom: 0; }
  #people dl.interview_data p { line-height: 1.54; }
  #people dl.interview_data p span.cgray { font-size: 0.84em; }
  #people .other_articles { margin-top: 40px; padding: 24px 10% 27px; }
  #people .other_articles li { padding: 0 6px 0; }
  #people .other_articles .num { width: 42px; top: -16px; left: -6px; }
  #people .other_articles .organization { margin: 4px 0 -3px; }
  #people .other_articles .swiper-button-next, #people .other_articles .swiper-button-prev { width: 2.19em; height: 2.19em; } }

#archive header { box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.2); }
#archive header .scrollWrap { display: block; background: rgba(255, 255, 255, 0.9); }
#archive section.base_wrap { padding-top: 25.63vw; }
#archive .title_wrap01 { padding: 0 6.4%; text-align: center; }
#archive .title_wrap01 h2 span, #archive .title_wrap01 h3 span { font-size: 0.5em; }
#archive ol.flex_wrap { width: 87.2%; margin: 9.07vw auto 0; padding-bottom: 8.54vw; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: space-between; flex-wrap: wrap; }
#archive ol.flex_wrap li { width: 50%; margin-bottom: 8.54vw; text-align: center; }
#archive ol.flex_wrap li img { width: auto; height: 46.7vw; }
#archive ol.flex_wrap li a { display: block; }
#archive ol.flex_wrap p.year { margin-top: 0.54vw; font-family: 'Inter',sans-serif; font-size: 1.25em; color: #19863b; font-weight: bold; text-align: center; }
#archive ol.flex_wrap p.year span { padding: 0 4.27vw 0.54vw 1vw; position: relative; border-bottom: 2px solid #00bc3b; }
#archive ol.flex_wrap p.year span::after { content: ""; width: 2.67vw; height: 2.4vw; background: url(../img/icon_target_green.svg) no-repeat left top; background-size: 100% 100%; position: absolute; top: calc(50% - 2.4vw / 2 - 1px); right: 0.93vw; }
@media (min-width: 1025px) { #archive header nav { background: rgba(255, 255, 255, 0.9); }
  #archive header nav li.on a { color: #19863b; }
  #archive header nav a { color: #555; }
  #archive header nav a:hover { color: #19863b; }
  #archive section.base_wrap { padding-top: 118px; }
  #archive .title_wrap01 { padding: 0 6.4%; display: block; }
  #archive .title_wrap01 h2, #archive .title_wrap01 h3 { width: 100%; justify-content: center; }
  #archive .title_wrap01 h2 span, #archive .title_wrap01 h3 span { font-size: 0.5em; display: block; }
  #archive .title_wrap01 p { margin-top: 30px; font-size: 1.07em; }
  #archive ol.flex_wrap { width: 88.235%; max-width: 1200px; margin: 44px auto 0; padding: 0 1.8% 56px; justify-content: flex-start; }
  #archive ol.flex_wrap li { width: 23.68%; margin-bottom: 48px; margin-right: 1.75%; }
  #archive ol.flex_wrap li:nth-child(4n) { margin-right: 0; }
  #archive ol.flex_wrap li img { width: auto; height: 100%; max-height: 350px; }
  #archive ol.flex_wrap li a { transition: opacity 0.3s ease; }
  #archive ol.flex_wrap li a:hover { opacity: 0.7; }
  #archive ol.flex_wrap p.year { margin-top: 0.54vw; font-size: 1.25em; }
  #archive ol.flex_wrap p.year span { padding: 0 28px 3px 5px; }
  #archive ol.flex_wrap p.year span::after { width: 15px; height: 14px; top: calc(50% - 14px / 2 - 1px); right: 7px; } }
@media (max-width: 1024px) and (min-width: 768px) { #archive section.base_wrap { padding-top: 140px; }
  #archive ol.flex_wrap { width: 88.235%; max-width: 1200px; margin: 44px auto 0; padding: 0 1.8% 56px; justify-content: flex-start; }
  #archive ol.flex_wrap li { width: 23.68%; margin-bottom: 48px; margin-right: 1.75%; }
  #archive ol.flex_wrap li:nth-child(4n) { margin-right: 0; }
  #archive ol.flex_wrap li img { width: auto; max-height: 200px; }
  #archive ol.flex_wrap li a { transition: opacity 0.3s ease; }
  #archive ol.flex_wrap li a:hover { opacity: 0.7; }
  #archive ol.flex_wrap p.year { margin-top: 0.54vw; font-size: 1.25em; }
  #archive ol.flex_wrap p.year span { padding: 0 28px 3px 5px; }
  #archive ol.flex_wrap p.year span::after { width: 15px; height: 14px; top: calc(50% - 14px / 2 - 1px); right: 7px; } }

.pageTop { width: 10.67vw; height: 10.67vw; background: rgba(255, 255, 255, 0.8); margin: 0 1px 1px auto; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: center; align-items: center; position: absolute; bottom: 0; right: 0; z-index: 10; transition: bottom 0.3s ease; cursor: pointer; }
.pageTop::before { content: ""; width: 2.13vw; height: 2.13vw; display: block; margin-top: 1.6vw; margin-left: 0.27vw; border-top: 0.4vw solid #333; border-right: 0.4vw solid #333; transform: rotate(-45deg); }
.pageTop.onFixed { position: fixed; bottom: 20px; }
@media (min-width: 1025px) { .pageTop { width: 64px; height: 64px; }
  .pageTop::before { width: 10px; height: 10px; margin-top: 8px; margin-left: 0; border-top: 2px solid #333; border-right: 2px solid #333; } }
@media (max-width: 1024px) and (min-width: 768px) { .pageTop { width: 64px; height: 64px; }
  .pageTop::before { width: 10px; height: 10px; margin-top: 8px; margin-left: 0; border-top: 2px solid #333; border-right: 2px solid #333; } }

footer { color: #fff; background-color: #41955b; }
footer dl { padding: 6.4% 8% 1.87%; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; font-size: 0.83em; font-weight: 400; line-height: 1.6; letter-spacing: 0.1em; }
footer dt { width: 24.5%; margin-bottom: 1.34em; padding: 3px 0; text-align: center; border-right: 1px solid #fff; }
footer dd { width: calc(100% - 24.5%); margin-bottom: 1.34em; padding: 3px 0 3px 1.4em; }
footer .sns_link { padding: 1.6vw 0; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: center; background-color: #19863b; align-items: center; }
footer .sns_link li { margin-right: 4%; }
footer .sns_link li:last-child { margin-right: 0; }
footer .sns_link li a { width: 5.34vw; height: 5.34vw; display: block; }
footer .sns_link li.facebook a { background: url(../img/facebook.svg) no-repeat center center; background-size: 100% 100%; }
footer .sns_link li.twitter a { background: url(../img/logo_x.svg) no-repeat center center; background-size: 100% 100%; width: 3.2vw; }
@media (min-width: 1025px) { footer dl { padding: 32px 0 16px; font-size: 0.87em; line-height: 1.7; }
  footer dt { width: 10%; margin-bottom: 22px; padding: 0; }
  footer dd { width: 90%; margin-bottom: 22px; padding: 0 0 0 1.23em; }
  footer .sns_link { padding: 20px 0; }
  footer .sns_link li { margin-right: 2.54%; }
  footer .sns_link li a { width: 40px; height: 40px; } }

@media print { @page { margin: 0; }
  body { zoom: .6; font-size: 15px; line-height: 1.6; }
  .pc { display: block !important; }
  .tb { display: none !important; }
  .sp { display: none !important; }
  .wrap { width: 88.235%; margin: 0 auto; }
  div[class^="title_wrap"] { margin-bottom: 0; }
  div[class^="title_wrap"] h2, div[class^="title_wrap"] h3 { font-size: 3.2em; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; align-items: center; }
  div[class^="title_wrap"] h2 span, div[class^="title_wrap"] h3 span { display: inline-block; margin: 0 0 0 10px; font-size: 0.417em; }
  div.title_wrap01 { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: space-between; align-items: center; }
  .swiper .swiper-pagination { bottom: 16px; right: 16%; }
  .swiper .swiper-pagination .swiper-pagination-bullet { width: 12px; height: 12px; margin: 0 10px; opacity: 0.3; }
  header { position: relative; }
  header .navSPbtn { display: none; }
  header .scrollWrap { width: auto; padding: 0 0; background: unset; }
  header .scrollWrap p.logo { width: 72px; position: absolute; top: 4px; left: 5.88%; }
  header nav { display: block; width: 100%; height: auto; padding: 26px 5.88% 17px 0; background-color: unset; }
  header nav.scroll { background: rgba(255, 255, 255, 0.9); }
  header nav.scroll li a { color: #555; }
  header nav.scroll li a:hover { color: #19863b; }
  header nav.scroll li.on a { color: #19863b; }
  header nav ul { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: flex-end; }
  header nav li { margin-left: 3.96%; border-bottom: none; }
  header nav li.on { border-bottom: 2px solid #00e046; }
  header nav li.on a { color: #fff; }
  header nav li.sns { display: none; }
  header nav a { padding: 0 0 8px; font-size: 0.94em; line-height: 1; }
  header nav a:hover { color: #00e046; }
  header nav span { position: relative; }
  header nav span::after { content: ""; width: 2.67vw; height: 2.4vw; background: url(../img/icon_target.svg) no-repeat center center; background-size: contain; position: absolute; top: calc(50% - 2.4vw / 2); right: -4.27vw; }
  #top_mv { z-index: 3; }
  #top_mv h1 { width: 20%; max-width: 272px; top: 24px; left: 5.88%; }
  #top_mv .swiper { width: 88.235%; height: auto; margin: 0 0 0 auto; }
  #top_mv .swiper img { width: 100%; height: auto; }
  #top_news { width: 58.82%; position: relative; top: 0; left: 5.88%; z-index: 3; }
  #top_news .information { padding: 3.4% 6% 2.25%; }
  #top_news .information h2 { font-size: 1.2em; }
  #top_news .information p { margin-top: 14px; font-size: 0.94em; line-height: 1.7; }
  #top_news .news_box { padding: 3% 3.5%; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }
  #top_news .news_box h3 { margin-right: 3.6%; padding: 25px 3.3% 25px 0; font-size: 1.07em; text-align: left; -ms-writing-mode: unset; writing-mode: unset; }
  #top_news .news_box ol { width: 82.8%; }
  #top_news .news_box ol li { margin-top: 0.8em; font-size: 1.08em; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; /*
a{
	width: 100%;
	@include flex;
	&:hover p:last-child{ text-decoration: none; }
}
*/ }
  #top_news .news_box ol li:first-child { margin-top: 0; }
  #top_news .news_box ol li p { width: calc(100% - 17.25%); padding-left: 4.2%; line-height: 1.23; font-size: 0.93em; }
  #top_news .news_box ol li p.date { width: 17.25%; margin: 0 0 0 0; padding-left: 0; color: #888; font-weight: 500; line-height: 1.23; letter-spacing: 0.075em; }
  #top_news .news_box ol li a.news_link { margin-left: 3px; padding: 0 0 5px; display: inline-block; }
  #top_news .news_box ol li a.news_link::after { width: 13px; height: 12px; top: calc(50% - 15px / 2); right: -18px; }
  #top_news .news_box ol li a.news_link:hover { border-color: #fff; }
  #deco_wrap { margin-top: 165px; padding: 0 0 0 0; position: relative; }
  #deco_wrap::before, #deco_wrap::after { width: 82.35%; }
  #deco_wrap::before { height: 41.6%; top: -174px; }
  #deco_wrap::after { height: 66%; bottom: 48px; }
  #top_movie { width: 77.65%; margin: -171px auto 0; padding: 86px 0 0; z-index: 2 !important; }
  #top_movie div.title_wrap01 { margin-bottom: 19px; }
  #top_movie ul.movie_list { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; justify-content: space-between; }
  #top_movie li { width: 30.3%; margin: 32px 4.545% 0 0; cursor: pointer; }
  #top_movie li:nth-child(3n) { margin-right: 0; }
  #top_movie .movie_box { width: 100%; padding-top: 56.25%; }
  #top_movie p.movie_title { padding: 20px 7.5% 24px 17.5%; font-size: 1.07em; line-height: 1.5; letter-spacing: 0.075em; }
  #top_movie p.movie_title::before { width: 21px; height: 20px; top: 1.4375em; left: 7.4%; }
  #top_movie p.movie_title span.name { display: inline-block; } }
@media print and (max-width: 1320px) and (min-width: 1240px) { #top_movie span { letter-spacing: 0.05em; }
  #top_movie .title_wrap01 p { letter-spacing: 0.05em; } }
@media print and (max-width: 1239px) and (min-width: 1080px) { #top_movie h2 { letter-spacing: 0.15em; }
  #top_movie span { margin: 0 0 0 5px; font-size: 1.5vw; letter-spacing: 0.05em; }
  #top_movie .title_wrap01 p { letter-spacing: 0.05em; font-size: 1.21vw; } }
@media print and (max-width: 1079px) and (min-width: 1025px) { #top_movie .title_wrap01 { flex-wrap: wrap; }
  #top_movie .title_wrap01 p { margin-top: 30px; } }

@media print { #top_people { width: 81.735%; margin: -64px auto 0; padding: 174px 0% 64px; }
  #top_people .title_wrap02 p { margin-top: 32px; line-height: 1.67; }
  #top_people ul.counter { margin-top: -88px; padding-left: 0.72%; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; flex-direction: row-reverse; justify-content: space-between; align-items: flex-end; }
  #top_people li.p_block { width: 46.4%; margin: 88px 0 0 0; position: relative; }
  #top_people li.p_block:nth-child(odd) { top: -116px; margin: 170px 0 -82px; top: 0; margin: 0 0 0; }
  #top_people li.p_block:nth-child(2) { top: 52px; }
  #top_people li.p_block:nth-child(4) { top: 38px; }
  #top_people li.p_block a { display: block; }
  #top_people .txt_block { margin-top: 16px; align-items: center; }
  #top_people .txt_block .place { width: 15.625%; padding: 29px 0; font-size: 0.93em; line-height: 1; -ms-writing-mode: lr-tb; writing-mode: horizontal-tb; border-top: 2px solid #19863b; border-bottom: 2px solid #19863b; }
  #top_people .txt_block .txt_box { width: calc(100% - (15.625% + 7%)); margin: 0 0 0 7%; }
  #top_people .txt_block .txt_box h3 { line-height: 1.46; }
  #top_people .txt_block .txt_box p { margin-top: 7px; font-size: 0.93em; line-height: 1.46; }
  #people header nav { background: rgba(255, 255, 255, 0.9); }
  #people header nav li.on a { color: #19863b; }
  #people header nav a { color: #555; }
  #people header nav a:hover { color: #19863b; }
  #people section.base_wrap { padding-top: 118px; }
  #people h2 { justify-content: center; }
  #people .title_wrap01 { padding: 0 5.88%; display: block; }
  #people .title_wrap01 p { margin-top: 30px; font-size: 1.07em; }
  #people .headline { width: 88.235%; max-width: 1200px; margin: 45px auto 64px; }
  #people .headline .main_pic { width: 90%; margin-left: auto; display: block; }
  #people .headline .text_box { width: 42.7%; margin: 0 0 0 0; position: absolute; bottom: 0; left: 0; }
  #people .headline .num { width: 107px; top: -40px; right: 4px; }
  #people .headline div.flex { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; align-items: center; padding: 32px 8.4% 32px 8.4%; }
  #people .headline .place { margin-right: 12px; padding: 23px 12.5px; font-size: 15px; border-top: 2px solid #19863b; border-bottom: 2px solid #19863b; }
  #people .headline h1 { font-size: 1.47em; line-height: 1.636; }
  #people .headline .name { padding: 10px 0 11px; line-height: 1.75; font-size: 1.07em; }
  #people section.block_wrap { width: 82.35%; max-width: 1200px; margin: 65px auto 0; margin: 0 auto 65px; break-after: avoid; }
  #people div[class*="block0"] h2 { margin-bottom: 18px; font-size: 1.6em; line-height: 1.5; }
  #people div[class*="block0"] h2 + p.text_only { margin-top: 0; }
  #people div[class*="block0"] .pic_box { margin-top: 0; }
  #people div[class*="block0"] .pic_box p.caption { margin-top: 6px; font-size: 0.86em; line-height: 1.4; }
  #people div[class*="block0"] ul.pic_box { margin-top: 0; }
  #people div[class*="block0"] ul.pic_box li { width: 49.68%; }
  #people div[class*="block0"] p { font-size: 1em; line-height: 2; font-weight: 300; }
  #people div[class*="block0"] + div.block01 { margin-top: 32px; }
  #people div[class*="block0"] + div.block02 { margin-top: 32px; }
  #people div.block01 { flex-wrap: nowrap; justify-content: space-between; }
  #people div.block01 .text_box { width: 53.57%; order: 2; }
  #people div.block01 .pic_box { width: 42.867%; order: 1; }
  #people div.block02 { flex-wrap: nowrap; justify-content: space-between; }
  #people div.block02 .text_box { width: 53.57%; }
  #people div.block02 .pic_box { width: 42.867%; }
  #people div.block03 { flex-wrap: nowrap; justify-content: space-between; margin-top: 32px; }
  #people div.block03 .text_box { width: 39.73%; }
  #people div.block03 .pic_box { width: 57.14%; }
  #people div.block04 { flex-wrap: nowrap; justify-content: space-between; margin-top: 32px; }
  #people div.block04 .text_box { width: 39.73%; order: 2; }
  #people div.block04 .pic_box { width: 57.14%; margin-bottom: 0; order: 1; }
  #people div.block05 { justify-content: space-between; }
  #people div.block05 .text_box { width: 53.57%; order: 1; }
  #people div.block05 .pic_box { width: 42.867%; order: 2; }
  #people div.block05 p.wide { width: 100%; margin-top: 16px; order: 3; }
  #people div.block06 { justify-content: space-between; }
  #people div.block06 .text_box { width: 53.57%; order: 2; }
  #people div.block06 .pic_box { width: 42.867%; order: 1; }
  #people div.block06 p.wide { width: 100%; margin-top: 16px; order: 3; }
  #people p.text_only { margin-top: 39px; line-height: 2; font-weight: 300; }
  #people dl.interview_data { width: 82.35%; margin: 0 auto 0; padding: 35px 3.57% 43px; font-size: 1em; }
  #people dl.interview_data dt.green { width: 7.7%; margin-top: 0; padding: 5px 0 5px 3px; font-size: 0.94em; }
  #people dl.interview_data dd { width: calc(100% - 7.7%); margin-bottom: 1.47em; padding-left: 1.07em; font-size: 1em; }
  #people dl.interview_data dd .bold { margin-top: -4px; font-size: 1.2em; display: block; }
  #people dl.interview_data p { margin-top: 2px; margin-right: 0.8em; line-height: 2; display: inline-block; }
  #people dl.interview_data p span.cgray { font-size: 0.94em; }
  #people .other_articles { margin-top: 80px; padding: 48px 10% 44px; }
  #people .other_articles li { padding: 0 8px 0; }
  #people .other_articles .text_wrap { padding-left: 3.2em; }
  #people .other_articles .num { width: 60px; top: -18px; left: -9px; }
  #people .other_articles .organization { margin: 14px 0 0; font-size: 0.94em; }
  #people .other_articles .industry { font-size: 0.87em; }
  #people .other_articles .swiper-button-next, #people .other_articles .swiper-button-prev { width: 18px; height: 34px; }
  #people .other_articles .swiper-button-next::after, #people .other_articles .swiper-button-prev::after { font-size: 2.34em; }
  #people .other_articles .swiper-button-next { right: 6.618%; }
  #people .other_articles .swiper-button-prev { left: 6.618%; }
  #archive header nav { background: rgba(255, 255, 255, 0.9); }
  #archive header nav li.on a { color: #19863b; }
  #archive header nav a { color: #555; }
  #archive header nav a:hover { color: #19863b; }
  #archive section.base_wrap { padding-top: 118px; }
  #archive .title_wrap01 { padding: 0 6.4%; display: block; }
  #archive .title_wrap01 h2, #archive .title_wrap01 h3 { width: 100%; justify-content: center; }
  #archive .title_wrap01 h2 span, #archive .title_wrap01 h3 span { font-size: 0.5em; display: block; }
  #archive .title_wrap01 p { margin-top: 30px; font-size: 1.07em; }
  #archive ol.flex_wrap { width: 88.235%; max-width: 1200px; margin: 44px auto 0; padding: 0 1.8% 56px; justify-content: flex-start; }
  #archive ol.flex_wrap li { width: 23.68%; margin-bottom: 48px; margin-right: 1.75%; }
  #archive ol.flex_wrap li:nth-child(4n) { margin-right: 0; }
  #archive ol.flex_wrap li img { width: auto; height: 100%; max-height: 350px; }
  #archive ol.flex_wrap li a { transition: opacity 0.3s ease; }
  #archive ol.flex_wrap li a:hover { opacity: 0.7; }
  #archive ol.flex_wrap p.year { margin-top: 0.54vw; font-size: 1.25em; }
  #archive ol.flex_wrap p.year span { padding: 0 28px 3px 5px; }
  #archive ol.flex_wrap p.year span::after { width: 15px; height: 14px; top: calc(50% - 14px / 2 - 1px); right: 7px; }
  .pageTop { display: none; } }



/*********************************************/
