@charset "UTF-8";
/**
 *
 *  コンテンツ共通
 *
 */
/*--------------------------------------------------------------------------
   webfont
---------------------------------------------------------------------------*/
.fontSans {
  font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}

.fontSerif {
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

.fontDinSans {
  font-family: "din-condensed", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
  font-weight: 400;
  line-height: 1;
  white-space: nowrap;
}

.fontDinSansLight {
  font-family: "din-condensed", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
  font-weight: 300;
  line-height: 1;
  white-space: nowrap;
}

/*--------------------------------------------------------------------------
   Container
---------------------------------------------------------------------------*/
#Container {
  width: 100%;
  overflow: hidden;
  background: linear-gradient(90deg, #E40604, #FF5D00);
  background-color: #FE5102;
}
@media screen and (max-width: 960px) {
  #Container {
    width: 100%;
    min-width: 100%;
  }
}

/*--------------------------------------------------------------------------
   Loading
---------------------------------------------------------------------------*/
#Loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  display: none;
}
#Loading .bg1 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 25.1%;
  background-color: #E40604;
}
#Loading .bg2 {
  position: absolute;
  top: 25%;
  left: 0;
  width: 100%;
  height: 25.1%;
  background-color: #E40604;
}
#Loading .bg3 {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 25.1%;
  background-color: #E40604;
}
#Loading .bg4 {
  position: absolute;
  top: 75%;
  left: 0;
  width: 100%;
  height: 25.1%;
  background-color: #E40604;
}
#Loading .box {
  position: absolute;
  width: 207px;
  height: 100px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#Loading .box .circles {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: nowrap;
  width: 50px;
  height: 6px;
  margin: auto;
}
#Loading .box .circles span {
  vertical-align: top;
  display: block;
  width: 5px;
  height: 5px;
  margin-right: 8px;
  border-radius: 50%;
}
@media screen and (max-width: 960px) {
  #Loading .box .circles span {
    width: 4px;
    height: 4px;
  }
}
#Loading .box .circles span:nth-child(1) {
  background-color: #FFFFFF;
}
#Loading .box .circles span:nth-child(2) {
  background-color: #FFFFFF;
}
#Loading .box .circles span:nth-child(3) {
  background-color: #FFFFFF;
  margin-right: 0;
}
#Loading .box .circles .c1 {
  -webkit-animation: cAnimation 1s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0.1s infinite;
  animation: cAnimation 1s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0.1s infinite;
}
#Loading .box .circles .c2 {
  -webkit-animation: cAnimation 1s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0.4s infinite;
  animation: cAnimation 1s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0.4s infinite;
}
#Loading .box .circles .c3 {
  margin-right: 0;
  -webkit-animation: cAnimation 1s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0.7s infinite;
  animation: cAnimation 1s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0.7s infinite;
}
@keyframes cAnimation {
  0% {
    opacity: 1;
  }
  50% {
    opacity: .4;
  }
  100% {
    opacity: 1;
  }
}
/*--------------------------------------------------------------------------
   共通ブロック
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
   Content
---------------------------------------------------------------------------*/
#Content {
  position: relative;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  box-sizing: border-box;
  background-color: #FFFFFF;
}
#Content:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 11.42856vw;
  right: 0;
  border-top: 6.428565vw solid transparent;
  border-right: 6.428565vw solid #E81305;
  border-bottom: 6.428565vw solid #E81305;
  border-left: 6.428565vw solid transparent;
  box-sizing: border-box;
  transform-origin: 100% 100%;
  transform: scaleX(1) scaleY(2.5);
}
@media screen and (max-width: 960px) {
  #Content:after {
    border-top: 11.99999997vw solid transparent;
    border-right: 11.99999997vw solid #E81305;
    border-bottom: 11.99999997vw solid #E81305;
    border-left: 11.99999997vw solid transparent;
    transform: scaleX(0.5) scaleY(1.3);
    bottom: 15.99999996vw;
  }
}
@media screen and (max-width: 960px) {
  #Content {
    width: 100%;
    margin-top: 13.3333333vw;
  }
}

#Contents {
  width: 66.428505vw;
  margin: 7.14285vw auto;
  box-sizing: border-box;
}
@media screen and (max-width: 960px) {
  #Contents {
    width: 78.66666647vw;
    margin: 10.66666664vw auto;
  }
}

/*--------------------------------------------------------------------------
   Common__Mv
---------------------------------------------------------------------------*/
.Common__MvNone {
  position: relative;
}
.Common__MvNone:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border-top: 6.428565vw solid #E81305;
  border-right: 6.428565vw solid transparent;
  border-bottom: 6.428565vw solid transparent;
  border-left: 6.428565vw solid #E81305;
  box-sizing: border-box;
  transform-origin: 0 0;
  transform: scaleX(1) scaleY(2.5);
}
@media screen and (max-width: 960px) {
  .Common__MvNone:before {
    top: 3.99999999vw;
    border-top: 11.99999997vw solid #E81305;
    border-right: 11.99999997vw solid transparent;
    border-bottom: 11.99999997vw solid transparent;
    border-left: 11.99999997vw solid #E81305;
    transform: scaleX(0.5) scaleY(1.3);
  }
}

.Common__Mv {
  position: relative;
}
.Common__Mv:before {
  content: "";
  display: block;
  position: absolute;
  top: 19.99998vw;
  left: 0;
  border-top: 6.428565vw solid #E81305;
  border-right: 6.428565vw solid transparent;
  border-bottom: 6.428565vw solid transparent;
  border-left: 6.428565vw solid #E81305;
  box-sizing: border-box;
  transform-origin: 0 0;
  transform: scaleX(1) scaleY(2.5);
}
@media screen and (max-width: 960px) {
  .Common__Mv:before {
    top: 49.999999875vw;
    border-top: 11.99999997vw solid #E81305;
    border-right: 11.99999997vw solid transparent;
    border-bottom: 11.99999997vw solid transparent;
    border-left: 11.99999997vw solid #E81305;
    transform: scaleX(0.5) scaleY(1.3);
  }
}
.Common__Mv:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  border-top: 6.428565vw solid transparent;
  border-right: 6.428565vw solid rgba(0, 0, 0, 0.6);
  border-bottom: 6.428565vw solid rgba(0, 0, 0, 0.6);
  border-left: 6.428565vw solid transparent;
  box-sizing: border-box;
  transform-origin: 100% 100%;
  z-index: 2;
  transform: scaleX(1.2) scaleY(3.5);
}
@media screen and (max-width: 960px) {
  .Common__Mv:after {
    display: none;
  }
}
.Common__Mv .inner {
  width: 100%;
  position: relative;
  height: 19.99998vw;
  overflow: hidden;
  background-color: #EEEEEE;
}
@media screen and (max-width: 960px) {
  .Common__Mv .inner {
    height: 42.66666656vw;
  }
}
.Common__Mv .inner .pic {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 0;
  right: 0;
  z-index: 1;
  margin: auto;
  transform: translateY(-50%) scale(1);
}
@media screen and (max-width: 960px) {
  .Common__Mv .inner .pic {
    bottom: auto;
    transform: translateY(-50%) scale(1.2);
  }
}
.Common__Mv .inner .pic:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
}
.Common__Mv .inner .ttls {
  position: relative;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  margin: auto;
  z-index: 2;
}
.Common__Mv .inner .ttls .ttl {
  font-size: 6.428565vw;
  color: #FFFFFF;
  line-height: 1.2;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .Common__Mv .inner .ttls .ttl {
    font-size: 11vw;
    line-height: 1;
    margin-bottom: 1.33333333vw;
  }
}
.Common__Mv .inner .ttls .catch {
  font-size: 1.2142845vw;
  color: #FFFFFF;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .Common__Mv .inner .ttls .catch {
    font-size: 3.333333325vw;
  }
}

