@charset "UTF-8";

html,
body {
  font-family: "Noto Sans JP", YuGothic, Yu Gothic, "Hiragino Kaku Gothic ProN",
    "Hiragino Sans", Meiryo, sans-serif;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 2;
  color: #3f2e17;
  letter-spacing: 0;
  background: #fff none;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-overflow-scrolling: touch;
}
*::-moz-selection {
  background: rgba(0, 0, 0, 0.2);
}
*::-moz-selection,
*::selection,
*::-moz-selection {
  background: rgba(0, 0, 0, 0.2);
}
img {
  max-width: 100%;
  display: block;
}
h1,
h2,
h3 {
  font-weight: 500;
}
* {
  box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  .dn-w {
    display: none;
  }
}
/*================ cnt ================*/
.l__wrp {
  overflow: hidden;
  width: 100%;
	
/*	★追加------------
	margin: 110px 0 0;*/
}
/* ------ option ------ */
.inner {
  width: 100%;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
.fc_gld {
  color: #a48528;
}
.fc_slv {
  color: #96989d;
}
.fc_blz {
  color: #9c671a;
}
.fc_red {
  color: #ea5a27;
}
.fc_bln {
  color: #3f2e17;
}
/* ------ option ------ */
.fadeinbtm {
  opacity: 0;
  -webkit-transition: all 0.8s;
  transition: all 0.8s;
  transform: translateY(50px);
}
.fadeinbtm--on {
  opacity: 1;
  transform: translateY(0px);
}
/*================ l__kami__item ================*/
[class^="l__kami__item--"] {
  position: absolute;
}
/*hero*/
.l__kami__item--1 {
  width: 197px;
  top: 15px;
  left: 0;
}
.l__kami__item--2 {
  width: 174px;
  bottom: -45px;
  right: 50px;
}
/*lead*/
.l__kami__item--3 {
  width: 130.5px;
  top: -88px;
  left: -55px;
}
.l__kami__item--4 {
  width: 192.5px;
  bottom: -278px;
  right: -115px;
}
/*gold*/
.l__kami__item--5 {
  width: 49.5px;
  bottom: 120px;
  left: 40px;
}
/* ------ silver ------ */
.l__kami__item--6 {
  width: 120.5px;
  right: 0;
  top: -140px;
}
.l__kami__item--7 {
  width: 120.5px;
  left: 5px;
  bottom: -43px;
}
.l__kami__item--8 {
  width: 95px;
  right: 30px;
  bottom: 101px;
}
/* ------ option ------ */
.l__kami__item--9 {
  width: 120.5px;
  right: 0;
  bottom: -80px;
  z-index: 2;
}
.l__kami__item--10 {
  width: 49.5px;
  left: 35px;
  top: 320px;
  transform: rotate(180deg);
}
.l__kami__item--11 {
  width: 49.5px;
  right: 70px;
  bottom: 270px;
  transform: rotateX(180deg);
}
.l__kami__item--12 {
  width: 120.5px;
  left: 0;
  bottom: -20px;
}
/* ------ option ------ */
.l__kami__item--13 {
  width: 91px;
  right: 50px;
  top: 70px;
}
.l__kami__item--14 {
  width: 120.5px;
  right: 0;
  bottom: -80px;
  z-index: 2;
}
/*================ l__hero ================*/
.l__hero {
	

  padding-top: 62.615384615%;
  width: 100%;
  height: 0;
  position: relative;
	
	/*★追加-------------*/
	margin: 110px 0 0;
}
.l__hero::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/hero/hero.jpg) center / 100% no-repeat;
  position: absolute;
  top: 0;
  left: 0;
}
.l__hero__in {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: column;
  height: 100%;
}
.l__hero__lead,
.l__hero__ttl,
.l__hero__ttl2,
.l__hero__term {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.l__hero__lead {
  max-width: 520px;
  margin-bottom: 20px;
}
.l__hero__ttl {
  max-width: 788px;
}
@media screen and (min-width: 768px) {
  .l__hero__ttl--sp {
    display: none;
  }
}
.l__hero__ttl2 {
  max-width: 497px;
  margin-bottom: 15px;
}
.l__hero__txt {
  text-align: center;
  font-size: 24px;
  line-height: 1.41666;
  letter-spacing: 0.02em;
  font-weight: 500;
  margin-bottom: 25px;
}
.l__hero__term {
  max-width: 600px;
  background-color: rgba(233, 234, 235, 0.7);
  border: 2px solid #192c61;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  padding: 10px 0;
}
.l__hero__term > dt {
  width: 31%;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #192c61;
  text-align: center;
}
.l__hero__term > dd {
  width: 69%;
  font-size: 14px;
  line-height: 1.7142;
  letter-spacing: 0.05em;
}
/* ------ option ------ */
[class^="l__hero__item--"] {
  position: absolute;
}
.l__hero__item--1 {
  width: 151px;
  left: calc((100% - 1000px) / 2 - 75px);
  top: 26%;
  transition-delay: 0.7s;
}
.l__hero__item--2 {
  width: 197px;
  left: calc((100% - 1000px) / 2 - 55px);
  bottom: 25%;
  transition-delay: 0.85s;
}
.l__hero__item--3 {
  width: 161px;
  right: calc((100% - 1000px) / 2 - 80px);
  top: 28%;
  transition-delay: 1s;
}
.l__hero__item--4 {
  width: 184px;
  right: calc((100% - 1000px) / 2 - 60px);
  bottom: 23%;
  transition-delay: 1.15s;
}
.l__hero__in.js-load--on [class^="l__hero__item--"] {
  opacity: 1;
  transform: translateY(0px);
}
/* ------ option ------ */
.l__hero__txt,
.l__hero__term {
  transition-delay: 0.4s;
}
/*================ l__award ================*/
.l__award {
  padding: 61px 0 45px;
}
.l__award__ttl {
  font-size: 30px;
  text-align: center;
  letter-spacing: 0.05em;
  font-weight: 500;
}
.l__award__ttl > span {
  display: inline-block;
  position: relative;
}
.l__award__ttl > span::before,
.l__award__ttl > span::after {
  content: "";
  background: url(../img/award/ico_01.png) center / 100% no-repeat;
  width: 68px;
  height: 59.5px;
  position: absolute;
  bottom: 9px;
}
.l__award__ttl > span::before {
  left: -72px;
}
.l__award__ttl > span::after {
  right: -72px;
  transform: rotateY(180deg);
}
.l__award__lead {
  text-align: center;
  font-size: 18px;
  letter-spacing: 0.1em;
  font-weight: 400;
}
.l__award__list {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
  list-style: none;
  margin-top: 60px;
}
[class^="l__award__item--"] {
  background-color: #f4f1e9;
  width: 280px;
  height: 140px;
  margin: 0 15px 44px;
  text-align: center;
}
.l__award__item__img {
  width: 101px;
  margin: 0 auto -25px;
  position: relative;
  top: -30px;
}
.l__award__item__txt {
  font-size: 14px;
  line-height: 1;
}
/*================ l__lead ================*/
.l__lead {
  background: url(../img/lead/bg_01.jpg) center / cover no-repeat;
  padding: 60px 0;
  position: relative;
  z-index: 1;
}
.l__lead::after {
  content: "";
  background: url(../img/lead/ico_01.png) center / 100% no-repeat;
  width: 104px;
  height: 52.5px;
  position: absolute;
  bottom: -50.5px;
  right: 0;
  left: 0;
  margin: auto;
}
.l__lead > .inner {
  position: relative;
}
.l__lead__ttl {
  width: 100%;
  max-width: 414px;
  margin: 0 auto 24px;
}
.l__lead__txt {
  font-size: 30px;
  text-align: center;
  color: #fff;
  letter-spacing: 0.05em;
  line-height: 1.533;
  font-weight: 500;
}
/*================ l__list ================*/
.l__list {
  background: url(../img/list/bg_01_ptn.jpg) center / 49px 49px repeat;
}
.l__list__item:nth-child(2n) > .inner {
  position: relative;
  padding: 100px 0 30px;
}
.l__list__item:nth-child(2n) {
  background-color: #fff;
  position: relative;
  z-index: 1;
}
/* ------ option ------ */
.l__list__item:nth-child(2n + 1) {
  position: relative;
}
.l__list__item:nth-child(2n + 1)::before,
.l__list__item:nth-child(2n + 1)::after {
  content: "";
  height: 858.5px;
  position: absolute;
  width: 532.5px;
  background: url(../img/list/bg_01.png) center / 100% no-repeat;
}
.l__list__item:nth-child(2n + 1)::before {
  top: -47%;
  left: 0;
}
.l__list__item:nth-child(2n + 1)::after {
  bottom: -52%;
  right: 0;
  transform: rotate(-180deg);
}
/* ------ option ------ */
.l__list__item__box {
  background-color: #fff;
  box-shadow: 0px 0px 18px 2px rgba(190, 192, 198, 100%);
  position: relative;
  padding: 10px;
  z-index: 1;
}
.l__list__item__box__in {
  position: relative;
}
.l__list__item__tag {
  background: url(../img/list/ttl_01.png) center / 100% no-repeat;
  width: 366px;
  height: 103px;
  position: absolute;
  top: -55px;
  left: -50px;
  color: #fff;
  font-size: 40px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  padding-left: 63px;
  z-index: 2;
}
.l__list__item__ttl__wrp {
  height: 260px;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
  flex-direction: column;
  padding: 20px 0 0 55px;
  position: relative;
  z-index: 1;
  border: 2px solid #ac985c;
  border-bottom: none;
}
.l__list__item__ttl {
  font-size: 30px;
  letter-spacing: 0.05em;
  line-height: 1.533;
}
.l__list__item__name {
  font-size: 18px;
  font-weight: 500;
  margin-bottom: 5px;
  letter-spacing: 0.1em;
}
.l__list__item__img {
  width: 360px;
  position: absolute;
  right: 50px;
  top: 50px;
}
.l__list__item__cmt {
  background: rgb(163, 132, 39);
  background: linear-gradient(
    169deg,
    rgba(163, 132, 39, 1) 0%,
    rgba(219, 191, 92, 1) 100%
  );
  height: 200px;
  padding: 30px 450px 0 50px;
  color: #fff;
}
/* ------ option ------ */
.l__list__card__list {
  list-style: none;
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
}
.l__list__card__item {
  background-color: #eff2f5;
  width: calc((100% - 40px) / 2);
  /*height: 310px;*/
  margin-bottom: 40px;
  padding: 36px 40px;
}
.l__list__card__item:nth-child(2n + 1) {
  margin-right: 40px;
}
.l__list__card__item .l__list__item__ttl {
  font-size: 26px;
  line-height: 1.5384;
}
.l__list__card__item .l__list__item__name {
  margin-bottom: 0;
  line-height: 1.88;
  text-align: right;
}
.l__list__card__item .l__list__item__cmt__txt {
  border-top: 2px solid #a9a9a9;
  padding: 20px 0 0;
  margin-top: 15px;
}
/* ------ option ------ */
.l__list__item--gold {
  padding: 200px 0 150px;
}
/* ------ option ------ */
.l__list__item--bronze {
  padding: 155px 0 150px;
}
.l__list__item--bronze::before {
  top: -59%;
}
.l__list__item--bronze::after {
  bottom: -80%;
}
.l__list__item--bronze .l__list__item__ttl__wrp {
  border-color: #884d36;
}
.l__list__item--bronze .l__list__item__cmt {
  background: rgb(114, 69, 11);
  background: linear-gradient(
    169deg,
    rgba(114, 69, 11, 1) 0%,
    rgba(207, 143, 41, 1) 100%
  );
}
/* ------ option ------ */
.l__list__item--red .l__list__card__item {
  background-color: #f4f1e9;
}
/* ------ option ------ */
.l__list__item--black {
  padding: 160px 0 0;
}
.l__list__item--black::before {
  top: -16%;
}
.l__list__item--black::after {
  bottom: -13%;
}
.l__list__item--black > .inner {
  position: relative;
  padding: 100px 0 63px;
  z-index: 1;
}
.l__list__item--black .l__list__card__list {
  display: block;
}
.l__list__item--black .l__list__card__item {
  background-color: #fff;
  width: 100%;
  margin-bottom: 20px;
  padding: 30px 40px 17px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  height: auto;
}
.l__list__item--black .l__list__item__name {
  margin-top: 15px;
}
.l__list__item--black .l__list__item__cmt__txt {
  margin-top: 25px;
  padding: 10px 0 0;
}
/* ------ option ------ */
.l__list__item--silver .l__list__item__tag {
  background-image: url(../img/list/ttl_02.png);
}
.l__list__item--bronze .l__list__item__tag {
  background-image: url(../img/list/ttl_03.png);
}
.l__list__item--red .l__list__item__tag {
  background-image: url(../img/list/ttl_04.png);
}
.l__list__item--black .l__list__item__tag {
  background-image: url(../img/list/ttl_05.png);
}
/*================ l__bar ================*/
.l__bar {
  width: 100%;
  height: 30px;
  background: url(../img/bg_01.jpg) center / cover no-repeat;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  html,
  body {
    font-size: 15px;
    line-height: 1.666;
  }
  .dn-n {
    display: none;
  }
  /*================ SP ================*/
  .l__hero {
    /*padding-top: 25px;
    height: auto;
    padding-bottom: 20px;*/
	  /*★追加--------------*/
	  margin: 50px 0 0;
  }
  .l__hero {
    padding-top: 141.333333333%;
    /*padding-bottom: 20px;*/
  }
  .l__hero::before {
    background-image: url(../img/hero/hero_sp.jpg);
  }
  .l__hero::before {
    /*content: none;*/
  }
  .l__hero__in {
    position: relative;
  }
  .l__hero__lead {
    max-width: 280px;
    margin-bottom: 6px;
  }
  .l__hero__ttl {
    max-width: 100%;
    width: 234px;
  }
  .l__hero__ttl--pc {
    display: none;
  }
  .l__hero__ttl2 {
    max-width: 214px;
    margin-bottom: 2px;
  }
  .l__hero__txt {
    font-size: 14px;
    letter-spacing: 0;
    margin-bottom: 10px;
  }
  .l__hero__term {
    max-width: 290px;
    display: block;
    padding: 10px 20px;
  }
  .l__hero__term > dt {
    width: 100%;
    line-height: 1;
    margin-bottom: 6px;
  }
  .l__hero__term > dd {
    width: 100%;
    font-size: 12px;
    letter-spacing: 0;
    line-height: 1.333;
  }
  /* ------ option ------ */
  .l__hero__item--1 {
    width: 60px;
    left: 17px;
    top: 20%;
  }
  .l__hero__item--2 {
    width: 70px;
    left: 0;
    bottom: 49%;
  }
  .l__hero__item--3 {
    width: 74px;
    right: 5px;
    top: 18%;
  }
  .l__hero__item--4 {
    width: 71px;
    right: 17px;
    bottom: 47%;
  }
  .l__kami__item--1 {
    width: 82px;
    top: -11px;
    left: -21px;
  }
  .l__kami__item--2 {
    width: 98px;
    bottom: -45px;
    right: -36px;
  }
  /*================ l__award ================*/
  .l__award {
    padding: 51px 20px 35px;
  }
  .l__award__ttl {
    font-size: 24px;
  }
  .l__award__ttl > span::before,
  .l__award__ttl > span::after {
    width: 58px;
    height: 49.5px;
  }
  .l__award__ttl > span::before {
    left: -65px;
  }
  .l__award__ttl > span::after {
    right: -65px;
  }
  .l__award__list {
    margin-top: 30px;
  }
  [class^="l__award__item--"] {
    background-color: #f4f1e9;
    width: calc((100% - 15px) / 2);
    height: 180px;
    margin: 0 0 20px;
    text-align: center;
  }
  [class^="l__award__item--"]:nth-child(2n) {
    margin-left: 15px;
  }
  .l__award__item--5 {
    width: 200px;
  }
  .l__award__item__img {
    margin: 0 auto -5px;
    top: -15px;
  }
  .l__award__item__txt {
    line-height: 1.428;
  }
  /* ------ option ------ */
  .l__kami__item--3 {
    width: 81px;
    top: -88px;
    left: -15px;
  }
  .l__kami__item--4 {
    width: 98px;
    bottom: -160px;
    right: -30px;
  }
  /*================ l__lead ================*/
  .l__lead {
    padding: 40px 0 20px;
  }
  .l__lead__ttl {
    max-width: 228px;
    margin: 0 auto 24px;
  }
  .l__lead__txt {
    font-size: 18px;
    text-align: left;
    line-height: 1.555;
    padding: 0 20px;
  }
  .l__lead::after {
    width: 60px;
    height: 30px;
    bottom: -30px;
  }
  /*================ 内部パーツ ================*/
  .l__list__item__tag {
    width: 248px;
    height: 70px;
    top: -35px;
    left: -20px;
    font-size: 24px;
    padding-left: 58px;
  }
  .l__list__item {
    padding-left: 20px;
    padding-right: 20px;
  }
  .l__list__item:nth-child(2n) > .inner {
    padding: 60px 0 10px;
  }
  .l__list__item--gold {
    padding: 85px 20px 60px;
  }
  .l__list__item--bronze {
    padding-top: 60px;
    padding-bottom: 55px;
  }
  .l__list__item--black {
    padding-top: 70px;
  }
  .l__list__item--black > .inner {
    padding: 50px 0 20px;
  }
  /* ------ option ------ */
  .l__list__item__ttl {
    font-size: 20px;
    line-height: 1.5;
  }
  .l__list__item__ttl__wrp {
    height: auto;
    display: block;
    padding: 35px 20px 0;
  }
  .l__list__item__name {
    font-size: 15px;
    margin-bottom: 0;
  }
  .l__list__item__img {
    width: 100%;
    position: relative;
    right: 0;
    top: 0;
    padding: 10px 20px 20px;
    border-left: 2px solid #ac985c;
    border-right: 2px solid #ac985c;
  }
  .l__list__item__cmt {
    height: auto;
    padding: 15px 20px;
  }
  /* ------ option ------ */
  .l__list__card__item {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
    padding: 16px 20px;
  }
  .l__list__card__item:nth-child(2n + 1) {
    margin-right: 0;
  }
  .l__list__card__item .l__list__item__ttl {
    font-size: 20px;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .l__list__card__item .l__list__item__name {
    text-align: left;
  }
  .l__list__card__item .l__list__item__cmt__txt {
    padding: 10px 0 0;
    margin-top: 10px;
  }
  /* ------ option ------ */
  .l__list__item--black .l__list__card__item {
    padding: 17px 20px 17px;
    display: block;
  }
  .l__list__item--black .l__list__item__name {
    margin-top: 0;
  }
  /* ------ option ------ */
  .l__kami__item--6 {
    width: 75px;
    right: 0px;
    top: -90px;
  }
  .l__kami__item--7 {
    display: none;
  }
  .l__kami__item--8 {
    width: 54px;
    right: 0px;
    bottom: -40px;
  }
  .l__kami__item--9 {
    width: 68px;
    bottom: -60px;
  }
  .l__kami__item--10,
  .l__kami__item--11,
  .l__kami__item--12,
  .l__kami__item--13,
  .l__kami__item--14 {
    display: none;
  }
  /* ------ option ------ */
  .l__list__item:nth-child(2n + 1)::before,
  .l__list__item:nth-child(2n + 1)::after {
    height: 609px;
    width: 378px;
  }
  .l__list__item:nth-child(2n + 1)::before {
    top: -330px;
    left: -220px;
  }
  .l__list__item:nth-child(2n + 1)::after {
    bottom: -42%;
    right: -170px;
  }
  /* ------ option ------ */
  .l__bar {
    height: 15px;
  }
}
