@charset "UTF-8";
/*----------------------------------------------------------------------
------------------------------------------------------------------------

File Name: top.scss

------------------------------------------------------------------------
----------------------------------------------------------------------*/
/*----------------------------------------------------------------------
------------------------------------------------------------------------
目次

1.	共通使用変数定義
2.	ブラウザデフォルトスタイルリセット
3.	HTMLタグ
4.	container
5.	共通部分
6.	header
7.	content
8.	main
9.	sub
10.	footer
11.	ページ別個別設定

------------------------------------------------------------------------
----------------------------------------------------------------------*/
/*----------------------------------------------------------------------
1.	共通使用変数定義
----------------------------------------------------------------------*/
/*----------------------------------------------------------------------
2.	ブラウザデフォルトスタイルリセット
----------------------------------------------------------------------*/
body,
h1, h2, h3, h4, h5, h6,
div,
p,
ul, ol, dl,
form, fieldset,
table,
address,
blockquote,
noscript,
pre,
tr,
td,
input,
textarea {
  margin: 0;
  padding: 0;
  line-height: 1;
  font-style: normal;
}

body {
  font-size: 10px;
  font-family: "Noto Sans JP", sans-serif;
}

* html body {
  font-size: 62.5%;
}

* + html body {
  font-size: 62.5%;
}

/* start \*/
html:\66irst-child body {
  font-size: 62.5%;
}

/* end */
body:first-of-type {
  font-size: 62.5%;
}

body > iframe {
  display: none;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 1em;
  font-weight: normal;
}

small {
  font-size: 1em;
}

mark {
  background: none;
}

fieldset {
  border: none;
}

legend {
  display: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0px;
  font-size: inherit;
  font: 100%;
}

li {
  list-style-type: none;
}

dd {
  margin: 0;
}

a,
abbr,
acronym,
em,
strong,
span,
img,
sub,
sup,
input,
button,
textarea,
select,
label,
caption {
  font-weight: normal;
  font-style: normal;
}

a {
  text-decoration: none;
}

img {
  border: none;
  vertical-align: bottom;
}
@media screen and (max-width: 768px) {
  img {
    width: 100%;
  }
}

caption, th {
  font-weight: normal;
  text-align: left;
}

th, td {
  padding: 0px;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
}

textarea {
  vertical-align: top;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

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

/*----------------------------------------------------------------------
3.	HTMLタグ
----------------------------------------------------------------------*/
html,
body {
  height: 100%;
}
@media screen and (min-width: 769px) {
  html,
  body {
    min-width: 1100px;
  }
}

html {
  font-size: 100%;
}

body {
  -webkit-text-size-adjust: 100%;
  color: #3B1513;
  font-weight: 500;
}
body * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
body ::selection {
  color: #F7F7F7;
  background: #3b1513;
  /* Safari */
}
body ::-moz-selection {
  color: #F7F7F7;
  background: #3b1513;
  /* Firefox */
}

a, a:before, a:after {
  -moz-transition: all 0.15s linear;
  -webkit-transition: all 0.15s linear;
  transition: all 0.15s linear;
}
a > * {
  -moz-transition: all 0.15s linear;
  -webkit-transition: all 0.15s linear;
  transition: all 0.15s linear;
}
a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
a:hover > * {
  text-decoration: none;
}

/*----------------------------------------------------------------------
4.	container
----------------------------------------------------------------------*/
#container {
  position: relative;
  min-height: 100%;
}
* html #container {
  height: 100%;
}
body > #container {
  height: auto;
}
@media screen and (max-width: 768px) {
  .container__wrapper {
    padding-bottom: 24%;
  }
}

/*----------------------------------------------------------------------
5.	共通部分
----------------------------------------------------------------------*/
.fll {
  float: left;
}

.flr {
  float: right;
}