/*--------------------------------------------------------------------------
   Breadcrumb
---------------------------------------------------------------------------*/
.Common__Breadcrumb {
  position: relative;
  width: 66.428505vw;
  display: flex;
  align-items: center;
  font-size: 0.9285705vw;
  margin: auto;
  padding: 1.42857vw 0;
  box-sizing: border-box;
}
@media screen and (max-width: 960px) {
  .Common__Breadcrumb {
    width: 100%;
    font-size: 2.933333326vw;
    display: block;
    background-color: #EEEEEE;
    box-sizing: border-box;
    padding: 1.33333333vw;
  }
}
.Common__Breadcrumb li {
  display: inline-block;
}
.Common__Breadcrumb a {
  display: inline-block;
}
.Common__Breadcrumb a:after {
  display: inline-block;
  content: "";
  position: relative;
  top: 50%;
  left: 0;
  margin: auto;
  width: 0.3571425vw;
  height: 0.3571425vw;
  border-top: 1px solid #000000;
  border-right: 1px solid #000000;
  transform: translateY(-50%) rotate(45deg);
  margin-left: 0.714285vw;
  margin-right: 0.714285vw;
  box-sizing: border-box;
}
@media screen and (max-width: 960px) {
  .Common__Breadcrumb a:after {
    margin-left: 1.33333333vw;
    margin-right: 1.33333333vw;
    width: 0.666666665vw;
    height: 0.666666665vw;
  }
}
.Common__Breadcrumb a:hover {
  color: #E81305;
  transition: all 0.3s cubic-bezier(0.215, 0.610, 0.355, 1.000);
}

