html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  list-style: none;
}
body {
  line-height: 1;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
nav ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}
a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}
del {
  text-decoration: line-through;
}
abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}
input,
select {
  vertical-align: middle;
  outline-offset: 0;
}
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;0,800;1,300;1,400;1,600;1,700;1,800&display=swap");
*,
*::before,
*::after {
  box-sizing: inherit;
}
html {
  font-size: 62.5%;
  box-sizing: border-box;
  -ms-overflow-style: scrollbar;
  overflow-wrap: break-word;
}
@media (max-width: 768px) {
  html {
    font-size: 2.41545894vw;
  }
}
body {
  font-family: 'Open Sans', Helvetica, Arial, sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 400;
  background: #000;
  color: #fff;
}
@media (max-width: 768px) {
  body {
    font-size: 1.2rem;
  }
}
a {
  color: #2e2725;
  text-decoration: none;
  transition-duration: 0.2s;
}
a:hover {
  text-decoration: none;
  opacity: 0.75;
}
a:focus {
  outline: none;
  text-decoration: none;
}
ul,
ol {
  margin: 0;
  padding: 0;
}
ul li,
ol li {
  list-style: none;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
}
p {
  padding: 0;
}
p:last-child {
  margin-bottom: 0px;
}
p +sp {
  margin: 0 0 vw(30) 0;
}
figure {
  margin: 0;
  padding: 0;
  line-height: 0;
}
input[type="submit"] {
  border: none;
  transition-duration: 0.2s;
}
table {
  border-spacing: inherit;
  border-collapse: collapse;
}
dl,
dt,
dd {
  margin: 0;
  padding: 0;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}
