@charset "UTF-8";
@keyframes keyFadeIn {
  to {
    opacity: 1;
    visibility: visible;
  }
}
@keyframes keyFadeSlideIn {
  to {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
}
* {
  padding: 0;
  margin: 0;
}

section,
article,
aside,
hgroup,
header,
footer,
nav,
figure,
figcaption,
summary,
main {
  display: block;
  padding: 0;
  margin: 0;
}

ol,
ul,
dl,
li,
dt,
dd {
  list-style: none;
}

img,
iframe {
  vertical-align: top;
}

html {
  -webkit-text-size-adjust: 100%;
}

a,
img {
  border: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  line-height: 1.4;
}

sup,
sub {
  height: 0;
  line-height: 1;
  vertical-align: baseline;
  margin: 0 1px;
  position: relative;
}

sup {
  bottom: 0.7ex;
}

sub {
  top: 0.1ex;
}

body {
  color: #222;
  font: normal normal 16px/1 Noto Sans JP, sans-serif;
  font-feature-settings: "pwid";
  text-align: left;
}
@media only screen and (max-width: 1031px) {
  body {
    font-size: 14px;
  }
}

@media only screen and (max-width: 1031px) {
  html.is-body-fixed {
    font-size: 14px;
  }
}

a {
  color: #000;
  text-decoration: none;
  transition: 0.3s ease-out;
  transition-property: color, background, opacity;
}

img {
  box-sizing: border-box;
  max-width: 100%;
  height: auto;
}

.display-none {
  display: none !important;
}

@media only screen and (max-width: 1031px) {
  .pc {
    display: none !important;
  }
}

@media only screen and (min-width: 1032px), print {
  .sp {
    display: none !important;
  }
}

@media print {
  .container {
    width: 1024px !important;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
  }
}

.header {
  box-sizing: border-box;
}
@media only screen and (min-width: 1032px), print {
  .header {
    display: flex;
    align-items: center;
    width: 100%;
    height: 136px;
    padding: 0 43px 0 49px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 21;
    transition: transform 0.3s ease-out, height 0.3s ease-out, background 0.3s ease-out 0.2s;
  }
}
@media only screen and (max-width: 1031px) {
  .header {
    height: 50px;
    padding: 20px 20px 0;
  }
}
@media only screen and (max-width: 1031px) {
  html.is-gnav-open .header {
    transition: 0.3s ease-out;
  }
}

@media print {
  .header {
    position: absolute;
  }
}
@media only screen and (min-width: 1032px), print {
  .header.is-hide {
    transform: translateY(-100%);
  }
}
@media only screen and (min-width: 1032px), print {
  .header.is-bg {
    background-color: rgba(255, 255, 255, 0.9);
    height: 70px;
  }
}
@media only screen and (min-width: 1032px), print {
  .header.is-bg .header__logo {
    transform: scale(0.9);
    transform-origin: left center;
  }
}

@media only screen and (min-width: 1032px), print {
  .header__logo {
    margin-right: auto;
    transition: transform 0.3s ease-out;
  }
}
@media only screen and (max-width: 1031px) {
  .header__logo img {
    width: 117px;
  }
}

@media only screen and (max-width: 1031px) {
  .header-menu__button {
    background-color: #fff;
    box-sizing: border-box;
    width: 55px;
    height: 50px;
    cursor: pointer;
    user-select: none;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 73;
  }
}
@media only screen and (max-width: 1031px) {
  .header-menu__button::before, .header-menu__button::after {
    content: "";
    background-color: #222;
    display: block;
    width: 30px;
    height: 2px;
    position: absolute;
    left: calc(50% - 15px);
    z-index: 1;
  }
}
@media only screen and (max-width: 1031px) {
  .header-menu__button::before {
    top: 21px;
    animation: keyMenuBar1 0.6s forwards;
  }
}
@media only screen and (max-width: 1031px) {
  .header-menu__button::after {
    top: 28px;
    animation: keyMenuBar2 0.6s forwards;
  }
}

@media only screen and (max-width: 1031px) {
  .header-menu__body {
    color: #fff;
    box-sizing: border-box;
    width: 100%;
    visibility: hidden;
    overflow: hidden;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 71;
    opacity: 0;
  }
}
@media only screen and (max-width: 1031px) {
  .header-menu__body a {
    color: #fff;
  }
}
.header-menu__body,
.header-menu__body ._scrollable {
  transition: 0.3s ease-out;
}
@media only screen and (max-width: 1031px) {
  .header-menu__body ._scrollable {
    background: #222 url(/images/menu_bg.svg) no-repeat center/117.3333333333vw auto;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100vh;
    padding: 60px 40px 0;
    overflow: auto;
    position: relative;
  }
}
html.is-gnav-open .header-menu__body ._scrollable {
  -webkit-overflow-scrolling: touch;
}

@media only screen and (max-width: 1031px) {
  .header-menu__body > * {
    visibility: hidden;
  }
}

.header-menu .link-button {
  margin-top: 65px;
}
.header-menu.open .header-menu__button {
  background-color: #222;
  border-color: #222;
}
@media only screen and (max-width: 1031px) {
  .header-menu.open .header-menu__button::before, .header-menu.open .header-menu__button::after {
    background-color: #fff;
  }
}
@media only screen and (max-width: 1031px) {
  .header-menu.open .header-menu__button::before {
    animation: keyMenuBar1-active 0.6s forwards;
  }
}
@media only screen and (max-width: 1031px) {
  .header-menu.open .header-menu__button::after {
    animation: keyMenuBar2-active 0.6s forwards;
  }
}
@media only screen and (max-width: 1031px) {
  .header-menu.open .header-menu__body {
    visibility: visible;
    opacity: 1;
  }
}
@media only screen and (max-width: 1031px) {
  .header-menu.open .header-menu__body > * {
    visibility: inherit;
  }
}

@media only screen and (min-width: 1032px), print {
  .header-menu__list {
    font-size: 15px;
    font-weight: 500;
    display: flex;
  }
}
@media only screen and (max-width: 1031px) {
  .header-menu__list {
    font-size: 18px;
    width: min(100%, 287px);
    margin: auto auto 0;
  }
}
@media only screen and (min-width: 1032px), print {
  .header-menu__list > li:nth-child(n+2) {
    margin-left: 32px;
  }
}
@media only screen and (max-width: 1031px) {
  .header-menu__list > li:nth-child(n+2) {
    margin-top: 30px;
  }
}
.header-menu__list a {
  display: inline-block;
  padding: 5px 0;
  position: relative;
}
@media only screen and (min-width: 1032px), print {
  .header-menu__list a {
    background: linear-gradient(currentColor 0 0) no-repeat 0 bottom/var(--d, 0) 2px;
    padding: 12px 0;
    transition: 0.5s;
  }
}
@media only screen and (min-width: 1032px), print {
  .header-menu__list a:hover {
    --d: 100%;
  }
}

@media only screen and (max-width: 1031px) {
  .header-menu__link-button {
    font-size: 16px;
    font-weight: bold;
    width: min(100%, 287px);
    margin: 37px auto 0;
  }
}
@media only screen and (max-width: 1031px) {
  .header-menu__link-button a {
    color: #fff;
    background-color: #ad0003;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    height: 80px;
    border-radius: 8px;
  }
}

.header-menu__close {
  font-weight: 500;
  text-align: center;
  margin-top: auto;
  padding: 29px;
  cursor: pointer;
}

@media only screen and (min-width: 1032px), print {
  html.is-gnav-open body {
    top: unset !important;
  }
}
@media only screen and (max-width: 1031px) {
  html.is-gnav-open body {
    width: 100% !important;
    position: fixed !important;
    overflow-y: scroll !important;
  }
}

@keyframes keyMenuBar1 {
  0% {
    transform: translateY(3.5px) rotate(30deg);
  }
  50% {
    transform: translateY(3.5px) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}
@keyframes keyMenuBar2 {
  0% {
    transform: translateY(-3.5px) rotate(-30deg);
  }
  50% {
    transform: translateY(-3.5px) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}
@keyframes keyMenuBar1-active {
  0% {
    transform: translateY(0) rotate(0);
  }
  40% {
    transform: translateY(3.5px) rotate(0);
  }
  100% {
    transform: translateY(3.5px) rotate(30deg);
  }
}
@keyframes keyMenuBar2-active {
  0% {
    transform: translateY(0) rotate(0);
  }
  40% {
    transform: translateY(-3.5px) rotate(0);
  }
  100% {
    transform: translateY(-3.5px) rotate(-30deg);
  }
}
.contents {
  line-height: 2;
}
@media only screen and (min-width: 1032px), print {
  .contents {
    padding-top: 136px;
  }
}
@media only screen and (max-width: 1031px) {
  .contents {
    line-height: 1.86;
  }
}

.contents__inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 min(5.523255814vw, 104px);
}
@media only screen and (max-width: 1031px) {
  .contents__inner {
    padding: 0 4.2666666667vw;
  }
}
@media print {
  .contents__inner {
    padding: 0 57px;
  }
}

.main-visual {
  margin-top: 40px;
  position: relative;
  z-index: 1;
}

@media only screen and (min-width: 1032px), print {
  .main-visual__inner {
    margin: 0 max(-5.523255814vw, -104px);
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
  }
}

.main-visual__catch {
  font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
}
@media only screen and (min-width: 1032px), print {
  .main-visual__catch {
    font-size: min(39px + 23 * (100vw - 1032px) / 572, 62px);
    line-height: 1.5;
    writing-mode: vertical-rl;
    -webkit-text-orientation: upright;
    text-orientation: upright;
    font-feature-settings: normal;
    padding-right: min(13.0922693267vw, 250px);
  }
}
@media only screen and (max-width: 1031px) {
  .main-visual__catch {
    font-size: 38px;
    line-height: 1.38;
    letter-spacing: 2px;
  }
}

.main-visual__image {
  position: relative;
}
@media only screen and (min-width: 1032px), print {
  .main-visual__image {
    width: min(66.1471321696vw, 1270px);
    padding-top: 70px;
  }
}
@media print {
  .main-visual__image {
    width: 676px;
  }
}
@media only screen and (max-width: 1031px) {
  .main-visual__image {
    margin: 34px -4.2666666667vw;
  }
}
.main-visual__image ._badge {
  color: #fff;
  background-color: #000;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: 200px;
  height: 267px;
  border: 9px solid transparent;
  box-shadow: inset 0 0 0 1px #a2a2a2;
  position: absolute;
  top: 0;
  z-index: 11;
}
@media only screen and (min-width: 1032px), print {
  .main-visual__image ._badge {
    left: min(5.523255814vw, 104px);
  }
}
@media only screen and (max-width: 1031px) {
  .main-visual__image ._badge {
    width: 126px;
    height: 156px;
    border-width: 5px;
    top: -90px;
    right: 4.2666666667vw;
  }
}
.main-visual__image ._badge ._text1 {
  font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
  font-size: 18px;
  line-height: 1.39;
  letter-spacing: 0.16em;
}
@media only screen and (max-width: 1031px) {
  .main-visual__image ._badge ._text1 {
    font-size: 12px;
    line-height: 1.35;
  }
}
.main-visual__image ._badge ._text2 {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 9px;
  line-height: 1;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-top: 20px;
}
@media only screen and (max-width: 1031px) {
  .main-visual__image ._badge ._text2 {
    font-size: 7px;
    margin-top: 6px;
  }
}
.main-visual__image ._badge ._text2::before {
  content: "";
  display: block;
  width: 28px;
  margin: 0 auto 23px;
  border-top: 1px solid #a2a2a2;
}
@media only screen and (max-width: 1031px) {
  .main-visual__image ._badge ._text2::before {
    width: 14px;
    margin-bottom: 10px;
  }
}
.main-visual__image ._badge ._text3 {
  font-size: 13px;
  line-height: 1.54;
  font-weight: bold;
  margin-top: 5px;
}
@media only screen and (max-width: 1031px) {
  .main-visual__image ._badge ._text3 {
    font-size: 9px;
    margin-top: 2px;
    line-height: 1.4;
  }
}

.main-visual__copyright {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 11px;
  line-height: 1;
  letter-spacing: 0.08em;
  writing-mode: vertical-rl;
  -webkit-text-orientation: sideways;
  text-orientation: sideways;
  font-feature-settings: normal;
  position: absolute;
  right: 35px;
  top: 25%;
}
@media only screen and (max-width: 1031px) {
  .main-visual__copyright {
    display: none;
  }
}

.section__title {
  font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
  font-size: 36px;
  line-height: 1.2;
  letter-spacing: 4px;
  text-align: center;
  margin-bottom: 80px;
}
@media only screen and (max-width: 1031px) {
  .section__title {
    font-size: 22px;
    margin-bottom: 25px;
  }
}
.section__title::before {
  content: "";
  display: block;
  width: 80px;
  margin: 0 auto 36px;
  border-top: 1px solid #222;
}
@media only screen and (max-width: 1031px) {
  .section__title::before {
    width: 48px;
    margin-bottom: 19px;
  }
}

.about__section {
  position: relative;
}
@media only screen and (min-width: 1032px), print {
  .about__section {
    margin-top: 203px;
  }
}
@media only screen and (max-width: 1031px) {
  .about__section {
    padding-top: 90px;
  }
}
.about__section::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: -465px;
  left: 0;
  z-index: -1;
}
@media only screen and (min-width: 1032px), print {
  .about__section::before {
    background: url(https://img.furusato-tax.jp/img/x/city/files/09367/meibutsuchoice_entry_about_img_map_pc.png) no-repeat calc(50% + 90px) 0/1500px auto;
  }
}
@media only screen and (max-width: 1031px) {
  .about__section::before {
    background: url(https://img.furusato-tax.jp/img/x/city/files/09367/meibutsuchoice_entry_about_img_map_sp.png) no-repeat calc(50% + 20px) 10px/432px auto;
    top: 0;
  }
}
@media only screen and (min-width: 1032px) {
  .about__section::before {
    opacity: 0;
    visibility: hidden;
    transform: translateY(50px);
  }
}
@media only screen and (min-width: 1032px) {
  .about__section.is-enter::before {
    animation: keyFadeSlideIn 1s ease-out both;
  }
}

.about__lead {
  text-align: justify;
  text-justify: inter-character;
  max-width: 644px;
  margin: 0 auto;
}
@media only screen and (max-width: 1031px) {
  .about__lead {
    padding: 0 16px;
  }
}

.about__site {
  margin: 40px auto 0;
}
@media only screen and (max-width: 1031px) {
  .about__site {
    margin: 35px 16px;
  }
}
.about__site p {
  text-align: justify;
  text-justify: inter-character;
  box-sizing: border-box;
  font-size: 16px;
  line-height: 1.5;
  border: 1px solid #222;
  background-color: #fff;
  max-width: 644px;
  margin: auto;
  padding: 10px 8px;
}
@media only screen and (max-width: 1031px) {
  .about__site p {
    padding: 8px;
  }
}
.about__site p a {
  font-weight: bold;
  position: relative;
}
.about__site p a::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  border-right: 1px solid #222;
  border-bottom: 1px solid #222;
  transform: rotate(-45deg);
  margin: 0 5px 2px 0;
}
.about__site p span {
  font-size: 12px;
}

.about__item {
  margin-top: 300px;
}
@media only screen and (max-width: 1031px) {
  .about__item {
    margin-top: 150px;
    padding: 0 16px;
  }
}
@media only screen and (min-width: 1032px), print {
  .about__item {
    display: flex;
    justify-content: space-between;
  }
}
.about__item + .about__item {
  margin-top: 110px;
}
@media only screen and (max-width: 1031px) {
  .about__item + .about__item {
    margin-top: 40px;
  }
}
@media only screen and (min-width: 1032px), print {
  .about__item ._text-set {
    flex-basis: 34%;
    padding-top: 30px;
  }
}
.about__item ._title {
  font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
  font-size: 41px;
  line-height: 1.2;
  font-weight: normal;
  writing-mode: vertical-rl;
  -webkit-text-orientation: upright;
  text-orientation: upright;
  font-feature-settings: normal;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 74px;
  min-height: 144px;
  margin-bottom: 50px;
  padding-bottom: 12px;
  position: relative;
}
@media only screen and (max-width: 1031px) {
  .about__item ._title {
    font-size: 24px;
    width: 48px;
    min-height: 94px;
    margin-bottom: 32px;
  }
}
.about__item ._title::after {
  content: "";
  width: 100%;
  border-top: 1px solid #222;
  position: absolute;
  bottom: 0;
  left: 0;
}
.about__item ._title ._small {
  color: #acacac;
  font-size: 13px;
  font-family: "Roboto Condensed", sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  -webkit-text-orientation: sideways;
  text-orientation: sideways;
  display: block;
  margin-top: 3px;
}
@media only screen and (max-width: 1031px) {
  .about__item ._title ._small {
    font-size: 9px;
    margin-top: 2px;
  }
}
.about__item ._catch {
  font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
  font-size: 24px;
  line-height: 1.67;
  font-weight: bold;
  letter-spacing: 1px;
  margin-bottom: 18px;
}
@media only screen and (max-width: 1031px) {
  .about__item ._catch {
    font-size: 22px;
    line-height: 1.55;
    margin-bottom: 14px;
  }
}
.about__item ._text {
  text-align: justify;
  text-justify: inter-character;
}
@media only screen and (min-width: 1032px), print {
  .about__item ._image {
    flex-basis: 60.2%;
  }
}
@media only screen and (max-width: 1031px) {
  .about__item ._image {
    margin-top: 20px;
  }
}
.about__item:nth-of-type(odd) ._title ._small {
  margin-left: 8px;
}
@media only screen and (min-width: 1032px), print {
  .about__item:nth-of-type(odd) ._image {
    margin-right: max(-5.523255814vw, -104px);
  }
}
@media only screen and (max-width: 1031px) {
  .about__item:nth-of-type(odd) ._image {
    margin-right: calc(-4.2666666667vw - 16px);
  }
}
@media only screen and (min-width: 1032px), print {
  .about__item:nth-of-type(even) {
    flex-direction: row-reverse;
  }
}
.about__item:nth-of-type(even) ._title {
  flex-direction: column-reverse;
  margin-left: auto;
}
.about__item:nth-of-type(even) ._title ._small {
  margin-right: 8px;
}
@media only screen and (min-width: 1032px), print {
  .about__item:nth-of-type(even) ._image {
    flex-direction: row-reverse;
    margin-left: max(-5.523255814vw, -104px);
  }
}
@media only screen and (max-width: 1031px) {
  .about__item:nth-of-type(even) ._image {
    margin-left: calc(-4.2666666667vw - 16px);
  }
}

.feature__section {
  background: url(https://img.furusato-tax.jp/img/x/city/files/09367/meibutsuchoice_entry_bg_texture.jpg) no-repeat center 0/cover;
  margin-top: 120px;
  padding: 107px 0;
}
@media only screen and (max-width: 1031px) {
  .feature__section {
    margin-top: 56px;
    padding: 65px 0 58px;
  }
}

.feature__block-title {
  font-size: 24px;
  font-weight: normal;
  text-align: center;
  margin-bottom: 40px;
}
@media only screen and (max-width: 1031px) {
  .feature__block-title {
    font-size: 18px;
  }
}
.feature__block-title ._em {
  color: #c17b0c;
  font-weight: bold;
}
@media only screen and (max-width: 1031px) {
  .feature__block-title ._em {
    display: block;
  }
}

@media only screen and (max-width: 1031px) {
  .feature__block1 {
    margin-top: 48px;
  }
}
@media only screen and (min-width: 1032px), print {
  .feature__block1 ._column {
    display: flex;
    justify-content: space-between;
    padding-top: min(2.9925187032vw, 48px);
  }
}
@media only screen and (max-width: 1031px) {
  .feature__block1 ._column {
    max-width: 343px;
    margin: 60px auto 0;
  }
}
.feature__block1 ._item {
  background-color: #fff;
  box-sizing: border-box;
  text-align: center;
  padding: 0 10px 30px;
}
@media only screen and (min-width: 1032px), print {
  .feature__block1 ._item {
    display: flex;
    flex-direction: column;
    flex-basis: min(27.5561097257vw, 442px);
  }
}
@media print {
  .feature__block1 ._item {
    flex-basis: 282px;
  }
}
@media only screen and (max-width: 1031px) {
  .feature__block1 ._item {
    margin-top: 40px;
    padding: 1px 8.1632653061vw 18px;
  }
}
.feature__block1 ._title {
  background: url(/images/feature_bg_title.svg) no-repeat center 0/min(17.8304239401vw, 286px) auto;
  margin-top: max(-2.9925187032vw, -48px);
  padding-top: min(4.2394014963vw, 68px);
}
@media only screen and (max-width: 1031px) {
  .feature__block1 ._title {
    background-size: 180px auto;
    margin-top: -31px;
    padding-top: 44px;
  }
}
.feature__block1 ._title ._num {
  font-family: "BebasNeue-Regular", sans-serif;
  font-size: min(3.4912718204vw, 56px);
  line-height: 1;
  display: block;
  margin-top: 5px;
}
.feature__block1 ._title ._num.-spacing1 {
  letter-spacing: 2px;
}
@media only screen and (max-width: 1031px) {
  .feature__block1 ._title ._num {
    font-size: 41px;
    margin-bottom: 10px;
  }
}
.feature__block1 ._title ._border {
  font-size: 32px;
  line-height: 1.33;
  font-weight: normal;
  display: inline-block;
  margin: 14px 0 24px;
  padding-bottom: 5px;
  border-bottom: 2px solid #c17b0c;
}
@media only screen and (max-width: 1031px) {
  .feature__block1 ._title ._border {
    font-size: 28px;
    margin-bottom: 17px;
    padding-bottom: 3px;
  }
}
.feature__block1 ._text {
  line-height: 1.75;
  margin-bottom: 12px;
}
@media only screen and (max-width: 1031px) {
  .feature__block1 ._text {
    font-size: 16px;
    line-height: 1.5;
  }
}
.feature__block1 ._box {
  font-size: min(14px + 2 * (100vw - 1032px) / 572, 16px);
  line-height: 1;
  font-weight: bold;
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  height: 3em;
  padding: 0 min(8px + 7 * (100vw - 1032px) / 572, 15px);
  border: 1px solid #707070;
}
@media only screen and (max-width: 1031px) {
  .feature__block1 ._box {
    padding: 0 12px;
  }
}
.feature__block1 ._box ._num {
  font-family: "BebasNeue-Regular", sans-serif;
  font-size: 150%;
  margin-bottom: -0.12em;
}
.feature__block1 ._box ._percent {
  font-family: "BebasNeue-Regular", sans-serif;
  font-size: 118.75%;
  margin-bottom: -0.3em;
}
.feature__block1 ._box.-plus {
  margin-left: 30px;
  position: relative;
}
.feature__block1 ._box.-plus::before, .feature__block1 ._box.-plus::after {
  content: "";
  width: 14px;
  border-top: 2px solid #222;
  position: absolute;
  left: -23px;
  top: calc(50% - 1px);
}
.feature__block1 ._box.-plus::after {
  transform: rotate(90deg);
}
.feature__block1 ._image {
  margin-top: auto;
}
.feature__block1 ._image img {
  width: min(130px + 72 * (100vw - 1032px) / 572, 202px);
}
@media only screen and (max-width: 1031px) {
  .feature__block1 ._image img {
    width: 158px;
  }
}

.feature__block2 {
  margin-top: 72px;
}
@media only screen and (max-width: 1031px) {
  .feature__block2 {
    margin-top: 48px;
  }
}
.feature__block2 ._item {
  background-color: #fff;
  box-sizing: border-box;
  padding: 50px 0;
}
@media only screen and (min-width: 1032px), print {
  .feature__block2 ._item {
    display: flex;
    align-items: center;
  }
}
@media only screen and (max-width: 1031px) {
  .feature__block2 ._item {
    padding: 40px 7.2vw;
  }
}
.feature__block2 ._item:nth-child(n+2) {
  margin-top: 12px;
}
.feature__block2 ._title {
  font-size: 28px;
  line-height: 1.25;
  font-weight: normal;
  text-align: center;
}
@media only screen and (min-width: 1032px), print {
  .feature__block2 ._title {
    box-sizing: border-box;
    flex: 0 0 min(29.8628428928vw, 479px);
    border-right: 1px solid #d8d8d8;
  }
}
@media print {
  .feature__block2 ._title {
    flex-basis: 307px;
  }
}
@media only screen and (max-width: 1031px) {
  .feature__block2 ._title {
    font-size: 24px;
  }
}
.feature__block2 ._title ._small {
  font-size: 16px;
  display: block;
  margin-bottom: 6px;
}
@media only screen and (max-width: 1031px) {
  .feature__block2 ._title ._small {
    font-size: 14px;
    margin-bottom: 2px;
  }
}
.feature__block2 ._title ._em {
  font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
  font-weight: bold;
  margin-left: -0.5em;
  margin-right: -0.3em;
}
.feature__block2 ._title ._border {
  line-height: 1.33;
  font-weight: normal;
  display: inline-block;
  padding-bottom: 5px;
  border-bottom: 2px solid #c17b0c;
}
@media only screen and (max-width: 1031px) {
  .feature__block2 ._title ._border {
    padding-bottom: 3px;
  }
}
.feature__block2 ._text {
  font-size: 14px;
  text-align: justify;
  text-justify: inter-character;
  padding: 0 min(60px + 90 * (100vw - 1032px) / 572, 150px) 0 min(40px + 80 * (100vw - 1032px) / 572, 120px);
}
@media print {
  .feature__block2 ._text {
    padding: 0 60px 0 40px;
  }
}
@media only screen and (max-width: 1031px) {
  .feature__block2 ._text {
    margin-top: 24px;
    padding-top: 18px;
    border-top: 1px solid #d8d8d8;
  }
}

.feature-slider__wrap {
  position: relative;
}
@media screen {
  .feature-slider__wrap::before {
    content: "";
    background-color: #fff;
    width: 100%;
    position: absolute;
    top: -1px;
    bottom: -1px;
    z-index: 2;
    transition: opacity 4s;
  }
}
.feature-slider__wrap.is-enter::before {
  opacity: 0;
}

.feature-slider .swiper-wrapper {
  transition-timing-function: linear !important;
}
.feature-slider .swiper-slide {
  width: 530px;
}
@media only screen and (max-width: 1031px) {
  .feature-slider .swiper-slide {
    width: 234px;
  }
}

.information__header {
  box-sizing: border-box;
  padding: 35px 0 0 42.8571428571%;
  position: relative;
}
@media only screen and (max-width: 1031px) {
  .information__header {
    margin-bottom: 40px;
    padding: 75px 0 0 137px;
  }
}

.information__title {
  font-size: 26px;
  font-weight: 500;
  writing-mode: vertical-rl;
  -webkit-text-orientation: upright;
  text-orientation: upright;
  font-feature-settings: normal;
  background-color: #fff;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 152px;
  height: 227px;
  border: 1px solid #222;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 1031px) {
  .information__title {
    font-size: 22px;
    width: 96px;
    height: 148px;
  }
}

.fee__section {
  margin-top: 100px;
}
@media only screen and (max-width: 1031px) {
  .fee__section {
    margin-top: 56px;
  }
}
@media only screen and (min-width: 1032px), print {
  .fee__section .information__header {
    height: 179px;
  }
}

.fee__figure {
  border-top: 1px solid #d8d8d8;
  padding-top: 47px;
}
@media only screen and (min-width: 1032px), print {
  .fee__figure {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}
@media only screen and (max-width: 1031px) {
  .fee__figure {
    padding-top: 24px;
  }
}
.fee__figure + .fee__figure {
  margin-top: 50px;
}
@media only screen and (max-width: 1031px) {
  .fee__figure + .fee__figure {
    margin-top: 24px;
  }
}

.fee__figure-title {
  font-size: 28px;
  line-height: 1.25;
  font-weight: normal;
  text-align: center;
}
@media only screen and (min-width: 1032px), print {
  .fee__figure-title {
    flex: 0 0 210px;
  }
}
@media only screen and (max-width: 1031px) {
  .fee__figure-title {
    font-size: 24px;
    margin-bottom: 24px;
  }
}
.fee__figure-title ._em {
  font-family: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
  font-weight: bold;
}
@media only screen and (min-width: 1032px), print {
  .fee__figure-title ._em {
    display: block;
  }
}
.fee__figure-title ._small {
  font-size: 16px;
  display: block;
  margin-bottom: 12px;
}
@media only screen and (max-width: 1031px) {
  .fee__figure-title ._small {
    font-size: 14px;
    margin-bottom: 4px;
  }
}

.fee__figure-list {
  display: flex;
}
@media only screen and (min-width: 1032px), print {
  .fee__figure-list {
    flex-basis: 77.0714285714%;
    min-height: 337px;
  }
}
@media only screen and (max-width: 1031px) {
  .fee__figure-list {
    flex-wrap: wrap;
  }
}
@media only screen and (min-width: 1032px), print {
  .fee__figure-list ._item {
    flex-basis: 50%;
  }
}
@media only screen and (min-width: 1032px), print {
  .fee__figure-list ._item:nth-child(n+2) {
    margin-left: min(16px + 10 * (100vw - 1032px) / 572, 26px);
  }
}
.fee__figure-list ._title {
  color: #fff;
  line-height: 1.2;
  font-weight: bold;
  background-color: #000;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  height: min(4.114713217vw, 66px);
  position: relative;
}
@media only screen and (max-width: 1031px) {
  .fee__figure-list ._title {
    height: 36px;
  }
}
.fee__figure-list ._title::after {
  content: "";
  border-width: min(1.1221945137vw, 18px) min(0.6234413965vw, 10px) 0;
  border-style: solid;
  border-color: #000 transparent;
  position: absolute;
  bottom: max(-1.0598503741vw, -17px);
}
.fee__figure-list ._body {
  background-color: #f3f3f3;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: calc(100% - min(4.114713217vw, 66px));
  margin-top: min(1.4962593516vw, 24px);
  padding: 24px min(1.6209476309vw, 26px) 18px;
  border-radius: 32px;
}
@media only screen and (max-width: 1031px) {
  .fee__figure-list ._body {
    height: calc(100% - 48px);
    margin-top: 12px;
    padding: 24px 16px;
    border-radius: 16px;
  }
}
.fee__figure-list ._price ._large {
  color: #c17b0c;
  line-height: 1;
  font-weight: bold;
  display: block;
  text-align: center;
}
.fee__figure-list ._price ._num,
.fee__figure-list ._price ._percent {
  font-family: "BebasNeue-Regular", sans-serif;
}
.fee__figure-list ._price ._yen {
  font-size: min(29px + 17 * (100vw - 1032px) / 572, 46px);
  vertical-align: 3%;
  margin-right: -0.05em;
}
@media only screen and (max-width: 1031px) {
  .fee__figure-list ._price ._yen {
    font-size: 32px;
  }
}
.fee__figure-list ._price ._num {
  font-size: min(67px + 38 * (100vw - 1032px) / 572, 105px);
}
@media only screen and (max-width: 1031px) {
  .fee__figure-list ._price ._num {
    font-size: 80px;
  }
}
.fee__figure-list ._price ._percent {
  font-size: min(35px + 22 * (100vw - 1032px) / 572, 57px);
}
@media only screen and (max-width: 1031px) {
  .fee__figure-list ._price ._percent {
    font-size: 40px;
  }
}
.fee__figure-list ._price ._mark {
  font-size: min(35px + 22 * (100vw - 1032px) / 572, 57px);
  vertical-align: 25%;
}
@media only screen and (max-width: 1031px) {
  .fee__figure-list ._price ._mark {
    font-size: 40px;
  }
}
@media only screen and (max-width: 1031px) {
  .fee__figure-list ._price ._text-large {
    font-size: 18px;
  }
}
.fee__figure-list ._price ._text-large::before {
  content: "";
  display: block;
  border-top: 2px solid #d8d8d8;
  margin-bottom: 0.6em;
}
@media only screen and (max-width: 1031px) {
  .fee__figure-list ._price ._text-large::before {
    border-top-width: 1px;
  }
}
.fee__figure-list ._text-large {
  font-size: min(17px + 8 * (100vw - 1032px) / 572, 25px);
  line-height: 1.2;
  font-weight: bold;
  display: block;
  text-align: center;
}
@media only screen and (max-width: 1031px) {
  .fee__figure-list ._text-large {
    font-size: 16px;
  }
}
.fee__figure-list ._text {
  font-size: 13px;
  line-height: 1.54;
  text-align: justify;
  text-justify: inter-character;
}
@media only screen and (max-width: 1031px) {
  .fee__figure-list ._text {
    font-size: 12px;
  }
}
.fee__figure-list ._note {
  font-size: min(13px + 2 * (100vw - 1032px) / 572, 15px);
  line-height: 1.54;
}
@media only screen and (max-width: 1031px) {
  .fee__figure-list ._note {
    font-size: 12px;
  }
}

@media only screen and (max-width: 1031px) {
  .fee__figure.-figure1 .fee__figure-list {
    justify-content: space-between;
  }
}
@media only screen and (max-width: 1031px) {
  .fee__figure.-figure1 .fee__figure-list ._item {
    flex-basis: calc(50% - 5px);
  }
}
@media only screen and (max-width: 1031px) {
  .fee__figure.-figure1 .fee__figure-list ._item:nth-child(n+3) {
    margin-top: 16px;
  }
}
@media only screen and (max-width: 1031px) {
  .fee__figure.-figure2 .fee__figure-list ._item {
    flex-basis: 100%;
  }
}
@media only screen and (max-width: 1031px) {
  .fee__figure.-figure2 .fee__figure-list ._item:nth-child(n+2) {
    margin-top: 16px;
  }
}

.flow__section {
  background: url(https://img.furusato-tax.jp/img/x/city/files/09367/meibutsuchoice_entry_bg_texture.jpg) no-repeat center 0/cover;
  margin-top: 75px;
  padding-bottom: calc(6.8578553616vw + 145px);
  position: relative;
}
@media only screen and (max-width: 1031px) {
  .flow__section {
    margin-top: 48px;
    padding-bottom: calc(11.7333333333vw + 60px);
  }
}
.flow__section::before {
  content: "";
  background-color: #fff;
  width: 100%;
  height: 44px;
  position: absolute;
  top: -1px;
  left: 0;
}
@media only screen and (max-width: 1031px) {
  .flow__section::before {
    height: 20px;
  }
}
.flow__section .information__header {
  margin-bottom: 70px;
  padding-top: 113px;
}
@media only screen and (max-width: 1031px) {
  .flow__section .information__header {
    margin-bottom: 40px;
    padding-top: 75px;
  }
}

.flow__figure-list {
  position: relative;
}
@media only screen and (min-width: 1032px), print {
  .flow__figure-list {
    display: flex;
    height: min(234px + 112 * (100vw - 1032px) / 572, 346px);
    padding-top: 112px;
  }
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list {
    max-width: 274px;
    margin: 0 auto;
    padding: 0 53px 0 16px;
  }
}
.flow__figure-list::after {
  content: "";
  background: repeating-linear-gradient(90deg, #222, #222 4px, transparent 4px, transparent 8px);
  width: min(50.8104738155vw, 815px);
  height: 2px;
  position: absolute;
  top: 70px;
}
@media only screen and (min-width: 1032px), print {
  .flow__figure-list::after {
    left: min(25.8104738155vw, 414px);
  }
}
@media print {
  .flow__figure-list::after {
    width: 523px;
    left: 266px;
  }
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list::after {
    background: repeating-linear-gradient(#222, #222 2px, transparent 2px, transparent 4px);
    width: 1px;
    height: 495px;
    top: 241px;
    right: 32px;
  }
}
.flow__figure-list ._item.-arrow {
  background-color: #fff;
  box-sizing: border-box;
  padding: min(30px + 15 * (100vw - 1032px) / 572, 45px) min(10px + 8 * (100vw - 1032px) / 572, 18px) 24px min(30px + 15 * (100vw - 1032px) / 572, 45px);
  position: relative;
}
@media only screen and (min-width: 1032px), print {
  .flow__figure-list ._item.-arrow {
    flex-basis: min(20.5112219451vw, 329px);
    margin-right: min(5.2992518703vw, 85px);
  }
}
@media print {
  .flow__figure-list ._item.-arrow {
    flex-basis: 210px;
    height: 240px;
    margin-right: 56px;
    padding: 30px 10px 24px 30px;
  }
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._item.-arrow {
    text-align: center;
    padding: 22px 0 0;
    height: 200px;
    margin-bottom: 41px;
  }
}
.flow__figure-list ._item.-arrow::after {
  content: "";
  background-color: #fff;
  position: absolute;
}
@media only screen and (min-width: 1032px), print {
  .flow__figure-list ._item.-arrow::after {
    width: min(4.4887780549vw, 72px);
    height: 100%;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
    top: 0;
    right: max(-4.4825436409vw, -71.9px);
  }
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._item.-arrow::after {
    width: 100%;
    height: 32px;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    bottom: -31.9px;
    left: 0;
  }
}
.flow__figure-list ._title {
  font-size: 26px;
  line-height: 1.2;
  font-weight: bold;
  text-align: center;
  letter-spacing: 1px;
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._title {
    font-size: 24px;
  }
}
.flow__figure-list ._title ._step {
  font-family: "Roboto Condensed", sans-serif;
  font-size: min(11px + 7 * (100vw - 1032px) / 572, 18px);
  line-height: 1;
  display: block;
  margin-bottom: 15px;
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._title ._step {
    font-size: 16px;
  }
}
.flow__figure-list ._title ._step ._num {
  font-family: "BebasNeue-Regular", sans-serif;
  font-size: min(35px + 21 * (100vw - 1032px) / 572, 56px);
  display: block;
  margin-top: 4px;
}
.flow__figure-list ._title ._step ._num.-spacing1 {
  letter-spacing: 2px;
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._title ._step ._num {
    font-size: 44px;
  }
}
.flow__figure-list ._title ._step::after {
  content: "";
  display: block;
  width: min(31px + 17 * (100vw - 1032px) / 572, 48px);
  margin: 5px auto 0;
  border-bottom: 3px solid #d8d8d8;
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._title ._step::after {
    width: 40px;
    border-block-width: 1px;
  }
}
.flow__figure-list ._text {
  line-height: 1.5;
  margin-top: min(12px + 15 * (100vw - 1032px) / 572, 27px);
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._text {
    margin-top: 9px;
  }
}
.flow__figure-list ._period::before, .flow__figure-list ._period::after {
  content: "";
  position: absolute;
}
@media only screen and (min-width: 1032px), print {
  .flow__figure-list ._period::before, .flow__figure-list ._period::after {
    background: repeating-linear-gradient(#222, #222 4px, transparent 4px, transparent 8px);
    width: 2px;
    height: 20px;
    top: -37px;
    left: 0;
  }
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._period::before, .flow__figure-list ._period::after {
    background: repeating-linear-gradient(90deg, #222, #222 2px, transparent 2px, transparent 4px);
    width: 12px;
    height: 1px;
    top: 0;
    right: -20px;
  }
}
.flow__figure-list ._period ._inner {
  text-align: center;
  position: absolute;
}
@media only screen and (min-width: 1032px), print {
  .flow__figure-list ._period ._inner {
    box-sizing: border-box;
    line-height: 36px;
    width: min(123px + 69 * (100vw - 1032px) / 572, 192px);
    padding-bottom: 2px;
    border: 2px solid #222;
    border-bottom: none;
    top: -112px;
    left: calc(50% + min(2.493765586vw, 40px));
    transform: translateX(-50%);
  }
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._period ._inner {
    font-size: 13px;
    writing-mode: vertical-rl;
    -webkit-text-orientation: upright;
    text-orientation: upright;
    font-feature-settings: normal;
    line-height: 19px;
    width: 23px;
    height: 97px;
    padding-right: 2px;
    border: 1px solid #707070;
    top: calc(50% + 20px);
    right: -53px;
    transform: translateY(-50%);
  }
}
@media only screen and (min-width: 1032px), print {
  .flow__figure-list ._period ._inner::after {
    content: "";
    background: url(/images/flow_bg_period.svg) no-repeat center bottom/240px auto;
    width: 100%;
    height: 13px;
    position: absolute;
    bottom: -11px;
    left: 0;
  }
}
.flow__figure-list ._note {
  font-size: 13px;
  line-height: 1.5;
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._note {
    font-size: 12px;
    text-align-last: left;
    top: calc(100% + 38px);
  }
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._item.-step3 {
    height: 222px;
  }
}
@media only screen and (min-width: 1032px), print {
  .flow__figure-list ._item.-step3 ._period::before {
    left: max(-0.8104738155vw, -13px);
  }
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._item.-step3 ._period::before {
    top: -6px;
  }
}
@media only screen and (min-width: 1032px), print {
  .flow__figure-list ._item.-step3 ._period::after {
    left: auto;
    right: max(-4.4887780549vw, -72px);
  }
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._item.-step3 ._period::after {
    top: auto;
    bottom: -32px;
  }
}
.flow__figure-list ._item.-step4 {
  color: #fff;
  font-size: min(19px + 6 * (100vw - 1032px) / 572, 25px);
  line-height: 1;
  font-weight: bold;
  background-color: #000;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (min-width: 1032px), print {
  .flow__figure-list ._item.-step4 {
    writing-mode: vertical-rl;
    -webkit-text-orientation: upright;
    text-orientation: upright;
    font-feature-settings: normal;
    flex: 0 0 min(7.9800498753vw, 128px);
    margin-left: auto;
  }
}
@media print {
  .flow__figure-list ._item.-step4 {
    flex-basis: 83px;
  }
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._item.-step4 {
    font-size: 20px;
    height: 96px;
    margin-top: 108px;
  }
}
.flow__figure-list ._item.-step4 ._title {
  letter-spacing: 2px;
  position: relative;
}
@media only screen and (min-width: 1032px), print {
  .flow__figure-list ._item.-step4 ._title {
    font-size: 24px;
    padding-top: min(30px + 6 * (100vw - 1032px) / 572, 36px);
  }
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._item.-step4 ._title {
    padding: 0 0 3px 38px;
  }
}
.flow__figure-list ._item.-step4 ._title::before {
  content: "";
  background-color: #fff;
  width: min(26px + 4 * (100vw - 1032px) / 572, 30px);
  height: min(26px + 4 * (100vw - 1032px) / 572, 30px);
  border-radius: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._item.-step4 ._title::before {
    width: 28px;
    height: 28px;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
}
.flow__figure-list ._item.-step4 ._title::after {
  content: "";
  background: url(/images/icon_check.svg) no-repeat center/contain;
  width: min(14px + 2 * (100vw - 1032px) / 572, 16px);
  height: min(26px + 4 * (100vw - 1032px) / 572, 30px);
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width: 1031px) {
  .flow__figure-list ._item.-step4 ._title::after {
    width: 28px;
    height: 12px;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
}

.footer__inner {
  color: #fff;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-size: cover;
  mask-size: cover;
  box-sizing: border-box;
}
@media only screen and (min-width: 1032px), print {
  .footer__inner {
    background: #b98d45 url(/images/footer_bg_pc.svg) no-repeat calc(50% - 24vw) 57px/min(59.9750623441vw, 962px) auto;
    -webkit-mask-box-image: url(/images/footer_mask_pc.svg);
    -webkit-mask-image: url(/images/footer_mask_pc.svg);
    mask-image: url(/images/footer_mask_pc.svg);
    height: min(69.0773067332vw, 1108px);
    margin-top: -6.8578553616vw;
  }
}
@media only screen and (max-width: 1031px) {
  .footer__inner {
    background: #b98d45 url(/images/footer_bg_sp.svg) no-repeat left calc(50% + 13px) bottom 90px/439px auto;
    -webkit-mask-box-image: url(/images/footer_mask_sp.svg);
    -webkit-mask-image: url(/images/footer_mask_sp.svg);
    mask-image: url(/images/footer_mask_sp.svg);
    margin-top: -11.7333333333vw;
    padding-bottom: 158px;
  }
}
.footer__inner a {
  color: #fff;
}

@media only screen and (min-width: 1032px), print {
  .footer__column {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
  }
}
@media only screen and (min-width: 1032px), print {
  .footer__column ._text-set {
    box-sizing: border-box;
    flex-basis: min(42.2693266833vw, 678px);
    margin-top: 20px;
    padding-left: min(7.4812967581vw, 120px);
  }
}
@media only screen and (max-width: 1031px) {
  .footer__column ._text-set {
    text-align: center;
    margin-top: 94px;
  }
}

@media only screen and (max-width: 1031px) {
  .footer__logo img {
    width: 197px;
  }
}

.footer__copyright {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 12px;
  letter-spacing: 0.08em;
  margin-top: 24px;
}
@media only screen and (max-width: 1031px) {
  .footer__copyright {
    margin-top: 27px;
  }
}

@media only screen and (min-width: 1032px), print {
  .footer__pagetop {
    margin-top: 88px;
  }
}
@media only screen and (max-width: 1031px) {
  .footer__pagetop {
    margin-top: 35px;
  }
}
.footer__pagetop a {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 108px;
  height: 108px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 100%;
}
@media only screen and (max-width: 1031px) {
  .footer__pagetop a {
    width: 72px;
    height: 72px;
    margin-left: auto;
  }
}
.footer__pagetop a:hover {
  background-color: rgba(255, 255, 255, 0.2);
}
@media only screen and (max-width: 1031px) {
  .footer__pagetop img {
    width: 13px;
  }
}

.footer-slider__wrap {
  display: flex;
  justify-content: space-between;
}
@media only screen and (min-width: 1032px), print {
  .footer-slider__wrap {
    flex-basis: min(42.5810473815vw, 683px);
  }
}
@media only screen and (max-width: 1031px) {
  .footer-slider__wrap {
    max-width: 343px;
    margin: 0 auto;
  }
}

.footer-slider {
  width: 47.25%;
  height: min(69.0773067332vw, 1108px);
  margin: 0;
}
@media only screen and (max-width: 1031px) {
  .footer-slider {
    height: 385px;
  }
}
.footer-slider .swiper-wrapper {
  transition-timing-function: linear !important;
}
.footer-slider .swiper-slide {
  height: 0;
  margin-top: 9.26%;
  padding-top: 100%;
  position: relative;
}
.footer-slider .swiper-slide img {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.footer-slider.-slider2 {
  transform: scaleY(-1);
}
.footer-slider.-slider2 .swiper-slide {
  transform: scaleY(-1);
}

.floatiing-wrap {
  background-color: rgba(255, 255, 255, 0.9);
  width: 100%;
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 11;
}
.floatiing-wrap a {
  color: #fff;
}
@media print {
  .floatiing-wrap {
    position: absolute;
  }
}

.floatiing__column {
  box-sizing: border-box;
}
@media only screen and (min-width: 1032px), print {
  .floatiing__column {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 90px;
    padding: 13px 0;
  }
}
@media only screen and (max-width: 1031px) {
  .floatiing__column {
    height: 72px;
    padding: 8px;
  }
}

.floatiing__text {
  line-height: 1.33;
  font-weight: bold;
}
@media only screen and (min-width: 1032px), print {
  .floatiing__text {
    font-size: 14px;
    margin-right: 10px;
  }
}
@media only screen and (max-width: 1031px) {
  .floatiing__text {
    display: none;
  }
}

.floatiing__button {
  line-height: 1.14;
  font-weight: bold;
  display: flex;
  height: 100%;
}
@media only screen and (min-width: 1032px), print {
  .floatiing__button {
    font-size: 13px;
    flex-basis: 610px;
  }
}
@media only screen and (max-width: 1031px) {
  .floatiing__button {
    font-size: 11px;
  }
}
@media only screen and (min-width: 1032px), print {
  .floatiing__button ._item {
    flex: 0 0 170px;
    margin-left: 10px;
  }
}
@media only screen and (max-width: 1031px) {
  .floatiing__button ._item {
    flex: 86 86 86px;
  }
}
@media only screen and (max-width: 1031px) {
  .floatiing__button ._item:nth-child(n+2) {
    margin-left: 4px;
  }
}
.floatiing__button a {
  color: #fff;
  background-color: #c17b0c;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  height: 100%;
  border-radius: 8px;
  border: 2px solid #c17b0c;
}
@media only screen and (min-width: 1032px), print {
  .floatiing__button a:hover {
    color: #c17b0c;
    background-color: #fff;
  }
}
@media only screen and (min-width: 1032px), print {
  .floatiing__button .-apply {
    font-size: 18px;
    flex: 0 0 240px;
  }
}
@media only screen and (max-width: 1031px) {
  .floatiing__button .-apply {
    font-size: 14px;
    flex: 178 178 178px;
  }
}
.floatiing__button .-apply a {
  background-color: #ad0003;
  border-color: #ad0003;
}
@media only screen and (min-width: 1032px), print {
  .floatiing__button .-apply a:hover {
    color: #ad0003;
    background-color: #fff;
  }
}

@media screen {
  .js-scroll-enter.animation__fade-in {
    opacity: 0;
    visibility: hidden;
  }
  .js-scroll-enter.animation__fade-in.is-enter {
    animation: keyFadeIn 3s ease-out both;
  }
}
@media only screen and (min-width: 1032px) {
  .js-scroll-enter.animation__fade-slide {
    opacity: 0;
    visibility: hidden;
    transform: translateY(50px);
  }
}
@media only screen and (min-width: 1032px) {
  .js-scroll-enter.animation__fade-slide.is-enter {
    animation: keyFadeSlideIn 1s ease-out both;
  }
}
