@charset "UTF-8";
/**************** CSS ****************************/
body, #contents.sp_item {
  background: #f6f4ef;
}
footer {
  background: #f6f4ef;
}
#contents.sp_item p.atn_img {
  text-align: right !important;
  font-size: calc(100vw / (1200 /14)) !important;
  color: #fff;
  padding-top: calc(100vw / (1200 /140));
  padding-right: calc(100vw / (1200 /20));
}
/*********key******/
#contents.sp_item .key {
  background: #69302b url("../img/kansyasaisp_bg.gif");
  background-size: calc(100vw / (1200 /43)) auto;
  position: relative;
}
#contents.sp_item .key h1 {
  width: 100%;
}
#contents.sp_item .key .btn_cv {
  width: calc(100vw / (1200 / 270));
  margin: 0 auto !important;
  position: absolute;
  bottom: calc(100vw / (1200 / 11));
  right: calc(100vw / (1200 / 70));
}
#contents.sp_item .key .btn_cv a {
  height: calc(100vw / (1200 / 60));
  line-height: calc(100vw / (1200 / 55));
  border: 2px solid #fff;
}
#contents .btn_cv a::before {

  position: relative;
  top: calc(100vw / (1200 / 20));
  left: calc(100vw / (1200 / -30));
  width: calc(100vw / (1200 / 34));
  height: calc(100vw / (1200 / 34));
}
/*********co_00******/

#contents.sp_item .bg_area {
  background: #69302b url("../img/kansyasaisp_bg.gif");
  background-size: calc(100vw / (1200 /43)) auto;
}

#contents.sp_item .co_00 h2 {
  margin: 0 auto calc(100vw / (1200 / 55));
}
/*********co_01******/

#contents.sp_item .co_01{
  width:calc(100vw / (1200 / 1150)) ;
  margin: 0 0 0  calc(100vw / (1200 / 50));
  position:relative;
}

#contents.sp_item .co_01 h2 {
  width:calc(100vw / (2000 / 800)) ;
  position: absolute;
  top: calc(100vw / (2000 / 150)) ;
  left:0;
} 
#contents.sp_item .co_01 p {
  width:calc(100vw / (2000 / 800)) ;
  position: absolute;
  top: calc(100vw / (2000 / 330)) ;
  left:0;
  text-align: center;
  color: #fff;
  font-size:  calc(100vw / (1200 /20))
} 

/*********co_02******/
#contents.sp_item .co_02{
  padding-bottom: calc(100vw / (1200 /50)) ;
}
#contents.sp_item .co_02 h2 {
  width:calc(100vw / (2000 / 800)) ;
  margin: 0 auto;
} 


#contents.sp_item .co_02 .box {
  width:calc(100vw / (1200 / 600)) ;
  position: relative;
  overflow: hidden;
  margin-bottom:calc(100vw / (1200 / 50));
} 

#contents.sp_item .co_02 .box.dr {
  position: relative;
  top: calc(100vw / (1200 / 180));
}

#contents.sp_item .co_02 .box h3 {
  width: calc(100vw / (1200 / 120));
  position: absolute;
  top: 0;
  left: calc(100vw / (1200 / 2));
  z-index: 999;
} 
#contents.sp_item .co_02 .box.dl h3 {
  left: calc(100vw / (1200 / 10));
}


#contents.sp_item .co_02 .box .img {
  width:calc(100vw / (1200 / 600));
  position: relative;
  top:calc(100vw / (1200 / 7));
  padding-bottom:calc(100vw / (1200 / 135)) ;
} 


#contents.sp_item .co_02 .box .img {
}
#contents.sp_item .co_02 .box.dl .img {
  left:calc(100vw / (1200 / -7));
}
#contents.sp_item .co_02 .box.dr .img {
}

#contents.sp_item .co_02 .box p {
  width:calc(100vw / (1200 / 400));
  line-height: 1.5;
  font-size: calc(100vw / (1200 / 18)) !important;
  color: #fff !important;
  position: absolute;
  top: calc(100vw / (1200 / 350));
  z-index: 999;
  left:calc(100vw / (1200 /125));
}



/*********kikan******/
#contents.sp_item .kikan {
  position: relative;
  margin-bottom: calc(100vw / (1200 / 100));
  padding: calc(100vw / (1200 / 25)) 0;
  background: #344757;
  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 #344757;
}
#contents.sp_item .kikan h2 {
  width: calc(100vw / (1200 / 200));
  margin: 0 auto calc(100vw / (1200 / 10));
  text-align: center;
  letter-spacing: 0.15em;
  border: 1px solid #fff;
  background: #b09a68;
  border-radius: 100px;
  font-size: calc(100vw / (1200 / 20));
  font-weight: bold;
  color: #fff;
}
#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 .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 / 150)) 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 .box.pc {
  width: calc(100vw / (1200 /600));
  margin: 0 auto;
}
#contents.sp_item .menu_info .inner .img {
  position: relative;
  font-size: calc(100vw / (1200 / 14));
}
#contents.sp_item .menu_info h2{
  width: calc(100vw / (1200 / 250));
  margin:calc(100vw / (1200 / 100)) auto calc(100vw / (1200 / 20));
  padding: calc(100vw / (1200 / 5));
  text-align: center;
  letter-spacing: 0.09em;
  border: 1px solid #fff;
  background: #a43230;
  font-size: calc(100vw / (1200 / 22));
  color: #fff;
}
#contents.sp_item .menu_info .inner h3 {
  padding-bottom: calc(100vw / (1200 / 10)) !important;
  line-height: 1.2;
  letter-spacing: 0.05em;
  text-align: center;
  position: relative;
  font-weight: bold;
  font-size: calc(100vw / (1200 / 28));
}
#contents.sp_item .menu_info .inner h3 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));
}

#contents.sp_item .menu_info p.atn_item{
  margin: calc(100vw / (1200 / 50)) calc(100vw / (1200 / 150)) calc(100vw / (1200 / 50));
  padding: calc(100vw / (1200 / 10));
  background: #fff;
}

/*****btnarea****/
#contents.sp_item .cv .atn {
  width: calc(100vw / (1200 / 700));
  margin:calc(100vw / (1200 / 50)) auto calc(100vw / (1200 / 100));
  line-height: 1.5;
  font-size: calc(100vw / (1200 /15));
  text-align: left;
}

#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);
  }
}