@charset "UTF-8";
/**************** CSS ****************************/
body, #contents.sp_item {
  background: #f7f3ee;
}
footer {
  background: #f7f3ee;
}
#contents.sp_item p.atn_img {
  text-align: right !important;
  font-size: calc(100vw / (1200 /14)) !important;
}
/*********key******/
#contents.sp_item .key {
  position: relative;
  background: #232323;
  background-size: 100% auto;
}
#contents.sp_item .key h1 {
  width: 100%;
}
#contents.sp_item .key .btn_cv {
  width: calc(100vw / (1200 / 385));
  margin: 0 auto !important;
  position: absolute;
  bottom: calc(100vw / (1200 / 13));
  right: calc(100vw / (1200 / 205));
}
#contents.sp_item .key .btn_cv a {
  height: calc(100vw / (1200 / 76));
  line-height: calc(100vw / (1200 / 70));
  border: 2px solid #fff;
}
/*********co_00******/
#contents.sp_item .co_00 {
  position: relative;
}
#contents.sp_item .co_00 .box {
  width: calc(100vw / (1200 / 1000));
  margin: calc(100vw / (1200 / 40)) auto;
  align-items: lastbaseline;
}
#contents.sp_item .co_00 .box .img {
  width: 50%;
}
#contents.sp_item .co_00 .box .txt {
  width: 50%;
}
#contents.sp_item .co_00 h3 {
  width: calc(100vw / (1200 / 400));
}
#contents.sp_item .co_00 .box p.read {
  margin: calc(100vw / (1200 / 20)) 0;
  text-align: center;
  font-size: calc(100vw / (1200 / 24));
  font-weight: bold;
  color: #0a4572;
}
#contents.sp_item .co_00 .box .txt {
  padding: calc(100vw / (1200 / 20)) calc(100vw / (1200 / 30));
  font-size: calc(100vw / (1200 / 18));
  color: #182f41;
}
#contents.sp_item .co_00 p.atn_img {
  padding-right: calc(100vw / (1200 / 100));
  padding-bottom: calc(100vw / (1200 / 30));
}
/*********kikan******/
#contents.sp_item .kikan {
  position: relative;
  margin-bottom: calc(100vw / (1200 / 100));
  padding: calc(100vw / (1200 / 25)) 0;
  background: #a43230;
  color: #fff;
}
#contents.sp_item .kikan:after {
  content: "";
  position: absolute;
  top: 100%;
  box-sizing: border-box;
  border-right: 50vw solid transparent;
  border-left: 50vw solid transparent;
  border-top: 70px solid #a43230;
}
#contents.sp_item .kikan ul {
  width: calc(100vw / (1200 / 400));
  margin: calc(100vw / (1200 / 10)) auto calc(100vw / (1200 / 20));
  text-align: center;
}
#contents.sp_item .kikan h2 {
  width: calc(100vw / (1200 / 240));
  margin: calc(100vw / (1200 / 10)) auto calc(100vw / (1200 / 5));
  text-align: center;
  letter-spacing: 0.15em;
  border: 1px solid #fff;
  background: #b09a68;
  border-radius: 100px;
  font-size: calc(100vw / (1200 / 22));
  font-weight: bold;
  color: #fff;
}
#contents.sp_item .kikan .read {
  margin-bottom: calc(100vw / (1200 / 25));
  text-align: center;
  font-size: calc(100vw / (1200 / 27));
  color: #dbc38e;
}
#contents.sp_item .kikan p.date {
  width: 100%;
  margin: 0 auto;
  letter-spacing: 0.07em;
  line-height: 1.2;
  text-align: center;
  font-size: calc(100vw / (1200 / 28));
  position: absolute;
  bottom: calc(100vw / (1200 / -20));
  z-index: 999;
}
#contents.sp_item .kikan p span {
  font-size: calc(100vw / (1200 / 40));
}
/*********menu******/
#contents.sp_item .menu_info {
  position: relative;
  width: calc(100vw / (1200 / 900));
  margin: calc(100vw / (1200 / 40)) auto calc(100vw / (1200 / 80));
  text-align: center;
}
#contents.sp_item .menu_info .flex {
  justify-content: space-around;
  flex-wrap: wrap;
  align-items: flex-start;
}
#contents.sp_item .menu_info .inner .box {
  width: calc(100vw / (1200 /370));
  vertical-align: middle;
  margin-bottom: calc(100vw / (1200 / 10));
  position: relative;
}
@media screen and (max-width:980px) {
  #contents.sp_item .menu_info .inner .box {
    width: calc(100vw / (1200 /550));
  }
}
#contents.sp_item .menu_info .inner .img {
  position: relative;
  font-size: calc(100vw / (1200 / 14));
}
#contents.sp_item .menu_info .inner h2 {
  margin: calc(100vw / (1200 / 50)) 0 calc(100vw / (1200 / 15));
  padding-bottom: calc(100vw / (1200 / 5));
  line-height: 1.2 !important;
  letter-spacing: 0.03em;
  text-align: center;
  font-size: calc(100vw / (1200 / 23));
  font-weight: bold;
  position: relative;
}
#contents.sp_item .menu_info .inner h2 span {
  display: inline-block;
  letter-spacing: -0.03em;
  font-size: calc(100vw / (1200 / 20));
  font-weight: bold;
}
#contents.sp_item .menu_info .inner dl {
  margin: calc(100vw / (1200 / 5)) 0 calc(100vw / (1200 / 10));
  text-align: center;
}
#contents.sp_item .menu_info .inner dl dt {
  width: calc(100vw / (1200 / 55));
  line-height: calc(100vw / (1200 / 30));
  margin-right: calc(100vw / (1200 / 10));
  border: 1px solid #313431;
  border-radius: 2px;
  padding: 0;
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  font-size: calc(100vw / (1200 / 17));
}
#contents.sp_item .menu_info .inner dl dd {
  font-size: calc(100vw / (1200 / 28));
  font-weight: bold;
  display: inline-block;
  vertical-align: middle;
}
#contents.sp_item .menu_info .inner dl dd span.txM {
  font-size: calc(100vw / (1200 / 24));
  margin-right: calc(100vw / (1200 / 4));
}
#contents.sp_item .menu_info .inner dl dd span.txS {
  font-size: calc(100vw / (1200 / 18));
}
#contents.sp_item .menu_info .inner .btn {
  margin-top: calc(100vw / (1200 / 50));
}
/*****btnarea****/
#contents.sp_item .cv .atn {
  width: calc(100vw / (1200 / 700));
  margin: 0 auto calc(100vw / (1200 / 100));
  line-height: 1.5;
  font-size: calc(100vw / (1200 /15));
}
#contents.sp_item .cv .atn li {
  margin-bottom: 1em;
  padding-left: 2em;
  position: relative;
}
#contents.sp_item .cv ul.atn li a {
  text-decoration: underline;
}
#contents.sp_item .cv .atn li::before {
  content: "※";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
}
#contents.sp_item .cv .btn {
  margin: 0 auto calc(100vw / (1200 / 100));
}
#contents.sp_item .cv .bn_goto {
  width: calc(100vw / (1200 /550));
  margin: 0 auto calc(100vw / (1200 / 200));
}
#contents.sp_item .cv .button {
  width: calc(100vw / (1200 / 220));
  height: calc(100vw / (1200 / 220));
  position: fixed;
  bottom: calc(100vw / (1200 / 10));
  right: calc(100vw / (1200 / 1));
  background: #000;
  padding: 0;
  z-index: 999;
  animation-name: fadeUpApp;
  animation-duration: 3s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fadeUpApp {
  from {
    opacity: 0;
    transform: translateY(300px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}