@-webkit-keyframes fadein {
  0% {
    opacity: 0
  }
  to {
    opacity: 1
  }
}
@keyframes fadein {
  0% {
    opacity: 0
  }
  to {
    opacity: 1
  }
}
@-webkit-keyframes fadeinlr {
  0% {
    opacity: 0;
    -webkit-transform: translate(-15px);
    transform: translate(-15px)
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
    transform: translate(0)
  }
}
@keyframes fadeinlr {
  0% {
    opacity: 0;
    -webkit-transform: translate(-15px);
    transform: translate(-15px)
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
    transform: translate(0)
  }
}
@-webkit-keyframes slideinrl {
  0% {
    opacity: 0;
    -webkit-transform: translate(15px, -15px);
    transform: translate(15px, -15px)
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
    transform: translate(0)
  }
}
@keyframes slideinrl {
  0% {
    opacity: 0;
    -webkit-transform: translate(15px, -15px);
    transform: translate(15px, -15px)
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
    transform: translate(0)
  }
}
.page {
  padding: 50px 0 0
}
.page .mv {
  position: relative
}
.page .mv figure {
  -webkit-animation-duration: .5s;
  animation-duration: .5s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-name: fadeinlr;
  animation-name: fadeinlr;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
  opacity: 0;
  width: 100%
}
.page .mv figure img {
  width: 100%
}
.page .mv .title {
  -webkit-animation-delay: .2s;
  animation-delay: .2s;
  -webkit-animation-duration: .5s;
  animation-duration: .5s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-name: slideinrl;
  animation-name: slideinrl;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
  opacity: 0;
  padding: 30px 20px 20px
}
.page .mv .title div {
  margin: 0;
  position: relative;
  z-index: 1
}
.page .mv .title div p {
  font-size: .9rem
}
.page .mv .title div h1 {
  font-size: 1.5rem;
  line-height: 1.4;
  padding: 5px 0 0
}
.page .mv .title div h1 span {
  font-size: 1.3rem;
  font-weight: 300
}
.page .mv .title div h1 .r {
  font-size: .8rem;
  font-style: normal;
  padding: 0 0 0 3px;
  vertical-align: super
}
.page .main figure, .page .main figure img {
  width: 100%
}
.page .main .title {
  padding: 30px 20px 10px
}
.page .main .title p {
  font-size: .9rem
}
.page .main .title h1 {
  font-size: 1.5rem;
  line-height: 1.6;
  padding: 5px 0 0
}
.pickup {
  padding: 50px 0 0
}
.pickup .mv {
  position: relative
}
.pickup .mv figure {
  margin: 0 auto;
  max-width: 1000px
}
.pickup .mv figure img {
  width: 100%
}
.pickup .mv figure figcaption {
  font-size: .7rem;
  padding: 10px 20px 0;
  text-align: right
}
.pickup .mv .title {
  margin: 0 auto;
  max-width: 1000px;
  padding: 20px 20px 30px
}
.pickup .mv .title h1 {
  font-size: 1.4rem
}
.pickup .mv .title .sub {
  font-size: .8rem;
  padding: 0 0 15px
}
.pickup .mv .title .text {
  font-size: .9rem;
  padding: 10px 0 0
}
.pickup .mv:after {
  background-color: #f0f0f0;
  bottom: 0;
  content: "";
  display: block;
  height: 100vh;
  position: absolute;
  width: 100%;
  z-index: -1
}
.pickup-content .gray {
  background-color: #f9fafb
}
.pickup-content .wrap {
  padding: 50px 20px
}
.pickup-content h2 {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: 1.4rem
}
.pickup-content h2:after {
  background-color: #861c3c;
  content: "";
  display: block;
  height: 2px;
  margin: 10px 0 0;
  width: 50px
}
.pickup-content h3 {
  color: #0070c0;
  font-size: 1.2rem;
  padding: 35px 0 0
}
.pickup-content .sub {
  font-size: 1rem;
  padding: 15px 0 0
}
.pickup-content .cont {
  padding: 40px 0 0
}
.pickup-content .cont .block {
  padding: 0 0 30px
}
.pickup-content .cont h4 {
  font-size: 1.2rem;
  padding: 0 0 15px
}
.pickup-content .cont p {
  font-size: .9rem;
  padding: 0 0 20px
}
.pickup-content .cont figure figcaption {
  font-size: .9rem;
  padding: 5px 0 0
}
.pickup-content .cont img {
  width: 100%
}
.pickup-content .img-list {
  padding: 40px 0 0
}
.pickup-content .img-list li {
  padding: 20px 0
}
.pickup-content .img-list-text {
  font-size: .9rem;
  padding: 10px 0 0
}
.pickup-content .more-text {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1rem;
  font-weight: 600;
  justify-content: center;
  padding: 40px 0 0;
  text-align: center
}
.pickup-content .more-text:after, .pickup-content .more-text:before {
  background-color: #000;
  content: "";
  display: block;
  height: 1px;
  width: 45px
}
.pickup-content .more-text:before {
  -webkit-transform: rotate(60deg);
  transform: rotate(60deg)
}
.pickup-content .more-text:after {
  -webkit-transform: rotate(-60deg);
  transform: rotate(-60deg)
}
.pickup-content .more-btn {
  padding: 20px 0 0
}
.pickup-content .more-btn p {
  margin: 0 auto;
  padding: 15px 0;
  width: 70%
}
.pickup-content .more-btn a {
  background-color: #fff;
  border: 1px solid #2f738d;
  color: #2f738d;
  display: block;
  font-size: 1rem;
  padding: 10px 0;
  text-align: center
}
.pickup-content .text {
  font-size: 1rem;
  line-height: 2.2;
  padding: 30px 0 0
}
.pickup-content .text-01 {
  font-size: 1rem;
  line-height: 2.2;
  padding: 30px 0
}
.pickup-content .movie {
  padding: 60px 0 0
}
.pickup-content .movie div {
  padding-top: 56.25%;
  position: relative;
  width: 100%
}
.pickup-content .movie div iframe {
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%
}
.pickup-content .list {
  border-bottom: 1px dashed #ccc;
  padding: 70px 0 0
}
.pickup-content .list-title {
  background-color: #999;
  border-radius: 10px;
  color: #fff;
  display: block;
  font-size: .9rem;
  line-height: 1;
  margin: 0 auto;
  padding: 10px 20px;
  text-align: center;
  white-space: nowrap;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content
}
.pickup-content .list ul {
  padding: 80px 0 0
}
.pickup-content .list ul li {
  font-size: 1rem;
  padding: 0 0 100px;
  text-align: center
}
.pickup-content .list ul li .title {
  font-size: 1rem;
  font-weight: 700;
  padding: 0 0 25px
}
.pickup-content .list ul li img {
  width: 70%
}
.pickup-content .list ul li .name {
  font-size: .9rem;
  padding: 30px 0 0
}
.column {
  padding: 50px 0 0
}
.column .mv {
  position: relative
}
.column .mv figure {
  margin: 0 auto;
  max-width: 1000px
}
.column .mv figure figcaption {
  font-size: .7rem;
  padding: 10px 20px 0
}
.column .mv .title {
  margin: 0 auto;
  max-width: 1000px;
  padding: 20px 20px 30px
}
.column .mv .title h1 {
  font-size: 1.2rem
}
.column .mv .title .sub {
  font-size: 1rem;
  padding: 15px 0 0
}
.column .mv .title .date {
  font-family: Montserrat, sans-serif;
  font-size: .9rem;
  padding: 20px 0 0
}
.column .mv:after {
  background-color: #f0f0f0;
  bottom: 0;
  content: "";
  display: block;
  height: 100vh;
  position: absolute;
  width: 100%;
  z-index: -1
}
.column .content {
  margin: 0 auto;
  max-width: 1160px
}
.content {
  padding: 20px 20px 0
}
.content div {
  padding: 0 0 50px
}
.content h2 {
  font-size: 1.1rem;
  line-height: 2
}
.content h3 {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  font-size: 1.2rem
}
.content h3:before {
  background-color: #861c3c;
  content: "";
  display: block;
  height: 2px;
  margin: 0 0 30px;
  width: 50px
}
.content h3 em {
  font-size: .9rem;
  font-style: normal
}
.content h3 a {
  color: #000;
  text-decoration: underline
}
.content h4 {
  font-size: 1.4rem;
  padding: 0 0 25px
}
.content .subtitle {
  font-size: 1.2rem;
  line-height: 2.2;
  padding: 5px 0 20px
}
.content .head {
  font-size: 1.2rem;
  line-height: 2.2;
  padding: 30px 0 10px
}
.content .head.blue {
  color: #0070c0
}
.content .title {
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 1.7;
  padding: 70px 0 15px;
  position: relative
}
.content .title:before {
  background-color: #861c3c;
  width: 50px;
  z-index: 2
}
.content .title:after, .content .title:before {
  bottom: 0;
  content: "";
  display: block;
  height: 2px;
  left: 0;
  position: absolute
}
.content .title:after {
  background-color: #ccc;
  width: 100%;
  z-index: 1
}
.content .flex {
  padding: 30px 0 0
}
.content .flex figure {
  padding: 0 0 30px
}
.content .flex figure figcaption {
  font-size: 16px;
  padding: 5px 0 0;
  text-align: center
}
.content .prof {
  line-height: 2.2;
  padding: 50px 0 0
}
.content .prof em {
  color: #999;
  display: block;
  font-size: .9rem;
  font-style: normal;
  padding: 0 0 10px
}
.content .prof b, .content .prof span {
  display: block;
  font-size: 1rem;
  font-weight: 500
}
.content .prof span {
  font-weight: 300;
  padding: 10px 0 40px
}
.content .prof small {
  display: block;
  font-size: .8rem;
  padding: 20px 0 0
}
.content .text {
  font-size: 1rem;
  line-height: 2.2;
  padding: 30px 0 0
}
.content .text em {
  color: #999;
  font-size: .9rem;
  font-style: normal
}
.content .text a {
  color: #000;
  text-decoration: underline
}
.content .text .red {
  color: #861c3c
}
.content .image {
  padding: 20px 0
}
.content .image img {
  width: 100%
}
.content .image figcaption {
  font-size: .9rem;
  padding: 10px 0 0
}
.content .movie {
  padding: 40px 0
}
.content .movie div {
  padding-top: 56.25%;
  position: relative;
  width: 100%
}
.content .movie div iframe {
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%
}
.content .list-no li {
  font-size: 1rem;
  padding: 0 0 15px
}
.content .list-disc {
  padding: 0 0 0 20px
}
.content .list-disc li {
  font-size: 1.2rem;
  list-style-type: disc;
  padding: 0 0 15px
}
.content .list-half li {
  padding: 0 0 30px
}
.content .list-half li img {
  width: 100%
}
.content .list-half li figcaption {
  padding: 10px 0 0
}
.pagenation {
  border-bottom: 1px solid #ccc;
  border-top: 1px solid #ccc
}
.pagenation p {
  font-size: 1rem
}
.pagenation p:not(:first-child) {
  border-top: 1px solid #ccc
}
.pagenation p a {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  padding: 20px
}
.pagenation p.prev a:before {
  -webkit-box-flex: 0;
  background-image: url(../images/arrow_left.svg);
  -ms-flex: none;
  flex: none;
  margin: 0 20px 0 0
}
.pagenation p.next a:after, .pagenation p.prev a:before {
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 100% auto;
  content: "";
  display: block;
  height: 40px;
  width: 30px
}
.pagenation p.next a:after {
  background-image: url(../images/arrow_right.svg);
  margin: 0 0 0 30px
}
.back {
  padding: 40px 0
}
.back a {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: .9rem;
  height: 40px;
  justify-content: center
}
.back a:before {
  background-image: url(../images/arrow_left.svg);
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 100% auto;
  content: "";
  display: block;
  height: 100%;
  margin: 0 10px 0 0;
  width: 20px
}
@media only screen and (min-width:481px) {
  .page {
    padding: 80px 0 0
  }
  .page .mv figure {
    width: 70%
  }
  .page .mv .title {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    bottom: -10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    padding: 15% 0 0;
    position: absolute;
    right: 0;
    width: 35%
  }
  .page .mv .title:before {
    background-color: #fff;
    bottom: 0;
    -webkit-clip-path: polygon(100% 0, 0 100%, 100% 100%);
    clip-path: polygon(100% 0, 0 100%, 100% 100%);
    content: "";
    display: block;
    height: 110%;
    left: -40%;
    position: absolute;
    width: 70%
  }
  .page .mv .title div {
    max-width: 1200px;
    padding: 0 30px 0 10px
  }
  .page .mv .title div p {
    font-size: 1.1rem
  }
  .page .mv .title div h1 {
    font-size: 2.2rem
  }
  .page .mv .title div h1 span {
    font-size: 1.6rem
  }
  .page .mv .title div h1 .r {
    font-size: 1rem
  }
  .page .main {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  .page .main figure {
    width: 60%
  }
  .page .main .title {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: 0 30px
  }
  .page .main .title p {
    font-size: 1.1rem
  }
  .page .main .title h1 {
    font-size: 2.2rem
  }
  .pickup {
    padding: 80px 0 0
  }
  .pickup .mv figure figcaption {
    font-size: .8rem;
    padding: 10px 0 0
  }
  .pickup .mv .title {
    padding: 40px 0 50px
  }
  .pickup .mv .title h1 {
    font-size: 1.8rem
  }
  .pickup .mv .title .sub, .pickup .mv .title .text {
    font-size: 1rem;
    line-height: 2
  }
  .pickup .mv:after {
    height: 60vh
  }
  .pickup-content .wrap {
    margin: 0 auto;
    max-width: 1160px;
    padding: 90px 80px 0
  }
  .pickup-content h2 {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    font-size: 1.5rem;
    justify-content: flex-end
  }
  .pickup-content h2:after {
    margin: 0 20px 0 0
  }
  .pickup-content .sub {
    font-size: .9rem
  }
  .pickup-content .cont {
    padding: 100px 0 0
  }
  .pickup-content .cont.w5050 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  .pickup-content .cont.w5050 .block:first-child, .pickup-content .cont.w5050 .block:nth-child(2) {
    width: 50%
  }
  .pickup-content .cont.w6040 {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between
  }
  .pickup-content .cont.w6040 .block:first-child {
    width: 55%
  }
  .pickup-content .cont.w6040 .block:nth-child(2) {
    width: 40%
  }
  .pickup-content .cont.w6040 ul {
	font-size: .9rem;
	margin-bottom: 20px;
  }
  .pickup-content .cont.w4060 {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between
  }
  .pickup-content .cont.w4060 .block:first-child {
    width: 35%
  }
  .pickup-content .cont.w4060 .block:nth-child(2) {
    width: 60%
  }
  .pickup-content .cont.w7030 {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between
  }
  .pickup-content .cont.w7030 .block:first-child {
    width: 60%
  }
  .pickup-content .cont.w7030 .block:nth-child(2) {
    width: 38%
  }
  .pickup-content .cont h4 {
    font-size: 1.4rem
  }
  .pickup-content .cont p {
    line-height: 2.1
  }
  .pickup-content .img-list {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between
  }
  .pickup-content .img-list:after {
    content: "";
    display: block;
    width: 32%
  }
  .pickup-content .img-list li {
    width: 32%
  }
  .pickup-content .img-list-text {
    font-size: .8rem
  }
  .pickup-content .more-text {
    font-size: 1.2rem;
    padding: 60px 0 0
  }
  .pickup-content .more-btn {
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    padding: 30px 0 80px
  }
  .pickup-content .more-btn p {
    margin: 0;
    padding: 10px 20px;
    width: 250px
  }
  .pickup-content .text {
    font-size: 1.2rem
  }
  .pickup-content .text-01 {
    font-size: 1.2rem;
    padding: 80px 0 0
  }
  .pickup-content .movie {
    padding: 80px 0 50px
  }
  .pickup-content .list {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0
  }
  .pickup-content .list-title {
    font-size: .9rem;
    margin: 0;
    width: 15%
  }
  .pickup-content .list ul {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center;
    padding: 100px 0 0;
    width: 85%
  }
  .pickup-content .list ul li {
    font-size: 1.2rem;
    width: 33.3%
  }
  .pickup-content .list ul li.w100 {
    width: 100%
  }
  .pickup-content .list ul li.w100 img {
    width: 20%
  }
  .pickup-content .list ul li.w120 {
    width: 100%
  }
  .pickup-content .list ul li.w120 img {
    width: 30%
  }
  .pickup-content .list ul li .title {
    padding: 0 0 35px
  }
  .pickup-content .list ul li .name {
    font-size: 1rem
  }
  .column {
    padding: 80px 0 0
  }
  .column .mv figure figcaption {
    font-size: .8rem;
    padding: 10px 0 0
  }
  .column .mv .title {
    padding: 20px 0 30px
  }
  .column .mv .title h1 {
    font-size: 1.8rem
  }
  .column .mv .title .sub {
    font-size: 1.1rem
  }
  .column .mv .title .date {
    font-size: 1rem
  }
  .column .mv:after {
    height: 60vh
  }
  .content {
    padding: 90px 80px 0
  }
  .content div {
    margin: 0 auto;
    max-width: 1200px;
    padding: 0 0 100px
  }
  .content h2 {
    font-size: 1.6rem;
    line-height: 2.2
  }
  .content h3 {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: row;
    flex-direction: row;
    font-size: 1.5rem
  }
  .content h3:before {
    margin: 0 20px 0 0
  }
  .content .head {
    padding: 50px 0 10px
  }
  .content .title {
    font-size: 1.3rem
  }
  .content .title:before {
    width: 100px
  }
  .content .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 30px 0 50px
  }
  .content .flex figure {
    padding: 0 10px
  }
  .content .prof b {
    font-size: 1.2rem
  }
  .content .prof span {
    font-size: .9rem;
    padding: 10px 0 20px
  }
  .content .prof small {
    padding: 20px 0 0
  }
  .content .text {
    font-size: 1.2rem
  }
  .content .image, .content .movie {
    padding: 50px 0
  }
  .content .list-no li {
    font-size: 1.2rem
  }
  .content .list-half {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between
  }
  .content .list-half li {
    padding: 0 0 50px;
    width: 49%
  }
  .pagenation, .pagenation p {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  .pagenation p {
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-flex: 1;
    align-items: center;
    -ms-flex: 1;
    flex: 1;
    justify-content: center
  }
  .pagenation p:not(:first-child) {
    border-left: 1px solid #ccc;
    border-top: none
  }
  .pagenation p a {
    padding: 50px
  }
  .pagenation p.prev a:before {
    margin: 0 30px 0 0
  }
  .back {
    padding: 80px 0
  }
  .back a {
    font-size: .9rem
  }
  .back a:before {
    width: 25px
  }
}
/*# sourceMappingURL=maps/page.css.map */