/*--------------------------------------------------------------------------
   Recommend
---------------------------------------------------------------------------*/
.Common__Recommend {
  position: relative;
  padding: 2.142855vw;
  padding-bottom: 0;
  box-sizing: border-box;
}
@media screen and (max-width: 960px) {
  .Common__Recommend {
    padding: 7.333333315vw 0;
    padding-bottom: 0;
    width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
  }
}
.Common__Recommend:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #EEEEEE;
  width: 100%;
  height: 25.71426vw;
  z-index: 1;
}
@media screen and (max-width: 960px) {
  .Common__Recommend:before {
    height: 53.3333332vw;
  }
}
.Common__Recommend .ttl {
  position: relative;
  margin: auto;
  z-index: 2;
  text-align: center;
  margin-bottom: 3.571425vw;
}
@media screen and (max-width: 960px) {
  .Common__Recommend .ttl {
    margin-bottom: 6.66666665vw;
  }
}
.Common__Recommend .ttl dt {
  font-size: 3.9285675vw;
}
@media screen and (max-width: 960px) {
  .Common__Recommend .ttl dt {
    font-size: 10.66666664vw;
  }
}
.Common__Recommend .ttl dd {
  font-size: 0.9285705vw;
}
@media screen and (max-width: 960px) {
  .Common__Recommend .ttl dd {
    font-size: 2.933333326vw;
  }
}
.Common__Recommend .slide {
  padding-bottom: 1.7857125vw;
  box-sizing: border-box;
}
@media screen and (max-width: 960px) {
  .Common__Recommend .slide {
    width: 100%;
    padding-bottom: 3.333333325vw;
  }
}
.Common__Recommend .slide .list {
  width: 16.0714125vw;
  box-sizing: border-box;
  box-shadow: 0vw 0.3571425vw 1.0714275vw rgba(0, 0, 0, 0.1);
  background-color: #FFFFFF;
  transition: box-shadow 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
@media screen and (max-width: 960px) {
  .Common__Recommend .slide .list {
    box-shadow: 0vw 0.666666665vw 1.999999995vw rgba(0, 0, 0, 0.1);
    width: 100%;
  }
}
.Common__Recommend .slide .list:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #ED2E01;
  z-index: 1;
  transition: width 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.Common__Recommend .slide .list:hover {
  box-shadow: 0vw 0.714285vw 1.42857vw rgba(0, 0, 0, 0.2);
  transition: box-shadow 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
@media screen and (max-width: 960px) {
  .Common__Recommend .slide .list:hover {
    box-shadow: 0vw 1.33333333vw 2.66666666vw rgba(0, 0, 0, 0.2);
  }
}
.Common__Recommend .slide .list:hover:before {
  width: 4px;
  transition: width 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.Common__Recommend .slide .list:hover .pic {
  filter: contrast(1.2) brightness(1.2);
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.Common__Recommend .slide .list .pic {
  position: relative;
  z-index: 2;
}
.Common__Recommend .slide .list .pic img {
  width: 100%;
  height: 9.285705vw;
  object-fit: cover;
}
@media screen and (max-width: 960px) {
  .Common__Recommend .slide .list .pic img {
    height: 39.9999999vw;
  }
}
.Common__Recommend .slide .list .ttls {
  box-sizing: border-box;
  padding: 1.42857vw;
  padding-bottom: 0;
}
@media screen and (max-width: 960px) {
  .Common__Recommend .slide .list .ttls {
    padding: 6.66666665vw 5.33333332vw;
    padding-bottom: 0;
  }
}
.Common__Recommend .slide .list .ttls .category {
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  color: #DE2F1C;
  font-size: 0.9285705vw;
}
@media screen and (max-width: 960px) {
  .Common__Recommend .slide .list .ttls .category {
    font-size: 3.066666659vw;
  }
}
.Common__Recommend .slide .list .ttls .category span {
  padding-left: 1em;
  padding-right: 1em;
}
.Common__Recommend .slide .list .ttls .category:before, .Common__Recommend .slide .list .ttls .category:after {
  content: "";
  position: relative;
  display: block;
  width: 1px;
  height: 1em;
  border-left: 1px solid #E91001;
  transform: rotate(10deg);
  box-sizing: border-box;
}
.Common__Recommend .slide .list .ttls .catch {
  font-size: 1.0714275vw;
  line-height: 1.3;
}
@media screen and (max-width: 960px) {
  .Common__Recommend .slide .list .ttls .catch {
    font-size: 3.99999999vw;
  }
}
.Common__Recommend .slide .list .ttls .txt {
  font-size: 0.9285705vw;
}
@media screen and (max-width: 960px) {
  .Common__Recommend .slide .list .ttls .txt {
    font-size: 3.333333325vw;
  }
}
.Common__Recommend .slide .list .tags {
  display: flex;
  flex-wrap: wrap;
  font-size: 0.7857135vw;
  padding: 1.42857vw;
  box-sizing: border-box;
}
@media screen and (max-width: 960px) {
  .Common__Recommend .slide .list .tags {
    font-size: 2.933333326vw;
    padding: 6.66666665vw 5.33333332vw;
  }
}
.Common__Recommend .slide .list .tags li {
  margin-right: 1.0714275vw;
  margin-bottom: 0.714285vw;
}
@media screen and (max-width: 960px) {
  .Common__Recommend .slide .list .tags li {
    margin-right: 1.999999995vw;
    margin-bottom: 1.33333333vw;
  }
}
.Common__Recommend .slide .list .tags li a {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50px;
  background-color: #EEEEEE;
  box-sizing: border-box;
  transition: all 0.3s cubic-bezier(0.215, 0.610, 0.355, 1.000);
  color: #313131;
  padding: 0.142857vw 0.714285vw;
}
@media screen and (max-width: 960px) {
  .Common__Recommend .slide .list .tags li a {
    padding: 0.266666666vw 1.33333333vw;
  }
}
.Common__Recommend .slide .list .tags li a:hover {
  color: #FFFFFF;
  background-color: #E81305;
  transition: color 0.3s cubic-bezier(0.215, 0.610, 0.355, 1.000);
}

/*--------------------------------------------------------------------------
   Related
---------------------------------------------------------------------------*/
.Common__Related {
  position: relative;
  margin-bottom: 5.71428vw;
}
@media screen and (max-width: 960px) {
  .Common__Related {
    width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    margin-bottom: 10.66666664vw;
  }
}
@media screen and (max-width: 960px) {
  .Common__Related:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 55.99999986vw;
    background-color: #EEEEEE;
    z-index: 1;
  }
}
.Common__Related .ttls {
  position: relative;
  margin-bottom: 2.142855vw;
  z-index: 2;
}
@media screen and (max-width: 960px) {
  .Common__Related .ttls {
    padding-top: 6.66666665vw;
    margin-bottom: 3.99999999vw;
  }
}
.Common__Related .ttls .ttl {
  font-size: 3.9285675vw;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .Common__Related .ttls .ttl {
    font-size: 10.66666664vw;
  }
}
.Common__Related .ttls .catch {
  font-size: 1.142856vw;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .Common__Related .ttls .catch {
    font-size: 3.333333325vw;
  }
}
.Common__Related .swiper-button-prev,
.Common__Related .swiper-button-next {
  top: 11.42856vw;
  transform: translateY(0);
}
@media screen and (max-width: 960px) {
  .Common__Related .swiper-button-prev,
  .Common__Related .swiper-button-next {
    top: 39.9999999vw;
  }
}
@media screen and (max-width: 960px) {
  .Common__Related .swiper-button-next {
    right: 5.33333332vw;
  }
}
@media screen and (max-width: 960px) {
  .Common__Related .swiper-button-prev {
    left: 5.33333332vw;
  }
}
@media screen and (max-width: 960px) {
  .Common__Related .swiper-container {
    overflow: visible;
  }
}
.Common__Related .list {
  width: 32.85711vw;
}
@media screen and (max-width: 960px) {
  .Common__Related .list {
    width: 67.99999983vw;
  }
}
.Common__Related .list a {
  box-sizing: border-box;
  display: flex;
  background-color: #EEEEEE;
  width: 100%;
  height: 100%;
  padding: 1.7857125vw;
}
@media screen and (max-width: 960px) {
  .Common__Related .list a {
    display: block;
    background: none;
    padding: 0;
  }
}
.Common__Related .list .list-pic {
  width: 40%;
  margin-right: 5%;
}
@media screen and (max-width: 960px) {
  .Common__Related .list .list-pic {
    width: 100%;
    margin-right: 0;
    margin-bottom: 5.999999985vw;
  }
}
.Common__Related .list .list-ttls {
  width: 55%;
}
@media screen and (max-width: 960px) {
  .Common__Related .list .list-ttls {
    width: 100%;
  }
}
.Common__Related .list .list-ttls .list-txt {
  font-size: 1.142856vw;
}
@media screen and (max-width: 960px) {
  .Common__Related .list .list-ttls .list-txt {
    font-size: 3.99999999vw;
  }
}

/*--------------------------------------------------------------------------
   ContentsTop
---------------------------------------------------------------------------*/
.Common__ContentsTop {
  position: relative;
}
.Common__ContentsTop .inner {
  width: 100%;
  position: relative;
  height: 11.42856vw;
  overflow: hidden;
  background-color: #EEEEEE;
}
@media screen and (max-width: 960px) {
  .Common__ContentsTop .inner {
    height: 15.99999996vw;
  }
}
.Common__ContentsTop .inner a {
  display: block;
  width: 100%;
  height: 100%;
}
.Common__ContentsTop .inner a:hover .pic:after {
  background-color: rgba(0, 0, 0, 0.2);
  transition: background-color 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.Common__ContentsTop .inner a .pic {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 0;
  right: 0;
  z-index: 1;
  margin: auto;
  transform: translateY(-50%) scale(1);
}
@media screen and (max-width: 960px) {
  .Common__ContentsTop .inner a .pic {
    bottom: auto;
    transform: translateY(-50%) scale(1.2);
  }
}
.Common__ContentsTop .inner a .pic:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  transition: background-color 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.Common__ContentsTop .inner a .ttl {
  position: relative;
  display: inline-block;
  top: 50%;
  left: 50%;
  right: 0;
  transform: translate(-50%, -50%);
  margin: auto;
  z-index: 2;
  font-size: 1.7857125vw;
  color: #FFFFFF;
  line-height: 1.2;
  text-align: center;
  box-sizing: border-box;
  padding-right: 1.7857125vw;
}
@media screen and (max-width: 960px) {
  .Common__ContentsTop .inner a .ttl {
    font-size: 3.99999999vw;
    padding-right: 4.799999988vw;
  }
}
.Common__ContentsTop .inner a .ttl:before, .Common__ContentsTop .inner a .ttl:after {
  position: absolute;
  top: 0.3571425vw;
  bottom: 0;
  right: -0.9285705vw;
  margin: auto;
  content: "";
  vertical-align: middle;
  height: 1px;
  border-top: 2px solid #FFFFFF;
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
@media screen and (max-width: 960px) {
  .Common__ContentsTop .inner a .ttl:before, .Common__ContentsTop .inner a .ttl:after {
    top: 0.666666665vw;
    right: -2.399999994vw;
  }
}
.Common__ContentsTop .inner a .ttl:before {
  width: 1.7857125vw;
}
@media screen and (max-width: 960px) {
  .Common__ContentsTop .inner a .ttl:before {
    width: 4.799999988vw;
  }
}
.Common__ContentsTop .inner a .ttl:after {
  width: 0.714285vw;
  transform-origin: 100% 50%;
  transform: rotate(45deg);
}
@media screen and (max-width: 960px) {
  .Common__ContentsTop .inner a .ttl:after {
    width: 1.999999995vw;
  }
}

/*--------------------------------------------------------------------------
   共通パーツ  ページャー
---------------------------------------------------------------------------*/
.common-pager1 {
  display: table;
  position: relative;
  margin: auto;
  box-sizing: border-box;
  margin-top: 3.571425vw;
  padding-left: 4.999995vw;
  padding-right: 4.999995vw;
}
@media screen and (max-width: 960px) {
  .common-pager1 {
    margin-top: 6.66666665vw;
    padding-left: 13.3333333vw;
    padding-right: 13.3333333vw;
  }
}
.common-pager1 .nav-links {
  position: relative;
  padding-top: 0.3571425vw;
}
@media screen and (max-width: 960px) {
  .common-pager1 .nav-links {
    padding-top: 1.33333333vw;
  }
}
.common-pager1 .nav-links .page-numbers {
  cursor: pointer;
  font-size: 1.7857125vw;
  margin-left: 0.714285vw;
  margin-right: 0.714285vw;
  font-family: "din-condensed", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  font-weight: 400;
  line-height: 1;
  white-space: nowrap;
}
@media screen and (max-width: 960px) {
  .common-pager1 .nav-links .page-numbers {
    margin-left: 1.33333333vw;
    margin-right: 1.33333333vw;
    font-size: 5.33333332vw;
  }
}
.common-pager1 .nav-links .page-numbers:hover {
  color: #E81305;
}
.common-pager1 .nav-links .current {
  color: #CCCCCC;
}
.common-pager1 .next,
.common-pager1 .prev {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.4999975vw;
  height: 2.4999975vw;
  z-index: 10;
  cursor: pointer;
  background-color: #FFFFFF;
  box-sizing: border-box;
  border-radius: 100%;
  box-shadow: 0.3571425vw 0.714285vw 0.714285vw rgba(0, 0, 0, 0.05);
  transition: background-color 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
@media screen and (max-width: 960px) {
  .common-pager1 .next,
  .common-pager1 .prev {
    width: 9.33333331vw;
    height: 9.33333331vw;
    box-shadow: 0.666666665vw 1.33333333vw 1.33333333vw rgba(0, 0, 0, 0.05);
  }
}
.common-pager1 .next:before, .common-pager1 .next:after,
.common-pager1 .prev:before,
.common-pager1 .prev:after {
  position: absolute;
  top: auto;
  bottom: 0.999999vw;
  right: 0.4999995vw;
  margin: auto;
  content: "";
  vertical-align: middle;
  height: 1px;
  border-top: 2px solid #313131;
  box-sizing: border-box;
}
@media screen and (max-width: 960px) {
  .common-pager1 .next:before, .common-pager1 .next:after,
  .common-pager1 .prev:before,
  .common-pager1 .prev:after {
    bottom: 3.99999999vw;
    right: 2.399999994vw;
  }
}
.common-pager1 .next:before,
.common-pager1 .prev:before {
  width: 1.42857vw;
}
@media screen and (max-width: 960px) {
  .common-pager1 .next:before,
  .common-pager1 .prev:before {
    width: 4.799999988vw;
  }
}
.common-pager1 .next:after,
.common-pager1 .prev:after {
  width: 0.6428565vw;
  transform-origin: 100% 50%;
  transform: rotate(45deg);
}
@media screen and (max-width: 960px) {
  .common-pager1 .next:after,
  .common-pager1 .prev:after {
    width: 1.999999995vw;
  }
}
.common-pager1 .next:hover,
.common-pager1 .prev:hover {
  background-color: #E81305;
  transition: background-color 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-pager1 .next:hover:before, .common-pager1 .next:hover:after,
.common-pager1 .prev:hover:before,
.common-pager1 .prev:hover:after {
  border-top: 2px solid #FFFFFF;
}
.common-pager1 .next {
  left: auto;
  right: -3.571425vw;
}
@media screen and (max-width: 960px) {
  .common-pager1 .next {
    right: -11.466666638vw;
  }
}
.common-pager1 .prev {
  left: -3.571425vw;
  right: auto;
}
@media screen and (max-width: 960px) {
  .common-pager1 .prev {
    left: -11.333333305vw;
  }
}
.common-pager1 .prev:after {
  transform-origin: 0 50%;
  transform: rotate(-45deg);
}
.common-pager1 .prev:before, .common-pager1 .prev:after {
  left: 0.4999995vw;
  right: auto;
}
@media screen and (max-width: 960px) {
  .common-pager1 .prev:before, .common-pager1 .prev:after {
    left: 2.399999994vw;
    right: auto;
  }
}

/*--------------------------------------------------------------------------
   共通パーツ　リンク
---------------------------------------------------------------------------*/
.common-link1, .common-link1-white, .common-link1-red, .common-link1-gra, .common-link1-black, .common-link2, .common-link2-white, .common-link2-red, .common-link4-black {
  position: relative;
  vertical-align: middle;
  padding: 1.0714275vw 2.85714vw;
  text-align: center;
  border: 2px solid #000000;
  width: 14.2857vw;
  box-sizing: border-box;
}
@media screen and (max-width: 960px) {
  .common-link1, .common-link1-white, .common-link1-red, .common-link1-gra, .common-link1-black, .common-link2, .common-link2-white, .common-link2-red, .common-link4-black {
    width: 49.33333321vw;
    padding: 3.99999999vw;
  }
}
.common-link1:before, .common-link1-white:before, .common-link1-red:before, .common-link1-gra:before, .common-link1-black:before, .common-link2:before, .common-link2-white:before, .common-link2-red:before, .common-link4-black:before, .common-link1:after, .common-link1-white:after, .common-link1-red:after, .common-link1-gra:after, .common-link1-black:after, .common-link2:after, .common-link2-white:after, .common-link2-red:after, .common-link4-black:after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: -0.9285705vw;
  margin: auto;
  content: "";
  vertical-align: middle;
  height: 1px;
  border-top: 2px solid #000000;
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
@media screen and (max-width: 960px) {
  .common-link1:before, .common-link1-white:before, .common-link1-red:before, .common-link1-gra:before, .common-link1-black:before, .common-link2:before, .common-link2-white:before, .common-link2-red:before, .common-link4-black:before, .common-link1:after, .common-link1-white:after, .common-link1-red:after, .common-link1-gra:after, .common-link1-black:after, .common-link2:after, .common-link2-white:after, .common-link2-red:after, .common-link4-black:after {
    right: -2.399999994vw;
  }
}
.common-link1:before, .common-link1-white:before, .common-link1-red:before, .common-link1-gra:before, .common-link1-black:before, .common-link2:before, .common-link2-white:before, .common-link2-red:before, .common-link4-black:before {
  width: 1.7857125vw;
}
@media screen and (max-width: 960px) {
  .common-link1:before, .common-link1-white:before, .common-link1-red:before, .common-link1-gra:before, .common-link1-black:before, .common-link2:before, .common-link2-white:before, .common-link2-red:before, .common-link4-black:before {
    width: 4.799999988vw;
  }
}
.common-link1:after, .common-link1-white:after, .common-link1-red:after, .common-link1-gra:after, .common-link1-black:after, .common-link2:after, .common-link2-white:after, .common-link2-red:after, .common-link4-black:after {
  width: 0.714285vw;
  transform-origin: 100% 50%;
  transform: rotate(45deg);
}
@media screen and (max-width: 960px) {
  .common-link1:after, .common-link1-white:after, .common-link1-red:after, .common-link1-gra:after, .common-link1-black:after, .common-link2:after, .common-link2-white:after, .common-link2-red:after, .common-link4-black:after {
    width: 1.999999995vw;
  }
}
.common-link1:hover:before, .common-link1-white:hover:before, .common-link1-red:hover:before, .common-link1-gra:hover:before, .common-link1-black:hover:before, .common-link2:hover:before, .common-link2-white:hover:before, .common-link2-red:hover:before, .common-link4-black:hover:before, .common-link1:hover:after, .common-link1-white:hover:after, .common-link1-red:hover:after, .common-link1-gra:hover:after, .common-link1-black:hover:after, .common-link2:hover:after, .common-link2-white:hover:after, .common-link2-red:hover:after, .common-link4-black:hover:after {
  right: -2.285712vw;
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
@media screen and (max-width: 960px) {
  .common-link1:hover:before, .common-link1-white:hover:before, .common-link1-red:hover:before, .common-link1-gra:hover:before, .common-link1-black:hover:before, .common-link2:hover:before, .common-link2-white:hover:before, .common-link2-red:hover:before, .common-link4-black:hover:before, .common-link1:hover:after, .common-link1-white:hover:after, .common-link1-red:hover:after, .common-link1-gra:hover:after, .common-link1-black:hover:after, .common-link2:hover:after, .common-link2-white:hover:after, .common-link2-red:hover:after, .common-link4-black:hover:after {
    right: -2.399999994vw;
  }
}
.common-link1:hover a, .common-link1-white:hover a, .common-link1-red:hover a, .common-link1-gra:hover a, .common-link1-black:hover a, .common-link2:hover a, .common-link2-white:hover a, .common-link2-red:hover a, .common-link4-black:hover a {
  color: #FFFFFF;
}
.common-link1:hover a:before, .common-link1-white:hover a:before, .common-link1-red:hover a:before, .common-link1-gra:hover a:before, .common-link1-black:hover a:before, .common-link2:hover a:before, .common-link2-white:hover a:before, .common-link2-red:hover a:before, .common-link4-black:hover a:before {
  transform: scaleX(1);
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-link1 a, .common-link1-white a, .common-link1-red a, .common-link1-gra a, .common-link1-black a, .common-link2 a, .common-link2-white a, .common-link2-red a, .common-link4-black a {
  display: block;
  width: 100%;
  height: 100%;
  font-size: 1.42857vw;
}
@media screen and (max-width: 960px) {
  .common-link1 a, .common-link1-white a, .common-link1-red a, .common-link1-gra a, .common-link1-black a, .common-link2 a, .common-link2-white a, .common-link2-red a, .common-link4-black a {
    font-size: 3.199999992vw;
  }
}
.common-link1 a span, .common-link1-white a span, .common-link1-red a span, .common-link1-gra a span, .common-link1-black a span, .common-link2 a span, .common-link2-white a span, .common-link2-red a span, .common-link4-black a span {
  position: relative;
  z-index: 2;
}
.common-link1 a:before, .common-link1-white a:before, .common-link1-red a:before, .common-link1-gra a:before, .common-link1-black a:before, .common-link2 a:before, .common-link2-white a:before, .common-link2-red a:before, .common-link4-black a:before {
  content: "";
  display: block;
  position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  background-color: black;
  transform-origin: 0 50%;
  transform: scaleX(0);
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
  z-index: 1;
}

.common-link1-white {
  border: 2px solid #FFFFFF;
}
.common-link1-white:before, .common-link1-white:after {
  height: 1px;
  border-top: 2px solid #FFFFFF;
}
.common-link1-white:hover {
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-link1-white:hover a {
  color: #000000;
}
.common-link1-white:hover a:before {
  transform: scaleX(1);
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-link1-white a {
  color: #FFFFFF;
}
.common-link1-white a:before {
  background-color: white;
}

.common-link1-red {
  border: 2px solid #E81305;
}
.common-link1-red:before, .common-link1-red:after {
  height: 1px;
  border-top: 2px solid #E81305;
}
.common-link1-red:hover {
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-link1-red:hover a {
  color: #FFFFFF;
}
.common-link1-red:hover a:before {
  transform: scaleX(1);
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-link1-red a {
  color: #E81305;
}
.common-link1-red a:before {
  background-color: #e81305;
}

.common-link1-gra {
  border: 2px solid #FA5901;
  width: auto;
  display: inline-block;
  padding: 0;
}
@media screen and (max-width: 960px) {
  .common-link1-gra {
    width: 95%;
    display: block;
  }
}
.common-link1-gra:before, .common-link1-gra:after {
  height: 1px;
  border-top: 2px solid #FA5901;
}
.common-link1-gra:hover {
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-link1-gra:hover a {
  color: #FFFFFF;
}
.common-link1-gra:hover a:before {
  transform: scaleX(1);
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-link1-gra a {
  color: #FA5901;
  font-size: 0.9285705vw;
  padding: 1.0714275vw 2.85714vw;
  box-sizing: border-box;
}
@media screen and (max-width: 960px) {
  .common-link1-gra a {
    font-size: 3.066666659vw;
    padding: 3.99999999vw;
  }
}
.common-link1-gra a:before {
  background: linear-gradient(-90deg, #E40604, #FF5D00);
}

.common-link1-black {
  border: 2px solid #000000;
  width: auto;
  display: inline-block;
  padding: 0;
  background-color: #000000;
}
@media screen and (max-width: 960px) {
  .common-link1-black {
    width: 95%;
    display: block;
  }
}
.common-link1-black:before, .common-link1-black:after {
  height: 1px;
  border-top: 2px solid #000000;
}
.common-link1-black:hover {
  border: 2px solid #FA5901;
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-link1-black:hover a {
  color: #FFFFFF;
}
.common-link1-black:hover a:before {
  transform: scaleX(1);
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-link1-black a {
  color: #FFFFFF;
  font-size: 0.9285705vw;
  padding: 1.0714275vw 2.85714vw;
  box-sizing: border-box;
}
@media screen and (max-width: 960px) {
  .common-link1-black a {
    font-size: 3.066666659vw;
    padding: 3.99999999vw;
  }
}
.common-link1-black a:before {
  background: linear-gradient(-90deg, #E40604, #FF5D00);
}

.common-link2 a, .common-link2-white a, .common-link2-red a {
  font-size: 1.0714275vw;
}
@media screen and (max-width: 960px) {
  .common-link2 a, .common-link2-white a, .common-link2-red a {
    font-size: 3.199999992vw;
  }
}

.common-link2-white {
  border: 2px solid #FFFFFF;
}
.common-link2-white:before, .common-link2-white:after {
  height: 1px;
  border-top: 2px solid #FFFFFF;
}
.common-link2-white:hover {
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-link2-white:hover a {
  color: #000000;
}
.common-link2-white:hover a:before {
  transform: scaleX(1);
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-link2-white a {
  color: #FFFFFF;
}
.common-link2-white a:before {
  background-color: white;
}

.common-link2-red {
  border: 2px solid #E81305;
}
.common-link2-red:before, .common-link2-red:after {
  height: 1px;
  border-top: 2px solid #E81305;
}
.common-link2-red:hover {
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-link2-red:hover a {
  color: #FFFFFF;
}
.common-link2-red:hover a:before {
  transform: scaleX(1);
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-link2-red a {
  color: #E81305;
}
.common-link2-red a:before {
  background-color: #e81305;
}

.common-link3 {
  position: relative;
  background-color: #313131;
  width: 22.85712vw;
  font-size: 1.142856vw;
  text-align: center;
  box-sizing: border-box;
  transition: background-color 0.3s cubic-bezier(0.215, 0.610, 0.355, 1.000);
}
.common-link3:hover {
  background-color: #E81305;
  transition: background-color 0.3s cubic-bezier(0.215, 0.610, 0.355, 1.000);
}
@media screen and (max-width: 960px) {
  .common-link3 {
    width: 55.99999986vw;
    font-size: 3.333333325vw;
  }
}
.common-link3 a {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding-top: 1.42857vw;
  padding-bottom: 1.42857vw;
  color: #FFFFFF;
}
@media screen and (max-width: 960px) {
  .common-link3 a {
    padding-top: 2.66666666vw;
    padding-bottom: 2.66666666vw;
  }
}
@media screen and (max-width: 960px) {
  .common-link3 a .txt {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: auto;
    transform: translateY(-50%);
    width: 26.6666666vw;
    padding: 0;
  }
}

.common-link4-black {
  border: 2px solid #000000;
  width: auto;
  display: inline-block;
  padding: 0;
  background-color: #000000;
}
@media screen and (max-width: 960px) {
  .common-link4-black {
    width: 95%;
    display: block;
  }
}
.common-link4-black:before, .common-link4-black:after {
  display: none;
}
.common-link4-black:hover {
  border: 2px solid #FA5901;
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-link4-black:hover a {
  color: #FFFFFF;
}
.common-link4-black:hover a:before {
  transform: scaleX(1);
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-link4-black a {
  color: #FFFFFF;
  font-size: 0.9285705vw;
  padding: 1.0714275vw 2.85714vw;
  box-sizing: border-box;
}
@media screen and (max-width: 960px) {
  .common-link4-black a {
    font-size: 3.066666659vw;
    padding: 3.99999999vw;
  }
}
.common-link4-black a:before {
  background: linear-gradient(-90deg, #E40604, #FF5D00);
}

/*--------------------------------------------------------------------------
   共通パーツ　タイトル
---------------------------------------------------------------------------*/
.common-ttl1, .common-ttl1-em1, .common-ttl1-em2, .common-ttl1-em3, .common-ttl1-em4, .common-ttl1-em5, .common-ttl1-em6, .common-ttl1-em7, .common-ttl1-em8, .common-ttl1-em9, .common-ttl1-em10, .common-ttl1-em11, .common-ttl1-em12, .common-ttl1-em13, .common-ttl1-em14, .common-ttl1-em15, .common-ttl1-em16, .common-ttl1-em17, .common-ttl1-em18, .common-ttl1-em19, .common-ttl1-em20, .common-ttl1-em21, .common-ttl1-em22, .common-ttl1-em23, .common-ttl1-em24, .common-ttl1-em25, .common-ttl1-em26, .common-ttl1-em27, .common-ttl1-em28, .common-ttl1-em29, .common-ttl1-em30 {
  font-size: 1.3571415vw;
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
  position: relative;
  box-sizing: border-box;
  margin-bottom: 1.42857vw;
  padding-bottom: 0.714285vw;
  line-height: 1;
  font-weight: bold;
}
.common-ttl1:before, .common-ttl1-em1:before, .common-ttl1-em2:before, .common-ttl1-em3:before, .common-ttl1-em4:before, .common-ttl1-em5:before, .common-ttl1-em6:before, .common-ttl1-em7:before, .common-ttl1-em8:before, .common-ttl1-em9:before, .common-ttl1-em10:before, .common-ttl1-em11:before, .common-ttl1-em12:before, .common-ttl1-em13:before, .common-ttl1-em14:before, .common-ttl1-em15:before, .common-ttl1-em16:before, .common-ttl1-em17:before, .common-ttl1-em18:before, .common-ttl1-em19:before, .common-ttl1-em20:before, .common-ttl1-em21:before, .common-ttl1-em22:before, .common-ttl1-em23:before, .common-ttl1-em24:before, .common-ttl1-em25:before, .common-ttl1-em26:before, .common-ttl1-em27:before, .common-ttl1-em28:before, .common-ttl1-em29:before, .common-ttl1-em30:before, .common-ttl1:after, .common-ttl1-em1:after, .common-ttl1-em2:after, .common-ttl1-em3:after, .common-ttl1-em4:after, .common-ttl1-em5:after, .common-ttl1-em6:after, .common-ttl1-em7:after, .common-ttl1-em8:after, .common-ttl1-em9:after, .common-ttl1-em10:after, .common-ttl1-em11:after, .common-ttl1-em12:after, .common-ttl1-em13:after, .common-ttl1-em14:after, .common-ttl1-em15:after, .common-ttl1-em16:after, .common-ttl1-em17:after, .common-ttl1-em18:after, .common-ttl1-em19:after, .common-ttl1-em20:after, .common-ttl1-em21:after, .common-ttl1-em22:after, .common-ttl1-em23:after, .common-ttl1-em24:after, .common-ttl1-em25:after, .common-ttl1-em26:after, .common-ttl1-em27:after, .common-ttl1-em28:after, .common-ttl1-em29:after, .common-ttl1-em30:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
}
.common-ttl1:before, .common-ttl1-em1:before, .common-ttl1-em2:before, .common-ttl1-em3:before, .common-ttl1-em4:before, .common-ttl1-em5:before, .common-ttl1-em6:before, .common-ttl1-em7:before, .common-ttl1-em8:before, .common-ttl1-em9:before, .common-ttl1-em10:before, .common-ttl1-em11:before, .common-ttl1-em12:before, .common-ttl1-em13:before, .common-ttl1-em14:before, .common-ttl1-em15:before, .common-ttl1-em16:before, .common-ttl1-em17:before, .common-ttl1-em18:before, .common-ttl1-em19:before, .common-ttl1-em20:before, .common-ttl1-em21:before, .common-ttl1-em22:before, .common-ttl1-em23:before, .common-ttl1-em24:before, .common-ttl1-em25:before, .common-ttl1-em26:before, .common-ttl1-em27:before, .common-ttl1-em28:before, .common-ttl1-em29:before, .common-ttl1-em30:before {
  background-color: #D3D3D3;
}
.common-ttl1:after, .common-ttl1-em1:after, .common-ttl1-em2:after, .common-ttl1-em3:after, .common-ttl1-em4:after, .common-ttl1-em5:after, .common-ttl1-em6:after, .common-ttl1-em7:after, .common-ttl1-em8:after, .common-ttl1-em9:after, .common-ttl1-em10:after, .common-ttl1-em11:after, .common-ttl1-em12:after, .common-ttl1-em13:after, .common-ttl1-em14:after, .common-ttl1-em15:after, .common-ttl1-em16:after, .common-ttl1-em17:after, .common-ttl1-em18:after, .common-ttl1-em19:after, .common-ttl1-em20:after, .common-ttl1-em21:after, .common-ttl1-em22:after, .common-ttl1-em23:after, .common-ttl1-em24:after, .common-ttl1-em25:after, .common-ttl1-em26:after, .common-ttl1-em27:after, .common-ttl1-em28:after, .common-ttl1-em29:after, .common-ttl1-em30:after {
  background-color: #E81305;
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1, .common-ttl1-em1, .common-ttl1-em2, .common-ttl1-em3, .common-ttl1-em4, .common-ttl1-em5, .common-ttl1-em6, .common-ttl1-em7, .common-ttl1-em8, .common-ttl1-em9, .common-ttl1-em10, .common-ttl1-em11, .common-ttl1-em12, .common-ttl1-em13, .common-ttl1-em14, .common-ttl1-em15, .common-ttl1-em16, .common-ttl1-em17, .common-ttl1-em18, .common-ttl1-em19, .common-ttl1-em20, .common-ttl1-em21, .common-ttl1-em22, .common-ttl1-em23, .common-ttl1-em24, .common-ttl1-em25, .common-ttl1-em26, .common-ttl1-em27, .common-ttl1-em28, .common-ttl1-em29, .common-ttl1-em30 {
    font-size: 3.99999999vw;
    margin-bottom: 2.66666666vw;
    padding-bottom: 1.33333333vw;
  }
  .common-ttl1:after, .common-ttl1-em1:after, .common-ttl1-em2:after, .common-ttl1-em3:after, .common-ttl1-em4:after, .common-ttl1-em5:after, .common-ttl1-em6:after, .common-ttl1-em7:after, .common-ttl1-em8:after, .common-ttl1-em9:after, .common-ttl1-em10:after, .common-ttl1-em11:after, .common-ttl1-em12:after, .common-ttl1-em13:after, .common-ttl1-em14:after, .common-ttl1-em15:after, .common-ttl1-em16:after, .common-ttl1-em17:after, .common-ttl1-em18:after, .common-ttl1-em19:after, .common-ttl1-em20:after, .common-ttl1-em21:after, .common-ttl1-em22:after, .common-ttl1-em23:after, .common-ttl1-em24:after, .common-ttl1-em25:after, .common-ttl1-em26:after, .common-ttl1-em27:after, .common-ttl1-em28:after, .common-ttl1-em29:after, .common-ttl1-em30:after {
    width: 4em;
  }
}

.common-ttl1-em1:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em1:after {
    width: 4em;
  }
}

.common-ttl1-em2:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em2:after {
    width: 4em;
  }
}

.common-ttl1-em3:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em3:after {
    width: 4em;
  }
}

.common-ttl1-em4:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em4:after {
    width: 4em;
  }
}

.common-ttl1-em5:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em5:after {
    width: 4em;
  }
}

.common-ttl1-em6:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em6:after {
    width: 4em;
  }
}

.common-ttl1-em7:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em7:after {
    width: 4em;
  }
}

.common-ttl1-em8:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em8:after {
    width: 4em;
  }
}

.common-ttl1-em9:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em9:after {
    width: 4em;
  }
}

.common-ttl1-em10:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em10:after {
    width: 4em;
  }
}

.common-ttl1-em11:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em11:after {
    width: 4em;
  }
}

.common-ttl1-em12:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em12:after {
    width: 4em;
  }
}

.common-ttl1-em13:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em13:after {
    width: 4em;
  }
}

.common-ttl1-em14:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em14:after {
    width: 4em;
  }
}

.common-ttl1-em15:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em15:after {
    width: 4em;
  }
}

.common-ttl1-em16:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em16:after {
    width: 4em;
  }
}

.common-ttl1-em17:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em17:after {
    width: 4em;
  }
}

.common-ttl1-em18:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em18:after {
    width: 4em;
  }
}

.common-ttl1-em19:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em19:after {
    width: 4em;
  }
}

.common-ttl1-em20:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em20:after {
    width: 4em;
  }
}

.common-ttl1-em21:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em21:after {
    width: 4em;
  }
}

.common-ttl1-em22:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em22:after {
    width: 4em;
  }
}

.common-ttl1-em23:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em23:after {
    width: 4em;
  }
}

.common-ttl1-em24:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em24:after {
    width: 4em;
  }
}

.common-ttl1-em25:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em25:after {
    width: 4em;
  }
}

