@charset "UTF-8";
/****************reset********************************************/
body {
  background: #fffff6;
}
footer {
  background: #fffff6;
  margin-top: 0 !important;
  padding-top: 8vw;
  position: inherit !important;
  height: auto;
}
#contents.sp_item {
  width: 100% !important;
  margin: 0 !important;
  padding: 0;
  overflow: hidden;
  color: #033466;
}
#contents.sp_item .min {
  font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
}
#contents.sp_item .key {
  position: relative;
}
#contents.sp_item .key .gentei {
  padding: calc(100vw / (1200 / 30));
  background: #bd4842;
  border-top: #e9aea7 solid 10px;
  border-bottom: #e9aea7 solid 10px;
}
#contents.sp_item .key .btn_cv {
  width: calc(100vw / (1200 / 360));
  margin: 0 auto calc(100vw / (1200 / 15));
  position: absolute;
  bottom: calc(100vw / (1200 / 2));
  right: calc(100vw / (1200 / 60));
}
#contents.sp_item .key .btn_cv a {
  border: 2px solid #fff;
  font-size: calc(100vw / (1200 / 19));
}
/***************** co_01 *****************/
#contents.sp_item .co_01 {
  position: relative;
  background: #fffbf1 url("../img/arigatou_c01_bg.jpg") no-repeat;
  background-size: 100%;
  height: calc(100vw / (1200 / 491));
  text-align: center;
  font-size: calc(100vw / (1200 / 37));
}
#contents.sp_item .co_01 .inner {
  position: absolute;
  top: calc(100vw / (1200 / 102));
  left: calc(100vw / (1200 / 190));
}
#contents.sp_item .co_01 h2 {
  margin-bottom: 0;
  padding-bottom: calc(100vw / (1200 / 32));
  text-align: center;
  font-size: calc(100vw / (1200 / 30));
  color: #132742;
  transform: skewY(-3deg);
}
#contents.sp_item .co_01 p {
  margin-bottom: calc(100vw / (1200 / 10));
  line-height: 1.4;
  font-size: calc(100vw / (1200 / 24));
  color: #132742;
  transform: skewY(-3deg);
}
#contents.sp_item .co_01 p.algnR {
  position: absolute;
  right: 2px;
  bottom: 3px;
  font-size: calc(100vw / (1200 / 13));
  font-weight: normal;
  transform: skewY(0deg);
}
/*****************  co_02 *****************/
#contents.sp_item .co_02 {
  position: relative;
  padding: calc(100vw / (1200 / 50)) 0 calc(100vw / (1200 / 1));
  background: #f2df73;
  background-size: 100%;
  text-align: center;
  font-size: calc(100vw / (1200 / 17));
}
#contents.sp_item .co_02::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6vw 50vw 0 50vw;
  border-color: #f2df73 #e0f0f4 transparent #e0f0f4;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 999;
}

