@charset "UTF-8";

/* -----------------------------------------------
* Plugins エントリーポイント
------------------------------------------------ */
/*-----------------------------------------------
  reset PC
------------------------------------------------*/
html,
input,
textarea,
select,
button {
  font-family: "Noto Sans JP", sans-serif;
  /* font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif; */
  font-weight: 500;
  font-size: 16px;
}

html {
  color: #553134;
  background: #fff;
  font-size: 16px;
  line-height: 1.6;
  word-break: break-all;
  padding: 0;
  margin: 0;}

body {
  background: url('../img/bgimg.png') repeat top center;
  background-attachment: fixed;
  background-size: 30%;
  margin: 0;
  padding: 0;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

img {
  border: 0;
  margin: 0;
  vertical-align: top;
  max-width: 100%;
  height: auto;
}

figure{
  margin: 10% 0;
}

p {
  margin: 0 1em 0;
  padding: 0;
  overflow-wrap: break-word;
  word-wrap: break-word;
  line-height: 2;
}

a {
  color: #553134;
  text-decoration: none;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

input,
select,
textarea,
button {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

select::-ms-expand {
  display: none;
}

textarea {
  resize: vertical;
}

::-webkit-input-placeholder {
  color: #ccc;
}

:-ms-input-placeholder {
  color: #ccc;
}

::-ms-input-placeholder {
  color: #ccc;
}

::-moz-placeholder {
  color: #ccc;
}

::placeholder {
  color: #ccc;
}

button {
  border: none;
  cursor: pointer;
}

label {
  cursor: pointer;
}

table {
  border-collapse: collapse;
}

ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 14px;
  font-weight: 500;
  margin: 0;
  padding: 0;
}

main {
  display: block;
}

.inner-block {
  position: relative;
  width: 100%;
  padding: 0;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

#wrapper {
  position: relative;
}

dl,
dt,
dd {
  padding: 0;
  margin: 0;
}

dd {
  margin-bottom: 0.5em;
}

section{
  padding: 5%;
}



/*------------------------------------------------------------------
  reset SP
--------------------------------------------------------------------*/

p.strong{
  width: 60%;
  text-align: left;
  color: #E95513;
  margin: 0 auto;
  margin-top: 2em;
  line-height: 1.3;
}
p.caus{
  width: 80%;
  margin: 0 auto;
  margin-top: 1em;
  text-align: left;
  font-size: 1rem;
}
span.small{
  font-size: 0.8rem;
}
span.star{
  color: #ef3a31;
}
/* --------------------------------
c-header
----------------------------------- */

.c-header .mv {
  margin-bottom: -3em;
  padding: 5%;
  text-align: center;
}
.c-header .mv img{
 width: 100%;
}

/* --------------------------------
c-footer
----------------------------------- */

.c-footer__contents {
  color: #cf8a24;
  text-align: center;
  padding: 5% 0;
 margin: 0 auto;
}

.c-footer__imgHolder{
  width: 100%;
  display: flex;
  gap: 4em;
  justify-content: center;
  margin-bottom: 1em;
}

.footer{
margin: 0 auto;
padding: 0 2em 2em;
text-align: center;
width: 70%;
}

.footer small{
  display: block;
  text-align: center;
  font-size: 0.8rem;
  margin: 2em 0;
}

.c-footer__contact{
  font-size: 1.2rem;
  font-weight: 600;
  margin: 0 auto;
  width: 80%;
}

/* --------------------------------
c-pagetop
----------------------------------- */
.c-pagetop {
  right: calc(26% - 340px);
  z-index: 10;
}
.c-pagetop img{
  width: 60%;
}
.c-breadcrumb {
  background-color: #8e9091;
}

/* --------------------------------
c-btn
----------------------------------- */
.c-btn {
  /* btn 基本 */
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.5;
  margin: 0 auto;
  position: relative;
  display: inline-block;
  padding: 0.5em 0;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.05em;
  border-radius: 100vh;
  width: 80%;
  /* btn cta */
}

.c-btn.cta {
  color: #fff;
  background-color: #ef3a31;
  border-bottom: 8px solid #cb5757;
}
.c-btn.inversion {
  color: #ef3a31;
  background-color: #fff;
  border: solid 2px #ef3a31;
}

.c-btn.cta:hover {
  margin-top: 3px;
  border-bottom: 2px solid #dc6161;
  opacity: 1;
}

.c-btn.present {
  color: #fff;
  background-color: #ef3a31;
  border-radius: 100vh;
  width: 100%;
  /* font-size: 32px; */
  padding: 0.5em 0;
  letter-spacing: 0.05em;
  border-bottom: 8px solid #ab5151;
  z-index: 2;
}

.c-btn.present:hover {
  margin-top: 3px;
  border-bottom: 2px solid #f76969;
  opacity: 1;
}

.c-btn.detail {
  /* font-size: 36px; */
  color: #FFFFFF;
  background-color: #40b540;
  border-radius: 100vh;
  margin: 0 auto;
  width: 80%;
  padding: 0.5em 0;
  border-bottom: 8px solid #78a878;
}

.c-btn.detail:hover {
  margin-top: 3px;
  border-bottom: 2px solid #78a878;
  opacity: 1;
}

.c-btn__wrapper {
  text-align: center;
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 90%;
  position: relative;
}
.btn-balloon {
  margin: 0 auto;
  width: 35%;
}
.btn-balloon img {
  width: 100%;
}
.balloon2{
  width: 50%;
  margin-bottom: 1em;
}
.balloon3{
  width: 30%;
  margin-bottom: 1em;
}
.c-btn.no-link {
  pointer-events: none;
}

/* -----------------------------------------------
* Modules エントリーポイント
-------------------------------------------------- */

.p-home .grdbg{
  background: linear-gradient(to bottom, transparent,#fbf8f4 ,#fbf8f4,#fbf8f4,transparent);
}

.p-home .title {
  text-align: center;
  margin: 0 auto;
  margin-bottom: 10%;
  width: 80%;
}

.p-home .event {
  padding: 10% 0;
}

.p-home .event__title {
  text-align: center;
  margin-bottom: 53px;
}

.p-home .event__txtHolder {
  font-size: 1.5rem;
  line-height: 1.8;
  margin: 0 auto;
  width: 80%;
  letter-spacing: -0.05em;
  text-align: justify;
}

.p-home .imgHolder {
  position: relative;
  margin: 0 auto;
  width: 50%;
  /* margin-top: -5em; */
  margin-bottom: 5em;
}
.p-home .nextimg{
  width: 8%;
  margin: 0 auto;
  text-align: center;
}


/* プレゼント内容 */
.p-home .contents{
  padding: 5%;
  margin: 0 auto;
}
.p-home .contents__imgHolder {
  margin: 0 auto;
  position: relative;
}
.contents__imgHolder h3 ,
.contents__imgHolder h4{
  margin: 3em;
}
.contents__imgHolder p{
  text-align: center;
  margin-bottom: 3em;
}

.p-home .pre_detale {
  margin: 0 7em 3em;  
}

.p-home .contents__txtHolder {
  margin: 0 auto;
  width: 80%;
  text-align: center;
}
.p-home h3{
  color: #ef3a31;
 font-size: 2rem;
 font-weight: 600;
 line-height: 1.8;
}
.p-home .cts_title {
  width: 90%;
  margin: 0 auto;
  text-align: center;
}
.p-home h3.cts__img {
  width: 100%;
  margin: 0 auto;
}

/* 応募方法 */
.p-home .howto{
  padding: 5%;
  margin: 0 auto;
}
.p-home .howto__contents {
  margin: 0 auto;
  position: relative;
  text-align: center;
}

.p-home .howto__contents h4 {
  font-size: 2rem;
  margin-bottom: 1em;
}
.p-home .howto__contents p {
   font-size: 1.5rem;
}
.p-home .howto_img {
   font-size: 1.5rem;
   width: 50%;
   text-align: center;
   margin: 0 auto;
}

/* about */
.p-home .about {
  padding: 5%;
  margin: 0 auto;
  position: relative;
}

.p-home .about__title {
  text-align: center;
  margin: 0 auto;
  margin-bottom: 10%;
}
.p-home .about__imgHolder {
  position: relative;
  margin: 0 auto;
  text-align: center;
}
.p-home .about__txtHolder {
  font-size: 1.5rem;
  text-align: justify;
  margin: 2em 0
}
.p-home .about__txtHolder p{
    margin: 2em 0
}

/* アンケート */
.entry__note{
  margin: 2em 0;
}
.p-home .entryform {
  padding: 5%;
  margin: 0 auto;
}
.p-home .entry__title {
  width: 80%;
  text-align: center;
  margin: 0 auto;
  margin-bottom: 10%;
}
.p-home .entry__contents {
  margin: 0 auto;
  position: relative;
  text-align: center;
}
.p-home .entry__contents p {
  font-size: 1.5rem;
  margin-bottom: 1em;
}
.p-home .form__contents {
  margin: 0 auto;
  padding: 2em;
  width: 90%;
  background-color: #FFFFFF;
  position: relative;
  text-align: center;
  margin-bottom: 3em;
}


/* -----------------------------------------------
* Page エントリーポイント
-------------------------------------------------- */
@media only screen and (min-width: 1024px) {
.mb {
    display: none;
  }
}

@media only screen and (min-width: 641px) {
  a:hover {
    opacity: 0.8;
  }

  .inner-block {
    margin: 0 auto;
    max-width: 860px;
  }

  .sp {
    display: none !important;
  }

  a[href^="tel:"] {
    pointer-events: none;
  }

  a,
  a::before,
  a::after,
  button {
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
}

@media only screen and (max-width: 640px) {
  body {
    font-size: 14px;
    position: relative;
    -webkit-appearance: none;
    -webkit-text-size-adjust: 100%;
  }

  .inner-block {
    width: auto;
  }

  #wrapper {
    min-width: 320px;
    position: relative;
  }

  input[type=submit] {
    -webkit-text-size-adjust: 100%;
  }

  input,
  select,
  textarea {
    font-size: 16px !important;
  }

  .pc {
    display: none !important;
  }

figure{
  margin-bottom: 5%;
}
.c-footer__title {
    font-size: clamp(18px, 2vw, 26px);
  }


.c-pagetop {
    right: calc(-12% - 30px);
    width: 50%;
  }

.p-home .contents__imgHolder {
  margin: 0 auto;
  position: relative;
  width: 100%;
}
.contents__imgHolder h4 {
  margin: 1.5em;
}
.p-home .pre_detale {
  margin: 0 2em 3em;  
}
.c-footer__imgHolder{
  width: 90%;
margin: 0 auto;
  gap: 1em;
}


/* ボタン */
  .c-btn.cta {
    font-size: clamp(1.25rem, 2vw, 36px);
    border-bottom: 5px solid #dc6161;
  }
  .c-btn__wrapper {
    width: 100%;
  }
  .c-btn.inversion {
    font-size: clamp(1.25rem, 2vw, 36px);
  }
  .c-btn.detail {
    font-size: clamp(16px, 2vw, 36px);
    border-bottom: 5px solid #78a878;
  }
  
/* 文章 */
  .p-home .event__title {
    margin: 0 auto 10%;
    width: 90%;   }

  .p-home .cts_title
  {   
    margin: 0 auto;
    margin-bottom: 5%;
    width: 90%;
  }

  .p-home .title{   
    margin: 0 auto;
    margin-bottom: 10%;
    width: 100%;
  }

  /* 動き */
  .btn-balloon {
    width: 50%;
    margin: 0 auto -2%;
  }

  /* フォント */ 
  .p-home .event__txtHolder {
    font-size: clamp(18px, 2vw, 24px);
  }

  .p-home .about__txtHolder p,
  .p-home .entry__contents p {
    font-size: clamp(14px, 2vw, 20px);
  }

   .p-home h3 {
   font-size: 1.2rem;
   text-align: justify;
  }
  .p-home .howto__contents h4 {
  font-size: 1rem;
}
.p-home .howto__contents p{
  font-size: 0.8rem;
  line-height: 1.5;
}

p.caus{
  font-size: 0.6rem;
  line-height: 1.8;
}}