.common-ttl1-em26:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em26:after {
    width: 4em;
  }
}

.common-ttl1-em27:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em27:after {
    width: 4em;
  }
}

.common-ttl1-em28:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em28:after {
    width: 4em;
  }
}

.common-ttl1-em29:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em29:after {
    width: 4em;
  }
}

.common-ttl1-em30:after {
  width: 4em;
}
@media screen and (max-width: 960px) {
  .common-ttl1-em30:after {
    width: 4em;
  }
}

.common-ttl2 {
  font-size: 1.0714275vw;
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
  position: relative;
  box-sizing: border-box;
  margin-bottom: 1.42857vw;
  padding-bottom: 0.714285vw;
  line-height: 1;
}
.common-ttl2:before, .common-ttl2:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
}
.common-ttl2:before {
  background-color: #D3D3D3;
}
.common-ttl2:after {
  background-color: #313131;
  width: 4.999995vw;
}
@media screen and (max-width: 960px) {
  .common-ttl2:after {
    width: 13.3333333vw;
  }
}
@media screen and (max-width: 960px) {
  .common-ttl2 {
    font-size: 3.333333325vw;
    margin-bottom: 2.66666666vw;
    padding-bottom: 1.33333333vw;
  }
  .common-ttl2:after {
    width: 21.33333328vw;
  }
}