.js-view {
  opacity: 0;
  transition: all 0.8s;
}
.js-view.fadein {
  opacity: 1;
}
@-moz-keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-50px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-50px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-o-keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-50px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-50px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.c-header {
  max-width: 120rem;
  margin-right: 8rem;
  background: #fff;
  border-radius: 0 0 0.5rem 0;
}
.c-header__inner {
  padding: 1.2rem 4rem 1.2rem 3.2rem;
  display: flex;
  justify-content: space-between;
}
.c-header-logo {
  width: 14.3rem;
}
.c-header-logo a {
  display: block;
}
.c-header-logo img {
  display: block;
}
.c-gnav__menu {
  display: flex;
  justify-content: flex-end;
  height: 100%;
  align-items: center;
}
.c-gnav__item {
  margin-left: 4.5rem;
}
.c-gnav__link {
  font-size: 1.6rem;
  line-height: 1.3125;
  font-weight: 600;
  padding-left: 1.6rem;
  display: block;
  position: relative;
  color: #333;
}
.c-gnav__link::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  content: "";
  width: 0.7rem;
  height: 1.1rem;
  background: url("../images/common/arrow_gray.svg") no-repeat center center;
  background-size: 100% 100%;
  transition: 0.3s all ease;
}
.is-current .c-gnav__link::before {
  background-image: url("../images/common/arrow_red.svg");
}
.is-current .c-gnav__link,
.c-gnav__link:hover {
  color: #ff001a;
}
.is-current .c-gnav__link::before,
.c-gnav__link:hover::before {
  background-image: url("../images/common/arrow_red.svg");
}
@media (max-width: 1024px) and (min-width: 769px) {
  .c-header {
    margin-right: 4rem;
  }
}
@media (max-width: 768px) {
  .c-header {
    margin-right: 1rem;
    border-radius: 0 0 1rem 0;
  }
  .c-header__inner {
    padding: 1rem;
  }
  .c-header-logo {
    width: 8.2rem;
    height: 4rem;
    display: flex;
    align-items: center;
  }
  .c-gnav {
    padding-right: 1.2rem;
  }
  .c-gnav__item {
    margin-left: 2rem;
  }
  .c-gnav__link {
    font-size: 1.2rem;
    line-height: 1.33333333;
    padding-left: 1.1rem;
  }
  .c-gnav__link::before {
    width: 0.5rem;
    height: 0.85rem;
  }
}
.c-footer {
  text-align: center;
  padding: 1.5rem 0;
  max-width: 120rem;
  position: relative;
  z-index: 2;
}
.c-footer__copyright {
  color: #fff;
  font-size: 1.2rem;
  line-height: 1.25;
}
.c-sns {
  padding: 3rem 0;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.c-sns__btn {
  margin-right: 3rem;
}
.c-sns__btn a {
  display: block;
  color: #e1f6fc;
  background: #2b9ed7;
  border-radius: 5px;
  font-size: 1.4rem;
  line-height: 1.2143;
  font-weight: bold;
  padding: 0.8rem 1.8rem 0.8rem 0;
  width: 32rem;
  position: relative;
  text-align: center;
}
.c-sns__btn a::after {
  position: absolute;
  content: "";
  z-index: 1;
  width: 0.7rem;
  height: 1.1rem;
  background: url("../images/common/arrow_sns.svg") no-repeat center center;
  background-size: 100% 100%;
  top: 50%;
  right: 1.1rem;
  transform: translateY(-50%);
}
.c-sns__btn a span {
  display: inline-block;
  text-align: left;
}
.c-sns__ttl {
  font-size: 1.2rem;
  line-height: 1.25;
  color: #333;
  font-weight: 400;
  margin-right: 1rem;
}
.c-sns__list {
  display: flex;
}
.c-sns__list li {
  padding: 0 0.4rem;
  width: 4rem;
}
.c-sns__list li a,
.c-sns__list li img {
  display: block;
  width: 100%;
}
@media (max-width: 768px) {
  .c-footer {
    padding: 1.5rem 0;
  }
  .c-sns {
    padding: 3rem 0 2rem 1rem;
    display: block;
    text-align: center;
  }
  .c-sns__btn {
    margin-right: 0;
    margin-bottom: 2rem;
  }
  .c-sns__btn a {
    border-radius: 0.5rem;
    font-size: 1.6rem;
    line-height: 1.3125;
    padding: 0.8rem 2.8rem 1.1rem 0;
    width: 100%;
  }
  .c-sns__btn a::after {
    width: 0.86rem;
    height: 1.3rem;
    right: 1.9rem;
  }
  .c-sns__ttl {
    margin-right: 0;
    margin-bottom: 0.7rem;
  }
  .c-sns__list {
    justify-content: center;
  }
  .c-sns__list li {
    padding: 0 0.6rem;
    width: 4.2rem;
  }
}
.l-content {
  position: relative;
  z-index: 2;
  background: rgba(0,0,0,0.6);
  background: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.6) 100%);
}
.l-main {
  background: #fff;
  max-width: 120rem;
  margin-right: 8rem;
  padding: 3rem 4rem 0 0;
  border-radius: 0 0.5rem 0.5rem 0;
  position: relative;
}
@media (max-width: 1024px) and (min-width: 769px) {
  .l-main {
    margin-right: 4rem;
  }
}
@media (max-width: 768px) {
  .l-main {
    margin-right: 1rem;
    padding: 1rem 1rem 0 0;
    border-radius: 0 1rem 1rem 0;
  }
}
.c-movie__link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.c-movie__link ul li {
  width: 27.6rem;
  padding: 1.6rem 0;
}
.c-movie__link ul li a {
  display: block;
  width: 100%;
  border-radius: 2.8rem;
  border: 1px solid #fff;
  background: rgba(0,0,0,0.5);
  text-align: center;
  padding: 1rem 1.6rem 1rem 0;
  position: relative;
  transition: background 0.3s ease-in-out;
}
.c-movie__link ul li a::after {
  position: absolute;
  content: "";
  z-index: 1;
  top: 50%;
  transform: translateY(-50%);
  right: 2.5rem;
  width: 2.5rem;
  height: 2.5rem;
  background: url("../images/common/ico_play.png") no-repeat center center;
  background-size: 100% 100%;
  transition: background-image 0.3s ease;
}
.c-movie__link ul li a .txt {
  font-style: italic;
  font-size: 2rem;
  display: inline-block;
  line-height: 1.65;
  color: #fff;
  transition: color 0.3s ease-in-out;
}
.c-movie__link ul li a .txt .num {
  font-size: 120%;
  line-height: 1;
  display: inline-block;
  margin-right: 0.8rem;
}
.c-movie__link ul li a:hover {
  opacity: 1;
  background: rgba(255,255,255,0.8);
}
.c-movie__link ul li a:hover::after {
  background-image: url("../images/common/ico_play_on.png");
}
.c-movie__link ul li a:hover .txt {
  color: #000;
}
@media (max-width: 768px) {
  .c-movie__link ul li {
    width: 20.2rem;
    padding: 1.2rem 0;
  }
  .c-movie__link ul li a {
    border-radius: 2rem;
    padding: 0.8rem 1.6rem 0.8rem 0;
  }
  .c-movie__link ul li a::after {
    right: 1.8rem;
    width: 2rem;
    height: 2rem;
  }
  .c-movie__link ul li a .txt {
    font-size: 1.4rem;
    line-height: 1.6;
  }
  .c-movie__link ul li a .txt .num {
    font-size: 121.428571%;
    margin-right: 0.8rem;
  }
}
.p-top {
  padding-top: calc(100vh - 9rem);
  position: relative;
}
.p-top .c-header {
  margin-bottom: -3rem;
  position: relative;
  z-index: 3;
  border-radius: 0 0.5rem 0 0;
}
.p-top .c-header.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: calc(100% - 8rem);
  box-shadow: 0 3px 6px rgba(0,0,0,0.16);
  border-radius: 0 0 0.5rem 0;
  animation: fadeInDown 0.5s linear forwards;
}
.p-top .l-main {
  position: relative;
  z-index: 2;
}
.t-kv {
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
}
.t-kv__list {
  height: 100%;
}
.t-kv__figure {
  position: relative;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: right center;
}
.t-kv__figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-width: 100%;
  min-height: 100%;
  opacity: 0;
}
.t-kv__item {
  position: relative;
  height: 100%;
}
.t-kv__item.item-fukushima .t-kv__figure {
  background-image: url("../images/top/kv_img01.jpg");
}
.t-kv__item.item-iwate .t-kv__figure {
  background-image: url("../images/top/kv_img02.jpg");
}
.t-kv__item.item-miyagi .t-kv__figure {
  background-image: url("../images/top/kv_img03.jpg");
}
.t-kv__desc {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding-bottom: 14rem;
  padding-left: 4rem;
  color: #fff;
}
.t-kv__ttl {
  font-weight: 800;
  font-size: 6rem;
  line-height: 1.34;
  margin-bottom: 1.2rem;
}
.t-kv__ttl .sm {
  font-size: 5rem;
  display: block;
  font-weight: 400;
}
.t-kv__copy {
  font-size: 2rem;
  line-height: 1.3;
}
.t-kv .slick-list,
.t-kv .slick-track {
  height: 100%;
}
.slide-controls {
  position: absolute;
  top: -8rem;
  right: 0;
  z-index: 10;
  display: flex;
  flex-direction: row-reverse;
  align-items: flex-end;
  padding-right: 2rem;
}
.slide-controls .slick-arrow {
  color: transparent;
  width: 2rem;
  height: 2rem;
  background: url("../images/top/kv_arrow.svg") no-repeat center center;
  background-size: 100% 100%;
  outline: none;
  border: none;
  cursor: pointer;
  opacity: 0.5;
  margin-left: 0.8rem;
  margin-bottom: 0.4rem;
}
.slide-controls .slick-arrow.slick-prev {
  z-index: 1;
  transform: rotate(180deg);
}
.slide-controls .slick-arrow:hover {
  opacity: 1;
}
.slide-controls .custom-dots {
  color: #fff;
  font-size: 1.9rem;
  transition: all 0.1s ease;
  padding-right: 0.2rem;
}
.slide-controls .custom-dots .dots__item {
  display: inline-block;
  line-height: 1;
}
.slide-controls .custom-dots .dots__number {
  font-size: 3.1rem;
  font-weight: 600;
  display: inline-block;
}
.slide-controls .custom-dots li {
  display: none;
  transition: all 0.3s ease;
}
.slide-controls .custom-dots li.slick-active {
  display: block;
}
.t-panel {
  color: #fff;
}
.t-panel__inner {
  position: relative;
}
.t-panel__map {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  overflow: hidden;
}
.t-panel__map::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #307793;
  background: linear-gradient(90deg, #307793 0%, #183c4a 100%);
  z-index: 1;
}
.t-panel__map img {
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  left: 0;
  width: 128rem;
  max-width: 100%;
  z-index: 2;
}
.t-panel__content {
  padding-left: 33rem;
  padding-bottom: 3.2rem;
  position: relative;
  z-index: 3;
}
.t-panel__movie {
  width: 100%;
}
.t-panel__movie__inner {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
}
.t-panel__movie__inner video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.t-panel__poster {
  position: relative;
}
.t-panel__poster figure img {
  display: block;
  width: 100%;
}
.t-panel__desc {
  padding-right: 2rem;
}
.t-panel__ttl {
  position: relative;
  z-index: 2;
  margin-left: -4.8rem;
  margin-top: -4.1rem;
}
.t-panel__ttl img {
  height: 5.6rem;
}
.t-panel__sttl {
  font-size: 2.2rem;
  line-height: 1.36363636;
  color: #ade8ff;
  margin-top: 0.7rem;
  margin-bottom: 0.3rem;
  font-weight: 600;
}
.t-panel__copy {
  line-height: 1.3;
}
.t-panel__btn {
  margin-top: 2.2rem;
  line-height: 1.14285714;
  padding-bottom: 0.4rem;
  display: inline-block;
  color: inherit;
  min-width: 9.4rem;
  font-weight: 700;
  background: url("../images/top/arrow_white.svg") no-repeat right bottom;
  background-size: 100% auto;
}
.t-panel__unit {
  margin-bottom: 2rem;
}
.t-panel__unit.c-blue .t-panel__ttl,
.t-panel__unit.c-blue .t-panel__sttl {
  color: #ade8ff;
}
.t-panel__unit.c-blue .t-panel__map::before {
  background: #307793;
  background: linear-gradient(90deg, #307793 0%, #183c4a 100%);
}
.t-panel__unit.c-green .t-panel__ttl,
.t-panel__unit.c-green .t-panel__sttl {
  color: #b4ffd7;
}
.t-panel__unit.c-green .t-panel__map::before {
  background: #30935e;
  background: linear-gradient(90deg, #30935e 0%, #184a2f 100%);
}
.t-panel__unit.c-brown .t-panel__ttl,
.t-panel__unit.c-brown .t-panel__sttl {
  color: #e0bfb1;
}
.t-panel__unit.c-brown .t-panel__map::before {
  background: #a0654b;
  background: linear-gradient(90deg, #a0654b 0%, #503326 100%);
}
.t-gallery {
  padding-top: 2rem;
}
.t-gallery__inner {
  display: flex;
  justify-content: space-between;
}
.t-gallery__nav {
  width: 33rem;
  flex-shrink: 0;
  padding: 0 8rem;
}
.t-gallery__ttl {
  font-size: 3rem;
  line-height: 1;
  color: #333;
  font-weight: 600;
}
.t-gallery__filter {
  padding-top: 1.5rem;
}
.t-gallery__btn {
  margin-top: 2.5rem;
  font-size: 1.6rem;
  font-weight: 600;
  min-width: 12.3rem;
  display: block;
  background: url("../images/top/arrow_blue.svg") bottom right no-repeat;
  background-size: 100% auto;
  text-transform: uppercase;
  padding-bottom: 0.5rem;
}
.t-gallery__btn.c-blue {
  color: #307793;
  background-image: url("../images/top/arrow_blue.svg");
}
.t-gallery__btn.c-green {
  color: #30935e;
  background-image: url("../images/top/arrow_green.svg");
}
.t-gallery__btn.c-brown {
  color: #a0654b;
  background-image: url("../images/top/arrow_brown.svg");
}
.t-gallery__photo {
  flex-grow: 1;
  display: flex;
  flex-wrap: wrap;
  margin-right: -1rem;
  font-size: 0;
  line-height: 0;
}
.t-gallery__photo img {
  background: #307793;
  padding: 1px;
  box-shadow: 3px 3px 0 0 #307793;
  display: block;
}
.t-gallery__photo .item {
  width: 33.3333%;
  padding-right: 1rem;
  margin-top: 1rem;
}
.t-gallery__photo .item ul {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 66.625%;
  background: #000;
}
.t-gallery__photo .item ul.c-blue img {
  background: #307793;
  box-shadow: 3px 3px 0 0 #307793;
}
.t-gallery__photo .item ul.c-green img {
  background: #30935e;
  box-shadow: 3px 3px 0 0 #30935e;
}
.t-gallery__photo .item ul.c-brown img {
  background: #a0654b;
  box-shadow: 3px 3px 0 0 #a0654b;
}
.t-gallery__photo .item ul li {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0;
  transition: opacity 1s ease;
}
.t-gallery__photo .item ul li.open {
  opacity: 1;
}
.t-gallery__photo .item ul li img {
  width: 100%;
}
@media (max-width: 1024px) and (min-width: 769px) {
  .p-top .c-header.is-fixed {
    width: calc(100% - 4rem);
  }
  .t-panel__content {
    padding-left: 22rem;
  }
  .t-panel__desc {
    padding-right: 1.5rem;
  }
  .t-panel__ttl {
    margin-left: -3.8rem;
    margin-top: -3.4rem;
  }
  .t-panel__ttl img {
    height: 4.8rem;
  }
  .t-gallery__nav {
    width: 22rem;
    padding: 0 2.5rem;
  }
}
@media (max-width: 768px) {
  .p-top {
    padding-top: calc(100vh - 6rem);
  }
  .p-top .c-header {
    margin-bottom: -1rem;
    border-radius: 0 1rem 0 0;
  }
  .p-top .c-header.is-fixed {
    width: calc(100% - 1rem);
    border-radius: 0 0 1rem 0;
  }
  .t-kv__item.item-fukushima .t-kv__figure {
    background-image: url("../images/top/kv_img01_sp.jpg");
  }
  .t-kv__item.item-iwate .t-kv__figure {
    background-image: url("../images/top/kv_img02_sp.jpg");
  }
  .t-kv__item.item-miyagi .t-kv__figure {
    background-image: url("../images/top/kv_img03_sp.jpg");
  }
  .t-kv__desc {
    padding-bottom: 14rem;
    padding-left: 2rem;
  }
  .t-kv__ttl {
    font-size: 4.1rem;
    margin-bottom: 0.7rem;
    line-height: 1.28;
  }
  .t-kv__ttl .sm {
    font-size: 2.4rem;
  }
  .t-kv__copy {
    font-size: 1.3rem;
  }
  .slide-controls {
    top: -9rem;
    padding-right: 1rem;
  }
  .t-panel__map img {
    bottom: 0;
    transform: translateY(0);
    left: 0;
    width: 100%;
  }
  .t-panel__content {
    padding-left: 0;
    padding-bottom: 3rem;
  }
  .t-panel__movie {
    width: 100%;
  }
  .t-panel__movie__inner {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
  }
  .t-panel__movie__inner video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .t-panel__desc {
    padding-left: 10.6rem;
    padding-right: 1.2rem;
  }
  .t-panel__ttl {
    margin-left: -3.5rem;
    margin-top: -1.7rem;
  }
  .t-panel__ttl img {
    height: 3.55rem;
  }
  .t-panel__sttl {
    font-size: 1.8rem;
    margin-top: 1.1rem;
    margin-bottom: 0.5rem;
  }
  .t-panel__copy {
    line-height: 1.5;
  }
  .t-panel__btn {
    margin-top: 1.2rem;
    line-height: 1.14285714;
    padding-bottom: 0.4rem;
    min-width: 7.6rem;
    background-size: 100% 1rem;
  }
  .t-panel__unit {
    margin-bottom: 1rem;
  }
  .t-gallery {
    padding-top: 1.5rem;
  }
  .t-gallery__nav {
    width: 14.4rem;
    padding: 0 2rem;
  }
  .t-gallery__ttl {
    font-size: 2.4rem;
    padding-top: 0.5rem;
  }
  .t-gallery__filter {
    padding-top: 1.5rem;
  }
  .t-gallery__btn {
    margin-top: 2.5rem;
    font-size: 1.2rem;
    min-width: 9.5rem;
    padding-bottom: 0.5rem;
    background-size: 100% 1rem;
  }
  .t-gallery__photo {
    margin-right: -0.8rem;
  }
  .t-gallery__photo img {
    box-shadow: 2px 2px 0 0 #307793;
  }
  .t-gallery__photo .item {
    width: 50%;
    padding-right: 0.8rem;
    margin-top: 0.8rem;
  }
  .t-gallery__photo .item ul.c-blue img {
    box-shadow: 2px 2px 0 0 #307793;
  }
  .t-gallery__photo .item ul.c-green img {
    box-shadow: 2px 2px 0 0 #30935e;
  }
  .t-gallery__photo .item ul.c-brown img {
    box-shadow: 2px 2px 0 0 #a0654b;
  }
}
@media (min-width: 769px) {
  .p-sub {
    padding-top: calc(100vh - 21rem) !important;
  }
}
.p-sub .c-header {
  position: fixed;
  top: 0;
  left: 0;
  width: calc(100% - 1rem);
  z-index: 100;
  box-shadow: 0 3px 6px rgba(0,0,0,0.16);
}
.p-sub .c-header__inner {
  padding-top: 0;
  padding-bottom: 0;
}
.p-sub .c-header-logo {
  width: 12.7rem;
  height: 6rem;
}
@media (min-width: 769px) {
  .p-sub .c-header-logo {
    display: flex;
    align-items: center;
  }
}
.kv {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 1;
}
.kv__list {
  height: 100%;
}
.kv__item {
  height: 100%;
  position: relative;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: right center;
}
.kv__item.item-fukushima {
  background-image: url("../images/fukushima/kv.jpg");
}
.kv__item.item-iwate {
  background-image: url("../images/iwate/kv.jpg");
}
.kv__item.item-miyagi {
  background-image: url("../images/miyagi/kv.jpg");
}
.kv__figure {
  opacity: 0;
}
.kv__desc {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  max-width: 55.3rem;
  padding-left: 3rem;
  color: #fff;
}
@media (min-width: 769px) {
  .kv__desc {
    padding-bottom: 25.8rem !important;
  }
}
.kv__ttl {
  font-weight: 800;
  font-size: 4.6rem;
  line-height: 1.34;
  margin-bottom: 1.2rem;
}
.kv__ttl .sm {
  font-size: 2.7rem;
  display: block;
  font-weight: 400;
}
.kv__copy {
  font-size: 1.4rem;
  line-height: 1.3;
}
.c-movie {
  padding-left: 5rem;
}
.c-movie__main {
  position: relative;
}
.c-movie__figure img {
  width: 100%;
}
.c-movie__desc {
  padding: 0 0 1.5rem;
}
.c-movie__ttl {
  font-size: 2.2rem;
  font-weight: normal;
  color: #ade8ff;
  line-height: 1.5;
}
.c-movie__ttl h2 {
  font-weight: normal;
}
.c-movie__ttl span {
  font-size: 2.4rem;
  line-height: 1.375;
  font-weight: bold;
  margin-right: 0.4em;
}
.c-movie__copy {
  flex-grow: 1;
  font-size: 1.4rem;
  line-height: 1.31;
  padding-top: 0.4rem;
}
.c-gallery {
  background: #ededed;
  padding: 3rem;
}
.c-gallery__inner {
  display: flex;
}
.c-gallery__content {
  width: 30.7rem;
  flex-shrink: 0;
  padding-left: 2.7rem;
  padding-right: 3rem;
  color: #333;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.c-gallery__ttl {
  font-size: 2.2rem;
  line-height: 1.3333;
  font-weight: normal;
  margin-bottom: 5.8rem;
}
.c-gallery__ttl span {
  font-size: 2.4rem;
  font-weight: bold;
  display: block;
}
.c-gallery__copy {
  font-size: 1.4rem;
  line-height: 1.3;
}
.c-gallery__slider-nav {
  margin-left: -0.3rem;
  width: calc(100% + 1rem);
}
@media (min-width: 769px) {
  .c-gallery__slider-nav .slider-nav .slick-list {
    padding: 0 !important;
  }
}
@media (min-width: 769px) {
  .c-gallery__slider-nav .slider-nav .slick-track {
    display: flex;
    flex-wrap: wrap;
    transform: translate3d(0px, 0px, 0px) !important;
  }
}
.c-gallery__slider-nav .slider-nav__item {
  padding: 0.3rem;
  transition: opacity 0.3s ease;
}
@media (min-width: 769px) {
  .c-gallery__slider-nav .slider-nav__item {
    width: 50% !important;
  }
}
.c-gallery__slider-nav .slider-nav__item img {
  display: block;
  padding: 1px;
  background: transparent;
  transition: background 0.3s ease;
}
.c-gallery__slider-nav .slider-nav__item:hover,
.c-gallery__slider-nav .slider-nav__item.slick-current {
  opacity: 0.3;
}
.c-gallery__slider-nav .slider-nav__item:hover img,
.c-gallery__slider-nav .slider-nav__item.slick-current img {
  background: #307793;
}
.c-gallery__slider-for {
  flex-grow: 1;
  overflow: hidden;
}
.c-gallery__slider-for img {
  width: 100%;
}
.c-gallery .slick-arrow {
  position: absolute;
  top: 50%;
  left: 0;
  width: 2.7rem;
  height: 7.4rem;
  border: none;
  background: #1c4656;
  z-index: 1;
  border-radius: 0 0.5rem 0.5rem 0;
  outline: none;
  color: transparent;
  padding: 0;
  transform: translateY(-50%);
  cursor: pointer;
  transition: opacity 0.3s ease;
}
.c-gallery .slick-arrow:hover {
  opacity: 0.7;
}
.c-gallery .slick-arrow::after {
  position: absolute;
  content: "";
  z-index: 1;
  background: url("../images/common/arrow_gallery.svg") no-repeat center center;
  background-size: 100% 100%;
  width: 1.3rem;
  height: 1.3rem;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-gallery .slick-arrow.slick-next {
  left: auto;
  right: 0;
  transform: translate(0%, -50%) rotate(-180deg);
}
.p-content {
  color: #333;
  display: flex;
  padding-top: 5.5rem;
  padding-bottom: 6rem;
}
.p-content__anchor-nav {
  width: 33rem;
  flex-shrink: 0;
}
.p-content__anchor-nav ul {
  position: sticky;
  top: 7rem;
  padding-right: 6rem;
}
.p-content__anchor-nav ul li {
  margin-bottom: 2.5rem;
  font-size: 1.6rem;
  line-height: 1.4375;
  padding-left: 5rem;
  position: relative;
}
.p-content__anchor-nav ul li::before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 4rem;
  height: 1px;
  background: transparent;
  content: "";
  z-index: 1;
  transition: background 0.3s ease;
}
.p-content__anchor-nav ul li a {
  color: inherit;
}
.p-content__anchor-nav ul li.slick-current {
  font-weight: 600;
  color: #307793;
}
.p-content__anchor-nav ul li.slick-current::before {
  background: #307793;
}
.p-content__article {
  flex-grow: 1;
  padding-right: 3rem;
}
.p-content .p-hdg {
  font-size: 2.2rem;
  line-height: 1.36363636;
  color: #307793;
  margin-top: 4rem;
  margin-bottom: 1rem;
}
.p-content .p-layout {
  display: block;
  margin-bottom: 4rem;
}
@media (min-width: 769px) {
  .p-content .p-layout::before,
  .p-content .p-layout::after {
    content: '';
    display: block;
  }
  .p-content .p-layout::after {
    clear: both;
  }
}
.p-content .p-layout__photo {
  float: left;
  width: 40.2rem;
  margin-right: 2rem;
  margin-bottom: 1em;
}
.p-content .p-layout__photo__figure img {
  width: 100%;
}
.p-content .p-layout__photo__ficaption {
  margin-top: 1rem;
  font-size: 1.4rem;
  line-height: 1.39285714;
}
.p-content .p-layout__photo__maintext {
  font-weight: 600;
}
.p-content .p-layout__photo__subtext + .p-layout__photo__maintext {
  margin-top: 1em;
}
.p-content .p-layout__description {
  font-size: 1.6rem;
  line-height: 1.65416667;
}
.p-content .p-layout__description b {
  font-weight: 600;
}
.p-content .p-layout__description i {
  color: #307793;
}
.p-content .p-layout.layout-photographer {
  padding-bottom: 1em;
  border-bottom: 1px solid #bebebe;
}
.p-content .p-layout.layout-photographer .p-layout__photo {
  width: 23rem;
  margin-bottom: 0;
}
.p-content .p-layout.layout-photographer .p-layout__description {
  font-weight: 600;
  color: #307793;
  font-style: italic;
}
.p-content .p-layout.layout-full .p-layout__photo {
  width: calc(100% + 7rem);
  margin-right: -7rem;
}
.p-content .p-layout.layout-right .p-layout__photo {
  float: right;
  margin-right: 0;
  margin-left: 2rem;
}
.p-content .p-layout-text {
  font-size: 1.6rem;
  line-height: 1.625;
  font-style: italic;
  font-weight: 600;
  color: #307793;
  position: relative;
  padding-top: 2rem;
  margin-top: 4rem;
  margin-bottom: 4rem;
}
.p-content .p-layout-text::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 5rem;
  height: 1px;
  background: #307793;
  content: "";
  z-index: 1;
}
.p-fukushima .c-movie__ttl {
  color: #307793;
}
.p-fukushima .p-content .p-layout.layout-photographer .p-layout__description,
.p-fukushima .p-content .p-hdg,
.p-fukushima .p-content .p-layout-text,
.p-fukushima .p-content__anchor-nav ul li.slick-current {
  color: #307793;
}
.p-fukushima .p-content .p-layout-text::after,
.p-fukushima .p-content__anchor-nav ul li.slick-current::before {
  background: #307793;
}
.p-fukushima .c-gallery__ttl {
  color: #307793;
}
.p-fukushima .c-gallery .slick-arrow {
  background: #307793;
}
.p-fukushima .c-gallery .slick-arrow::after {
  background-image: url("../images/common/arrow_gallery1.svg");
}
.p-fukushima .c-gallery__slider-nav .slider-nav__item:hover img,
.p-fukushima .c-gallery__slider-nav .slider-nav__item.slick-current img {
  background: #307793;
}
.p-iwate .c-movie__ttl {
  color: #30935e;
}
.p-iwate .p-content .p-layout.layout-photographer .p-layout__description,
.p-iwate .p-content .p-hdg,
.p-iwate .p-content .p-layout-text,
.p-iwate .p-content__anchor-nav ul li.slick-current {
  color: #30935e;
}
.p-iwate .p-content .p-layout-text::after,
.p-iwate .p-content__anchor-nav ul li.slick-current::before {
  background: #30935e;
}
.p-iwate .c-gallery__ttl {
  color: #30935e;
}
.p-iwate .c-gallery .slick-arrow {
  background: #30935e;
}
.p-iwate .c-gallery .slick-arrow::after {
  background-image: url("../images/common/arrow_gallery2.svg");
}
.p-iwate .c-gallery__slider-nav .slider-nav__item:hover img,
.p-iwate .c-gallery__slider-nav .slider-nav__item.slick-current img {
  background: #30935e;
}
.p-miyagi .c-movie__ttl {
  color: #a0654b;
}
.p-miyagi .p-content .p-layout.layout-photographer .p-layout__description,
.p-miyagi .p-content .p-hdg,
.p-miyagi .p-content .p-layout-text,
.p-miyagi .p-content__anchor-nav ul li.slick-current {
  color: #a0654b;
}
.p-miyagi .p-content .p-layout-text::after,
.p-miyagi .p-content__anchor-nav ul li.slick-current::before {
  background: #a0654b;
}
.p-miyagi .c-gallery__ttl {
  color: #a0654b;
}
.p-miyagi .c-gallery .slick-arrow {
  background: #a0654b;
}
.p-miyagi .c-gallery .slick-arrow::after {
  background-image: url("../images/common/arrow_gallery3.svg");
}
.p-miyagi .c-gallery__slider-nav .slider-nav__item:hover img,
.p-miyagi .c-gallery__slider-nav .slider-nav__item.slick-current img {
  background: #a0654b;
}
@media (max-width: 768px) {
  .p-sub {
    padding-top: calc(100vh - 36rem);
  }
  .p-sub .c-header__inner {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
  .p-sub .c-header-logo {
    width: 8.2rem;
    height: 4rem;
  }
  .kv__item.item-fukushima {
    background-image: url("../images/fukushima/kv_sp.jpg");
  }
  .kv__item.item-iwate {
    background-image: url("../images/iwate/kv_sp.jpg");
  }
  .kv__item.item-miyagi {
    background-image: url("../images/miyagi/kv_sp.jpg");
  }
  .kv__desc {
    max-width: 100%;
    padding: 0 4rem 38rem 2rem;
  }
  .kv__ttl {
    font-size: 3.1rem;
    margin-bottom: 0.6rem;
  }
  .kv__ttl .sm {
    font-size: 1.8rem;
  }
  .kv__copy {
    font-size: 1.4rem;
    line-height: 1.4;
  }
  .c-movie {
    padding-left: 2rem;
    padding-right: 1rem;
  }
  .c-movie__desc {
    padding: 0.2rem 0 1rem 0;
  }
  .c-gallery {
    padding: 3rem 0;
    margin-right: -1rem;
  }
  .c-gallery__inner {
    display: block;
    padding-bottom: 7.4rem;
    position: relative;
  }
  .c-gallery__content {
    width: 100%;
    padding: 0;
  }
  .c-gallery__desc {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .c-gallery__ttl {
    padding-top: 0;
    margin-bottom: 3rem;
  }
  .c-gallery__ttl span {
    display: inline-block;
    padding-right: 0.3em;
  }
  .c-gallery__slider-nav {
    margin-left: 0;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
  }
  .c-gallery__slider-nav .slider-nav__item {
    padding: 0 0.4rem;
  }
  .c-gallery__slider-for {
    flex-grow: 1;
    overflow: hidden;
  }
  .c-gallery__slider-for img {
    width: 100%;
  }
  .c-gallery .slick-arrow {
    width: 2rem;
    height: 5.4rem;
    border-radius: 0 0.5rem 0.5rem 0;
  }
  .c-gallery .slick-arrow::after {
    width: 1.1rem;
    height: 1.1rem;
  }
  .p-content {
    display: block;
    padding-top: 1.5rem;
    padding-bottom: 1rem;
  }
  .p-content__anchor-nav {
    width: calc(100% + 1rem);
    position: sticky;
    top: 6rem;
    background: #fff;
    padding: 2rem 0 2rem 2rem;
    z-index: 10;
    margin-right: -1rem;
  }
  .p-content__anchor-nav ul {
    position: static;
    top: 0;
    padding-right: 0;
  }
  .p-content__anchor-nav ul li {
    margin-bottom: 0;
    padding-left: 0;
    padding-right: 4rem;
  }
  .p-content__anchor-nav ul li::before {
    content: none;
  }
  .p-content__anchor-nav ul li a {
    display: inline-block;
    border-bottom: 1px solid transparent;
    transition: all 0.3s ease;
  }
  .p-content__anchor-nav ul li.slick-current a {
    border-bottom-color: #307793;
  }
  .p-fukushima .p-content__anchor-nav ul li.slick-current a {
    border-bottom-color: #307793;
  }
  .p-iwate .p-content__anchor-nav ul li.slick-current a {
    border-bottom-color: #30935e;
  }
  .p-miyagi .p-content__anchor-nav ul li.slick-current a {
    border-bottom-color: #a0654b;
  }
  .p-content__anchor-nav .slick-list {
    padding: 0 50px 0 0 !important;
  }
  .p-content__article {
    padding: 0 1rem 0 2rem;
  }
  .p-content .p-layout {
    display: block;
    margin-bottom: 4rem;
  }
  .p-content .p-layout__photo {
    float: none;
    width: 100%;
    margin-right: 0;
    margin-bottom: 2rem;
  }
  .p-content .p-layout__photo__ficaption {
    line-height: 1.35714286;
  }
  .p-content .p-layout.layout-photographer {
    padding-bottom: 2rem;
  }
  .p-content .p-layout.layout-photographer .p-layout__photo {
    width: 100%;
    margin-bottom: 2rem;
  }
  .p-content .p-layout.layout-full .p-layout__photo {
    width: calc(100% + 2rem);
    margin-right: -2rem;
  }
  .p-content .p-layout.layout-right .p-layout__photo {
    float: none;
    margin-right: 0;
    margin-left: 0;
  }
}
@media (max-width: 768px) {
  .u-is-pc {
    display: none !important;
  }
}
@media (min-width: 769px) {
  .u-is-sp {
    display: none !important;
  }
}