@media screen and (min-width: 769px) {
  .sp_none {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .sp_none {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  .pc_none {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .pc_none {
    display: block;
  }
}

.right-nav {
  display: none;
  position: fixed;
  bottom: 15px;
  right: 15px;
  z-index: 1000;
}
@media screen and (max-width: 1200px) {
  .right-nav {
    bottom: 5px;
    right: 5px;
  }
}
@media screen and (max-width: 768px) {
  .right-nav {
    bottom: 100px;
    right: 8px;
  }
}
.right-nav a {
  -moz-transition: opacity 0.15s linear;
  -webkit-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear;
  display: block;
}
.right-nav a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
.right-nav img {
  width: 80px;
  height: 80px;
}
@media screen and (max-width: 1200px) {
  .right-nav img {
    width: 60px;
    height: 60px;
  }
}
@media screen and (max-width: 768px) {
  .right-nav img {
    width: 45px;
    height: 45px;
  }
}

/*----------------------------------------------------------------------
6.	#header
----------------------------------------------------------------------*/
.ticket_bnr_anker {
  display: block;
}
.ticket_bnr {
  position: fixed;
  z-index: 10;
  top: 150px;
  right: 0;
}
@media screen and (max-width:480px) {
  .ticket_bnr {
    top: unset;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    z-index: 1000;
  }
}
.ticket_bnr img {
  width: 100%;
  height: auto;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
}
@media screen and (max-width:1200px) {
  .ticket_bnr img {
    width: 80px;
  }
}
@media screen and (max-width:480px) {
  .ticket_bnr img {
    width: 100%;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    box-shadow: 0px -3px 6px rgba(0, 0, 0, 0.3);
  }
}
.header {
  position: fixed;
  z-index: 10000;
  width: 100%;
  background-color: #5c3735;
  *zoom: 1;
  filter: progid:DXImageTransform.Microsoft.gradient(gradientType=1, startColorstr='#FF5C3735', endColorstr='#FF3B1513');
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIyNSUiIHN0b3AtY29sb3I9IiM1YzM3MzUiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMzYjE1MTMiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA=');
  background-size: 100%;
  background-image: -moz-linear-gradient(left, #5c3735 25%, #3b1513 100%);
  background-image: -webkit-linear-gradient(left, #5c3735 25%, #3b1513 100%);
  background-image: linear-gradient(to right, #5c3735 25%, #3b1513 100%);
}
@media screen and (max-width: 768px) {
  .header {
    top: 0;
  }
}
.header:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  width: 100%;
  height: 6px;
  margin: auto;
  background-color: #96802d;
  *zoom: 1;
  filter: progid:DXImageTransform.Microsoft.gradient(gradientType=1, startColorstr='#FF96802D', endColorstr='#FFBCAB5E');
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzk2ODAyZCIvPjxzdG9wIG9mZnNldD0iMjAlIiBzdG9wLWNvbG9yPSIjZGRkMTg5Ii8+PHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjYjNhNDZlIi8+PHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjYmNhYjVlIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0idXJsKCNncmFkKSIgLz48L3N2Zz4g');
  background-size: 100%;
  background-image: -moz-linear-gradient(left, #96802d 0%, #ddd189 20%, #b3a46e 100%, #bcab5e 100%);
  background-image: -webkit-linear-gradient(left, #96802d 0%, #ddd189 20%, #b3a46e 100%, #bcab5e 100%);
  background-image: linear-gradient(to right, #96802d 0%, #ddd189 20%, #b3a46e 100%, #bcab5e 100%);
}
@media screen and (max-width: 768px) {
  .header:after {
    height: 3px;
  }
}
.header__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 18px 20px;
}
@media screen and (max-width: 768px) {
  .header__inner {
    padding: 2% 3%;
  }
}
@media screen and (max-width: 768px) {
  .header__logo img {
    width: 120px;
  }
}
@media screen and (max-width: 768px) {
  .header__right {
    display: none;
  }
}
.header__nav {
  margin-bottom: 25px;
}
.header__nav__list {
  display: flex;
}
.header__nav__item {
  padding: 0 20px;
  border-right: 1px dotted #FFF;
}
.header__nav__item:last-child {
  padding-right: 10px;
  border-right: none;
}
.header__nav__item a {
  color: #FFF;
  font-size: 16px;
  font-weight: 500;
}
.header__subnav__list {
  display: flex;
  justify-content: end;
}
.header__subnav__item {
  margin: 0 10px;
}

/*----------------------------------------------------------------------
7.	#content
----------------------------------------------------------------------*/
/*----------------------------------------------------------------------
8.	#main
----------------------------------------------------------------------*/
/*----------------------------------------------------------------------
9.	#sub
----------------------------------------------------------------------*/
/*----------------------------------------------------------------------
10.	#footer
----------------------------------------------------------------------*/
.footer__copyright {
  padding: 20px 0 30px;
  background: #3b1513;
  color: #FFF;
  font-size: 14px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .footer__copyright {
    font-size: 12px;
    font-size: 3.2vw;
  }
}

/*----------------------------------------------------------------------
11.	ページ別個別設定
----------------------------------------------------------------------*/
.main {
  padding-top: 127px;
}
@media screen and (max-width: 768px) {
  .main {
    padding-top: 0;
  }
}

@media screen and (max-width: 768px) {
  .main__visual {
    margin-bottom: 0;
  }
}
.main__visual__title img {
  width: 100%;
}
.main__visual__pic {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}

.upper {
  background: url("../img/upper_bg.jpg") center top no-repeat;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  .upper {
    background: url("../img/upper_bg.jpg") center top 5% no-repeat;
    -moz-background-size: 140%;
    -webkit-background-size: 140%;
    background-size: 140%;
  }
}

.info {
  width: 1000px;
  margin: 0 auto 60px;
  padding: 65px 125px;
  background: url("../img/info_bg.png") center top no-repeat;
  background-size:contain;
}
@media screen and (max-width: 1200px) {
  .info {
    width: 860px;
    padding: 45px 70px 60px;
  }
}
@media screen and (max-width: 768px) {
  .info {
    width: auto;
    margin: 10% 5%;
    padding: 6% 4%;
    background: #FFF;
    border: 1px solid #B68214;
  }
}
.info__title {
  margin-bottom: 20px;
  padding-bottom: 15px;
  font-family: 'EB Garamond', serif;
  font-size: 50px;
  font-weight: bold;
  border-bottom: 1px solid #91682D;
  text-align: center;
}
@media screen and (max-width: 1100px) {
  //.info__title {
  //  width:75%;
  //  margin: 0 auto 20px;
  //  font-size: 30px;
  //}
  //.info__list{
  //  width:75%;
  //  margin: auto;
  //}
}
@media screen and (max-width: 1000px) {
  //.info__title {
  //  width:85%;
  //}
  //.info__list{
  //  width:85%;
  //}
}
@media screen and (max-width: 768px) {
  .info__title {
    width: auto;
    margin-bottom: 5%;
    padding-bottom: 4%;
    font-size: 25px;
    font-size: 6.66667vw;
  }
}
.info__title small {
  display: block;
  margin-top: 8px;
  font-family: "Noto Serif JP", serif;
  font-size: 28px;
  font-weight: bold;
}
@media screen and (max-width: 1100px) {
  //.info__title small {
  //  font-size: 24px;
  //}
}
@media screen and (max-width: 768px) {
  .info__title small {
    margin-top: 2%;
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.info__item:not(:last-child) {
  margin-bottom: 12px;
}
@media screen and (max-width: 768px) {
  .info__item:not(:last-child) {
    margin-bottom: 5%;
  }
}
.info__item.-period, .info__item.-pre {
  margin-bottom: 25px;
}
@media screen and (max-width: 1000px) {
  //.info__item.-period, .info__item.-pre {
  //  margin-bottom: 20px;
  //}
}
@media screen and (max-width: 768px) {
  .info__item.-period, .info__item.-pre {
    margin-bottom: 3%;
  }
}
.info__item dl {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .info__item dl {
    display: block;
  }
}
.info__item__term {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 120px;
  height: 32px;
  margin-right: 30px;
  background: #FFF;
  font-size: 14px;
  font-weight: bold;
  border: 1px solid #3B1513;
}
@media screen and (max-width: 1000px) {
  .info__item__term {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  .info__item__term {
    width: auto;
    height: auto;
    margin: 0 0 2%;
    padding: 2% 0 3%;
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.info__item__term.-period, .info__item__term.-pre {
  background-color: #ae2917;
  *zoom: 1;
  filter: progid:DXImageTransform.Microsoft.gradient(gradientType=1, startColorstr='#FFAE2917', endColorstr='#FFBCAB5E');
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2FlMjkxNyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzNiMTUxMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2JjYWI1ZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: -moz-linear-gradient(left, #ae2917 0%, #3b1513 100%, #bcab5e 100%);
  background-image: -webkit-linear-gradient(left, #ae2917 0%, #3b1513 100%, #bcab5e 100%);
  background-image: linear-gradient(to right, #ae2917 0%, #3b1513 100%, #bcab5e 100%);
  color: #FFF;
  font-size: 14px;
  border: none;
}
@media screen and (max-width: 1000px) {
  //.info__item__term.-period, .info__item__term.-pre {
  //  font-size: 14px;
  //}
}
@media screen and (max-width: 768px) {
  .info__item__term.-period, .info__item__term.-pre {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.info__item__description {
  font-size: 16px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .info__item__description {
    font-size: 13px;
    font-size: 3.46667vw;
    line-height: 1.3;
  }
}
.info__item__description.-period, .info__item__description.-pre {
  position: relative;
  top: -5px;
  font-size: 20px;
}
@media screen and (max-width: 1000px) {
  //.info__item__description.-period, .info__item__description.-pre {
  //  font-size: 16px;
  //}
}
@media screen and (max-width: 768px) {
  .info__item__description.-period, .info__item__description.-pre {
    position: unset;
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.info__item__description.-period big, .info__item__description.-pre big {
  font-size: 32px;
}
@media screen and (max-width: 1000px) {
  //.info__item__description.-period big, .info__item__description.-pre big {
  //  font-size: 24px;
  //}
}
@media screen and (max-width: 768px) {
  .info__item__description.-period big, .info__item__description.-pre big {
    font-size: 24px;
    font-size: 6.4vw;
  }
}
.info__item__description.-period small, .info__item__description.-pre small {
  font-size: 26px;
}
@media screen and (max-width: 1000px) {
  //.info__item__description.-period small, .info__item__description.-pre small {
  //  font-size: 24px;
  //}
}
@media screen and (max-width: 768px) {
  .info__item__description.-period small, .info__item__description.-pre small {
    font-size: 18px;
    font-size: 4.8vw;
  }
}
.info__item__description .spre {
  display: block;
  position: absolute;
  left: -18px;
  right: 0;
  bottom: -19px;
  font-size: 15px;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .info__item__description .spre {
    position: unset;
    margin: 1% 0 -8% 10%;
    font-size: 10px;
    font-size: 2.66667vw;
  }
}

.reason {
  padding-bottom: 60px;
  background: url("../img/reason_bg.png") center bottom 140px no-repeat;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .reason {
    padding-bottom: 10%;
    background: url(../img/reason_bg.png) left 35% bottom 52% no-repeat;
    -moz-background-size: 210%;
    -webkit-background-size: 210%;
    background-size: 210%;
  }
}
.reason__title {
  position: relative;
  margin-bottom: 95px;
  font-family: "Noto Serif JP", serif;
  font-size: 40px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .reason__title {
    margin-bottom: 12%;
    font-size: 17px;
    font-size: 4.53333vw;
  }
}
.reason__title:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -55px;
  width: 132px;
  height: 13px;
  margin: auto;
  background: url("../img/reason_title_bg1.png") left top no-repeat;
}
@media screen and (max-width: 768px) {
  .reason__title:before {
    bottom: -20px;
    width: 66px;
    height: 6.5px;
    background: url("../img/reason_title_bg1.png") left top no-repeat;
    -moz-background-size: contain;
    -webkit-background-size: contain;
    background-size: contain;
  }
}
.reason__lead {
  margin-bottom: 260px;
  font-size: 22px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .reason__lead {
    margin-bottom: 32%;
    font-size: 13px;
    font-size: 3.46667vw;
  }
}
.reason__lead em {
  color: #AE2917;
  font-weight: bold;
  line-height: 2.27273;
  border-bottom: 1px dashed #AE2917;
}
.reason__text {
  font-size: 18px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .reason__text {
    font-size: 13px;
    font-size: 3.46667vw;
    line-height: 1.6;
  }
}
.reason__text em {
  color: #AE2917;
  font-weight: bold;
  line-height: 2.27273;
  border-bottom: 1px dashed #AE2917;
}
@media screen and (max-width: 768px) {
  .reason__text em {
    display: inline-block;
    margin-bottom: 1%;
  }
}

.link {
  background-color: #5c3735;
  *zoom: 1;
  filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FF5C3735', endColorstr='#FFBCAB5E');
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVjMzczNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzNiMTUxMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2JjYWI1ZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: -moz-linear-gradient(top, #5c3735 0%, #3b1513 100%, #bcab5e 100%);
  background-image: -webkit-linear-gradient(top, #5c3735 0%, #3b1513 100%, #bcab5e 100%);
  background-image: linear-gradient(to bottom, #5c3735 0%, #3b1513 100%, #bcab5e 100%);
}
.link__inner {
  width: 1000px;
  margin: 0 auto 50px;
  padding: 40px 0 50px;
}
@media screen and (max-width: 1200px) {
  .link__inner {
    width: 850px;
  }
}
@media screen and (max-width: 768px) {
  .link__inner {
    width: auto;
    margin-bottom: 0;
    padding: 6% 4% 8%;
  }
}
.link__title {
  margin-bottom: 30px;
  color: #FFF;
  font-size: 32px;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 1200px) {
  .link__title {
    font-size: 28px;
  }
}
@media screen and (max-width: 768px) {
  .link__title {
    margin-bottom: 5%;
    font-size: 18px;
    font-size: 4.8vw;
    line-height: 1.5;
  }
}
.link__list {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .link__list {
    display: block;
    margin-bottom: 6%;
  }
}
.link__item {
  width: 480px;
  height: 220px;
  padding: 40px 0 45px;
  text-align: center;
  background-color: #3B1513;
  border: #c2973b 1px solid;
  position: relative;
}
@media screen and (max-width: 1200px) {
  .link__item {
    width: 410px;
  }
}
.link__item::before,
.link__item::after {
content:"";
position: absolute;
left:0;
right: 0;
width: 465px;
height: 41px;
margin: auto;
background-size: contain;
background-position: center;
background-repeat: no-repeat;
}
@media screen and (max-width: 1200px) {
  .link__item::before,
  .link__item::after {
    width: 395px;
  }
}
@media screen and (max-width: 768px) {
  .link__item::before,
  .link__item::after {
    width: 97%;
    height: 26%;
  }
}
.link__item::before {
  top:5px;
  background-image: url(../img/link_item_bg_top.png);
}
@media screen and (max-width: 1200px) {
  .link__item::before {
    background-image: url(../img/link_item_bg_top_s.png);
  }
}
@media screen and (max-width: 768px) {
  .link__item::before {
    top: 0;
  }
}
.link__item::after {
  bottom: 5px;
  background-image: url(../img/link_item_bg_bottom.png);
}
@media screen and (max-width: 1200px) {
  .link__item::after {
    background-image: url(../img/link_item_bg_bottom_s.png);
  }
}
@media screen and (max-width: 768px) {
  .link__item::after {
    bottom: 0;
  }
}
@media screen and (max-width: 1200px) {
  //.link__item {
  //  width: 49%;
  //  height: auto;
  //}
  //.link__item::before,
  //.link__item::after {
  //  width: 97%;
  //}
}

@media screen and (max-width: 768px) {
  .link__item {
    width:100%;
    height: auto;
    padding: 6% 0 10%;
  }
  .link__item:first-child {
    margin-bottom: 6%;
  }
}
@media screen and (max-width: 480px) {
  .link__item::before {
    top:0px;
  }
  .link__item::after {
    bottom: 0px;
  }
}


.link__item__term {
  position: relative;
  margin-bottom: 55px;
  color: #FFF;
  font-size: 24px;
}
@media screen and (max-width: 768px) {
  .link__item__term {
    margin-bottom: 12%;
    font-size: 15px;
    font-size: 4vw;
  }
}
.link__item__term:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -20px;
  width: 40px;
  height: 2px;
  margin: auto;
  background: #FFF;
}
.link__item a {
  display: inline-block;
  margin: 0 12px;
}
@media screen and (max-width: 768px) {
  .link__item a:first-child {
    margin-bottom: 3%;
  }
}
.link__item__btn{
  margin: auto!important;
  width: 90%;
  padding: 15px 0;
  text-align: center;
  font-size: 18px;
  font-family: 'Times New Roman', Times, serif;
  font-weight: bold;
  color: #3b1513;
  background-color: #f0d783;
  background: linear-gradient(180deg,#ffffff 0%,#f0d783 77%);
}
@media screen and (max-width: 768px) {
  .link__item__btn {
    font-size: 16px;
  }
}
.news {
  -moz-box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  background: #FFF;
  border: 1px solid #8e7957;
}
.news__title {
  display: flex;
  align-items: center;
  padding: 12px 30px;
  background: #96802d;
  background: linear-gradient(60deg, #96802d 0%, #ddd189 20%, #ffffff 100%);
  font-family: "Noto Serif JP", serif;
  font-size: 18px;
  font-weight: bold;
  border-bottom: 1px solid #91682D;
}
@media screen and (max-width: 768px) {
  .news__title {
    padding: 3% 4%;
    font-size: 12px;
    font-size: 3.2vw;
  }
}
.news__title .en {
  margin-right: 15px;
  font-family: 'EB Garamond', serif;
  font-size: 34px;
  font-weight: bold;
}
@media screen and (max-width: 1200px) {
  .news__title .en {
    font-size: 30px;
  }
}
@media screen and (max-width: 768px) {
  .news__title .en {
    margin-right: 3%;
    font-size: 24px;
    font-size: 6.4vw;
  }
}
.news__list {
  padding: 20px 30px 25px;
}
@media screen and (max-width: 768px) {
  .news__list {
    padding: 4%;
  }
}
.news__item:not(:last-child) {
  margin-bottom: 18px;
}
@media screen and (max-width: 768px) {
  .news__item:not(:last-child) {
    margin-bottom: 5%;
  }
}
.news__item dl {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .news__item dl {
    display: block;
  }
}
.news__item__term {
  display: flex;
  align-items: center;
  color: #5E5E5E;
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .news__item__term {
    margin-bottom: 2%;
    font-size: 12px;
    font-size: 3.2vw;
  }
}
.news__item__description {
  margin-left: 30px;
  color: #333;
  font-size: 16px;
}
.news__item__description .new {
  display: inline-block;
  position: relative;
  top: -1px;
  width: 50px;
  margin-right: 10px;
  padding: 4px 0 6px;
  background: #C2123C;
  color: #FFF;
  font-size: 12px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .news__item__description {
    margin-left: 0;
    font-size: 13px;
    font-size: 3.46667vw;
  }

  .news__item__description .new {
    width: auto;
    height: auto;
    margin-left: 2%;
    padding: 0.5% 1.5% 1%;
    font-size: 10px;
    font-size: 2.66667vw;
  }
}
.news__item__description a {
  color: #333;
  text-decoration: underline;
}
.news__item__description a:hover {
  text-decoration: none;
}

.detail {
  background: url("../img/detail_bg.jpg") center top no-repeat;
  -moz-background-size: cover;
  -webkit-background-size: cover;
  background-size: cover;
  padding: 0 0 60px;
}
@media screen and (max-width: 768px) {
  .detail {
    padding: 8% 0;
  }
}
.detail__title {
  margin: 0 0 60px 4%;
}
@media screen and (max-width: 768px) {
  .detail__title {
    margin: 0 4% 8%;
  }
}
.detail__title img {
  max-width: 1100px;
  margin: auto;
}
@media screen and (max-width: 1200px) {
  .detail__title img {
    width: 900px;
  }
}
@media screen and (max-width: 768px) {
  .detail__title img {
    width: 100%;
  }
}
.detail__inner {
  width: 960px;
  margin: auto;
}
@media screen and (max-width: 1200px) {
  .detail__inner {
    width: 850px;
  }
}
@media screen and (max-width: 960px) {
  .detail__inner {
    width: 100%;
    padding: 0 20px;
  }
}
@media screen and (max-width: 768px) {
  .detail__inner {
    width: auto;
    margin: 0 4%;
  }
}
.detail__lead {
  margin-bottom: 65px;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.8125;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .detail__lead {
    margin-bottom: 5%;
    font-size: 16px;
    font-size: 4.26667vw;
  }
}
.detail__lead em {
  color: #AE2917;
  font-weight: bold;
  border-bottom: 2px dotted #AE2917;
}
.detail__pic {
  margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
  .detail__pic {
    margin-bottom: 6%;
  }
}
.detail__pic img {
  width: 750px;
  margin: auto;
}
@media screen and (max-width: 1200px) {
  .detail__pic img {
    width: 650px;
  }
}
@media screen and (max-width: 768px) {
  .detail__pic img {
    width: 84.65608%;
  }
}
.detail__text {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.66667;
}
@media screen and (max-width: 768px) {
  .detail__text {
    font-size: 14px;
    font-size: 3.73333vw;
    line-height: 1.71429;
  }
}
.detail__text em {
  color: #AE2917;
  font-weight: bold;
}

.feature {
  text-align: center;
}
.feature__upper {
  padding: 80px 0 95px;
  background-color: #5c3735;
  *zoom: 1;
  filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FF5C3735', endColorstr='#FFBCAB5E');
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVjMzczNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzNiMTUxMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2JjYWI1ZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: -moz-linear-gradient(top, #5c3735 0%, #3b1513 100%, #bcab5e 100%);
  background-image: -webkit-linear-gradient(top, #5c3735 0%, #3b1513 100%, #bcab5e 100%);
  background-image: linear-gradient(to bottom, #5c3735 0%, #3b1513 100%, #bcab5e 100%);
}
@media screen and (max-width: 1280px) {
  .feature__upper {
    padding: 40px 0 50px;
  }
}
@media screen and (max-width: 768px) {
  .feature__upper {
    padding: 8% 4% 10%;
  }
}
.feature__title {
  margin-bottom: 50px;
}
@media screen and (max-width: 1200px) {
  .feature__title {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 768px) {
  .feature__title {
    margin-bottom: 6%;
  }
}
.feature__title.-point1 span {
  display: inline-block;
  position: relative;
}
.feature__title.-point1 span:before {
  content: "";
  position: absolute;
  left: -10px;
  bottom: 5px;
  width: 122px;
  height: 122px;
  background: url("../img/feature_title_point1.png") left top no-repeat;
}
@media screen and (max-width: 1200px) {
  .feature__title.-point1 span:before {
    left: 70px;
    scale: 0.8;
  }
}
@media screen and (max-width: 768px) {
  .feature__title.-point1 span:before {
    left: 0;
    right: 0;
    top: 63px;
    bottom: unset;
    width: 60px;
    height: 60px;
    margin: auto;
    -moz-background-size: contain;
    -webkit-background-size: contain;
    background-size: contain;
  }
}
.feature__title img {
  display: block;
  margin: auto;
}
@media screen and (max-width: 1200px) {
  .feature__title img {
    scale: 0.8;
  }
}
.feature__title img:first-child {
  position: relative;
  left: -10px;
  margin-bottom: -20px;
}
@media screen and (max-width: 768px) {
  .feature__title img:first-child {
    left: -1%;
    width: 80%;
    margin: 0 auto 22%;
  }
}
@media screen and (max-width: 768px) {
  .feature__title img:last-child {
    width: 65%;
  }
}
.feature__text {
  color: #FFF;
  font-size: 18px;
  font-weight: bold;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .feature__text {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.feature__text em {
  color: #D7CB84;
  font-weight: bold;
}
.feature__list {
  display: flex;
  flex-wrap: wrap;
  width: 1200px;
  margin: 34px auto 55px;
}
@media screen and (max-width: 1200px) {
  .feature__list {
    width: 900px;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .feature__list::after{
    content: "";
    display: block;
    width: 280px;  /* .boxに指定したwidthと同じ幅を指定する */
    height: 0;
  }
}
@media screen and (max-width: 930px) {
  .feature__list {
    width: 630px;
  }
}
@media screen and (max-width: 768px) {
  .feature__list {
    width: auto;
    margin: 3% auto 8%;
  }
}
.feature__item {
  -moz-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1);
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1);
  width: 280px;
  margin-top: 26.66667px;
}
@media screen and (max-width: 768px) {
  .feature__item {
    width: 100%;
    margin-top: 4%;
    background: #FFF;
  }
}
.feature__item:not(:nth-child(4n)) {
  margin-right: 26.66667px;
}
@media screen and (max-width: 1200px) {
  .feature__item:not(:nth-child(4n)) {
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .feature__item dl {
    display: flex;
    align-items: center;
  }
}
@media screen and (max-width: 768px) {
  .feature__item__term {
    width: 41.79104%;
  }
}
.feature__item__description {
  padding: 20px 0;
  background: #FFF;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.55556;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .feature__item__description {
    width: 58.20896%;
    padding: 0 0 0 3%;
    font-size: 14px;
    font-size: 3.73333vw;
    line-height: 1.4;
    text-align: left;
  }
}
.feature__item__description em {
  color: #AE2917;
  font-weight: bold;
}
.feature__lower {
  background-color: white;
  *zoom: 1;
  filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FFFFFFFF', endColorstr='#FFF6E7C7');
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAlIiBzdG9wLWNvbG9yPSIjZmJmOGVjIi8+PHN0b3Agb2Zmc2V0PSI0NSUiIHN0b3AtY29sb3I9IiNmOGYzZTAiLz48c3RvcCBvZmZzZXQ9Ijg2JSIgc3RvcC1jb2xvcj0iI2Y4ZjJkZSIvPjxzdG9wIG9mZnNldD0iODYlIiBzdG9wLWNvbG9yPSIjZjhmMmRlIi8+PHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjZjZlN2M3Ii8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0idXJsKCNncmFkKSIgLz48L3N2Zz4g');
  background-size: 100%;
  background-image: -moz-linear-gradient(top, #ffffff 0%, #fbf8ec 10%, #f8f3e0 45%, #f8f2de 86%, #f8f2de 86%, #f6e7c7 100%);
  background-image: -webkit-linear-gradient(top, #ffffff 0%, #fbf8ec 10%, #f8f3e0 45%, #f8f2de 86%, #f8f2de 86%, #f6e7c7 100%);
  background-image: linear-gradient(to bottom, #ffffff 0%, #fbf8ec 10%, #f8f3e0 45%, #f8f2de 86%, #f8f2de 86%, #f6e7c7 100%);
}
.feature__lower__inner {
  padding: 150px 0 140px;
  background: url("../img/feature_lower_bg.jpg") center top no-repeat;
  -moz-background-size: contain;
  -webkit-background-size: contain;
  background-size: contain;
}
@media screen and (max-width: 1200px) {
  .feature__lower__inner {
    padding: 60px 0;
  }
}
@media screen and (max-width: 768px) {
  .feature__lower__inner {
    padding: 25% 5% 10%;
  }
}

.feature-sub__upper {
  width: 850px;
  margin: 0 auto 70px;
}
@media screen and (max-width: 1200px) {
  .feature-sub__upper {
    margin: 0 auto 20px;
  }
}
@media screen and (max-width: 850px) {
  .feature-sub__upper {
    width: auto;
    margin-bottom: 0;
  }
}
.feature-sub.-point2 {
  margin-bottom: 250px;
}
@media screen and (max-width: 1200px) {
  .feature-sub.-point2 {
    margin-bottom: 200px;
  }
}
@media screen and (max-width: 768px) {
  .feature-sub.-point2 {
    margin-bottom: 35%;
  }
}
.feature-sub__title {
  margin-bottom: 75px;
}
@media screen and (max-width: 1200px) {
  .feature-sub__title {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 768px) {
  .feature-sub__title {
    margin-bottom: 5%;
  }
}
.feature-sub__title span {
  display: inline-block;
  position: relative;
}
.feature-sub__title span:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 122px;
  height: 122px;
  background-position: left top;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1200px) {
  .feature-sub__title span:before {
    scale: 0.8;
  }
}
@media screen and (max-width: 768px) {
  .feature-sub__title span:before {
    width: 60px;
    height: 60px;
    -moz-background-size: contain;
    -webkit-background-size: contain;
    background-size: contain;
  }
}
@media screen and (max-width: 1200px) {
  .feature-sub__title span img {
    scale: 0.9;
  }
}
.feature-sub__title.-point2 span:before {
  left: -150px;
  top: 9px;
  background-image: url("../img/feature_title_point2.png");
}
@media screen and (max-width: 1200px) {
  .feature-sub__title.-point2 span:before {
    left: -70px;
  }
}
@media screen and (max-width: 768px) {
  .feature-sub__title.-point2 span:before {
    left: 0;
    right: 0;
    top: -70px;
    margin: auto;
  }
}
@media screen and (max-width: 1200px) {
  .feature-sub__title.-point2 span img {
    scale: 0.8;
  }
}
@media screen and (max-width: 768px) {
  .feature-sub__title.-point2 span img {
    width: 75%;
  }
}
.feature-sub__title.-point3 {
  margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
  .feature-sub__title.-point3 {
    margin-bottom: 5%;
  }
}
.feature-sub__title.-point3 span:before {
  left: 0;
  right: 0;
  top: -170px;
  margin: auto;
  background-image: url("../img/feature_title_point3.png");
}
@media screen and (max-width: 1200px) {
  .feature-sub__title.-point3 span:before {
    top: -130px;
  }
}
@media screen and (max-width: 768px) {
  .feature-sub__title.-point3 span:before {
    top: -70px;
  }
}
@media screen and (max-width: 768px) {
  .feature-sub__title.-point3 img {
    width: 85%;
  }
}
.feature-sub__flex {
  display: flex;
  justify-content: space-between;
  width: 900px;
  margin: 0 auto 50px;
}
@media screen and (max-width: 1200px) {
  .feature-sub__flex {
    width: 900px;
  }
}
@media screen and (max-width: 768px) {
  .feature-sub__flex {
    display: block;
    width: auto;
    margin-bottom: 10%;
  }
}
.feature-sub__flex__text {
  padding-top: 30px;
  color: #333;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.66667;
  text-align: left;
}
@media screen and (max-width: 1200px) {
  .feature-sub__flex__text {
    width: 55%;
    padding: 0 30px 0 0;
  }
}
@media screen and (max-width: 768px) {
  .feature-sub__flex__text {
    width: 100%;
    margin-bottom: 5%;
    padding: 0;
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.feature-sub__flex__text em {
  color: #AE2917;
  font-weight: bold;
}
@media screen and (max-width: 1200px) {
  .feature-sub__flex__pic {
    width: 45%;
  }
}
@media screen and (max-width: 768px) {
  .feature-sub__flex__pic {
    width: auto;
  }
}
@media screen and (max-width: 1200px) {
  .feature-sub__flex__pic img {
    width: 100%;
  }
}
.feature-sub__box {
  display: flex;
  position: relative;
  width: 1208px;
  height: 408px;
  margin: auto;
  padding: 60px 45px 60px 50px;
  /*
  background: url("../img/feature_sub_box_bg.png") left top no-repeat;
  -moz-background-size: contain;
  -webkit-background-size: contain;
  background-size: contain;
  */
}
@media screen and (max-width: 1200px) {
.feature-sub__box {
    width: 900px;
    height: auto;
    padding: 50px 45px 30px 50px;
  }
}
@media screen and (max-width: 768px) {
  .feature-sub__box {
    flex-wrap: wrap;
    width: auto;
    height: auto;
    padding: 5%;
    background: #FFF;
  }
}
.feature-sub__box:before {
  /*
  content: "";
  position: absolute;
  left: 30px;
  top: -2px;
  width: 90px;
  height: 92px;
  background-position: left top;
  background-repeat: no-repeat;
  */
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid black;
  z-index: 1;
}
.feature-sub__box:after {
  /*
  content: "";
  position: absolute;
  background-position: left top;
  background-repeat: no-repeat;
  */
  content: "";
  position: absolute;
  top: 10px;
  left: 10px;
  width: 100%;
  height: 100%;
  background:white;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .feature-sub__box:after {
    content: none;
  }
}
.feature-sub__box {
  margin-bottom: 50px;
}
.--num1{z-index: 1;}
.--num1:before {
  content: "";
  position: absolute;
  left: 30px;
  top: -2px;
  width: 90px;
  height: 92px;
  background-position: left top;
  background-repeat: no-repeat;
  /**/
  background-image: url("../img/feature_sub_box_num1_flag.png");
}
@media screen and (max-width: 768px) {
  .--num1:before {
    left: -5px;
    top: -5px;
    width: 45px;
    height: 46px;
    -moz-background-size: contain;
    -webkit-background-size: contain;
    background-size: contain;
  }
}
.--num1:after {
  /**/
  content: "";
  position: absolute;
  background-position: left top;
  background-repeat: no-repeat;
  /**/
  left: -170px;
  top: 5px;
  width: 203px;
  height: 299px;
  background-image: url("../img/feature_sub_box_num1_icon.png");
}
@media screen and (max-width: 1300px) {
  .--num1:after {
    background-image: none;
  }
}
.--num2{z-index: 2;}
.--num2:before {
  content: "";
  position: absolute;
  left: 30px;
  top: -2px;
  width: 90px;
  height: 92px;
  background-position: left top;
  background-repeat: no-repeat;
  /**/
  background-image: url("../img/feature_sub_box_num2_flag.png");
}
@media screen and (max-width: 768px) {
  .--num2:before {
    left: -5px;
    top: -5px;
    width: 45px;
    height: 46px;
    -moz-background-size: contain;
    -webkit-background-size: contain;
    background-size: contain;
  }
}
.--num2:after {
  content: "";
  position: absolute;
  background-position: left top;
  background-repeat: no-repeat;
  /**/
  right: -80px;
  top: 55px;
  width: 280px;
  height: 252px;
  background-image: url("../img/feature_sub_box_num2_icon.png");
}
@media screen and (max-width: 1300px) {
  .--num2:after {
    background-image: none;
    right: 0px;
  }
}
.feature-sub__box__left,
.feature-sub__box__right {z-index: 1;}
.feature-sub__box__title {
  margin-bottom: 30px;
  color: #333;
  font-size: 30px;
  font-weight: bold;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .feature-sub__box__title {
    margin-bottom: 6%;
    font-size: 18px;
    font-size: 4.8vw;
    text-align: center;
  }
}
.feature-sub__box__title.-num1 {
  padding-left: 110px;
}
@media screen and (max-width: 1000px) {
  .feature-sub__box__title.-num1 {
    padding-left: 0;
    padding-top: 30px;
  }
}
@media screen and (max-width: 768px) {
  .feature-sub__box__title.-num1 {
    padding-top: 0;
  }
}
.feature-sub__box__lead {
  margin-bottom: 30px;
  color: #333;
  font-size: 18px;
  font-weight: bold;
  line-height: 2.77778;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .feature-sub__box__lead {
    margin-bottom: 5%;
    font-size: 14px;
    font-size: 3.73333vw;
    line-height: 1.7;
  }
}
.feature-sub__box__lead em {
  color: #AE2917;
  font-weight: bold;
}
.feature-sub__box__text {
  color: #333;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.625;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .feature-sub__box__text {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.feature-sub__box__text em {
  color: #AE2917;
  font-weight: bold;
}
.feature-sub__box__text .notice {
  display: block;
  margin-top: 20px;
  font-size: 15px;
}
@media screen and (max-width: 768px) {
  .feature-sub__box__text .notice {
    margin-top: 5%;
    font-size: 11px;
    font-size: 2.93333vw;
  }
}
.feature-sub__box__pic{z-index: 1;}
.feature-sub__box__pic img{width: 100%}
.feature-sub__box__pic.-num1 {
  margin-left: 30px;
}
@media screen and (max-width: 768px) {
  .feature-sub__box__pic.-num1 {
    margin: 5% 0 0;
  }
}
.feature-sub__box__pic.-num2 {
  margin-right: 70px;
}
@media screen and (max-width: 768px) {
  .feature-sub__box__pic.-num2 {
    order: 2;
    margin: 5% 0 0;
  }
}
.feature-sub__box__list {
  margin: 50px 0 75px;
  padding-left: 15px;
}
@media screen and (max-width: 768px) {
  .feature-sub__box__list {
    margin: 8% 0;
    padding-left: 0;
  }
}
.feature-sub__box__item {
  display: flex;
  align-items: center;
  position: relative;
  margin-left: 85px;
  padding-left: 15px;
  color: #333;
  font-size: 18px;
  font-weight: bold;
  border-bottom: 1px dashed #2E2D2C;
  line-height: 1.44444;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .feature-sub__box__item {
    display: block;
    margin: 0 0 3% 0;
    padding: 0 0 3% 70px;
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.feature-sub__box__item:before {
  content: "";
  position: absolute;
  left: -85px;
  top: 4px;
  width: 80px;
  height: 80px;
  background-position: left top;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .feature-sub__box__item:before {
    width: 60px;
    height: 60px;
    left: -5px;
    top: 8%;
    -moz-background-size: contain;
    -webkit-background-size: contain;
    background-size: contain;
  }
}
.feature-sub__box__item:nth-child(1):before {
  background-image: url("../img/feature_sub_box_item_icon1.png");
}
.feature-sub__box__item:nth-child(2):before {
  background-image: url("../img/feature_sub_box_item_icon2.png");
}
.feature-sub__box__item:nth-child(3):before {
  background-image: url("../img/feature_sub_box_item_icon3.png");
}
.feature-sub__box__item:nth-child(4):before {
  background-image: url("../img/feature_sub_box_item_icon4.png");
}
.feature-sub__box__item:nth-child(5):before {
  background-image: url("../img/feature_sub_box_item_icon5.png");
}
.feature-sub__box__item:nth-child(6):before {
  background-image: url("../img/feature_sub_box_item_icon6.png");
}
.feature-sub__box__item:not(:last-child) {
  margin-bottom: 25px;
}
@media screen and (max-width: 768px) {
  .feature-sub__box__item:not(:last-child) {
    margin-bottom: 3%;
  }
}
.feature-sub__box__item span {
  color: #C2973B;
}
.feature-sub__box__item .step {
  position: relative;
  top: -10px;
  margin-right: 25px;
  font-size: 18px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .feature-sub__box__item .step {
    display: block;
    top: unset;
    margin-right: 0;
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.feature-sub__box__item .num {
  position: relative;
  top: 8px;
  margin-left: 8px;
  font-size: 50px;
}
@media screen and (max-width: 768px) {
  .feature-sub__box__item .num {
    top: 4px;
    margin-left: 2%;
    font-size: 30px;
    font-size: 8vw;
  }
}
.feature-sub__inner {
  width: 1200px;
  margin: auto;
  padding: 110px 90px 100px;
  background: #FFF;
}
@media screen and (max-width: 1200px) {
  .feature-sub__inner {
    width: 850px;
    padding: 90px 40px 40px;
  }
}
@media screen and (max-width: 768px) {
  .feature-sub__inner {
    width: auto;
    padding: 12% 5% 6%;
  }
}
.feature-sub__inner:not(:last-child) {
  margin-bottom: 60px;
}
@media screen and (max-width: 1200px) {
  .feature-sub__inner:not(:last-child) {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 768px) {
  .feature-sub__inner:not(:last-child) {
    margin-bottom: 5%;
  }
}
.feature-sub__inner__title {
  position: relative;
  top: 48px;
}
@media screen and (max-width: 768px) {
  .feature-sub__inner__title {
    top: 26px;
  }
}
@media screen and (max-width: 768px) {
  .feature-sub__inner__title img {
    width: 80%;
  }
}
.feature-sub__inner__text {
  position: relative;
  color: #333;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.875;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .feature-sub__inner__text {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.feature-sub__inner__text:after {
  content: "";
  position: absolute;
  right: -20px;
  bottom: 0;
  background-position: left top;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .feature-sub__inner__text:after {
    content: none;
  }
}
.feature-sub__inner__text.-icon1:after {
  width: 153px;
  height: 243px;
  background-image: url("../img/feature_sub_inner_icon1.png");
}
.feature-sub__inner__text.-icon2:after {
  width: 164px;
  height: 236px;
  background-image: url("../img/feature_sub_inner_icon2.png");
}
.feature-sub__inner__text em {
  color: #AE2917;
  font-weight: bold;
}
.feature-sub__inner__text .notice {
  display: block;
  margin-top: 15px;
  font-size: 15px;
}
@media screen and (max-width: 768px) {
  .feature-sub__inner__text .notice {
    font-size: 11px;
    font-size: 2.93333vw;
  }
}
.feature-sub__inner__flex {
  display: flex;
  justify-content: center;
  margin: 50px 0;
}
@media screen and (max-width: 768px) {
  .feature-sub__inner__flex {
    display: block;
    margin: 10% 0 0;
  }
}
.feature-sub__inner__subtitle {
  margin: 50px 0 25px;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .feature-sub__inner__subtitle {
    margin: 10% 0 5%;
  }
}
.feature-sub__inner__subtitle img {
  width: 100%;
}

.structure {
  width: 450px;
  margin: 0 24px;
}
@media screen and (max-width: 1200px) {
  .structure {
    margin: 0 20px;
  }
}
@media screen and (max-width: 1100px) {
  .structure {
    width: 49%;
    margin: 0;
  }
}
@media screen and (max-width: 768px) {
  .structure {
    width: auto;
  }
}
@media screen and (max-width: 768px) {
  .structure:first-child {
    margin-bottom: 10%;
  }
}
.structure__term {
  margin-bottom: 25px;
}
@media screen and (max-width: 768px) {
  .structure__term {
    margin-bottom: 5%;
  }
}
.structure__pic img,
.structure__term img {width: 100%;}
.lower {
  padding: 60px 0;
  background-color: #5c3735;
  *zoom: 1;
  filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorstr='#FF5C3735', endColorstr='#FFBCAB5E');
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVjMzczNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzNiMTUxMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2JjYWI1ZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: -moz-linear-gradient(top, #5c3735 0%, #3b1513 100%, #bcab5e 100%);
  background-image: -webkit-linear-gradient(top, #5c3735 0%, #3b1513 100%, #bcab5e 100%);
  background-image: linear-gradient(to bottom, #5c3735 0%, #3b1513 100%, #bcab5e 100%);
}
@media screen and (max-width: 768px) {
  .lower {
    padding: 10% 0 5%;
  }
}
.lower__inner {
  background: url(../img/reason_bg.png) center bottom 260px no-repeat;
}
@media screen and (max-width: 1200px) {
  .lower__inner {
    background: url(../img/reason_bg.png) center bottom 220px no-repeat;
  }
}
@media screen and (max-width: 768px) {
  .lower__inner {
    padding: 0 4%;
    background: url(../img/reason_bg.png) left 35% bottom 16% no-repeat;
    -moz-background-size: 210%;
    -webkit-background-size: 210%;
    background-size: 210%;
  }
}
.lower__text {
  margin-bottom: 100px;
  color: #FFF;
  font-size: 18px;
  line-height: 1.44444;
  text-align: center;
}
@media screen and (max-width: 1200px) {
  .lower__text {
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 768px) {
  .lower__text {
    margin-bottom: 8%;
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.lower__link {
  display: flex;
  justify-content: space-between;
  width: 1000px;
  margin: 0 auto 420px;
}
@media screen and (max-width: 1200px) {
  .lower__link {
    width: 850px;
    margin: 0 auto 320px;
  }
}
@media screen and (max-width: 768px) {
  .lower__link {
    display: block;
    width: auto;
    margin: 0 auto 40%;
  }
}
@media screen and (max-width: 768px) {
  .lower__link__item {
    margin: 0 10% 0 0;
  }
}
.lower__copy {
  color: #FFF;
  font-size: 42px;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1.90476;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .lower__copy {
    font-size: 20px;
    font-size: 5.33333vw;
  }
}

/*# sourceMappingURL=top.css.map */