/* ****************************************************

	main

***************************************************** */
.tuiju {
  background: #fff;
  z-index: 9999;
  height: auto;
  position: fixed;
  right: 0;
  bottom: 0;
}
.tuiju img {
  width: 100%;
  float: left;
}
.btn01 {
  width: 150px;
  height: auto;
  position: fixed;
  right: 50px;
  bottom: 50px;
}
.fadein {
  opacity: 0.1;
  transform: translate(0, 50px);
  transition: all 500ms;
}
.fadein.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}
/* ****************************************************

	section:title

***************************************************** */
#title {
  margin: 0 auto;
  padding: 0 auto;
  box-sizing: border-box;
  width: 100%;
  line-height: 0;
  background-color: #fef7ef;
  position: relative;
  z-index: -9999;
  height: auto;
}
#title .inner {
  width: 96%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 auto;
}
#title img {
  max-width: 100%;
}
#title .bg_left {
  width: 33%;
  position: absolute;
  top: 0;
  left: 0;
  padding: 0 auto;
  margin: 0 auto;
  z-index: -9998;
}
#title .bg_right {
  width: 33%;
  position: absolute;
  top: 0;
  right: 0;
  padding: 0 auto;
  margin: 0 auto;
  z-index: -9998;
}
#title .bg_bottom {
  width: 100%;
  position: absolute;
  bottom: 0;
  right: 0;
  padding: 0 auto;
  margin: 0 auto;
  z-index: 9999;
}
#title .logo {
  width: 93%;
  max-width: 750px;
  position: absolute;
  text-align: center;
  left: 0;
  right: 0;
  margin: 20px auto;
  z-index: -9997;
}
#title .santa {
  width: 30%;
  max-width: 400px;
  position: absolute;
  bottom: 6%;
  left: 1%;
  padding: 0 auto;
  z-index: -9997;
}
#title .tona {
  width: 30%;
  max-width: 480px;
  position: absolute;
  bottom: 2%;
  right: 1%;
  padding: 0 auto;
  z-index: -9997;
}
#title .ttlbox {
  width: 96%;
  max-width: 800px;
  position: absolute;
  left: 0;
  right: 0;
  top: 10%;
  margin: auto;
}
#title .bound {
  position: absolute;
  top: 12%;
  left: 25%;
  padding: 0 auto;
  margin: 0 auto;
  z-index: 2;
  display: inline-block;
  -webkit-animation: key1 2s linear 0s infinite;
  animation: key1 2s linear 0s infinite;
}
@-webkit-keyframes key1 {
  0% {
    transform: translateY(0px);
  }
  6% {
    transform: translateY(-10px);
  }
  12% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(0px);
  }
}
#title .animation {
  opacity: 0;
  animation: fadein 1.5s ease forwards;
}
@keyframes fadein {
  100% {
    opacity: 1;
  }
}
#title .faderightin {
  animation-name: faderightinAnime;
  animation-duration: 2s;
  animation-fill-mode: forwards;
  opacity: 0;
}
/*繧｢繝九Γ繝ｼ繧ｷ繝ｧ繝ｳ縺ｮ髢句ｧ九°繧臥ｵゆｺ�∪縺ｧ繧呈欠螳壹☆繧�*/
@keyframes faderightinAnime {
  from {
    opacity: 0;
    transform: translateX(100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
#title .fadeleftin {
  animation-name: fadeleftinAnime; /*繧｢繝九Γ繝ｼ繧ｷ繝ｧ繝ｳ縺ｮ螳夂ｾｩ蜷�*/
  animation-duration: 2s; /*繧｢繝九Γ繝ｼ繧ｷ繝ｧ繝ｳ螟牙喧譎る俣 窶ｻ繝�ヵ繧ｩ繝ｫ繝�*/
  animation-fill-mode: forwards; /*繧｢繝九Γ繝ｼ繧ｷ繝ｧ繝ｳ縺ｮ髢句ｧ九→邨ゆｺ�凾縺ｮ迥ｶ諷九ｒ謖�ｮ�*/
  opacity: 0;
}
/*繧｢繝九Γ繝ｼ繧ｷ繝ｧ繝ｳ縺ｮ髢句ｧ九°繧臥ｵゆｺ�∪縺ｧ繧呈欠螳壹☆繧�*/
@keyframes fadeleftinAnime {
  from {
    opacity: 0;
    transform: translateX(-100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
#title .fadeDown {
  animation-name: fadeDownAnime; /*繧｢繝九Γ繝ｼ繧ｷ繝ｧ繝ｳ縺ｮ螳夂ｾｩ蜷�*/
  animation-duration: 2s; /*繧｢繝九Γ繝ｼ繧ｷ繝ｧ繝ｳ螟牙喧譎る俣 窶ｻ繝�ヵ繧ｩ繝ｫ繝�*/
  animation-fill-mode: forwards; /*繧｢繝九Γ繝ｼ繧ｷ繝ｧ繝ｳ縺ｮ髢句ｧ九→邨ゆｺ�凾縺ｮ迥ｶ諷九ｒ謖�ｮ�*/
  opacity: 0;
}
/*繧｢繝九Γ繝ｼ繧ｷ繝ｧ繝ｳ縺ｮ髢句ｧ九°繧臥ｵゆｺ�∪縺ｧ繧呈欠螳壹☆繧�*/
@keyframes fadeDownAnime {
  from {
    opacity: 0;
    transform: translateY(-100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/*莉･荳矩≦蟒ｶ縺ｮ謖�ｮ�*/
#title .delay05 {
  animation-delay: 0.5s;
}
#title .delay1 {
  animation-delay: 1s;
}
#title .delay14 {
  animation-delay: 1.4s;
}
#title .delay16 {
  animation-delay: 1.6s;
}
#title .delay18 {
  animation-delay: 1.8s;
}
#title .delay2 {
  animation-delay: 2s;
}
#title .delay22 {
  animation-delay: 2.2s;
}
#title .delay24 {
  animation-delay: 2.4s;
}
#title .delay26 {
  animation-delay: 2.6s;
}
#title .delay25 {
  animation-delay: 2.5s;
}
@media screen and (max-width:1024px), print {
  #title .bound {
    top: 15%;
    left: 10%;
    width: 15%;
  }
  #title .santa {
    width: 30%;
    bottom: 0;
    left: -40px;
  }
  #title .tona {
    width: 30%;
    bottom: 0;
    right: -40px;
  }
}
@media screen and (max-width:599px), print {
  #title {
    height: auto;
  }
  #title .inner {
    padding-top: 0;
    padding-bottom: 0;
  }
  #title .bound {
    top: 15%;
    left: 10%;
    width: 15%;
  }
  #title .santa {
    width: 48%;
    bottom: 0;
    left: 0px;
  }
  #title .tona {
    width: 48%;
    bottom: 0;
    right: 0px;
  }
}
/* ****************************************************

	section:about

***************************************************** */
#about {
  background-image: url("../images/pt_bg.png");
  margin: 0 auto;
  color: #fff;
  background-color: #458037;
  padding: 0 auto;
}
#about .inner {
  width: 96%;
  max-width: 960px;
  margin: 0 auto;
  padding-top: 1%;
  padding-bottom: 5%;
  text-align: center;
  line-height: 180%;
}
#about .message {
  font-size: 1.5rem;
  margin: 5% auto;
  line-height: 250%;
}
#about .btnbox {
  position: relative;
  width: 100%;
  max-width: 500px;
  margin: 0 auto 10px;
  padding: 20px auto;
}
#about a.btnbig {
  border-radius: 30px;
  font-size: 1.2rem;
  background: #E9BC4B;
  padding: 20px 60px;
  color: #13564D;
  display: block;
}
#about a.btnbig:hover {
  color: #fff;
  background: #552126;
}
#about .snowman {
  position: absolute;
  top: -20px;
  right: 0;
  z-index: 9998;
}
#about .taisho {
  position: absolute;
  top: -50px;
  left: -10px;
  z-index: 9998;
}
#about img {
  width: 100%;
}
#about .movie {
  max-width: 640px;
  margin: 0 auto 8%;
}
@media screen and (max-width:599px), print {
  #about .inner {
    padding-top: 10px;
    padding-bottom: 10px;
  }
  #about .message {
    font-size: 1.0rem;
  }
  #about .taisho {
    width: 20%;
    top: -40px;
    left: -10px;
    z-index: 9998;
  }
  #about .snowman {
    width: 20%;
    position: absolute;
    top: -20px;
    right: 0;
    z-index: 9998;
  }
  #about a.btnbig {
    font-size: 1.0rem;
    padding: 10px 5px;
  }
  #about .btnbox {
    position: relative;
    width: 90%;
    max-width: 500px;
    margin: 5px auto;
  }
}
/* ****************************************************

	section:apply

***************************************************** */
#apply {
  box-sizing: border-box;
  background-color: #F5E8D8;
}
#apply .inner {
  width: 96%;
  max-width: 1000px;
  margin: 0 auto;
  padding-top: 5%;
  padding-bottom: 5%;
  text-align: center;
  z-index: -9999;
  line-height: 180%;
}
#apply .box {
  margin: 5% auto;
  padding: 5% auto;
  width: 100%;
  background-color: #fff;
  text-align: left;
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
}
#apply .ttl {
  max-width: 100%;
  margin: 2% auto;
  padding: 2% auto;
  display: inline-block;
}
#apply .table_line {
  display: table;
  margin: 3% auto;
  padding: 3% auto;
  width: 100%;
}
#apply .block_l {
  display: table-cell;
  width: 180px;
  padding: 1% 3%;
}
#apply p {
  padding: 0 auto 0;
  margin: 0 auto 10px;
}
#apply .item {
  background-color: #2A7338;
  width: 140px;
  padding: 3% auto;
  color: #fff;
  border-radius: 5px;
  font-size: 0.8rem;
  text-align: center;
  margin-right: 30px;
}
#apply .date {
  font-size: 1.2rem;
  font-weight: 600;
}
#apply .block_r {
  display: table-cell;
  max-width: 700px;
}
#apply img {
  margin: 30px auto 0;
  padding: 20px auto 0;
}
#apply .share {
  width: 120px;
  margin: 0 auto;
  padding: 0 auto;
  text-align: center;
}
#apply .sns-icon {
  max-width: 38%;
  padding: 1%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;
  padding: 0 auto;
}
@media screen and (max-width:768px), print {
  #apply .box {
    display: block;
  }
  #apply .table_line {
    display: block;
    margin: 3% auto;
    padding: 3%;
    width: 96%;
    max-width: 800px;
  }
  #apply .block_l {
    display: block;
    width: 100%;
    padding: 1% auto;
  }
  #apply .block_r {
    display: block;
    width: 100%;
    padding: 3%;
  }
  #apply .item {
    width: 100%;
    padding: 2% auto;
    font-size: 1.0rem;
  }
  #apply .awardtitle img {
    width: 340px;
  }
  #apply .sns-icon {
    width: 80%;
    max-width: 300px;
    padding: 1%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
    padding: 0 auto;
  }
}
/* ****************************************************

	section:sale

***************************************************** */
#sale {
  background-image: url("../images/pt_bg.png");
  margin: 0 auto;
  color: #fff;
  line-height: 0;
  background-color: #1E763B;
}
#sale .inner {
  width: 96%;
  max-width: 1000px;
  margin: 0 auto;
  padding-top: 5%;
  padding-bottom: 5%;
  text-align: center;
  z-index: -9999;
}
#sale img {
  max-width: 100%;
  margin: 0;
  padding: 8px;
}
#sale p {
  font-size: 0.9rem;
  line-height: 140%;
  margin: 0 auto 10px;
}
#sale .kuripura {
  max-width: 100%;
  margin: 0 auto 5%;
}
#sale .comment {
  font-size: 1.5rem;
  padding-top: 15px;
  padding-bottom: 30px;
}
#sale .bn {
  width: 96%;
  max-width: 600px;
  padding: 5px auto;
  margin: 0 auto;
}
@media screen and (max-width:768px), print {}