#contents.sp_item .co_02 h2 {
  width: calc(100vw / (1200 / 500));
  margin: 0 auto calc(100vw / (1200 / 15));
}
#contents.sp_item .co_02 p.read {
  margin-bottom: calc(100vw / (1200 / 62));
  text-align: center;
  line-height: 1.4;
  font-size: calc(100vw / (1200 / 25));
}
#contents.sp_item .co_02 .box {
  width: calc(100vw / (1200 / 900));
  margin: 0 auto calc(100vw / (1200 / 50));
  padding: calc(100vw / (1200 / 30)) calc(100vw / (1200 / 30)) calc(100vw / (1200 / 10));
  background: #fff;
  position: relative;
  font-weight: bold;
}
#contents.sp_item .co_02 .box p.subttl {
  width: calc(100vw / (1200 / 340));
  position: absolute;
  top: calc(100vw / (1200 / -30));
  left: calc(100vw / (1200 / 265));
}
#contents.sp_item .co_02 .box h3 {
  margin-bottom: calc(100vw / (1200 / 15));
  line-height: 1.4;
  font-size: calc(100vw / (1200 / 25));
}
#contents.sp_item .co_02 .box h3 span {
  color: #c13636;
}
#contents.sp_item .co_02 ul {
  color: #132742;
  text-align: left;
}
#contents.sp_item .co_02 ul.ranking01 {
  border-top: 1px solid #132742;
  border-bottom: 1px solid #132742;
  padding: calc(100vw / (1200 / 5)) 0;
  font-size: calc(100vw / (1200 / 30));
  display: flex;
  text-align: center;
  justify-content: center;
}
#contents.sp_item .co_02 ul.ranking01 li {
  padding: 0 0 calc(100vw / (1200 / 1));
  padding-left: calc(100vw / (1200 / 30));
  padding-right: calc(100vw / (1200 / 30));
  vertical-align: middle;
}
#contents.sp_item .co_02 ul.ranking01 li img.rank {
  width: calc(100vw / (1200 / 48));
  margin-bottom: calc(100vw / (1200 / 5));
  margin-right: calc(100vw / (1200 / 15));
}
#contents.sp_item .co_02 ul.ranking02 {
  width: 100%;
  margin-bottom: calc(100vw / (1200 / 5));
  font-size: calc(100vw / (1200 / 20));
}
#contents.sp_item .co_02 ul.ranking02 ul.flex {
  width: 100%;
  padding: calc(100vw / (1200 / 14)) 0;
  padding-left: calc(100vw / (1200 / 50));
  padding-right: calc(100vw / (1200 / 50));
  border-bottom: 1px solid #132742;
  vertical-align: middle;
}
#contents.sp_item .co_02 ul.ranking02 ul.flex li {
  width: 25%;
}
#contents.sp_item .co_02 ul.ranking02 ul.flex li .rank {
  display: inline-block;
  width: calc(100vw / (1200 / 28));
  margin-right: calc(100vw / (1200 / 5));
  background: #132742;
  text-align: center;
  font-size: calc(100vw / (1200 / 17));
  color: #ffe65b;
}
#contents.sp_item .co_02 ul.ranking02 ul.flex li.no11 {
  letter-spacing: -0.05em;
}
#contents.sp_item .co_02 p.algnR {
  margin-right: 1em;
  margin-bottom: calc(100vw / (1200 / 10));
  text-align: right;
  font-weight: normal;
  font-size: calc(100vw / (1200 / 13));
  color: #000000;
}
/***************** co_03 **************/
#contents.sp_item .co_03 {
  position: relative;
  padding: calc(100vw / (1200 / 70)) 0 calc(100vw / (1200 / 50));
  background: #e0f0f4 url("../img/arigatou_c03_bg.png") 0 5vw;
  background-size: 100% auto;
}
#contents.sp_item .co_03 h2 {
  width: calc(100vw / (1200 / 420));
  margin: 0 auto calc(100vw / (1200 / 22));
}
/****read***/
#contents.sp_item .co_03 .read {
  margin: 0 auto calc(100vw / (1200 / 20));
  font-size: calc(100vw / (1200 / 25));
  text-align: center;
}
#contents.sp_item .co_03 .read h3 {
  margin: 0 auto;
  padding: 0;
  line-height: 1.2;
  font-size: calc(100vw / (1200 / 54));
}
#contents.sp_item .co_03 .read .img {
  width: 60%;
  margin: 0 auto calc(100vw / (1200 / 20));
}
/****box***/
#contents.sp_item .co_03 .inner {
  width: calc(100vw / (1200 / 900));
  margin: 0 auto;
  justify-content: space-between;
  align-items: start;
}
#contents.sp_item .co_03 .box {
  width: calc(100vw / (1200 / 440));
  margin: 0 auto calc(100vw / (1200 / 40));
  padding: calc(100vw / (1200 /30)) calc(100vw / (1200 /10)) calc(100vw / (1200 /10));
  background: #fff;
  text-align: center;
  border: 4px solid #a9cad2;
  position: relative;
}
#contents.sp_item .co_03 .box h4 {
  width: calc(100vw / (1200 / 240));
  background: #033466;
  border-radius: 100px;
  padding: calc(100vw / (1200 / 5)) 0;
  position: absolute;
  text-align: center;
  top: calc(100vw / (800 / -13));
  left: calc(100vw / (1200 / 100));
}
#contents.sp_item .co_03 .box h4 img {
  width: calc(100vw / (1200 / 170));
  margin: 0 auto;
}
#contents.sp_item .co_03 .box p.read {
  font-size: calc(100vw / (1200 / 20));
  font-weight: bold;
  color: #e09138;
}
#contents.sp_item .co_03 .box p.catch {
  margin-bottom: calc(100vw / (1200 / 18));
  line-height: 1.2;
  font-size: calc(100vw / (1200 / 35));
  font-weight: bold;
}
#contents.sp_item .co_03 .box p.catch span.red {
  color: #c14841;
}
#contents.sp_item .co_03 .box p.catch span.fs {
  font-size: calc(100vw / (1200 / 25));
}
#contents.sp_item .co_03 .box p.catch span.fm {
  font-size: calc(100vw / (1200 / 30));
  letter-spacing: -0.03em;
}
#contents.sp_item .co_03 .box1 .img {
  width: calc(100vw / (1200 / 320));
  margin: 0 auto calc(100vw / (1200 / 10));
}
#contents.sp_item .co_03 .box2 .img {
  width: calc(100vw / (1200 / 350));
  margin: 0 auto;
}
#contents.sp_item .co_03 .inner2 {
  width: calc(100vw / (1200 / 900));
  margin: 0 auto;
}
#contents.sp_item .co_03 .inner2 .box3 {
  width: calc(100vw / (1200 / 290));
  margin-bottom: calc(100vw / (1200 / 40));
  padding: 0;
  border: 3px solid #9b854e;
  border-radius: 2px;
  display: flex;
  justify-content: space-between;
}
#contents.sp_item .co_03 .inner2 .box3 .txt {
  width: calc(100vw / (1200 / 220));
  font-size: calc(100vw / (1200 / 15));
  font-weight: bold;
}
#contents.sp_item .co_03 .inner2 .box3 .img {
  width: calc(100vw / (1200 / 60));
}
#contents.sp_item .co_03 .inner2 .box3 .txt h3 {
  padding: calc(100vw / (1200 / 10)) 0 0;
  line-height: 1.2;
}
#contents.sp_item .co_03 .inner2 .box3 .txt p {
  line-height: 1.2;
  font-size: calc(100vw / (1200 / 16));
  color: #8c7232;
}
#contents.sp_item .co_03 p.algnC {
  padding: calc(100vw / (1200 / 10)) calc(100vw / (1200 / 10)) calc(100vw / (1200 / 10));
  font-size: calc(100vw / (1200 / 13));
  color: #000000;
}
/*********kikan******/
#contents.sp_item .kikan {
  position: relative;
  padding: calc(100vw / (1200 / 30));
  background: #033466 url("../img/arigatou_kikan_bg.gif");
  background-size: calc(100vw / (1200 / 32));
}
#contents.sp_item .kikan ul {
  width: calc(100vw / (1200 / 600));
  margin: 0 auto;
}
/*********menu******/
#contents.sp_item .menu_info {
  position: relative;
  text-align: center;
}
#contents.sp_item .menu_info .box {
  width: calc(100vw / (1200 / 900));
  margin: calc(100vw / (1200 / 80)) auto calc(100vw / (1200 / 40));
  padding: calc(100vw / (1200 /50));
  background: #fff;
  border: 1px solid #ccc;
  vertical-align: middle;
  font-size: calc(100vw / (1200 /18));
  position: relative;
}
#contents.sp_item .menu_info .inner p.read {
  width: 100%;
  margin: 0 auto calc(100vw / (1200 / 10));
  font-size: calc(100vw / (1200 / 25));
}
#contents.sp_item .menu_info .inner h2 {
  margin: calc(100vw / (1200 / 20)) auto 0;
  padding-bottom: calc(100vw / (1200 / 5)) !important;
  line-height: 1.1;
  letter-spacing: 0.15em;
  text-align: center;
  position: relative;
  font-weight: bold;
  font-size: calc(100vw / (1200 / 54));
}
#contents.sp_item .menu_info .inner p.fs {
  margin: 0;
  padding: 0;
  line-height: 1;
  font-weight: bold;
  font-size: calc(100vw / (1200 / 25));
}
#contents.sp_item .menu_info .inner .btn_cv {
  margin: calc(100vw / (1200 / 40)) auto 0;
}
/*****btnarea****/
#contents.sp_item .btnarea {
  padding-bottom: calc(100vw / (1200 / 20));
  color: #000;
}
#contents.sp_item .btnarea .atn {
  width: calc(100vw / (1200 / 620));
  margin: 0 auto calc(100vw / (1200 / 100));
  line-height: 1.4;
  font-size: calc(100vw / (1200 /15));
}
#contents.sp_item .btnarea .atn li {
  margin-bottom: 1em;
  padding-left: 2em;
  position: relative;
}
#contents.sp_item .btnarea ul.atn li a {
  text-decoration: underline;
}
#contents.sp_item .btnarea .atn li::before {
  content: "※";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
}
#contents.sp_item .btnarea .btn {
  margin: 0 auto calc(100vw / (1200 / 100));
  font-size: calc(100vw / (1200 /22));
}
#contents.sp_item .btnarea .btn_home {
  margin: 0 auto calc(100vw / (1200 / 10));
}
#contents.sp_item .btnarea .btn_goto {
  width: calc(100vw / (1200 /650));
  margin: 0 auto calc(100vw / (1200 / 100));
  border: 1px solid #888;
}