.common-ttl3 {
  font-size: 1.3571415vw;
  margin-bottom: 1.42857vw;
  position: relative;
  box-sizing: border-box;
  padding-left: 1em;
  font-weight: bold;
  border-left: 0.2142855vw solid #E81305;
}
@media screen and (max-width: 960px) {
  .common-ttl3 {
    font-size: 3.99999999vw;
    margin-bottom: 2.66666666vw;
    border-left: 0.399999999vw solid #E81305;
  }
}

/*--------------------------------------------------------------------------
   共通パーツ　リスト
---------------------------------------------------------------------------*/
.common-list1 {
  width: 21.42855vw;
  box-sizing: border-box;
  box-shadow: 0.3571425vw 0.714285vw 0.714285vw rgba(0, 0, 0, 0.05);
  background-color: #FFFFFF;
  height: auto;
}
@media screen and (max-width: 960px) {
  .common-list1 {
    width: 100%;
    box-shadow: 0.666666665vw 1.33333333vw 1.33333333vw rgba(0, 0, 0, 0.05);
  }
}
.common-list1:hover .pic {
  filter: contrast(1.2) brightness(1.2);
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-list1 .list-ttls {
  box-sizing: border-box;
  padding: 1.42857vw;
  border-left: 4px solid #ED2E01;
  height: 100%;
}
@media screen and (max-width: 960px) {
  .common-list1 .list-ttls {
    padding: 6.66666665vw 5.33333332vw;
  }
}
.common-list1 .list-ttls .list-category {
  color: #FFFFFF;
  box-sizing: border-box;
  border-radius: 100px;
  background: linear-gradient(90deg, #FF5D00, #E40604);
  background-color: #FE5102;
  padding: 0.0714285vw 1.42857vw;
  margin-bottom: 0.714285vw;
  font-size: 0.7857135vw;
  display: inline-block;
}
@media screen and (max-width: 960px) {
  .common-list1 .list-ttls .list-category {
    padding: 0.133333333vw 2.66666666vw;
    margin-bottom: 1.33333333vw;
    font-size: 2.66666666vw;
  }
}
.common-list1 .list-ttls .list-catch {
  font-size: 1.142856vw;
  line-height: 1.3;
}
@media screen and (max-width: 960px) {
  .common-list1 .list-ttls .list-catch {
    font-size: 3.99999999vw;
  }
}

/*--------------------------------------------------------------------------
   共通パーツ　Table
---------------------------------------------------------------------------*/
.common-table1 table {
  width: 100%;
}
@media screen and (max-width: 960px) {
  .common-table1 table {
    display: block;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
}
.common-table1 tbody {
  width: 100%;
}
.common-table1 th, .common-table1 td {
  border: 1px solid #313131;
  padding: 0.3571425vw;
  text-align: center;
  vertical-align: middle;
}
@media screen and (max-width: 960px) {
  .common-table1 th, .common-table1 td {
    padding: 0.666666665vw;
  }
}
.common-table1 th {
  background: #AAAAAA;
}
.common-table1 td:first-child {
  background: #AAAAAA;
}
.common-table1 tr:nth-child(2n+1) {
  background: #eee;
}
.common-table1 tr:nth-child(2n+1) td:first-child {
  background: #989898;
}
.common-table1 tr:first-child {
  background: #535353;
  color: #FFFFFF;
}
.common-table1 tr:first-child th {
  padding: 0.714285vw;
  background: #535353 !important;
}
@media screen and (max-width: 960px) {
  .common-table1 tr:first-child th {
    padding: 1.33333333vw;
  }
}

.common-table2 table {
  width: 100%;
}
@media screen and (max-width: 960px) {
  .common-table2 table {
    display: block;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
}
.common-table2 tbody {
  width: 100%;
  border: 1px solid #313131;
  box-sizing: border-box;
}
.common-table2 th, .common-table2 td {
  box-sizing: border-box;
  border: 1px solid #313131;
  padding: 0.3571425vw;
  text-align: center;
  vertical-align: middle;
}
@media screen and (max-width: 960px) {
  .common-table2 th, .common-table2 td {
    padding: 0.666666665vw;
  }
}
.common-table2 th {
  background: #AAAAAA;
  border: 1px solid #313131;
}
.common-table2 td {
  border-top: 1px dashed #CCCCCC;
  border-bottom: none;
}
.common-table2 .bottomline {
  border-bottom: 1px solid #313131;
}
.common-table2 tr:first-child {
  background: #535353;
  color: #FFFFFF;
}
.common-table2 tr:first-child th {
  padding: 0.714285vw;
  background: #535353 !important;
}
@media screen and (max-width: 960px) {
  .common-table2 tr:first-child th {
    padding: 1.33333333vw;
  }
}

.common-table4 table {
  width: 100%;
}
@media screen and (max-width: 960px) {
  .common-table4 table {
    display: block;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
}
.common-table4 tbody {
  width: 100%;
}
.common-table4 th, .common-table4 td {
  border: 1px solid #313131;
  padding: 0.3571425vw;
  text-align: center;
  vertical-align: middle;
}
@media screen and (max-width: 960px) {
  .common-table4 th, .common-table4 td {
    padding: 0.666666665vw;
  }
}
.common-table4 th {
  background: #AAAAAA;
}
.common-table4 td:first-child {
  background: #AAAAAA;
}
.common-table4 tr:first-child {
  background: #535353;
  color: #FFFFFF;
}
.common-table4 tr:first-child th {
  padding: 0.714285vw;
  background: #535353 !important;
}
@media screen and (max-width: 960px) {
  .common-table4 tr:first-child th {
    padding: 1.33333333vw;
  }
}

.common-table-fit table {
  width: 100%;
  display: table;
}
@media screen and (max-width: 960px) {
  .common-table-fit table {
    overflow-x: visible;
  }
}

/*--------------------------------------------------------------------------
   共通パーツ　その他
---------------------------------------------------------------------------*/
.common-stripe-bg {
  background-image: repeating-linear-gradient(-45deg, #FEFEFE, #FEFEFE 5px, #C3C3C3 0, #C3C3C3 6px);
}

.common-ico-video {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
}
.common-ico-video:before, .common-ico-video:after {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: auto;
  transform: translate(-50%, -50%);
  content: "";
  vertical-align: middle;
}
.common-ico-video:before {
  box-sizing: border-box;
  width: 30px;
  height: 15px;
  border: 15px solid transparent;
  border-left: 30px solid #FFFFFF;
  margin-left: 10px;
  margin-top: 20px;
}
.common-ico-video:after {
  box-sizing: border-box;
  width: 80px;
  height: 80px;
  border: 5px solid #FFFFFF;
  border-radius: 100%;
  margin-top: 20px;
}

.common-sup {
  font-size: 60%;
  vertical-align: top;
  position: relative;
  top: 0;
}

.common-sub {
  font-size: 60%;
  vertical-align: bottom;
  position: relative;
  top: 0;
}

.common-indent1 {
  padding-left: 1em;
  text-indent: -1em;
}

.common-indent1-5 {
  padding-left: 1.5em;
  text-indent: -1.5em;
}

.common-indent2 {
  padding-left: 2em;
  text-indent: -2em;
}

.common-indent2-5 {
  padding-left: 2.5em;
  text-indent: -2.5em;
}
